@font-face{font-family:'Cairo';font-weight:400;font-display:swap;src:url('../fonts/cairo-arabic-400-normal.woff2') format('woff2');unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0898-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC}
@font-face{font-family:'Cairo';font-weight:600;font-display:swap;src:url('../fonts/cairo-arabic-600-normal.woff2') format('woff2');unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0898-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC}
@font-face{font-family:'Cairo';font-weight:700;font-display:swap;src:url('../fonts/cairo-arabic-700-normal.woff2') format('woff2');unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0898-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC}
@font-face{font-family:'Inter';font-weight:400;font-display:swap;src:url('../fonts/inter-latin-400-normal.woff2') format('woff2')}
@font-face{font-family:'Inter';font-weight:500;font-display:swap;src:url('../fonts/inter-latin-500-normal.woff2') format('woff2')}
@font-face{font-family:'Inter';font-weight:600;font-display:swap;src:url('../fonts/inter-latin-600-normal.woff2') format('woff2')}
@font-face{font-family:'Cinzel';font-weight:600;font-display:swap;src:url('../fonts/cinzel-latin-600-normal.woff2') format('woff2')}
@font-face{font-family:'Cinzel';font-weight:700;font-display:swap;src:url('../fonts/cinzel-latin-700-normal.woff2') format('woff2')}
:root{
  --bg:#F3EBDA; --surface:#FBF7EC; --raised:#FFFDF6; --ink:#1A2036; --muted:#5E6073; --line:#DCCFB2;
  --gold:#C3A05A; --gold-ink:#7D5F22; --lapis:#00287B; --on-lapis:#F6EFDC;
  --btn-bg:#00287B; --btn-fg:#FBF4E0; --ok:#1F7A4D; --ok-bg:#DDEFE3; --warn:#9A5A08; --warn-bg:#F6E4C4;
  --door-a:#0A3590; --door-b:#001A52; --shadow:0 20px 40px -24px rgba(26,32,54,.5);
  --hot-bg:#D6E9FB; --hot-line:#5B9BDB; --hot-ink:#0B2A5B; --hot-muted:#27497A;
  --display:'Cinzel','Trajan Pro',Georgia,serif; --body:'Inter','Segoe UI',system-ui,sans-serif;
  color-scheme:light;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:60;background:var(--bg)}
h1,h2,h3,h4{font-family:var(--display);font-weight:600;line-height:1.15;margin:0;text-wrap:balance;letter-spacing:.02em}
p{margin:0}
img{display:block}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.wrap{max-width:1180px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.eyebrow{font-size:.74rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-ink);font-weight:500}
.muted{color:var(--muted)}

/* ---------- NAV ---------- */
.nav{position:fixed;left:0;right:0;top:env(safe-area-inset-top,0px);z-index:50;background:var(--bg);border-bottom:1px solid var(--line)}
.nav .wrap{display:flex;align-items:center;gap:12px;height:58px}
.brand{text-decoration:none;color:inherit;display:flex;align-items:center;gap:10px;background:none;border:0;padding:0;flex:none}
.brand .mark{width:38px;height:38px;--e-gold:var(--gold);--e-blue:var(--lapis)}
.brand span{font-family:var(--display);font-weight:700;font-size:.9rem;letter-spacing:.12em;white-space:nowrap}
.brand span em{font-style:normal;color:var(--gold-ink)}
.links{display:flex;gap:2px;margin-left:auto;overflow-x:auto;scrollbar-width:none;min-width:0}
.links::-webkit-scrollbar{display:none}
.links a{text-decoration:none;background:none;border:0;padding:8px 11px;border-radius:8px;font-size:.88rem;white-space:nowrap;color:var(--muted);font-weight:500}
.links a:hover{color:var(--ink)}
.links a.on{color:var(--ink);box-shadow:inset 0 -2px 0 var(--gold)}
@media (max-width:560px){.brand span{display:none}}

/* ---------- BUTTONS ---------- */
.btn{background:var(--btn-bg);color:var(--btn-fg);border:0;border-radius:10px;padding:12px 22px;font-weight:600;letter-spacing:.03em;transition:transform .15s,opacity .15s}
.btn:hover{transform:translateY(-1px)}
.btn:disabled{opacity:.6;cursor:wait;transform:none}
.btn.sm{padding:9px 18px;font-size:.92rem}
.btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--line)}
.btn.ghost:hover{border-color:var(--gold)}

/* ---------- GATE ---------- */
.gate{height:320vh;position:relative}
@supports (height:1svh){.gate{height:320svh}}
.stage{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden;perspective:1700px;--W:min(68vw,34svh,340px);--o:0;--t:1;--k:1}
.behind{position:absolute;inset:0;display:flex;align-items:center;padding-top:76px;padding-bottom:28px;background:var(--bg);
  transform:scale(calc(1.14 - var(--o)*.14));opacity:calc(.25 + var(--o)*.75)}
.dunes{position:absolute;left:0;right:0;bottom:0;height:62%;width:100%;fill:none;stroke:var(--gold);stroke-width:1;opacity:.35;pointer-events:none}
.dunes path{vector-effect:non-scaling-stroke}
.hero{position:relative;display:grid;grid-template-columns:1.05fr .95fr;gap:36px;align-items:center;width:100%}
.hero h1{font-size:clamp(2rem,5.4vw,3.8rem);margin:12px 0 14px}
.hero h1 em{font-style:normal;color:var(--gold-ink)}
.hero .lede{max-width:46ch;color:var(--muted);font-size:1.05rem}
.hero .eyebrow{display:block;max-width:44ch}
.finder{background:var(--raised);border:1px solid var(--line);border-radius:18px;padding:16px;box-shadow:var(--shadow);min-width:0}
.seg{display:flex;gap:4px;background:var(--bg);border-radius:12px;padding:4px;margin-bottom:14px}
.seg button,.seg a{text-align:center;text-decoration:none;display:block;flex:1;border:0;background:none;padding:9px 6px;border-radius:9px;font-weight:500;font-size:.9rem;color:var(--muted);white-space:nowrap}
.seg button.on,.seg a.on{background:var(--btn-bg);color:var(--btn-fg)}
.fields{display:grid;gap:12px}
.field{display:flex;flex-direction:column;gap:5px;min-width:0}
.field label{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.field input,.field select,.field textarea{background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:11px 12px;width:100%;min-width:0}
.field textarea{resize:vertical;min-height:70px}
.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.finder .btn{width:100%;margin-top:4px}
.finder .fine{font-size:.84rem;color:var(--muted);margin-top:12px}
@media (max-width:860px){.hero{grid-template-columns:1fr;gap:20px}.hero .lede{display:none}.hero h1{font-size:clamp(1.7rem,7vw,2.4rem);margin:8px 0 6px}.behind{align-items:flex-start;padding-top:76px}}
@media (max-height:640px) and (max-width:860px){.hero .eyebrow{display:none}}

.door{position:absolute;top:0;bottom:0;width:50.2%;overflow:hidden;z-index:3;
  background:var(--door-a);
  box-shadow:inset 0 0 90px rgba(0,0,0,.35)}
.door.l{left:0;transform-origin:0 50%;transform:translateX(calc(var(--o)*-56%)) rotateY(calc(var(--o)*86deg))}
.door.r{right:0;transform-origin:100% 50%;transform:translateX(calc(var(--o)*56%)) rotateY(calc(var(--o)*-86deg))}
.door .emb{position:absolute;width:var(--W);height:var(--W);top:calc(68px + 1.2svh);--e-gold:#E6C36A;--e-blue:#7C98EE}
.door.l .emb{right:calc(var(--W)/-2)}.door.r .emb{left:calc(var(--W)/-2)}
.gate-title{position:absolute;left:0;right:0;top:calc(68px + 1.2svh + var(--W) + 6px);z-index:4;text-align:center;opacity:var(--t);pointer-events:none;padding:0 16px}
.gate-title .a{font-family:var(--display);font-weight:700;font-size:clamp(2rem,8vw,3.2rem);letter-spacing:.16em;color:#E6C36A;line-height:1}
.gate-title .b{font-family:var(--display);font-weight:600;font-size:clamp(1.05rem,4.6vw,1.6rem);letter-spacing:.2em;color:var(--on-lapis);margin-top:8px}
.gate-title .tag{font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:rgba(246,239,220,.72);margin-top:10px}
.gate-kids{position:absolute;left:50%;bottom:0;height:min(31svh,300px);z-index:6;pointer-events:none;opacity:var(--k);
  transform:translateX(-50%) translateY(calc(var(--o)*14%)) scale(calc(1 + var(--o)*.16));transform-origin:50% 100%}
.gate-kids img{height:100%;width:auto;animation:sway 2.6s ease-in-out infinite;transform-origin:50% 100%;filter:drop-shadow(0 10px 14px rgba(0,0,0,.35))}
@keyframes sway{0%,100%{transform:rotate(-1.2deg) translateY(0)}50%{transform:rotate(1.2deg) translateY(-6px)}}
.open-cta{position:absolute;left:0;right:0;bottom:calc(min(31svh,300px) + 14px);z-index:5;display:flex;flex-direction:column;align-items:center;gap:8px;opacity:var(--t)}
.open-cta .btn{background:#E6C36A;color:#10163A}
.open-cta small{color:rgba(246,239,220,.8);letter-spacing:.14em;text-transform:uppercase;font-size:.68rem}
.bob{animation:bob 1.8s ease-in-out infinite}@keyframes bob{50%{transform:translateY(4px)}}
@media (min-aspect-ratio:11/10){.open-cta{left:auto;right:6vw;bottom:10svh;align-items:flex-end}}

/* ---------- RUNNER ---------- */
.runner{position:fixed;left:0;bottom:calc(6px + env(safe-area-inset-bottom,0px));height:clamp(84px,15svh,140px);width:auto;z-index:40;pointer-events:none;opacity:0;will-change:transform;filter:drop-shadow(0 8px 8px rgba(26,32,54,.28))}

/* ---------- PAGES + DOOR TRANSITION ---------- */
.page{padding-top:58px;min-height:100svh}
.curtain{position:fixed;inset:0;z-index:45;visibility:hidden;pointer-events:none;perspective:1700px;overflow:hidden;--W:min(68vw,34svh,340px);--c:1;--dur:600ms}
.curtain.on{visibility:visible;pointer-events:auto}
.curtain.closed{--c:0}
.curtain .door{transition:transform var(--dur) cubic-bezier(.7,0,.25,1)}
.curtain .door.l{transform:translateX(calc(var(--c)*-56%)) rotateY(calc(var(--c)*86deg))}
.curtain .door.r{transform:translateX(calc(var(--c)*56%)) rotateY(calc(var(--c)*-86deg))}
.curtain .door .emb{top:calc(50% - var(--W)*.62)}
.curtain .kidsT{position:absolute;left:50%;bottom:0;height:min(34svh,300px);width:auto;z-index:6;transform-origin:50% 100%;
  opacity:calc(1 - var(--c));transform:translateX(-50%) translateY(calc(var(--c)*18%)) scale(calc(1 + var(--c)*.12));
  transition:opacity var(--dur) ease,transform var(--dur) cubic-bezier(.7,0,.25,1);filter:drop-shadow(0 10px 14px rgba(0,0,0,.35))}
@keyframes rise{from{opacity:0;transform:translateY(16px)}}
.dash-in>*{animation:rise .5s cubic-bezier(.2,.7,.2,1) backwards}

[hidden]{display:none!important}
/* ---------- SCENES (a different reveal per destination) ---------- */
@property --r{syntax:'<number>';inherits:true;initial-value:0}
.scene{position:fixed;inset:0;z-index:46;visibility:hidden;pointer-events:none;overflow:hidden;perspective:1600px;background:transparent;--dur:700ms;--r:0}
.scene.on{visibility:visible;pointer-events:auto}
.sc-art,.sc-art>*{position:absolute;inset:0;width:100%;height:100%}
.sc-art>img,.sc-art>svg{object-fit:cover;display:block}
.sc-art{transition:transform var(--dur) cubic-bezier(.6,0,.25,1),opacity var(--dur) ease}
.sc-cap{position:absolute;left:50%;bottom:11%;transform:translateX(-50%);z-index:3;background:rgba(255,252,244,.94);border:1px solid var(--line);border-radius:16px;padding:12px 24px;text-align:center;box-shadow:0 14px 40px rgba(26,32,54,.25);transition:opacity .35s ease;opacity:0;max-width:86vw}
.sc-cap b{display:block;font-family:var(--display);font-size:clamp(1.05rem,3.4vw,1.6rem);color:var(--ink);letter-spacing:.04em}
.sc-cap span{display:block;font-size:.9rem;color:var(--muted);margin-top:2px}
.sc-flash{position:absolute;inset:0;background:#fff;opacity:0;z-index:5;pointer-events:none}
.sc-ring,.sc-shut,.sc-run,.sc-dust,.sc-bub,.sc-vf{display:none}
.scene[data-ph="in"] .sc-cap{opacity:1}
/* camera zoom - Giza */
.fx-zoom .sc-art{opacity:0;transform:scale(1)}
.fx-zoom[data-ph="in"] .sc-art{opacity:1;transform:scale(1.16)}
.fx-zoom[data-ph="out"] .sc-art{opacity:0;transform:scale(2.7)}
.fx-zoom .sc-vf{display:block;position:absolute;inset:7%;z-index:4;opacity:0;transition:opacity .3s;
  background:linear-gradient(#fff,#fff) 0 0/44px 3px no-repeat,linear-gradient(#fff,#fff) 0 0/3px 44px no-repeat,linear-gradient(#fff,#fff) 100% 0/44px 3px no-repeat,linear-gradient(#fff,#fff) 100% 0/3px 44px no-repeat,linear-gradient(#fff,#fff) 0 100%/44px 3px no-repeat,linear-gradient(#fff,#fff) 0 100%/3px 44px no-repeat,linear-gradient(#fff,#fff) 100% 100%/44px 3px no-repeat,linear-gradient(#fff,#fff) 100% 100%/3px 44px no-repeat;filter:drop-shadow(0 0 3px rgba(0,0,0,.5))}
.fx-zoom[data-ph="in"] .sc-vf{opacity:1}
.fx-zoom[data-ph="out"] .sc-flash{animation:flash .55s ease-out}
@keyframes flash{0%{opacity:.95}100%{opacity:0}}
/* porthole - Red Sea */
.fx-iris{transition:--r var(--dur) cubic-bezier(.5,0,.2,1)}
.fx-iris[data-ph="in"],.fx-iris[data-ph="out"]{--r:78}
.fx-iris .sc-art{clip-path:circle(calc(var(--r)*1vmax) at 50% 50%);transition:transform calc(var(--dur)*1.1) cubic-bezier(.5,0,.2,1)}
.fx-iris[data-ph="out"] .sc-art{transform:translateY(-108%)}
.fx-iris .sc-ring{display:block;position:absolute;left:50%;top:50%;width:calc(var(--r)*2vmax);height:calc(var(--r)*2vmax);border-radius:50%;transform:translate(-50%,-50%);z-index:4;border:10px solid #C9A24A;box-shadow:inset 0 0 0 4px #F3E3B3,0 0 0 3px #8C6B22,inset 0 0 60px rgba(10,60,120,.35);pointer-events:none;transition:opacity .3s}
.fx-iris[data-ph="out"] .sc-ring{opacity:0}
.fx-iris .sc-bub{display:block;position:absolute;inset:0;z-index:2;opacity:0;pointer-events:none;
  background:radial-gradient(circle at 12% 90%,rgba(255,255,255,.7) 0 6px,transparent 7px),radial-gradient(circle at 24% 70%,rgba(255,255,255,.6) 0 10px,transparent 11px),radial-gradient(circle at 78% 85%,rgba(255,255,255,.7) 0 8px,transparent 9px),radial-gradient(circle at 88% 55%,rgba(255,255,255,.55) 0 5px,transparent 6px),radial-gradient(circle at 52% 95%,rgba(255,255,255,.65) 0 12px,transparent 13px)}
.fx-iris[data-ph="in"] .sc-bub,.fx-iris[data-ph="out"] .sc-bub{opacity:1;animation:bub 1.6s ease-in forwards}
@keyframes bub{from{transform:translateY(20%)}to{transform:translateY(-120%)}}
/* window - Nile */
.fx-window{opacity:0;transition:opacity calc(var(--dur)*.6) ease,transform calc(var(--dur)*.45) cubic-bezier(.6,0,.2,1)}
.fx-window[data-ph="in"]{opacity:1}
.fx-window[data-ph="out"]{opacity:0;transform:scale(2.3);transition:opacity calc(var(--dur)*.4) ease calc(var(--dur)*.6),transform calc(var(--dur)*.45) cubic-bezier(.6,0,.2,1) calc(var(--dur)*.55)}
.fx-window .sc-art{transform:scale(1.04);transition:none}
.fx-window .sc-cap{z-index:2}
.fx-window[data-ph="out"] .sc-cap{opacity:1;transition:opacity .3s ease calc(var(--dur)*.5)}
.fx-window .sc-shut{display:block;position:absolute;top:0;bottom:0;width:50.4%;z-index:3;
  background:repeating-linear-gradient(180deg,#F3E6C4 0 22px,#E3D2A2 22px 26px);border:10px solid #1F4A9A;box-shadow:inset 0 0 0 3px #C9A24A;
  transition:transform calc(var(--dur)*.55) cubic-bezier(.6,0,.2,1)}
.fx-window .sc-shut.l{left:0;transform-origin:0 50%;border-right-width:5px}
.fx-window .sc-shut.r{right:0;transform-origin:100% 50%;border-left-width:5px}
.fx-window .sc-shut::after{content:'';position:absolute;top:50%;width:16px;height:16px;border-radius:50%;background:#C9A24A;box-shadow:0 0 0 3px #8C6B22}
.fx-window .sc-shut.l::after{right:14px}.fx-window .sc-shut.r::after{left:14px}
.fx-window[data-ph="out"] .sc-shut.l{transform:rotateY(-108deg)}
.fx-window[data-ph="out"] .sc-shut.r{transform:rotateY(108deg)}
.fx-window .sc-ring{display:block;position:absolute;inset:0;z-index:2;pointer-events:none;
  background:linear-gradient(#1F4A9A,#1F4A9A) 50% 0/10px 100% no-repeat,linear-gradient(#1F4A9A,#1F4A9A) 0 50%/100% 10px no-repeat;box-shadow:inset 0 0 0 14px #1F4A9A,inset 0 0 0 17px #C9A24A}
/* desert dust - Safari */
.fx-dust .sc-art{transform:translateX(104%)}
.fx-dust[data-ph="in"] .sc-art{transform:translateX(0)}
.fx-dust[data-ph="out"] .sc-art{transform:translateX(-104%)}
.fx-dust .sc-dust{display:block;position:absolute;inset:0;z-index:3;pointer-events:none;background:linear-gradient(90deg,transparent,rgba(235,205,150,.85) 45%,rgba(235,205,150,.85) 55%,transparent);filter:blur(24px);transform:translateX(120%);opacity:0}
.fx-dust[data-ph="in"] .sc-dust{opacity:1;transform:translateX(0);transition:transform var(--dur) ease,opacity var(--dur) ease}
.fx-dust[data-ph="out"] .sc-dust{opacity:0;transform:translateX(-120%);transition:transform var(--dur) ease,opacity var(--dur) ease}
.fx-dust .sc-run{display:block;position:absolute;bottom:3%;height:clamp(110px,22svh,210px);width:auto;z-index:4;left:-45%;filter:drop-shadow(0 10px 10px rgba(26,32,54,.35));transition:left var(--dur) cubic-bezier(.5,0,.4,1)}
.fx-dust[data-ph="in"] .sc-run{left:36%}
.fx-dust[data-ph="out"] .sc-run{left:112%}
/* hero banner on the programs page */
.mk-hero{position:relative;height:clamp(150px,26vw,270px);border-radius:20px;overflow:hidden;margin-bottom:26px;box-shadow:0 18px 44px rgba(26,32,54,.18);border:1px solid var(--line)}
.mk-hero .sc-art{animation:kb 16s ease-in-out infinite alternate;transition:none}
@keyframes kb{from{transform:scale(1.02)}to{transform:scale(1.14)}}
.mk-hero .sc-cap{opacity:1;left:22px;bottom:18px;transform:none;text-align:left}
@media (prefers-reduced-motion:reduce){.mk-hero .sc-art{animation:none}}

/* ---------- MARKET ---------- */
.section{padding-block:72px}
.section h1,.section h2{font-size:clamp(1.6rem,3.6vw,2.4rem);margin:8px 0 8px}
.section .sub{color:var(--muted);max-width:60ch}
.mk-head{display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;align-items:flex-end;margin-bottom:28px}
.mk-tools{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.mk-tools .seg{margin:0}
.mk-tools select{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:10px 12px}
.pf{display:inline-flex;gap:8px;align-items:center;background:var(--surface);border:1px solid var(--gold);border-radius:999px;padding:6px 8px 6px 14px;font-size:.88rem;margin-bottom:18px}
.pf a{text-decoration:none;display:grid;place-items:center;border:0;background:var(--line);border-radius:50%;width:22px;height:22px;line-height:1;padding:0}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:26px}

/* cards grow and turn light blue so they are easy to read */
.card,.co{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:16px;overflow:hidden;display:flex;flex-direction:column;min-width:0;
  transition:transform .28s cubic-bezier(.2,.8,.2,1),background-color .25s,border-color .25s,box-shadow .28s;transform-origin:50% 50%}
.card{animation:rise .5s cubic-bezier(.2,.7,.2,1) backwards}
.card:hover,.card:focus-within,.card.hot,.co:hover,.co:focus-within,.co.hot{
  transform:scale(1.08);z-index:5;background:var(--hot-bg);border-color:var(--hot-line);box-shadow:0 26px 50px -22px rgba(11,42,91,.55)}
.card:hover .cbody .meta,.card:focus-within .cbody .meta,.card.hot .cbody .meta,.co:hover .t,.co:focus-within .t,.co.hot .t{color:#0B4D9E}
.card:hover .desc,.card:focus-within .desc,.card.hot .desc,.card:hover .site,.card.hot .site,.card:hover .unit,.card.hot .unit,.co:hover .muted,.co.hot .muted{color:var(--hot-muted)}
.card:hover h3,.card:hover .price,.card.hot h3,.card.hot .price,.co:hover b,.co.hot b{color:var(--hot-ink)}
@media (max-width:560px){.card:hover,.card:focus-within,.card.hot,.co:hover,.co.hot{transform:scale(1.05)}}
.art{position:relative;aspect-ratio:16/10;max-width:100%;display:grid;place-items:center;
  background:hsl(var(--h) 50% 26%)}
.art svg.m{width:46%;fill:none;stroke:#F3DFA0;stroke-width:2.4;stroke-linejoin:round;stroke-linecap:round}
.art::after{content:"";position:absolute;inset:10px;border:1px solid rgba(243,223,160,.35);border-radius:10px}
.chip{position:absolute;left:14px;bottom:14px;z-index:1;background:rgba(10,14,40,.7);color:#F3E6C2;font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;padding:4px 10px;border-radius:999px}
.rate{position:absolute;right:14px;top:14px;z-index:1;background:rgba(10,14,40,.7);color:#F3E6C2;font-size:.8rem;padding:3px 9px;border-radius:999px}
.cbody{padding:16px 18px 18px;display:flex;flex-direction:column;gap:8px;flex:1}
.cbody .meta{font-size:.76rem;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-ink)}
.cbody h3{font-size:1.06rem}
.cbody .desc{color:var(--muted);font-size:.92rem;flex:1}
.cbody .site{font-size:.8rem;color:var(--muted)}
.foot{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:4px}
.price{font-size:1.35rem;font-weight:600;font-variant-numeric:tabular-nums}
.unit{color:var(--muted);font-size:.85rem}
.from{display:block;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.empty{padding:40px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:14px}

.cos{background:var(--surface);border-block:1px solid var(--line)}
.cogrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:20px;margin-top:26px}
.co{background:var(--bg);padding:18px;gap:6px}
.co b{font-family:var(--display);font-size:1rem}
.co .t{font-size:.76rem;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-ink)}
.co .st{font-size:.82rem;color:var(--muted);overflow-wrap:anywhere}
.co a{text-decoration:none;align-self:flex-start;margin-top:8px;background:none;border:0;padding:0;color:var(--lapis);font-weight:600}
.join{margin-top:34px;display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between;background:var(--door-a);color:var(--on-lapis);border-radius:18px;padding:24px 26px}
.join h3{font-size:1.2rem;color:#E6C36A}
.join p{opacity:.85;max-width:56ch;margin-top:6px}
.join .btn{background:#E6C36A;color:#10163A}


/* ---------- DASHBOARDS ---------- */
.dash{padding-top:58px;min-height:100svh}
.dash-in{padding-block:30px 70px}
.dash-head{display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;align-items:flex-end;margin-bottom:18px}
.dash-head h1{font-size:clamp(1.5rem,3.4vw,2.1rem);margin-top:6px}
.who{display:flex;flex-direction:column;gap:5px;min-width:200px}
.who label{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.who select{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:10px 12px}
.banner{background:var(--surface);border:1px dashed var(--gold);border-radius:12px;padding:10px 14px;font-size:.88rem;color:var(--muted);margin-bottom:18px}
.tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin-bottom:24px;overflow-x:auto;scrollbar-width:none}
.tabs a{text-decoration:none;background:none;border:0;padding:11px 16px;color:var(--muted);font-weight:500;white-space:nowrap;border-bottom:2px solid transparent;margin-bottom:-1px}
.tabs a.on{color:var(--ink);border-bottom-color:var(--gold)}
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:16px;margin-bottom:26px}
.kpi{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:16px 18px;min-width:0;transition:transform .25s,background-color .25s,border-color .25s,box-shadow .25s}
.kpi:hover{transform:scale(1.06);z-index:3;position:relative;background:var(--hot-bg);border-color:var(--hot-line);color:var(--hot-ink);box-shadow:0 20px 40px -22px rgba(11,42,91,.5)}
.kpi:hover .l,.kpi:hover .s{color:var(--hot-muted)}
.kpi .l{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.kpi .v{font-size:1.75rem;font-weight:600;font-variant-numeric:tabular-nums;margin-top:4px;overflow-wrap:anywhere}
.kpi .s{font-size:.82rem;color:var(--muted);margin-top:2px}
.kpi.hi{background:var(--door-a);border-color:transparent;color:var(--on-lapis)}
.kpi.hi .l,.kpi.hi .s{color:rgba(246,239,220,.75)}.kpi.hi .v{color:#E6C36A}
.kpi.hi:hover{background:var(--door-a);color:var(--on-lapis)}
.kpi.hi:hover .l,.kpi.hi:hover .s{color:rgba(246,239,220,.85)}
.panel{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:20px;margin-bottom:22px;min-width:0}
.panel h3{font-size:1rem;margin-bottom:14px}
.cols{display:grid;grid-template-columns:1.4fr 1fr;gap:22px}
.cols>*{min-width:0}
@media (max-width:900px){.cols{grid-template-columns:1fr}}
.tw{overflow-x:auto}
table{width:100%;border-collapse:collapse;min-width:640px;font-variant-numeric:tabular-nums}
th{text-align:left;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:500;padding:8px 10px;border-bottom:1px solid var(--line);white-space:nowrap}
td{padding:11px 10px;border-bottom:1px solid var(--line);font-size:.92rem;vertical-align:middle}
tr:last-child td{border-bottom:0}
td.n,th.n{text-align:right}
td.offer{min-width:210px}
td.act{min-width:270px}
.pill{display:inline-block;padding:3px 10px;border-radius:999px;font-size:.76rem;font-weight:600;white-space:nowrap}
.pill.ok{background:var(--ok-bg);color:var(--ok)}.pill.warn{background:var(--warn-bg);color:var(--warn)}
.pill.info{background:color-mix(in srgb,var(--lapis) 14%,transparent);color:var(--lapis)}.pill.off{background:var(--line);color:var(--muted)}
.chart{display:flex;align-items:flex-end;gap:10px;height:190px;padding-top:10px;border-bottom:1px solid var(--line)}
.bar{flex:1;display:flex;flex-direction:column;justify-content:flex-end;height:100%;min-width:0}
.bar .g{background:var(--lapis);border-radius:6px 6px 0 0;position:relative;min-height:2px;opacity:.9}
.bar .c{position:absolute;left:0;right:0;bottom:0;background:var(--gold)}
.bar .gv{font-size:.7rem;color:var(--muted);text-align:center;margin-bottom:3px;white-space:nowrap}
.xl{display:flex;gap:10px;margin-top:6px}
.xl span{flex:1;text-align:center;font-size:.74rem;color:var(--muted)}
.legend{display:flex;gap:16px;margin-top:12px;font-size:.82rem;color:var(--muted);flex-wrap:wrap}
.legend i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px}
.mail{padding:12px 0;border-bottom:1px solid var(--line);font-size:.9rem}
.mail:last-child{border-bottom:0}
.mail b{display:block}
.mail small{color:var(--muted)}
.sw{position:relative;display:inline-block;width:42px;height:24px}
.sw input{opacity:0;position:absolute;inset:0;width:100%;height:100%;margin:0;cursor:pointer;z-index:1}
.sw i{position:absolute;inset:0;background:var(--line);border-radius:999px;transition:.2s}
.sw i::after{content:"";position:absolute;left:3px;top:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:.2s}
.sw input:checked+i{background:var(--ok)}.sw input:checked+i::after{transform:translateX(18px)}
.sw input:focus-visible+i{outline:2px solid var(--gold);outline-offset:2px}
input.pr,input.sm-in{background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:6px 8px}
input.pr{width:92px}input.sm-in{width:120px}
.lnk{font-size:.78rem;color:var(--muted);overflow-wrap:anywhere;max-width:300px;display:block}
.formgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}
.formgrid .full{grid-column:1/-1}
.detect{font-size:.84rem;color:var(--ok);min-height:1.3em}
.err{color:var(--warn);font-size:.88rem;min-height:1.3em}
.mini{background:none;border:1px solid var(--line);border-radius:8px;padding:5px 12px;font-size:.84rem;white-space:nowrap}
.mini:hover{border-color:var(--gold)}
.acts{display:flex;gap:6px;flex-wrap:wrap;align-items:center}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .gate{height:auto}.stage{position:relative;height:auto;min-height:100svh}.door,.gate-title,.open-cta,.gate-kids{display:none}
  .behind{position:relative;inset:auto;min-height:100svh;transform:none;opacity:1}
  .card,.dash-in>*{animation:none}.curtain,.runner{display:none}.bob{animation:none}}


/* ---------- ADDITIONS FOR THE LIVE SITE ---------- */
.sprite{position:absolute;width:0;height:0;overflow:hidden}
a{color:var(--lapis)}
a.btn{display:inline-block;text-decoration:none;text-align:center;color:var(--btn-fg)}
a.btn.ghost{color:var(--ink)}
a.mini{display:inline-block;text-decoration:none;color:inherit}
.js .no-js{display:none}

.narrow{max-width:760px}
.prose p{margin-top:14px;max-width:68ch}
.empty.full{grid-column:1/-1}
.brand .mark.logo{width:auto;height:38px;object-fit:contain}
.foot-links{display:flex;flex-wrap:wrap;gap:6px 18px}
.foot-links a{color:var(--muted);text-decoration:none}
.foot-links a:hover{color:var(--ink)}
.cityform{display:flex;gap:8px;flex-wrap:wrap}
.cityform select{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:10px 12px}
.art img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.art:has(img) svg.m{display:none}
.art .chip,.art .rate{z-index:1}

/* messages */
.flashes{position:fixed;left:50%;top:calc(70px + env(safe-area-inset-top,0px));transform:translateX(-50%);z-index:90;display:grid;gap:8px;width:min(92vw,520px)}
.flash{margin:0;padding:11px 16px;border-radius:12px;background:var(--ink);color:var(--bg);font-size:.92rem;box-shadow:var(--shadow);transition:opacity .4s}
.flash.ok{background:var(--ok);color:#fff}
.flash.error{background:var(--warn);color:#fff}
.flash.gone{opacity:0;pointer-events:none}

/* forms */
.check{display:flex;gap:10px;align-items:flex-start;font-size:.9rem;color:var(--muted);line-height:1.4}
.check input{margin-top:3px;flex:none;accent-color:var(--lapis)}
.check.small{font-size:.8rem}
.check.full{grid-column:1/-1}
.field .err,.fields>.err{min-height:0}
.field input[type=file]{padding:9px 10px}
.field textarea.tall{min-height:260px}
.field select{appearance:auto}
.formgrid .field{min-width:0}
.methods{border:0;margin:0;padding:0;display:grid;gap:10px}
.method{display:flex;gap:12px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:13px 16px;cursor:pointer}
.method:has(input:checked){border-color:var(--gold);background:var(--raised)}
.method input{accent-color:var(--lapis)}
.thumb{display:flex;gap:14px;align-items:center;margin-top:10px}
.thumb img{width:120px;height:80px;object-fit:cover;border-radius:10px;border:1px solid var(--line)}
.thumb.dark{background:var(--door-b);padding:10px;border-radius:12px}
.thumb.dark img{object-fit:contain;border:0;height:70px}
.thumb.dark .check{color:#fff}

/* sheets (booking, redirect, login) */
.sheet{position:relative;background:var(--bg);border:1px solid var(--line);border-radius:20px;width:100%;max-width:900px;margin:0 auto;box-shadow:var(--shadow);overflow:hidden}
.sheet.single{max-width:520px}
.sheet .brandbar{background:var(--door-b);display:flex;justify-content:center;padding:18px}
.sheet .brandbar img{height:84px;width:auto}
.bk{display:grid;grid-template-columns:1.25fr .85fr}
.bk>*{min-width:0}
.bk-main{padding:26px 26px 28px}
.bk-side{background:var(--surface);border-left:1px solid var(--line);padding:26px}
.bk h2,.bk-main h2{font-size:1.35rem;margin:6px 0 12px}
.bk-side h3{font-size:1.05rem;margin:6px 0 4px}
.bk-side .desc{margin:10px 0;color:var(--muted);font-size:.92rem}
.bk-main .fields,.bk-main .formgrid{margin-top:16px}
.row{display:flex;justify-content:space-between;gap:12px;padding:7px 0;font-variant-numeric:tabular-nums}
.row.tot{border-top:1px solid var(--line);margin-top:6px;padding-top:12px;font-weight:600;font-size:1.1rem}
.actions{display:flex;gap:10px;justify-content:space-between;margin-top:18px;flex-wrap:wrap}
.note{font-size:.84rem;color:var(--muted);margin-top:12px}
.note.first{margin:-6px 0 14px}
.redir{text-align:center;padding:10px 0 4px}
.redir .rm{width:84px;height:84px;margin:0 auto 10px;--e-gold:var(--gold);--e-blue:var(--lapis)}
.redir h2{padding:0;margin:6px 0 10px}
.trk{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px 14px;margin:16px 0 14px;font-size:.9rem}
.trk span{color:var(--muted)}.trk b{font-weight:600;overflow-wrap:anywhere}
.prog{height:6px;background:var(--line);border-radius:999px;overflow:hidden}
.prog i{display:block;height:100%;width:0;background:var(--gold);transition:width 2.4s linear}
.trkurl{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:.78rem;background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:9px 11px;overflow-wrap:anywhere;margin-top:6px}
.detail .top{margin-top:14px}
.detail .sub-h{font-size:1.05rem;margin:22px 0 8px}
@media (max-width:760px){.bk{grid-template-columns:1fr}.bk-side{border-left:0;border-top:1px solid var(--line)}}

/* dashboards */
.who{flex-direction:row;align-items:center;flex-wrap:wrap;min-width:0}
.who form{margin:0}
.banner a{color:var(--lapis);font-weight:600}
.tabs a .count{display:inline-block;min-width:18px;padding:0 6px;border-radius:999px;background:var(--gold);color:#10163A;font-size:.72rem;text-align:center;margin-left:4px}
.panel.plain{background:none;border:0;padding:0}
.panel-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:6px}
.panel-head h3{margin:0}
.panel .lead{margin:-6px 0 14px;font-size:.92rem;max-width:70ch}
.narrow-panel{max-width:760px}
.settings{max-width:760px}
.acts.end{justify-content:flex-end}
.acts form{margin:0}
.rowform{margin-top:8px}
.rowform.stack{flex-direction:column;align-items:flex-start;gap:6px}
.visitors{min-width:28px;text-align:right}
table.compact{min-width:0}
.mailbody{margin-top:4px}
.pill.warn{background:var(--warn-bg);color:var(--warn)}
.bar .g.ht-0{min-height:2px}
.legend i.lapis{background:var(--lapis)}.legend i.gold{background:var(--gold)}
.hue-0{--h:0}.hue-5{--h:5}.hue-10{--h:10}.hue-15{--h:15}.hue-20{--h:20}.hue-25{--h:25}.hue-30{--h:30}.hue-35{--h:35}.hue-40{--h:40}.hue-45{--h:45}.hue-50{--h:50}.hue-55{--h:55}.hue-60{--h:60}.hue-65{--h:65}.hue-70{--h:70}.hue-75{--h:75}.hue-80{--h:80}.hue-85{--h:85}.hue-90{--h:90}.hue-95{--h:95}.hue-100{--h:100}.hue-105{--h:105}.hue-110{--h:110}.hue-115{--h:115}.hue-120{--h:120}.hue-125{--h:125}.hue-130{--h:130}.hue-135{--h:135}.hue-140{--h:140}.hue-145{--h:145}.hue-150{--h:150}.hue-155{--h:155}.hue-160{--h:160}.hue-165{--h:165}.hue-170{--h:170}.hue-175{--h:175}.hue-180{--h:180}.hue-185{--h:185}.hue-190{--h:190}.hue-195{--h:195}.hue-200{--h:200}.hue-205{--h:205}.hue-210{--h:210}.hue-215{--h:215}.hue-220{--h:220}.hue-225{--h:225}.hue-230{--h:230}.hue-235{--h:235}.hue-240{--h:240}.hue-245{--h:245}.hue-250{--h:250}.hue-255{--h:255}.hue-260{--h:260}.hue-265{--h:265}.hue-270{--h:270}.hue-275{--h:275}.hue-280{--h:280}.hue-285{--h:285}.hue-290{--h:290}.hue-295{--h:295}.hue-300{--h:300}.hue-305{--h:305}.hue-310{--h:310}.hue-315{--h:315}.hue-320{--h:320}.hue-325{--h:325}.hue-330{--h:330}.hue-335{--h:335}.hue-340{--h:340}.hue-345{--h:345}.hue-350{--h:350}.hue-355{--h:355}.ht-0{height:0%}.ht-5{height:5%}.ht-10{height:10%}.ht-15{height:15%}.ht-20{height:20%}.ht-25{height:25%}.ht-30{height:30%}.ht-35{height:35%}.ht-40{height:40%}.ht-45{height:45%}.ht-50{height:50%}.ht-55{height:55%}.ht-60{height:60%}.ht-65{height:65%}.ht-70{height:70%}.ht-75{height:75%}.ht-80{height:80%}.ht-85{height:85%}.ht-90{height:90%}.ht-95{height:95%}.ht-100{height:100%}.card:nth-child(1){animation-delay:45ms}.card:nth-child(2){animation-delay:90ms}.card:nth-child(3){animation-delay:135ms}.card:nth-child(4){animation-delay:180ms}.card:nth-child(5){animation-delay:225ms}.card:nth-child(6){animation-delay:270ms}.card:nth-child(7){animation-delay:315ms}.card:nth-child(8){animation-delay:360ms}.card:nth-child(9){animation-delay:405ms}.card:nth-child(10){animation-delay:450ms}.card:nth-child(11){animation-delay:495ms}.card:nth-child(12){animation-delay:540ms}

/* ===== Premium layer: nav, account menu, hero, kids ===== */
.nav{background:rgba(243,235,218,.8);-webkit-backdrop-filter:saturate(1.4) blur(16px);backdrop-filter:saturate(1.4) blur(16px);border-bottom:1px solid rgba(195,160,90,.35);box-shadow:0 10px 30px -22px rgba(0,26,82,.55)}
.nav::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);opacity:.7}
.links{margin-left:auto}
.links a{position:relative;font-weight:500;letter-spacing:.02em;transition:color .2s}
.links a::after{content:"";position:absolute;left:50%;right:50%;bottom:3px;height:2px;border-radius:2px;background:var(--gold);transition:left .25s,right .25s}
.links a:hover::after,.links a.on::after{left:12px;right:12px}
.links a.on{box-shadow:none}
.acct{position:relative;flex:none;margin-left:6px}
.acct-btn{position:relative;width:42px;height:42px;border-radius:50%;border:1px solid rgba(195,160,90,.7);background:linear-gradient(145deg,#0A3590,#00287B 60%,#001A52);display:grid;place-items:center;cursor:pointer;box-shadow:0 8px 18px -8px rgba(0,26,82,.7),inset 0 1px 0 rgba(255,255,255,.18);transition:transform .2s,box-shadow .2s}
.acct-btn:hover{transform:translateY(-1px) scale(1.04);box-shadow:0 12px 22px -8px rgba(0,26,82,.75),inset 0 1px 0 rgba(255,255,255,.2)}
.acct-btn svg{width:20px;height:20px;fill:none;stroke:#E6C36A;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.acct-dot{position:absolute;right:1px;top:1px;width:10px;height:10px;border-radius:50%;background:#3DBE7E;border:2px solid #F3EBDA}
.acct-menu{position:absolute;right:0;top:calc(100% + 12px);width:280px;max-width:calc(100vw - 24px);padding:8px;border-radius:16px;background:rgba(255,253,246,.96);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--line);box-shadow:0 30px 60px -20px rgba(0,26,82,.45);animation:acctin .22s cubic-bezier(.2,.8,.2,1)}
.acct-menu[hidden]{display:none}
.acct-menu::before{content:"";position:absolute;right:15px;top:-7px;width:12px;height:12px;transform:rotate(45deg);background:#FFFDF6;border-left:1px solid var(--line);border-top:1px solid var(--line)}
.acct-menu a{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:11px;text-decoration:none;color:var(--ink);transition:background .15s}
.acct-menu a:hover{background:rgba(195,160,90,.16)}
.acct-menu a.sub{margin-top:4px;border-top:1px dashed var(--line);border-radius:0 0 11px 11px}
.acct-menu svg{flex:none;width:34px;height:34px;padding:8px;border-radius:10px;background:rgba(0,40,123,.08);fill:none;stroke:#00287B;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.acct-menu span{display:flex;flex-direction:column;min-width:0}
.acct-menu b{font-size:.92rem;font-weight:600}
.acct-menu small{font-size:.76rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@keyframes acctin{from{opacity:0;transform:translateY(-8px) scale(.97)}to{opacity:1;transform:none}}
@media (max-width:560px){.links a{padding:8px 8px;font-size:.82rem}}

/* Hero: layered, alive */
.behind{background:radial-gradient(900px 520px at 80% 28%,rgba(195,160,90,.30),transparent 62%),radial-gradient(800px 560px at 6% 96%,rgba(0,40,123,.16),transparent 62%),linear-gradient(180deg,#FBF5E6 0%,#F1E5C9 58%,#E9D9B4 100%);overflow:hidden}
.behind>.wrap{position:relative;z-index:2}
.glow{position:absolute;border-radius:50%;filter:blur(70px);pointer-events:none;animation:drift 14s ease-in-out infinite alternate}
.glow.g1{width:420px;height:420px;right:-60px;top:6%;background:rgba(195,160,90,.38)}
.glow.g2{width:380px;height:380px;left:-90px;bottom:-60px;background:rgba(10,53,144,.22);animation-delay:-6s}
.orbits{position:absolute;right:-12vmin;top:50%;width:92vmin;height:92vmin;margin-top:-46vmin;pointer-events:none;opacity:.55}
.orbits g{transform-origin:300px 300px;animation:spin 120s linear infinite}
.orbits circle{fill:none;stroke:var(--gold);stroke-width:1;stroke-dasharray:2 7}
.orbits circle.pl{fill:var(--gold);stroke:none}
.spark{position:absolute;width:6px;height:6px;border-radius:50%;background:#C3A05A;box-shadow:0 0 14px 3px rgba(195,160,90,.7);animation:twinkle 3.4s ease-in-out infinite;pointer-events:none}
.spark.s1{left:12%;top:24%}.spark.s2{left:44%;top:14%;animation-delay:-1s}.spark.s3{left:70%;top:62%;animation-delay:-2s}.spark.s4{left:28%;top:70%;animation-delay:-.5s}.spark.s5{left:88%;top:20%;animation-delay:-2.6s}
.finder{background:rgba(255,253,246,.78);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid rgba(195,160,90,.45);border-radius:22px;box-shadow:0 40px 70px -34px rgba(0,26,82,.55),inset 0 1px 0 rgba(255,255,255,.8)}
.hero h1{background:linear-gradient(120deg,#001A52,#00287B 55%,#0A3590);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.hero h1 em{background:linear-gradient(120deg,#9C7A32,#C3A05A 50%,#E6C36A);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes drift{from{transform:translate(0,0)}to{transform:translate(40px,-30px)}}
@keyframes twinkle{0%,100%{opacity:.15;transform:scale(.6)}50%{opacity:1;transform:scale(1.2)}}

/* Kids that walk along the bottom of every page */
.kids-walk{position:relative;height:118px;overflow:hidden;margin-top:34px;pointer-events:none}
.kw-ground{position:absolute;left:0;right:0;bottom:6px;height:2px;background:repeating-linear-gradient(90deg,var(--gold) 0 10px,transparent 10px 22px);opacity:.55}
.kw-track{position:absolute;bottom:6px;left:0;will-change:transform}
.kw-track img{height:104px;width:auto;display:block;transform-origin:50% 100%;animation:kwstep .62s ease-in-out infinite;filter:drop-shadow(0 6px 6px rgba(26,32,54,.25))}
.kw-track.a{animation:kwgo 26s linear infinite}
.kw-track.b{animation:kwback 32s linear -14s infinite}
.kw-track.b img{transform:scaleX(-1);animation-name:kwstepb}
@keyframes kwgo{from{transform:translateX(-18vw)}to{transform:translateX(104vw)}}
@keyframes kwback{from{transform:translateX(104vw)}to{transform:translateX(-18vw)}}
@keyframes kwstep{0%,100%{transform:translateY(0) rotate(-2.2deg)}50%{transform:translateY(-6px) rotate(2.2deg)}}
@keyframes kwstepb{0%,100%{transform:scaleX(-1) translateY(0) rotate(-2.2deg)}50%{transform:scaleX(-1) translateY(-6px) rotate(2.2deg)}}

/* Kids waving on sign-in sheets and market banners */
.sheet.single{padding-bottom:120px}
.sheet.single::after{content:"";position:absolute;right:18px;bottom:0;width:96px;height:130px;background:url(../img/kids.webp) center bottom/contain no-repeat;transform-origin:50% 100%;animation:kwave 2.8s ease-in-out infinite;pointer-events:none}
.mk-hero::after{content:"";position:absolute;right:20px;bottom:0;height:78%;aspect-ratio:520/700;background:url(../img/kids.webp) center bottom/contain no-repeat;transform-origin:50% 100%;animation:kwave 3.2s ease-in-out infinite;filter:drop-shadow(0 8px 12px rgba(0,0,0,.4));pointer-events:none}
@keyframes kwave{0%,100%{transform:rotate(-1.6deg)}50%{transform:rotate(1.6deg) translateY(-3px)}}

/* Page change: two deep-blue doors close, the kids and the logo appear, then the doors open */
.loader{position:fixed;inset:0;z-index:300;visibility:hidden;pointer-events:none;overflow:hidden;transition:visibility 0s linear .75s}
.loader.on,html.js.ld-pre .loader{visibility:visible;pointer-events:auto;transition:none}
.ld-door{position:absolute;top:0;bottom:0;width:50.4%;background:radial-gradient(ellipse at 100% 45%,#0A3590,#00287B 45%,#001A52 100%);transition:transform .62s cubic-bezier(.7,0,.2,1)}
.ld-door.l{left:0;transform:translateX(-101%);box-shadow:inset -3px 0 0 rgba(195,160,90,.85)}
.ld-door.r{right:0;transform:translateX(101%);background:radial-gradient(ellipse at 0% 45%,#0A3590,#00287B 45%,#001A52 100%);box-shadow:inset 3px 0 0 rgba(195,160,90,.85)}
.loader.on .ld-door,html.js.ld-pre .loader .ld-door{transform:none}
html.js.ld-pre .loader .ld-door{transition:none}
.ld-core{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;opacity:0;transition:opacity .2s ease}
.loader.on .ld-core,html.js.ld-pre .loader .ld-core{opacity:1;transition:opacity .3s ease .32s}
html.js.ld-pre .loader .ld-core{transition:none}
.ld-logo{width:min(78vw,380px);height:auto;display:block;position:relative;z-index:1;filter:drop-shadow(0 18px 30px rgba(0,0,0,.35))}
.ld-kids{height:min(30svh,270px);width:auto;display:block;position:relative;z-index:2;margin-top:-4svh}
.ld-bar{width:min(46vw,200px);height:3px;border-radius:3px;background:rgba(255,255,255,.14);overflow:hidden;margin-top:18px}
.ld-bar i{display:block;height:100%;width:40%;border-radius:3px;background:linear-gradient(90deg,#C3A05A,#F1DDA6);animation:ldrun 1.1s ease-in-out infinite}
.loader.on .ld-logo,html.js.ld-pre .loader .ld-logo{animation:ldlogo .8s cubic-bezier(.2,.8,.2,1) .3s both}
.loader.on .ld-kids,html.js.ld-pre .loader .ld-kids{animation:ldkids .6s cubic-bezier(.2,.9,.25,1.15) .4s both,ldbob 1.6s ease-in-out 1s infinite}
@keyframes ldlogo{0%{opacity:0;transform:scale(.55) rotate(-8deg);clip-path:circle(0% at 50% 40%)}60%{opacity:1}100%{opacity:1;transform:none;clip-path:circle(80% at 50% 40%)}}
@keyframes ldkids{0%{transform:translateY(60%);opacity:0}100%{transform:none;opacity:1}}
@keyframes ldbob{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@keyframes ldrun{0%{transform:translateX(-110%)}100%{transform:translateX(260%)}}
@media (prefers-reduced-motion:reduce){.ld-bar i,.ld-kids,.ld-logo,.kw-track,.kw-track img,.glow,.orbits g,.spark,.sheet.single::after,.mk-hero::after{animation:none!important}.ld-bar i{width:100%}.ld-door{transition:none}}

/* Dashboard: a deep-blue side panel with icons, the kids standing guard */
.dash-head .mail-chip{text-transform:none;letter-spacing:0;display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border-radius:999px;background:rgba(255,253,246,.8);border:1px solid var(--line);font-size:.86rem;color:var(--muted)}
.dash-head .mail-chip i{width:8px;height:8px;border-radius:50%;background:#3DBE7E;box-shadow:0 0 0 3px rgba(61,190,126,.2)}
.dash-grid{display:grid;grid-template-columns:230px minmax(0,1fr);gap:26px;align-items:start}
.side{position:sticky;top:78px;display:flex;flex-direction:column;border-radius:22px;padding:14px 12px 0;overflow:hidden;background:radial-gradient(ellipse at 20% 0%,#0A3590,#00287B 50%,#001A52);border:1px solid rgba(195,160,90,.5);box-shadow:0 30px 50px -30px rgba(0,26,82,.8)}
.side .tabs{display:flex;flex-direction:column;gap:3px;border:0;margin:0;overflow:visible}
.side .tabs a,.sf{display:flex;align-items:center;gap:11px;padding:10px 12px;border-radius:12px;border:0;margin:0;color:rgba(246,239,220,.78);font:inherit;font-weight:500;font-size:.92rem;text-decoration:none;background:none;cursor:pointer;width:100%;text-align:left;transition:background .18s,color .18s,transform .18s}
.side .tabs a:hover,.sf:hover{background:rgba(255,255,255,.08);color:#fff;transform:translateX(2px)}
.side .tabs a.on{background:linear-gradient(135deg,#E6C36A,#C3A05A);color:#10163A;box-shadow:0 8px 18px -8px rgba(195,160,90,.9)}
.side svg{flex:none;width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.side .tabs a .count{margin-left:auto;background:#fff;color:#00287B}
.side-foot{margin-top:10px;padding-top:10px;border-top:1px dashed rgba(195,160,90,.4)}
.side-kids{height:150px;width:auto;align-self:center;margin-top:8px;margin-bottom:-6px;filter:drop-shadow(0 8px 10px rgba(0,0,0,.4));transform-origin:50% 100%;animation:kwave 3s ease-in-out infinite}
@media (max-width:900px){
 .dash-grid{grid-template-columns:1fr;gap:16px}
 .side{position:static;padding:8px;border-radius:16px;flex-direction:row;align-items:center}
 .side .tabs{flex-direction:row;overflow-x:auto;scrollbar-width:none;flex:1}
 .side .tabs a{width:auto;white-space:nowrap;padding:9px 12px}
 .side-kids{display:none}
 .side-foot{display:flex;margin:0 0 0 4px;padding:0;border:0;gap:2px}
 .side-foot form{margin:0}
 .sf{width:auto;padding:9px 10px}
 .sf span{display:none}
}

/* Two separate nav icons: Partners (menu) and Admin (direct) */
.acct-wrap{display:flex;align-items:center;gap:8px;flex:none;margin-left:6px}
.acct-wrap .acct{margin-left:0}
a.acct-btn{text-decoration:none}
.acct-btn.admin{background:rgba(255,253,246,.9);border:1.5px solid #00287B;box-shadow:0 6px 14px -8px rgba(0,26,82,.5)}
.acct-btn.admin svg{stroke:#00287B}
.acct-btn.admin:hover{background:#00287B}
.acct-btn.admin:hover svg{stroke:#E6C36A}
.acct-btn[data-tip]::after{content:attr(data-tip);position:absolute;top:calc(100% + 9px);left:50%;transform:translate(-50%,-4px);padding:4px 10px;border-radius:8px;background:#001A52;color:#F3E6C2;font-size:.72rem;letter-spacing:.06em;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .18s,transform .18s}
.acct-btn[data-tip]:hover::after,.acct-btn[data-tip]:focus-visible::after{opacity:1;transform:translate(-50%,0)}
.acct-btn[aria-expanded="true"]::after{opacity:0!important}

/* Footer */
footer.site-foot{position:relative;margin-top:0;padding:54px 0 28px;color:rgba(246,239,220,.78);font-size:.92rem;background:radial-gradient(900px 400px at 85% -10%,rgba(195,160,90,.18),transparent 60%),linear-gradient(180deg,#00287B 0%,#001A52 100%)}
footer.site-foot::before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,transparent,#C3A05A,transparent)}
.foot-main{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:34px}
.fcol{display:flex;flex-direction:column;gap:9px;min-width:0}
.fcol h4{font-family:var(--display);font-size:.8rem;letter-spacing:.18em;text-transform:uppercase;color:#E6C36A;margin-bottom:6px;font-weight:600}
.fcol a{color:rgba(246,239,220,.78);text-decoration:none;width:max-content;max-width:100%;transition:color .15s,transform .15s}
.fcol a:hover{color:#fff;transform:translateX(3px)}
.fbrand p{max-width:34ch;margin:4px 0 8px}
.flogo{width:190px;height:auto;margin:-10px 0 0 -8px}
.fmail{display:inline-flex;align-items:center;gap:9px;color:#F3E6C2!important}
.fmail svg,.fp-trust svg{width:18px;height:18px;flex:none;fill:none;stroke:#E6C36A;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.foot-pay{margin-top:36px;padding-block:22px;border-top:1px solid rgba(195,160,90,.28);border-bottom:1px solid rgba(195,160,90,.28);display:grid;grid-template-columns:auto 1fr;gap:18px 30px;align-items:center}
.fp-label{display:flex;flex-direction:column;gap:3px}
.fp-label b{color:#fff;font-weight:600}
.fp-label span{font-size:.8rem;color:rgba(246,239,220,.6)}
.fp-list,.fp-trust{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.fp-list li{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 14px;border-radius:10px;background:rgba(255,253,246,.08);border:1px solid rgba(195,160,90,.4);color:#F3E6C2;font-size:.84rem;font-weight:500;transition:background .2s,transform .2s}
.fp-list li:hover{background:rgba(255,253,246,.16);transform:translateY(-2px)}
.fp-list li.has-logo{background:#fff;border-color:#fff;padding:0 12px}
.fp-list li.has-logo img{height:24px;width:auto;display:block}
.fp-list svg{width:20px;height:20px;fill:none;stroke:#E6C36A;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.fp-trust{grid-column:1/-1;gap:10px 28px;font-size:.84rem}
.fp-trust li{display:inline-flex;align-items:center;gap:8px}
.foot-bottom{display:flex;flex-wrap:wrap;gap:8px 24px;justify-content:space-between;padding-top:20px;font-size:.82rem;color:rgba(246,239,220,.6)}
.foot-bottom .muted2{max-width:62ch}
.kids-walk{margin-top:44px;margin-bottom:-2px}
@media (max-width:900px){.foot-main{grid-template-columns:1fr 1fr}.fbrand{grid-column:1/-1}.foot-pay{grid-template-columns:1fr}}
@media (max-width:480px){.foot-main{grid-template-columns:1fr}}

.hp-field{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}

/* ---------- Phone header: no logo, bigger and taller, links side by side ---------- */
@media (max-width:700px){
  .nav .wrap{height:68px;gap:6px;padding-left:10px;padding-right:10px}
  .nav .brand{display:none}
  .links{flex:1;margin-left:0;justify-content:space-between;gap:0;-webkit-mask-image:linear-gradient(90deg,#000 88%,transparent);mask-image:linear-gradient(90deg,#000 88%,transparent)}
  .links a{padding:12px 9px;font-size:1rem;font-weight:600;letter-spacing:0}
  .links a::after{bottom:5px}
  .acct-wrap{gap:6px;margin-left:0}
  .page,.dash{padding-top:68px}
  .behind{padding-top:84px}
  .door .emb{top:calc(76px + 1.2svh)}
  .gate-title{top:calc(76px + 1.2svh + var(--W) + 6px)}
}

/* The client's own emblem as a round medallion */
.brand .mark{border-radius:50%;object-fit:cover;box-shadow:0 0 0 1.5px var(--gold)}
.door .emb{border-radius:50%;object-fit:cover;box-shadow:0 0 0 3px rgba(230,195,106,.9),0 0 0 9px rgba(230,195,106,.18),0 18px 50px rgba(0,0,0,.45)}
.gate-title{margin-top:14px}

/* Main logo in the gate: sits above both doors and turns like a coin */
.stage{--EW:calc(var(--W)*1.3)}
.gate-title{top:calc(68px + 1.2svh);margin-top:0}
.gate-logo-h{margin:0;display:flex;justify-content:center;perspective:1100px}
.gate-logo{width:var(--EW);height:auto;filter:drop-shadow(0 14px 22px rgba(0,0,0,.45));animation:logospin 9s ease-in-out infinite;transform-origin:50% 50%}
.gate-title .tag{margin-top:16px}
@keyframes logospin{0%,60%{transform:rotateY(0)}100%{transform:rotateY(360deg)}}
@media (prefers-reduced-motion:reduce){.gate-logo{animation:none}}
@media (max-width:700px){.gate-title{top:calc(76px + 1.2svh)}.stage{--EW:calc(var(--W)*1.45)}}

/* No seam line in the middle of the loader or the gate */
.ld-door,.ld-door.l,.ld-door.r{background:linear-gradient(180deg,#0A3590,#00287B 55%,#001A52);box-shadow:none;width:50.6%}
.door{box-shadow:none;background:linear-gradient(180deg,#0A3590,#00287B 55%,#001A52);width:50.6%}

/* Payment methods: white cards of one size, like big shops show them */
.foot-pay{grid-template-columns:1fr;justify-items:center;text-align:center}
.fp-label{align-items:center}
.fp-list{justify-content:center;gap:12px}
.fp-list li,.fp-list li.has-logo{min-width:96px;height:48px;padding:0 16px;justify-content:center;border-radius:8px;background:#fff;border:1px solid #fff;color:#00287B;font-weight:600;box-shadow:0 6px 16px -8px rgba(0,0,0,.5)}
.fp-list li:hover{background:#fff;transform:translateY(-2px)}
.fp-list li.has-logo img{height:28px;max-width:80px;object-fit:contain}
.fp-list svg{stroke:#00287B}
.fp-trust{justify-content:center}

/* Referral tables: everything side by side on a computer, one card per visitor on a phone */
table.rt{min-width:0;table-layout:auto}
.rt-wrap{overflow:visible}
table.rt th,table.rt td{padding:12px 10px;font-size:.88rem}
table.rt td.nw,table.rt th:nth-child(-n+2){white-space:nowrap}
table.rt td.offer{min-width:200px}
.lnk-m{color:var(--lapis);word-break:break-all}
@media (max-width:900px){
  table.rt,table.rt tbody,table.rt tr,table.rt td{display:block;width:100%}
  table.rt thead{position:absolute;left:-9999px}
  table.rt tr{background:var(--raised);border:1px solid var(--line);border-radius:14px;padding:6px 14px;margin-bottom:14px;box-shadow:var(--shadow)}
  table.rt td{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:10px 0;border-bottom:1px dashed rgba(195,160,90,.35);text-align:right}
  table.rt td::before{content:attr(data-l);color:var(--muted);font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;flex:none;text-align:left}
  table.rt td[data-l=""]::before{display:none}
  table.rt td:last-child{border-bottom:0;justify-content:flex-start;flex-wrap:wrap}
  table.rt td.offer{min-width:0}
  table.rt td.n{text-align:right}
}
.thumb{width:56px;height:40px;object-fit:cover;border-radius:6px;margin-right:10px;vertical-align:middle;float:left}
form.inl{display:inline}

/* Main logo (globe and plane) in the header */
.brand .brand-logo{height:62px;width:auto;display:block;filter:drop-shadow(0 2px 4px rgba(0,26,82,.18))}
@media (min-width:701px){
  .nav .wrap{height:72px}
  .page,.dash{padding-top:72px}
  .behind{padding-top:92px}
  .gate-title{top:calc(80px + 1.2svh)}
}

.brand .mark.logo{border-radius:0;box-shadow:none;object-fit:contain;height:56px;width:auto}

/* ---------- Computer only: a Pharaonic gate with handles, arrows and light ---------- */
.dh,.da,.dband,.gate-rays{display:none}
@media (min-width:861px){
  .door{background:radial-gradient(ellipse at 50% 38%,#0F3FA5 0%,#0A3590 38%,#00287B 70%,#001A52 100%)}
  .dh{display:block;position:absolute;top:56%;width:38px;height:64px;margin-top:0;filter:drop-shadow(0 12px 14px rgba(0,0,0,.45));animation:dhsway 4.2s ease-in-out infinite}
  .door.l .dh{right:3%;transform-origin:50% 0}
  .door.r .dh{left:3%;transform-origin:50% 0}
  .door.r .dh{animation-delay:-.6s}
  .da{display:block;position:absolute;top:calc(56% + 12px);width:56px;height:28px;opacity:.9;animation:darrow 2.2s ease-in-out infinite;filter:drop-shadow(0 4px 8px rgba(0,0,0,.4))}
  .door.l .da{left:12%}
  .door.r .da{right:12%;transform:scaleX(-1)}
  .door.r .da{animation-name:darrowr}
  .dband{display:block;position:absolute;left:0;right:0;bottom:0;height:22px;opacity:.4;
    background:linear-gradient(135deg,transparent 50%,#E6C36A 50%) 0 0/22px 22px repeat-x,linear-gradient(225deg,transparent 50%,#E6C36A 50%) 11px 0/22px 22px repeat-x;
    -webkit-mask-image:linear-gradient(90deg,transparent,#000 18%,#000 82%,transparent);mask-image:linear-gradient(90deg,transparent,#000 18%,#000 82%,transparent)}
  .gate-rays{display:block;position:absolute;left:50%;top:calc(80px + 1.2svh + var(--EW)*.34);width:calc(var(--EW)*2.6);aspect-ratio:1;margin-left:calc(var(--EW)*-1.3);margin-top:calc(var(--EW)*-1.3);z-index:3;pointer-events:none;opacity:calc(var(--t)*.9);
    background:repeating-conic-gradient(from 0deg,rgba(230,195,106,.20) 0 4deg,transparent 4deg 18deg);
    -webkit-mask-image:radial-gradient(circle,#000 0,rgba(0,0,0,.55) 30%,transparent 62%);mask-image:radial-gradient(circle,#000 0,rgba(0,0,0,.55) 30%,transparent 62%);
    animation:raysturn 60s linear infinite}
  .gate-title::before{content:"";position:absolute;left:50%;top:calc(var(--EW)*.34 - 20px);width:calc(var(--EW)*1.5);height:calc(var(--EW)*1.5);margin-left:calc(var(--EW)*-.75);margin-top:calc(var(--EW)*-.75);border-radius:50%;z-index:-1;background:radial-gradient(circle,rgba(246,222,154,.28),rgba(246,222,154,0) 62%);animation:halo 4.5s ease-in-out infinite}
  .gate-kids img{animation:sway 2.6s ease-in-out infinite,kidsglow 4.5s ease-in-out infinite}
}
@keyframes dhsway{0%,100%{transform:rotate(-2.500deg)}50%{transform:rotate(2.500deg)}}
@keyframes darrow{0%,100%{transform:translateX(0);opacity:.35}50%{transform:translateX(-14px);opacity:1}}
@keyframes darrowr{0%,100%{transform:scaleX(-1) translateX(0);opacity:.35}50%{transform:scaleX(-1) translateX(-14px);opacity:1}}
@keyframes raysturn{to{transform:rotate(360deg)}}
@keyframes halo{0%,100%{opacity:.55;transform:scale(.95)}50%{opacity:1;transform:scale(1.06)}}
@keyframes kidsglow{0%,100%{filter:drop-shadow(0 10px 14px rgba(0,0,0,.35))}50%{filter:drop-shadow(0 10px 22px rgba(230,195,106,.45))}}
@media (prefers-reduced-motion:reduce){.dh,.da,.gate-rays,.gate-title::before{animation:none!important}}
table.rt td.st .pill{margin-top:3px}
@media (max-width:900px){
  table.rt td.offer{flex-direction:column;align-items:flex-start;text-align:left}
  table.rt td.st{flex-wrap:wrap}
  table.rt td.st br{display:none}
}

/* header account links: plain text, no template icons */
.acct-btn,.acct-btn.admin{width:auto;height:auto;border-radius:0;background:none;box-shadow:none;border:0;padding:6px 2px;margin-left:14px;font:600 .82rem/1 var(--sans,inherit);letter-spacing:.14em;text-transform:uppercase;color:#00287B;display:inline-flex;align-items:center;gap:6px}
.acct-btn:hover,.acct-btn.admin:hover{transform:none;box-shadow:none;background:none;color:#8E6C26}
.acct-btn .acct-t{border-bottom:1px solid transparent;padding-bottom:3px;transition:border-color .2s}
.acct-btn:hover .acct-t{border-color:#C3A05A}
.acct-btn.partners .acct-t{border:1px solid #C3A05A;border-radius:999px;padding:9px 16px}
.acct-btn.partners:hover .acct-t{background:#00287B;color:#F3E6C2;border-color:#00287B}
.acct-btn.admin{color:rgba(0,26,82,.55);font-weight:500}
.acct-dot{position:static;margin-left:2px}
@media (max-width:860px){.acct-btn,.acct-btn.admin{margin-left:4px;font-size:.62rem;letter-spacing:.08em}.acct-btn.partners .acct-t{padding:6px 9px}}
.acct-dot,.dash-head .mail-chip i{display:none!important}
.panel.danger{border:1px solid #B3261E;background:#FFF6F5}.panel.danger h3{color:#B3261E}.btn.danger-btn{background:#B3261E;border-color:#B3261E;color:#fff}.btn.danger-btn:hover{background:#8C1D18}
.cur{display:inline-flex;border:1px solid rgba(195,160,90,.7);border-radius:999px;overflow:hidden;flex:none;margin-left:10px;background:rgba(255,253,246,.7)}
.cur a{padding:7px 11px;font:600 .72rem/1 var(--sans,inherit);letter-spacing:.1em;color:#00287B;text-decoration:none}
.cur a.on{background:#00287B;color:#F3E6C2}
.cur a:not(.on):hover{background:rgba(0,40,123,.08)}
@media (max-width:860px){.cur{margin-left:4px}.cur a{padding:6px 8px;font-size:.62rem}}
.upl{display:inline}.mini.pick{position:relative;display:inline-block;cursor:pointer;overflow:hidden}.mini.pick input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%}
.art img.stock{filter:saturate(.95)}

/* visitor table: the booking actions sit on their own line inside the card */
table.rt tr.has-act>td{border-bottom:0}
table.rt tr.actrow>td{padding:0 10px 16px;border-top:0;white-space:normal}
table.rt tr.actrow .acts,table.rt tr.actrow .rowform{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0}
table.rt tr.actrow .acts+.acts{margin-top:8px}
table.rt tr.actrow .sm-in{width:190px;max-width:100%}
table.rt tr.actrow .pr{width:120px;max-width:100%}
table.rt tr.actrow form{margin:0}
table.rt tr.actrow{border-top:0}
@media (max-width:860px){
  table.rt tr.has-act{margin-bottom:0;border-bottom:0;border-bottom-left-radius:0;border-bottom-right-radius:0;box-shadow:none}
  table.rt tr.actrow{border-top:0;border-top-left-radius:0;border-top-right-radius:0;margin-top:0;padding:0 14px 8px}
  table.rt tr.actrow>td{display:block;padding:0 0 10px;border-bottom:0}
  table.rt tr.actrow .sm-in,table.rt tr.actrow .pr{width:100%}
  table.rt tr.actrow .rowform{align-items:stretch}
}
table.rt tr.actrow .actline{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;padding-top:2px}
table.rt tr.actrow .acts+.acts{margin-top:0}
table.rt td.dt{width:1%;white-space:nowrap}

/* comfortable tap targets on touch screens */
@media (max-width:860px){
  .cur a{padding:9px 10px;min-height:34px;display:inline-flex;align-items:center}
  .acct-btn.admin{padding:10px 6px}
  .foot a,footer a{display:inline-block;padding:7px 0}
  .card-link,.co a.more,.co a[href*="company="]{display:inline-block;padding:9px 0}
}
/* wide tables scroll inside their own panel instead of widening the page */
.dash-grid>*,.dash-main,.panel{min-width:0}
.tw{max-width:100%;-webkit-overflow-scrolling:touch}

@media (max-width:900px){
  table.stk,table.stk tbody,table.stk tr,table.stk td{display:block;width:100%}
  table.stk thead{position:absolute;left:-9999px}
  table.stk{min-width:0}
  table.stk tr{background:var(--raised);border:1px solid var(--line);border-radius:14px;padding:6px 14px;margin-bottom:12px}
  table.stk td{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:9px 0;border-bottom:1px dashed rgba(195,160,90,.35);text-align:right;white-space:normal}
  table.stk td::before{content:attr(data-l);color:var(--muted);font-size:.76rem;letter-spacing:.06em;text-transform:uppercase;flex:none;text-align:left}
  table.stk td[data-l=""]::before{display:none}
  table.stk td:last-child{border-bottom:0;justify-content:flex-start;flex-wrap:wrap}
  table.stk td.offer{flex-direction:column;align-items:flex-start;text-align:left}
  table.stk td .acts,table.stk td form{flex-wrap:wrap}
  table.stk td[colspan]{display:block}
  table.stk td[colspan] .rowform{margin:0}
  table.stk td.n{text-align:right}
}

/* footer social links */
.fsoc{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 0}
.fsoc a{border:1px solid rgba(255,255,255,.28);border-radius:999px;padding:6px 14px;font-size:.82rem;color:#fff;text-decoration:none;min-height:34px;display:inline-flex;align-items:center}
.fsoc a:hover{background:rgba(255,255,255,.12)}
/* site content editor */
.sc-form .panel{margin-bottom:16px}
.sc-form .grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}
.imgfield{display:flex;flex-direction:column;gap:8px;padding:12px;border:1px solid var(--line,#e3e6ee);border-radius:12px;background:#fff}
.imgfield .pv{height:110px;border-radius:8px;background:repeating-conic-gradient(#e9ecf3 0 25%,#fff 0 50%) 0 0/16px 16px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.imgfield .pv img{max-width:100%;max-height:100%;object-fit:contain}
.imgfield small{color:#667}

/* ---------- Phone menu: gate-door button + frosted glass sheet (phones only) ---------- */
.burger,.msheet{display:none}
@media (max-width:700px){
  .links{display:none}
  .burger{display:block;position:relative;flex:none;width:48px;height:48px;margin-right:auto;padding:0;border:0;border-radius:12px;background:none;cursor:pointer;-webkit-tap-highlight-color:transparent}
  .burger i{position:absolute;left:8px;height:3px;border-radius:3px;background:#00287B;transform-origin:0 50%;transition:transform .45s cubic-bezier(.2,.8,.2,1),width .35s ease,opacity .25s,background .3s}
  .burger i.b1{top:14px;width:32px}
  .burger i.b2{top:23px;width:22px}
  .burger i.b3{top:32px;width:12px}
  .burger[aria-expanded="true"] i.b1{width:30px;transform:translate(4px,-1px) rotate(45deg)}
  .burger[aria-expanded="true"] i.b2{opacity:0;width:0}
  .burger[aria-expanded="true"] i.b3{width:30px;transform:translate(4px,1px) rotate(-45deg)}
  .nav .wrap{padding-left:12px}
  .nav .acct-wrap{display:none}
  .cur{margin-left:0}
  .ms-glass a.adm{font-size:.74rem;opacity:.7;border-top:1px dashed rgba(230,195,106,.4);margin-top:6px;padding:12px 8px 4px}
  .msheet.on .ms-glass a.adm{opacity:.7}
  .msheet{display:flex;position:fixed;inset:0;z-index:45;align-items:center;justify-content:center;padding:84px 18px 24px;background:rgba(0,16,56,.42);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);opacity:0;visibility:hidden;transition:opacity .35s ease,visibility 0s linear .6s}
  .msheet.on{opacity:1;visibility:visible;transition:opacity .35s ease}
  .ms-glass{position:relative;width:min(86vw,340px);margin-top:150px;padding:34px 20px 22px;border-radius:26px;border:1px solid rgba(230,195,106,.75);background:linear-gradient(155deg,rgba(255,255,255,.34),rgba(255,255,255,.1) 60%,rgba(195,160,90,.16));-webkit-backdrop-filter:blur(22px) saturate(1.6);backdrop-filter:blur(22px) saturate(1.6);box-shadow:0 30px 60px -20px rgba(0,10,40,.7),inset 0 1px 0 rgba(255,255,255,.5);clip-path:inset(-260px 50% -20px 50% round 26px);transition:clip-path .65s cubic-bezier(.2,.8,.2,1)}
  .msheet.on .ms-glass{clip-path:inset(-260px 0 -20px 0 round 26px)}
  .ms-kids{position:absolute;left:50%;bottom:calc(100% - 14px);width:128px;height:auto;transform:translate(-50%,46%) scale(.85);opacity:0;transform-origin:50% 100%;filter:drop-shadow(0 8px 12px rgba(0,0,0,.4));pointer-events:none;transition:transform .7s cubic-bezier(.2,1.2,.3,1) .25s,opacity .4s ease .25s}
  .msheet.on .ms-kids{transform:translate(-50%,0) scale(1);opacity:1}
  .ms-glass nav{display:flex;flex-direction:column}
  .ms-glass a{display:block;padding:12px 8px;text-align:center;text-decoration:none;color:#fff;font-size:1.2rem;font-weight:600;letter-spacing:.06em;text-shadow:0 1px 8px rgba(0,16,56,.55);border-bottom:1px solid rgba(230,195,106,.35);opacity:0;transform:translateY(10px);transition:opacity .4s ease,transform .5s cubic-bezier(.2,.8,.2,1),color .2s}
  .ms-glass a:last-child{border-bottom:0}
  .ms-glass a:active{color:#E6C36A}
  .ms-glass a.sub{font-size:.95rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:#F3E6C2}
  .ms-glass a.sub:first-of-type{margin-top:8px;border-top:1px solid rgba(230,195,106,.6)}
  .msheet.on .ms-glass a{opacity:1;transform:none}
  .msheet.on .ms-glass a:nth-child(1){transition-delay:.18s}.msheet.on .ms-glass a:nth-child(2){transition-delay:.24s}.msheet.on .ms-glass a:nth-child(3){transition-delay:.3s}.msheet.on .ms-glass a:nth-child(4){transition-delay:.36s}.msheet.on .ms-glass a:nth-child(5){transition-delay:.42s}.msheet.on .ms-glass a:nth-child(6){transition-delay:.48s}.msheet.on .ms-glass a:nth-child(n+7){transition-delay:.54s}
  html.menu-open,html.menu-open body{overflow:hidden}
}
@media (max-width:700px) and (max-height:640px){.ms-glass{margin-top:110px}.ms-kids{width:96px}.ms-glass a{padding:10px 8px;font-size:1.05rem}}
@media (prefers-reduced-motion:reduce){.msheet,.ms-glass,.ms-kids,.ms-glass a,.burger i{transition:none!important}}

/* ---------- Flights: section doors and shaped airline badges ---------- */
#view-flights{padding-top:84px}
.fl-head{max-width:760px;margin:0 auto 34px;text-align:center}
.fl-head h1{margin:6px 0 10px}
.fl-head .sub{color:var(--muted);max-width:600px;margin-left:auto;margin-right:auto}
.fl-back{display:inline-flex;margin-top:14px;padding:9px 18px;border:1px solid #C3A05A;border-radius:999px;text-decoration:none;color:#00287B;font-weight:600;font-size:.88rem;transition:background .2s,color .2s}
.fl-back:hover{background:#00287B;color:#F3E6C2}
.fl-sections{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;max-width:1040px;margin:0 auto}
.fl-sec{position:relative;display:flex;flex-direction:column;align-items:center;gap:8px;padding:34px 22px 26px;border-radius:26px;text-decoration:none;color:#fff;text-align:center;background:linear-gradient(160deg,#0A3590,#00287B 55%,#001A52);border:1px solid rgba(230,195,106,.6);box-shadow:0 22px 40px -24px rgba(0,26,82,.8);overflow:hidden;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s;opacity:0;animation:flpop .7s cubic-bezier(.2,.9,.3,1.2) forwards}
.fl-sec.s2{animation-delay:.12s}.fl-sec.s3{animation-delay:.24s}
.fl-sec::before{content:"";position:absolute;inset:-40% -20% auto auto;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(230,195,106,.35),transparent 65%);transition:transform .6s}
.fl-sec:hover,.fl-sec:focus-visible{transform:translateY(-8px) scale(1.02);box-shadow:0 34px 50px -22px rgba(0,26,82,.9)}
.fl-sec:hover::before{transform:translate(-30px,30px) scale(1.3)}
.fl-sec:active{transform:scale(.98)}
.fl-orb{position:relative;width:92px;height:92px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(145deg,#F6DE9A,#C3A05A 55%,#8E6C26);box-shadow:inset 0 2px 0 rgba(255,255,255,.5),0 10px 22px -8px rgba(0,0,0,.6);transition:transform .5s cubic-bezier(.2,1.4,.3,1)}
.fl-sec:hover .fl-orb{transform:rotate(-8deg) scale(1.12)}
.fl-orb svg{width:44px;height:44px;fill:none;stroke:#00287B;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.fl-sec b{font-size:1.25rem;letter-spacing:.02em;margin-top:8px}
.fl-sec small{color:rgba(243,230,194,.85);font-size:.88rem;line-height:1.45;max-width:26ch}
.fl-sec em{margin-top:10px;font-style:normal;font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:#E6C36A}
.fl-sec em i{display:inline-block;font-style:normal;transition:transform .3s}
.fl-sec:hover em i{transform:translateX(6px)}
@keyframes flpop{from{opacity:0;transform:translateY(24px) scale(.94)}to{opacity:1;transform:none}}

.fl-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:30px 18px;max-width:1040px;margin:0 auto;justify-items:center}
.fbadge{display:flex;flex-direction:column;align-items:center;gap:12px;text-decoration:none;color:var(--ink);text-align:center;width:100%;max-width:190px;-webkit-tap-highlight-color:transparent;opacity:0;animation:flpop .6s cubic-bezier(.2,.9,.3,1.2) forwards;animation-delay:calc(var(--i) * 70ms)}
.fbadge b{font-size:.95rem;font-weight:600;line-height:1.3;transition:color .2s}
.fb-glow{display:block;width:132px;height:132px;transition:transform .45s cubic-bezier(.2,1.5,.3,1),filter .3s;filter:drop-shadow(0 12px 14px rgba(0,26,82,.28))}
.fb-ring{display:grid;place-items:center;width:100%;height:100%;padding:5px;background:linear-gradient(145deg,#F6DE9A,#C3A05A 50%,#8E6C26)}
.fb-in{display:grid;place-items:center;width:100%;height:100%;background:linear-gradient(150deg,#0A3590,#00287B 60%,#001A52);overflow:hidden}
.fb-in.has-logo{background:#fff;padding:20%}
.fb-in img{max-width:100%;max-height:100%;object-fit:contain}
.fb-init{font-family:var(--serif,Georgia,serif);font-weight:700;font-size:2rem;letter-spacing:.04em;color:#E6C36A;text-shadow:0 2px 0 rgba(0,0,0,.35)}
.sh-circle .fb-ring,.sh-circle .fb-in{border-radius:50%}
.sh-square .fb-ring{border-radius:30%}.sh-square .fb-in{border-radius:26%}
.sh-star .fb-ring,.sh-star .fb-in{clip-path:polygon(50% 0,59% 8%,71% 4%,76% 15%,88% 17%,89% 29%,99% 36%,93% 47%,100% 58%,90% 65%,91% 77%,79% 80%,75% 92%,63% 91%,54% 100%,45% 93%,34% 98%,27% 87%,15% 85%,13% 73%,3% 66%,8% 55%,0 44%,9% 36%,8% 24%,19% 20%,23% 9%,36% 10%)}
.sh-hex .fb-ring,.sh-hex .fb-in{clip-path:polygon(25% 3%,75% 3%,100% 50%,75% 97%,25% 97%,0 50%)}
.sh-shield .fb-ring,.sh-shield .fb-in{clip-path:polygon(50% 0,92% 12%,92% 52%,50% 100%,8% 52%,8% 12%)}
.sh-star .fb-in.has-logo{padding:26%}.sh-shield .fb-in.has-logo,.sh-hex .fb-in.has-logo{padding:24%}
.fbadge:hover .fb-glow,.fbadge:focus-visible .fb-glow{transform:scale(1.14) rotate(-3deg);filter:drop-shadow(0 18px 22px rgba(0,26,82,.4)) drop-shadow(0 0 14px rgba(230,195,106,.8));animation:flwig .6s ease .15s}
.fbadge:hover b{color:#00287B}
.fbadge:active .fb-glow{transform:scale(.94)}
@keyframes flwig{0%,100%{rotate:0deg}25%{rotate:-5deg}50%{rotate:4deg}75%{rotate:-2deg}}
@media (max-width:760px){
  .fl-sections{grid-template-columns:1fr;gap:16px}
  .fl-sec{flex-direction:row;flex-wrap:wrap;text-align:left;align-items:center;column-gap:16px;padding:20px 18px}
  .fl-orb{width:64px;height:64px;flex:none}.fl-orb svg{width:32px;height:32px}
  .fl-sec b{margin:0;font-size:1.1rem}.fl-sec small{max-width:none;flex-basis:100%}.fl-sec em{margin:0}
  .fl-grid{grid-template-columns:repeat(2,1fr);gap:26px 10px}
  .fb-glow{width:118px;height:118px}
}
@media (prefers-reduced-motion:reduce){.fl-sec,.fbadge{animation:none;opacity:1}.fb-glow,.fl-orb{transition:none}.fbadge:hover .fb-glow{animation:none}}

/* Header tools: smaller, quieter currency / Partners / Admin (desktop) */
@media (min-width:861px){
  .cur{margin-left:8px;border-width:1px}
  .cur a{padding:5px 9px;font-size:.62rem;letter-spacing:.12em}
  .acct-btn,.acct-btn.admin{margin-left:8px;font-size:.66rem;letter-spacing:.16em}
  .acct-btn.partners .acct-t{padding:5px 13px;font-size:.66rem;border-width:1px}
  .acct-btn.admin{font-size:.6rem;letter-spacing:.18em}
}

/* Airline logos: larger inside their badges */
.fb-in.has-logo{padding:7%}
.sh-circle .fb-in.has-logo{padding:9%}
.sh-star .fb-in.has-logo{padding:17%}
.sh-shield .fb-in.has-logo,.sh-hex .fb-in.has-logo{padding:14%}
.fb-in.has-logo img{width:100%;height:100%;transform:scale(1.1);transition:transform .35s cubic-bezier(.2,.9,.3,1.2)}
.fbadge:hover .fb-in.has-logo img{transform:scale(1.18)}

/* ===== Language switcher ===== */
.lang{position:relative;flex:none;margin-left:8px}
.lang-btn{display:inline-flex;align-items:center;gap:5px;border:1px solid rgba(195,160,90,.7);background:rgba(255,253,246,.7);color:#00287B;border-radius:999px;padding:5px 9px;font:600 .62rem/1 var(--sans,inherit);letter-spacing:.12em;cursor:pointer;transition:background .2s,box-shadow .2s}
.lang-btn:hover{background:#fff;box-shadow:0 6px 14px -8px rgba(0,26,82,.5)}
.lang-btn svg{width:14px;height:14px;fill:none;stroke:#00287B;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.lang-btn .chev{width:10px;height:10px;transition:transform .2s}
.lang-btn[aria-expanded="true"] .chev{transform:rotate(180deg)}
.lang-menu{position:absolute;right:0;top:calc(100% + 10px);min-width:150px;padding:6px;border-radius:14px;background:rgba(255,253,246,.97);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--line);box-shadow:0 26px 50px -20px rgba(0,26,82,.45);z-index:60;animation:acctin .2s cubic-bezier(.2,.8,.2,1)}
.lang-menu[hidden]{display:none}
.lang-menu a{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 12px;border-radius:10px;color:var(--ink);text-decoration:none;font-size:.92rem;font-weight:500}
.lang-menu a:hover{background:rgba(195,160,90,.16)}
.lang-menu a i{font-style:normal;color:#C3A05A;opacity:0;font-weight:700}
.lang-menu a.on{color:#00287B;font-weight:600}.lang-menu a.on i{opacity:1}
.lang-menu a[lang=ar]{font-family:'Cairo','Inter',sans-serif}
@media (max-width:860px){.lang{margin-left:4px}.lang-btn{padding:6px 8px}}
@media (max-width:700px){.lang{margin-left:0}.lang-btn span{display:none}.lang-btn{padding:7px}}

/* ===== Arabic / right-to-left ===== */
html[lang=ar] body,html[lang=ar] button,html[lang=ar] input,html[lang=ar] select,html[lang=ar] textarea{font-family:'Cairo','Inter',system-ui,sans-serif}
html[lang=ar] h1,html[lang=ar] h2,html[lang=ar] h3,html[lang=ar] h4,html[lang=ar] .eyebrow,html[lang=ar] .gate-title .tag,html[lang=ar] .btn,html[lang=ar] .fl-sec b,html[lang=ar] .sc-cap b{font-family:'Cairo','Inter',sans-serif;letter-spacing:0;text-transform:none}
html[lang=ar] .eyebrow,html[lang=ar] .acct-btn,html[lang=ar] .cur a,html[lang=ar] label,html[lang=ar] .from{letter-spacing:0;text-transform:none}
html[dir=rtl]{direction:rtl}
html[dir=rtl] body{text-align:right}
html[dir=rtl] .cur,html[dir=rtl] .lang,html[dir=rtl] .acct,html[dir=rtl] .acct-btn,html[dir=rtl] .acct-btn.admin{margin-left:0;margin-right:8px}
html[dir=rtl] .acct-menu,html[dir=rtl] .lang-menu{right:auto;left:0}
html[dir=rtl] .acct-menu::before{right:auto;left:15px}
html[dir=rtl] .acct-menu a,html[dir=rtl] .lang-menu a{text-align:right}
html[dir=rtl] .seg,html[dir=rtl] .mk-head,html[dir=rtl] .foot,html[dir=rtl] .fields,html[dir=rtl] .trk{direction:rtl}
html[dir=rtl] select{background-position:left 12px center;padding-left:34px;padding-right:14px}
html[dir=rtl] .card .foot,html[dir=rtl] .cbody{text-align:right}
html[dir=rtl] .price,html[dir=rtl] .site-foot .fmail,html[dir=rtl] .fsoc{direction:rtl}
html[dir=rtl] .chip{left:auto;right:12px}
html[dir=rtl] .rate{right:auto;left:12px}
html[dir=rtl] .err{text-align:right}
html[dir=rtl] input[type=email],html[dir=rtl] input[type=url]{direction:ltr;text-align:right}
html[dir=rtl] .check{flex-direction:row}
html[dir=rtl] .flights .fl-head,html[dir=rtl] .fl-head{text-align:center}
html[dir=rtl] .prose{text-align:right}
html[dir=rtl] .msheet nav a{text-align:center}
@media (max-width:700px){html[dir=rtl] .lang,html[dir=rtl] .cur{margin-right:0}}

/* ===== Visitor account, hearts ===== */
.me-btn{position:relative;display:inline-grid;place-items:center;width:30px;height:30px;margin-left:8px;border-radius:50%;border:1px solid rgba(195,160,90,.7);background:rgba(255,253,246,.7);flex:none;transition:background .2s,box-shadow .2s}
.me-btn:hover{background:#fff;box-shadow:0 6px 14px -8px rgba(0,26,82,.5)}
.me-btn svg{width:16px;height:16px;fill:none;stroke:#00287B;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.me-btn.in{background:#00287B}.me-btn.in svg{stroke:#F3E6C2}
.me-btn i{position:absolute;right:-1px;top:-1px;width:9px;height:9px;border-radius:50%;background:#C3A05A;border:2px solid #F3EBDA}
@media (max-width:700px){.nav .me-btn{display:none}.ms-glass a.me{font-weight:600;color:#E6C36A}}
.heart-f{position:absolute;right:10px;bottom:10px;margin:0;z-index:3}
.heart{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;border:0;background:rgba(255,253,246,.92);box-shadow:0 6px 14px -6px rgba(0,26,82,.55);cursor:pointer;transition:transform .2s cubic-bezier(.2,.9,.3,1.4),background .2s}
.heart:hover{transform:scale(1.14)}
.heart svg{width:18px;height:18px;fill:none;stroke:#00287B;stroke-width:1.8;stroke-linejoin:round;transition:fill .2s,stroke .2s}
.heart.on{background:#00287B}.heart.on svg{fill:#E6C36A;stroke:#E6C36A}
.fbwrap{position:relative;display:flex;justify-content:center;width:100%;max-width:190px}
.fbwrap .heart-f{right:8px;top:4px;bottom:auto}
.fbwrap .heart{width:30px;height:30px}.fbwrap .heart svg{width:16px;height:16px}
html[dir=rtl] .heart-f{right:auto;left:10px}
html[dir=rtl] .fbwrap .heart-f{right:auto;left:8px}
.acc-sheet .gbtn{display:flex;align-items:center;justify-content:center;gap:12px;margin:18px 0 6px;padding:12px 16px;border-radius:12px;border:1px solid var(--line);background:#fff;color:#1A2036;text-decoration:none;font-weight:600;transition:box-shadow .2s,transform .2s}
.acc-sheet .gbtn:hover{box-shadow:0 10px 24px -12px rgba(0,26,82,.5);transform:translateY(-1px)}
.acc-sheet .gbtn svg{width:20px;height:20px}
.acc-sheet .or{display:flex;align-items:center;gap:12px;margin:14px 0;color:var(--muted);font-size:.82rem}
.acc-sheet .or::before,.acc-sheet .or::after{content:"";flex:1;height:1px;background:var(--line)}
.acc-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:8px}
.acc-h{margin:34px 0 14px;font-size:1.3rem}
.acc-air{margin-top:18px}
.acc-tw{margin-top:6px}
.acc-del{margin-top:40px;text-align:center}
html[dir=rtl] .me-btn{margin-left:0;margin-right:8px}
.lang-btn{font-family:inherit;font-size:.62rem;font-weight:600;line-height:1;letter-spacing:.12em;padding:6px 9px}
.lang-btn span{font-size:.62rem}
.acc-head{margin-bottom:26px}

/* Account dropdown (hover on computers, tap on phones) */
.me-wrap{position:relative;flex:none;margin-left:8px}
.me-wrap .me-btn{margin-left:0;cursor:pointer;padding:0}
.me-menu{position:absolute;right:0;top:100%;margin-top:0;min-width:200px;padding:8px 6px 6px;border-radius:14px;background:rgba(255,253,246,.97);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--line);box-shadow:0 26px 50px -20px rgba(0,26,82,.45);z-index:60;opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .18s,transform .18s,visibility .18s}
.me-menu::before{content:"";position:absolute;left:0;right:0;top:-12px;height:12px}
.me-wrap:hover .me-menu,.me-wrap:focus-within .me-menu,.me-wrap.open .me-menu{opacity:1;visibility:visible;transform:none}
.me-menu a,.me-menu form button{display:block;width:100%;text-align:left;padding:10px 12px;border:0;background:none;border-radius:10px;color:var(--ink);text-decoration:none;font:500 .9rem/1.2 inherit;font-family:inherit;cursor:pointer}
.me-menu a:hover,.me-menu form button:hover{background:rgba(195,160,90,.16)}
.me-menu form{margin:4px 0 0;padding-top:4px;border-top:1px dashed var(--line)}
.me-who{margin:0 0 4px;padding:6px 12px 8px;border-bottom:1px solid var(--line);display:flex;flex-direction:column}
.me-who b{font-size:.9rem;font-weight:600}.me-who small{color:var(--muted);font-size:.78rem;overflow-wrap:anywhere}
html[dir=rtl] .me-wrap{margin-left:0;margin-right:8px}
html[dir=rtl] .me-menu{right:auto;left:0}
html[dir=rtl] .me-menu a,html[dir=rtl] .me-menu form button{text-align:right}
@media (max-width:700px){.nav .me-wrap{display:none}}

/* Wish list icon in the header */
.wish-btn{position:relative;display:inline-grid;place-items:center;width:30px;height:30px;margin-left:8px;border-radius:50%;border:1px solid rgba(195,160,90,.7);background:rgba(255,253,246,.7);flex:none;transition:background .2s,box-shadow .2s}
.wish-btn:hover{background:#fff;box-shadow:0 6px 14px -8px rgba(0,26,82,.5)}
.wish-btn svg{width:16px;height:16px;fill:none;stroke:#00287B;stroke-width:1.8;stroke-linejoin:round}
.wish-btn b{position:absolute;right:-6px;top:-6px;min-width:17px;height:17px;padding:0 4px;border-radius:9px;background:#C3A05A;color:#fff;font:700 .62rem/17px inherit;font-family:inherit;text-align:center;border:2px solid #F3EBDA;box-sizing:content-box}
.wish-btn b[hidden]{display:none}
.wish-btn.bump{animation:wbump .45s cubic-bezier(.2,.9,.3,1.5)}
@keyframes wbump{40%{transform:scale(1.3)}100%{transform:scale(1)}}
.heart.pop svg{animation:hpop .4s cubic-bezier(.2,.9,.3,1.6)}
@keyframes hpop{40%{transform:scale(1.5)}100%{transform:scale(1)}}
html[dir=rtl] .wish-btn{margin-left:0;margin-right:8px}
html[dir=rtl] .wish-btn b{right:auto;left:-6px}
@media (max-width:700px){.nav .wish-btn{display:none}}
.wish-btn svg{width:17px;height:17px}
.wish-btn b{right:-9px;top:-9px;min-width:15px;height:15px;font-size:.58rem;line-height:15px}
html[dir=rtl] .wish-btn b{left:-9px}

/* Arabic text reads smaller than Latin at the same size, so everything scales up a little */
html[lang=ar]{font-size:115%}
html[lang=ar] .nav .links a{font-size:1rem}
html[lang=ar] .eyebrow,html[lang=ar] .from,html[lang=ar] label{font-size:.9rem}
html[lang=ar] .cur a,html[lang=ar] .lang-btn,html[lang=ar] .lang-btn span{font-size:.7rem}
html[lang=ar] .acct-btn,html[lang=ar] .acct-btn.partners .acct-t,html[lang=ar] .acct-btn.admin{font-size:.78rem}

/* Header controls: one size, one style, even spacing */
.lang-btn,.cur,.wish-btn,.me-btn{height:32px;box-sizing:border-box}
.cur a{display:inline-flex;align-items:center;height:100%;padding-top:0;padding-bottom:0}
.lang-btn{padding:0 11px}
.wish-btn,.me-btn{width:32px;margin-left:8px}
.me-wrap .me-btn{margin-left:0}
.me-btn,.me-btn.in{background:rgba(255,253,246,.7);border:1px solid rgba(195,160,90,.7)}
.me-btn.in svg{stroke:#00287B}
.me-btn:hover,.me-btn.in:hover{background:#fff}
.me-btn svg,.wish-btn svg{width:17px;height:17px}
.me-btn i{right:2px;top:2px;width:8px;height:8px;border:1.5px solid #FBF7EC}
.wish-btn b{right:-6px;top:-6px;min-width:16px;height:16px;line-height:16px;font-size:.6rem;border:2px solid #F3EBDA;padding:0 3px}
@media (min-width:861px){
  .acct-btn.partners .acct-t{padding:0 14px;height:32px;line-height:30px;display:inline-block;box-sizing:border-box}
  .acct-btn.partners{padding-top:0;padding-bottom:0}
}
html[lang=ar] .lang-btn{padding:0 11px}
.wish-btn b{right:-9px;top:-9px}
html[dir=rtl] .wish-btn b{right:auto;left:-9px}

/* Phone menu: shorter, Partners is a fold-out */
@media (max-width:700px){
  .ms-glass{margin-top:128px;padding:30px 18px 16px}
  .ms-glass a,.ms-glass .ptoggle{padding:9px 8px;font-size:1.05rem}
  .ms-glass a.adm{margin-top:2px;padding:9px 8px 2px}
  .ms-glass .ptoggle{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;border:0;border-bottom:1px solid rgba(230,195,106,.35);background:none;color:#F3E6C2;font:500 .95rem/1.2 inherit;font-family:inherit;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;opacity:0;transform:translateY(10px);transition:opacity .4s ease .5s,transform .5s ease .5s}
  .msheet.on .ms-glass .ptoggle{opacity:1;transform:none}
  html[lang=ar] .ms-glass .ptoggle{letter-spacing:0;text-transform:none;font-size:1.05rem}
  .ptoggle i{width:8px;height:8px;border-right:2px solid #E6C36A;border-bottom:2px solid #E6C36A;transform:rotate(45deg) translateY(-2px);transition:transform .25s}
  .ptoggle[aria-expanded="true"] i{transform:rotate(-135deg) translateY(-2px)}
  .psub{background:rgba(0,16,56,.22);border-radius:12px;margin:6px 0 2px;padding:2px 6px}
  .psub[hidden]{display:none}
  .psub a{font-size:.9rem;font-weight:500;letter-spacing:.06em;padding:9px 8px;color:#fff}
  .psub a:last-child{border-bottom:0}
}
@media (max-width:700px){
  html[lang=ar] .ms-glass{margin-top:112px}
  html[lang=ar] .ms-glass a,html[lang=ar] .ms-glass .ptoggle{font-size:.95rem;padding:7px 8px}
  html[lang=ar] .psub a{font-size:.86rem;padding:7px 8px}
}
/* Phone, Arabic: the menu button sits at the far right, currency and language stay on the left */
@media (max-width:700px){
  html[dir=rtl] .burger{margin-right:0;margin-left:auto}
  html[dir=rtl] .nav .wrap{padding-left:10px;padding-right:12px}
  html[dir=rtl] .burger i{left:auto;right:8px;transform-origin:100% 50%}
  html[dir=rtl] .burger[aria-expanded="true"] i.b1{transform:translate(-4px,-1px) rotate(-45deg)}
  html[dir=rtl] .burger[aria-expanded="true"] i.b3{transform:translate(-4px,1px) rotate(45deg)}
  html[dir=rtl] .lang,html[dir=rtl] .cur{margin-right:0}
}
@media (max-width:700px){
  html[lang=ar] .ms-glass{margin-top:112px}
  html[lang=ar] .ms-glass a,html[lang=ar] .ms-glass .ptoggle{font-size:.95rem;padding:7px 8px}
  html[lang=ar] .psub a{font-size:.86rem;padding:7px 8px}
}

/* Languages: flags */
.flag{width:20px;height:14px;border-radius:2px;box-shadow:0 0 0 1px rgba(0,26,82,.18);object-fit:cover;flex:none;display:inline-block}
.lang-btn .flag{margin:0 1px}
.lang-menu{min-width:190px}
.lang-menu a{justify-content:flex-start}
.lang-menu a .flag{width:22px;height:15px}
.lang-menu a span{flex:1}
.lang-menu a i{margin-left:auto}
html[dir=rtl] .lang-menu a i{margin-left:0;margin-right:auto}
html[lang=ru] .nav .links a,html[lang=de] .nav .links a,html[lang=fr] .nav .links a{font-size:.95rem}
html[lang=zh] body,html[lang=zh] button,html[lang=zh] input,html[lang=zh] select,html[lang=zh] textarea{font-family:'Inter','PingFang SC','Microsoft YaHei','Noto Sans SC',sans-serif}
html[lang=zh] .eyebrow,html[lang=zh] .acct-btn,html[lang=zh] .cur a,html[lang=zh] label,html[lang=zh] .from,html[lang=zh] h1,html[lang=zh] h2,html[lang=zh] h3,html[lang=zh] h4,html[lang=zh] .btn{letter-spacing:0;text-transform:none}
html[lang=ru] .eyebrow,html[lang=ru] .from{letter-spacing:.04em}
/* Admin: one box per language under each text */
.trs{display:grid;gap:6px;margin-top:6px}
.trs .tr{display:grid;grid-template-columns:112px 1fr;gap:8px;align-items:start;font-weight:400}
.trs .flg{display:flex;align-items:center;gap:6px;font-size:.78rem;padding-top:9px;color:var(--ink)}
.trs .flg img{width:20px;height:14px;border-radius:2px;box-shadow:0 0 0 1px rgba(0,26,82,.18)}
.trs input,.trs textarea{width:100%;min-width:0}
.trs textarea{min-height:64px}
@media (max-width:620px){.trs .tr{grid-template-columns:1fr}.trs .flg{padding-top:0}}
.trpage{border:1px solid var(--line);border-radius:12px;padding:10px 14px 4px;margin:0 0 14px}
.trpage legend{display:flex;align-items:center;gap:8px;font-weight:600;padding:0 8px}
.trpage legend img{border-radius:2px;box-shadow:0 0 0 1px rgba(0,26,82,.18)}
/* Cookie banner: a compact card in the corner so it never hides the main button */
.cookie-bar{position:fixed;left:16px;bottom:16px;width:min(500px,calc(100% - 32px));z-index:90;display:flex;flex-direction:column;gap:12px;padding:16px 18px;border-radius:16px;background:rgba(255,253,246,.98);border:1px solid var(--line);box-shadow:0 24px 60px -18px rgba(0,26,82,.55);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);transition:opacity .3s,transform .3s}
html[dir=rtl] .cookie-bar{left:auto;right:16px}
.cookie-bar.gone{opacity:0;transform:translateY(16px);pointer-events:none}
.cookie-bar p{margin:0;font-size:.86rem;line-height:1.55;color:var(--ink)}
.cookie-bar p a{color:#00287B;font-weight:600;text-decoration:underline;text-underline-offset:2px}
.cc-btns{display:flex;gap:10px}
.cc-btns .btn{flex:1;text-align:center;text-decoration:none;font-size:.88rem;padding:10px 12px;display:inline-block}
@media (max-width:700px){.cookie-bar{left:10px;right:10px;bottom:10px;width:auto;padding:14px 16px}html[dir=rtl] .cookie-bar{left:10px;right:10px}}
@media (prefers-reduced-motion:reduce){.cookie-bar{transition:none}}
html:not([lang=en]):not([lang=ar]):not([lang=zh]) .links a{padding:8px 7px;font-size:.82rem;letter-spacing:0}
.lang-btn>span{display:none}
.lang-btn{gap:6px;padding:0 10px}
.trs .flg{text-transform:none;letter-spacing:0;font-weight:500}
