:root{--bg:#f5efe3;--ink:#141210;--steel:#5c5a55;--amber:#f5a524;--paper:#ece4d2;--rule:#1412101f;--max:1200px;--gutter:clamp(1.25rem, 4vw, 3rem);--f-display:"Fraunces", "Instrument Serif", Georgia, serif;--f-body:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);font-family:var(--f-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;touch-action:pan-y;margin:0;padding:0;font-size:17px;line-height:1.6}html{scroll-behavior:auto}img{max-width:100%;height:auto;display:block}a{color:inherit}.masthead{border-bottom:1px solid var(--rule);padding:1.1rem var(--gutter);background:var(--bg);z-index:50;letter-spacing:.02em;justify-content:space-between;align-items:center;font-size:.85rem;display:flex;position:sticky;top:0}.masthead .brand{font-family:var(--f-display);letter-spacing:.01em;font-size:1rem;font-weight:500}.masthead nav a{color:var(--steel);margin-left:1.25rem;text-decoration:none;transition:color .2s}.masthead nav a:hover{color:var(--ink)}.wrap{max-width:var(--max);padding:0 var(--gutter);margin:0 auto}section{padding:clamp(4rem,10vw,9rem) 0}.eyebrow{font-family:var(--f-body);text-transform:uppercase;letter-spacing:.18em;color:var(--amber);margin:0 0 1.25rem;font-size:.78rem;font-weight:600}h1,h2,h3{font-family:var(--f-display);color:var(--ink);letter-spacing:-.01em;font-weight:400}h2{font-variation-settings:"opsz" 72, "SOFT" 20;margin:0 0 1.5rem;font-size:clamp(2rem,4vw,3.25rem);line-height:1.05}h3{margin:0 0 .5rem;font-size:clamp(1.25rem,2vw,1.5rem);line-height:1.25}p{margin:0 0 1.2em}.lede p{color:var(--ink);font-size:clamp(1.05rem,1.3vw,1.2rem);line-height:1.65}.hero{padding-top:clamp(3rem,7vw,6rem);padding-bottom:clamp(4rem,9vw,8rem);position:relative;overflow:hidden}.hero .kicker{font-family:var(--f-body);letter-spacing:.2em;text-transform:uppercase;color:var(--steel);margin:0 0 2rem;font-size:.82rem}.hero h1{letter-spacing:-.02em;font-variation-settings:"opsz" 120, "SOFT" 30;max-width:18ch;margin:0 0 2.5rem;font-size:clamp(2.5rem,6.5vw,5.8rem);line-height:.98}.hero h1 em{color:var(--amber);font-style:italic}.hero .lede{max-width:42rem}.hero .pivot{border-top:1px solid var(--rule);font-family:var(--f-display);color:var(--ink);max-width:40rem;margin-top:2.5rem;padding-top:2.5rem;font-size:clamp(1.2rem,1.8vw,1.5rem);font-style:italic;line-height:1.4;display:block}.cast{border-top:1px solid var(--rule);background:var(--paper)}.cast-grid{grid-template-columns:1fr;gap:3rem;margin-top:3rem;display:grid}@media (width>=720px){.cast-grid{grid-template-columns:repeat(3,1fr)}}.cast-card .portrait{aspect-ratio:4/5;background:var(--paper);border:1px solid var(--rule);margin-bottom:1.25rem;overflow:hidden}.cast-card .portrait img{object-fit:cover;width:100%;height:100%}.cast-card .role{font-family:var(--f-body);text-transform:uppercase;letter-spacing:.14em;color:var(--amber);margin-bottom:.3rem;font-size:.75rem;font-weight:600}.cast-card h3{margin-bottom:.5rem}.cast-card p{color:var(--steel);font-size:.97rem}.timeline h2{max-width:18ch}.timeline-list{margin:4rem 0 0;padding:0;list-style:none;position:relative}.timeline-list:before{content:"";background:var(--rule);width:1px;position:absolute;top:0;bottom:0;left:0}@media (width>=860px){.timeline-list:before{left:18%}}.milestone{border-bottom:1px solid var(--rule);grid-template-columns:1fr;gap:1rem 2.5rem;padding:2rem 0 2rem 1.25rem;display:grid;position:relative}@media (width>=860px){.milestone{grid-template-columns:18% 1fr 260px;padding-left:0}}.milestone:before{content:"";background:var(--amber);border-radius:50%;width:7px;height:7px;position:absolute;top:2.6rem;left:-3px}@media (width>=860px){.milestone:before{left:calc(18% - 3px)}}.milestone .when{font-family:var(--f-body);letter-spacing:.1em;text-transform:uppercase;color:var(--steel);padding-top:.6rem;font-size:.82rem;font-weight:600}.milestone .what h3{font-family:var(--f-display);margin:0 0 .5rem;font-size:clamp(1.2rem,1.6vw,1.5rem);line-height:1.2}.milestone .what p{color:var(--steel);max-width:48ch;margin:0;font-size:.97rem}.milestone .shot{background:var(--paper);border:1px solid var(--rule);aspect-ratio:4/3;overflow:hidden}.milestone .shot img{object-fit:cover;width:100%;height:100%}.chapter{background:var(--ink);color:var(--bg);padding:0;position:relative}.chapter-pin{height:300vh;position:relative}.chapter-stage{height:100vh;padding:var(--gutter);place-items:center;display:grid;position:sticky;top:0;overflow:hidden}.chapter-states{gap:0;width:100%;max-width:1000px;display:grid}.chapter-state{opacity:0;text-align:left;grid-area:1/1;transition:opacity .4s}.chapter-state[data-active]{opacity:1}.chapter-state .tag{font-family:var(--f-body);letter-spacing:.2em;text-transform:uppercase;color:var(--amber);margin:0 0 1rem;font-size:.78rem;font-weight:600}.chapter-state h3{color:var(--bg);max-width:22ch;margin:0 0 1.5rem;font-size:clamp(2rem,5vw,4rem);line-height:1.02}.chapter-state p{color:#f5efe3b3;max-width:40rem;margin:0;font-size:clamp(1rem,1.3vw,1.15rem)}.chapter-counter{font-family:var(--f-body);letter-spacing:.18em;text-transform:uppercase;color:#f5efe366;font-size:.82rem;position:absolute;top:2rem;right:2rem}.chapter-progress{background:#f5efe326;height:1px;position:absolute;bottom:2rem;left:2rem;right:2rem}.chapter-progress-fill{background:var(--amber);width:0%;height:100%;transition:width .2s linear}.hard{background:var(--bg)}.hard-grid{counter-reset:hard;grid-template-columns:1fr;gap:2.5rem 3rem;margin-top:3rem;display:grid}@media (width>=820px){.hard-grid{grid-template-columns:repeat(2,1fr)}}.hard-item{counter-increment:hard;border-top:1px solid var(--rule);padding:1.75rem 0 0;position:relative}.hard-item:before{content:counter(hard, decimal-leading-zero);font-family:var(--f-body);letter-spacing:.18em;color:var(--amber);background:var(--bg);padding-right:.75rem;font-size:.78rem;font-weight:600;position:absolute;top:-10px;left:0}.hard-item h3{margin:0 0 .75rem;font-size:1.15rem;line-height:1.3}.hard-item p{color:var(--steel);margin:0;font-size:.95rem;line-height:1.6}.quotes{background:var(--paper);border-top:1px solid var(--rule)}.quote-grid{grid-template-columns:1fr;gap:3rem 4rem;margin-top:3rem;display:grid}@media (width>=820px){.quote-grid{grid-template-columns:1fr 1fr}}.quote{border-left:2px solid var(--amber);padding-left:1.75rem}.quote p{font-family:var(--f-display);color:var(--ink);margin:0 0 1rem;font-size:clamp(1.1rem,1.5vw,1.35rem);font-style:italic;line-height:1.4}.quote cite{font-family:var(--f-body);color:var(--steel);letter-spacing:.04em;font-size:.82rem;font-style:normal}.reframe{background:var(--ink);color:var(--bg)}.reframe h2{color:var(--bg);max-width:22ch}.reframe .lede p{color:#f5efe3d9;max-width:44rem;font-size:clamp(1.1rem,1.4vw,1.3rem);line-height:1.55}.reframe .turn{font-family:var(--f-display);color:var(--amber);max-width:40rem;margin-top:2.5rem;font-size:clamp(1.3rem,2vw,1.7rem);font-style:italic;line-height:1.35}.shapes{background:var(--bg)}.shapes-grid{grid-template-columns:1fr;gap:2rem;margin-top:3rem;display:grid}@media (width>=820px){.shapes-grid{grid-template-columns:repeat(2,1fr)}}@media (width>=1100px){.shapes-grid{grid-template-columns:repeat(3,1fr)}}.shape{border:1px solid var(--rule);background:var(--paper);flex-direction:column;padding:1.75rem;display:flex}.shape .num{font-family:var(--f-body);letter-spacing:.18em;color:var(--amber);margin:0 0 1rem;font-size:.78rem;font-weight:600}.shape h3{margin-bottom:.75rem;font-size:1.2rem}.shape p{color:var(--steel);margin:0;font-size:.93rem;line-height:1.55}.about{background:var(--paper);border-top:1px solid var(--rule)}.about .lede{max-width:44rem}.about .lede p{color:var(--ink);font-size:clamp(1.05rem,1.3vw,1.2rem)}.cta{background:var(--bg);text-align:left}.cta h2{max-width:18ch;margin-bottom:2rem}.cta a.primary{background:var(--ink);color:var(--bg);font-family:var(--f-body);letter-spacing:.02em;border-radius:2px;padding:1.1rem 2rem;font-size:1rem;font-weight:500;text-decoration:none;transition:background .2s,transform .2s;display:inline-block}.cta a.primary:hover{background:var(--amber);color:var(--ink);transform:translateY(-1px)}.cta .note{color:var(--steel);margin-top:1.5rem;font-size:.88rem}footer{background:var(--ink);color:#f5efe399;padding:3rem var(--gutter) 2rem;font-size:.85rem}footer .foot-wrap{max-width:var(--max);grid-template-columns:1fr;gap:1.5rem;margin:0 auto;display:grid}@media (width>=720px){footer .foot-wrap{grid-template-columns:1fr auto;align-items:center}}footer a{color:#f5efe3d9;margin-right:1.25rem;text-decoration:none}footer a:hover{color:var(--amber)}footer .legal a{margin-left:1.25rem;margin-right:0}.reveal{opacity:0;will-change:opacity, transform;transition:opacity .8s,transform .8s;transform:translateY(24px)}.reveal.is-in{opacity:1;transform:translateY(0)}.milestone .shot img{will-change:transform}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transition:none;transform:none}.chapter-pin{height:auto}.chapter-stage{height:auto;padding:4rem var(--gutter);position:static}.chapter-states{display:block}.chapter-state{opacity:1;margin-bottom:3rem}.chapter-counter,.chapter-progress{display:none}.milestone .shot img{transform:none!important}}
