/*
Theme Name: Mommy Supermodel
Author: Grace Nkechi Okoro
Description: Custom theme for Mommy Supermodel(TM) - a black & gold luxury brand site. Static (Option A) build; ACF-ready.
Version: 1.0
Text Domain: mommy-supermodel
*/

/* ════════════════════════════════════════════════════════
   MOMMY SUPERMODEL — SHARED SITE STYLESHEET
   One stylesheet drives every page. In WordPress this becomes
   the theme's style.css. Edit a value here → every page updates.
   ════════════════════════════════════════════════════════ */

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:#000;color:#fff;font-family:'Montserrat',sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}
ul{list-style:none}

:root{
  --gold:#C9971A;--gold-lt:#E8B830;--gold-dk:#8B6000;--gold-pale:#F5D060;
  --ink:#000;--d1:#0a0a0a;--d2:#101010;--d3:#171717;--d4:#1f1f1f;
  --line:rgba(201,151,26,.16);--ln-w:rgba(255,255,255,.07);
  --serif:'Cormorant Garamond',Georgia,serif;--disp:'Playfair Display',Georgia,serif;--sans:'Montserrat',sans-serif;
  --shell:1320px;--pad:clamp(20px,5vw,64px);
}

/* ── ATOMS ─────────────────────────────────────────────── */
.eyebrow{font-size:11px;font-weight:700;letter-spacing:.42em;text-transform:uppercase;color:var(--gold);display:inline-block}
.rule{width:54px;height:1px;background:linear-gradient(90deg,var(--gold),transparent)}
.rule.c{margin-left:auto;margin-right:auto;background:linear-gradient(90deg,transparent,var(--gold),transparent);width:64px}
.em-g{color:var(--gold);font-style:normal}
.sec{padding:clamp(72px,9vw,128px) var(--pad)}
.shell{max-width:var(--shell);margin:0 auto}
.sec-head{max-width:720px}
.sec-head.c{margin:0 auto;text-align:center}
.sec-head .eyebrow{margin-bottom:18px}
.sec-head h2{font-family:var(--sans);font-weight:800;font-size:clamp(30px,4.4vw,54px);line-height:1.04;letter-spacing:-.01em;text-transform:uppercase;margin-top:16px}
.sec-head .lede{font-family:var(--serif);font-style:italic;font-size:clamp(18px,2vw,22px);color:rgba(255,255,255,.46);line-height:1.55;margin-top:18px}

.btn{display:inline-flex;align-items:center;gap:11px;font-family:var(--sans);font-size:11px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;cursor:pointer;border:none;transition:transform .25s,box-shadow .25s,background .25s,color .25s,border-color .25s;line-height:1}
.btn i{font-size:10px;transition:transform .25s}
.btn-gold{background:linear-gradient(120deg,var(--gold-dk),var(--gold) 55%,var(--gold-lt));color:#000;padding:17px 34px}
.btn-gold:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(201,151,26,.34)}
.btn-gold:hover i{transform:translateX(4px)}
.btn-ghost{background:transparent;border:1px solid rgba(255,255,255,.28);color:rgba(255,255,255,.86);padding:16px 32px}
.btn-ghost:hover{border-color:var(--gold);color:var(--gold)}
.btn-line{background:transparent;border:1px solid var(--gold);color:var(--gold);padding:16px 32px}
.btn-line:hover{background:var(--gold);color:#000}
.btn-dark{background:#000;color:var(--gold);padding:17px 36px}
.btn-dark:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(0,0,0,.3)}
.btn-sm{padding:12px 26px;font-size:10px}

/* ── TOP BAR + NAV (CSS-only mobile menu) ──────────────── */
.topbar{background:#060606;border-bottom:1px solid var(--ln-w)}
.topbar-in{max-width:var(--shell);margin:0 auto;height:38px;padding:0 var(--pad);display:flex;align-items:center;justify-content:flex-end;gap:30px}
.topbar a{font-size:9.5px;font-weight:600;letter-spacing:.28em;text-transform:uppercase;color:rgba(255,255,255,.34);transition:color .2s}
.topbar a:hover{color:var(--gold)}

.nav{position:sticky;top:0;z-index:900;background:rgba(0,0,0,.86);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}
.nav-in{max-width:var(--shell);margin:0 auto;min-height:78px;padding:0 var(--pad);display:flex;align-items:center;justify-content:space-between}
.brand{display:flex;flex-direction:column;line-height:.92;letter-spacing:.02em}
.brand b{font-family:var(--disp);font-weight:600;font-size:21px}
.brand span{font-family:var(--sans);font-size:9px;font-weight:700;letter-spacing:.46em;text-transform:uppercase;color:var(--gold);margin-top:4px}
.nav-links{display:flex;align-items:center;gap:4px}
.nav-link{position:relative;font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.74);padding:10px 15px;transition:color .2s;cursor:pointer}
.nav-link:hover,.nav-link.active{color:var(--gold)}
.nav-link.active::after{content:"";position:absolute;left:15px;right:15px;bottom:2px;height:1px;background:var(--gold)}
.nav-cta{margin-left:12px}
.nav-toggle{display:none}
.nav-burger{display:none;cursor:pointer;color:#fff;font-size:20px;padding:6px;line-height:1}

/* programs dropdown */
.nav-dd{position:relative}
.nav-dd-menu{position:absolute;top:100%;right:0;min-width:280px;background:rgba(6,6,6,.98);border:1px solid var(--line);border-top:2px solid var(--gold);opacity:0;visibility:hidden;transform:translateY(8px);transition:all .25s;z-index:950}
.nav-dd:hover .nav-dd-menu{opacity:1;visibility:visible;transform:none}
.nav-dd-hd{font-size:9px;font-weight:700;letter-spacing:.32em;text-transform:uppercase;color:rgba(201,151,26,.55);padding:14px 20px 6px}
.nav-dd-menu a{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.62);padding:12px 20px;border-bottom:1px solid var(--ln-w);transition:all .2s}
.nav-dd-menu a:hover{color:var(--gold);background:rgba(201,151,26,.05);padding-left:26px}
.nav-dd-tag{background:var(--gold);color:#000;font-size:8px;font-weight:800;letter-spacing:.12em;padding:3px 8px;white-space:nowrap}

@media(max-width:880px){
  .topbar{display:none}
  .nav-burger{display:block}
  .nav-links{position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:#070707;border-bottom:1px solid var(--line);padding:6px 0;max-height:0;overflow:hidden;transition:max-height .35s ease}
  .nav-toggle:checked ~ .nav-links{max-height:560px}
  .nav-link{padding:15px var(--pad);border-bottom:1px solid var(--ln-w)}
  .nav-link.active::after{display:none}
  .nav-cta{margin:12px var(--pad)}
  .nav-dd-menu{position:static;opacity:1;visibility:visible;transform:none;border:none;border-top:none;background:#040404;min-width:0}
  .nav-dd-menu a{padding-left:calc(var(--pad) + 8px)}
}

/* ── HERO (home) ───────────────────────────────────────── */
.hero{position:relative;min-height:clamp(560px,90vh,920px);display:flex;align-items:center;overflow:hidden}
.hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:72% 18%}
.hero-scrim{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.95) 0%,rgba(0,0,0,.82) 32%,rgba(0,0,0,.34) 64%,rgba(0,0,0,.5) 100%),linear-gradient(0deg,rgba(0,0,0,.62),rgba(0,0,0,0) 38%)}
.hero-glow{position:absolute;right:-6%;top:42%;transform:translateY(-50%);width:560px;height:560px;border-radius:50%;background:radial-gradient(circle,rgba(201,151,26,.16),transparent 64%);pointer-events:none}
.hero-in{position:relative;z-index:2;max-width:var(--shell);margin:0 auto;padding:0 var(--pad);width:100%}
.hero-copy{max-width:680px}
.hero h1{font-family:var(--sans);font-weight:900;text-transform:uppercase;font-size:clamp(46px,8vw,104px);line-height:.9;letter-spacing:-.025em;margin:18px 0 0}
.hero h1 .script{display:block;font-family:var(--disp);font-style:italic;font-weight:500;text-transform:none;color:var(--gold);letter-spacing:-.01em;font-size:clamp(50px,8.6vw,112px);margin-top:2px}
.hero .subhead{font-size:clamp(15px,1.5vw,17px);font-weight:300;color:rgba(255,255,255,.72);line-height:1.78;max-width:480px;margin:26px 0 0}
.hero-btns{display:flex;flex-wrap:wrap;gap:14px;margin-top:38px}

/* ── STATS GOLD BAR ────────────────────────────────────── */
.stats{background:linear-gradient(100deg,var(--gold-dk),var(--gold) 34%,var(--gold-lt) 60%,var(--gold) 84%,var(--gold-dk))}
.stats-in{max-width:var(--shell);margin:0 auto;padding:34px var(--pad);display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:clamp(28px,5vw,72px)}
.stat{text-align:center;color:#000}
.stat b{display:block;font-family:var(--sans);font-weight:900;font-size:clamp(30px,3.6vw,42px);line-height:1}
.stat span{font-size:9.5px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:rgba(0,0,0,.56);margin-top:5px;display:block}
.stat-sep{width:1px;height:42px;background:rgba(0,0,0,.22)}
@media(max-width:680px){.stat-sep{display:none}}

/* ── PROGRAMS CARDS (home) ─────────────────────────────── */
.progs{background:var(--d1)}
.progs-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:60px}
.pc{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:480px;padding:38px 30px;overflow:hidden;background:var(--d3)}
.pc::before{content:"";position:absolute;inset:0;opacity:.9;transition:transform .6s cubic-bezier(.4,0,.2,1)}
.pc.p1::before{background:linear-gradient(160deg,#241200,#3c2200 55%,#1a0e00)}
.pc.p2::before{background:linear-gradient(160deg,#0c0c22,#241653 60%,#0a0a1c)}
.pc.p3::before{background:linear-gradient(160deg,#0a1c0f,#0d3320 60%,#08160d)}
.pc::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.94),rgba(0,0,0,.45) 48%,rgba(0,0,0,.1))}
.pc:hover::before{transform:scale(1.07)}
.pc-ic{position:absolute;top:34px;left:30px;z-index:2;width:48px;height:48px;border:1px solid rgba(201,151,26,.4);display:flex;align-items:center;justify-content:center;color:var(--gold);font-size:18px}
.pc-body{position:relative;z-index:2}
.pc-tag{font-size:9px;font-weight:700;letter-spacing:.26em;text-transform:uppercase;color:var(--gold)}
.pc h3{font-family:var(--sans);font-weight:900;text-transform:uppercase;font-size:clamp(20px,2.1vw,27px);line-height:1.04;margin:12px 0 12px}
.pc p{font-size:13px;font-weight:300;color:rgba(255,255,255,.5);line-height:1.7;margin-bottom:18px}
.pc .price{font-family:var(--disp);font-style:italic;font-size:28px;color:var(--gold);margin-bottom:18px}
.pc-link{display:inline-flex;align-items:center;gap:8px;font-size:10px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);padding-bottom:3px;border-bottom:1px solid rgba(201,151,26,.4);transition:gap .25s}
.pc:hover .pc-link{gap:14px}
@media(max-width:880px){.progs-grid{grid-template-columns:1fr}.pc{min-height:380px}}

/* ── CENTERED BAND ─────────────────────────────────────── */
.band{position:relative;background:var(--d3);text-align:center;overflow:hidden}
.band::before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:760px;height:760px;border-radius:50%;background:radial-gradient(circle,rgba(201,151,26,.08),transparent 64%);pointer-events:none}
.band-in{position:relative;z-index:2;max-width:860px;margin:0 auto}
.band h2{font-family:var(--sans);font-weight:800;text-transform:uppercase;font-size:clamp(28px,4vw,50px);line-height:1.08;letter-spacing:-.01em;margin:20px 0 22px}
.band .lede{font-family:var(--serif);font-style:italic;font-size:clamp(18px,2.1vw,23px);color:rgba(255,255,255,.55);line-height:1.6}
.band-btns{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;margin-top:40px}

/* ── EVENTS LIST (home) ────────────────────────────────── */
.events{background:var(--ink)}
.ev-list{margin-top:56px;border-top:1px solid var(--line)}
.ev{display:grid;grid-template-columns:92px 1fr auto auto;gap:clamp(20px,3vw,44px);align-items:center;padding:26px 6px;border-bottom:1px solid var(--ln-w);transition:background .25s,padding-left .25s}
.ev:hover{background:rgba(201,151,26,.04);padding-left:14px}
.ev-date{text-align:center}
.ev-date b{display:block;font-family:var(--sans);font-weight:900;font-size:46px;line-height:1;color:var(--gold)}
.ev-date span{font-size:9px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.34)}
.ev-info h4{font-family:var(--sans);font-weight:800;text-transform:uppercase;font-size:clamp(15px,1.7vw,19px);letter-spacing:.01em;margin-bottom:6px}
.ev-info p{font-size:10px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
.ev-type{font-size:9.5px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.3)}
@media(max-width:760px){.ev{grid-template-columns:74px 1fr}.ev-type,.ev .btn{display:none}.ev-date b{font-size:38px}}

/* ── BIO (home) ────────────────────────────────────────── */
.bio{background:var(--d1)}
.bio-in{max-width:var(--shell);margin:0 auto;display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(40px,6vw,84px);align-items:center}
.bio-photo{position:relative}
.bio-photo img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 18%}
.bio-photo::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,var(--gold-dk),var(--gold-lt))}
.bio-badges{display:grid;grid-template-columns:repeat(2,1fr);gap:4px;margin-top:4px}
.badge{background:var(--d3);padding:18px 14px;text-align:center}
.badge i{color:var(--gold);font-size:18px}
.badge p{font-size:9px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.4);margin-top:8px}
.bio-text h2{font-family:var(--sans);font-weight:800;text-transform:uppercase;font-size:clamp(26px,3.2vw,42px);line-height:1.06;letter-spacing:-.01em;margin:14px 0 6px}
.bio-text .sub{font-family:var(--serif);font-style:italic;font-size:clamp(18px,2vw,22px);color:rgba(255,255,255,.4);margin-bottom:22px}
.bio-text p{font-size:14px;font-weight:300;color:rgba(255,255,255,.6);line-height:1.85;margin-bottom:14px}
.bio-text p strong{color:#fff;font-weight:600}
.pull{font-family:var(--sans);font-weight:700;text-transform:uppercase;font-size:clamp(15px,1.7vw,19px);line-height:1.4;letter-spacing:.005em;color:#fff;margin:28px 0;padding-left:22px;border-left:2px solid var(--gold)}
.pull em{color:var(--gold);font-style:normal}
@media(max-width:880px){.bio-in{grid-template-columns:1fr;gap:40px}}

/* ── BOOKS (home strip) ────────────────────────────────── */
.books{background:var(--d2)}
.books-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(28px,4vw,52px);margin-top:64px}
.book{display:flex;flex-direction:column}
.book-cover{aspect-ratio:3/4;display:flex;flex-direction:column;justify-content:flex-end;padding:26px 22px;position:relative;overflow:hidden;box-shadow:0 24px 60px rgba(0,0,0,.5);margin-bottom:24px}
.book-cover.b1{background:linear-gradient(155deg,var(--gold-dk),#2a1700 70%,#0c0700)}
.book-cover.b2{background:linear-gradient(155deg,#0c0c1e,#231552 70%,#08081a)}
.book-cover.b3{background:linear-gradient(155deg,#0a1c0f,#0e3a22 70%,#07150d)}
.book-cover::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:rgba(0,0,0,.32)}
.book-cover .kicker{font-size:8.5px;font-weight:700;letter-spacing:.32em;text-transform:uppercase;color:var(--gold-pale);position:relative}
.book-cover .ttl{font-family:var(--disp);font-style:italic;font-weight:500;font-size:24px;line-height:1.16;color:#fff;margin-top:8px;position:relative}
.book-cover .auth{font-size:9px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.62);margin-top:12px;position:relative}
.book-badge{align-self:flex-start;background:var(--gold);color:#000;font-size:8.5px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;padding:5px 11px;margin-bottom:12px}
.book h3{font-family:var(--sans);font-weight:900;text-transform:uppercase;font-size:18px;letter-spacing:.01em;margin-bottom:10px}
.book .desc{font-size:13px;font-weight:300;color:rgba(255,255,255,.5);line-height:1.72;margin-bottom:18px;flex:1}
.book-btns{display:flex;gap:10px}
.book-btns a{flex:1;text-align:center;font-size:9.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;padding:12px 8px;border:1px solid;transition:all .2s}
.book-btns .more{border-color:rgba(255,255,255,.2);color:rgba(255,255,255,.55)}
.book-btns .more:hover{border-color:var(--gold);color:var(--gold)}
.book-btns .buy{border-color:var(--gold);background:var(--gold);color:#000}
.book-btns .buy:hover{background:var(--gold-lt);border-color:var(--gold-lt)}
@media(max-width:880px){.books-grid{grid-template-columns:1fr;max-width:420px;margin-left:auto;margin-right:auto}}

/* ── TESTIMONIALS ──────────────────────────────────────── */
.testi{background:var(--ink)}
.t-list{margin-top:56px}
.t-row{display:grid;grid-template-columns:240px 1fr;gap:clamp(32px,5vw,64px);align-items:start;padding:48px 0;border-top:1px solid var(--line)}
.t-row:last-child{border-bottom:1px solid var(--line)}
.t-av{width:62px;height:62px;border-radius:50%;background:linear-gradient(135deg,var(--gold-dk),var(--gold));display:flex;align-items:center;justify-content:center;font-family:var(--disp);font-style:italic;font-size:24px;color:#000;margin-bottom:14px}
.t-name{font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;margin-bottom:5px}
.t-role{font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
.t-res{display:inline-block;background:rgba(201,151,26,.12);border:1px solid rgba(201,151,26,.3);color:var(--gold);font-size:9px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:5px 10px;margin-top:12px}
.t-quote{font-family:var(--disp);font-style:italic;font-weight:400;font-size:clamp(19px,2.3vw,27px);line-height:1.5;color:rgba(255,255,255,.92)}
.t-quote .mark{color:var(--gold);font-size:1.1em;margin-right:4px}
@media(max-width:760px){.t-row{grid-template-columns:1fr;gap:20px;padding:36px 0}}

/* ── CLOSING GOLD CTA ──────────────────────────────────── */
.close-cta{background:linear-gradient(105deg,var(--gold-dk),var(--gold) 38%,var(--gold-lt) 62%,var(--gold) 86%,var(--gold-dk));text-align:center;padding:clamp(72px,9vw,116px) var(--pad)}
.close-cta .eyebrow{color:rgba(0,0,0,.5)}
.close-cta h2{font-family:var(--sans);font-weight:900;text-transform:uppercase;font-size:clamp(28px,4.4vw,58px);line-height:1.02;letter-spacing:-.01em;color:#000;margin-bottom:14px}
.close-cta p{font-family:var(--serif);font-style:italic;font-size:clamp(18px,2vw,22px);color:rgba(0,0,0,.52);margin-bottom:36px}
.close-cta .btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}

/* ── FOOTER ────────────────────────────────────────────── */
footer{background:var(--ink);border-top:1px solid var(--line)}
.ft{max-width:var(--shell);margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:clamp(32px,5vw,56px);padding:clamp(56px,7vw,88px) var(--pad) 48px}
.ft-brand .brand{margin-bottom:18px}
.ft-brand p{font-size:12.5px;font-weight:300;color:rgba(255,255,255,.4);line-height:1.85;max-width:300px;margin-bottom:22px}
.ft-soc{display:flex;gap:9px}
.ft-soc a{width:36px;height:36px;border:1px solid rgba(201,151,26,.22);display:flex;align-items:center;justify-content:center;font-size:13px;color:rgba(255,255,255,.4);transition:all .2s}
.ft-soc a:hover{border-color:var(--gold);color:var(--gold);transform:translateY(-2px)}
.ft-col h5{font-size:9px;font-weight:700;letter-spacing:.32em;text-transform:uppercase;color:var(--gold);margin-bottom:18px}
.ft-col a{display:block;font-size:12.5px;font-weight:300;color:rgba(255,255,255,.42);margin-bottom:11px;transition:color .2s}
.ft-col a:hover{color:var(--gold)}
.ft-bot{max-width:var(--shell);margin:0 auto;border-top:1px solid var(--ln-w);padding:22px var(--pad);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}
.ft-bot p{font-size:9px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.26)}
.ft-bot-links{display:flex;gap:22px}
.ft-bot-links a{font-size:9px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.26);transition:color .2s}
.ft-bot-links a:hover{color:var(--gold)}
@media(max-width:880px){.ft{grid-template-columns:1fr 1fr;gap:36px}.ft-brand{grid-column:1/-1}}
@media(max-width:520px){.ft{grid-template-columns:1fr}.ft-bot{flex-direction:column;text-align:center}}

/* ── INTERIOR PAGE HERO (generic) ──────────────────────── */
.page-hero{position:relative;min-height:56vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:clamp(80px,12vw,140px) var(--pad);overflow:hidden;background:var(--ink)}
.page-hero.tall{min-height:72vh}
.page-hero-glow{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:760px;height:760px;border-radius:50%;background:radial-gradient(circle,rgba(201,151,26,.09),transparent 64%);pointer-events:none}
.page-hero .inner{position:relative;z-index:2;max-width:820px}
.page-hero h1{font-family:var(--sans);font-weight:900;text-transform:uppercase;font-size:clamp(40px,6.5vw,90px);line-height:.9;letter-spacing:-.02em}
.page-hero h1 .script,.page-hero h1 em{display:block;font-family:var(--disp);font-style:italic;font-weight:500;text-transform:none;color:var(--gold);letter-spacing:-.01em}
.page-hero .lede{font-family:var(--serif);font-style:italic;font-size:clamp(18px,2vw,22px);color:rgba(255,255,255,.42);line-height:1.6;margin-top:20px;max-width:640px;margin-left:auto;margin-right:auto}
.page-hero .hero-cta{margin-top:36px;display:flex;gap:14px;justify-content:center;flex-wrap:wrap}

/* image hero (about) */
.img-hero{position:relative;min-height:78vh;display:flex;align-items:flex-end;overflow:hidden}
.img-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 22%}
.img-hero .scrim{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.92),rgba(0,0,0,.45) 52%,rgba(0,0,0,.2))}
.img-hero .inner{position:relative;z-index:2;max-width:var(--shell);margin:0 auto;padding:0 var(--pad) clamp(56px,8vw,88px);width:100%}
.img-hero h1{font-family:var(--sans);font-weight:900;text-transform:uppercase;font-size:clamp(46px,7.5vw,104px);line-height:.86;letter-spacing:-.025em;margin-top:16px}
.img-hero h1 em{display:block;font-family:var(--disp);font-style:italic;font-weight:500;text-transform:none;color:var(--gold)}

/* ── MISSION / SIGNATURE BLOCKS (about) ────────────────── */
.mission{position:relative;background:var(--d2);border-top:2px solid var(--gold);text-align:center;overflow:hidden}
.mission::before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:760px;height:760px;border-radius:50%;background:radial-gradient(circle,rgba(201,151,26,.07),transparent 64%);pointer-events:none}
.mission-in{position:relative;z-index:2;max-width:980px;margin:0 auto}
.mission q,.mission .q{display:block;font-family:var(--sans);font-weight:800;text-transform:uppercase;font-size:clamp(19px,2.7vw,33px);line-height:1.32;letter-spacing:.005em;quotes:none}
.mission .sig{font-family:var(--disp);font-style:italic;font-size:clamp(38px,5vw,72px);color:var(--gold);margin-top:22px}
.mission .tt{font-size:10px;font-weight:600;letter-spacing:.4em;text-transform:uppercase;color:rgba(255,255,255,.3);margin-top:8px}
.mission .est{font-size:10px;font-weight:700;letter-spacing:.34em;text-transform:uppercase;color:rgba(201,151,26,.45);margin-top:4px}

.signature{background:var(--ink);border-top:1px solid var(--line);text-align:center}
.signature .sig{font-family:var(--disp);font-style:italic;font-size:clamp(44px,6vw,86px);color:var(--gold)}
.signature .sline{width:120px;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);margin:16px auto}
.signature .tt{font-size:10px;font-weight:600;letter-spacing:.4em;text-transform:uppercase;color:rgba(255,255,255,.24)}

/* ── ABOUT STORY (sidebar + main) ──────────────────────── */
.story-in{max-width:var(--shell);margin:0 auto;display:grid;grid-template-columns:340px 1fr;gap:clamp(40px,6vw,72px);align-items:start}
.story-side{position:sticky;top:110px}
.story-side .sphoto{position:relative}
.story-side .sphoto img{width:100%;aspect-ratio:2/3;object-fit:cover}
.story-side .sphoto::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,var(--gold-dk),var(--gold-lt))}
.story-pull{border-left:2px solid var(--gold);padding:18px 22px;margin-top:22px;background:rgba(201,151,26,.04)}
.story-pull p{font-family:var(--disp);font-style:italic;font-size:17px;color:rgba(255,255,255,.6);line-height:1.6}
.story-main h2{font-family:var(--sans);font-weight:800;text-transform:uppercase;font-size:clamp(24px,3vw,38px);line-height:1.06;letter-spacing:-.01em;margin-bottom:8px}
.story-main h3{font-size:10px;font-weight:700;letter-spacing:.36em;text-transform:uppercase;color:var(--gold);margin:38px 0 14px}
.story-main p{font-size:14.5px;font-weight:300;color:rgba(255,255,255,.6);line-height:1.92;margin-bottom:15px}
.story-main p strong{color:#fff;font-weight:600}
.story-main p em{color:var(--gold);font-style:italic}
.story-q{font-family:var(--sans);font-weight:800;text-transform:uppercase;font-size:clamp(18px,2.2vw,27px);line-height:1.32;color:#fff;margin:36px 0;padding-left:22px;border-left:2px solid var(--gold)}
.story-q em{color:var(--gold);font-style:normal}
@media(max-width:880px){.story-in{grid-template-columns:1fr;gap:44px}.story-side{position:static}}

/* photo grid + achievements + video grid */
.photo-row{display:grid;grid-template-columns:repeat(3,1fr);gap:3px}
.photo-row .slot{aspect-ratio:3/4}
.ach{display:grid;grid-template-columns:repeat(4,1fr);gap:3px;max-width:var(--shell);margin:0 auto}
.ach-card{background:var(--d2);padding:34px 24px;text-align:center;transition:background .2s}
.ach-card:hover{background:var(--d3)}
.ach-card i{font-size:26px;color:var(--gold);margin-bottom:14px}
.ach-card h4{font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin-bottom:8px}
.ach-card p{font-size:12px;font-weight:300;color:rgba(255,255,255,.4);line-height:1.65}
@media(max-width:760px){.photo-row{grid-template-columns:1fr}.ach{grid-template-columns:repeat(2,1fr)}}

.vid-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:4px;margin-top:48px}
.vid{cursor:pointer}
.vid-thumb{aspect-ratio:16/9;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}
.vid-thumb::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.7),transparent 60%)}
.vid-play{position:relative;z-index:1;width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,var(--gold-dk),var(--gold));display:flex;align-items:center;justify-content:center;color:#000;font-size:20px;transition:transform .25s}
.vid:hover .vid-play{transform:scale(1.1)}
.vid-info{background:var(--d3);padding:22px 26px}
.vid-info h4{font-size:14px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;margin-bottom:5px}
.vid-info p{font-size:10px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}
@media(max-width:760px){.vid-grid{grid-template-columns:1fr}}

/* ── IMAGE / PHOTO PLACEHOLDER (drop real photo later) ─── */
.slot{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:repeating-linear-gradient(135deg,#121212,#121212 12px,#161616 12px,#161616 24px);border:1px solid var(--ln-w);overflow:hidden}
.slot.gold{background:repeating-linear-gradient(135deg,#1a1305,#1a1305 12px,#1f1608 12px,#1f1608 24px)}
.slot i{font-size:30px;color:rgba(201,151,26,.32)}
.slot span{font-family:var(--sans);font-size:9px;font-weight:600;letter-spacing:.28em;text-transform:uppercase;color:rgba(255,255,255,.3)}
.slot img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

/* ── PROGRAMS PAGE: offer cards + events grid ──────────── */
.offers{background:var(--d1)}
.offers-in{max-width:var(--shell);margin:0 auto;display:flex;flex-direction:column;gap:6px}
.offer{display:grid;grid-template-columns:1fr 2fr;border:1px solid var(--line);overflow:hidden;transition:border-color .3s}
.offer:hover{border-color:rgba(201,151,26,.35)}
.offer.rev .offer-media{order:2}
.offer-media{min-height:420px;position:relative}
.offer-body{background:var(--d2);padding:clamp(36px,4vw,56px);display:flex;flex-direction:column;justify-content:center}
.offer-tag{font-size:9px;font-weight:700;letter-spacing:.36em;text-transform:uppercase;color:var(--gold);margin-bottom:12px}
.offer-body h3{font-family:var(--sans);font-weight:900;text-transform:uppercase;font-size:clamp(22px,2.8vw,38px);line-height:1.02;margin-bottom:10px}
.offer-price{font-family:var(--disp);font-style:italic;font-size:clamp(28px,3.4vw,48px);color:var(--gold);margin-bottom:16px}
.offer-body>p{font-size:14px;font-weight:300;color:rgba(255,255,255,.5);line-height:1.82;margin-bottom:22px}
.offer-list{margin-bottom:30px}
.offer-list li{font-size:13px;font-weight:300;color:rgba(255,255,255,.62);padding:10px 0;border-bottom:1px solid var(--ln-w);display:flex;gap:11px;align-items:flex-start}
.offer-list li::before{content:"\2746";color:var(--gold);font-size:10px;margin-top:3px;flex-shrink:0}
@media(max-width:880px){.offer{grid-template-columns:1fr}.offer.rev .offer-media{order:0}.offer-media{min-height:240px}}

.evf-grid{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-top:56px}
.evf{background:var(--d2);padding:38px 34px;border-top:2px solid transparent;transition:all .3s}
.evf:hover{border-top-color:var(--gold);background:var(--d3);transform:translateY(-3px)}
.evf-tag{font-size:10px;font-weight:700;letter-spacing:.32em;text-transform:uppercase;color:var(--gold);margin-bottom:12px}
.evf h4{font-family:var(--sans);font-weight:900;text-transform:uppercase;font-size:clamp(16px,1.8vw,22px);line-height:1.2;margin-bottom:8px}
.evf-loc{font-size:10px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.3);margin-bottom:14px}
.evf p{font-size:13px;font-weight:300;color:rgba(255,255,255,.44);line-height:1.75;margin-bottom:22px}
@media(max-width:760px){.evf-grid{grid-template-columns:1fr}}

/* ── IMMERSION PAGE: split hero + price card + weeks ───── */
.imm-hero{position:relative;background:var(--ink);overflow:hidden;padding:clamp(80px,10vw,120px) 0}
.imm-glow{position:absolute;inset:0;background:radial-gradient(ellipse at 68% 50%,rgba(201,151,26,.1),transparent 55%),radial-gradient(ellipse at 18% 85%,rgba(201,151,26,.06),transparent 42%);pointer-events:none}
.imm-in{position:relative;z-index:2;max-width:var(--shell);margin:0 auto;padding:0 var(--pad);display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(40px,5vw,64px);align-items:center}
.imm-tag{display:inline-block;border:1px solid var(--gold);color:var(--gold);font-size:10px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;padding:8px 22px;margin-bottom:24px}
.imm-h1{font-family:var(--sans);font-weight:900;text-transform:uppercase;font-size:clamp(44px,5.5vw,84px);line-height:.88;letter-spacing:-.02em;margin-bottom:18px}
.imm-h1 em{display:block;font-family:var(--disp);font-style:italic;font-weight:500;text-transform:none;color:var(--gold)}
.imm-sub{font-size:14px;font-weight:300;color:rgba(255,255,255,.56);line-height:1.9;margin-bottom:34px}
.imm-card{background:var(--d2);border:1px solid rgba(201,151,26,.3);padding:clamp(32px,4vw,48px);position:relative;overflow:hidden}
.imm-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--gold-dk),var(--gold-lt),var(--gold-dk))}
.imm-card .lbl{font-size:10px;font-weight:700;letter-spacing:.36em;text-transform:uppercase;color:var(--gold);margin-bottom:8px}
.imm-card .price{font-family:var(--sans);font-weight:900;font-size:clamp(54px,7vw,84px);line-height:1}
.imm-card .note{font-size:11px;color:rgba(255,255,255,.4);margin:4px 0 26px}
.imm-card ul{margin-bottom:26px}
.imm-card li{font-size:13px;font-weight:300;color:rgba(255,255,255,.66);padding:9px 0;border-bottom:1px solid var(--ln-w);display:flex;gap:10px;align-items:flex-start;line-height:1.45}
.imm-card li::before{content:"\2746";color:var(--gold);font-size:9px;margin-top:3px;flex-shrink:0}
.spots{background:rgba(201,151,26,.1);border:1px solid rgba(201,151,26,.3);padding:11px 16px;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);text-align:center;margin-bottom:20px}
@media(max-width:880px){.imm-in{grid-template-columns:1fr}}

.weeks{background:var(--d2)}
.weeks-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin-top:56px}
.week{background:var(--d3);padding:36px 28px;border-top:2px solid var(--gold);transition:background .2s}
.week:hover{background:var(--d4)}
.week .n{font-size:10px;font-weight:700;letter-spacing:.36em;text-transform:uppercase;color:var(--gold);margin-bottom:10px}
.week h4{font-family:var(--sans);font-weight:900;text-transform:uppercase;font-size:18px;line-height:1.2;margin-bottom:10px}
.week p{font-size:13px;font-weight:300;color:rgba(255,255,255,.48);line-height:1.7}
@media(max-width:880px){.weeks-grid{grid-template-columns:1fr}}

/* ── FAQ (CSS-only accordion via <details>) ────────────── */
.faq{background:var(--ink)}
.faq-in{max-width:820px;margin:0 auto}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;font-size:15px;font-weight:600;color:#fff;padding:22px 0;display:flex;justify-content:space-between;align-items:center;gap:16px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:var(--gold);font-size:24px;font-weight:300;transition:transform .3s;flex-shrink:0}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq .ans{font-size:14px;font-weight:300;color:rgba(255,255,255,.5);line-height:1.88;padding:0 0 20px}

/* ── CONTACT FORM ──────────────────────────────────────── */
.contact-body{background:var(--d1)}
.contact-in{max-width:var(--shell);margin:0 auto;display:grid;grid-template-columns:1fr 1.5fr;gap:clamp(40px,6vw,80px)}
.contact-info h3{font-family:var(--sans);font-weight:900;text-transform:uppercase;font-size:clamp(20px,2.4vw,30px);letter-spacing:-.01em;margin-bottom:18px}
.contact-info>p{font-size:13.5px;font-weight:300;color:rgba(255,255,255,.5);line-height:1.88;margin-bottom:30px}
.contact-item{display:flex;align-items:flex-start;gap:16px;margin-bottom:22px}
.contact-item i{font-size:18px;color:var(--gold);margin-top:3px;flex-shrink:0}
.contact-item h5{font-size:9px;font-weight:700;letter-spacing:.32em;text-transform:uppercase;color:var(--gold);margin-bottom:5px}
.contact-item p{font-size:13.5px;color:rgba(255,255,255,.56)}
.form{display:grid;gap:12px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.field{background:var(--d3);border:1px solid rgba(201,151,26,.12);color:#fff;padding:15px 20px;font-family:var(--sans);font-size:13px;outline:none;transition:border-color .2s;width:100%}
.field::placeholder{color:rgba(255,255,255,.26);letter-spacing:.16em;font-size:10px;text-transform:uppercase}
.field:focus{border-color:var(--gold)}
textarea.field{min-height:130px;resize:vertical}
select.field{appearance:none;cursor:pointer}
.form .note{font-size:10px;color:rgba(255,255,255,.24);text-align:center;margin-top:6px}
@media(max-width:880px){.contact-in{grid-template-columns:1fr}.form-row{grid-template-columns:1fr}}

/* ── CARD GRID (blog / news / runway / fitness / merch) ── */
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}
.cards.c2{grid-template-columns:repeat(2,1fr)}
.cards.c4{grid-template-columns:repeat(4,1fr)}
.card{background:var(--d2);overflow:hidden;display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s}
.card:hover{transform:translateY(-4px);box-shadow:0 16px 44px rgba(201,151,26,.12)}
.card .thumb{aspect-ratio:16/10;position:relative}
.card.tall .thumb{aspect-ratio:3/4}
.card-badge{position:absolute;top:14px;left:14px;background:var(--gold);color:#000;font-size:8.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;padding:5px 11px;z-index:2}
.card-body{padding:26px 24px;display:flex;flex-direction:column;flex:1}
.card-cat{font-size:9px;font-weight:700;letter-spacing:.26em;text-transform:uppercase;color:var(--gold);margin-bottom:10px}
.card h4{font-family:var(--sans);font-weight:800;text-transform:uppercase;font-size:16px;line-height:1.18;letter-spacing:.01em;margin-bottom:10px}
.card h4.serif{font-family:var(--disp);font-weight:600;text-transform:none;font-style:italic;font-size:19px}
.card p{font-size:12.5px;font-weight:300;color:rgba(255,255,255,.48);line-height:1.65;margin-bottom:16px;flex:1}
.card-meta{display:flex;justify-content:space-between;font-size:9.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.3);margin-bottom:14px}
.card-link{font-size:10px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}
.card-price{font-family:var(--disp);font-style:italic;font-size:22px;color:var(--gold);margin-bottom:6px}
@media(max-width:880px){.cards,.cards.c4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.cards,.cards.c2,.cards.c4{grid-template-columns:1fr}}

/* featured row (blog/runway/events) */
.feat{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,5vw,64px);align-items:center;max-width:var(--shell);margin:0 auto}
.feat .media{min-height:420px;position:relative}
.feat-tag{font-size:9px;font-weight:700;letter-spacing:.32em;text-transform:uppercase;color:var(--gold);margin-bottom:14px;display:inline-block}
.feat h3{font-family:var(--sans);font-weight:900;text-transform:uppercase;font-size:clamp(26px,3.4vw,46px);line-height:1.02;letter-spacing:-.01em;margin-bottom:8px}
.feat h3.serif{font-family:var(--disp);font-weight:500;text-transform:none;font-style:italic}
.feat .meta{font-size:10px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.34);margin-bottom:16px}
.feat p{font-size:14px;font-weight:300;color:rgba(255,255,255,.55);line-height:1.8;margin-bottom:24px}
@media(max-width:880px){.feat{grid-template-columns:1fr}.feat .media{min-height:280px}}

/* filter chips */
.chips{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;align-items:center;padding:0 var(--pad) clamp(40px,5vw,60px)}
.chips .lbl{font-size:9px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.3);margin-right:6px}
.chip{font-size:10px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.6);padding:9px 18px;border:1px solid var(--ln-w);background:transparent;cursor:pointer;transition:all .2s}
.chip:hover,.chip.active{border-color:var(--gold);color:var(--gold)}

/* ── HOW-IT-WORKS STEPS / PILLARS (3-up) ───────────────── */
.three{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-top:56px}
.three-card{background:var(--d3);padding:40px 32px;text-align:center}
.three-card i{font-size:30px;color:var(--gold);margin-bottom:18px}
.three-card h4{font-family:var(--sans);font-weight:800;text-transform:uppercase;font-size:18px;letter-spacing:.02em;margin-bottom:12px}
.three-card p{font-size:13px;font-weight:300;color:rgba(255,255,255,.5);line-height:1.72;margin-bottom:18px}
@media(max-width:880px){.three{grid-template-columns:1fr}}

/* chapters city grid */
.cities{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}
.city{background:var(--d3);padding:24px 20px;transition:background .2s}
.city:hover{background:var(--d4)}
.city .flag{font-size:22px;margin-bottom:10px}
.city h5{font-size:13px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;margin-bottom:4px}
.city p{font-size:10px;font-weight:300;color:rgba(255,255,255,.36);margin-bottom:12px}
.status{display:inline-block;font-size:8.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:4px 9px}
.status.active{background:rgba(46,160,67,.16);color:#4ec06b;border:1px solid rgba(46,160,67,.4)}
.status.forming{background:rgba(201,151,26,.12);color:var(--gold);border:1px solid rgba(201,151,26,.35)}
.status.soon{background:rgba(255,255,255,.05);color:rgba(255,255,255,.4);border:1px solid var(--ln-w)}
.region-label{font-size:10px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:var(--gold);margin:36px 0 18px}
@media(max-width:880px){.cities{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.cities{grid-template-columns:1fr}}

/* two-up form boxes */
.form-boxes{display:grid;grid-template-columns:1fr 1fr;gap:5px;max-width:var(--shell);margin:0 auto}
.form-box{background:var(--d2);padding:clamp(32px,4vw,48px)}
.form-box h3{font-family:var(--sans);font-weight:900;text-transform:uppercase;font-size:clamp(20px,2.2vw,26px);margin-bottom:10px}
.form-box>p{font-size:13px;font-weight:300;color:rgba(255,255,255,.46);line-height:1.7;margin-bottom:24px}
@media(max-width:880px){.form-boxes{grid-template-columns:1fr}}

/* events page: region groups + city cards */
.region{margin-top:clamp(48px,6vw,72px)}
.region-hd{display:flex;align-items:center;gap:18px;margin-bottom:24px;padding-bottom:18px;border-bottom:1px solid var(--line)}
.region-hd .flag{font-size:30px}
.region-hd h3{font-family:var(--sans);font-weight:900;text-transform:uppercase;font-size:clamp(18px,2.2vw,26px);letter-spacing:.01em}
.region-hd p{font-size:10px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-top:4px}
.tour-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}
.tour-card{background:var(--d3);padding:22px 20px;transition:all .25s;border-top:2px solid transparent}
.tour-card:hover{background:var(--d4);border-top-color:var(--gold)}
.tour-card .date{font-size:9.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:8px}
.tour-card h5{font-size:14px;font-weight:800;letter-spacing:.02em;text-transform:uppercase;margin-bottom:4px}
.tour-card .venue{font-size:10.5px;font-weight:300;color:rgba(255,255,255,.4);margin-bottom:12px}
.tour-card .reg{font-size:9px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}
@media(max-width:880px){.tour-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.tour-grid{grid-template-columns:1fr}}

.detail-line{display:flex;align-items:center;gap:14px;padding:10px 0;border-bottom:1px solid var(--ln-w)}
.detail-line i{color:var(--gold);font-size:15px;width:22px;text-align:center;flex-shrink:0}
.detail-line span{font-size:13.5px;font-weight:300;color:rgba(255,255,255,.62)}

/* newsletter inline (gold cta) */
.nl{display:flex;max-width:500px;margin:0 auto}
.nl input{flex:1;background:rgba(0,0,0,.15);border:none;border-bottom:2px solid rgba(0,0,0,.3);color:#000;padding:15px 20px;font-family:var(--sans);font-size:12px;letter-spacing:.06em;outline:none}
.nl input::placeholder{color:rgba(0,0,0,.5);text-transform:uppercase;letter-spacing:.16em;font-size:10px}
.nl button{background:#000;color:var(--gold);border:none;padding:15px 28px;font-size:10px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;cursor:pointer}

/* press kit / centered prose block */
.prose{max-width:760px;margin:0 auto;text-align:center}
.prose h3{font-family:var(--sans);font-weight:900;text-transform:uppercase;font-size:clamp(22px,2.6vw,34px);letter-spacing:-.01em;margin-bottom:16px}
.prose p{font-size:14.5px;font-weight:300;color:rgba(255,255,255,.55);line-height:1.85;margin-bottom:14px}
.prose .btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:12px}

.media-label{font-size:10px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:var(--gold);margin:48px 0 20px;display:flex;align-items:center;gap:10px}
.media-label:first-child{margin-top:0}

/* ── ANNOUNCEMENT BAR ──────────────────────────────────── */
.announce{background:linear-gradient(100deg,var(--gold-dk),var(--gold) 50%,var(--gold-lt))}
.announce a{display:flex;align-items:center;justify-content:center;gap:11px;flex-wrap:wrap;padding:11px 20px;font-family:var(--sans);font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#000;text-align:center}
.announce .new{background:#000;color:var(--gold);font-size:9px;font-weight:800;letter-spacing:.18em;padding:3px 9px}
.announce em{font-family:var(--serif);font-style:italic;font-weight:400;text-transform:none;letter-spacing:0;font-size:14px;color:rgba(0,0,0,.72)}
.announce i{transition:transform .25s}
.announce a:hover i{transform:translateX(4px)}
@media(max-width:600px){.announce em{display:none}}

/* ── BOOK LANDING: format chips ────────────────────────── */
.buy-panel{max-width:540px;margin:0 auto;background:var(--d2);border:1px solid rgba(201,151,26,.3);padding:clamp(32px,4vw,48px);position:relative;overflow:hidden;text-align:center}
.buy-panel::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--gold-dk),var(--gold-lt),var(--gold-dk))}
.buy-panel .lbl{font-size:10px;font-weight:700;letter-spacing:.36em;text-transform:uppercase;color:var(--gold);margin-bottom:14px}
.formats{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin:20px 0 26px}
.format{border:1px solid var(--ln-w);color:rgba(255,255,255,.7);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:10px 16px}
