/* Safarnama Corporate — black & gold premium page */
:root{
  --k0:#050505; --k1:#0b0b0c; --k2:#131314; --k3:#1c1c1e;
  --gold:#d9b86c; --gold-l:#f1dca2; --gold-d:#a88736;
  --tx:#f4f1ea; --mu:#9b978c; --ln:rgba(217,184,108,.18);
  --teal:#2dd4bf; --coral:#ff7a59; --violet:#8b5cf6; --sky:#38bdf8;
  --serif:'Cormorant Garamond',Georgia,serif;
  --sans:'Plus Jakarta Sans',system-ui,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--k0);color:var(--tx);font-family:var(--sans);line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img,svg{display:block;max-width:100%}
.wrap{max-width:1180px;margin:0 auto;padding:0 24px}
h1,h2,h3{font-family:var(--serif);font-weight:600;line-height:1.08;letter-spacing:-.01em}
.eyebrow{font-size:.72rem;letter-spacing:.32em;text-transform:uppercase;color:var(--gold);font-weight:600}
section{padding:110px 0;position:relative}
.gold{background:linear-gradient(100deg,var(--gold-l),var(--gold) 50%,var(--gold-d));-webkit-background-clip:text;background-clip:text;color:transparent}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:10px;padding:14px 28px;border-radius:999px;font:700 .88rem var(--sans);cursor:pointer;border:1px solid var(--ln);background:transparent;color:var(--tx);transition:.25s}
.btn:hover{border-color:var(--gold);transform:translateY(-2px)}
.btn-gold{background:linear-gradient(100deg,var(--gold-l),var(--gold));color:#1a1405;border-color:transparent}
.btn-gold:hover{box-shadow:0 12px 34px -10px rgba(217,184,108,.6);border-color:transparent}

/* header */
header{position:fixed;inset:0 0 auto 0;z-index:60;transition:.3s;border-bottom:1px solid transparent}
header.solid{background:rgba(5,5,5,.88);backdrop-filter:blur(14px);border-color:var(--ln)}
header .wrap{display:flex;align-items:center;justify-content:space-between;height:82px;gap:20px}
.logo{display:flex;align-items:center;gap:12px;font-family:var(--serif);font-size:1.7rem;font-weight:600}
.logo i{width:38px;height:38px;border-radius:50%;border:1px solid var(--gold);display:grid;place-items:center}
.logo small{display:block;font:600 .55rem var(--sans);letter-spacing:.3em;color:var(--gold);text-transform:uppercase;margin-top:-4px}
nav ul{display:flex;gap:30px;list-style:none;font-size:.82rem;font-weight:600;color:#cfcbc0}
nav a:hover{color:var(--gold)}
.burger{display:none;background:none;border:0;color:var(--tx);font-size:1.6rem;cursor:pointer}

/* hero */
.hero{min-height:100vh;display:grid;place-items:center;text-align:center;overflow:hidden;padding:140px 0 90px;background:radial-gradient(ellipse at 50% 120%,rgba(217,184,108,.16),transparent 60%),#050505}
.rings{position:absolute;left:50%;top:52%;width:0;height:0}
.rings span{position:absolute;border:1px solid var(--ln);border-radius:50%;transform:translate(-50%,-50%)}
.rings span:nth-child(1){width:440px;height:440px}
.rings span:nth-child(2){width:680px;height:680px;opacity:.7}
.rings span:nth-child(3){width:1180px;height:1180px;opacity:.4}
.rings span:nth-child(4){width:1560px;height:1560px;opacity:.22}
.orbit{position:absolute;left:50%;top:52%;width:680px;height:680px;margin:-340px 0 0 -340px;animation:spin 60s linear infinite}
.orbit b{position:absolute;width:54px;height:54px;border-radius:50%;background:var(--k1);border:1px solid var(--ln);display:grid;place-items:center;color:var(--gold)}
.orbit b svg{animation:spin 60s linear infinite reverse}
.orbit b:nth-child(1){left:50%;top:-27px;margin-left:-27px}
.orbit b:nth-child(2){right:-27px;top:50%;margin-top:-27px}
.orbit b:nth-child(3){left:50%;bottom:-27px;margin-left:-27px}
.orbit b:nth-child(4){left:-27px;top:50%;margin-top:-27px}
@keyframes spin{to{transform:rotate(360deg)}}
.hero-in{position:relative;z-index:2;max-width:900px;margin:0 auto}
.hero h1{font-size:clamp(3rem,7.4vw,6rem);margin:22px 0 22px}
.hero p{color:#bdb9ad;font-size:1.12rem;max-width:620px;margin:0 auto 38px}
.hero-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.scroll{margin-top:56px;display:inline-flex;align-items:center;gap:14px;font-size:.78rem;font-weight:700;color:var(--mu);letter-spacing:.08em}
.scroll i{width:42px;height:42px;border:1px solid var(--ln);border-radius:50%;display:grid;place-items:center;color:var(--gold);font-style:normal;animation:bob 2s ease-in-out infinite}
@keyframes bob{50%{transform:translateY(6px)}}
.side-t{position:absolute;top:50%;font-size:.62rem;letter-spacing:.4em;color:var(--mu);text-transform:uppercase;writing-mode:vertical-rl}
.side-t.l{left:28px;transform:translateY(-50%) rotate(180deg)}.side-t.r{right:28px;transform:translateY(-50%)}

/* stats */
.stats{padding:0;margin-top:-1px;border-block:1px solid var(--ln);background:var(--k1)}
.stats .wrap{display:grid;grid-template-columns:repeat(4,1fr)}
.stat{padding:46px 20px;text-align:center;border-right:1px solid var(--ln)}
.stat:last-child{border:0}
.stat b{font:600 3.2rem/1 var(--serif);display:block}
.stat span{font-size:.78rem;color:var(--mu);letter-spacing:.12em;text-transform:uppercase}

/* intro */
.intro .wrap{display:grid;grid-template-columns:1fr 1.15fr;gap:80px;align-items:start}
.intro h2{font-size:clamp(2.4rem,4.4vw,3.8rem);margin-top:18px}
.intro p{font-size:1.2rem;color:#c9c5b9;font-weight:300}
.intro p+p{margin-top:18px;color:var(--mu);font-size:1rem}

/* services */
.svc{background:var(--k1)}
.head-c{text-align:center;max-width:680px;margin:0 auto 64px}
.head-c h2{font-size:clamp(2.2rem,4vw,3.4rem);margin:16px 0 14px}
.head-c p{color:var(--mu)}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--ln);border:1px solid var(--ln);border-radius:22px;overflow:hidden}
.card{background:var(--k2);padding:42px 34px;transition:.35s;position:relative}
.card:hover{background:var(--k3)}
.card .n{position:absolute;right:28px;top:24px;font:600 .9rem var(--serif);color:var(--gold-d)}
.card .ic{width:56px;height:56px;border-radius:50%;border:1px solid var(--ln);display:grid;place-items:center;color:var(--gold);margin-bottom:26px;transition:.3s}
.card:hover .ic{background:var(--gold);color:#1a1405}
.card h3{font-size:1.7rem;margin-bottom:10px}
.card p{color:var(--mu);font-size:.93rem}

/* showcase */
.show{display:grid;grid-template-columns:1.1fr 1fr;gap:70px;align-items:center}
.show .pic{aspect-ratio:4/5;border-radius:240px 240px 24px 24px;background:var(--img) center/cover;position:relative;border:1px solid var(--ln)}
.show .pic::after{content:"";position:absolute;inset:-14px;border:1px solid var(--ln);border-radius:254px 254px 34px 34px}
.show .pic .tag{position:absolute;left:-24px;bottom:50px;background:var(--k1);border:1px solid var(--ln);padding:16px 22px;border-radius:16px;z-index:2}
.show .pic .tag b{font:600 1.6rem var(--serif);display:block;color:var(--gold)}
.show .pic .tag span{font-size:.78rem;color:var(--mu)}
.show h2{font-size:clamp(2.2rem,4vw,3.4rem);margin:16px 0 22px}
.show>div>p{color:var(--mu);margin-bottom:28px}
.ticks{list-style:none;display:grid;gap:16px;margin-bottom:34px}
.ticks li{display:flex;gap:14px;font-size:.96rem;color:#d6d2c6}
.ticks li::before{content:"";flex:0 0 22px;height:22px;margin-top:3px;border-radius:50%;border:1px solid var(--gold);background:radial-gradient(circle,var(--gold) 0 3px,transparent 4px)}
.ticks b{color:var(--tx)}

/* process */
.proc{background:var(--k1)}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;counter-reset:s;position:relative}
.steps::before{content:"";position:absolute;left:5%;right:5%;top:27px;height:1px;background:linear-gradient(90deg,transparent,var(--gold-d),transparent)}
.step{text-align:center;position:relative}
.step i{counter-increment:s;width:54px;height:54px;border-radius:50%;background:var(--k0);border:1px solid var(--gold);display:grid;place-items:center;margin:0 auto 22px;font:600 1.3rem var(--serif);font-style:normal;color:var(--gold);position:relative}
.step i::before{content:"0" counter(s)}
.step h3{font-size:1.4rem;margin-bottom:8px}
.step p{color:var(--mu);font-size:.9rem}

/* destinations */
.dests{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.dest{height:380px;border-radius:20px;background:linear-gradient(180deg,transparent 40%,rgba(0,0,0,.88)),var(--img) center/cover;border:1px solid var(--ln);padding:26px;display:flex;flex-direction:column;justify-content:flex-end;transition:.4s;filter:saturate(.85)}
.dest:hover{transform:translateY(-8px);border-color:var(--gold);filter:none}
.dest h3{font-size:1.8rem}
.dest span{font-size:.8rem;color:var(--gold)}

/* plans */
.plans{background:var(--k1)}
.pgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:stretch}
.plan{background:var(--k2);border:1px solid var(--ln);border-radius:24px;padding:42px 34px;display:flex;flex-direction:column;transition:.3s}
.plan:hover{transform:translateY(-6px)}
.plan.feat{border-color:var(--gold);background:linear-gradient(180deg,#1b170b,var(--k2) 60%);position:relative}
.plan.feat::before{content:"Most chosen";position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--gold);color:#1a1405;font:700 .68rem var(--sans);letter-spacing:.14em;text-transform:uppercase;padding:5px 16px;border-radius:99px}
.plan h3{font-size:2rem}
.plan .for{color:var(--mu);font-size:.88rem;margin:6px 0 24px}
.plan ul{list-style:none;display:grid;gap:12px;margin-bottom:34px;font-size:.92rem;color:#d6d2c6;flex:1}
.plan li::before{content:"◆";color:var(--gold);font-size:.55rem;margin-right:12px;vertical-align:middle}
.plan .btn{justify-content:center}

/* testimonial */
.quote{text-align:center}
.quote blockquote{font:500 clamp(1.7rem,3.2vw,2.7rem)/1.3 var(--serif);max-width:860px;margin:22px auto 26px}
.quote cite{font-style:normal;font-size:.8rem;color:var(--mu);letter-spacing:.16em;text-transform:uppercase}
.logos{display:flex;justify-content:center;gap:54px;flex-wrap:wrap;margin-top:60px;opacity:.5;font:600 1.4rem var(--serif);letter-spacing:.08em}

/* contact */
.contact{background:radial-gradient(ellipse at 50% 0,rgba(217,184,108,.14),transparent 65%),var(--k1)}
.contact .wrap{display:grid;grid-template-columns:1fr 1.1fr;gap:70px;align-items:center}
.contact h2{font-size:clamp(2.2rem,4vw,3.4rem);margin:16px 0 18px}
.contact .info{color:var(--mu);margin-bottom:26px}
.contact .lines{display:grid;gap:12px;font-size:.95rem}
.contact .lines b{color:var(--gold);font-weight:600;margin-right:8px}
form.cf{background:var(--k2);border:1px solid var(--ln);border-radius:24px;padding:38px;display:grid;grid-template-columns:1fr 1fr;gap:16px}
.cf label{display:block;font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--mu);margin-bottom:6px;font-weight:600}
.cf input,.cf select,.cf textarea{width:100%;background:var(--k0);border:1px solid var(--ln);border-radius:12px;padding:13px 14px;color:var(--tx);font:500 .93rem var(--sans)}
.cf input:focus,.cf select:focus,.cf textarea:focus{outline:none;border-color:var(--gold)}
.cf .full{grid-column:1/-1}
.cf textarea{min-height:96px;resize:vertical}
.cf .btn{justify-content:center;width:100%}
.cf .ok{display:none;grid-column:1/-1;text-align:center;color:var(--gold);padding:10px;border:1px solid var(--ln);border-radius:12px}

/* footer */
footer{border-top:1px solid var(--ln);padding:44px 0;background:var(--k0)}
footer .wrap{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;align-items:center;font-size:.82rem;color:var(--mu)}
footer ul{display:flex;gap:24px;list-style:none}
footer a:hover{color:var(--gold)}

/* reveal */
.rv{opacity:0;transform:translateY(28px);transition:opacity .9s ease,transform .9s ease}
.rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}.orbit,.orbit b svg,.scroll i{animation:none}}

/* responsive */
@media(max-width:980px){
  section{padding:80px 0}
  nav{position:fixed;inset:82px 0 auto 0;background:rgba(5,5,5,.97);border-bottom:1px solid var(--ln);display:none;padding:20px 24px}
  nav.open{display:block}nav ul{flex-direction:column;gap:18px}
  .burger{display:block}.head-r .btn{display:none}
  .stats .wrap{grid-template-columns:1fr 1fr}.stat:nth-child(2){border-right:0}.stat:nth-child(-n+2){border-bottom:1px solid var(--ln)}
  .intro .wrap,.show,.contact .wrap{grid-template-columns:1fr;gap:44px}
  .cards,.pgrid{grid-template-columns:1fr}.steps{grid-template-columns:1fr 1fr;row-gap:40px}.steps::before{display:none}
  .dests{grid-template-columns:1fr 1fr}.side-t{display:none}
  .orbit{display:none}.show .pic{max-width:420px;margin:0 auto}.show .pic .tag{left:0}
}
@media(max-width:560px){
  .dests,.steps{grid-template-columns:1fr}form.cf{grid-template-columns:1fr;padding:26px}
  .stat b{font-size:2.4rem}.hero{padding-top:120px}
}

/* ===== Hero v2: colour + motion ===== */
.hero{background:#050505}
.aurora{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.aurora i{position:absolute;border-radius:50%;filter:blur(90px);opacity:.5;mix-blend-mode:screen}
.aurora i:nth-child(1){width:520px;height:520px;background:var(--violet);left:-8%;top:8%;animation:fl1 16s ease-in-out infinite}
.aurora i:nth-child(2){width:480px;height:480px;background:var(--teal);right:-6%;top:2%;opacity:.4;animation:fl2 19s ease-in-out infinite}
.aurora i:nth-child(3){width:560px;height:560px;background:var(--coral);left:30%;bottom:-24%;opacity:.32;animation:fl3 22s ease-in-out infinite}
.aurora i:nth-child(4){width:380px;height:380px;background:var(--gold);right:22%;bottom:6%;opacity:.25;animation:fl1 18s ease-in-out infinite reverse}
@keyframes fl1{50%{transform:translate(120px,70px) scale(1.2)}}
@keyframes fl2{50%{transform:translate(-110px,90px) scale(1.15)}}
@keyframes fl3{50%{transform:translate(90px,-80px) scale(1.25)}}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,5,5,.15),rgba(5,5,5,.55) 70%,#050505);pointer-events:none}
.sweep{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:1}
.sweep::before{content:"";position:absolute;top:-20%;bottom:-20%;width:180px;left:-250px;background:linear-gradient(90deg,transparent,rgba(241,220,162,.09),transparent);transform:skewX(-20deg);animation:sweep 9s ease-in-out infinite}
@keyframes sweep{0%{left:-250px}60%,100%{left:115%}}
.dots{position:absolute;inset:0;pointer-events:none;z-index:1}
.dots s{position:absolute;bottom:-10px;width:4px;height:4px;border-radius:50%;background:var(--gold-l);opacity:0;animation:rise linear infinite}
@keyframes rise{0%{transform:translateY(0);opacity:0}10%{opacity:.8}90%{opacity:.5}100%{transform:translateY(-105vh);opacity:0}}
.rings span{border-color:rgba(217,184,108,.22)}
.rings span:nth-child(2){border-style:dashed;animation:spin 90s linear infinite reverse}
.rings span:nth-child(3){border-color:rgba(45,212,191,.2)}
.rings span:nth-child(4){border-color:rgba(139,92,246,.2)}
.rings span:nth-child(1){animation:pulse 4s ease-in-out infinite}
@keyframes pulse{50%{box-shadow:0 0 70px rgba(217,184,108,.25),inset 0 0 50px rgba(217,184,108,.08)}}
.orbit b{box-shadow:0 0 24px -4px currentColor;background:#0b0b0c}
.orbit b:nth-child(1){color:var(--sky)}.orbit b:nth-child(2){color:var(--coral)}.orbit b:nth-child(3){color:var(--teal)}.orbit b:nth-child(4){color:var(--violet)}
.hero-in{z-index:3}
.live{display:inline-flex;align-items:center;gap:12px;padding:8px 18px 8px 14px;border:1px solid rgba(45,212,191,.35);border-radius:99px;background:rgba(45,212,191,.08);font-size:.76rem;font-weight:600;letter-spacing:.06em;color:#bff5ec}
.live .pd{position:relative;width:9px;height:9px;border-radius:50%;background:var(--teal)}
.live .pd::after{content:"";position:absolute;inset:-5px;border-radius:50%;border:1px solid var(--teal);animation:ping 1.8s ease-out infinite}
@keyframes ping{from{transform:scale(.5);opacity:1}to{transform:scale(2.2);opacity:0}}
.live em{font-style:normal;color:var(--gold-l);font-variant-numeric:tabular-nums}
.hero h1{margin-top:26px}
.hero h1 .gold{background:linear-gradient(100deg,var(--gold-l),var(--coral),var(--violet),var(--teal),var(--gold-l));background-size:300% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shine 8s linear infinite}
@keyframes shine{to{background-position:300% 0}}
.hero-in>*{animation:up .9s cubic-bezier(.2,.7,.2,1) both}
.hero-in>*:nth-child(2){animation-delay:.12s}.hero-in>*:nth-child(3){animation-delay:.24s}.hero-in>*:nth-child(4){animation-delay:.36s}.hero-in>*:nth-child(5){animation-delay:.48s}.hero-in>*:nth-child(6){animation-delay:.6s}
@keyframes up{from{opacity:0;transform:translateY(30px)}}
.ticker{height:30px;overflow:hidden;margin:0 auto 34px;font-size:1rem;color:var(--gold-l);font-weight:600}
.ticker div{animation:tick 12s cubic-bezier(.7,0,.2,1) infinite}
.ticker span{display:block;height:30px;line-height:30px}
@keyframes tick{0%,18%{transform:translateY(0)}25%,43%{transform:translateY(-30px)}50%,68%{transform:translateY(-60px)}75%,93%{transform:translateY(-90px)}100%{transform:translateY(-120px)}}
.chips{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:40px}
.chips a{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:99px;font-size:.8rem;font-weight:600;border:1px solid;background:rgba(255,255,255,.03);transition:.25s;backdrop-filter:blur(6px)}
.chips a:hover{transform:translateY(-3px);background:rgba(255,255,255,.08)}
.chips .c1{color:var(--teal);border-color:rgba(45,212,191,.4)}.chips .c2{color:var(--coral);border-color:rgba(255,122,89,.4)}.chips .c3{color:var(--sky);border-color:rgba(56,189,248,.4)}.chips .c4{color:#c4b5fd;border-color:rgba(139,92,246,.5)}
.btn-gold{position:relative;overflow:hidden}
.btn-gold::after{content:"";position:absolute;top:0;bottom:0;width:60px;left:-80px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.7),transparent);transform:skewX(-20deg);animation:btnsh 4s ease-in-out infinite}
@keyframes btnsh{0%{left:-80px}40%,100%{left:120%}}
.stat:nth-child(1) b{background:linear-gradient(100deg,var(--teal),var(--sky));-webkit-background-clip:text;background-clip:text}
.stat:nth-child(2) b{background:linear-gradient(100deg,var(--gold-l),var(--coral));-webkit-background-clip:text;background-clip:text}
.stat:nth-child(3) b{background:linear-gradient(100deg,#c4b5fd,var(--violet));-webkit-background-clip:text;background-clip:text}
.stat:nth-child(4) b{background:linear-gradient(100deg,var(--coral),var(--gold));-webkit-background-clip:text;background-clip:text}

/* ===== 24/7 concierge section ===== */
.c247{background:radial-gradient(ellipse at 20% 0,rgba(139,92,246,.12),transparent 55%),radial-gradient(ellipse at 90% 100%,rgba(45,212,191,.1),transparent 55%),var(--k0)}
.chan{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.ch{background:var(--k2);border:1px solid var(--ln);border-radius:22px;padding:34px 26px;position:relative;overflow:hidden;transition:.3s}
.ch::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--c)}
.ch:hover{transform:translateY(-8px);border-color:var(--c);box-shadow:0 24px 50px -28px var(--c)}
.ch .ic{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;color:var(--c);background:color-mix(in srgb,var(--c) 14%,transparent);margin-bottom:22px}
.ch h3{font-size:1.5rem;margin-bottom:8px}.ch p{color:var(--mu);font-size:.9rem;margin-bottom:18px}
.ch b{color:var(--c);font-size:.84rem}
.sla{margin-top:26px;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.sla div{border:1px solid var(--ln);border-radius:20px;padding:26px;display:flex;gap:18px;align-items:center;background:var(--k1)}
.sla strong{font:600 2.1rem var(--serif);color:var(--gold-l);white-space:nowrap}
.sla span{font-size:.86rem;color:var(--mu)}
@media(max-width:980px){.chan{grid-template-columns:1fr 1fr}.sla{grid-template-columns:1fr}}
@media(max-width:560px){.chan{grid-template-columns:1fr}.ticker{font-size:.9rem}}
@media (prefers-reduced-motion:reduce){.aurora i,.sweep::before,.dots s,.rings span,.hero h1 .gold,.ticker div,.btn-gold::after,.live .pd::after,.hero-in>*{animation:none!important}}
.live{background:#071513;backdrop-filter:blur(8px)}

/* circle badge */
.seal{position:relative;width:176px;height:176px;margin:0 auto 22px;border-radius:50%;display:grid;place-items:center;text-align:center;background:radial-gradient(circle at 30% 25%,rgba(241,220,162,.18),rgba(5,5,5,.85) 70%);border:1px solid rgba(217,184,108,.55);box-shadow:0 0 50px -8px rgba(217,184,108,.45),inset 0 0 30px rgba(139,92,246,.18)}
.seal-r{position:absolute;inset:-10px;border-radius:50%;border:1px dashed rgba(45,212,191,.55);animation:spin 18s linear infinite}
.seal-r.r2{inset:-22px;border:1px solid transparent;border-top-color:var(--coral);border-bottom-color:var(--violet);animation-duration:9s;animation-direction:reverse}
.seal p{font:600 1.55rem/1.05 var(--serif);color:var(--gold-l);padding:0 22px}
.seal small{display:block;margin-top:8px;font:600 .58rem/1.4 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:#d8d3c4}
@media(max-width:560px){.seal{width:156px;height:156px}.seal p{font-size:1.35rem}}
@media (prefers-reduced-motion:reduce){.seal-r{animation:none!important}}
.seal{width:150px;height:150px;margin-bottom:16px;background:radial-gradient(circle at 30% 25%,#2a2412,#070707 75%);z-index:4}
.seal p{font-size:1.35rem}
.hero{padding-top:118px}
.hero h1{font-size:clamp(2.8rem,6.2vw,5rem);margin:20px 0 14px}
.hero p{margin-bottom:28px}
.chips{margin-top:28px}.scroll{margin-top:36px}

/* hero: single big circle */
.hero{padding:0}
.rings{display:none}
.orbit{width:760px;height:760px;margin:-380px 0 0 -380px;top:50%}
.bigc{position:relative;z-index:4;width:min(460px,78vw);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;text-align:center;background:radial-gradient(circle at 30% 22%,rgba(241,220,162,.2),rgba(5,5,5,.9) 68%);border:1px solid rgba(217,184,108,.6);box-shadow:0 0 90px -10px rgba(217,184,108,.45),0 0 160px -30px rgba(139,92,246,.5),inset 0 0 60px rgba(45,212,191,.12);animation:up 1s both,pulse 4s ease-in-out 1s infinite}
.bc-r{position:absolute;inset:-16px;border-radius:50%;border:1px dashed rgba(45,212,191,.6);animation:spin 24s linear infinite}
.bc-r.r2{inset:-34px;border:1px solid transparent;border-top-color:var(--coral);border-bottom-color:var(--violet);animation-duration:11s;animation-direction:reverse}
.bigc h1{font-size:clamp(2.6rem,6vw,4.4rem);line-height:1;padding:0 36px;background:linear-gradient(100deg,var(--gold-l),#fff 40%,var(--gold) 70%,var(--coral));background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shine 7s linear infinite}
.bigc h1 small{display:block;margin-top:16px;font:600 clamp(.62rem,1.3vw,.8rem)/1.5 var(--sans);letter-spacing:.3em;text-transform:uppercase;-webkit-text-fill-color:#e9e4d3}
@media(max-width:980px){.orbit{display:none}}
@media (prefers-reduced-motion:reduce){.bc-r,.bigc,.bigc h1{animation:none!important}}

/* hero v4: like reference — big dome circle, framed label, swoosh */
.rings{display:block;top:50%}
.rings span:nth-child(1){width:700px;height:700px;animation:none;box-shadow:none}
.rings span:nth-child(2){width:880px;height:880px}
.rings span:nth-child(3){width:1100px;height:1100px}
.rings span:nth-child(4){width:1360px;height:1360px}
.orbit{top:50%;width:700px;height:700px;margin:-350px 0 0 -350px}
.bigc{width:min(540px,80vw);background:radial-gradient(circle at 50% 18%,rgba(139,92,246,.16),rgba(20,18,26,.95) 55%,#09090b);border:1px solid rgba(217,184,108,.4)}
.bc-r{inset:-14px;border-style:solid;border-color:rgba(217,184,108,.18);animation:none}
.frame{position:relative;border:1.5px solid rgba(255,255,255,.92);border-radius:16px;background:#050505;padding:30px 52px 34px;box-shadow:0 0 50px -6px rgba(217,184,108,.35)}
.bigc h1{font:600 clamp(1.5rem,3.6vw,2.6rem)/1.1 var(--sans);letter-spacing:.14em;text-transform:uppercase;padding:0;background:none;-webkit-text-fill-color:#fff;color:#fff;animation:none}
.bigc h1 small{margin-top:12px;font:500 clamp(.6rem,1.4vw,.9rem)/1 var(--sans);letter-spacing:.5em;-webkit-text-fill-color:#e9e4d3}
.swoosh{position:absolute;left:-14%;right:-14%;bottom:16px;width:128%;height:34px;pointer-events:none}
@media(max-width:560px){.frame{padding:22px 24px 28px}.bigc h1{letter-spacing:.08em}.bigc h1 small{letter-spacing:.3em}}
@media(max-width:980px){.rings span:nth-child(1){width:92vw;height:92vw}.rings span:nth-child(2){width:120vw;height:120vw}.rings span:nth-child(3){width:150vw;height:150vw}.rings span:nth-child(4){display:none}}
/* give the hero room so rings/orbit icons are never cut by the header or bottom */
.hero{min-height:max(100vh,920px);padding:120px 0 70px}
.rings,.orbit{top:calc(50% + 25px)}
@media(max-width:980px){.hero{min-height:max(100vh,760px)}}
/* nudge hero content slightly up */
.hero{padding:80px 0 90px}
.rings,.orbit{top:calc(50% - 5px)}

/* ===== hero v5: extra motion ===== */
.hero{--px:0px;--py:0px;--ax:0px;--ay:0px}
.aurora{transform:translate3d(var(--ax),var(--ay),0);transition:transform .8s ease-out}
.frame{transform:translate3d(var(--px),var(--py),0);transition:transform .5s ease-out}
/* circle: entrance, float, rotating glowing edge */
.bigc{animation:pop 1.4s cubic-bezier(.2,.8,.2,1) both,float 7s ease-in-out 1.4s infinite,pulse 4s ease-in-out 1.4s infinite}
@keyframes pop{from{opacity:0;transform:scale(.6)}}
@keyframes float{50%{transform:translateY(-12px)}}
.bigc::before{content:"";position:absolute;inset:-4px;border-radius:50%;background:conic-gradient(from 0deg,transparent 0 55%,var(--gold-l) 72%,var(--coral) 82%,var(--violet) 92%,transparent 100%);-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 3px),#000 calc(100% - 2px));mask:radial-gradient(farthest-side,transparent calc(100% - 3px),#000 calc(100% - 2px));animation:spin 6s linear infinite}
/* text shimmer + frame glow */
.bigc h1{background:linear-gradient(100deg,#fff 35%,var(--gold-l) 47%,var(--teal) 53%,#fff 65%);background-size:260% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;animation:txs 5s ease-in-out 1.6s infinite}
.bigc h1 small{-webkit-text-fill-color:#e9e4d3}
@keyframes txs{0%{background-position:120% 0}60%,100%{background-position:-60% 0}}
.frame{animation:fglow 4s ease-in-out infinite,fin 1.2s .5s cubic-bezier(.2,.8,.2,1) both}
@keyframes fglow{50%{box-shadow:0 0 70px -2px rgba(217,184,108,.6),0 0 30px rgba(139,92,246,.35)}}
@keyframes fin{from{opacity:0;letter-spacing:.4em}}
.swoosh .sp{stroke-dasharray:1;stroke-dashoffset:1;animation:draw 2s 1s ease-out forwards}
@keyframes draw{to{stroke-dashoffset:0}}
/* ripples radiating from the circle */
.ripples,.comets{position:absolute;left:50%;top:calc(50% - 5px);width:0;height:0;pointer-events:none}
.ripples span{position:absolute;width:540px;height:540px;margin:-270px 0 0 -270px;border-radius:50%;border:1.5px solid rgba(217,184,108,.55);animation:rip 9s ease-out infinite;opacity:0}
.ripples span:nth-child(2){animation-delay:3s;border-color:rgba(45,212,191,.5)}
.ripples span:nth-child(3){animation-delay:6s;border-color:rgba(139,92,246,.55)}
@keyframes rip{0%{transform:scale(1);opacity:.7}100%{transform:scale(2.8);opacity:0}}
/* comets travelling around the rings */
.comets u{position:absolute;border-radius:50%;animation:spin linear infinite}
.comets u::before{content:"";position:absolute;left:50%;top:-4px;width:8px;height:8px;margin-left:-4px;border-radius:50%;background:var(--c);box-shadow:0 0 14px 4px var(--c),0 0 40px 8px var(--c)}
.comets .k1{--c:#2dd4bf;width:880px;height:880px;margin:-440px 0 0 -440px;animation-duration:14s}
.comets .k2{--c:#ff7a59;width:1100px;height:1100px;margin:-550px 0 0 -550px;animation-duration:22s;animation-direction:reverse}
.comets .k3{--c:#f1dca2;width:700px;height:700px;margin:-350px 0 0 -350px;animation-duration:9s}
/* icons breathe */
.orbit b{animation:glow 3.2s ease-in-out infinite}
.orbit b:nth-child(2){animation-delay:.8s}.orbit b:nth-child(3){animation-delay:1.6s}.orbit b:nth-child(4){animation-delay:2.4s}
@keyframes glow{50%{box-shadow:0 0 34px 2px currentColor;transform:scale(1.12)}}
/* shooting stars */
.shoot{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:1}
.shoot s{position:absolute;width:140px;height:1.5px;background:linear-gradient(90deg,transparent,#fff);opacity:0;transform:rotate(-30deg);animation:shoot 7s ease-in infinite}
.shoot s:nth-child(1){left:70%;top:8%}
.shoot s:nth-child(2){left:90%;top:30%;animation-delay:3s}
.shoot s:nth-child(3){left:45%;top:2%;animation-delay:5.2s}
@keyframes shoot{0%{opacity:0;transform:translate(0,0) rotate(-30deg)}4%{opacity:1}14%{opacity:0;transform:translate(-420px,242px) rotate(-30deg)}100%{opacity:0}}
@media(max-width:980px){.comets .k1{width:120vw;height:120vw;margin:-60vw 0 0 -60vw}.comets .k2{width:150vw;height:150vw;margin:-75vw 0 0 -75vw}.comets .k3{width:92vw;height:92vw;margin:-46vw 0 0 -46vw}.ripples span{width:80vw;height:80vw;margin:-40vw 0 0 -40vw}}
@media (prefers-reduced-motion:reduce){.bigc,.bigc::before,.bigc h1,.frame,.swoosh .sp,.ripples span,.comets u,.orbit b,.shoot s{animation:none!important}.swoosh .sp{stroke-dashoffset:0}.frame{transform:none}}

/* ===== lightweight pass ===== */
.aurora{transform:none!important;transition:none;background:radial-gradient(circle at 12% 28%,rgba(139,92,246,.30),transparent 45%),radial-gradient(circle at 88% 18%,rgba(45,212,191,.22),transparent 45%),radial-gradient(circle at 50% 105%,rgba(255,122,89,.18),transparent 50%)}
header.solid{background:rgba(5,5,5,.96);backdrop-filter:none}
.bigc{animation:pop 1s ease-out both!important}
.bigc::before{animation:spin 14s linear infinite;will-change:transform}
.bigc h1{animation:none!important;background:none!important;-webkit-text-fill-color:#fff!important;color:#fff!important}
.bigc h1 small{-webkit-text-fill-color:#e9e4d3!important}
.frame{animation:none!important;transform:none!important;box-shadow:0 0 40px -8px rgba(217,184,108,.4)}
.rings span{animation:none!important}
.orbit b{animation:none!important}
.hero-in>*{animation:none}
.btn-gold::after{display:none}
/* divider */
.orn{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:20px}
.orn i{display:block;width:84px;height:1px;background:linear-gradient(90deg,transparent,var(--gold))}
.orn i:last-child{background:linear-gradient(270deg,transparent,var(--gold))}
.orn b{width:8px;height:8px;background:var(--gold);transform:rotate(45deg);box-shadow:0 0 0 4px rgba(217,184,108,.15)}
.frame{padding:30px 52px 30px}
@media(max-width:560px){.orn i{width:44px}}

/* ===== only colourful dots move ===== */
.bigc{animation:none!important}
.bigc::before{animation:none!important;will-change:auto;transform:rotate(-35deg)}
.orbit,.orbit b svg,.rings span{animation:none!important}
.comets{position:absolute;left:50%;top:calc(50% - 5px);width:0;height:0;pointer-events:none;z-index:2}
.comets u{position:absolute;border-radius:50%;animation:spin linear infinite;will-change:transform}
.comets u::before{content:"";position:absolute;left:50%;top:-5px;width:10px;height:10px;margin-left:-5px;border-radius:50%;background:var(--c);box-shadow:0 0 12px 3px var(--c)}
.comets .k1{--c:#2dd4bf;width:700px;height:700px;margin:-350px 0 0 -350px;animation-duration:12s}
.comets .k2{--c:#ff7a59;width:880px;height:880px;margin:-440px 0 0 -440px;animation-duration:18s;animation-direction:reverse}
.comets .k3{--c:#f1dca2;width:1100px;height:1100px;margin:-550px 0 0 -550px;animation-duration:26s}
.comets .k4{--c:#8b5cf6;width:880px;height:880px;margin:-440px 0 0 -440px;animation-duration:18s;animation-delay:-9s;animation-direction:reverse}
.comets .k5{--c:#38bdf8;width:700px;height:700px;margin:-350px 0 0 -350px;animation-duration:12s;animation-delay:-6s}
.comets .k6{--c:#ff7a59;width:1100px;height:1100px;margin:-550px 0 0 -550px;animation-duration:26s;animation-delay:-13s;animation-direction:reverse}
@media(max-width:980px){.comets .k1,.comets .k5{width:92vw;height:92vw;margin:-46vw 0 0 -46vw}.comets .k2,.comets .k4{width:120vw;height:120vw;margin:-60vw 0 0 -60vw}.comets .k3,.comets .k6{width:150vw;height:150vw;margin:-75vw 0 0 -75vw}}
@media (prefers-reduced-motion:reduce){.comets u{animation:none!important}}
/* restore light animations alongside the dots */
.bigc{animation:pop 1s ease-out both!important}
.bigc::before{animation:spin 14s linear infinite!important;transform:none;will-change:transform}
.orbit{animation:spin 60s linear infinite!important}
.orbit b svg{animation:spin 60s linear infinite reverse!important}
.rings span:nth-child(2){animation:spin 90s linear infinite reverse!important}
@media (prefers-reduced-motion:reduce){.bigc,.bigc::before,.orbit,.orbit b svg,.rings span{animation:none!important}}
