/* Real Moms. Real Talk. — tokens from Brand Guidelines v1.0 (p.15) */
:root{
  --espresso:#3A1A0F; --rust:#C3460E; --ink:#120C09; --gold:#D9A048; --cream:#FEF5E4;
  --cocoa:#965A36; --copper:#C98352; --mocha:#5E3320; --latte:#D8BFA2; --sand:#F1E4D0; --ember:#E2753C;
  --logo-bg:#462515;
  --font-display:"Playfair Display",Georgia,serif; --font-accent:"Yellowtail",cursive; --font-body:"DM Sans",Arial,sans-serif;
  --ease-settle:cubic-bezier(.22,1,.36,1); --ease-lamp:cubic-bezier(.65,0,.35,1); --ease-nudge:cubic-bezier(.34,1.56,.64,1);
  --r-sm:8px; --r-md:16px; --pad:clamp(20px,5vw,72px);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:90px}
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
body{margin:0;background:var(--espresso);color:var(--cream);font:400 clamp(16px,1.05vw,18px)/1.6 var(--font-body);overflow-x:clip;-webkit-font-smoothing:antialiased}
body.is-loading{overflow:hidden}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
button{font:inherit;color:inherit}
em{font-style:italic}
.wrap{width:100%;max-width:1440px;margin-inline:auto;padding-inline:var(--pad)}
.sr,.skip:not(:focus){position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip:focus{position:fixed;top:12px;left:12px;z-index:200;background:var(--cream);color:var(--ink);padding:10px 16px;border-radius:var(--r-sm)}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px}

/* type */
.display,.h1,h2,h3{font-family:var(--font-display);font-weight:700;letter-spacing:-.005em;margin:0;overflow:visible}
.display{font-weight:900;line-height:1;padding-bottom:.18em}
.h1{font-size:clamp(34px,4.6vw,72px);line-height:1.05;padding-bottom:.12em}
.h1 em,.display em{font-weight:400;color:var(--gold)}
.eyebrow{font:700 12px/1.2 var(--font-body);letter-spacing:.22em;text-transform:uppercase;color:var(--gold);margin:0 0 20px;display:flex;align-items:center;gap:12px}
.eyebrow::before{content:"";width:28px;height:1px;background:var(--gold)}
.script{font-family:var(--font-accent);font-weight:400;color:var(--copper);line-height:1.1;margin:0}
.sec-head{max-width:880px;margin-bottom:clamp(40px,6vw,80px)}
.sec-head--row{max-width:none;display:flex;justify-content:space-between;align-items:flex-end;gap:32px;flex-wrap:wrap}
.sec-head__sub{color:var(--latte);max-width:620px;margin:20px 0 0;font-size:1.08em}
section{position:relative}

/* buttons */
.btn{--bg:transparent;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 28px;border-radius:999px;font:700 13px/1 var(--font-body);letter-spacing:.14em;text-transform:uppercase;text-decoration:none;border:1px solid transparent;cursor:pointer;position:relative;overflow:hidden;isolation:isolate;transition:transform .5s var(--ease-settle),color .3s,border-color .3s,background-color .3s}
.btn span{position:relative;z-index:1}
.btn::after{content:"";position:absolute;inset:0;z-index:0;background:var(--cream);border-radius:inherit;transform:translateY(101%);transition:transform .5s var(--ease-settle)}
.btn:hover::after{transform:none}
.btn--rust{background:var(--rust);color:var(--cream)}
.btn--rust:hover{color:var(--espresso)}
.btn--ghost{border-color:rgba(217,160,72,.6);color:var(--cream)}
.btn--ghost:hover{color:var(--espresso);border-color:var(--cream)}
.btn--sm{min-height:42px;padding:0 20px;font-size:11px}

/* gold frame motif */
.frame{border:1.5px solid var(--gold);border-radius:var(--r-md);padding:8px;background:transparent}
.frame img{border-radius:10px;width:100%}

/* ON AIR pill */
.onair{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border-radius:999px;border:1px solid rgba(254,245,228,.25);font:700 11px/1 var(--font-body);letter-spacing:.24em;text-transform:uppercase;color:rgba(254,245,228,.45);transition:color .4s,border-color .4s,background-color .4s,box-shadow .4s}
.onair b{width:8px;height:8px;border-radius:50%;background:rgba(254,245,228,.25);transition:background-color .4s,box-shadow .4s}
.onair.is-live{color:var(--cream);background:var(--rust);border-color:var(--rust);box-shadow:0 0 0 6px rgba(195,70,14,.18),0 0 40px rgba(226,117,60,.35)}
.onair.is-live b{background:var(--cream);animation:blink 1.4s infinite}
@keyframes blink{50%{opacity:.25}}

/* grain */
.grain{position:fixed;inset:-50%;z-index:90;pointer-events:none;opacity:.07;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:grain 1s steps(4) infinite}
@keyframes grain{25%{transform:translate(-3%,2%)}50%{transform:translate(2%,-3%)}75%{transform:translate(-1%,3%)}}

/* ================= LOADER ================= */
.loader{position:fixed;inset:0;z-index:150;display:grid;place-items:center;color:var(--gold)}
.loader__curtain{position:absolute;top:0;bottom:0;width:50.5%;background:var(--ink)}
.loader__curtain--l{left:0}.loader__curtain--r{right:0}
.loader__stage{position:relative;display:flex;flex-direction:column;align-items:center;gap:22px;text-align:center;padding:24px}
.loader__mic{width:clamp(78px,9vw,110px);height:auto;overflow:visible}
.loader__mic .crown{color:var(--gold)}
.loader__mic .mic{color:var(--copper)}
.loader__line{font:400 clamp(28px,4vw,48px)/1.1 var(--font-display);font-style:italic;color:var(--cream);margin:0;padding-bottom:.12em}
.loader__line span{display:inline-block}
.loader__meter{display:flex;gap:5px;align-items:flex-end;height:34px}
.loader__meter i{width:5px;height:100%;border-radius:3px;background:var(--rust);transform-origin:bottom;transform:scaleY(.12)}
.loader__meter i:nth-child(n+8){background:var(--ember)}
.loader__meter i:nth-child(n+11){background:var(--gold)}
.loader__foot{display:flex;align-items:center;gap:22px}
.loader__count{font:700 12px/1 var(--font-body);letter-spacing:.2em;color:var(--latte);min-width:48px;text-align:left}
.loader.is-done{pointer-events:none}

/* ================= CURSOR ================= */
.cursor{position:fixed;left:0;top:0;z-index:120;pointer-events:none;display:none}
.cursor__dot{position:absolute;width:10px;height:10px;margin:-5px 0 0 -5px;border-radius:50%;background:var(--ember);transition:transform .4s var(--ease-settle),background-color .3s}
.cursor__label{position:absolute;transform:translate(-50%,-50%) scale(0);width:84px;height:84px;border-radius:50%;background:var(--rust);color:var(--cream);display:grid;place-items:center;font:700 11px/1 var(--font-body);letter-spacing:.2em;text-transform:uppercase;transition:transform .45s var(--ease-settle)}
.cursor.is-link .cursor__dot{transform:scale(3.4);background:rgba(217,160,72,.35)}
.cursor.is-play .cursor__dot{transform:scale(0)}
.cursor.is-play .cursor__label{transform:translate(-50%,-50%) scale(1)}
@media (hover:hover) and (pointer:fine){.cursor{display:block}}

/* ================= NAV ================= */
.nav{position:fixed;top:14px;left:50%;z-index:100;width:min(1400px,calc(100% - 28px));transform:translateX(-50%);display:flex;align-items:center;gap:24px;padding:8px 8px 8px 14px;border-radius:999px;background:rgba(58,26,15,.55);backdrop-filter:blur(14px) saturate(1.2);-webkit-backdrop-filter:blur(14px) saturate(1.2);border:1px solid rgba(217,160,72,.18);transition:transform .6s var(--ease-settle),background-color .4s}
.nav.is-hidden{transform:translate(-50%,-140%)}
.nav.is-solid{background:rgba(70,37,21,.92)}
.nav__logo{display:block;width:clamp(130px,11vw,168px);flex:none;border-radius:999px;overflow:hidden;background:var(--logo-bg)}
.nav__logo img{width:100%}
.nav__links{display:flex;gap:clamp(16px,2.2vw,36px);margin-left:auto;margin-right:12px}
.nav__links a{font:500 14px/1 var(--font-body);text-decoration:none;color:var(--latte);position:relative;padding:8px 0;transition:color .3s}
.nav__links a::after{content:"";position:absolute;left:0;right:0;bottom:2px;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:right;transition:transform .45s var(--ease-settle)}
.nav__links a:hover{color:var(--cream)}
.nav__links a:hover::after{transform:scaleX(1);transform-origin:left}
.nav__burger{display:none;width:46px;height:46px;border-radius:50%;border:1px solid rgba(217,160,72,.4);background:transparent;cursor:pointer;position:relative;flex:none}
.nav__burger span{position:absolute;left:14px;right:14px;height:1.5px;background:var(--cream);transition:transform .4s var(--ease-settle)}
.nav__burger span:first-child{top:19px}.nav__burger span:last-child{top:26px}
.nav__burger[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}
.nav__burger[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
.menu{position:fixed;inset:0;z-index:99;background:var(--ink);display:flex;flex-direction:column;justify-content:center;gap:10px;padding:100px var(--pad) 40px}
.menu[hidden]{display:none}
.menu a{font:700 clamp(36px,9vw,64px)/1.15 var(--font-display);text-decoration:none;color:var(--cream);padding-bottom:.08em}
.menu__script{font:400 32px/1 var(--font-accent);color:var(--copper);margin-top:24px}

/* ================= HERO ================= */
.hero{min-height:100dvh;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;padding-top:110px}
.hero__media{position:absolute;inset:-6% 0 0;z-index:0}
.hero__media img{width:100%;height:100%;object-fit:cover;object-position:50% 40%}
.hero__shade{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(18,12,9,.86) 0%,rgba(18,12,9,.55) 42%,rgba(18,12,9,.05) 75%),linear-gradient(0deg,rgba(58,26,15,1) 0%,rgba(58,26,15,0) 32%)}
.hero__inner{position:relative;z-index:2;padding-bottom:clamp(28px,4vw,48px)}
.hero__title{font-size:clamp(56px,9.6vw,168px);position:relative;display:inline-block;margin:0}
.hero__title .line{display:block;overflow:visible}
.hero__title .line>span{display:inline-block}
.hero__script{position:absolute;right:-.2em;bottom:-.04em;font-size:.62em;color:var(--copper);transform:rotate(-6deg);transform-origin:left bottom;white-space:nowrap}
.hero__sub{max-width:520px;color:var(--sand);font-size:clamp(17px,1.3vw,20px);margin:clamp(20px,2.4vw,32px) 0 30px}
.hero__ctas{display:flex;flex-wrap:wrap;gap:12px}
.hero__stats{position:relative;z-index:2;list-style:none;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(217,160,72,.35);padding-top:22px;padding-bottom:30px}
.hero__stats li{display:flex;flex-direction:column;gap:4px;padding-right:16px}
.hero__stats b{font:700 clamp(26px,2.6vw,40px)/1 var(--font-display);color:var(--cream)}
.hero__stats span{font:500 12px/1.3 var(--font-body);letter-spacing:.12em;text-transform:uppercase;color:var(--latte)}
.hero__scroll{position:absolute;z-index:2;right:var(--pad);bottom:120px;width:28px;height:46px;border:1px solid rgba(217,160,72,.6);border-radius:16px}
.hero__scroll span{position:absolute;left:50%;top:9px;width:3px;height:8px;margin-left:-1.5px;border-radius:2px;background:var(--gold);animation:scrolly 1.8s var(--ease-settle) infinite}
@keyframes scrolly{0%{transform:translateY(0);opacity:1}80%{transform:translateY(16px);opacity:0}100%{opacity:0}}

/* ================= TICKER ================= */
.ticker{overflow:hidden;background:var(--rust);color:var(--cream);padding:18px 0;transform:rotate(-1.2deg) scale(1.02);margin:10px 0}
.ticker__track{display:flex;gap:28px;width:max-content;align-items:center;white-space:nowrap;will-change:transform}
.ticker span{font:400 clamp(26px,3vw,44px)/1 var(--font-display);font-style:italic;padding-bottom:.12em}
.ticker i{font-style:normal;color:var(--gold);font-size:20px}

/* ================= MANIFESTO ================= */
.manifesto{padding-block:clamp(100px,14vw,200px)}
.manifesto__text{font:400 clamp(28px,3.8vw,60px)/1.2 var(--font-display);margin:0;max-width:1240px;padding-bottom:.12em}
.manifesto__text .w{color:rgba(254,245,228,.16);transition:color .25s}
.manifesto__text .w.is-on{color:var(--cream)}
.manifesto__text em .w.is-on,.manifesto__text .w em{color:var(--gold)}
.manifesto__sign{font-size:clamp(34px,3.6vw,56px);margin-top:28px;text-align:right;max-width:1240px}

/* ================= HOSTS ================= */
.hosts{padding-block:clamp(60px,8vw,120px);background:var(--ink)}
.hosts__photo{margin:0 0 clamp(40px,5vw,64px)}
.hosts__photo figcaption{font:700 11px/1 var(--font-body);letter-spacing:.22em;text-transform:uppercase;color:var(--latte);padding:14px 6px 4px}
.hosts__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,2vw,28px)}
.host{background:var(--espresso);border:1px solid rgba(217,160,72,.22);border-radius:var(--r-md);padding:clamp(24px,2.6vw,40px);position:relative;overflow:hidden;transition:transform .6s var(--ease-settle),border-color .4s}
.host::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:var(--rust);transform:scaleX(0);transform-origin:left;transition:transform .6s var(--ease-settle)}
.host:hover{transform:translateY(-6px);border-color:rgba(217,160,72,.6)}
.host:hover::before{transform:scaleX(1)}
.host__num{font:700 12px/1 var(--font-body);letter-spacing:.2em;color:var(--gold);margin:0 0 28px}
.host__name{font:900 clamp(44px,4.4vw,72px)/1 var(--font-display);padding-bottom:.12em}
.host__role{font:700 12px/1.4 var(--font-body);letter-spacing:.18em;text-transform:uppercase;color:var(--ember);margin:10px 0 18px}
.host__bio{color:var(--sand);margin:0 0 22px}
.host__tag{font-size:30px}

/* ================= CITIES ================= */
.cities{height:240vh;background:var(--ink)}
.cities__sticky{position:sticky;top:0;height:100dvh;overflow:hidden}
.cities__img{position:absolute;inset:0;margin:0}
.cities__img img{width:100%;height:100%;object-fit:cover}
.cities__img--b{clip-path:inset(0 0 0 100%)}
.cities__shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(18,12,9,.9) 0%,rgba(18,12,9,.25) 55%,rgba(18,12,9,.35) 100%)}
.cities__copy{position:absolute;left:0;right:0;bottom:clamp(48px,8vh,96px)}
.cities__title{font-size:clamp(48px,8vw,136px);position:relative;display:grid}
.cities__t{grid-area:1/1;display:block}
.cities__t--b{opacity:0}
.cities__sub{max-width:560px;color:var(--sand);margin:16px 0 0;font-size:clamp(17px,1.3vw,20px)}
.cities__progress{position:absolute;right:var(--pad);top:50%;width:2px;height:120px;background:rgba(254,245,228,.2);transform:translateY(-50%)}
.cities__progress span{display:block;width:100%;height:100%;background:var(--gold);transform-origin:top;transform:scaleY(0)}

/* ================= CLOCK ================= */
.clock{padding-block:clamp(90px,12vw,170px)}
.clock__face{width:clamp(90px,10vw,140px);flex:none}
.clock__face svg{width:100%;overflow:visible}
.clock__face circle:first-child{fill:none;stroke:var(--gold);stroke-width:1.2}
.clock__face .ticks line{stroke:var(--latte);stroke-width:1}
.clock__face .hand{stroke:var(--cream);stroke-linecap:round;transform-origin:50px 50px}
.clock__face .hand--h{stroke-width:3}.clock__face .hand--m{stroke-width:1.8;stroke:var(--ember)}
.clock__face .pin{fill:var(--gold)}
.moments{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(14px,1.6vw,24px);align-items:start}
.moment{margin:0}
.moment:nth-child(even){margin-top:clamp(40px,6vw,96px)}
.moment__img{overflow:hidden}
.moment__img img{aspect-ratio:4/5;object-fit:cover;transition:transform 1.2s var(--ease-settle)}
.moment:hover .moment__img img{transform:scale(1.05)}
.moment figcaption{padding:16px 4px 0;color:var(--sand)}
.moment figcaption b{display:block;font:700 clamp(24px,2vw,32px)/1.1 var(--font-display);color:var(--gold);margin-bottom:6px}

/* ================= EPISODES ================= */
.episodes{padding-block:clamp(90px,12vw,170px);background:var(--cream);color:var(--ink)}
.episodes .eyebrow{color:var(--rust)}.episodes .eyebrow::before{background:var(--rust)}
.episodes .h1 em{color:var(--rust)}
.episodes .btn--ghost{color:var(--espresso);border-color:var(--espresso)}
.episodes .btn--ghost::after{background:var(--espresso)}
.episodes .btn--ghost:hover{color:var(--cream)}
.eplist{list-style:none;margin:0;padding:0;border-top:1px solid rgba(58,26,15,.25)}
.ep a{display:grid;grid-template-columns:90px 1fr auto 40px;align-items:center;gap:24px;padding:clamp(22px,2.4vw,34px) 0;border-bottom:1px solid rgba(58,26,15,.25);text-decoration:none;position:relative}
.ep a::before{content:"";position:absolute;inset:0;background:var(--sand);transform:scaleY(0);transform-origin:bottom;transition:transform .5s var(--ease-settle);z-index:0}
.ep a:hover::before,.ep a:focus-visible::before{transform:scaleY(1)}
.ep a>*{position:relative;z-index:1}
.ep__n{font:900 clamp(30px,3vw,48px)/1 var(--font-display);color:var(--rust);padding-bottom:.1em}
.ep__t{font:700 clamp(20px,2.1vw,34px)/1.18 var(--font-display);margin:0;padding-bottom:.1em;transition:transform .5s var(--ease-settle)}
.ep a:hover .ep__t{transform:translateX(10px)}
.ep__tag{display:inline-block;font:700 11px/1 var(--font-body);letter-spacing:.18em;text-transform:uppercase;color:var(--cream);background:var(--rust);padding:6px 10px;border-radius:999px;margin-bottom:10px}
.ep__v{font:500 13px/1 var(--font-body);letter-spacing:.14em;text-transform:uppercase;color:var(--cocoa);white-space:nowrap}
.ep__arrow{width:40px;height:40px;border-radius:50%;border:1px solid var(--espresso);display:grid;place-items:center;transition:background-color .3s,color .3s,transform .5s var(--ease-settle)}
.ep a:hover .ep__arrow{background:var(--rust);border-color:var(--rust);color:var(--cream);transform:rotate(-45deg)}
.ep__thumb{display:none}
.ephover{position:fixed;left:0;top:0;width:340px;aspect-ratio:16/9;pointer-events:none;z-index:50;border-radius:12px;overflow:hidden;opacity:0;transform:translate(-50%,-50%) scale(.6);border:2px solid var(--gold)}
.ephover img{width:100%;height:100%;object-fit:cover}

/* ================= CHAIR ================= */
.chair{padding-block:clamp(90px,12vw,170px);overflow:hidden}
.chair__bg{position:absolute;inset:0;z-index:0}
.chair__bg img{position:absolute;right:0;top:0;height:100%;width:auto;max-width:none;opacity:.35;mask-image:linear-gradient(90deg,transparent,#000 50%)}
.chair__inner{position:relative;z-index:1;display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(32px,5vw,80px);align-items:center}
.chair__sub{color:var(--sand);margin:20px 0 28px;font-size:1.08em}
.chips{display:flex;flex-wrap:wrap;gap:10px}
.chip{min-height:46px;padding:0 20px;border-radius:999px;border:1px solid rgba(217,160,72,.45);background:rgba(18,12,9,.35);cursor:pointer;font:500 15px/1 var(--font-body);color:var(--cream);transition:transform .45s var(--ease-nudge),background-color .3s,border-color .3s,color .3s}
.chip:hover{transform:translateY(-3px);border-color:var(--gold)}
.chip[aria-pressed=true]{background:var(--rust);border-color:var(--rust)}
.chair__card{background:rgba(18,12,9,.72);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1.5px solid var(--gold);border-radius:20px;padding:clamp(20px,2.4vw,32px);min-height:430px;display:flex;flex-direction:column}
.chair__top{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}
.chair__hint{font:700 11px/1 var(--font-body);letter-spacing:.2em;text-transform:uppercase;color:var(--latte)}
.chair__result{flex:1;display:flex;flex-direction:column;justify-content:center}
.chair__wait{font-size:clamp(40px,4vw,60px);text-align:center}
.match__img{border-radius:12px;overflow:hidden;aspect-ratio:16/9;margin-bottom:18px;background:var(--mocha)}
.match__img img{width:100%;height:100%;object-fit:cover}
.match__k{font:700 11px/1 var(--font-body);letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin:0 0 10px}
.match__t{font:700 clamp(22px,2vw,30px)/1.2 var(--font-display);margin:0 0 10px;padding-bottom:.08em}
.match__note{color:var(--sand);margin:0 0 20px}

/* ================= GUILT ================= */
.guilt{padding-block:clamp(90px,12vw,170px);background:var(--sand);color:var(--espresso)}
.guilt .eyebrow{color:var(--rust)}.guilt .eyebrow::before{background:var(--rust)}
.guilt .h1 em{color:var(--rust)}
.guilt__inner{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(32px,6vw,96px);align-items:start}
.guilt__sub{color:var(--mocha);margin:20px 0 28px;max-width:460px}
.guilt__count{font:700 13px/1 var(--font-body);letter-spacing:.18em;text-transform:uppercase;color:var(--rust)}
.guilt__count span{font:900 44px/1 var(--font-display);letter-spacing:0;margin-right:6px;vertical-align:-6px}
.guilt__list{list-style:none;margin:0;padding:0}
.guilt__list li{border-bottom:1px solid rgba(58,26,15,.2)}
.guilt__list button{display:flex;gap:20px;align-items:flex-start;width:100%;text-align:left;background:none;border:0;padding:24px 0;cursor:pointer;color:var(--espresso)}
.guilt__list i{flex:none;width:30px;height:30px;border-radius:50%;border:1.5px solid var(--rust);position:relative;margin-top:2px;transition:background-color .3s}
.guilt__list i::after{content:"";position:absolute;left:9px;top:5px;width:8px;height:13px;border:solid var(--cream);border-width:0 2.5px 2.5px 0;transform:rotate(45deg) scale(0);transition:transform .45s var(--ease-nudge)}
.guilt__list span{font-size:clamp(17px,1.3vw,20px);color:var(--mocha);position:relative}
.guilt__list b{font:700 clamp(22px,2vw,30px)/1.2 var(--font-display);color:var(--espresso);display:block;margin-bottom:4px;background:linear-gradient(var(--rust),var(--rust)) left 58%/0 2px no-repeat;transition:background-size .6s var(--ease-settle),color .4s}
.guilt__list .is-done i{background:var(--rust)}
.guilt__list .is-done i::after{transform:rotate(45deg) scale(1)}
.guilt__list .is-done b{background-size:100% 2px;color:var(--cocoa)}

/* ================= RESET ================= */
.reset{padding-block:clamp(90px,12vw,170px)}
.reset__inner{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(32px,6vw,96px);align-items:center}
.reset__book{aspect-ratio:3/4;background:var(--cream);color:var(--espresso);border-radius:6px 18px 18px 6px;padding:clamp(26px,3vw,44px);display:flex;flex-direction:column;box-shadow:inset 10px 0 0 var(--rust),0 40px 80px -30px rgba(0,0,0,.6);transform:rotate(-3deg);transition:transform .8s var(--ease-settle)}
.reset__cover:hover .reset__book{transform:rotate(0) translateY(-8px)}
.reset__book .eyebrow{color:var(--rust)}.reset__book .eyebrow::before{background:var(--rust)}
.reset__title{font:900 clamp(36px,3.8vw,60px)/1 var(--font-display);margin:0 0 24px;padding-bottom:.12em}
.reset__title em{color:var(--rust);font-weight:400}
.reset__book ul{list-style:none;margin:0;padding:0;border-top:1px solid var(--gold)}
.reset__book li{padding:10px 0;border-bottom:1px solid rgba(217,160,72,.5);font:700 12px/1.2 var(--font-body);letter-spacing:.16em;text-transform:uppercase}
.reset__book .script{margin-top:auto;font-size:clamp(26px,2.4vw,36px)}
.reset__copy>p{color:var(--sand);font-size:1.08em;margin:22px 0 30px;max-width:600px}
.reset__form{display:flex;flex-wrap:wrap;gap:12px;max-width:600px}
.reset__form input{flex:1 1 260px;min-height:56px;padding:0 24px;border-radius:999px;border:1px solid rgba(217,160,72,.5);background:rgba(18,12,9,.35);color:var(--cream);font:400 16px var(--font-body)}
.reset__form input::placeholder{color:var(--latte)}
.reset__form .btn{min-height:56px}
.reset__note{flex-basis:100%;margin:6px 0 0 12px;font-size:14px;color:var(--latte)}

/* ================= PARTNER ================= */
.partner{padding-block:clamp(90px,12vw,170px);background:var(--mocha)}
.partner__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,1.6vw,24px)}
.pcard{border:1.5px solid rgba(217,160,72,.5);border-radius:var(--r-md);padding:clamp(24px,2.6vw,36px)}
.pcard__k{font:700 clamp(26px,2.4vw,38px)/1.1 var(--font-display);color:var(--gold);margin:0 0 12px;padding-bottom:.08em}
.pcard p:last-child{color:var(--sand);margin:0}
.partner__cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:clamp(32px,4vw,56px)}

/* ================= FOOTER ================= */
.foot{background:var(--ink);padding:clamp(80px,10vw,140px) 0 40px}
.foot__plate{width:min(360px,80%);background:var(--logo-bg);padding:18px 20px;margin-bottom:clamp(40px,5vw,72px)}
.foot__plate img{border-radius:0}
.foot__big{font-size:clamp(42px,7vw,120px);max-width:1200px}
.foot__row{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:24px;border-top:1px solid rgba(217,160,72,.3);padding-top:28px;margin-top:clamp(28px,4vw,56px)}
.foot__social{display:flex;gap:28px;flex-wrap:wrap}
.foot__social a{font:700 13px/1 var(--font-body);letter-spacing:.18em;text-transform:uppercase;text-decoration:none;color:var(--latte);transition:color .3s}
.foot__social a:hover{color:var(--gold)}
.foot__sign{font-size:clamp(30px,2.8vw,42px)}
.foot__small{font-size:13px;color:var(--latte);margin:36px 0 0;max-width:760px}

/* ================= reveal defaults (JS adds motion) ================= */
.js .reveal{opacity:0;transform:translateY(40px)}
.js .reveal-clip{clip-path:inset(12% 6% 12% 6% round 16px)}
.reveal-lines .rl{display:block;overflow:hidden;padding-bottom:.14em;margin-bottom:-.14em}
.reveal-lines .rl>span{display:inline-block}

/* ================= responsive ================= */
@media (max-width:1024px){
  .nav__links{display:none}
  .nav__burger{display:block}
  .nav .btn--sm{margin-left:auto}
  .hero__stats{grid-template-columns:repeat(2,1fr);row-gap:20px}
  .moments{grid-template-columns:repeat(2,1fr)}
  .chair__inner,.guilt__inner,.reset__inner{grid-template-columns:1fr}
  .chair__bg img{opacity:.22}
  .reset__cover{max-width:420px}
  .ephover{display:none}
}
@media (max-width:760px){
  .hosts__grid,.partner__grid{grid-template-columns:1fr}
  .hero__shade{background:linear-gradient(0deg,rgba(18,12,9,.95) 0%,rgba(18,12,9,.7) 55%,rgba(18,12,9,.25) 100%)}
  .hero__media img{object-position:50% 50%}
  .hero__scroll{display:none}
  .hero__script{right:auto;left:1.6em;bottom:-.5em}
  .hero__sub{margin-top:44px}
  .ep a{grid-template-columns:1fr;gap:12px}
  .ep__n,.ep__arrow{display:none}
  .ep__thumb{display:block;border-radius:10px;overflow:hidden;aspect-ratio:16/9}
  .ep__thumb img{width:100%;height:100%;object-fit:cover}
  .moment:nth-child(even){margin-top:40px}
  .cities{height:200vh}
  .cities__progress{display:none}
  .chair__card{min-height:0}
  .nav .btn--sm{display:none}
  .nav__burger{margin-left:auto}
}
@media (max-width:420px){.moments{grid-template-columns:1fr}.moment:nth-child(even){margin-top:0}}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
  .js .reveal{opacity:1;transform:none}
  .js .reveal-clip{clip-path:none}
  .grain{display:none}
}

/* ================= v2 ================= */
/* hero: script tucked under the serif like the logo; quote bubble */
.hero__title{padding-right:.2em}
.hero__script{right:auto;left:2.6em;bottom:-.52em;font-size:.6em;transform:rotate(-7deg)}
.hero__sub{margin-top:clamp(56px,6vw,84px)}
.hero__shade{background:linear-gradient(90deg,rgba(18,12,9,.88) 0%,rgba(18,12,9,.6) 38%,rgba(18,12,9,.08) 70%),linear-gradient(0deg,rgba(58,26,15,1) 0%,rgba(58,26,15,0) 30%)}
.bubble{position:absolute;z-index:3;right:var(--pad);bottom:clamp(150px,19vh,210px);width:min(380px,32vw);background:rgba(18,12,9,.78);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1.5px solid var(--gold);border-radius:20px 20px 20px 4px;padding:18px 20px 16px}
.bubble::after{content:"";position:absolute;left:-1.5px;bottom:-14px;width:22px;height:14px;background:var(--gold);clip-path:polygon(0 0,100% 0,0 100%)}
.bubble__top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}
.bubble__ep{font:700 10px/1.2 var(--font-body);letter-spacing:.18em;text-transform:uppercase;color:var(--latte);text-align:right}
.bubble__q{font:400 clamp(17px,1.35vw,21px)/1.35 var(--font-display);font-style:italic;color:var(--cream);margin:0 0 14px;min-height:5.4em}
.bubble__q .caret{display:inline-block;width:2px;height:1em;background:var(--ember);margin-left:2px;vertical-align:-2px;animation:blink 1s infinite}
.bubble__play{display:inline-flex;align-items:center;gap:10px;background:none;border:0;padding:0;cursor:pointer;font:700 11px/1 var(--font-body);letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}
.bubble__icon{width:34px;height:34px;border-radius:50%;background:var(--rust);color:var(--cream);display:grid;place-items:center;font-size:11px;transition:transform .45s var(--ease-nudge)}
.bubble__play:hover .bubble__icon{transform:scale(1.15)}

/* manifesto image */
.manifesto{display:grid;grid-template-columns:1fr;position:relative}
.manifesto__img{position:absolute;right:var(--pad);top:clamp(40px,6vw,90px);width:clamp(180px,20vw,300px);transform:rotate(4deg);z-index:-1;opacity:.9}
.manifesto__img img{aspect-ratio:4/5;object-fit:cover}

/* hosts: cover + fan */
.hosts__stage{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,64px);align-items:center;margin-bottom:clamp(48px,6vw,88px)}
.hosts__cover{margin:0}
.hosts__cover img{aspect-ratio:4/5;object-fit:cover}
.hosts__cover figcaption{font:700 11px/1 var(--font-body);letter-spacing:.22em;text-transform:uppercase;color:var(--latte);padding:14px 6px 4px}
.fan{position:relative;height:clamp(380px,40vw,600px)}
.fan__card{position:absolute;left:50%;top:50%;width:clamp(170px,17vw,260px);margin:0;border:1.5px solid var(--gold);border-radius:14px;padding:6px;background:var(--ink);box-shadow:0 30px 60px -20px rgba(0,0,0,.7);transform:translate(-50%,-50%);transition:transform .7s var(--ease-settle),z-index 0s .2s;cursor:default}
.fan__card img{border-radius:9px;aspect-ratio:4/5;object-fit:cover}
.fan__card:nth-child(1){transform:translate(-112%,-46%) rotate(-9deg)}
.fan__card:nth-child(2){transform:translate(-50%,-56%) rotate(1deg);z-index:2}
.fan__card:nth-child(3){transform:translate(12%,-44%) rotate(9deg)}
.fan__card:hover{z-index:5;transition:transform .6s var(--ease-nudge),z-index 0s}
.fan__card:nth-child(1):hover{transform:translate(-118%,-56%) rotate(-3deg) scale(1.06)}
.fan__card:nth-child(2):hover{transform:translate(-50%,-66%) rotate(0) scale(1.06)}
.fan__card:nth-child(3):hover{transform:translate(18%,-54%) rotate(3deg) scale(1.06)}
.fan__note{position:absolute;right:4%;bottom:2%;font-size:30px;transform:rotate(-8deg)}

/* in their words */
.words{padding-block:clamp(90px,12vw,170px);background:var(--ink);overflow:hidden}
.words__hint{font:700 11px/1.4 var(--font-body);letter-spacing:.2em;text-transform:uppercase;color:var(--latte);margin:0}
.words__rail{display:flex;gap:clamp(14px,1.6vw,24px);overflow-x:auto;scroll-snap-type:x mandatory;padding:8px var(--pad) 28px;cursor:grab;scrollbar-width:none;overscroll-behavior-x:contain}
.words__rail::-webkit-scrollbar{display:none}
.words__rail.is-drag{cursor:grabbing;scroll-snap-type:none}
.qcard{flex:0 0 clamp(280px,30vw,440px);scroll-snap-align:start;background:var(--espresso);border:1px solid rgba(217,160,72,.3);border-radius:var(--r-md);padding:clamp(24px,2.4vw,36px);display:flex;flex-direction:column;min-height:330px;position:relative;transition:transform .6s var(--ease-settle),border-color .4s;user-select:none}
.qcard:nth-child(3n+2){background:var(--rust)}
.qcard:nth-child(3n+3){background:var(--cream);color:var(--espresso)}
.qcard:hover{transform:translateY(-8px) rotate(-.6deg);border-color:var(--gold)}
.qcard__mark{font:900 90px/.7 var(--font-display);color:var(--copper);height:44px}
.qcard:nth-child(3n+2) .qcard__mark{color:var(--cream)}
.qcard__q{font:400 clamp(20px,1.7vw,26px)/1.3 var(--font-display);margin:0 0 24px;flex:1}
.qcard__foot{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid currentColor;border-color:rgba(217,160,72,.35);padding-top:14px}
.qcard__ep{font:700 11px/1.3 var(--font-body);letter-spacing:.16em;text-transform:uppercase;opacity:.75}
.qcard__play{flex:none;display:inline-flex;align-items:center;gap:8px;background:none;border:0;cursor:pointer;color:inherit;font:700 11px/1 var(--font-body);letter-spacing:.14em;text-transform:uppercase}
.qcard__play i{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-size:10px;background:var(--ink);color:var(--cream);transition:transform .45s var(--ease-nudge)}
.qcard__play:hover i{transform:scale(1.15)}

/* clips */
.clips{padding-block:clamp(90px,12vw,170px)}
.clips__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(12px,1.4vw,20px)}
.clip{display:flex;flex-direction:column;justify-content:space-between;aspect-ratio:9/14;padding:clamp(18px,1.8vw,26px);border-radius:var(--r-md);text-decoration:none;position:relative;overflow:hidden;background:var(--mocha);border:1px solid rgba(217,160,72,.3);isolation:isolate;transition:transform .6s var(--ease-settle)}
.clip img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;opacity:.55;transition:transform 1.2s var(--ease-settle),opacity .5s}
.clip::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(18,12,9,.2),rgba(18,12,9,.92) 75%)}
.clip:hover{transform:translateY(-8px)}
.clip:hover img{transform:scale(1.06);opacity:.75}
.clip__n{font:900 clamp(40px,4vw,64px)/1 var(--font-display);color:var(--cream);padding-bottom:.1em}
.clip__n small{display:block;font:700 11px/1 var(--font-body);letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-top:6px}
.clip__t{font:700 clamp(17px,1.3vw,20px)/1.3 var(--font-display);color:var(--cream);margin:0}
.clip__tag{align-self:flex-start;font:700 10px/1 var(--font-body);letter-spacing:.18em;text-transform:uppercase;background:var(--rust);color:var(--cream);padding:6px 10px;border-radius:999px}

/* player */
.player{border:0;padding:0;background:transparent;max-width:none;max-height:none;width:100%;height:100%;color:var(--cream)}
.player::backdrop{background:rgba(18,12,9,.86);backdrop-filter:blur(6px)}
.player__box{width:min(1100px,92vw);margin:auto;position:relative;top:50%;transform:translateY(-50%)}
.player__frame{aspect-ratio:16/9;border:1.5px solid var(--gold);border-radius:16px;overflow:hidden;background:#000}
.player__frame iframe{width:100%;height:100%;border:0;display:block}
.player__meta{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:14px 4px}
.player__t{font:700 clamp(17px,1.5vw,22px)/1.3 var(--font-display);margin:0}
.player__meta a{font:700 11px/1 var(--font-body);letter-spacing:.18em;text-transform:uppercase;color:var(--gold);text-decoration:none;white-space:nowrap}
.player__close{position:absolute;right:-6px;top:-52px;width:44px;height:44px;border-radius:50%;border:1px solid var(--gold);background:var(--ink);color:var(--cream);font-size:26px;line-height:1;cursor:pointer}

/* episodes v2: real thumbnails always visible on desktop */
.ep a{grid-template-columns:90px 220px 1fr auto 40px}
.ep__thumb{display:block;border-radius:10px;overflow:hidden;aspect-ratio:16/9;order:0}
.ep__thumb img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease-settle)}
.ep a:hover .ep__thumb img{transform:scale(1.06)}
.ephover{display:none}

@media (max-width:1024px){
  .bubble{position:relative;right:auto;bottom:auto;width:auto;margin:0 var(--pad) 24px}
  .hosts__stage{grid-template-columns:1fr}
  .fan{height:clamp(340px,80vw,520px)}
  .fan__card{width:clamp(150px,34vw,240px)}
  .clips__grid{grid-template-columns:repeat(2,1fr)}
  .manifesto__img{display:none}
  .ep a{grid-template-columns:70px 160px 1fr 40px}.ep__v{display:none}
}
@media (max-width:760px){
  .hero__script{left:1.9em;bottom:-.6em}
  .ep a{grid-template-columns:1fr}
  .qcard{flex-basis:82vw;min-height:300px}
}

/* v2.1 polish */
@media (min-width:1025px){
  .hero__media img{object-position:100% 40%}
  .hero__shade{background:linear-gradient(90deg,rgba(18,12,9,.82) 0%,rgba(18,12,9,.45) 34%,rgba(18,12,9,0) 50%),linear-gradient(0deg,rgba(58,26,15,1) 0%,rgba(58,26,15,0) 28%)}
  .bubble{right:auto;left:min(52%,calc(100% - 420px));bottom:clamp(140px,17vh,190px);width:min(340px,26vw)}
  .manifesto__text{max-width:64%}
  .manifesto__sign{max-width:64%}
  .manifesto__img{top:50%;transform:translateY(-50%) rotate(4deg);width:clamp(240px,24vw,360px);z-index:0}
}
.words__rail{scroll-padding-inline:var(--pad)}
.clip img{opacity:.85}
.clip::after{background:linear-gradient(180deg,rgba(18,12,9,0) 35%,rgba(18,12,9,.94) 82%)}
.clip:hover img{opacity:1}

.hero__media picture{display:block;width:100%;height:100%}
@media (max-width:760px){.hero__media img{object-position:50% 20%}}
@media (max-width:760px){
  .hero{justify-content:flex-start;padding-top:0;min-height:0}
  .hero__media{position:relative;inset:auto;aspect-ratio:4/5;height:auto;z-index:0}
  .hero__media img{object-position:50% 30%}
  .hero__shade{inset:auto 0 auto 0;top:0;height:calc(125vw + 2px);background:linear-gradient(0deg,var(--espresso) 0%,rgba(58,26,15,0) 32%),linear-gradient(180deg,rgba(18,12,9,.55) 0%,rgba(18,12,9,0) 22%)}
  .hero__inner{margin-top:-120px}
}

@media (hover:none){.fan__note{display:none}}

/* v2.2 host portraits */
.host__img{margin:0 0 22px;border-radius:12px;overflow:hidden;border:1px solid rgba(217,160,72,.35)}
.host__img img{aspect-ratio:4/5;object-fit:cover;object-position:50% 25%;transition:transform 1s var(--ease-settle)}
.host:hover .host__img img{transform:scale(1.05)}
.host__num{margin-bottom:16px}
.fan__card figcaption{position:absolute;left:14px;bottom:10px;font-size:clamp(26px,2.2vw,34px);color:var(--cream);text-shadow:0 2px 12px rgba(0,0,0,.6)}

/* v3: real photos (22 Oct feedback from Lydie: "use our actual photos") */
.hero__media img{object-position:50% 22%}
@media (min-width:1025px){
  .hero__media{inset:-6% 0 0 auto;width:50%;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 16%);mask-image:linear-gradient(90deg,transparent 0,#000 16%)}
  .hero__media img{object-position:50% 20%}
  .hero__shade{background:linear-gradient(0deg,rgba(58,26,15,1) 0%,rgba(58,26,15,0) 26%)}
  .bubble{left:auto;right:calc(var(--pad) + 8px);bottom:clamp(150px,18vh,200px);width:min(340px,25vw)}
}
@media (max-width:760px){.hero__media img{object-position:50% 18%}}
.hosts__cover img{object-position:50% 25%}
.fan__card img{object-position:50% 20%}
.clip img{object-position:50% 20%;opacity:.9}
