@font-face {
  font-family: 'Instrument Serif';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/InstrumentSerif-italic-400.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: 'Instrument Serif';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/InstrumentSerif-normal-400.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: 'Inter Tight';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(fonts/InterTight-normal-300.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: 'Inter Tight';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/InterTight-normal-400.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: 'Inter Tight';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(fonts/InterTight-normal-500.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;
}
:root{
  --black:#000; --ink:#070707; --ink2:#0d0d0d; --warm:#efe9df; --warm2:#d9d3c8; --grey:#8b8780; --grey2:#5d5a55; --silver:#b9bcc0; --line:rgba(239,233,223,.14);
  --serif:'Instrument Serif', 'Times New Roman', serif; --sans:'Inter Tight', 'Helvetica Neue', Arial, sans-serif;
  --pad:clamp(1.25rem, 5vw, 6rem); --measure:38rem;
  --ease:cubic-bezier(.2,.7,.1,1);
}
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
html{background:var(--black);color:var(--warm);-webkit-text-size-adjust:100%;scroll-behavior:smooth;overflow-x:clip}
body{margin:0;font-family:var(--sans);font-weight:300;font-size:clamp(1rem,.95rem + .25vw,1.2rem);line-height:1.7;letter-spacing:.005em;overflow-x:clip;background:var(--black);-webkit-font-smoothing:antialiased}
a{color:inherit}
:focus-visible{outline:1px solid var(--silver);outline-offset:6px}
.skip{position:absolute;left:1rem;top:-4rem;z-index:100;background:var(--warm);color:#000;padding:.6rem 1rem;font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;text-decoration:none}
.skip:focus{top:1rem}
/* film grain */
.grain{position:fixed;inset:-50%;width:200%;height:200%;pointer-events:none;z-index:60;opacity:.07;background-image:url("media/grain.png");background-size:256px 256px;animation:grain 1.2s steps(6) infinite;mix-blend-mode:screen}
@keyframes grain{0%{transform:translate(0,0)}20%{transform:translate(-4%,3%)}40%{transform:translate(3%,-5%)}60%{transform:translate(-2%,6%)}80%{transform:translate(5%,1%)}100%{transform:translate(0,0)}}
/* header */
.top{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:clamp(1rem,2.2vw,1.8rem) var(--pad);mix-blend-mode:difference;color:#fff}
.top a{text-decoration:none}
.top__mark{font-family:var(--sans);font-weight:500;font-size:.72rem;letter-spacing:.38em}
.top__nav{display:flex;gap:clamp(1rem,2.5vw,2.5rem)}
.top__nav a{font-size:.68rem;letter-spacing:.26em;text-transform:uppercase;opacity:.75;transition:opacity .4s}
.top__nav a:hover,.top__nav a:focus-visible{opacity:1}
/* sound */
.sound{position:fixed;right:clamp(1rem,2.5vw,2rem);bottom:calc(clamp(1rem,2.5vw,2rem) + env(safe-area-inset-bottom));z-index:70;display:flex;align-items:center;gap:.7rem;padding:.75rem 1.1rem;border:1px solid rgba(239,233,223,.28);border-radius:999px;background:rgba(0,0,0,.55);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--warm);font:500 .66rem/1 var(--sans);letter-spacing:.24em;cursor:pointer;transition:border-color .5s,background .5s}
.sound:hover{border-color:rgba(239,233,223,.6);background:rgba(0,0,0,.75)}
.sound__bars{display:flex;align-items:flex-end;gap:2px;height:10px}
.sound__bars i{display:block;width:2px;height:3px;background:var(--silver);transition:height .4s}
.sound[aria-pressed="true"] .sound__bars i{animation:bar 1.1s var(--ease) infinite alternate}
.sound[aria-pressed="true"] .sound__bars i:nth-child(2){animation-delay:-.4s}
.sound[aria-pressed="true"] .sound__bars i:nth-child(3){animation-delay:-.8s}
.sound[aria-pressed="true"] .sound__bars i:nth-child(4){animation-delay:-.2s}
@keyframes bar{from{height:2px}to{height:10px}}
.sound.is-hint{border-color:rgba(239,233,223,.5)}
/* hero */
.hero{position:relative;min-height:100vh;min-height:100svh;display:grid;place-items:center;padding:clamp(6rem,14vh,10rem) var(--pad) clamp(5rem,12vh,8rem);overflow:hidden;background:radial-gradient(120% 80% at 50% 45%, #0b0b0b 0%, #000 70%)}
.hero__light{position:absolute;left:var(--mx,50%);top:var(--my,45%);width:60vmax;height:60vmax;transform:translate(-50%,-50%);background:radial-gradient(circle, rgba(200,204,210,.07) 0%, rgba(200,204,210,0) 60%);pointer-events:none;transition:left 1.6s var(--ease), top 1.6s var(--ease)}
.hero__inner{position:relative;text-align:center;max-width:72rem;width:100%}
.hero__title{margin:0;font-family:var(--serif);font-weight:400;font-size:clamp(2.3rem,10.5vw,11.5rem);line-height:.95;letter-spacing:.06em;color:var(--warm);white-space:nowrap}
.hero__dot{color:var(--silver)}
.hero__sub{margin:clamp(1.4rem,3vw,2.6rem) 0 0;font-family:var(--serif);font-style:italic;font-size:clamp(1.25rem,2.4vw,2.2rem);color:var(--warm2);line-height:1.3}
.hero__text{max-width:33rem;margin:clamp(2.5rem,6vh,4.5rem) auto 0;color:var(--grey);font-size:clamp(.92rem,.9rem + .15vw,1.05rem)}
.hero__text p{margin:0 0 1em}
.status{margin:clamp(2.2rem,5vh,3.6rem) 0 0;font-size:.66rem;letter-spacing:.34em;color:var(--silver);font-weight:500}
.status__dot{display:inline-block;color:#d6d9dc;margin-right:.6em;animation:pulse 2.8s ease-in-out infinite}
@keyframes pulse{0%,100%{opacity:.25}50%{opacity:1}}
.cue{position:absolute;left:50%;bottom:clamp(1.2rem,4vh,2.5rem);transform:translateX(-50%);width:1px;height:56px;overflow:hidden}
.cue span{position:absolute;inset:0;background:linear-gradient(to bottom,transparent,var(--warm),transparent);animation:cue 2.6s var(--ease) infinite}
@keyframes cue{from{transform:translateY(-100%)}to{transform:translateY(100%)}}
/* intro reveal */
.js .hero__word,.js .hero__dot{display:inline-block;opacity:0;filter:blur(14px);transform:translateY(.12em);transition:opacity 2.4s var(--ease),filter 2.4s var(--ease),transform 2.4s var(--ease)}
.js .hero__sub,.js .hero__text,.js .status{opacity:0;filter:blur(8px);transition:opacity 2s var(--ease),filter 2s var(--ease)}
.is-in .hero__word,.is-in .hero__dot{opacity:1;filter:none;transform:none}
.is-in .hero__dot{transition-delay:.5s}.is-in .hero__word+.hero__dot+.hero__word{transition-delay:.8s}
.is-in .hero__sub{opacity:1;filter:none;transition-delay:1.6s}
.is-in .hero__text{opacity:1;filter:none;transition-delay:2.4s}
.is-in .status{opacity:1;filter:none;transition-delay:3.2s}
/* films */
.film{position:relative;height:100vh;height:100svh;min-height:420px;background:#000;overflow:hidden}
.film__frame{position:absolute;inset:0}
.film__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--pos,50% 50%);filter:saturate(.9) contrast(1.04);opacity:0;transform:scale(1.06);transition:opacity 2.2s var(--ease),transform 3.5s var(--ease)}
.film.is-visible .film__video{opacity:1;transform:scale(1)}
.film__veil{position:absolute;inset:0;pointer-events:none;background:linear-gradient(to bottom,#000 0%,rgba(0,0,0,.25) 18%,rgba(0,0,0,0) 35%,rgba(0,0,0,0) 65%,rgba(0,0,0,.3) 82%,#000 100%),radial-gradient(ellipse at center,rgba(0,0,0,0) 55%,rgba(0,0,0,.45) 100%)}
.film__label{position:absolute;left:var(--pad);bottom:clamp(1.5rem,5vh,3rem);margin:0;font-size:.62rem;letter-spacing:.34em;text-transform:uppercase;color:rgba(239,233,223,.7);display:flex;gap:1.1em;align-items:center}
.film__label span{font-family:var(--serif);font-size:1.1rem;letter-spacing:.05em;color:var(--silver)}
#film-3{--pos:50% 45%}
/* editorial */
.ed{position:relative;padding:clamp(7rem,22vh,14rem) var(--pad);max-width:96rem;margin:0 auto}
.kicker{margin:0 0 clamp(1.5rem,3vw,2.5rem);font-size:.64rem;letter-spacing:.36em;text-transform:uppercase;color:var(--grey);font-weight:500;display:flex;align-items:center;gap:1rem}
.kicker::before{content:"";width:2.5rem;height:1px;background:var(--grey2)}
.ed__h{margin:0;font-family:var(--serif);font-weight:400;font-size:clamp(2.6rem,7vw,7.5rem);line-height:1;letter-spacing:-.01em;max-width:14ch;color:var(--warm)}
.ed__h--xl{font-size:clamp(2.8rem,8.2vw,9.5rem);max-width:13ch}
.ed__body{max-width:var(--measure);margin:clamp(3rem,8vh,6rem) 0 0 auto;color:var(--warm2)}
.ed__body p{margin:0 0 1.35em}
.ed__body p:first-child{font-family:var(--serif);font-size:clamp(1.5rem,2.4vw,2.2rem);line-height:1.25;color:var(--warm)}
.ed__body p:last-child{margin-bottom:0}
.ed__lede{margin:clamp(2rem,5vh,3rem) 0 0;font-family:var(--serif);font-style:italic;font-size:clamp(1.3rem,2.2vw,2rem);color:var(--warm2);max-width:30ch}
.ed--story{padding-top:clamp(5rem,14vh,9rem)}
.ed--culture{padding-bottom:clamp(3rem,8vh,5rem)}
.ed--culture .ed__body p:nth-child(n+2):nth-child(-n+6){font-family:var(--serif);font-size:clamp(1.25rem,1.8vw,1.6rem);color:var(--warm);margin-bottom:.5em}
.ed--culture .ed__body p:last-child{margin-top:1.6em}
.ed--about .ed__h,.ed--journal .ed__h,.ed--contact .ed__h{font-size:clamp(2.4rem,5.5vw,5.5rem)}
.ed--about,.ed--journal,.ed--contact{padding-top:clamp(5rem,14vh,9rem);padding-bottom:clamp(5rem,14vh,9rem);border-top:1px solid var(--line)}
.ed--about{border-top:0;padding-top:clamp(6rem,16vh,10rem)}
.journal__state{margin:clamp(2rem,5vh,3rem) 0 0;font-size:.7rem;letter-spacing:.3em;text-transform:uppercase;color:var(--silver)}
.journal__link,.contact__mail{display:inline-block;text-decoration:none;font-family:var(--serif);font-size:clamp(1.6rem,3.6vw,3.4rem);line-height:1.15;background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat;transition:background-size .9s var(--ease),color .5s;overflow-wrap:anywhere}
.journal__link{margin-top:clamp(2rem,5vh,3rem)}
.journal__link:hover,.contact__mail:hover,.journal__link:focus-visible,.contact__mail:focus-visible{background-size:100% 1px;color:#fff}
.contact__label{margin:clamp(2rem,5vh,3rem) 0 .4rem;font-size:.66rem;letter-spacing:.32em;text-transform:uppercase;color:var(--grey)}
/* culture words: scroll-driven, one at a time */
.js .words{position:relative;height:420vh}
.js .words__stage{position:sticky;top:0;height:100vh;height:100svh;display:grid;place-items:center;overflow:hidden}
.js .words__list{list-style:none;margin:0;padding:0;position:relative;width:100%;height:1.2em;font-family:var(--serif);font-size:clamp(2rem,8.4vw,10rem);line-height:1.2;text-align:center;letter-spacing:.05em}
.js .words__w{position:absolute;left:0;right:0;top:0;opacity:0;filter:blur(18px);transform:translateY(.25em) scale(.98);transition:opacity 1.2s var(--ease),filter 1.2s var(--ease),transform 1.4s var(--ease);color:var(--warm);white-space:nowrap}
.js .words__w.is-on{opacity:1;filter:none;transform:none}
.js .words__w.is-past{opacity:0;filter:blur(18px);transform:translateY(-.25em) scale(1.01)}
.js .words__count{position:absolute;bottom:clamp(2rem,8vh,5rem);left:50%;transform:translateX(-50%);margin:0;font-size:.64rem;letter-spacing:.34em;color:var(--grey)}
.words__n{color:var(--warm)}
/* timeline */
.tl{position:relative;display:flex;justify-content:space-between;align-items:flex-start;margin:clamp(5rem,14vh,9rem) 0 0;padding-top:1.6rem}
.tl__line{position:absolute;left:0;right:0;top:calc(1.6rem + 4px);height:1px;background:var(--line);overflow:hidden}
.tl__pulse{position:absolute;top:0;left:0;height:1px;width:22%;background:linear-gradient(90deg,transparent,var(--silver),transparent);animation:tl 7s linear infinite}
@keyframes tl{from{transform:translateX(-100%)}to{transform:translateX(560%)}}
.tl__step{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:1.2rem;flex:1}
.tl__step:last-child{flex:0 0 auto;align-items:flex-end}
.tl__node{width:9px;height:9px;border-radius:50%;border:1px solid var(--grey);background:#000}
.tl__step.is-now .tl__node{background:var(--warm);border-color:var(--warm);box-shadow:0 0 0 6px rgba(239,233,223,.06);animation:pulse 2.8s ease-in-out infinite}
.tl__label{font-size:.66rem;letter-spacing:.32em;color:var(--grey);font-weight:500}
.tl__step.is-now .tl__label{color:var(--warm)}
.tl__arrow{display:none}
.js .tl .tl__step{opacity:0;transform:translateY(10px);transition:opacity 1.4s var(--ease),transform 1.4s var(--ease)}
.js .tl.is-in .tl__step{opacity:1;transform:none}
.js .tl.is-in .tl__step:nth-child(3){transition-delay:.35s}.js .tl.is-in .tl__step:nth-child(4){transition-delay:.7s}.js .tl.is-in .tl__step:nth-child(5){transition-delay:1.05s}.js .tl.is-in .tl__step:nth-child(6){transition-delay:1.4s}
/* generic reveal */
.js .rv{opacity:0;filter:blur(6px);transform:translateY(18px);transition:opacity 1.6s var(--ease),filter 1.6s var(--ease),transform 1.6s var(--ease)}
.js .rv.is-in{opacity:1;filter:none;transform:none}
.js .tl.rv{filter:none;transform:none}
/* footer */
.foot{padding:clamp(6rem,16vh,10rem) var(--pad) calc(clamp(3rem,8vh,5rem) + 4rem);border-top:1px solid var(--line);text-align:center;color:var(--grey)}
.foot__mark{margin:0;font-family:var(--serif);font-size:clamp(2rem,6vw,5rem);letter-spacing:.08em;color:var(--warm)}
.foot__line{margin:1rem 0 0;font-family:var(--serif);font-style:italic;font-size:clamp(1.1rem,1.8vw,1.5rem);color:var(--warm2)}
.foot__nav{display:flex;justify-content:center;flex-wrap:wrap;gap:1.4rem 2.6rem;margin:clamp(2.5rem,6vh,4rem) 0 0}
.foot__nav a{font-size:.68rem;letter-spacing:.3em;text-transform:uppercase;text-decoration:none;color:var(--warm2)}
.foot__nav a:hover,.foot__nav a:focus-visible{color:#fff}
.foot__meta{display:flex;justify-content:center;flex-wrap:wrap;gap:1rem 3rem;margin:2.4rem 0 0;font-size:.85rem}
.foot__meta div{display:flex;gap:.8rem;align-items:baseline}
.foot__meta dt{font-size:.6rem;letter-spacing:.3em;text-transform:uppercase;color:var(--grey2)}
.foot__meta dd{margin:0;color:var(--warm2);overflow-wrap:anywhere}
.foot__meta a{text-decoration:none;border-bottom:1px solid var(--line)}
.foot__copy{margin:3rem 0 0;font-size:.75rem}
.foot__small{margin:.5rem 0 0;font-size:.62rem;letter-spacing:.24em;text-transform:uppercase;color:var(--grey2)}
.foot__legal{letter-spacing:.06em;text-transform:none;font-size:.72rem;margin-top:1.4rem}
/* responsive */
@media (max-width:700px){
  .top__mark{font-size:.62rem;letter-spacing:.28em}
  .top__nav{gap:.9rem}.top__nav a{font-size:.58rem;letter-spacing:.18em}
  .hero__title{letter-spacing:.02em}
  .ed__body{margin-left:0}
  .tl{flex-direction:column;gap:2.2rem;padding-top:0;padding-left:1.6rem}
  .tl__line{left:4px;right:auto;top:0;bottom:0;width:1px;height:auto}
  .tl__pulse{width:1px;height:22%;background:linear-gradient(180deg,transparent,var(--silver),transparent);animation-name:tlv}
  .tl__step,.tl__step:last-child{flex-direction:row;align-items:center;margin-left:-1.6rem}
  .film__label{bottom:1.2rem}
  .sound{padding:.65rem .9rem}
  .js .words__list{letter-spacing:.03em}
}
@keyframes tlv{from{transform:translateY(-100%)}to{transform:translateY(560%)}}
@media (max-width:380px){.top__nav a{letter-spacing:.12em}.top__nav{gap:.7rem}}
@media (min-width:2200px){html{font-size:max(16px,min(calc(100vw / 120),calc(100vh / 67.5)))}}
@media (orientation:portrait) and (max-width:900px){.film{height:86svh}}
/* reduced motion: posters only, no movement */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
  .grain{display:none}
  .js .rv,.js .hero__word,.js .hero__dot,.js .hero__sub,.js .hero__text,.js .status,.js .tl .tl__step{opacity:1!important;filter:none!important;transform:none!important}
  .film__video{opacity:1;transform:none}
  .js .words{height:auto}
  .js .words__stage{position:relative;height:auto;padding:4rem var(--pad) 8rem}
  .js .words__list{height:auto;font-size:clamp(1.8rem,6vw,5rem);line-height:1.35}
  .js .words__w{position:static;opacity:1;filter:none;transform:none}
  .js .words__count{display:none}
}
.no-js-hide{display:none}
.words__list{list-style:none;margin:0 auto;padding:4rem var(--pad);font-family:var(--serif);font-size:clamp(1.8rem,6vw,5rem);line-height:1.35;text-align:center;letter-spacing:.06em}
.words__count{display:none}
.js .words__count{display:block}
@media (prefers-reduced-motion:reduce){.js .words__count{display:none}}
@supports not (overflow:clip){html,body{overflow-x:hidden}}
@media (min-aspect-ratio:21/9){.film__video{object-position:50% 30%}}

/* ===== v2 — warm, alive, still professional ===== */
:root{
  --amber:#ffb547; --coral:#ff6a4d; --peach:#ffd6ad; --rose:#ff8fa3; --sun:#ffd166;
  --warm:#fff3e4; --warm2:#f1dcc6; --grey:#b3a597; --grey2:#7d6f63; --silver:#ffd6ad;
  --line:rgba(255,214,173,.16);
  --glow:0 0 40px rgba(255,140,80,.35);
  --grad:linear-gradient(100deg,var(--sun) 0%,var(--amber) 35%,var(--coral) 70%,var(--rose) 100%);
}
html,body{background:#060403}
::selection{background:var(--coral);color:#120804}
:focus-visible{outline:2px solid var(--amber);outline-offset:5px;border-radius:4px}
.grain{opacity:.035}
/* top bar */
.top__mark{transition:letter-spacing .5s var(--ease),color .4s}
.top__mark:hover{color:var(--amber);letter-spacing:.32em}
.top__nav a{position:relative;transition:color .35s}
.top__nav a::after{content:"";position:absolute;left:0;right:0;bottom:-.35em;height:2px;border-radius:2px;background:var(--grad);transform:scaleX(0);transform-origin:left;transition:transform .45s var(--ease)}
.top__nav a:hover,.top__nav a:focus-visible{color:var(--peach)}
.top__nav a:hover::after,.top__nav a:focus-visible::after{transform:scaleX(1)}
/* hero: warm sunrise glow */
.hero{background:radial-gradient(90% 70% at 50% 110%, rgba(255,106,77,.20) 0%, rgba(255,181,71,.08) 35%, rgba(0,0,0,0) 70%), radial-gradient(120% 80% at 50% 40%, #120a06 0%, #060403 70%)}
.hero::before,.hero::after{content:"";position:absolute;border-radius:50%;filter:blur(60px);pointer-events:none;opacity:.8;mix-blend-mode:screen}
.hero::before{width:46vmax;height:46vmax;left:-12vmax;top:8%;background:radial-gradient(circle,rgba(255,181,71,.45),rgba(255,181,71,0) 65%);animation:floatA 16s ease-in-out infinite alternate}
.hero::after{width:40vmax;height:40vmax;right:-10vmax;bottom:-6%;background:radial-gradient(circle,rgba(255,106,77,.42),rgba(255,106,77,0) 65%);animation:floatB 19s ease-in-out infinite alternate}
@keyframes floatA{to{transform:translate(14vmax,10vmax) scale(1.15)}}
@keyframes floatB{to{transform:translate(-12vmax,-12vmax) scale(1.1)}}
.hero__light{width:70vmax;height:70vmax;background:radial-gradient(circle, rgba(255,190,120,.16) 0%, rgba(255,140,90,.06) 35%, rgba(255,140,90,0) 62%)}
.hero__inner{position:relative;z-index:1}
.hero__dot{color:var(--coral);text-shadow:0 0 30px rgba(255,106,77,.7)}
.hero__title .hero__word:last-child{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;background-size:200% 100%;animation:shine 7s ease-in-out infinite alternate}
@keyframes shine{from{background-position:0% 50%}to{background-position:100% 50%}}
.hero__sub{color:var(--peach)}
.status{display:inline-flex;align-items:center;gap:.2em;padding:.65em 1.2em;border-radius:999px;border:1px solid rgba(255,181,71,.35);background:rgba(255,181,71,.07);color:var(--warm);transition:transform .4s var(--ease),background .4s,border-color .4s}
.status:hover{transform:translateY(-2px);background:rgba(255,181,71,.14);border-color:rgba(255,181,71,.6)}
.status__dot{color:var(--amber);text-shadow:0 0 12px var(--amber)}
.cue span{background:linear-gradient(to bottom,transparent,var(--amber),transparent)}
/* films: brighter, warmer, less vignette */
.film__video{filter:saturate(1.12) contrast(1.02) brightness(1.04)}
.film__veil{background:linear-gradient(to bottom,#060403 0%,rgba(6,4,3,.10) 14%,rgba(0,0,0,0) 28%,rgba(0,0,0,0) 72%,rgba(6,4,3,.15) 86%,#060403 100%),radial-gradient(ellipse at center,rgba(0,0,0,0) 70%,rgba(20,8,4,.25) 100%)}
.film__frame::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(120deg,rgba(255,181,71,.10),rgba(255,106,77,0) 40%,rgba(255,143,163,.08));mix-blend-mode:soft-light}
.film__label{color:var(--warm);padding:.6em 1.1em;border-radius:999px;background:rgba(10,6,4,.38);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,214,173,.22);z-index:2;transition:transform .5s var(--ease),border-color .5s}
.film:hover .film__label{transform:translateY(-3px);border-color:rgba(255,181,71,.6)}
.film__label span{color:var(--amber)}
/* editorial sections */
.ed{isolation:isolate}
.ed::before{content:"";position:absolute;z-index:-1;width:38rem;max-width:80vw;aspect-ratio:1;border-radius:50%;filter:blur(90px);opacity:.3;pointer-events:none;background:radial-gradient(circle,var(--amber),rgba(255,181,71,0) 65%);top:10%;right:-8rem;animation:floatB 22s ease-in-out infinite alternate}
.ed--culture::before,.ed--about::before{background:radial-gradient(circle,var(--coral),rgba(255,106,77,0) 65%);left:-10rem;right:auto}
.ed--future::before{background:radial-gradient(circle,var(--rose),rgba(255,143,163,0) 65%);opacity:.16}
.kicker{color:var(--amber)}
.kicker::before{height:2px;border-radius:2px;background:var(--grad);width:3rem}
.ed__h{transition:letter-spacing .8s var(--ease)}
.ed__body p{transition:color .4s,transform .4s var(--ease)}
.ed__body p:hover{color:var(--peach)}
.ed--culture .ed__body p:nth-child(n+2):nth-child(-n+6){color:var(--warm)}
/* culture words: warm gradient glow */
.js .words__w{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;filter:blur(18px) drop-shadow(0 0 0 transparent)}
.js .words__w.is-on{filter:drop-shadow(0 0 28px rgba(255,140,80,.35))}
.words__n{color:var(--amber)}
.words{background:radial-gradient(60% 50% at 50% 50%,rgba(255,140,80,.10),rgba(0,0,0,0) 70%)}
/* timeline */
.tl__line{background:rgba(255,214,173,.2)!important}
.tl__pulse{height:2px;background:linear-gradient(90deg,transparent,var(--amber),var(--coral),transparent)}
.tl__node{border-color:var(--amber);background:#060403;transition:transform .4s var(--ease),background .4s,box-shadow .4s}
.tl__step.is-now .tl__node{background:var(--amber);box-shadow:0 0 0 6px rgba(255,181,71,.18),0 0 24px rgba(255,181,71,.7)}
.tl__step:hover .tl__node{transform:scale(1.5);background:var(--coral);box-shadow:0 0 18px rgba(255,106,77,.8)}
.tl__step.is-now .tl__label{color:var(--amber)}
.tl__step:hover .tl__label{color:var(--peach)}
.tl__label{transition:color .3s}
.tl__arrow{color:var(--coral)}
/* links */
.journal__link,.contact__mail{background:var(--grad) 0 100%/0 2px no-repeat;transition:background-size .7s var(--ease),color .4s,transform .4s var(--ease)}
.journal__link:hover,.contact__mail:hover,.journal__link:focus-visible,.contact__mail:focus-visible{background-size:100% 2px;color:var(--peach);transform:translateX(4px)}
.contact__label{color:var(--amber)}
.journal__state{color:var(--peach)}
/* sound button */
.sound{border-color:rgba(255,181,71,.45);background:rgba(18,10,6,.62);transition:transform .35s var(--ease),border-color .4s,background .4s,box-shadow .4s}
.sound:hover{transform:translateY(-2px) scale(1.03);border-color:var(--amber);background:rgba(30,16,8,.8);box-shadow:var(--glow)}
.sound[aria-pressed="true"]{background:linear-gradient(100deg,rgba(255,181,71,.95),rgba(255,106,77,.95));border-color:transparent;color:#1a0b04;box-shadow:0 8px 30px rgba(255,106,77,.35)}
.sound[aria-pressed="true"] .sound__bars i{background:#1a0b04}
.sound__bars i{background:var(--amber)}
/* footer */
.foot{border-top:0;position:relative;background:radial-gradient(70% 60% at 50% 0%,rgba(255,140,80,.10),rgba(0,0,0,0) 70%)}
.foot::before{content:"";position:absolute;left:var(--pad);right:var(--pad);top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,181,71,.6),rgba(255,106,77,.6),transparent)}
.foot__mark{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.foot__nav a{transition:color .3s}
.foot__nav a:hover,.foot__nav a:focus-visible{color:var(--amber)}
/* reveals: a touch livelier */
.js .rv{transition-timing-function:cubic-bezier(.2,.9,.25,1.15)}
@media (prefers-reduced-motion:reduce){
  .hero::before,.hero::after,.ed::before,.hero__title .hero__word:last-child{animation:none}
}
