/* ============================================================
   VicThree Defence — master landing site
   CREAM theme with NAVY feature bands + mentor photo in the
   background of the hero and the Method band.
   Palette: navy #0f2340, gold #b8912f, paper #fbfaf6.
   ============================================================ */
:root{
  --navy:#0f2340;
  --navy-2:#173157;
  --navy-3:#0b1a30;
  --gold:#b8912f;
  --gold-2:#cfa53c;
  --gold-bright:#d9b24e;
  --gold-soft:#e9dcb8;
  --paper:#fbfaf6;
  --paper-2:#f3f0e6;
  --ink:#1c2331;
  --ink-soft:#4a5265;
  --line:#e2ddcd;
  --line-2:#d3cdb8;
  --line-dark:rgba(233,220,184,.20);   /* gold line on navy */
  --danger:#a23b2e;
  --serif:Georgia,"EB Garamond","Iowan Old Style","Times New Roman",serif;
  --sans:"Inter",Helvetica,Arial,system-ui,sans-serif;
  --maxw:1140px;
  --shadow:0 10px 26px rgba(15,35,64,.10);
  --shadow-lg:0 22px 52px rgba(15,35,64,.20);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--serif);line-height:1.65;font-size:18px;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:var(--navy);text-decoration-color:var(--gold);text-underline-offset:3px}
a:hover{color:var(--gold)}
strong{color:var(--navy)}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 22px}
a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:3px;border-radius:6px}

/* ---------- typography ---------- */
h1,h2,h3,h4{font-family:var(--serif);line-height:1.16;color:var(--navy);margin:0 0 .4em}
h2{font-size:clamp(1.65rem,4.4vw,2.5rem);margin:0 0 .35em}
h3{font-size:1.2rem;margin:0 0 .35em}
p{margin:0 0 1.05em}
.eyebrow{font-family:var(--sans);text-transform:uppercase;letter-spacing:.2em;font-size:.72rem;font-weight:800;color:var(--gold);margin:0 0 .6em;display:inline-block}
.display{font-weight:800;text-transform:uppercase;letter-spacing:.01em}
.lede{font-size:1.12rem;color:var(--ink-soft)}
.muted{color:var(--ink-soft)}
.center{text-align:center}
.ph{color:#9a7d38;background:#faf3dd;border:1px dashed #d9c47c;border-radius:4px;padding:0 5px;font-family:var(--sans);font-size:.9em}

/* section rhythm */
section{padding:74px 0;position:relative}
.section-head{max-width:760px;margin:0 auto 46px;text-align:center}
.section-head p{margin:0}
.overline{font-family:var(--sans);font-weight:800;text-transform:uppercase;letter-spacing:.14em;font-size:.8rem;color:var(--gold);display:flex;align-items:center;gap:12px;justify-content:center;margin-bottom:14px}
.overline::before,.overline::after{content:"";height:1px;width:30px;background:var(--gold);opacity:.7}
/* overline on dark bands */
.method .overline{color:var(--gold-soft)}
.method .overline::before,.method .overline::after{background:var(--gold-soft)}

/* gold rank-star divider */
.rank-div{display:flex;align-items:center;justify-content:center;gap:12px;margin:0 auto 14px;max-width:220px;color:var(--gold)}
.rank-div::before,.rank-div::after{content:"";height:1px;flex:1;background:linear-gradient(90deg,transparent,var(--gold))}
.rank-div::after{background:linear-gradient(90deg,var(--gold),transparent)}
.rank-div svg{width:15px;height:15px;flex:none}

/* buttons */
.btn{font-family:var(--sans);font-weight:800;font-size:.9rem;letter-spacing:.03em;text-decoration:none;padding:14px 28px;border-radius:9px;display:inline-block;border:1px solid transparent;cursor:pointer;transition:.15s;text-align:center}
.btn.primary{background:var(--gold);color:var(--navy)}
.btn.primary:hover{background:var(--gold-2);transform:translateY(-2px);color:var(--navy)}
.btn.ghost{background:transparent;color:#fff;border-color:rgba(233,220,184,.55)}
.btn.ghost:hover{border-color:var(--gold);color:var(--gold-soft);transform:translateY(-2px)}
/* ghost button on cream bands */
.btn.ghost.dark{color:var(--navy);border-color:var(--line-2)}
.btn.ghost.dark:hover{border-color:var(--gold);color:var(--gold)}

/* ============================================================
   NAV (navy)
   ============================================================ */
.nav{position:sticky;top:0;z-index:60;background:#011d45;border-bottom:1px solid rgba(184,145,47,.4);transition:box-shadow .2s}
.nav.scrolled{box-shadow:0 6px 20px rgba(0,0,0,.28);border-bottom-color:var(--gold)}
.nav .wrap{display:flex;align-items:center;gap:18px;height:64px;max-width:1200px}
.nav-brand{display:flex;align-items:center;gap:11px;text-decoration:none;margin-right:auto}
.nav-brand img{height:38px;width:auto}
/* homepage: hide the top-bar logo until the user scrolls past the hero */
.nav.hide-brand-top .nav-brand{opacity:0;visibility:hidden;transition:opacity .25s,visibility .25s}
.nav.hide-brand-top.scrolled .nav-brand{opacity:1;visibility:visible}
.nav-brand .nb-t{font-family:var(--serif);font-weight:700;letter-spacing:.03em;font-size:1.12rem;color:#fff;line-height:1}
.nav-brand .nb-t b{color:var(--gold)}
.nav-links{display:flex;align-items:center;gap:2px;font-family:var(--sans)}
.nav-links a{color:var(--gold-soft);text-decoration:none;font-size:.8rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;padding:8px 12px;border-radius:7px;transition:.14s}
.nav-links a:hover{background:var(--navy-2);color:#fff}
.nav-cta{font-family:var(--sans);font-weight:800;font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;background:var(--gold);color:var(--navy)!important;text-decoration:none;padding:10px 18px;border-radius:8px;white-space:nowrap;transition:.14s}
.nav-cta:hover{background:var(--gold-2);transform:translateY(-1px)}
.nav-toggle{display:none;background:none;border:1px solid rgba(233,220,184,.4);border-radius:8px;width:44px;height:40px;cursor:pointer;padding:0;align-items:center;justify-content:center}
.nav-toggle span,.nav-toggle span::before,.nav-toggle span::after{display:block;width:22px;height:2px;background:var(--gold-soft);position:relative;transition:.2s}
.nav-toggle span::before,.nav-toggle span::after{content:"";position:absolute;left:0}
.nav-toggle span::before{top:-7px}.nav-toggle span::after{top:7px}
.nav.open .nav-toggle span{background:transparent}
.nav.open .nav-toggle span::before{top:0;transform:rotate(45deg)}
.nav.open .nav-toggle span::after{top:0;transform:rotate(-45deg)}
@media(max-width:900px){
  .nav-toggle{display:inline-flex}
  .nav-links{position:absolute;top:64px;left:0;right:0;flex-direction:column;align-items:stretch;gap:2px;background:var(--navy);padding:12px 16px 18px;border-bottom:3px solid var(--gold);max-height:0;overflow:hidden;transform:translateY(-8px);opacity:0;pointer-events:none;transition:max-height .25s,opacity .2s,transform .2s}
  .nav.open .nav-links{max-height:460px;opacity:1;transform:none;pointer-events:auto}
  .nav-links a{padding:13px 10px;font-size:.95rem}
  .nav-links .nav-cta{text-align:center;margin-top:8px}
  .nav-cta{display:none}
  .nav.open .nav-links .nav-cta{display:block}
}

/* ============================================================
   HERO (navy + photo in background)
   ============================================================ */
.hero{position:relative;color:var(--paper);border-bottom:3px solid var(--gold);overflow:hidden;padding-top:0;
  background:linear-gradient(160deg,var(--navy) 0%,var(--navy-3) 100%)}
/* mentor photo washed into the background, anchored right */
.hero::before{content:"";position:absolute;inset:0;
  background:url("anmol-hero.jpg?v=4") center 16% / cover no-repeat;
  opacity:.22;pointer-events:none}
.hero::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(90deg,var(--navy) 8%,rgba(15,35,64,.72) 46%,rgba(15,35,64,.35) 100%)}
.hero .wrap{position:relative;z-index:1;display:grid;grid-template-columns:1.08fr .92fr;gap:44px;align-items:start;padding:16px 22px 36px}
.hero-top{position:relative;z-index:1;max-width:var(--maxw);margin:0 auto;padding:30px 22px 4px;text-align:center}
.hero-banner{width:min(820px,92%);height:auto;display:block;margin:0 auto}
.badge-line{display:inline-flex;align-items:center;gap:10px;font-family:var(--sans);font-weight:800;text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;color:var(--gold-soft);border:1px solid rgba(233,220,184,.4);border-radius:30px;padding:7px 16px;margin-bottom:22px}
.hero h1{font-family:var(--serif);font-weight:800;text-transform:uppercase;color:#fff;font-size:clamp(2.1rem,5.4vw,3.4rem);line-height:1.06;margin:0 0 .4em}
.hero h1 .g{color:var(--gold-bright)}
.hero .hero-sub{font-family:var(--sans);font-size:1.02rem;line-height:1.6;color:var(--gold-soft);max-width:52ch;margin:0 0 22px}
.hero .built{font-family:var(--sans);font-size:.95rem;color:var(--gold-soft);margin:0 0 6px}
.hero .built b{color:#fff;font-weight:700}
.hero .rank-chip{display:inline-block;font-family:var(--sans);font-weight:800;font-size:.76rem;letter-spacing:.05em;text-transform:uppercase;color:#20301c;background:linear-gradient(180deg,#b7c96a,#93ad3f);padding:6px 14px;border-radius:6px;margin:6px 0 22px}
.hero .tagline{font-family:var(--sans);font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-soft);margin:0 0 26px}
.hero .tagline .dot{color:var(--gold);margin:0 8px}
.hero-cta{display:flex;flex-wrap:wrap;gap:14px}
.hero-photo{justify-self:center;position:relative;margin-top:3.5rem}
.hero-photo .frame{width:min(426px,40vw);margin-inline:auto;border-radius:16px;overflow:hidden;border:1px solid rgba(233,220,184,.4);box-shadow:var(--shadow-lg);background:var(--navy-2)}
.hero-photo .frame img{width:100%;height:auto;display:block}
.hero-photo .photo-credit{margin:16px 0 0;font-family:var(--sans);font-size:.9rem;line-height:1.5;color:var(--gold-soft);text-align:center}
.hero-photo .photo-credit b{color:#fff;font-weight:700}
.hero-photo .cap{position:absolute;left:16px;bottom:16px;font-family:var(--sans);color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.7)}
.hero-photo .cap .nm{font-weight:800;font-size:1rem}
.hero-photo .cap .rl{font-size:.68rem;text-transform:uppercase;letter-spacing:.14em;color:var(--gold-bright)}
@media(max-width:840px){
  .hero::after{background:linear-gradient(180deg,rgba(15,35,64,.7),rgba(15,35,64,.85))}
  .hero .wrap{display:flex;flex-direction:column;align-items:center;text-align:center;gap:13px;padding-top:40px}
  .hero-copy,.hero-photo{display:contents}
  .badge-line{order:1;align-self:center;margin:6px 0 0}
  .hero h1{order:2;align-self:stretch}
  .hero-sub{order:3;align-self:stretch}
  .hero-photo .frame{order:4;width:min(360px,82vw);align-self:center;margin:10px 0 0}
  .hero-photo .photo-credit{order:5;align-self:stretch;margin-top:6px}
  .hero-cta{order:6;align-self:stretch;justify-content:center;margin-top:16px}
  .hero-top{padding-left:10px;padding-right:10px}
  .hero-banner{width:100%;margin-left:auto;margin-right:auto}
}
/* hero quick-access tiles (full-width row under the hero) */
.hero-tiles-wrap{position:relative;z-index:1;max-width:var(--maxw);margin:0 auto;padding:0 22px 62px}
.hero-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.htile{display:flex;flex-direction:column;gap:9px;background:rgba(255,255,255,.06);border:1px solid rgba(233,220,184,.32);border-radius:14px;padding:20px;text-decoration:none;color:#fff;transition:.15s}
.htile:hover{background:rgba(184,145,47,.16);border-color:var(--gold);transform:translateY(-3px);color:#fff;box-shadow:var(--shadow-lg)}
.htile .ht-ic{width:42px;height:42px;border-radius:11px;background:rgba(184,145,47,.16);border:1px solid rgba(233,220,184,.28);color:var(--gold-bright);display:flex;align-items:center;justify-content:center}
.htile .ht-ic svg{width:22px;height:22px}
.htile .ht-l{font-family:var(--sans);font-weight:800;font-size:.98rem;letter-spacing:.01em}
.htile .ht-s{font-family:var(--sans);font-size:.78rem;color:var(--gold-soft);opacity:.82;margin-top:-3px}
@media(max-width:820px){.hero-tiles{grid-template-columns:1fr 1fr}}
@media(max-width:600px){
  .htile{aspect-ratio:1/1;justify-content:center;align-items:center;text-align:center;padding:12px;gap:7px}
  .htile .ht-l{font-size:.9rem}
  .htile .ht-s{font-size:.7rem;margin-top:0}
}

/* ============================================================
   PROMISE (cream band)
   ============================================================ */
.promise{background:var(--paper-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.promise .wrap{max-width:900px;text-align:center}
.promise .qmark{font-family:Georgia,serif;font-size:4rem;color:var(--gold);line-height:.2;height:34px}
.promise .big{font-family:var(--serif);font-size:clamp(1.3rem,3vw,1.9rem);color:var(--navy);line-height:1.4;margin:0 0 18px}
.promise p{color:var(--ink-soft);max-width:64ch;margin:0 auto 20px}
.promise .cadence{font-family:var(--sans);font-size:.8rem;letter-spacing:.13em;text-transform:uppercase;color:var(--gold);font-weight:700;margin:0}
.promise .cadence .dot{margin:0 9px;opacity:.7}

/* ============================================================
   FACT STRIP (navy)
   ============================================================ */
.facts{background:var(--navy);color:#fff;padding:0}
.facts .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:0}
.fact{text-align:center;padding:34px 18px;border-left:1px solid var(--line-dark)}
.fact:first-child{border-left:none}
.fact .n{font-family:var(--serif);font-size:clamp(1.7rem,4vw,2.4rem);font-weight:800;color:var(--gold-bright);line-height:1}
.fact .l{font-family:var(--sans);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--gold-soft);margin-top:9px;line-height:1.4}
@media(max-width:700px){
  .facts .wrap{grid-template-columns:1fr 1fr}
  .fact{border-left:none;border-top:1px solid var(--line-dark)}
  .fact:nth-child(-n+2){border-top:none}
  .fact:nth-child(even){border-left:1px solid var(--line-dark)}
}

/* ============================================================
   ABOUT (cream)
   ============================================================ */
.about .wrap{display:grid;grid-template-columns:.82fr 1.18fr;gap:46px;align-items:center}
.about-photo .frame{border-radius:16px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow);aspect-ratio:3/3.4;background:var(--paper-2)}
.about-photo .frame img{width:100%;height:100%;object-fit:cover;object-position:50% 22%}
.creds{list-style:none;padding:0;margin:20px 0 0;display:flex;flex-wrap:wrap;gap:10px}
.creds li{font-family:var(--sans);font-size:.82rem;font-weight:700;letter-spacing:.02em;color:var(--navy);background:var(--paper-2);border:1px solid var(--line-2);border-radius:20px;padding:7px 15px;display:flex;align-items:center;gap:7px}
.creds li svg{width:14px;height:14px;color:var(--gold);flex:none}
@media(max-width:780px){
  .about .wrap{grid-template-columns:1fr;text-align:center}
  .about-photo{max-width:340px;justify-self:center}
  .creds{justify-content:center}
}

/* ============================================================
   METHOD — 5-step framework (NAVY band + photo in background)
   ============================================================ */
.method{background:var(--navy-3);color:#fff;border-top:3px solid var(--gold);border-bottom:3px solid var(--gold);overflow:hidden}
.method::before{content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(11,26,48,.88),rgba(11,26,48,.95)),
    url("anmol-hero.jpg?v=4") center 20% / cover no-repeat;
  opacity:.5;pointer-events:none}
.method .wrap{position:relative}
.method h2{color:#fff}
.method .lede{color:var(--gold-soft)}
.flow{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px 6px;font-family:var(--sans);font-weight:800;letter-spacing:.14em;text-transform:uppercase;font-size:.78rem;color:var(--gold-soft);margin:0 auto 40px;max-width:720px}
.flow span{background:rgba(255,255,255,.06);border:1px solid var(--line-dark);border-radius:7px;padding:8px 14px}
.flow .arw{color:var(--gold);border:none;background:none;padding:0 2px}
.steps{display:flex;flex-direction:column;gap:16px;max-width:920px;margin:0 auto}
.step{display:grid;grid-template-columns:auto 1fr auto;gap:20px;align-items:center;background:rgba(23,49,87,.72);border:1px solid var(--line-dark);border-radius:14px;padding:22px 24px;transition:.16s}
.step:hover{border-color:rgba(184,145,47,.55);transform:translateX(3px)}
.step .num{width:54px;height:54px;border-radius:50%;border:1.5px solid var(--gold);color:var(--gold-bright);font-family:var(--serif);font-weight:800;font-size:1.2rem;display:flex;align-items:center;justify-content:center;flex:none}
.step .body h3{font-family:var(--sans);font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#fff;font-size:1.05rem;margin:0 0 3px}
.step .body .sub{font-family:var(--serif);font-style:italic;color:var(--gold-bright);font-size:1rem;margin:0 0 8px}
.step .body p{margin:0;color:var(--gold-soft);font-size:.95rem}
.step .chip{flex:none;text-align:center;background:linear-gradient(180deg,rgba(184,145,47,.28),rgba(184,145,47,.08));border:1px solid rgba(184,145,47,.5);border-radius:11px;padding:12px 16px;min-width:132px}
.step .chip .k{font-family:var(--sans);font-size:.6rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-soft)}
.step .chip .v{font-family:var(--serif);font-weight:800;font-size:1.4rem;color:#fff;line-height:1.1;margin:3px 0}
.step .chip .s{font-family:var(--sans);font-size:.6rem;letter-spacing:.1em;text-transform:uppercase;color:var(--gold-soft);opacity:.85}
.method .guarantee{text-align:center;font-family:var(--serif);font-weight:800;text-transform:uppercase;letter-spacing:.02em;font-size:clamp(1.1rem,2.6vw,1.5rem);color:#fff;margin:44px auto 0;max-width:800px}
.method .guarantee b{color:var(--gold-bright)}
@media(max-width:720px){
  .step{grid-template-columns:auto 1fr;gap:14px}
  .step .chip{grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:12px;min-width:0;padding:9px 14px}
  .step .chip .v{margin:0;font-size:1.15rem}
  .step .num{width:46px;height:46px;font-size:1.05rem}
}

/* ============================================================
   SOUND FAMILIAR? — pain agitation (cream)
   ============================================================ */
.familiar{background:var(--paper-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.familiar .wrap{max-width:1000px}
.familiar .fam-top{text-align:center}
.familiar-pill{display:inline-flex;align-items:center;gap:9px;font-family:var(--sans);font-weight:800;text-transform:uppercase;letter-spacing:.18em;font-size:.7rem;color:var(--ink-soft);background:#fff;border:1px solid var(--line-2);border-radius:30px;padding:9px 18px;margin:0 0 26px}
.familiar-pill svg{width:13px;height:13px;color:var(--gold)}
.familiar .fh{font-family:var(--serif);font-weight:800;color:var(--navy);font-size:clamp(1.9rem,5vw,2.85rem);line-height:1.12;margin:0 auto 44px;max-width:none}
.familiar .fh .ac{color:var(--gold);font-style:italic}
.familiar-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:0 auto 44px}
.fcard{background:#fff;border:1px solid var(--line);border-radius:16px;padding:30px 22px;text-align:center;box-shadow:var(--shadow);transition:.15s}
.fcard:hover{border-color:var(--gold);transform:translateY(-3px)}
.fcard .fic{width:52px;height:52px;border-radius:13px;background:var(--paper-2);color:var(--navy);display:flex;align-items:center;justify-content:center;margin:0 auto 18px}
.fcard .fic svg{width:26px;height:26px}
.fcard .fl{font-family:var(--sans);font-weight:800;text-transform:uppercase;letter-spacing:.06em;font-size:.82rem;color:var(--navy)}
.familiar .body{text-align:center;max-width:800px;margin:0 auto}
.familiar .body .lead{font-family:var(--serif);font-size:clamp(1.15rem,2.7vw,1.5rem);color:var(--ink-soft);line-height:1.5;margin:0 0 16px}
.familiar .body .lead b{color:var(--navy)}
.familiar .body .sub{font-family:var(--sans);font-size:.98rem;color:var(--ink-soft);opacity:.9;margin:0}
/* progressively fading tail ("quietly slips away") */
.fade-out{background:linear-gradient(90deg,var(--navy) 0%,var(--navy) 28%,rgba(15,35,64,0) 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
@media(max-width:760px){.familiar-cards{grid-template-columns:1fr}}

/* ============================================================
   HERE'S WHAT NOBODY TELLS YOU — reframe (cream card)
   ============================================================ */
.reframe{background:var(--paper)}
.reframe .card{max-width:940px;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow-lg);padding:clamp(34px,6vw,64px);text-align:center}
.reframe .overline{justify-content:center}
.reframe h2{font-size:clamp(1.5rem,3.8vw,2.2rem);color:var(--navy);margin:0}
.reframe h2 .ac{color:var(--ink-soft);font-style:italic;font-weight:600}
.reframe .rule{height:1px;background:var(--line);margin:clamp(26px,4vw,38px) 0}
.reframe .stat{font-family:var(--serif);font-weight:800;color:var(--navy);font-size:clamp(3rem,10vw,5.6rem);line-height:1;letter-spacing:-.01em}
.reframe .stat-cap{font-family:var(--sans);font-weight:800;text-transform:uppercase;letter-spacing:.2em;font-size:.72rem;color:var(--ink-soft);margin-top:16px;line-height:1.6}
.reframe .rbody{font-family:var(--serif);font-size:clamp(1.05rem,2.4vw,1.28rem);color:var(--ink-soft);line-height:1.55;max-width:62ch;margin:0 auto;text-wrap:pretty}
.reframe .rbody b{color:var(--navy)}
.reframe .rbody .muted{display:block;color:var(--ink-soft);opacity:.65;margin-top:8px;font-size:.9em;font-family:var(--sans)}

/* ============================================================
   THE GS COURSE — consolidated (NAVY band + photo in background)
   ============================================================ */
.course{background:var(--navy-3);color:#fff;border-top:3px solid var(--gold);border-bottom:3px solid var(--gold);overflow:hidden}
.course::before{content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(11,26,48,.90),rgba(11,26,48,.96)),
    url("anmol-hero.jpg?v=4") center 20% / cover no-repeat;
  opacity:.5;pointer-events:none}
.course .wrap{position:relative}
.course .section-head{margin-bottom:34px}
.course h2{color:#fff}
.course .lede{color:var(--gold-soft)}
.course .overline{color:var(--gold-soft)}
.course .overline::before,.course .overline::after{background:var(--gold-soft)}
.course .flow{margin-bottom:16px}
.course .flow-cap{text-align:center;max-width:70ch;margin:0 auto 40px;font-family:var(--sans);font-size:.95rem;color:var(--gold-soft)}
/* three reasons */
.course-points{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:920px;margin:0 auto 40px}
.cpoint{background:rgba(23,49,87,.72);border:1px solid var(--line-dark);border-radius:14px;padding:24px 22px;transition:.16s}
.cpoint:hover{border-color:rgba(184,145,47,.55);transform:translateY(-3px)}
.cpoint .cn{font-family:var(--serif);font-weight:800;color:var(--gold-bright);font-size:1.1rem}
.cpoint h3{color:#fff;font-size:1.12rem;margin:8px 0 8px}
.cpoint p{margin:0;color:var(--gold-soft);font-size:.94rem}
/* meta bar */
.course-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:0;max-width:720px;margin:0 auto 30px;border:1px solid var(--line-dark);border-radius:14px;overflow:hidden;background:rgba(23,49,87,.5)}
.course-meta .cm{text-align:center;padding:20px 14px;border-left:1px solid var(--line-dark)}
.course-meta .cm:first-child{border-left:none}
.course-meta .cm .k{font-family:var(--sans);font-size:.62rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-soft)}
.course-meta .cm .v{font-family:var(--serif);font-weight:800;font-size:1.08rem;color:#fff;margin-top:6px;line-height:1.25}
.course-cta{display:flex;flex-wrap:wrap;gap:14px 20px;justify-content:center;align-items:center}
.course-cta .btn.ghost.dark{color:var(--gold-soft);border-color:rgba(233,220,184,.55)}
.course-cta .btn.ghost.dark:hover{border-color:var(--gold);color:#fff}
.gs-tour{display:inline-flex;align-items:center;gap:8px;color:var(--gold-soft);text-decoration:none;font-family:var(--sans);font-weight:600;font-size:.92rem;letter-spacing:.01em;transition:color .15s}
.gs-tour svg{color:var(--gold);flex:none}
.gs-tour:hover{color:#fff}
.gs-tour:hover span{text-decoration:underline;text-underline-offset:3px}
@media(max-width:820px){.course-points{grid-template-columns:1fr}}
@media(max-width:640px){
  .course-meta{grid-template-columns:1fr}
  .course-meta .cm{border-left:none;border-top:1px solid var(--line-dark)}
  .course-meta .cm:first-child{border-top:none}
}
/* let the pain lead flow naturally on small screens */
@media(max-width:560px){.familiar .lead br{display:none}}
/* mobile-only line breaks */
.m-brk{display:none}
@media(max-width:600px){.m-brk{display:inline}}
@media(max-width:600px){.d-brk{display:none}}
.plans .lede{text-wrap:balance}
/* ---- mobile single-line headings + squared tiles ---- */
@media(max-width:600px){
  .hero h1{font-size:clamp(1.55rem,6.7vw,1.85rem);line-height:1.2;text-wrap:balance}
  .familiar .fh{font-size:clamp(1.3rem,6.2vw,1.9rem)}
  .practice h2,.plans h2,.course h2{font-size:clamp(1.25rem,5.4vw,1.5rem);line-height:1.24}
  .cta-band h2{font-size:clamp(1.05rem,4.6vw,1.5rem);line-height:1.22}
  .cta-band p.warn{font-size:.82rem;line-height:1.4}
  .plans .lede br{display:none}
  .faq h2{font-size:1.84rem;line-height:1.2}
  section.gallery h2{font-size:1.32rem;line-height:1.24}
  .reframe .overline{font-size:.68rem;letter-spacing:.06em;white-space:nowrap}
  .reframe .overline::before,.reframe .overline::after{width:16px}
  .course .flow{flex-wrap:nowrap;gap:4px 2px;font-size:.56rem;letter-spacing:.05em;max-width:none}
  .course .flow span{padding:6px 6px}
  .course .flow .arw{padding:0 1px}
}

/* ============================================================
   WHAT WE DO — brand pillars (cream)
   ============================================================ */
.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.pillar{background:#fff;border:1px solid var(--line);border-radius:14px;padding:28px;transition:.16s;text-decoration:none;color:var(--ink);display:flex;flex-direction:column}
.pillar:hover{border-color:var(--gold);transform:translateY(-3px);box-shadow:var(--shadow);color:var(--ink)}
.pillar .ic{width:50px;height:50px;border-radius:12px;background:var(--navy);color:var(--gold);display:flex;align-items:center;justify-content:center;margin-bottom:16px;flex:none}
.pillar .ic svg{width:27px;height:27px}
.pillar .tag{font-family:var(--sans);font-size:.66rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:var(--gold);display:block;margin-bottom:5px}
.pillar h3{color:var(--navy);font-size:1.22rem;margin:0 0 .4em}
.pillar p{color:var(--ink-soft);font-size:.95rem;margin:0 0 18px}
.pillar .go{margin-top:auto;font-family:var(--sans);font-weight:700;font-size:.8rem;letter-spacing:.04em;text-transform:uppercase;color:var(--navy);display:inline-flex;align-items:center;gap:7px}
.pillar .go svg{width:15px;height:15px;transition:transform .16s}
.pillar:hover .go{color:var(--gold)}
.pillar:hover .go svg{transform:translateX(4px)}
@media(max-width:820px){.pillars{grid-template-columns:1fr}}
/* 4-up chooser variant */
.pillars.four{grid-template-columns:repeat(4,1fr)}
.pillars.four .pillar{padding:24px 22px}
.pillars.four .pillar p{margin-bottom:14px;font-size:.92rem}
@media(max-width:920px){.pillars.four{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.pillars.four{grid-template-columns:1fr}}
/* chooser section sits on plain cream */
.chooser .section-head{margin-bottom:34px}

/* ============================================================
   WHY IT WORKS (cream)
   ============================================================ */
.why-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}
.why{background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px 20px;transition:.15s}
.why:hover{border-color:var(--gold);transform:translateY(-3px);box-shadow:var(--shadow)}
.why .n{font-family:var(--serif);font-weight:800;color:var(--gold);font-size:1.05rem;opacity:.85}
.why h3{font-family:var(--sans);font-weight:800;letter-spacing:.04em;text-transform:uppercase;font-size:.86rem;color:var(--navy);margin:10px 0 8px}
.why p{margin:0;font-size:.9rem;color:var(--ink-soft)}
@media(max-width:900px){.why-grid{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:600px){.why-grid{grid-template-columns:1fr 1fr}}

/* ============================================================
   PRACTICE TOOLS (cream)
   ============================================================ */
.tools-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.tool{position:relative;background:#fff;border:1px solid var(--line);border-radius:14px;padding:26px;text-decoration:none;color:var(--ink);display:flex;flex-direction:column;gap:6px;transition:.16s;overflow:hidden}
.tool::after{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--gold);transform:scaleY(0);transform-origin:top;transition:transform .18s}
.tool:hover{border-color:var(--gold);transform:translateY(-3px);box-shadow:var(--shadow-lg);color:var(--ink)}
.tool:hover::after{transform:scaleY(1)}
.tool-top{display:flex;align-items:center;gap:14px}
.tool-ic{width:48px;height:48px;border-radius:11px;background:var(--navy);color:var(--gold);display:flex;align-items:center;justify-content:center;flex:none}
.tool-ic svg{width:26px;height:26px}
.tool h3{margin:0;font-size:1.18rem;color:var(--navy)}
.tool .kick{font-family:var(--sans);font-size:.66rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:var(--gold);display:block}
.tool p{margin:.5em 0 0;color:var(--ink-soft);font-size:.94rem}
.tool .go{margin-top:14px;font-family:var(--sans);font-weight:700;font-size:.8rem;letter-spacing:.04em;text-transform:uppercase;color:var(--navy);display:inline-flex;align-items:center;gap:7px}
.tool .go svg{width:15px;height:15px;transition:transform .16s}
.tool:hover .go{color:var(--gold)}
.tool:hover .go svg{transform:translateX(4px)}
@media(max-width:720px){.tools-grid{grid-template-columns:1fr}}

/* ============================================================
   GALLERY — auto-rotating marquee (cream)
   ============================================================ */
.gallery{background:var(--paper-2);overflow:hidden}
.gallery .section-head{margin-bottom:34px;max-width:1000px}
.gallery h2{white-space:nowrap;font-size:clamp(1.25rem,3vw,2rem)}
@media(max-width:760px){.gallery h2{white-space:normal}}
.marquee{position:relative;width:100%;overflow-x:auto;overflow-y:hidden;
  scrollbar-width:none;-ms-overflow-style:none;cursor:grab;-webkit-overflow-scrolling:touch;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
.marquee::-webkit-scrollbar{display:none}
.marquee.dragging{cursor:grabbing}
.marquee-track{display:flex;gap:26px;width:max-content;padding:22px 13px;user-select:none}
.marquee-track img{-webkit-user-drag:none;user-drag:none}
.gcard{flex:0 0 auto;width:320px;aspect-ratio:4/3;border-radius:16px;overflow:hidden;
  background:var(--navy-3);border:1px solid var(--line);box-shadow:var(--shadow)}
.gcard img{width:100%;height:100%;object-fit:cover;display:block}
@media(prefers-reduced-motion:reduce){.marquee-track{animation:none}}
@media(max-width:560px){.gcard{width:232px}.marquee-track{gap:18px}}

/* ============================================================
   TESTIMONIALS (cream)
   ============================================================ */
.testimonials{background:var(--paper-2)}
.quote-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.quote{background:#fff;border:1px solid var(--line);border-radius:14px;padding:26px;display:flex;flex-direction:column;gap:14px}
.quote .mark{font-family:Georgia,serif;font-size:3rem;line-height:.4;color:var(--gold);height:22px}
.quote blockquote{margin:0;font-size:1rem;line-height:1.6;color:var(--ink)}
.quote .who{display:flex;align-items:center;gap:12px;margin-top:auto;padding-top:8px;border-top:1px solid var(--line)}
.quote .av{width:42px;height:42px;border-radius:50%;background:var(--navy);color:var(--gold);display:flex;align-items:center;justify-content:center;font-family:var(--sans);font-weight:800;flex:none}
.quote .nm{font-family:var(--sans);font-weight:700;color:var(--navy);font-size:.92rem;line-height:1.2}
.quote .rs{font-family:var(--sans);font-size:.78rem;color:var(--ink-soft)}
@media(max-width:860px){.quote-grid{grid-template-columns:1fr}}

/* ============================================================
   PLANS — choose your path (cream)
   ============================================================ */
.plans{background:var(--paper)}
.plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:stretch}
.plan{position:relative;background:#fff;border:1px solid var(--line);border-radius:18px;padding:30px 26px;display:flex;flex-direction:column;gap:15px;transition:.16s}
.plan:hover{border-color:var(--gold);box-shadow:var(--shadow);transform:translateY(-3px)}
.plan.featured{border-color:var(--gold);box-shadow:var(--shadow-lg)}
.plan-flag{position:absolute;top:-12px;left:50%;transform:translateX(-50%);background:var(--gold);color:var(--navy);font-family:var(--sans);font-weight:800;font-size:.64rem;letter-spacing:.1em;text-transform:uppercase;padding:5px 14px;border-radius:20px;white-space:nowrap}
.plan-head{display:flex;align-items:center;gap:13px}
.plan-ic{width:46px;height:46px;border-radius:12px;background:var(--paper-2);color:var(--gold);display:flex;align-items:center;justify-content:center;flex:none;border:1px solid var(--line)}
.plan-ic svg{width:24px;height:24px}
.plan-head h3{margin:0;font-size:1.24rem;color:var(--navy);line-height:1.15}
.plan-sub{font-family:var(--sans);font-size:.78rem;color:var(--ink-soft);display:block;margin-top:2px}
.plan-badge{align-self:flex-start;font-family:var(--sans);font-weight:800;font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);background:rgba(184,145,47,.12);border:1px solid var(--line-2);border-radius:20px;padding:5px 12px}
.plan-desc{margin:0;color:var(--ink-soft);font-size:.95rem;line-height:1.55}
.plan-feats{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}
.plan-feats li{position:relative;padding-left:24px;font-family:var(--sans);font-size:.88rem;color:var(--ink);line-height:1.45}
.plan-feats li::before{content:"";position:absolute;left:3px;top:7px;width:8px;height:8px;border-radius:50%;background:var(--gold);opacity:.75}
/* "not included" items: greyed, with a muted cross instead of the gold dot */
.plan-feats li.feat-no{color:var(--ink-soft);opacity:.72}
.plan-feats li.feat-no::before{content:"\2715";left:1px;top:0;width:auto;height:auto;background:none;border-radius:0;font-size:.82rem;font-weight:800;line-height:1.45;color:#c0564b;opacity:.85}
.plan-foot{margin-top:auto;display:flex;flex-direction:column;gap:12px;padding-top:8px}
.plan-fee{font-family:var(--serif);font-weight:800;font-size:1.3rem;color:var(--navy)}
.plan-foot .btn{width:100%}
@media(max-width:860px){.plan-grid{grid-template-columns:1fr;max-width:440px;margin:0 auto}}

/* About — bolder coach headline + CTA */
.about h2.big-name{font-size:clamp(1.9rem,4.6vw,2.85rem);line-height:1.12;margin:0 0 .2em}
.about h2.big-name em{font-style:italic;color:var(--ink-soft);font-weight:800}
.about .aside{font-family:var(--serif);font-style:italic;color:var(--ink-soft);margin:0 0 16px;font-size:1rem}
.about .pull{font-weight:800;color:var(--navy);font-size:1.08rem}
.about .btn.navy{background:var(--navy);color:#fff;border-radius:30px;margin-top:6px;align-self:flex-start}
.about .btn.navy:hover{background:var(--navy-2);color:#fff;transform:translateY(-2px)}
.about-copy{display:flex;flex-direction:column}
@media(max-width:780px){.about .btn.navy{align-self:center}}

/* ============================================================
   COMPARISON — why choose us (cream)
   ============================================================ */
.compare .wrap{max-width:980px}
.ctable-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:16px;box-shadow:var(--shadow);border:1px solid var(--line)}
.ctable{width:100%;min-width:660px;border-collapse:collapse;background:#fff;font-family:var(--sans)}
.ctable th,.ctable td{padding:15px 18px;text-align:center;border-bottom:1px solid var(--line)}
.ctable tbody tr:last-child td{border-bottom:none}
.ctable thead th{font-size:.68rem;text-transform:uppercase;letter-spacing:.09em;color:var(--ink-soft);font-weight:700;vertical-align:bottom;padding:20px 18px}
.ctable thead th .big{display:block;font-family:var(--serif);font-size:1.1rem;color:var(--navy);font-weight:800;text-transform:none;letter-spacing:0;margin-top:5px}
.ctable .rowlabel{text-align:left;font-size:.92rem;color:var(--ink);font-weight:600}
.ctable thead .best{background:var(--navy);border-top-left-radius:0}
.ctable thead .best .tagbest{color:var(--gold-bright);font-weight:800}
.ctable thead .best .big{color:#fff}
.ctable td.best{background:rgba(184,145,47,.08)}
.swipe-hint{display:none}
@media(max-width:700px){
  .swipe-hint{display:inline-flex;align-items:center;gap:4px;font-size:.6rem;font-weight:800;
    text-transform:uppercase;letter-spacing:.08em;color:var(--gold);white-space:nowrap}
  .swipe-hint svg{width:15px;height:15px;animation:swipeNudge 1.3s ease-in-out infinite}
}
@keyframes swipeNudge{0%,100%{transform:translateX(0)}50%{transform:translateX(5px)}}
.ci{display:inline-flex;align-items:center;justify-content:center;width:27px;height:27px;border-radius:50%}
.ci.yes{background:rgba(63,107,58,.15);color:#3f6b3a}
.ci.no{background:rgba(28,35,49,.1);color:#52607a}
.ci.mid{background:rgba(184,145,47,.16);color:var(--gold)}
.ci svg{width:15px;height:15px}

/* ============================================================
   FAQ (cream)
   ============================================================ */
.faq{background:var(--paper-2)}
.faq .wrap{max-width:840px}
.faq-list{display:flex;flex-direction:column;gap:12px}
.faq-item{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;transition:border-color .15s,box-shadow .15s}
.faq-item[open]{border-color:var(--gold);box-shadow:var(--shadow)}
.faq-item summary{list-style:none;cursor:pointer;display:flex;align-items:flex-start;gap:14px;padding:20px 22px;font-family:var(--sans);font-weight:700;color:var(--navy);font-size:1.02rem;line-height:1.4}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item .qn{font-family:var(--serif);font-weight:800;color:var(--gold);font-size:.92rem;flex:none;min-width:1.7em}
.faq-item .qt{flex:1}
.faq-item .plus{flex:none;width:26px;height:26px;border-radius:50%;border:1px solid var(--line-2);position:relative}
.faq-item .plus::before,.faq-item .plus::after{content:"";position:absolute;background:var(--gold);border-radius:2px}
.faq-item .plus::before{left:6px;right:6px;top:12px;height:2px}
.faq-item .plus::after{top:6px;bottom:6px;left:12px;width:2px;transition:transform .2s}
.faq-item[open] .plus{border-color:var(--gold)}
.faq-item[open] .plus::after{transform:scaleY(0)}
.faq-a{padding:0 22px 20px 53px;color:var(--ink-soft);font-family:var(--serif);font-size:1rem;line-height:1.62}
@media(max-width:560px){.faq-a{padding-left:22px}}

/* ============================================================
   CTA BAND (navy)
   ============================================================ */
.cta-band{background:linear-gradient(135deg,var(--navy),var(--navy-2));color:#fff;text-align:center;border-top:3px solid var(--gold);border-bottom:3px solid var(--gold)}
.cta-band .warn{font-family:var(--serif);font-style:italic;font-size:clamp(1.15rem,2.8vw,1.6rem);color:var(--gold-soft);margin:0 auto 12px;max-width:42ch}
.cta-band h2{color:#fff}
.cta-band .lede{color:var(--gold-soft);max-width:52ch;margin:0 auto 26px}
.cta-band .btn.primary{margin-bottom:30px}
.join-label{font-family:var(--sans);font-weight:800;color:var(--gold-soft);font-size:.76rem;letter-spacing:.16em;text-transform:uppercase;margin:0 0 14px}
.socials{display:flex;justify-content:center;align-items:center;gap:26px}
.socials a{color:var(--gold);display:inline-flex;line-height:0;text-decoration:none;transition:color .14s,transform .14s}
.socials a:hover{color:#fff;transform:translateY(-3px)}

/* ============================================================
   FOOTER (navy)
   ============================================================ */
.site-foot{background:var(--navy-3);color:var(--gold-soft);padding:52px 0 30px}
.foot-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:32px;margin-bottom:34px}
.foot-brand img{width:38px;height:38px;margin-bottom:12px}
.foot-brand .foot-banner{width:auto;max-width:280px;height:auto;margin-bottom:14px}
.foot-brand .fb-t{font-family:var(--serif);font-weight:700;letter-spacing:.03em;color:#fff;font-size:1.15rem}
.foot-brand .fb-t b{color:var(--gold)}
.foot-brand p{color:rgba(233,220,184,.72);font-family:var(--sans);font-size:.88rem;max-width:38ch;margin:10px 0 0}
.foot-col h4{font-family:var(--sans);text-transform:uppercase;letter-spacing:.1em;font-size:.72rem;color:var(--gold);margin:0 0 14px}
.foot-col ul{list-style:none;padding:0;margin:0}
.foot-col li{margin:0 0 9px}
.foot-col a,.foot-col span{font-family:var(--sans);font-size:.9rem;color:var(--gold-soft);text-decoration:none}
.foot-col a:hover{color:#fff}
.foot-bottom{border-top:1px solid var(--line-dark);padding-top:20px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;align-items:center;font-family:var(--sans);font-size:.82rem;color:rgba(233,220,184,.68)}
.foot-bottom .socials{gap:18px}
.foot-bottom .socials a{color:var(--gold-soft)}
.foot-bottom .socials a:hover{color:#fff}

/* golden word tiles in the 90-day flow (arrows stay plain) */
.course .flow span:not(.arw){background:var(--gold);color:var(--navy);border-color:var(--gold)}

/* footer: refund as a collapsible button above contact; contact as icon row */
.foot-refund{margin:0 0 16px}
.foot-refund>summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:9px;font-family:var(--sans);font-weight:800;text-transform:uppercase;letter-spacing:.1em;font-size:.72rem;color:var(--gold)}
.foot-refund>summary::-webkit-details-marker{display:none}
.foot-refund>summary::after{content:"";width:7px;height:7px;border-right:2px solid var(--gold);border-bottom:2px solid var(--gold);transform:rotate(45deg) translateY(-1px);transition:transform .2s}
.foot-refund[open]>summary::after{transform:rotate(-135deg)}
.foot-refund-body{padding-top:12px}
.foot-refund-body p{font-family:var(--sans);font-size:.8rem;line-height:1.6;color:rgba(233,220,184,.6);margin:0 0 10px;max-width:88ch}
.foot-refund-body p:last-child{margin:0}
.foot-mail{display:inline-block;font-family:var(--sans);font-size:.9rem;color:var(--gold-soft);text-decoration:none;margin:0 0 14px}
.foot-mail:hover{color:#fff}
.foot-socials{justify-content:flex-start;gap:20px}
.foot-socials a{color:var(--gold-soft)}
.foot-socials a:hover{color:#fff}

/* --- Know your mentor: frosted-glass popup --- */
.mentor-modal{position:fixed;inset:0;z-index:1200;display:flex;align-items:center;justify-content:center;padding:22px}
.mentor-modal[hidden]{display:none}
.mentor-overlay{position:absolute;inset:0;background:rgba(6,14,28,.5);
  -webkit-backdrop-filter:blur(14px) saturate(1.15);backdrop-filter:blur(14px) saturate(1.15);
  animation:mentorFade .25s ease both}
.mentor-dialog{position:relative;z-index:1;width:min(640px,100%);max-height:88vh;overflow-y:auto;
  padding:34px clamp(22px,4vw,40px);border-radius:22px;color:#f4eede;
  background:linear-gradient(180deg,rgba(20,40,72,.88),rgba(11,26,48,.92));
  -webkit-backdrop-filter:blur(24px) saturate(1.2);backdrop-filter:blur(24px) saturate(1.2);
  border:1px solid rgba(233,220,184,.22);
  box-shadow:0 30px 80px rgba(0,0,0,.55),inset 0 1px 0 rgba(255,255,255,.06);
  animation:mentorPop .3s cubic-bezier(.2,.8,.25,1) both}
.mentor-dialog::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;border-radius:22px 22px 0 0;
  background:linear-gradient(90deg,var(--gold-2),var(--gold),var(--gold-bright))}
@keyframes mentorFade{from{opacity:0}to{opacity:1}}
@keyframes mentorPop{from{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:none}}
.mentor-close{position:absolute;top:14px;right:16px;width:38px;height:38px;border-radius:50%;
  border:1px solid rgba(233,220,184,.25);background:rgba(255,255,255,.06);color:var(--gold-soft);
  font-size:24px;line-height:1;cursor:pointer;transition:.15s;display:flex;align-items:center;justify-content:center}
.mentor-close:hover{background:rgba(255,255,255,.12);color:#fff}
.mentor-head{margin-bottom:20px;padding-right:34px}
.mentor-head .overline{margin:0 0 8px;justify-content:flex-start;color:var(--gold-bright)}
.mentor-head h3{font-family:var(--serif);font-weight:600;color:#fff;font-size:clamp(1.5rem,4vw,2.1rem);line-height:1.08;margin:0}
.mentor-creds{list-style:none;padding:0;margin:0 0 22px;display:grid;gap:11px}
.mentor-creds li{position:relative;padding-left:18px;font-family:var(--sans);font-size:.96rem;line-height:1.55;color:rgba(244,238,222,.85)}
.mentor-creds li::before{content:"";position:absolute;left:2px;top:9px;width:5px;height:5px;border-radius:50%;background:rgba(244,238,222,.55)}
.mentor-creds b{color:#fff;font-weight:700}
.mentor-prose p{font-family:var(--sans);font-size:.97rem;line-height:1.72;color:rgba(244,238,222,.85);margin:0 0 13px}
.mentor-tagline{font-family:var(--serif);font-weight:500;font-style:italic;color:var(--gold-bright);font-size:1.12rem;
  text-align:center;margin:18px 0 0;padding-top:18px;border-top:1px solid rgba(233,220,184,.16)}

/* --- Teaching screenshots marquee --- */
.teaching{background:var(--paper)}
.teach-head{margin-bottom:16px}
.teach-marquee .marquee-track{gap:16px;padding:8px 13px 16px}
.teach-card{flex:0 0 auto;margin:0}
.teach-card img{display:block;height:210px;width:auto;border-radius:12px;border:1px solid var(--line-2);box-shadow:var(--shadow)}
@media(max-width:700px){.teach-card img{height:150px;border-radius:10px}.teach-marquee .marquee-track{gap:12px}}
@media(max-width:780px){
  .foot-grid{grid-template-columns:1fr 1fr;gap:26px}
  .foot-brand{grid-column:1/-1}
  .foot-bottom{justify-content:center;text-align:center}
}
@media(max-width:440px){.foot-grid{grid-template-columns:1fr}}

@media(max-width:560px){
  body{font-size:17px}
  section{padding:56px 0}
}

/* ===== Part A: brand-home slim additions (2026-09) ===== */
.hero-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
.hero .btn.ghost{background:transparent;border:1.6px solid rgba(233,220,184,.55);color:#fff}
.hero .btn.ghost:hover{border-color:var(--gold);background:rgba(184,145,47,.16);color:#fff}
@media(max-width:840px){.hero-cta{justify-content:center}}

/* Success-stories clean grid (replaces the 25-photo marquee) */
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:6px}
.gallery-grid .gcard{width:auto;aspect-ratio:4/3;border-radius:16px;overflow:hidden;
  background:var(--navy-3);border:1px solid var(--line);box-shadow:0 10px 26px rgba(15,35,64,.12)}
.gallery-grid .gcard img{width:100%;height:100%;object-fit:cover;display:block}
@media(max-width:820px){.gallery-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.gallery-grid{grid-template-columns:1fr}}

/* Join-the-journey soft capture strip */
.join-cap{background:var(--paper-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:36px 0}
.join-cap .jc-inner{display:flex;align-items:center;justify-content:space-between;gap:22px;flex-wrap:wrap}
.join-cap h3{margin:0 0 5px;font-family:var(--serif);font-weight:800;font-size:1.45rem;color:var(--navy,#0f2340)}
.join-cap p{margin:0;color:var(--ink-soft);font-size:.98rem;line-height:1.5;max-width:54ch}
.join-cap .btn{flex:0 0 auto}
@media(max-width:600px){.join-cap .jc-inner{flex-direction:column;align-items:flex-start;gap:14px}}

/* ===== Reviews: Before / After cards (Alpha 15) ===== */
.reviews-marquee .ba-card{flex:0 0 auto;width:min(600px,88vw)}
.ba-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:8px;box-shadow:var(--shadow)}
.ba-head{display:flex;align-items:center;gap:14px;padding:16px 16px 14px}
.ba-av{flex:0 0 auto;width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(150deg,var(--navy-2),var(--navy));color:var(--gold-soft);font-family:var(--serif);font-weight:800;font-size:1.25rem;
  box-shadow:inset 0 0 0 2px var(--gold),0 3px 8px rgba(15,35,64,.18)}
.ba-id{flex:1;min-width:0;line-height:1.35}
.ba-name{display:block;font-family:var(--serif);font-weight:800;color:var(--navy);font-size:1.12rem}
.ba-meta{display:block;font-family:var(--sans);font-size:.8rem;color:var(--ink-soft);letter-spacing:.01em}
.ba-batch{flex:0 0 auto;font-family:var(--sans);font-weight:800;text-transform:uppercase;letter-spacing:.09em;font-size:.6rem;
  color:var(--navy);background:var(--gold-soft);border:1px solid var(--gold);border-radius:20px;padding:5px 11px}
.ba-panels{display:flex;align-items:stretch;gap:8px}
.ba-col{flex:1;min-width:0;padding:22px;border-radius:16px;display:flex;flex-direction:column}
.ba-col p{margin:0;font-size:.94rem;line-height:1.6}
.ba-tag{align-self:flex-start;font-family:var(--sans);font-weight:800;text-transform:uppercase;letter-spacing:.12em;font-size:.58rem;padding:5px 11px;border-radius:20px;margin-bottom:13px}
.ba-before{background:var(--paper-2);color:var(--ink);border:1px solid var(--line)}
.ba-before .ba-tag{color:var(--danger);background:rgba(162,59,46,.1);border:1px solid rgba(162,59,46,.28)}
.ba-after{background:linear-gradient(155deg,var(--navy-2),var(--navy-3))}
.ba-after p{color:#e6ecf5}
.ba-after .ba-tag{color:var(--navy);background:var(--gold);border:1px solid var(--gold)}
/* hard-hitting pull-quote at the top of each panel */
.ba-col p.ba-quote{font-family:var(--serif);font-weight:800;font-size:1.22rem;line-height:1.38;margin:0 0 13px}
.ba-before p.ba-quote{color:var(--navy)}
.ba-after p.ba-quote{color:#fff}
@media(max-width:700px){
  .ba-panels{flex-direction:column;gap:10px}
  .ba-col p.ba-quote{font-size:1.12rem}
}

/* ============================================================
   GS COURSE LANDING PAGE (gs-course.html) — scoped additions only.
   Uses existing tokens. Does not restyle any shared class.
   ============================================================ */

/* Landing page uses Playfair Display for its serif/display type.
   Playfair carries high stroke contrast, so heavy weights look clunky; keep
   the display headings at a refined medium weight. */
body.gs-page{--serif:"Playfair Display",Georgia,"Times New Roman",serif}
body.gs-page h1,body.gs-page h2,body.gs-page h3{font-weight:600;letter-spacing:-.005em}
body.gs-page .vq-quote{font-weight:600}
body.gs-page .method .guarantee{font-weight:600}

/* minimal nav: brand + one CTA. Hidden at the top, slides in on scroll. */
.gs-nav{position:fixed;left:0;right:0;top:0;transform:translateY(-100%);opacity:0;pointer-events:none;transition:transform .3s ease,opacity .3s ease}
.gs-nav.scrolled{transform:none;opacity:1;pointer-events:auto}
.gs-nav .nav-brand{opacity:1;visibility:visible;margin-right:auto;min-width:0}
.gs-nav .nav-brand img{width:auto;height:auto;max-height:38px;object-fit:contain}
.gs-nav .nav-cta{display:inline-block}
@media(max-width:700px){.gs-nav .nav-cta{display:inline-block;padding:9px 14px;font-size:.7rem}}
@media(max-width:400px){.gs-nav .nav-cta{font-size:.62rem;padding:8px 11px;letter-spacing:.03em}}

/* the five steps, one line each, under the flow chips (navy band) */
.gs-flowsteps{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;max-width:1000px;margin:0 auto 40px}
.gs-fstep{border-top:1px solid var(--line-dark);padding-top:14px}
.gs-fstep .fk{font-family:var(--sans);font-weight:800;text-transform:uppercase;letter-spacing:.12em;font-size:.66rem;color:var(--gold-bright)}
.gs-fstep p{margin:7px 0 0;font-family:var(--sans);font-size:.88rem;line-height:1.5;color:var(--gold-soft)}
@media(max-width:900px){.gs-flowsteps{grid-template-columns:repeat(2,1fr);max-width:620px}}
@media(max-width:520px){.gs-flowsteps{grid-template-columns:1fr}}
/* three-track daily system: GK (existing flow) + SSB + English */
.track-head{text-align:center;margin:0 auto 18px;max-width:760px}
.track-head .track-k{font-family:var(--sans);font-weight:800;text-transform:uppercase;letter-spacing:.14em;font-size:.66rem;color:var(--gold-bright)}
.track-head .track-tier{display:inline-block;margin-left:8px;vertical-align:middle;font-family:var(--sans);font-weight:800;text-transform:uppercase;letter-spacing:.07em;font-size:.58rem;color:var(--navy);background:var(--gold);border-radius:20px;padding:3px 10px}
.track-head .track-tier.all{color:var(--gold-bright);background:rgba(233,220,184,.1);border:1px solid var(--line-dark)}
.track-head h3{color:#fff;font-size:1.3rem;margin:9px 0 4px}
.track-head .track-tag{margin:0;font-family:var(--sans);font-size:.96rem;font-weight:600;color:var(--gold-bright)}
.track-head-gs{margin-bottom:22px}
.track-pair{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;max-width:1000px;margin:6px auto 30px}
.track-pair .track{background:rgba(23,49,87,.72);border:1px solid var(--line-dark);border-radius:16px;padding:26px 24px}
.track-pair .track .track-head{text-align:left;margin:0 0 15px;max-width:none}
.track-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}
.track-list li{position:relative;padding-left:22px;font-family:var(--sans);font-size:.92rem;line-height:1.55;color:var(--gold-soft)}
.track-list li::before{content:"";position:absolute;left:3px;top:.6em;width:7px;height:7px;border-radius:50%;background:var(--gold);opacity:.85}
.track-list b{color:#fff;font-weight:700}
.track-close{text-align:center;max-width:72ch;margin:0 auto 16px;font-family:var(--serif);font-size:1.08rem;line-height:1.5;color:#fff}
.track-note{text-align:center;max-width:72ch;margin:0 auto 34px;font-family:var(--sans);font-size:.82rem;line-height:1.55;color:var(--gold-soft);opacity:.8}
@media(max-width:820px){.track-pair{grid-template-columns:1fr}}

/* evidence slot: paper analysis / sample of teaching / results (cream) */
.gs-slot{max-width:820px;margin:44px auto 0;background:#fff;border:1px dashed var(--line-2);border-radius:16px;padding:clamp(24px,4vw,34px);text-align:center}
.gs-slot .gs-k{font-family:var(--sans);font-weight:800;text-transform:uppercase;letter-spacing:.14em;font-size:.7rem;color:var(--gold);margin-bottom:12px}
.gs-slot p{margin:0 0 10px}
.gs-slot p:last-child{margin:0}
.gs-slot .cap{font-family:var(--sans);font-size:.88rem;color:var(--ink-soft);line-height:1.55}
.gs-strip{margin-top:44px}

/* trial entry callout, sits above the three plans */
.gs-trial{max-width:820px;margin:0 auto 42px;background:var(--navy);color:#fff;border:1px solid var(--navy-2);border-radius:18px;padding:clamp(26px,4.5vw,40px);text-align:center;box-shadow:var(--shadow-lg)}
.gs-trial .gs-k{font-family:var(--sans);font-weight:800;text-transform:uppercase;letter-spacing:.16em;font-size:.7rem;color:var(--gold-bright);margin-bottom:12px}
.gs-trial h3{color:#fff;font-size:clamp(1.25rem,3.4vw,1.85rem);line-height:1.2;margin:0 0 12px}
.gs-trial p{color:var(--gold-soft);font-family:var(--sans);font-size:.98rem;line-height:1.55;max-width:54ch;margin:0 auto 24px}
.gs-trial .gs-sec{display:block;margin-top:16px;font-family:var(--sans);font-size:.85rem;color:var(--gold-soft);text-decoration-color:rgba(233,220,184,.4)}
.gs-trial .gs-sec:hover{color:#fff}

/* footer trimmed to brand + contact on this page */
.gs-foot .foot-grid{grid-template-columns:1.6fr 1fr;margin-bottom:30px}
@media(max-width:560px){.gs-foot .foot-grid{grid-template-columns:1fr}}

/* ============================================================
   PRICING: the 999 Geography trial card + the three tiers.
   Shared by index.html and gs-course.html. Uses existing tokens
   and extends .plans / .plan-grid / .plan without restyling them.
   ============================================================ */

/* --- the entry offer, sits above the tiers --- */
.trial-card{max-width:920px;margin:0 auto 46px;background:var(--navy);color:#fff;
  border:1px solid var(--navy-2);border-radius:18px;padding:clamp(26px,4.5vw,40px);
  box-shadow:var(--shadow-lg);text-align:center}
.trial-card .tc-k{font-family:var(--sans);font-weight:800;text-transform:uppercase;
  letter-spacing:.16em;font-size:.7rem;color:var(--gold-bright);margin-bottom:12px}
.trial-card h3{color:#fff;font-size:clamp(1.3rem,3.4vw,1.95rem);line-height:1.18;margin:0 0 10px}
.trial-card .tc-price{font-family:var(--serif);font-weight:800;color:var(--gold-bright);
  font-size:clamp(2.2rem,6vw,3.1rem);line-height:1;margin:0 0 10px}
.trial-card .tc-line{font-family:var(--sans);font-size:1rem;line-height:1.55;
  color:var(--gold-soft);max-width:60ch;margin:0 auto 24px}
.trial-card .tc-feats{list-style:none;padding:0;margin:0 auto 24px;max-width:760px;
  display:grid;grid-template-columns:repeat(2,1fr);gap:11px 26px;text-align:left}
.trial-card .tc-feats li{position:relative;padding-left:26px;font-family:var(--sans);
  font-size:.92rem;line-height:1.45;color:var(--gold-soft)}
.trial-card .tc-feats li::before{content:"\2713";position:absolute;left:0;top:-1px;
  color:var(--gold-bright);font-weight:800}
.trial-card .tc-adjust{background:rgba(184,145,47,.15);border:1px solid rgba(184,145,47,.5);
  border-radius:11px;padding:14px 18px;margin:0 auto 24px;max-width:70ch;
  font-family:var(--sans);font-size:.94rem;line-height:1.5;color:#fff}
.trial-card .tc-adjust b{color:var(--gold-bright)}
.trial-card .tc-note{font-family:var(--sans);font-size:.8rem;color:var(--gold-soft);
  opacity:.75;margin:14px 0 0}
/* the ₹999 trial, demoted below the tiers: narrower + spaced, so it reads as secondary */
.trial-secondary{max-width:820px;margin:40px auto 0}
.trial-secondary .tc-k{color:var(--gold-soft)}
@media(max-width:620px){.trial-card .tc-feats{grid-template-columns:1fr}}

/* --- tier cards --- */
.plan-grid.tiers{align-items:stretch}
/* price sits at the foot of each tier card, aligned across the row */
.tiers .plan-fee{order:9;margin-top:auto;padding-top:16px;border-top:1px solid var(--line)}
.plan-fee .fee-was{margin-right:11px;font-size:.6em;font-weight:700;color:var(--ink-soft);text-decoration:line-through;text-decoration-color:var(--gold);text-decoration-thickness:2px}
.plans .plan-fee{font-family:var(--serif);font-weight:800;font-size:2.1rem;
  color:var(--navy);line-height:1;margin:auto 0 0}
.plan-fee .fee-sub{display:block;font-family:var(--sans);font-weight:600;font-size:.72rem;
  letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);margin-top:7px}
.plan-desc{font-family:var(--sans);font-size:.93rem;line-height:1.5;color:var(--ink-soft);margin:0}
.plan-adjust{font-family:var(--sans);font-weight:700;font-size:.79rem;line-height:1.45;
  color:var(--gold);background:rgba(184,145,47,.1);border:1px solid var(--line-2);
  border-radius:9px;padding:9px 13px;margin:0}
/* the seat count is a headline scarcity fact on Elite and Legend */
.plan-badge.seats{align-self:flex-start;background:var(--gold);color:var(--navy);
  border-color:var(--gold);font-size:.82rem;font-weight:900;letter-spacing:.08em;
  padding:8px 16px;box-shadow:0 3px 12px rgba(184,145,47,.42)}
/* per-tier Buy now button, pinned to the very foot of each card */
.tiers .plan-buy{order:10;width:100%;margin-top:14px;justify-content:center}
/* binary grouping: Course only (Structured Course, shown first) vs Course + mentorship */
.tiers .plan-structured{order:-1}
.plan-sub{font-family:var(--sans);font-weight:800;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);margin:-8px 0 0}
.plan-grouprow{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:0 0 14px}
.pg-head{font-family:var(--sans);font-weight:800;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);text-align:center;padding-bottom:9px;border-bottom:2px solid var(--line)}
.pg-head.pg-pair{grid-column:span 2;color:var(--gold);border-bottom-color:rgba(184,145,47,.45)}
.pg-inline{display:none}
@media(max-width:860px){
  .plan-grouprow{display:none}
  .pg-inline{display:block;order:-1;font-family:var(--sans);font-weight:800;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);text-align:center;margin:0 0 2px}
}
/* honesty note under the comparison table */
.ctable-note{font-family:var(--sans);font-size:.8rem;color:var(--ink-soft);text-align:center;line-height:1.5;max-width:68ch;margin:14px auto 0}
/* single shared enquiry button below the three tiers */
.plans-cta{margin-top:26px;display:flex;justify-content:center}
.plans-cta .btn{min-width:min(340px,100%)}

/* --- expandable full detail --- */
.tier-more{border-top:1px solid var(--line);margin-top:4px}
.tier-more summary{list-style:none;cursor:pointer;display:flex;align-items:center;
  justify-content:space-between;gap:10px;padding:14px 0 2px;font-family:var(--sans);
  font-weight:800;font-size:.82rem;letter-spacing:.06em;text-transform:uppercase;color:var(--gold)}
.tier-more summary::-webkit-details-marker{display:none}
.tier-more summary::after{content:"";width:9px;height:9px;flex:none;border-right:2px solid var(--gold);
  border-bottom:2px solid var(--gold);transform:rotate(45deg) translate(-2px,-2px);transition:transform .2s}
.tier-more[open] summary::after{transform:rotate(-135deg) translate(-2px,-2px)}
.tier-more summary:hover{color:var(--navy)}
.tier-more summary:hover::after{border-color:var(--navy)}
.tm-body{padding:6px 0 4px}
.tm-body h4{font-family:var(--sans);font-weight:800;font-size:.72rem;letter-spacing:.11em;
  text-transform:uppercase;color:var(--navy);margin:16px 0 8px}
.tm-body h4:first-child{margin-top:6px}
.tm-body ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:7px}
.tm-body li{position:relative;padding-left:20px;font-family:var(--sans);font-size:.85rem;
  line-height:1.5;color:var(--ink-soft)}
.tm-body li::before{content:"";position:absolute;left:2px;top:.55em;width:6px;height:6px;
  border-radius:50%;background:var(--gold);opacity:.7}
.tm-body .tm-inherit{color:var(--navy);font-weight:700}
/* "What's not included" list inside a tier's full details: muted cross, stated plainly */
.tm-body ul.tm-no li::before{content:"\2715";left:0;top:0;width:auto;height:auto;background:none;border-radius:0;color:#c0564b;font-weight:800;font-size:.75rem;opacity:.9}


/* ============================================================
   FEATURED QUOTE CARD: photo-dominant proof banner, sits
   directly under the hero. Portrait right, quote left, gold
   credential bar along the bottom. Shared by both pages.
   ============================================================ */
.vq-band{background:var(--navy-3);padding:0}
.vq-card{position:relative;max-width:var(--maxw);margin:0 auto;min-height:500px;
  overflow:hidden;background:var(--navy-3);
  display:flex;flex-direction:column;justify-content:flex-end}

/* the portrait, anchored right, desaturated to match the brand */
.vq-photo{position:absolute;top:0;right:0;bottom:0;width:52%;overflow:hidden}
.vq-photo img{width:100%;height:100%;object-fit:cover;object-position:center top;
  filter:contrast(1.03);display:block;
  -webkit-mask-image:linear-gradient(to bottom,#000 80%,transparent 100%);
  mask-image:linear-gradient(to bottom,#000 80%,transparent 100%)}
/* fallback while no portrait is supplied: a deliberate gold monogram */
.vq-photo .vq-mono{width:100%;height:100%;display:flex;align-items:center;justify-content:center;
  background:radial-gradient(circle at 50% 40%,rgba(184,145,47,.20),transparent 62%);
  font-family:var(--serif);font-weight:800;font-size:clamp(4rem,11vw,8rem);
  color:rgba(233,220,184,.28);letter-spacing:.04em;line-height:1}
/* gradient so the quote stays readable across the photo */
.vq-card::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(90deg,var(--navy-3) 2%,rgba(11,26,48,.9) 38%,rgba(11,26,48,.5) 56%,rgba(11,26,48,0) 78%)}

.vq-inner{position:relative;z-index:2;padding:clamp(32px,5vw,58px) clamp(22px,4vw,54px) clamp(34px,4.5vw,52px);
  max-width:62%}
.vq-mark{font-family:Georgia,serif;font-size:clamp(3.4rem,7vw,5.4rem);line-height:.55;
  color:var(--gold);height:clamp(26px,3.4vw,40px);margin-bottom:clamp(14px,2vw,22px)}
.vq-quote{font-family:var(--serif);font-weight:800;color:#fff;
  font-size:clamp(1.34rem,3.15vw,2.32rem);line-height:1.26;margin:0 0 clamp(18px,2.4vw,26px);
  text-wrap:pretty}
.vq-quote .g{color:var(--gold-bright)}
.vq-attr{font-family:var(--sans);font-size:.95rem;color:var(--gold-soft);margin:0;line-height:1.5}
.vq-attr b{display:block;color:#fff;font-weight:800;font-size:1.06rem;letter-spacing:.01em}

/* credential bar, mirrors the brand footer strip */

@media(max-width:900px){
  .vq-inner{max-width:72%}
  .vq-photo{width:46%}
}
@media(max-width:700px){
  .vq-card{min-height:0}
  .vq-photo{position:relative;width:100%;height:380px}
  .vq-photo img{object-position:center top;
    -webkit-mask-image:linear-gradient(to bottom,#000 92%,transparent 100%);
    mask-image:linear-gradient(to bottom,#000 92%,transparent 100%)}
  .vq-card::after{background:linear-gradient(180deg,transparent 40%,rgba(11,26,48,.5) 62%,rgba(11,26,48,.92) 82%,var(--navy-3) 100%)}
  .vq-inner{max-width:none;margin-top:-140px;padding-top:0}
}

/* --- his full review, in the reviews section --- */
.full-review{max-width:860px;margin:0 auto 42px;background:#fff;border:1px solid var(--line);
  border-left:4px solid var(--gold);border-radius:16px;box-shadow:var(--shadow);
  padding:clamp(24px,3.6vw,34px)}
.full-review .fv-head{display:flex;align-items:center;gap:14px;margin-bottom:16px}
.full-review .fv-av{width:52px;height:52px;border-radius:50%;flex:none;background:var(--navy);
  color:var(--gold-bright);display:flex;align-items:center;justify-content:center;overflow:hidden;
  font-family:var(--serif);font-weight:800;font-size:1.2rem}
.full-review .fv-av img{width:100%;height:100%;object-fit:cover;object-position:center 15%}
.full-review .fv-nm{font-family:var(--serif);font-weight:800;font-size:1.08rem;color:var(--navy);line-height:1.2}
.full-review .fv-rs{font-family:var(--sans);font-size:.79rem;color:var(--ink-soft);margin-top:3px;line-height:1.4}
.full-review p{font-family:var(--sans);font-size:.95rem;line-height:1.65;color:var(--ink-soft);margin:0 0 12px}
.full-review p:last-child{margin:0}

/* footer refund-policy block: understated, matches the footer */
.foot-terms{border-top:1px solid var(--line-dark);margin-top:34px;padding-top:22px;max-width:none}
.foot-terms h4{font-family:var(--sans);text-transform:uppercase;letter-spacing:.1em;font-size:.72rem;color:var(--gold);margin:0 0 12px}
.foot-terms p{font-family:var(--sans);font-size:.8rem;line-height:1.6;color:rgba(233,220,184,.6);margin:0 0 10px;max-width:88ch}
.foot-terms p:last-child{margin:0}

/* ============================================================
   AUDIT PASS: single-number proof + "who this is for"
   ============================================================ */
.rev-stat{max-width:640px;margin:0 auto 4px;text-align:center}
.rev-stat-nums{font-family:var(--serif);font-weight:800;color:var(--navy);font-size:clamp(2.6rem,8vw,4.2rem);line-height:1;letter-spacing:-.01em}
.rev-stat-nums span{color:var(--gold)}
.rev-stat-cap{font-family:var(--sans);font-size:.9rem;color:var(--ink-soft);margin-top:12px;line-height:1.5;max-width:46ch;margin-inline:auto}


/* "See inside the portal" band (links to portal-demo.html) */
.portal-peek{background:var(--paper-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.pp-points{list-style:none;padding:0;margin:0 auto 30px;max-width:840px;display:flex;flex-wrap:wrap;justify-content:center;gap:10px 12px}
.pp-points li{position:relative;padding:9px 16px 9px 34px;background:#fff;border:1px solid var(--line);border-radius:30px;font-family:var(--sans);font-size:.9rem;color:var(--ink)}
.pp-points li::before{content:"";position:absolute;left:14px;top:50%;transform:translateY(-50%);width:8px;height:8px;border-radius:50%;background:var(--gold)}
.pp-cta{text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px}
.pp-note{font-family:var(--sans);font-size:.82rem;color:var(--ink-soft)}

/* ============================================================
   LANDING HERO (.hero-full): full-bleed mentor photo, copy on a
   left vignette. Scoped so the main site's .hero is untouched.
   ============================================================ */
.hero.hero-full{background:var(--navy-3)}
.hero.hero-full::before{background:url("anmol-hero.jpg?v=4") calc(100% + 140px) 66%/auto 156% no-repeat;opacity:1;-webkit-mask-image:linear-gradient(90deg,transparent 22%,#000 58%);mask-image:linear-gradient(90deg,transparent 22%,#000 58%)}
.hero.hero-full::after{background:
  linear-gradient(180deg,rgba(11,26,48,.55) 0%,rgba(11,26,48,0) 22%,rgba(11,26,48,0) 72%,rgba(11,26,48,.6) 100%),
  linear-gradient(90deg,rgba(11,26,48,.95) 0%,rgba(11,26,48,.82) 30%,rgba(11,26,48,.44) 60%,rgba(11,26,48,.12) 100%)}
.hero.hero-full .hero-top{text-align:left;padding:26px 22px 0}
.hero.hero-full .hero-banner{width:min(380px,56%);margin:0}
.hero.hero-full .wrap{display:flex;align-items:center;grid-template-columns:none;min-height:430px;padding:26px 22px 62px}
.hero.hero-full .hero-copy{max-width:660px;display:block}
.hero.hero-full h1{font-weight:600;font-size:clamp(2.5rem,4.6vw,3.7rem);line-height:1.1;letter-spacing:-.015em;text-transform:none;text-shadow:0 2px 22px rgba(0,0,0,.42)}
.hero.hero-full h1 .g{display:block;margin-top:.5em;font-size:.54em;line-height:1.32;font-weight:500;letter-spacing:0}
.hero.hero-full .hero-sub{font-size:1.16rem;color:#f4eede;text-shadow:0 1px 14px rgba(0,0,0,.5)}
.hero-cta .btn{display:inline-flex;align-items:center;justify-content:center;gap:9px}
.hero-cta .btn-ic{width:18px;height:18px;flex:none}
.hero-figure{display:none}
@media(max-width:840px){
  /* Navy content zone; the photo begins under the subheading. The navy
     gradient continues down over the head so the body pops out below, and the
     paragraph overlaps the blended top. Buttons sit on navy below the photo. */
  .hero.hero-full{background:var(--navy-3);overflow:hidden;padding-bottom:0;border-bottom:0}
  .hero.hero-full::before{display:none}
  .hero.hero-full::after{background:none}
  .hero.hero-full h1{font-size:clamp(2.2rem,9.28vw,3.4rem);line-height:1;letter-spacing:-.05em;text-shadow:none;position:relative;z-index:2}
  .hero.hero-full h1 .hw{display:block;margin-top:-.04em}
  .hero.hero-full h1 .hw:first-child{margin-top:0}
  .hero.hero-full h1 .hb{font-size:1.425em;line-height:.9;letter-spacing:-.055em;margin:-.13em 0 -.04em}
  .hero.hero-full h1 .g{font-size:.591em;line-height:1.36;margin-top:.7em;letter-spacing:-.025em}
  .hero.hero-full .hero-top{text-align:center;padding:22px 16px 4px}
  .hero.hero-full .hero-banner{width:min(340px,84%);margin:0 auto}
  .hero.hero-full .wrap{display:block;min-height:auto;padding:14px 16px 44px;text-align:center}
  .hero.hero-full .hero-copy{max-width:none}

  .hero.hero-full .hero-photo-zone{position:relative;z-index:1;margin:-1.15em -16px 0;padding:0}
  .hero.hero-full .hero-figure{display:block;width:100%;height:auto;margin:0;
    filter:brightness(1.05) saturate(1.04);
    -webkit-mask-image:linear-gradient(180deg,transparent 0,#000 33%,#000 82%,transparent 100%);
    mask-image:linear-gradient(180deg,transparent 0,#000 33%,#000 82%,transparent 100%)}
  .hero.hero-full .hero-sub{position:relative;z-index:2;font-size:1.06rem;line-height:1.6;margin:.76em 0 0;padding:0 16px;max-width:none;color:#f4eede;text-shadow:0 1px 2px rgba(11,26,48,.7),0 1px 12px rgba(11,26,48,.65)}

  .hero.hero-full .hero-cta{flex-direction:column;align-items:stretch;gap:12px;margin-top:12px}
  .hero.hero-full .hero-cta .btn{width:100%}
}
