html,body{background:#1E0C08}

@font-face{font-family:'Anton';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/anton.woff2') format('woff2')}
/* Fallbacks tuned to Anton's width, so a slow font load cannot rewrap the headline. */
@font-face{font-family:'Anton Fallback';src:local('Impact'),local('Arial Narrow Bold'),local('Arial Narrow');size-adjust:86%;ascent-override:118%;descent-override:32%;line-gap-override:0%}
@font-face{font-family:'Instrument Serif';font-style:italic;font-weight:400;font-display:swap;src:url('../fonts/instrument-serif.woff2') format('woff2')}
@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:400 700;font-display:swap;src:url('../fonts/space-grotesk.woff2') format('woff2')}
@font-face{font-family:'Space Mono';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/space-mono.woff2') format('woff2')}

:root{
  --net:#1E0C08;--court:#2B120C;--court2:#7A2417;--deep:#4E1A10;--ember:#B5301C;--ember-ink:#8F2414;
  --gold:#D79A3C;--chalk:#F0E7D8;--grey:#B9A48E;--ink2:#5A3A2C;--dim:#7F6556;--hot:#FFF4DC;
  --display:'Anton','Anton Fallback',Impact,'Arial Narrow',sans-serif;
  --serif:'Instrument Serif',Georgia,serif;
  --body:'Space Grotesk',system-ui,sans-serif;
  --mono:'Space Mono',ui-monospace,monospace;
  --pad:clamp(16px,4vw,56px);
  --ease:cubic-bezier(.16,1,.3,1);
  --section:clamp(88px,13vw,190px);
  color-scheme:dark;
}

*,*::before,*::after{box-sizing:border-box}
*{margin:0;padding:0}
html{-webkit-text-size-adjust:100%;overflow-x:clip;scroll-padding-top:84px}
html.motion{scroll-behavior:smooth}
body{color:var(--chalk);font-family:var(--body);font-size:1rem;line-height:1.55;overflow-x:clip;font-synthesis:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
img,video,svg{display:block;max-width:100%}
a{color:inherit}
button,input,select,textarea{font:inherit;color:inherit}
ul,ol{list-style:none}
h1,h2,h3{font-weight:400}
em{font-style:italic}
::selection{background:var(--ember);color:var(--chalk)}
:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
main:focus{outline:none}

.wrap{max-width:1500px;margin-inline:auto;padding-inline:var(--pad)}
.sr-only,.hp{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0;padding:0}
.skip{position:fixed;left:12px;top:-80px;z-index:100;background:var(--chalk);color:var(--net);padding:.8rem 1.1rem;font-weight:600}
.skip:focus{top:12px}
.label{font-family:var(--mono);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);line-height:1.4}
.label--chalk{color:var(--chalk)}
.label--ember{color:var(--ember)}
.big{font-family:var(--display);text-transform:uppercase;font-size:clamp(3.2rem,11vw,11rem);line-height:.96;margin-top:.9rem;text-wrap:balance}
.big em{font-family:var(--serif);text-transform:none;color:var(--gold)}
.rails{height:9px;border-block:2.5px solid currentColor;transform-origin:left}
.tmark{fill:currentColor}

/* ---------- buttons ---------- */
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.7rem;min-height:48px;padding:.8rem 1.35rem;border:0;background:var(--ember);color:var(--chalk);font-family:var(--display);font-size:1rem;letter-spacing:.04em;text-transform:uppercase;text-decoration:none;line-height:1.1;cursor:pointer;overflow:hidden;isolation:isolate;transition:color .3s ease,transform .2s ease}
.btn::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--wipe,var(--gold));transform:scaleX(0);transform-origin:left;transition:transform .4s var(--ease)}
.btn:hover::before{transform:scaleX(1)}
.btn:hover{color:var(--wipe-ink,var(--net))}
.btn:active{transform:scale(.97)}
.arrow{width:20px;height:12px;fill:currentColor;flex:none;transition:transform .3s var(--ease)}
.btn:hover .arrow{transform:translateX(4px)}
.btn--chalk{background:var(--chalk);color:var(--net);--wipe:var(--ember);--wipe-ink:var(--chalk)}
.btn--net{background:var(--net);color:var(--chalk);--wipe:var(--ember);--wipe-ink:var(--chalk)}
.btn--ghost{background:rgba(30,12,8,.55);color:var(--chalk);box-shadow:inset 0 0 0 2px rgba(240,231,216,.65);--wipe:var(--chalk);--wipe-ink:var(--net)}
.btn--small{min-height:40px;padding:.55rem 1rem;font-size:.86rem}

/* ---------- nav ---------- */
.nav{position:fixed;inset:0 0 auto;z-index:40;display:flex;justify-content:flex-end;align-items:center;min-height:64px;padding:10px var(--pad);background:linear-gradient(to bottom,rgba(30,12,8,.92) 0,rgba(30,12,8,.8) 72%,rgba(30,12,8,0) 100%);transition:background-color .4s ease}
.nav.is-solid,html:not(.js) .nav{background:var(--net)}
.tab{position:absolute;left:var(--pad);top:0;z-index:3;width:clamp(72px,7.2vw,104px);aspect-ratio:1;transform-origin:top left;transition:transform .5s var(--ease);box-shadow:0 10px 30px rgba(0,0,0,.35)}
.tab img{width:100%;height:100%}
.nav.is-scrolled .tab{transform:scale(.72)}
html.motion .tab{animation:drop .8s var(--ease) backwards}
.nav__links{display:flex;align-items:center;gap:clamp(1rem,2.2vw,2rem)}
.nav__links a:not(.btn){font-family:var(--mono);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;text-decoration:none;padding:.6rem .1rem;background:linear-gradient(var(--gold),var(--gold)) left bottom/0 2px no-repeat;transition:background-size .3s var(--ease),color .2s}
.nav__links a:not(.btn):hover,.nav__links a[aria-current=page]:not(.btn){background-size:100% 2px;color:var(--gold)}
.burger{display:none;position:relative;z-index:3;min-height:44px;min-width:64px;padding:0 .9rem;background:rgba(30,12,8,.8);border:2px solid rgba(240,231,216,.6);font-family:var(--mono);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;cursor:pointer}

@media (max-width:899px){
  .js .burger{display:block}
  .js .nav__links{position:fixed;inset:0;z-index:2;flex-direction:column;align-items:flex-start;justify-content:center;gap:.4rem;padding:96px var(--pad) 32px;background:var(--net);visibility:hidden;opacity:0;transition:opacity .3s ease,visibility 0s .3s}
  .js .nav__links.is-open{visibility:visible;opacity:1;transition:opacity .3s ease}
  .js .nav__links a:not(.btn){font-family:var(--display);font-size:clamp(2.6rem,13vw,4.5rem);letter-spacing:0;line-height:1.1;padding:.1rem 0;background:none}
  .js .nav__links .btn{margin-top:1.4rem;min-height:52px;font-size:1.1rem}
  html:not(.js) .nav{flex-wrap:wrap;padding-left:96px;position:absolute}
}

/* ---------- film: resting state (no JS, reduced motion, very short screens) ---------- */
.film{position:relative;background:var(--net)}
.stage{position:relative;isolation:isolate;overflow:hidden}
.flame{position:absolute;inset:0 0 auto;height:100vh;height:100svh;z-index:0;transform:translate3d(var(--fx,11%),var(--fy,-5%),0) scale(var(--fs,1.25));pointer-events:none}
html:not(.pin) .flame{transform:none}
.flame__poster,.flame__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.flame__video{opacity:0;transition:opacity 1.2s ease}
.flame.is-playing .flame__video{opacity:1}
.scrim{position:absolute;inset:0 0 auto;height:100vh;height:100svh;z-index:1;pointer-events:none;opacity:var(--h-o,1);background:linear-gradient(to top,var(--net) 0,rgba(30,12,8,.82) 24%,rgba(30,12,8,.5) 46%,rgba(30,12,8,0) 72%)}

.hero{position:relative;z-index:2;min-height:100vh;min-height:100svh;display:flex;flex-direction:column;justify-content:flex-end;padding:96px var(--pad) clamp(20px,3vw,40px);--h1:min(16.6vw,26vh)}
@supports (height:1svh){.hero{--h1:min(16.6vw,26svh)}}
.hero__eyebrow{align-self:flex-start;background:rgba(30,12,8,.82);padding:.35rem .6rem;margin-bottom:.9rem;font-family:var(--mono);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--chalk);line-height:1.4}
.hero__h1{display:flex;flex-wrap:wrap;align-items:baseline;font-family:var(--display);text-transform:uppercase;font-size:var(--h1);line-height:.94;color:var(--chalk);mix-blend-mode:screen}
.ln{display:block;overflow:hidden;padding-top:.05em;white-space:nowrap}
.ln>span{display:block}
.ln--a{margin-right:.2em}
.ln--em,.ln--c{flex-basis:100%}
.ln--em{font-family:var(--serif);text-transform:none;font-size:.74em;line-height:1;color:var(--gold);padding-bottom:.08em}
.hero__foot{display:flex;gap:clamp(1.4rem,3vw,3rem);align-items:flex-end;margin-top:1.2rem}
.hero__lede{max-width:31rem;font-size:clamp(1rem,.95rem + .25vw,1.12rem);line-height:1.5;text-shadow:0 2px 18px rgba(30,12,8,.7)}
.hero__ctas{display:flex;flex-direction:column;gap:.6rem;flex:none}

@media (min-width:1100px){
  .hero__foot{position:absolute;right:var(--pad);bottom:clamp(20px,3vw,40px);left:calc(var(--pad) + var(--h1)*2.42);margin-top:0;justify-content:space-between}
}
@media (max-width:699px){
  .hero{--h1:min(27vw,12.5vh);padding-top:76px}
  .ln--a,.ln--b{flex-basis:100%;margin-right:0}
  .ln--em{font-size:.56em}
  .hero__eyebrow{letter-spacing:.1em;font-size:.68rem}
  .hero__lede{font-size:.95rem;line-height:1.42}
  .hero__ctas .btn{min-height:44px;padding-block:.5rem}
  .hero__foot{flex-direction:column;align-items:stretch;gap:1rem;margin-top:.9rem}
  .hero__ctas .btn{width:100%}
}
@media (max-width:699px) and (min-height:1px){
  @supports (height:1svh){.hero{--h1:min(27vw,12.5svh)}}
}

html.motion .ln>span{animation:rise 1.1s var(--ease) both}
html.motion .ln--a>span{animation-delay:.15s}
html.motion .ln--b>span{animation-delay:.28s}
html.motion .ln--em>span{animation-delay:.41s}
html.motion .ln--c>span{animation-delay:.54s}
html.motion .hero__eyebrow{animation:fadeup .8s var(--ease) .75s backwards}
html.motion .hero__lede{animation:fadeup .8s var(--ease) .85s both}
html.motion .hero__ctas{animation:fadeup .8s var(--ease) .95s both}
@keyframes rise{from{transform:translateY(112%)}to{transform:none}}
@keyframes fadeup{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes drop{from{transform:translateY(-100%)}to{transform:none}}

@media (max-width:699px) and (max-height:760px){html.pin .hero__eyebrow{display:none}}
@media (max-width:699px) and (max-height:700px){html.pin .hero{--h1:min(27vw,10.8svh)}}
@media (min-width:700px) and (max-width:1099px) and (max-height:760px){html.pin .hero{--h1:min(16.6vw,21svh)}}

/* The wall exists only when pinned; the resting state is the card list. */
.wall{display:none}
.panel{position:relative;z-index:3;padding:clamp(56px,8vw,110px) var(--pad) clamp(40px,6vw,80px)}
.panel__h2{font-family:var(--display);text-transform:uppercase;font-size:clamp(2.6rem,7vw,6rem);line-height:.98;margin-top:.6rem}
.panel__h2 em{font-family:var(--serif);text-transform:none;color:var(--gold)}
.panel__p{max-width:36rem;margin-top:.8rem}
.panel__skip{display:none}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,420px),1fr));gap:clamp(28px,4vw,56px) clamp(24px,4vw,64px);margin-top:clamp(32px,5vw,64px)}
.card{border-top:2.5px solid var(--gold);padding-top:1rem}
.card--end{display:none}
.card__k{font-family:var(--mono);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}
.card__n{font-family:var(--display);text-transform:uppercase;font-size:clamp(2rem,4vw,3rem);line-height:1;margin-top:.5rem}
.card__l{font-family:var(--serif);font-style:italic;color:var(--gold);font-size:clamp(1.5rem,2.3vw,2.05rem);line-height:1.12;margin-top:.45rem}
.card__b{margin-top:.6rem;font-size:.98rem;line-height:1.5}
.card__d{display:grid;gap:.3rem;margin-top:.8rem;font-size:.92rem}
.card__d div{display:grid;grid-template-columns:6.6rem 1fr;gap:.8rem}
.card__d dt{font-family:var(--mono);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--grey);padding-top:.2rem}
.pause{position:absolute;right:var(--pad);top:76px;z-index:5;display:inline-flex;align-items:center;gap:.55rem;min-height:40px;padding:0 .8rem;background:rgba(30,12,8,.8);border:1.5px solid rgba(240,231,216,.5);font-family:var(--mono);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:border-color .2s}
.pause[hidden]{display:none}
.pause:hover{border-color:var(--gold)}
.pause__i{width:12px;height:12px;fill:var(--gold)}
.pause.is-paused .p2{display:none}
.pause.is-paused .p1{width:9px}

/* ---------- film: pinned ---------- */
html.pin .stage{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden}
html.pin .hero{position:absolute;inset:0;min-height:0}
html.pin .hero__h1,html.pin .hero__eyebrow,html.pin .hero__foot{opacity:var(--h-o,1);transform:translateY(var(--h-y,0))}
html.pin .stage.is-wall .hero{pointer-events:none}

html.pin .wall{--name:min(5.2vw,calc((100vh - 108px)/12));display:block;position:absolute;left:var(--pad);top:84px;z-index:3;mix-blend-mode:screen;opacity:var(--w-o,0);transform:translateY(var(--w-y,8vh));pointer-events:none}
@supports (height:1svh){html.pin .wall{--name:min(5.2vw,calc((100svh - 108px)/12))}}
html.pin .stage.is-wall .wall{pointer-events:auto}
.name__btn{display:flex;align-items:center;gap:.9rem;width:100%;padding:0;background:none;border:0;color:var(--dim);font-family:var(--display);font-size:var(--name);line-height:1;text-transform:uppercase;text-align:left;cursor:pointer;transition:transform .5s var(--ease)}
.name__no{flex:none;width:1.5rem;font-family:var(--mono);font-size:.68rem;letter-spacing:.06em;color:var(--grey);transition:color .3s}
.name__txt{position:relative;display:block;white-space:nowrap;transition:color .25s}
.name__txt::after{content:attr(data-n);position:absolute;inset:0;color:transparent;background-image:linear-gradient(90deg,var(--gold) 0,var(--gold) calc(100% - 1em),var(--hot) calc(100% - .2em),rgba(255,244,220,0) 100%);background-repeat:no-repeat;background-size:calc(var(--heat,0)*100%) 100%;-webkit-background-clip:text;background-clip:text;pointer-events:none;text-shadow:none}
.name.is-lit .name__txt::after{background-image:linear-gradient(var(--gold),var(--gold));background-size:100% 100%}
.name.is-active .name__btn{transform:translateX(.16em)}
.name.is-active .name__no{color:var(--gold)}
.name__btn:hover .name__txt{color:var(--chalk)}
.name.is-lit .name__txt{text-shadow:0 0 .32em rgba(181,48,28,.9)}

html.pin .panel{position:absolute;right:var(--pad);top:50%;z-index:4;width:clamp(340px,32vw,480px);padding:clamp(20px,2vw,30px);background:rgba(30,12,8,.9);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:3px solid var(--gold);opacity:var(--w-o,0);transform:translateY(calc(-50% + var(--w-y,8vh)));pointer-events:none}
html.pin .stage.is-wall .panel{pointer-events:auto}
html.pin .panel__h2{font-size:clamp(1.9rem,2.85vw,2.9rem);white-space:nowrap}
html.pin .panel__p{font-size:.92rem;line-height:1.45;margin-top:.6rem}
html.pin .cards{display:grid;grid-template-columns:minmax(0,1fr);gap:0;margin-top:1.1rem;border-top:1px solid rgba(240,231,216,.22);padding-top:1.1rem}
html.pin .card{grid-area:1/1;border:0;padding:0;visibility:hidden;opacity:0;transform:translateY(10px);transition:opacity .3s ease,transform .5s var(--ease),visibility 0s .3s}
html.pin .card.is-active{visibility:visible;opacity:1;transform:none;transition:opacity .4s ease .05s,transform .5s var(--ease) .05s,visibility 0s}
html.pin .card--end{display:block}
html.pin .card--end .btn{margin-top:1rem}
html.pin .card__n{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);margin:0}
html.pin .card__n--show{position:static;width:auto;height:auto;clip-path:none;margin-top:.5rem;font-size:clamp(2rem,3vw,3rem)}
html.pin .panel__skip{display:inline-block;margin-top:1rem;font-family:var(--mono);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;padding:.35rem 0;text-underline-offset:.3em}
@media (min-width:900px){html.pin .stage.is-wall .pause{top:auto;bottom:16px}}
@media (min-width:900px) and (max-height:760px){
  html.pin .panel__p{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);margin:0}
  html.pin .panel{padding-block:16px}
  html.pin .cards{margin-top:.7rem;padding-top:.7rem}
  html.pin .card__l{font-size:1.45rem}
  html.pin .card__b{font-size:.92rem;line-height:1.4}
  html.pin .panel__skip{margin-top:.5rem}
}
html.pin .after{box-shadow:0 -40px 90px rgba(0,0,0,.55)}

/* Stacked stage: wall on top, panel docked at the bottom. */
@media (max-width:899px){
  html.pin .wall{--name:min(8.4vw,3.85vh);left:var(--pad);top:62px}
  html.pin .panel{left:0;right:0;top:auto;bottom:0;width:auto;padding:12px var(--pad) calc(12px + env(safe-area-inset-bottom,0px));transform:translateY(var(--w-y,8vh));border-top-width:2px}
  html.pin .panel__head .label,html.pin .panel__p{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);margin:0}
  html.pin .panel__h2{font-size:1.3rem;margin:0 0 .35rem}
  html.pin .cards{margin-top:0;border-top:0;padding-top:0}
  html.pin .card__l{font-size:1.4rem;margin-top:.25rem}
  html.pin .card__b{font-size:.9rem;line-height:1.4;margin-top:.35rem}
  html.pin .card__d{font-size:.84rem;gap:.15rem;margin-top:.45rem}
  html.pin .card__d div{grid-template-columns:5.4rem 1fr;gap:.5rem}
  html.pin .panel__skip{margin-top:.3rem;padding:.3rem 0}
  html.pin .pause,.pause{top:66px}
  .name__btn{gap:.5rem}
  .name__no{width:1.2rem;font-size:.6rem}
}
@supports (height:1svh){
  @media (max-width:899px){html.pin .wall{--name:min(8.4vw,3.85svh)}}
}

/* ---------- after the film: the page heats up ---------- */
.after{position:relative;z-index:2}

/* Instagram: hand-picked links to recent posts, newest first and largest. */
.gram{background:var(--net);padding-block:clamp(64px,9vw,130px)}
.gram__head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem 2rem;margin-bottom:clamp(28px,4vw,56px)}
.gram__h{font-family:var(--display);text-transform:uppercase;font-size:clamp(2.6rem,7vw,7rem);line-height:.98;margin-top:.6rem}
.gram__follow{font-family:var(--mono);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;padding:.6rem 0;text-underline-offset:.3em}
.gram__follow:hover{color:var(--gold)}
.gram__list{border-top:2px solid var(--chalk)}
.gram__row{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,7fr) auto;gap:.6rem clamp(16px,3vw,48px);align-items:baseline;padding-block:clamp(18px,2.2vw,30px);border-bottom:1px solid rgba(240,231,216,.24);color:var(--chalk);text-decoration:none}
.gram__meta{display:flex;flex-direction:column;gap:.25rem;font-family:var(--mono);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--grey)}
.gram__meta time{color:var(--gold)}
.gram__line{font-family:var(--serif);font-style:italic;font-size:clamp(1.3rem,2.2vw,2rem);line-height:1.18;text-wrap:pretty;transition:color .3s ease}
.gram li:first-child .gram__line{font-size:clamp(1.7rem,3.6vw,3.4rem);line-height:1.06}
.gram__go{display:inline-flex;align-items:center;gap:.6rem;font-family:var(--mono);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap}
.gram__row:hover .gram__line{color:var(--gold)}
.gram__row:hover .arrow{transform:translateX(6px)}
.gram__row:focus-visible{outline-offset:-4px}
@media (max-width:767px){
  .gram__row{grid-template-columns:minmax(0,1fr)}
  .gram__meta{flex-direction:row;flex-wrap:wrap;gap:.2rem .9rem}
}

/* Home: four doors, hotter as they go down */
.door{display:block;color:var(--chalk);text-decoration:none;padding-block:clamp(28px,4vw,64px)}
.door--1{background:var(--court)}
.door--2{background:var(--deep)}
.door--3{background:var(--court2)}
.door--4{background:var(--ember)}
.door__in{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr) auto;gap:clamp(16px,3vw,48px);align-items:center}
.door__n{font-family:var(--display);text-transform:uppercase;font-size:clamp(2.8rem,8.6vw,8.8rem);line-height:.98;transition:transform .5s var(--ease)}
.door__l{font-family:var(--serif);font-style:italic;font-size:clamp(1.4rem,2.5vw,2.3rem);line-height:1.15}
.door .arrow{width:clamp(28px,3.4vw,48px);height:auto}
.door:hover .door__n{transform:translateX(10px)}
.door:hover .arrow{transform:translateX(6px)}
.door:focus-visible{outline-color:var(--chalk);outline-offset:-8px}
.more{scroll-margin-top:-20px} /* stops at the nav's edge, with no strip of film showing */
.more+.foot{border-top:2.5px solid var(--chalk)}
@media (max-width:899px){
  .door__in{grid-template-columns:minmax(0,1fr) auto;row-gap:.3rem}
  .door__n{grid-column:1/-1}
}

/* Why */
.why{background:var(--court);padding-block:var(--section)}
.why__grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:clamp(12px,2vw,28px)}
.why__label{grid-column:1/3;padding-top:.8rem}
.why__q{grid-column:3/-1;font-family:var(--serif);font-style:italic;font-size:clamp(2.4rem,6.1vw,6.4rem);line-height:1.04}
.why__q b{font-family:var(--display);font-style:normal;font-weight:400;text-transform:uppercase;color:var(--gold);font-size:.82em;line-height:1.1}
html.motion .why__q .w{opacity:.42;transition:opacity .55s ease}
html.motion .why__q b .w{opacity:.62}
html.motion .why__q .w.is-lit,html.motion .why__q b .w.is-lit{opacity:1}
.pillars{grid-column:3/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,3vw,48px);margin-top:clamp(56px,8vw,120px)}
.pillar:nth-child(2){margin-top:clamp(0px,5vw,72px)}
.pillar:nth-child(3){margin-top:clamp(0px,10vw,144px)}
.pillar .rails{color:var(--gold);margin:.7rem 0 1rem}
.pillar h2,.pillar h3{font-family:var(--display);text-transform:uppercase;font-size:clamp(1.5rem,2.4vw,2.2rem);line-height:1.05}
.pillar p:last-child{margin-top:.6rem;color:rgba(240,231,216,.9)}
html.motion .pillar .rails{transform:scaleX(0);transition:transform 1s var(--ease) .15s}
html.motion .pillar.is-in .rails{transform:none}
@media (max-width:899px){
  .why__label,.why__q,.pillars{grid-column:1/-1}
  .why__label{padding:0 0 1rem}
  .pillars{grid-template-columns:1fr}
  .pillar:nth-child(n){margin-top:0}
}

.why__next{grid-column:3/-1;margin-top:clamp(48px,6vw,88px)}
@media (max-width:899px){.why__next{grid-column:1/-1}}

/* Reveal */
html.motion .reveal{opacity:0;transform:translateY(28px);transition:opacity .9s ease,transform .9s var(--ease)}
html.motion .reveal.is-in{opacity:1;transform:none}

/* Rituals */
.rituals{background:linear-gradient(var(--court),var(--deep));padding-block:0 var(--section)}
.rituals__p{margin-top:1rem;max-width:34rem;font-size:1.05rem}
.rituals__p a,.form__note a,.form__status a{display:inline-block;padding-block:.2rem;text-underline-offset:.2em}
.rituals__next{margin-top:clamp(40px,5vw,72px)}
.rhythms{margin-top:clamp(48px,7vw,96px);border-top:2.5px solid var(--chalk)}
.rhythm{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,9fr);column-gap:clamp(12px,2vw,28px);border-bottom:1px solid rgba(240,231,216,.28);padding-block:clamp(18px,2.4vw,32px)}
.rhythm__h{font-family:var(--serif);font-style:italic;color:var(--gold);font-size:clamp(1.7rem,3vw,2.8rem);line-height:1.05;position:sticky;top:84px;align-self:start}
.row{display:grid;grid-template-columns:2.2rem minmax(0,1.25fr) minmax(0,1fr) minmax(0,1fr);gap:clamp(8px,1.4vw,20px);align-items:baseline;padding-block:.5rem;transition:color .25s}
.row__no{font-family:var(--mono);font-size:.68rem;letter-spacing:.06em;color:var(--grey)}
.row__n{font-family:var(--display);text-transform:uppercase;font-size:clamp(1.5rem,2.9vw,2.8rem);line-height:1.05;transition:color .25s,transform .4s var(--ease)}
.row__c,.row__p{font-size:.98rem;line-height:1.35}
.row__p{color:rgba(240,231,216,.86)}
.row:hover .row__n{color:var(--gold);transform:translateX(10px)}
@media (max-width:899px){
  .rhythm{grid-template-columns:1fr;row-gap:.6rem}
  .rhythm__h{position:static}
  .row{grid-template-columns:1.8rem minmax(0,1fr);row-gap:.1rem}
  .row__c,.row__p{grid-column:2}
}

/* Membership: three strata, each hotter */
.membership{background:var(--deep)}
.membership__head{padding-bottom:clamp(40px,6vw,80px)}
.membership__p{margin-top:1rem;max-width:36rem;font-size:1.05rem}
.tier{padding-block:clamp(36px,5vw,72px)}
.tier--guest{background:var(--net)}
.tier--member{background:var(--ember)}
.tier--patron{background:var(--gold);color:var(--net)}
.tier__in{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,4fr) auto;gap:clamp(20px,3vw,48px);align-items:end}
.tier__k{font-family:var(--mono);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase}
.tier--guest .tier__k{color:var(--gold)}
.tier__t{font-family:var(--display);text-transform:uppercase;font-size:clamp(3rem,8.6vw,8.8rem);line-height:.96;margin-top:.4rem}
.tier__l{display:grid;gap:.45rem}
.tier__l li{position:relative;padding-left:1.7rem;line-height:1.35}
.tier__l li::before{content:"";position:absolute;left:0;top:.42em;width:1.05rem;height:.42rem;border-block:2px solid currentColor}
.tier--member .btn{background:var(--chalk);color:var(--net);--wipe:var(--net);--wipe-ink:var(--chalk)}
.tier--patron .btn{background:var(--net);color:var(--chalk);--wipe:var(--ember);--wipe-ink:var(--chalk)}
.tier--guest .btn{--wipe:var(--chalk);--wipe-ink:var(--net)}
@media (max-width:899px){
  .tier__in{grid-template-columns:1fr;align-items:start}
  .tier__cta{justify-self:start}
}

/* Join */
.join{background:var(--ember);padding-block:var(--section)}
.join__grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(32px,5vw,80px);align-items:end}
.join__h{font-family:var(--display);text-transform:uppercase;font-size:clamp(4rem,12.4vw,13rem);line-height:.92;margin-top:.8rem;text-wrap:balance}
.join__l{font-family:var(--serif);font-style:italic;font-size:clamp(1.6rem,2.8vw,2.6rem);line-height:1.12;margin-top:1rem;max-width:26ch}
.sheet{background:var(--chalk);color:var(--net);padding:clamp(20px,3vw,40px);box-shadow:0 30px 70px rgba(30,12,8,.4)}
@media (max-width:899px){.join__grid{grid-template-columns:1fr}}

/* Forms (always on chalk) */
.form{display:grid;gap:1rem;color:var(--net)}
.form__two{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:1rem}
.field{display:grid;gap:.35rem;min-width:0}
.field label{font-family:var(--mono);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;line-height:1.3}
.opt{letter-spacing:.04em;text-transform:none}
.form input:not(.hp),.form select,.form textarea{width:100%;min-height:48px;padding:.7rem .85rem;font-size:1rem;background:#FBF6EC;color:var(--net);border:2px solid var(--net);border-radius:0;color-scheme:light}
.form textarea{resize:vertical;min-height:96px}
.form select{-webkit-appearance:none;appearance:none;padding-right:2.4rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath fill='%231E0C08' d='M0 0h12L6 8z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .85rem center;background-size:12px 8px}
.form input[aria-invalid],.form textarea[aria-invalid]{border-color:var(--ember-ink);box-shadow:inset 0 0 0 1px var(--ember-ink)}
.field__err{color:var(--ember-ink);font-size:.9rem;font-weight:500;line-height:1.3}
.form .btn{justify-self:start;min-height:52px}
.form__note{font-size:.88rem;color:var(--ink2)}
.form__status:not(.is-on){display:none}
.form__status.is-on{border-left:4px solid var(--ember);padding:.7rem .9rem;background:#FBF6EC;font-weight:500;line-height:1.4}
.form__status a{color:var(--ember-ink)}
.sheet :focus-visible,.talk :focus-visible,.tier--patron :focus-visible,.paper .doc :focus-visible{outline-color:var(--net)}
.tier--member :focus-visible,.join :focus-visible,.foot :focus-visible{outline-color:var(--chalk)}
.sheet :focus-visible{outline-color:var(--net)}

/* Sits after the sections it overrides. */
.page-first{padding-top:clamp(128px,15vw,220px)}
.join.page-first{padding-bottom:clamp(64px,8vw,120px)}

/* Talk: white hot */
.talk{background:var(--chalk);color:var(--net);padding-block:var(--section)}
.talk__grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(32px,5vw,80px);align-items:start}
.talk__h{font-family:var(--display);text-transform:uppercase;font-size:clamp(3.4rem,9vw,9.5rem);line-height:.94;color:var(--ember);margin-top:.8rem}
.talk__p{margin-top:1rem;max-width:30rem;font-size:1.08rem;color:var(--ink2)}
.talk .tmark{width:min(100%,560px);height:auto;margin-top:clamp(32px,6vw,88px);color:var(--ember)}
@media (max-width:899px){.talk .tmark{display:none}}
@media (max-width:899px){.talk__grid{grid-template-columns:1fr}}

/* Footer: the ember field and the logo are the same red, so the lockup floats */
.foot{background:var(--ember);color:var(--chalk);padding-block:clamp(40px,6vw,88px) clamp(28px,3vw,44px)}
.foot__in{display:grid;grid-template-columns:auto minmax(0,1fr);gap:clamp(28px,6vw,96px);align-items:end}
.foot__logo{display:block;width:clamp(190px,27vw,400px)}
.foot__logo img{width:100%;height:auto}
.foot__line{font-family:var(--serif);font-style:italic;font-size:clamp(1.6rem,3vw,2.8rem);line-height:1.1;max-width:24ch}
.foot__mono{font-family:var(--mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;margin-top:1.2rem;line-height:1.7}
.foot__mono a{display:inline-block;padding-block:.25rem}
.foot__mono a,.foot__links a,.foot__small a{text-underline-offset:.2em}
.foot__links{display:flex;flex-wrap:wrap;gap:.2rem 1.4rem;margin-top:1.2rem}
.foot__links--pages{font-weight:600}

.foot__links a{display:inline-block;padding:.35rem 0}
.foot__small{margin-top:.8rem;font-size:.86rem}
.foot__small a{display:inline-block;padding:.2rem 0}
@media (max-width:699px){.foot__in{grid-template-columns:1fr}}

/* ---------- legal pages: chalk paper ---------- */
.paper{background:var(--chalk);color:var(--net)}
html .nav--paper,html:not(.js) .nav--paper{position:absolute;background:none;justify-content:flex-end;flex-wrap:nowrap;padding-left:var(--pad)}
.back{font-family:var(--mono);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;padding:.6rem 0;color:var(--net);text-underline-offset:.3em}
.doc{max-width:46rem;margin-inline:auto;padding:clamp(140px,16vw,190px) var(--pad) clamp(72px,9vw,120px)}
.doc__h1{font-family:var(--display);text-transform:uppercase;font-size:clamp(3.2rem,10vw,7.4rem);line-height:.96;color:var(--ember);margin-top:.7rem}
.doc .doc__intro{font-family:var(--serif);font-style:italic;font-size:clamp(1.5rem,3vw,2.1rem);line-height:1.15;margin-top:1rem;color:var(--net)}
.doc h2{font-family:var(--display);text-transform:uppercase;font-size:1.5rem;line-height:1.1;margin-top:2.4rem}
.doc p,.doc li{margin-top:.6rem;font-size:1.05rem;line-height:1.6;color:var(--ink2)}
.doc ul{margin-top:.6rem}
.doc li{position:relative;padding-left:1.7rem}
.doc li::before{content:"";position:absolute;left:0;top:.58em;width:1.05rem;height:.42rem;border-block:2px solid var(--ember)}
.doc a{display:inline-block;padding-block:.1rem;color:var(--ember-ink);text-underline-offset:.2em}
.paper .doc .label{color:var(--ember-ink);font-size:.72rem;margin:0;line-height:1.4}

/* ---------- 404 ---------- */
html .nav--lost,html:not(.js) .nav--lost{position:absolute;background:none}
.lost__main{position:relative;min-height:100vh;min-height:100svh;display:flex;align-items:flex-end;overflow:hidden}
.lost__flame{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:translateX(16%) scale(1.3)}
.lost__in{position:relative;padding:120px var(--pad) clamp(32px,5vw,64px)}
.lost__h{font-family:var(--display);text-transform:uppercase;font-size:clamp(4rem,14vw,14rem);line-height:.92;margin-top:.7rem;mix-blend-mode:screen}
.lost__h em{font-family:var(--serif);text-transform:none;color:var(--gold)}
.lost__p{max-width:30rem;margin:1rem 0 1.4rem;font-size:1.1rem;text-shadow:0 2px 18px rgba(30,12,8,.8)}

/* ---------- system preferences ---------- */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}
@media (forced-colors:active){
  .name__txt::after{display:none}
  .name.is-active .name__txt{text-decoration:underline}
  .flame,.scrim{display:none}
}
@media print{
  html,body,.after,.why,.rituals,.membership,.join,.talk,.foot,.tier,.film,.gram{background:#fff!important;color:#000!important}
  .nav,.flame,.scrim,.pause,.wall,.skip,.foot__logo{display:none!important}
  .hero{min-height:0}
  .hero__h1,.big,.join__h,.talk__h{font-size:2.4rem;color:#000;mix-blend-mode:normal}
  .card__l,.card__k,.big em,.ln--em,.rhythm__h,.tier__k,.label{color:#000!important}
  a[href^="http"]::after{content:" (" attr(href) ")"}
}
