/* Keep Up With Liv site kit: shared design system (from homepage-v1, The Cover Story). Page-only styles stay inline in each page. */
/* Display type is Liv's Editor's Note, upright and italic (2026-10-30, replacing Bodoni Moda everywhere).
   Latin subsets of her OTFs (brand_assets/fonts/editors-note, desktop family: confirm the web licence before public launch).
   Body and labels stay Outfit. Display tracking was halved for her font (it sets tighter than Bodoni). */
/* Outfit, self-hosted (2026-11-09): no request reaches Google before a visitor has made a privacy choice. Variable 300 to 500, from Google Fonts (OFL). */
@font-face{font-family:'Outfit';font-style:normal;font-weight:300 500;font-display:swap;src:url(/assets/fonts/outfit-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Outfit';font-style:normal;font-weight:300 500;font-display:swap;src:url(/assets/fonts/outfit-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Editors Note';font-style:normal;font-weight:300;font-display:swap;src:url(/assets/fonts/editors-note-300.woff2) format('woff2')}
@font-face{font-family:'Editors Note';font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/editors-note-400.woff2) format('woff2')}
@font-face{font-family:'Editors Note';font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/editors-note-500.woff2) format('woff2')}
@font-face{font-family:'Editors Note';font-style:normal;font-weight:600 900;font-display:swap;src:url(/assets/fonts/editors-note-600.woff2) format('woff2')}
@font-face{font-family:'Editors Note';font-style:italic;font-weight:300;font-display:swap;src:url(/assets/fonts/editors-note-italic-300.woff2) format('woff2')}
@font-face{font-family:'Editors Note';font-style:italic;font-weight:400;font-display:swap;src:url(/assets/fonts/editors-note-italic-400.woff2) format('woff2')}
@font-face{font-family:'Editors Note';font-style:italic;font-weight:500;font-display:swap;src:url(/assets/fonts/editors-note-italic-500.woff2) format('woff2')}
@font-face{font-family:'Editors Note';font-style:italic;font-weight:600 900;font-display:swap;src:url(/assets/fonts/editors-note-italic-600.woff2) format('woff2')}

/* ============ Tokens ============ */
:root{
  --ink:#0B1215; --ink-2:#111A1F; --ink-3:#18242B; --ink-line:rgba(241,235,225,.12);
  --bone:#F1EBE1; --bone-2:rgba(241,235,225,.78); --bone-3:rgba(241,235,225,.56);
  --taupe:#B2A797; --stone:#8C8477; --gold:#D9B47A; --gold-hi:#EED7AE; --bronze:#8A6230; --steel:#8A979E;

  --f-display:'Editors Note','Bodoni 72','Didot',Georgia,serif;
  --f-text:'Outfit',ui-sans-serif,system-ui,sans-serif;

  --step-display:clamp(2.25rem, min(3.7vw, 6.4vh), 4.4rem);
  --step-opener:clamp(2.75rem, min(6.2vw, 10.5vh), 6.75rem);
  --step-h2:clamp(2.4rem, 5vw, 5.25rem);
  --step-h3:clamp(1.55rem, 2.3vw, 2.35rem);
  --step-quote:clamp(1.65rem, 3vw, 3.15rem);
  --step-lede:clamp(1.1rem, 1.35vw, 1.3rem);
  --step-body:1.0625rem;
  --step-meta:.75rem;

  --s-1:.5rem; --s-2:1rem; --s-3:1.5rem; --s-4:2.5rem; --s-5:4rem; --s-6:6.5rem; --s-7:10.5rem;
  --gutter:clamp(20px, 4.4vw, 64px);
  --max:1360px;

  --ease:cubic-bezier(.16,1,.3,1);
  --ease-io:cubic-bezier(.65,0,.35,1);
  --fast:.3s; --base:.6s; --slow:.9s; --cinematic:1.4s;

  --shadow-1:0 1px 1px rgba(4,8,10,.35), 0 8px 24px -10px rgba(4,8,10,.55);
  --shadow-2:0 1px 1px rgba(4,8,10,.35), 0 18px 40px -14px rgba(4,8,10,.65), 0 48px 96px -32px rgba(4,8,10,.7);
  --shadow-gold:0 14px 34px -14px rgba(217,180,122,.55), 0 2px 6px -2px rgba(217,180,122,.35);
}

/* ============ Base ============ */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;background:var(--ink);color:var(--bone);font-family:var(--f-text);font-weight:300;font-size:var(--step-body);line-height:1.7;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:clip}
img,picture,svg,canvas{display:block;max-width:100%}
img{height:auto}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}
h1,h2,h3,p,ul,ol,blockquote,figure{margin:0}
ul,ol{padding:0;list-style:none}
em{font-style:italic}
::selection{background:var(--gold);color:var(--ink)}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:2px}
[hidden]{display:none!important}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip{position:fixed;left:var(--gutter);top:12px;z-index:10001;background:var(--gold);color:var(--ink);padding:.7rem 1rem;font-weight:500;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;transform:translateY(-160%);transition:transform var(--fast) var(--ease)}
.skip:focus-visible{transform:none}

.wrap{width:100%;max-width:var(--max);margin-inline:auto;padding-inline:var(--gutter)}
.meta{font-family:var(--f-text);font-weight:500;font-size:var(--step-meta);letter-spacing:.18em;text-transform:uppercase;color:var(--taupe);line-height:1.5}
.display{font-family:var(--f-display);font-weight:400;letter-spacing:-.015em;line-height:1.02}
.display em{font-style:italic;color:var(--gold);letter-spacing:-.01em}
.lede{font-size:var(--step-lede);line-height:1.6;color:var(--bone-2);font-weight:300}

/* ============ Layers ============ */
#threads{position:fixed;inset:0;width:100vw;height:100lvh;z-index:1;pointer-events:none}
.grain{position:fixed;inset:-50%;width:200%;height:200%;z-index:60;pointer-events:none;opacity:.07;mix-blend-mode:soft-light;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 1.4 -.2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
main>section{position:relative}
.sec{position:relative;z-index:2}

/* ============ Veil ============ */
/* No loading veil (2026-11-02): until site.js has set the hero's entrance states, only the header and the first section wait */
.motion-init .header,.motion-init #main>section:first-of-type{opacity:0}

/* ============ Buttons + links ============ */
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.85rem;min-height:56px;padding:0 1.75rem;font-family:var(--f-text);font-weight:500;font-size:.8125rem;letter-spacing:.16em;text-transform:uppercase;line-height:1;white-space:nowrap;isolation:isolate;overflow:hidden;
  transition:transform var(--fast) var(--ease), box-shadow var(--slow) var(--ease), border-color var(--base) var(--ease), color var(--base) var(--ease)}
.btn svg{width:18px;height:18px;flex:none;transition:transform var(--base) var(--ease)}
.btn--primary{background:var(--gold);color:var(--ink);box-shadow:var(--shadow-gold)}
.btn--primary::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(100deg,var(--gold-hi) 0%,#F7E9CF 45%,var(--gold-hi) 100%);transform:translateX(-101%);transition:transform .8s var(--ease)}
.btn--primary:hover::before{transform:translateX(0)}
.btn--primary:hover{box-shadow:0 22px 48px -16px rgba(217,180,122,.7),0 4px 10px -4px rgba(217,180,122,.45)}
.btn--primary:hover svg{transform:translateX(5px)}
.btn--primary:active{transform:scale(.98)}
.btn--primary:focus-visible{outline:2px solid var(--bone);outline-offset:4px}
.btn--ghost{color:var(--bone);border:1px solid rgba(241,235,225,.34);background:transparent}
.btn--ghost::before{content:"";position:absolute;inset:0;z-index:-1;background:rgba(241,235,225,.07);opacity:0;transition:opacity var(--base) var(--ease)}
.btn--ghost:hover{border-color:var(--bone)}
.btn--ghost:hover::before{opacity:1}
.btn--ghost:hover svg{transform:translateX(4px)}
.btn--ghost:active{transform:scale(.98)}
.btn--ink{color:var(--ink);border-color:rgba(11,18,21,.35)}
.btn--ink::before{background:rgba(11,18,21,.06)}
.btn--ink:hover{border-color:var(--ink)}

.link{position:relative;display:inline-flex;align-items:center;gap:.6rem;padding-block:.82rem;margin-block:-.47rem;font-weight:500;font-size:.8125rem;letter-spacing:.16em;text-transform:uppercase}
.link::before,.link::after{content:"";position:absolute;left:0;right:0;bottom:.47rem;height:1px;background:currentColor;opacity:.3}
.link::after{opacity:1;background:var(--gold);transform:scaleX(0);transform-origin:right;transition:transform .7s var(--ease)}
.link:hover::after{transform:scaleX(1);transform-origin:left}
.link svg{width:16px;height:16px;transition:transform var(--base) var(--ease)}
.link:hover svg{transform:translateX(4px)}
.link:active{opacity:.75}

/* ============ Header ============ */
.header{position:fixed;inset:0 0 auto 0;z-index:50;transition:transform .7s var(--ease)}
.header.is-tucked{transform:translateY(-100%)}
.header.is-scrolled{transform:translateY(calc(-1 * var(--bar-h, 0px)))}
.header.is-scrolled.is-tucked{transform:translateY(-100%)}
.bar{display:flex;align-items:center;justify-content:center;gap:.75rem;height:38px;padding-inline:var(--gutter);background:var(--ink-3);font-size:.6875rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--bone-2);border-bottom:1px solid var(--ink-line)}
.bar strong{font-weight:500;color:var(--gold)}
.bar a{position:relative;color:var(--bone);display:inline-flex;align-items:center;gap:.4rem;padding-block:.5rem}
.bar a::before{content:"";position:absolute;inset:-6px -10px}
.bar a::after{content:"";position:absolute;left:0;right:0;bottom:.35rem;height:1px;background:var(--gold);transform:scaleX(.3);transform-origin:left;transition:transform var(--base) var(--ease)}
.bar a:hover::after{transform:scaleX(1)}
.bar .dot{width:3px;height:3px;border-radius:50%;background:var(--stone)}
.bar .hide-sm{display:inline}
.nav{position:relative;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;height:78px;padding-inline:var(--gutter)}
.nav::before{content:"";position:absolute;inset:0;z-index:-1;background:rgba(11,18,21,.72);backdrop-filter:blur(16px) saturate(1.1);-webkit-backdrop-filter:blur(16px) saturate(1.1);border-bottom:1px solid var(--ink-line);opacity:0;transition:opacity .6s var(--ease)}
.is-scrolled .nav::before{opacity:1}
.nav__brand{justify-self:start;font-family:var(--f-display);font-weight:500;font-size:1.05rem;letter-spacing:.24em;text-transform:uppercase;padding-block:.75rem;transition:opacity .6s var(--ease),transform .6s var(--ease),color .5s var(--ease)}
.nav__brand:hover{color:var(--gold)}
.is-home .nav__brand{opacity:0;transform:translateY(-6px)}
.is-home .is-scrolled .nav__brand,.is-home .nav__brand:focus-visible{opacity:1;transform:none}
.nav__links{display:flex;gap:clamp(1.2rem,2.2vw,2.4rem)}
.nav__links a{position:relative;font-size:.75rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--bone-2);padding-block:.8rem;transition:color var(--base) var(--ease)}
.nav__links a::after{content:"";position:absolute;left:0;right:0;bottom:.45rem;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:right;transition:transform .6s var(--ease)}
.nav__links a:hover{color:var(--bone)}
.nav__links a:hover::after{transform:scaleX(1);transform-origin:left}
.nav__links a:active{color:var(--gold)}
.nav__links a[aria-current="page"]{color:var(--bone)}
.nav__links a[aria-current="page"]::after{transform:scaleX(1);opacity:.7}
.nav__end{justify-self:end;display:flex;align-items:center;gap:1.25rem}
.nav__menu{display:none;align-items:center;gap:.7rem;min-height:48px;padding-inline:.25rem;font-size:.75rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase}
.nav__menu i{position:relative;width:26px;height:9px}
.nav__menu i::before,.nav__menu i::after{content:"";position:absolute;left:0;right:0;height:1px;background:currentColor;transition:transform .5s var(--ease)}
.nav__menu i::before{top:0}.nav__menu i::after{bottom:0}
.nav__menu:hover i::before{transform:translateX(4px)}
.nav__menu:hover i::after{transform:translateX(-4px)}
.nav__menu:active{opacity:.7}

/* Mobile menu */
.menu{position:fixed;inset:0;z-index:70;overflow-y:auto;overscroll-behavior:contain;background:var(--ink-2);display:flex;flex-direction:column;padding:calc(78px + var(--s-3)) var(--gutter) var(--s-4);visibility:hidden;clip-path:inset(0 0 100% 0);transition:clip-path .8s var(--ease-io),visibility 0s .8s}
.menu.is-open{visibility:visible;clip-path:inset(0 0 0 0);transition:clip-path .8s var(--ease-io),visibility 0s 0s}
.menu__close{position:absolute;top:15px;right:var(--gutter);min-height:48px;font-size:.75rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;display:flex;align-items:center;gap:.6rem}
.menu__close:hover{color:var(--gold)}
.menu__list{display:grid;gap:.35rem;margin-top:auto}
.menu__list a{display:block;font-family:var(--f-display);font-size:clamp(2.4rem,10vw,3.6rem);line-height:1.1;letter-spacing:-.01em;padding-block:.15rem;transform:translateY(24px);opacity:0;transition:transform .9s var(--ease),opacity .9s var(--ease),color .4s var(--ease)}
.menu.is-open .menu__list a{transform:none;opacity:1}
.menu.is-open .menu__list li:nth-child(2) a{transition-delay:.06s}.menu.is-open .menu__list li:nth-child(3) a{transition-delay:.12s}.menu.is-open .menu__list li:nth-child(4) a{transition-delay:.18s}.menu.is-open .menu__list li:nth-child(5) a{transition-delay:.24s}.menu.is-open .menu__list li:nth-child(6) a{transition-delay:.3s}.menu.is-open .menu__list li:nth-child(7) a{transition-delay:.36s}.menu.is-open .menu__list li:nth-child(8) a{transition-delay:.42s}.menu.is-open .menu__list li:nth-child(9) a{transition-delay:.48s}
.menu__list a:hover,.menu__list a:active,.menu__list a[aria-current="page"]{color:var(--gold)}
.menu__foot{margin-top:var(--s-4);display:grid;gap:var(--s-3)}

/* ============ Press ============ */
.press{padding-block:clamp(3rem,8vw,5.5rem) clamp(2rem,5vw,3.5rem)}
.press .wrap{display:grid;gap:var(--s-3);align-items:center}
.press__row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s-3) var(--s-4)}
.press__row img{height:clamp(18px,2vw,26px);width:auto;opacity:.62}
.press__row img.svg{filter:brightness(0) invert(.94) sepia(.12)}
.press__row img.tall{height:clamp(26px,2.8vw,36px)}
@media (min-width:900px){.press .wrap{grid-template-columns:12rem 1fr}}

/* ============ Advantage (narrative pin) ============ */
.adv{z-index:2}
.adv__pin{position:relative;height:100svh;min-height:600px;display:grid;align-items:center;overflow:hidden}
.adv__pin::before{content:"";position:absolute;inset:0;background:radial-gradient(60% 55% at 30% 50%, rgba(11,18,21,.6), rgba(11,18,21,0) 70%);pointer-events:none}
.adv__head{position:absolute;top:clamp(6rem,15svh,9rem);left:var(--gutter);right:var(--gutter);display:flex;justify-content:space-between;align-items:baseline;gap:1rem}
.adv__count{font-family:var(--f-display);font-size:1.05rem;letter-spacing:.06em;color:var(--bone-2)}
.adv__count b{font-weight:400;color:var(--gold)}
.adv__stage{position:relative;width:100%;max-width:var(--max);margin-inline:auto;padding-inline:var(--gutter);min-height:52svh}
.beat{position:absolute;left:var(--gutter);right:var(--gutter);top:50%;transform:translateY(-50%);max-width:62rem}
.beat__line{font-size:clamp(2.3rem, 5.6vw, 6rem)}
.beat--2 .beat__line{font-size:clamp(3rem, 9.4vw, 10rem);line-height:.95}
.beat--3 .beat__line{font-size:clamp(1.8rem, 3.6vw, 3.9rem);line-height:1.08;max-width:56rem}
.beat__support{margin-top:var(--s-4);max-width:34rem}
.beat__stamp{margin-top:var(--s-4);display:flex;align-items:center;gap:1rem}
.beat__stamp::before{content:"";width:48px;height:1px;background:var(--gold)}
.adv__rail{position:absolute;left:var(--gutter);right:var(--gutter);bottom:clamp(2.5rem,8svh,4.5rem);height:1px;background:var(--ink-line)}
.adv__rail i{position:absolute;inset:0;background:var(--gold);transform:scaleX(0);transform-origin:left}
/* Editorial form (reduced motion, no JS, failure) */
.adv.is-static .adv__pin{height:auto;min-height:0;padding-block:var(--s-7)}
.adv.is-static .adv__head{position:relative;top:auto;left:auto;right:auto;padding-inline:var(--gutter);max-width:var(--max);margin:0 auto var(--s-5)}
.adv.is-static .adv__stage{display:grid;gap:var(--s-6);min-height:0}
.adv.is-static .beat{position:relative;left:auto;right:auto;top:auto;transform:none}
.adv.is-static .adv__rail,.adv.is-static .adv__count{display:none}

/* ============ Meet Liv (paper) ============ */
.meet{background:var(--bone);color:var(--ink);padding-block:var(--s-7);z-index:3}
.meet .meta{color:var(--bronze)}
.meet .display em{color:var(--bronze)}
.meet__grid{display:grid;gap:var(--s-5)}
.meet__media{position:relative;max-width:34rem}
.meet__portrait{position:relative;overflow:hidden;aspect-ratio:4/5;background:#d9d2c6;box-shadow:0 30px 60px -30px rgba(11,18,21,.45),0 2px 4px rgba(11,18,21,.08)}
.meet__portrait img{width:100%;height:118%;object-fit:cover;object-position:50% 30%}
.meet__inset{position:absolute;right:0;bottom:-8%;width:44%;aspect-ratio:2/3;overflow:hidden;border:10px solid var(--bone);box-shadow:0 24px 50px -22px rgba(11,18,21,.5)}
.meet__inset img{width:100%;height:100%;object-fit:cover}
.meet__title{font-size:var(--step-h2);margin-top:var(--s-2)}
.meet__lede{margin-top:var(--s-3);font-family:var(--f-display);font-style:italic;font-size:clamp(1.35rem,1.9vw,1.85rem);line-height:1.35;letter-spacing:-.005em;color:var(--ink);max-width:32rem}
.meet__body{margin-top:var(--s-3);max-width:32rem;color:rgba(11,18,21,.76)}
.stats{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--s-4) var(--s-3);margin-top:var(--s-5);padding-top:var(--s-4);border-top:1px solid var(--ink-line)}
.meet .stats,.paper .stats{border-top-color:rgba(11,18,21,.16)}
.stat b{display:block;font-family:var(--f-display);font-weight:400;font-size:clamp(2.6rem,4.4vw,4.2rem);line-height:1;letter-spacing:-.015em}
.stat span{display:block;margin-top:.6rem;font-size:.6875rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--bone-3);line-height:1.5}
.meet .stat span{color:rgba(11,18,21,.62)}
.timeline{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--s-3);margin-top:var(--s-5)}
.tl{position:relative;padding-top:var(--s-2)}
.tl::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:var(--ink);opacity:.8;transform-origin:left}
.tl b{display:block;font-family:var(--f-display);font-weight:500;font-size:1.25rem;letter-spacing:.02em}
.tl span{display:block;font-size:.875rem;color:rgba(11,18,21,.7);line-height:1.5;margin-top:.25rem}
.meet__more{margin-top:var(--s-4);display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-3)}
.meet .link{color:var(--ink)}
.meet .link::after{background:var(--bronze)}
.meet :focus-visible{outline-color:var(--ink)}
@media (min-width:900px){
  .meet__inset{right:-6%;bottom:-9%}
  .meet__grid{grid-template-columns:repeat(12,1fr);align-items:start}
  .meet__media{grid-column:1 / span 5;position:sticky;top:120px}
  .meet__text{grid-column:7 / span 6}
  .stats{grid-template-columns:repeat(4,1fr)}
  .timeline{grid-template-columns:repeat(4,1fr)}
}

/* ============ All about (identity) ============ */
.about{z-index:2;min-height:100svh;display:grid;align-items:center;overflow:hidden;padding-block:var(--s-6)}
.about__media{position:absolute;inset:0;overflow:hidden;clip-path:inset(8% 14% 8% 14%)}
.about__media img{position:absolute;inset:-8% 0;width:100%;height:116%;object-fit:cover;object-position:30% 30%}
.about__media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,18,21,.55),rgba(11,18,21,.25) 40%,rgba(11,18,21,.7)),radial-gradient(70% 60% at 70% 50%,rgba(11,18,21,.1),rgba(11,18,21,.55))}
.about__inner{position:relative;z-index:1;width:100%}
.about__eyebrow{padding-inline:var(--gutter);max-width:var(--max);margin:0 auto var(--s-4)}
.about__lines{display:grid;gap:clamp(.5rem,2vw,1.5rem)}
.about__line{display:grid;justify-items:start;font-family:var(--f-display);font-weight:400;font-size:clamp(2.5rem,10.4vw,10rem);line-height:.98;letter-spacing:-.018em;will-change:transform;padding-inline:var(--gutter)}
.about__line small{display:block;margin:.2rem 0 0 .12em;font-family:var(--f-display);font-style:italic;font-size:clamp(1rem,1.8vw,1.8rem);line-height:1.2;letter-spacing:0;color:var(--gold)}
@media (min-width:900px){
  .about{min-height:130svh}
  .about__line{font-size:clamp(4rem,8.6vw,10rem);white-space:nowrap}
  .about__line:nth-child(2){padding-left:14vw}
  .about__line:nth-child(3){padding-left:6vw}
  .about__line small{margin-left:.4em}
}

/* ============ Proof ============ */
.proof{padding-block:var(--s-7) var(--s-6);z-index:2}
.proof__feature{margin-top:var(--s-4);font-family:var(--f-display);font-size:var(--step-quote);line-height:1.2;letter-spacing:-.01em;max-width:62rem}
[data-words] .w{opacity:.16;transition:none}
.proof__by{margin-top:var(--s-4);display:flex;align-items:center;gap:1rem}
.proof__by::before{content:"";width:48px;height:1px;background:var(--gold)}
.quotes{display:grid;gap:var(--s-4);margin-top:var(--s-6)}
.quote{position:relative;padding-top:var(--s-3)}
.quote::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:var(--ink-line)}
.quote::after{content:"";position:absolute;left:0;top:0;width:40px;height:1px;background:var(--gold)}
.quote p{color:var(--bone-2);font-size:1rem;line-height:1.75}
.quote cite{display:block;margin-top:var(--s-3);font-style:normal}
@media (min-width:900px){.quotes{grid-template-columns:repeat(3,1fr);gap:var(--s-5)}}

/* ============ Work index ============ */
.work{padding-block:var(--s-6) var(--s-7);z-index:2}
.work__head{display:grid;gap:var(--s-3);align-items:end}
.work__title{font-size:var(--step-h2)}
.work__lede{max-width:30rem}
.index{margin-top:var(--s-5);border-top:1px solid var(--ink-line)}
.row{position:relative;display:grid;grid-template-columns:auto 1fr auto;gap:.5rem 1.25rem;align-items:center;padding-block:clamp(1.4rem,2.6vw,2.2rem);border-bottom:1px solid var(--ink-line);isolation:isolate}
.row::before{content:"";position:absolute;inset:0 calc(-1 * var(--gutter));z-index:-1;background:linear-gradient(90deg,rgba(217,180,122,.07),rgba(217,180,122,0) 70%);opacity:0;transition:opacity .7s var(--ease)}
.row__num{font-family:var(--f-display);font-size:.95rem;color:var(--stone);align-self:start;padding-top:.5rem}
.row__thumb{display:none}
.row__title{font-family:var(--f-display);font-weight:400;font-size:var(--step-h3);line-height:1.08;letter-spacing:-.01em;transition:transform .8s var(--ease),color .6s var(--ease)}
.row__desc{grid-column:2 / -1;color:var(--bone-3);font-size:.95rem;line-height:1.6;max-width:36rem}
.row__meta{grid-column:2 / -1;display:flex;flex-wrap:wrap;gap:.35rem 1rem}
.row__go{grid-column:3;grid-row:1;width:48px;height:48px;border:1px solid rgba(241,235,225,.22);border-radius:50%;display:grid;place-items:center;transition:background-color .6s var(--ease),border-color .6s var(--ease),transform .8s var(--ease)}
.row__go svg{width:18px;height:18px;transition:transform .6s var(--ease)}
.row:hover::before{opacity:1}
.row:hover .row__title{transform:translateX(12px);color:var(--gold)}
.row:hover .row__go{background:var(--gold);border-color:var(--gold);color:var(--ink)}
.row:hover .row__go svg{transform:rotate(-45deg)}
.row:active .row__go{transform:scale(.94)}
.row:focus-visible{outline-offset:-2px}
@media (max-width:899px){
  .row{grid-template-columns:auto 1fr auto}
  .row__thumb{display:block;grid-row:1 / span 3;grid-column:1;width:64px;aspect-ratio:3/4;overflow:hidden;align-self:start}
  .row__thumb img{width:100%;height:100%;object-fit:cover}
  .row__num{display:none}
}
@media (min-width:900px){
  .work__head{grid-template-columns:1fr 1fr}
  .row{grid-template-columns:4.5rem minmax(0,1.05fr) minmax(0,1fr) 11rem 48px;gap:2rem}
  .row__desc{grid-column:3;grid-row:1}
  .row__meta{grid-column:4;grid-row:1;flex-direction:column;gap:.35rem}
  .row__go{grid-column:5}
}
.preview{position:fixed;left:0;top:0;z-index:5;width:clamp(240px,22vw,340px);aspect-ratio:3/4;pointer-events:none;opacity:0;visibility:hidden}
.preview__frame{position:absolute;inset:0;overflow:hidden;box-shadow:var(--shadow-2);clip-path:inset(50% 50% 50% 50%)}
.preview__frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0}

.audit{margin-top:var(--s-6);display:grid;background:var(--ink-2);box-shadow:var(--shadow-2);border:1px solid var(--ink-line);overflow:hidden}
.audit__media{position:relative;aspect-ratio:16/9;overflow:hidden;background:var(--ink-3)}
.audit__media img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.audit:hover .audit__media img{transform:scale(1.04)}
.audit__body{padding:clamp(1.75rem,4vw,3.5rem);display:grid;align-content:center;gap:var(--s-3)}
.audit__title{font-size:clamp(1.9rem,3.2vw,3rem);line-height:1.05}
.audit__body p{color:var(--bone-2);max-width:32rem}
@media (min-width:900px){.audit{grid-template-columns:1.15fr 1fr}.audit__media{aspect-ratio:auto;min-height:100%}}

/* ============ Podcast ============ */
.pod{padding-block:var(--s-6) var(--s-7);z-index:2}
.pod__grid{display:grid;gap:var(--s-5);align-items:center}
.pod__art{position:relative;max-width:34rem}
.pod__art::before{content:"";position:absolute;inset:8% -6% -8% 8%;background:radial-gradient(closest-side,rgba(217,180,122,.28),rgba(217,180,122,0));filter:blur(10px);z-index:-1}
.pod__cover{position:relative;overflow:hidden;aspect-ratio:1;box-shadow:var(--shadow-2)}
.pod__cover img{width:100%;height:100%;object-fit:cover;transform:scale(1.06)}
.pod__title{font-size:var(--step-h2);margin-top:var(--s-2)}
.pod__sub{margin-top:var(--s-2)}
.eps{margin-top:var(--s-4);border-top:1px solid var(--ink-line)}
.ep{display:grid;grid-template-columns:44px 1fr auto;gap:1rem;align-items:center;padding-block:1.1rem;border-bottom:1px solid var(--ink-line)}
.ep__play{width:44px;height:44px;border-radius:50%;border:1px solid rgba(241,235,225,.25);display:grid;place-items:center;transition:background-color .6s var(--ease),border-color .6s var(--ease),transform .6s var(--ease)}
.ep__play svg{width:12px;height:12px;margin-left:2px}
.ep__t{font-family:var(--f-display);font-size:clamp(1.05rem,1.35vw,1.3rem);line-height:1.3;letter-spacing:-.005em;transition:color .5s var(--ease)}
.ep__src{display:none}
.ep:hover .ep__play{background:var(--gold);border-color:var(--gold);color:var(--ink)}
.ep:hover .ep__t{color:var(--gold)}
.ep:active .ep__play{transform:scale(.92)}
@media (min-width:600px){.ep__src{display:block}}
.pod__ctas{margin-top:var(--s-4);display:flex;flex-wrap:wrap;align-items:center;gap:1rem 2rem}
.secret{margin-top:var(--s-6);display:grid;grid-template-columns:96px 1fr;gap:var(--s-3);align-items:center;padding:var(--s-3);background:linear-gradient(120deg,var(--ink-3),var(--ink-2));border:1px solid var(--ink-line);box-shadow:var(--shadow-1);transition:border-color .6s var(--ease),transform .8s var(--ease),box-shadow .8s var(--ease)}
.secret:hover{border-color:rgba(217,180,122,.45);transform:translateY(-3px);box-shadow:var(--shadow-2)}
.secret:active{transform:translateY(0)}
.secret__img{aspect-ratio:3/4;overflow:hidden}
.secret__img img{width:100%;height:100%;object-fit:cover;object-position:50% 30%}
.secret h3{font-family:var(--f-display);font-weight:400;font-size:clamp(1.5rem,2.2vw,2rem);letter-spacing:-.01em;line-height:1.1}
.secret p{color:var(--bone-3);font-size:.95rem;line-height:1.6;margin-top:.5rem;max-width:40rem}
.secret .link{margin-top:.75rem}
@media (max-width:599px){.secret{grid-template-columns:72px 1fr;align-items:start}.secret>span:last-child{grid-column:1 / -1}}
@media (min-width:900px){.pod__grid{grid-template-columns:5fr 6fr;gap:var(--s-6)}.secret{grid-template-columns:120px 1fr}}

/* ============ Closing ============ */
.close{padding-block:var(--s-7);z-index:2;overflow:hidden}
.close__grid{display:grid;gap:var(--s-5);align-items:center}
.close__title{font-size:clamp(3rem,7.6vw,8.2rem);line-height:.96;margin-top:var(--s-3)}
.close__body{margin-top:var(--s-4);max-width:30rem}
.close .btn{margin-top:var(--s-4)}
.close__media{position:relative;max-width:26rem;justify-self:end;width:100%}
.close__media::before{content:"";position:absolute;inset:-14px 14px 14px -14px;border:1px solid rgba(217,180,122,.55);pointer-events:none}
.close__frame{position:relative;overflow:hidden;aspect-ratio:3/4;box-shadow:var(--shadow-2)}
.close__frame img{width:100%;height:112%;object-fit:cover;object-position:50% 25%}
@media (min-width:900px){.close__grid{grid-template-columns:7fr 4fr;gap:var(--s-6)}}

/* ============ Footer ============ */
.foot{z-index:2;padding-top:var(--s-6);border-top:1px solid var(--ink-line);overflow:hidden}
.foot__top{display:grid;gap:var(--s-5)}
.foot__news h2{font-family:var(--f-display);font-weight:400;font-size:clamp(2rem,3.4vw,3.2rem);line-height:1.05;letter-spacing:-.013em}
.foot__news p{margin-top:var(--s-2);color:var(--bone-3);max-width:26rem}
.foot__news .btn{margin-top:var(--s-3)}
.foot__cols{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--s-4)}
.foot__cols ul{display:grid;gap:0;margin-top:var(--s-1)}
.foot__cols a{position:relative;display:inline-block;padding-block:.7rem;color:var(--bone-2);transition:color .5s var(--ease)}
.foot__cols a::after{content:"";position:absolute;left:0;right:0;bottom:.55rem;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:right;transition:transform .6s var(--ease)}
.foot__cols a:hover{color:var(--bone)}
.foot__cols a:hover::after{transform:scaleX(1);transform-origin:left}
.foot__cols a:active{color:var(--gold)}
.foot__mark{margin-top:var(--s-6);font-family:var(--f-display);font-weight:500;font-size:clamp(3rem,11.6vw,13.5rem);line-height:.82;letter-spacing:-.02em;white-space:nowrap;text-align:center;color:var(--bone);overflow:hidden;padding-bottom:.06em}
.foot__mark em{color:var(--gold)}
.foot__mark span{display:inline-block}
.foot__base{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;padding-block:var(--s-3) var(--s-4);border-top:1px solid var(--ink-line);margin-top:var(--s-3)}
@media (min-width:900px){.foot__top{grid-template-columns:1.2fr 1fr}}

/* ============ Cursor ============ */
.cursor{position:fixed;left:0;top:0;z-index:9999;pointer-events:none;mix-blend-mode:difference;display:none;opacity:0}
.cursor__ring{position:absolute;left:-18px;top:-18px;width:36px;height:36px;border-radius:50%;border:1px solid #fff;transition:transform .6s var(--ease),background-color .5s var(--ease)}
.cursor__dot{position:absolute;left:-2.5px;top:-2.5px;width:5px;height:5px;border-radius:50%;background:#fff;transition:opacity .3s var(--ease)}
.cursor__label{position:absolute;left:0;top:0;transform:translate(-50%,-50%);font-size:.625rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:#000;opacity:0;transition:opacity .4s var(--ease)}
.cursor.is-link .cursor__ring{transform:scale(.55);background:#fff}
.cursor.is-link .cursor__dot{opacity:0}
.cursor.is-view{mix-blend-mode:normal}
.cursor.is-view .cursor__ring{transform:scale(2.4);background:rgba(11,18,21,.55);border-color:rgba(241,235,225,.8);backdrop-filter:blur(2px)}
.cursor.is-view .cursor__dot{opacity:0}
.cursor.is-view .cursor__label{opacity:1;color:var(--bone)}
html.has-cursor .cursor{display:block}

/* ============================================================
   Interior pages: the magazine's inside chapters
   Same ink, bone, gold, Editor's Note and Outfit as the cover. Gold stays earned:
   italic accent words, the regulated threads, and the one filled action.
   ============================================================ */

/* ---------- Opener: a feature's opening spread ---------- */
.opener{position:relative;z-index:2;min-height:100svh;display:grid;align-items:end;padding:calc(78px + var(--s-5)) 0 clamp(2.5rem,7svh,5rem);overflow:hidden;overflow:clip}
.opener::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(70% 60% at 18% 70%,rgba(11,18,21,.75),rgba(11,18,21,0) 70%)}
.opener__folio{position:absolute;z-index:3;top:calc(78px + var(--s-2));left:max(var(--gutter), calc((100% - var(--max)) / 2 + var(--gutter)));right:max(var(--gutter), calc((100% - var(--max)) / 2 + var(--gutter)));display:flex;justify-content:space-between;gap:1rem}
.opener__grid{position:relative;display:grid;gap:var(--s-4);align-items:end}
.opener__text{position:relative;z-index:2}
.opener__title{font-size:var(--step-opener);line-height:.98;margin-top:var(--s-2)}
.opener__lede{margin-top:var(--s-3);max-width:34rem}
.opener__ctas{display:flex;flex-wrap:wrap;gap:1rem;margin-top:var(--s-4)}
.opener__ctas .btn--primary{flex:1 1 100%}
.opener__media{position:relative;z-index:1;width:100%;order:-1}
.opener__media::before{content:"";position:absolute;top:-12px;left:-12px;right:12px;aspect-ratio:5/4;border:1px solid rgba(217,180,122,.5);pointer-events:none;z-index:2}
.opener__frame{position:relative;overflow:hidden;aspect-ratio:5/4;background:var(--ink-3);box-shadow:var(--shadow-2)}
.opener__frame img{width:100%;height:112%;object-fit:cover;object-position:50% 25%}
.opener__cap{display:flex;justify-content:space-between;gap:1rem;margin-top:var(--s-2)}
/* The masthead word behind the portrait: the cover's type-behind-the-subject move, at chapter scale */
.opener__mast{position:absolute;z-index:0;right:calc(var(--gutter) * -.5);top:calc(78px + var(--s-5));font-family:var(--f-display);font-weight:500;font-size:clamp(5rem,19vw,19rem);line-height:.8;letter-spacing:-.015em;color:var(--bone);opacity:.07;white-space:nowrap;pointer-events:none;user-select:none}
@media (min-width:900px){
  .opener__grid{grid-template-columns:repeat(12,1fr);gap:var(--s-5)}
  .opener__text{grid-column:1 / span 7;padding-bottom:var(--s-2)}
  .opener__media{grid-column:9 / span 4;order:0;align-self:center;margin-top:var(--s-5)}
  .opener__frame,.opener__media::before{aspect-ratio:3/4}
  .opener__ctas .btn--primary{flex:0 0 auto}
  .opener__mast{top:auto;bottom:clamp(6rem,22svh,14rem);right:calc(var(--gutter) * .5);font-size:clamp(9rem,17vw,19rem);opacity:.08}
  .opener--wide .opener__text{grid-column:1 / span 9}
}
/* No-photo opener (contact, simple pages) */
.opener--plain{min-height:78svh}
.opener--plain .opener__text{grid-column:1 / -1;max-width:64rem}

/* ---------- Chapter: the standard section ---------- */
.chapter{position:relative;z-index:2;padding-block:var(--s-6)}
.chapter--loose{padding-block:var(--s-7)}
.chapter--tight{padding-block:var(--s-5)}
.chapter__head{display:grid;gap:var(--s-3);align-items:end;margin-bottom:var(--s-5)}
.chapter__head .lede{max-width:32rem}
@media (min-width:900px){.chapter__head{grid-template-columns:1fr 1fr}}
.h2{font-size:var(--step-h2)}
.h3{font-size:var(--step-h3);line-height:1.08}
.h2+.lede,.h3+.lede,.meta+.h2,.meta+.h3{margin-top:var(--s-2)}
.prose{max-width:36rem;color:var(--bone-2)}
.prose p+p{margin-top:var(--s-2)}
.prose strong{font-weight:500;color:var(--bone)}
.pull{font-family:var(--f-display);font-style:italic;font-size:clamp(1.35rem,1.9vw,1.85rem);line-height:1.35;letter-spacing:-.005em;max-width:34rem}
.rule{height:1px;background:var(--ink-line);border:0;margin:0}
.rule--gold{background:linear-gradient(90deg,var(--gold),rgba(217,180,122,0))}

/* ---------- Paper: the bone chapter (editorial pause) ---------- */
.paper{position:relative;z-index:3;background:var(--bone);color:var(--ink)}
.paper .meta{color:var(--bronze)}
.paper .display em,.paper .pull em{color:var(--bronze)}
.paper .lede,.paper .prose{color:rgba(11,18,21,.76)}
.paper .prose strong{color:var(--ink)}
.paper .rule{background:rgba(11,18,21,.16)}
.paper .link{color:var(--ink)}
.paper .link::after{background:var(--bronze)}
.paper .btn--ghost{color:var(--ink);border-color:rgba(11,18,21,.35)}
.paper .btn--ghost::before{background:rgba(11,18,21,.06)}
.paper .btn--ghost:hover{border-color:var(--ink)}
.paper :focus-visible{outline-color:var(--ink)}
.paper .stat span{color:rgba(11,18,21,.62)}
.paper .checks,.paper .checks li,.paper .faq,.paper .faq details,.paper .index,.paper .row{border-color:rgba(11,18,21,.16)}
.paper .checks li{color:rgba(11,18,21,.8)}
.paper .checks li::before{background:var(--bronze)}

/* ---------- Split: image beside text ---------- */
.split{display:grid;gap:var(--s-5);align-items:center}
.split__media{position:relative;max-width:34rem;width:100%}
@media (min-width:900px){
  .split{grid-template-columns:repeat(12,1fr);gap:var(--s-5)}
  .split__media{grid-column:1 / span 5}
  .split__text{grid-column:7 / span 6}
  .split--flip .split__media{grid-column:8 / span 5;order:2;justify-self:end}
  .split--flip .split__text{grid-column:1 / span 6;order:1}
  .split--top{align-items:start}
  .split--top .split__media{position:sticky;top:120px}
}
.frame{position:relative;overflow:hidden;aspect-ratio:4/5;background:var(--ink-3);box-shadow:var(--shadow-2)}
.frame img{width:100%;height:112%;object-fit:cover;object-position:50% 30%}
.frame--land{aspect-ratio:16/10}
.frame--sq{aspect-ratio:1}
.framed{position:relative}
.framed::before{content:"";position:absolute;inset:-14px 14px 14px -14px;border:1px solid rgba(217,180,122,.55);pointer-events:none;z-index:2}
.paper .framed::before{border-color:rgba(138,98,48,.45)}
.inset{position:absolute;right:-6%;bottom:-9%;width:44%;aspect-ratio:2/3;overflow:hidden;border:10px solid var(--ink);box-shadow:0 24px 50px -22px rgba(4,8,10,.7);z-index:3}
.paper .inset{border-color:var(--bone);box-shadow:0 24px 50px -22px rgba(11,18,21,.5)}
.inset img{width:100%;height:100%;object-fit:cover}

/* ---------- Statement: one towering line ---------- */
.statement{font-size:clamp(2.3rem,5.6vw,6rem);line-height:1.02;max-width:62rem}
.stamp{display:flex;align-items:center;gap:1rem;margin-top:var(--s-4)}
.stamp::before{content:"";width:48px;height:1px;background:var(--gold)}
.paper .stamp::before{background:var(--bronze)}

/* ---------- Checks: inclusions, outcomes ---------- */
.checks{border-top:1px solid var(--ink-line)}
.checks li{position:relative;padding:1.05rem 0 1.05rem 2.6rem;border-bottom:1px solid var(--ink-line);color:var(--bone-2);line-height:1.6}
.checks li::before{content:"";position:absolute;left:0;top:calc(1.05rem + .8em);width:1.5rem;height:1px;background:var(--gold)}
.checks li strong{font-weight:500;color:var(--bone)}
.paper .checks li strong{color:var(--ink)}
@media (min-width:900px){.checks--2{display:grid;grid-template-columns:1fr 1fr;column-gap:var(--s-5)}}

/* ---------- Numbered steps / pillars ---------- */
.steps{display:grid;gap:var(--s-4);counter-reset:step}
.step{position:relative;padding-top:var(--s-3);border-top:1px solid var(--ink-line)}
.step::after{content:"";position:absolute;left:0;top:-1px;width:40px;height:1px;background:var(--gold)}
.step__n{font-family:var(--f-display);font-size:.95rem;color:var(--stone)}
.step h3{font-family:var(--f-display);font-weight:400;font-size:var(--step-h3);line-height:1.08;letter-spacing:-.01em;margin-top:var(--s-1)}
.step p{margin-top:var(--s-2);color:var(--bone-2);max-width:30rem}
.paper .step{border-color:rgba(11,18,21,.16)}
.paper .step::after{background:var(--bronze)}
.paper .step p{color:rgba(11,18,21,.76)}
@media (min-width:900px){.steps--3{grid-template-columns:repeat(3,1fr);gap:var(--s-5)}.steps--2{grid-template-columns:repeat(2,1fr);gap:var(--s-5)}.steps--4{grid-template-columns:repeat(4,1fr);gap:var(--s-4)}}

/* ---------- Price / offer card ---------- */
.price{position:relative;display:grid;gap:var(--s-3);padding:clamp(1.75rem,4vw,3.25rem);background:linear-gradient(160deg,var(--ink-3),var(--ink-2));border:1px solid var(--ink-line);box-shadow:var(--shadow-2);isolation:isolate}
.price::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,var(--gold),rgba(217,180,122,.15))}
.price__amount{font-family:var(--f-display);font-weight:400;font-size:clamp(3rem,6vw,5.5rem);line-height:1;letter-spacing:-.015em}
.price__amount small{font-size:.3em;letter-spacing:.02em;color:var(--bone-3);margin-left:.4em}
.price__note{color:var(--bone-3);font-size:.95rem}
@media (min-width:900px){.price--wide{grid-template-columns:1fr 1fr;align-items:center;column-gap:var(--s-5)}}

/* ---------- FAQ (native details, enhanced) ---------- */
.faq{border-top:1px solid var(--ink-line)}
.faq details{border-bottom:1px solid var(--ink-line)}
.faq summary{list-style:none;display:grid;grid-template-columns:1fr 48px;align-items:center;gap:1rem;min-height:48px;padding-block:1.35rem;cursor:pointer;font-family:var(--f-display);font-size:clamp(1.2rem,1.8vw,1.6rem);line-height:1.25;letter-spacing:-.005em;transition:color .5s var(--ease)}
.faq summary::-webkit-details-marker{display:none}
.faq summary:hover{color:var(--gold)}
.paper .faq summary:hover{color:var(--bronze)}
.faq .pm{position:relative;width:48px;height:48px;border:1px solid rgba(241,235,225,.22);border-radius:50%;transition:background-color .6s var(--ease),border-color .6s var(--ease),transform .6s var(--ease)}
.paper .faq .pm{border-color:rgba(11,18,21,.25)}
.faq .pm::before,.faq .pm::after{content:"";position:absolute;left:50%;top:50%;width:14px;height:1px;background:currentColor;transform:translate(-50%,-50%);transition:transform .6s var(--ease)}
.faq .pm::after{transform:translate(-50%,-50%) rotate(90deg)}
.faq details[open] .pm::after{transform:translate(-50%,-50%) rotate(0)}
.faq summary:hover .pm{border-color:var(--gold)}
.faq summary:active .pm{transform:scale(.94)}
.faq__a{padding:0 calc(48px + 1rem) 1.6rem 0;max-width:46rem;color:var(--bone-2)}
.paper .faq__a{color:rgba(11,18,21,.76)}
.faq__a p+p{margin-top:var(--s-2)}
.faq details[open] .faq__a{animation:faqIn .7s var(--ease) both}
@keyframes faqIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}

/* ---------- Cards: catalogue (programs, masterclasses) ---------- */
.cards{display:grid;gap:var(--s-5) var(--s-4)}
@media (min-width:700px){.cards{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1100px){.cards--3{grid-template-columns:repeat(3,1fr)}}
.card{position:relative;display:grid;gap:var(--s-2);align-content:start}
.card__media{position:relative;overflow:hidden;aspect-ratio:4/5;background:var(--ink-3);box-shadow:var(--shadow-1);transition:box-shadow .9s var(--ease)}
.card__media img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.card__media::after{content:"";position:absolute;inset:0;border:1px solid rgba(217,180,122,0);transition:border-color .8s var(--ease);pointer-events:none}
.card__kicker{display:flex;justify-content:space-between;gap:1rem;margin-top:var(--s-1)}
.card__title{font-family:var(--f-display);font-weight:400;font-size:var(--step-h3);line-height:1.05;letter-spacing:-.01em;transition:color .6s var(--ease)}
.card__desc{color:var(--bone-2);font-size:.98rem;line-height:1.65;max-width:30rem}
.card .link{justify-self:start;margin-top:var(--s-1)}
.card:hover .card__media{box-shadow:var(--shadow-2)}
.card:hover .card__media img{transform:scale(1.04)}
.card:hover .card__media::after{border-color:rgba(217,180,122,.55)}
.card:hover .card__title{color:var(--gold)}
.card:hover .link::after{transform:scaleX(1);transform-origin:left}
.card:active .card__media{transform:scale(.995)}
.card:focus-visible{outline-offset:6px}
.card--feature{grid-column:1 / -1}
@media (min-width:900px){.card--feature{grid-template-columns:1.1fr 1fr;gap:var(--s-5);align-items:center}.card--feature .card__media{aspect-ratio:4/3}}

/* ---------- Form ---------- */
.form{display:grid;gap:var(--s-4);max-width:40rem}
.form__row{display:grid;gap:var(--s-4)}
@media (min-width:700px){.form__row{grid-template-columns:1fr 1fr}}
.field{display:grid;gap:.4rem}
.field label{font-weight:500;font-size:var(--step-meta);letter-spacing:.18em;text-transform:uppercase;color:var(--taupe)}
.field input,.field textarea,.field select{width:100%;background:transparent;border:0;border-bottom:1px solid rgba(241,235,225,.28);border-radius:0;color:var(--bone);font:inherit;font-size:1.0625rem;font-weight:300;padding:.85rem 0;transition:border-color .5s var(--ease)}
.field textarea{min-height:9rem;resize:vertical;line-height:1.6}
.field input::placeholder,.field textarea::placeholder{color:var(--bone-3)}
.field input:hover,.field textarea:hover{border-color:rgba(241,235,225,.55)}
.field input:focus,.field textarea:focus{outline:none;border-color:var(--gold)}
.field input:focus-visible,.field textarea:focus-visible{outline:none;box-shadow:0 1px 0 0 var(--gold)}
.field [aria-invalid="true"]{border-color:#E7A08B}
.field__err{font-size:.85rem;color:#E7A08B;min-height:1.2em}
.form__status{min-height:1.5em;color:var(--bone-2)}
.form__status.is-ok{color:var(--gold)}
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}

/* ---------- Next chapter: the page-turn link at the end of every interior page ---------- */
.next{position:relative;z-index:2;display:block;padding-block:var(--s-6);border-top:1px solid var(--ink-line);isolation:isolate}
.next::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(217,180,122,.07),rgba(217,180,122,0) 70%);opacity:0;transition:opacity .8s var(--ease)}
.next .wrap{display:grid;gap:var(--s-2)}
.next__title{display:flex;align-items:center;justify-content:space-between;gap:var(--s-3);font-family:var(--f-display);font-weight:400;font-size:clamp(2.4rem,6vw,6.4rem);line-height:1;letter-spacing:-.015em}
.next__title em{color:var(--gold)}
.next__title>span{transition:transform 1s var(--ease)}
.next__go{flex:none;width:clamp(56px,6vw,88px);height:clamp(56px,6vw,88px);border:1px solid rgba(241,235,225,.25);border-radius:50%;display:grid;place-items:center;transition:background-color .6s var(--ease),border-color .6s var(--ease),transform .8s var(--ease)}
.next__go svg{width:22px;height:22px;transition:transform .6s var(--ease)}
.next:hover::before{opacity:1}
.next:hover .next__title>span{transform:translateX(14px)}
.next:hover .next__go{background:var(--gold);border-color:var(--gold);color:var(--ink)}
.next:hover .next__go svg{transform:rotate(-45deg)}
.next:active .next__go{transform:scale(.94)}
.next:focus-visible{outline-offset:-4px}

/* ---------- Small utilities ---------- */
.gold{color:var(--gold)}
.center{text-align:center;margin-inline:auto}
.mt-2{margin-top:var(--s-2)}.mt-3{margin-top:var(--s-3)}.mt-4{margin-top:var(--s-4)}.mt-5{margin-top:var(--s-5)}.mt-6{margin-top:var(--s-6)}
.btns{display:flex;flex-wrap:wrap;gap:1rem}
.measure{max-width:44rem}
.no-motion [data-words] .w,.no-words [data-words] .w{opacity:1}


/* ---------- Frame fill + drift bleed (2026-10-26 fix, applies site-wide) ----------
   The img's 112% height only resolves when its <picture> has a height; drift images sit 5% high so
   the -6% to +4% parallax never uncovers an edge. */
.opener__frame picture,.frame picture,.close__frame picture,.pod__cover picture,.meet__portrait picture,.card__media picture,.audit__media picture{display:block;height:100%}
img[data-drift]{position:relative;top:-5%}
.pod__cover img{height:112%;transform:none}
@media (max-width:599px){.opener__folio>span:last-child{display:none}}
/* Index rows on touch screens 900px and up (tablets): no cursor preview, so the thumbnail takes the number's place */
@media (hover:none){.preview{display:none}}
@media (min-width:900px) and (hover:none){
  .row__num{display:none}
  .row__thumb{display:block;grid-column:1;grid-row:1;width:64px;aspect-ratio:3/4;overflow:hidden;align-self:center}
  .row__thumb img{width:100%;height:100%;object-fit:cover}
}
/* ============ Responsive nav ============ */
@media (max-width:1279px){
  .nav__links{display:none}
  .nav__menu{display:inline-flex}
  .nav{grid-template-columns:1fr auto}
  .nav__end .link{display:none}
}
@media (max-width:640px){
  .bar{font-size:.625rem;letter-spacing:.16em;gap:.5rem}
  .bar .hide-sm{display:none}
}

@media (max-height:740px){.menu__list a{font-size:clamp(1.9rem,8.4vw,2.6rem)}.menu{padding-top:calc(78px + var(--s-2))}}

/* ============ Reduced motion ============ */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  [data-words] .w{opacity:1}
  .about__media{clip-path:none}
}

/* Figures that must read exactly (2026-11-09): Editor's Note draws "1" like a lowercase l, so "10,000+" read as "l0,000+". Outfit figures, sized to sit in display type. */
.ofig{font-family:'Outfit',system-ui,sans-serif;font-weight:300;font-style:normal;font-size:.84em;letter-spacing:-.01em}

/* No sideways scroll on phones (2026-11-09): body{overflow-x:clip} alone did not stop drifting display lines and off-screen
   entrance states from widening the layout by a few px. clip creates no scroll container, so sticky and pins are unaffected. */
html{overflow-x:clip}

/* Line masks no longer cut letters (2026-11-09, Liv: "the g is cut off", "letters are cut off on multiple pages").
   Editor's Note sits low: at line-height 1 the tails of g, y, j reach .13em below the line box, .18em at .9.
   SplitText wraps each line in an overflow:clip mask, so give every mask room below (and a little either side for
   italic overhang) and take it back with negative margins: same layout, nothing clipped. The tall ascent keeps a line
   at yPercent 112 fully hidden before its reveal. */
.ln-mask,
[data-split] > div{padding:0 .1em .2em;margin:0 -.1em -.2em}

/* Liv's type rule (2026-11-09 feedback): these lines are set in Editor's Note Light, upright, never italic.
   Applied per element with class="upright"; !important because page styles set italic on their own classes. */
.upright,.upright em,.upright i,.upright b,.upright strong{font-family:var(--f-display) !important;font-style:normal !important;font-weight:300 !important}

/* ================= Privacy choices (assets/consent.js, 2026-11-09) =================
   Accept and Reject carry equal weight (a requirement, not a style choice). Nothing traps focus except the open panel,
   which is a proper modal dialog. All controls are 48px tall or more. */
.pc-bar{position:fixed;z-index:95;left:max(12px,var(--gutter));bottom:max(12px,env(safe-area-inset-bottom));width:min(46rem,calc(100vw - 24px));display:grid;gap:1rem 1.75rem;padding:1.25rem 1.35rem;background:rgba(11,18,21,.97);border:1px solid rgba(217,180,122,.42);box-shadow:0 30px 60px -24px rgba(0,0,0,.8);color:var(--bone-2);font-family:var(--f-text);font-size:.9rem;line-height:1.6;opacity:0;transform:translateY(16px);transition:opacity .6s var(--ease),transform .6s var(--ease)}
.pc-bar.is-on{opacity:1;transform:none}
.pc-bar__title{font-family:var(--f-display);font-size:1.35rem;line-height:1.15;color:var(--bone);margin-bottom:.35rem}
.pc-bar a,.pc-panel a{color:var(--bone);text-decoration:underline;text-decoration-color:rgba(217,180,122,.7);text-underline-offset:3px}
.pc-bar a:hover,.pc-panel a:hover{color:var(--gold)}
.pc-bar b{font-weight:500;color:var(--bone)}
.pc-bar__btns,.pc-panel__btns{display:flex;flex-wrap:wrap;gap:.6rem}
.pc-btn{min-height:48px;padding:0 1.25rem;border:1px solid rgba(241,235,225,.55);background:transparent;color:var(--bone);font-family:var(--f-text);font-weight:500;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;cursor:pointer;transition:background-color .35s var(--ease),color .35s var(--ease),border-color .35s var(--ease)}
.pc-btn:hover{background:var(--bone);color:var(--ink);border-color:var(--bone)}
.pc-btn:active{transform:scale(.98)}
.pc-btn:focus-visible,.pc-switch:focus-visible,.pc-panel__x:focus-visible,.foot__legal button:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.pc-btn--quiet{border-color:rgba(241,235,225,.22);color:var(--bone-2)}
.pc__gpc{margin-top:.5rem;font-size:.8rem;color:var(--gold)}
@media (min-width:760px){.pc-bar{grid-template-columns:minmax(0,1fr) auto;align-items:end}.pc-bar__btns{flex-direction:column;align-items:stretch}}
.pc-panel{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:12px}
.pc-panel[hidden]{display:none}
.pc-panel__scrim{position:absolute;inset:0;background:rgba(5,8,10,.72)}
.pc-panel__box{position:relative;width:min(38rem,100%);max-height:min(88svh,52rem);overflow:auto;overscroll-behavior:contain;padding:clamp(1.4rem,4vw,2.4rem);background:#101920;border:1px solid rgba(217,180,122,.42);box-shadow:0 40px 90px -30px rgba(0,0,0,.9);color:var(--bone-2);font-family:var(--f-text);font-size:.92rem;line-height:1.6;outline:none;opacity:0;transform:translateY(12px);transition:opacity .45s var(--ease),transform .45s var(--ease)}
.pc-panel.is-on .pc-panel__box{opacity:1;transform:none}
.pc-panel__x{position:absolute;top:.6rem;right:.6rem;width:48px;height:48px;display:grid;place-items:center;color:var(--bone-2);background:none;border:0;cursor:pointer}
.pc-panel__x svg{width:18px;height:18px}
.pc-panel__x:hover{color:var(--gold)}
.pc-panel__kick{font-weight:500;font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}
.pc-panel__title{margin-top:.3rem;font-family:var(--f-display);font-weight:400;font-size:clamp(1.7rem,4vw,2.3rem);line-height:1.05;color:var(--bone)}
.pc-panel__lede{margin-top:.6rem}
.pc-cat{margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(241,235,225,.14)}
.pc-cat__head{display:flex;align-items:center;justify-content:space-between;gap:1rem}
.pc-cat__title{font-family:var(--f-display);font-size:1.3rem;line-height:1.2;color:var(--bone)}
.pc-cat__always{font-weight:500;font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--taupe)}
.pc-cat__body{margin-top:.35rem;font-size:.86rem}
.pc-cat__body b{font-weight:500;color:var(--bone)}
.pc-cat__body code{font-family:var(--f-text);font-size:.92em;color:var(--bone)}
.pc-switch{flex:none;display:inline-flex;align-items:center;gap:.6rem;min-height:48px;padding:0;background:none;border:0;cursor:pointer;color:var(--bone-2);font-family:var(--f-text);font-weight:500;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase}
.pc-switch__knob{position:relative;width:46px;height:26px;border-radius:13px;border:1px solid rgba(241,235,225,.45);transition:background-color .3s var(--ease),border-color .3s var(--ease)}
.pc-switch__knob::after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:var(--bone-2);transition:transform .3s var(--ease),background-color .3s var(--ease)}
.pc-switch[aria-checked="true"] .pc-switch__knob{background:var(--gold);border-color:var(--gold)}
.pc-switch[aria-checked="true"] .pc-switch__knob::after{transform:translateX(20px);background:var(--ink)}
.pc-switch[aria-checked="true"]{color:var(--bone)}
.pc-switch[disabled]{opacity:.45;cursor:not-allowed}
.pc-panel__btns{margin-top:1.4rem}
.pc-panel__foot{margin-top:1rem;font-size:.82rem}
html.pc-open{overflow:hidden}
/* Footer: the policy and the way back to these choices, on every page */
.foot__legal{display:flex;flex-wrap:wrap;align-items:center;gap:0 1.5rem}
.foot__legal a,.foot__legal button{display:inline-flex;align-items:center;min-height:44px;padding:0;background:none;border:0;cursor:pointer;color:inherit;text-decoration:underline;text-decoration-color:rgba(217,180,122,.55);text-underline-offset:3px;transition:color .3s var(--ease)}
.foot__legal a:hover,.foot__legal button:hover{color:var(--gold)}
@media (prefers-reduced-motion:reduce){.pc-bar,.pc-panel__box,.pc-switch__knob,.pc-switch__knob::after{transition:none}}
@media (max-width:759px){
  .pc-bar{padding:1rem 1rem .9rem;gap:.8rem;font-size:.8rem;line-height:1.5}
  .pc-bar__title{font-size:1.12rem;margin-bottom:.2rem}
  .pc-bar__btns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem}
  .pc-btn{padding:0 .4rem;font-size:.64rem;letter-spacing:.1em}
}
/* Form privacy notice, at the point of collection (2026-11-09) */
.form__privacy{flex-basis:100%;font-size:.82rem;line-height:1.55;color:var(--bone-3)}
.form__privacy a{display:inline-block;padding-block:.6rem;margin-block:-.6rem;color:var(--bone-2);text-decoration:underline;text-decoration-color:rgba(217,180,122,.55);text-underline-offset:3px}
.form__privacy a:hover{color:var(--gold)}
