/* Talisman. One family, one device: the slat. Nothing fades; edges cut. */
@font-face{font-family:Besley;src:url(fonts/besley-latin-wght-normal.woff2) format("woff2");font-weight:400 900;font-style:normal;font-display:swap}
@font-face{font-family:Besley;src:url(fonts/besley-latin-wght-italic.woff2) format("woff2");font-weight:400 900;font-style:italic;font-display:swap}
:root{--pitch:#0F3A2C;--cream:#F1E4CC;--accent:#E04A2C;--ink:#07140F;--night:#08110D;--pad:clamp(16px,2.8vw,44px);--vh:100vh}
@supports(height:100svh){:root{--vh:100svh}}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;background:var(--pitch);overflow-x:clip}
body{margin:0;background:var(--pitch);color:var(--cream);font:400 clamp(17px,1.25vw,20px)/1.5 Besley,Georgia,serif;overflow-x:clip;font-kerning:normal}
img,video{display:block;max-width:100%}
h1,h2,h3,p,ul,ol,figure{margin:0;padding:0}
ul,ol{list-style:none}
a{color:inherit;text-underline-offset:.18em;text-decoration-thickness:1px}
:focus-visible{outline:3px solid currentColor;outline-offset:3px}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:fixed;left:12px;top:-60px;z-index:60;background:var(--cream);color:var(--ink);padding:10px 16px}
.skip:focus{top:12px}
h1,h2,h3{font-weight:900;letter-spacing:-.035em;line-height:.98;text-wrap:balance}
.cap{font-size:13px;line-height:1.35;font-style:italic;font-weight:400;letter-spacing:0}
.cap b{font-style:normal;font-weight:700;margin-right:.4em}
.btn{display:inline-block;background:var(--cream);color:var(--ink);font:700 16px/1 Besley,serif;padding:15px 20px 16px;text-decoration:none;border:0;cursor:pointer;white-space:nowrap;transition:background-color .18s,color .18s,transform .12s}
.btn:hover{background:var(--accent);color:var(--ink)}
.btn:active{transform:translateY(1px)}

/* ---------- Header */
.bar{position:fixed;inset:0 0 auto 0;z-index:40;display:flex;align-items:center;justify-content:space-between;padding:10px var(--pad);height:76px;transition:transform .35s cubic-bezier(.2,.7,.2,1),background-color .2s}
.bar.is-solid{background:var(--pitch)}
.bar.is-away{transform:translateY(-101%)}
.mark img{width:66px;height:66px}
.nav ul{display:flex;gap:clamp(16px,2vw,30px)}
.nav a,.menu summary{font-size:15px;font-weight:600;text-decoration:none;color:var(--cream);white-space:nowrap}
.nav a:hover,.nav a[aria-current]{text-decoration:underline}
.menu{display:none;position:relative}
.menu summary{list-style:none;cursor:pointer;padding:10px 0 10px 16px}
.menu summary::-webkit-details-marker{display:none}
.menu nav{position:absolute;right:calc(var(--pad) * -1);top:100%;width:100vw;background:var(--pitch);padding:8px var(--pad) 20px}
.menu li a{display:block;padding:9px 0;font-size:24px;font-weight:800;letter-spacing:-.02em}

/* ---------- Pinned stage basics (only with motion) */
.stage{position:relative}
.motion [data-stage] > .stage{position:sticky;top:0;height:var(--vh);overflow:hidden}

/* ---------- Opening: picture closes to a slit */
.shot{position:relative;background:#0a0f16;overflow:hidden}
.shot-p{height:var(--vh);min-height:560px;overflow:hidden;position:relative}
.shot-i{width:100%;height:100%;object-fit:cover;object-position:51% 50%}
.shot-t{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:space-between;padding:calc(76px + 8px) var(--pad) var(--pad);pointer-events:none}
.shot-t::after{content:"";position:absolute;inset:auto 0 0 0;height:50%;background:linear-gradient(to top,rgba(4,7,6,.72),rgba(4,7,6,0));z-index:0}
.shot-t a{pointer-events:auto}
.shot h1{flex:1;min-height:0;display:flex;flex-direction:column;justify-content:space-between;line-height:1;letter-spacing:0}
.t1,.t2{display:block;font-weight:900;letter-spacing:-.045em;line-height:.92;position:relative;z-index:1}
.t1{font-size:8.72vw;white-space:nowrap}
.t2{font-size:17.2vw;white-space:nowrap;margin-left:-.03em}
.shot-s{position:absolute;right:7.4vw;bottom:calc(var(--pad) + 17.2vw);display:flex;flex-direction:column;align-items:flex-start;gap:14px;width:min(22vw,330px);z-index:1;font-size:17px;line-height:1.35;text-shadow:0 1px 14px rgba(0,0,0,.6)}
.shot-s .btn{text-shadow:none}

.gr{min-height:70vh;display:flex;padding:calc(var(--pad) * 2) var(--pad);position:relative}
.say{font-weight:800;letter-spacing:-.035em;line-height:1;font-size:clamp(46px,7.6vw,128px);text-wrap:balance}
.gr-a{background:var(--pitch);color:var(--cream);align-items:center}
.gr-b{background:var(--cream);color:var(--pitch);align-items:center}
.gr-c{background:#6e7f2c;color:var(--ink);padding:0;display:block}
.gr-m{position:relative;height:var(--vh);overflow:hidden}
.gr-m .v{width:100%;height:100%;object-fit:cover;object-position:60% 50%;transform:scale(1.18);transform-origin:100% 100%}
.gr-c .say{position:absolute;right:var(--pad);bottom:calc(var(--pad) - 4px);text-align:right;font-size:clamp(46px,6.2vw,108px);line-height:.98}
.gr-c .say span{display:block}
.gr-c .pz{top:calc(76px + 6px);right:var(--pad)}

.motion .open{height:560vh}
.motion .open .stage{background:var(--pitch)}
.motion .gr{position:absolute;inset:0;min-height:0}
.motion .gr-a{padding:0 18% 0 var(--pad)}
.motion .gr-b{padding:0 var(--pad) 0 18%;clip-path:inset(0 0 0 100%)}
.motion .gr-c{clip-path:inset(0 100% 0 0)}
.motion .shot{position:absolute;inset:0;z-index:5;will-change:clip-path}
.motion .shot-p{position:absolute;inset:0;min-height:0}
.motion .shot-i{position:absolute;left:-6%;width:112%;max-width:none;will-change:transform}

/* slats open the very first picture on load */
.shutter{display:none}
.motion .shutter{position:absolute;inset:0;z-index:6;display:flex;pointer-events:none}
.motion .shutter i{flex:1;background:var(--pitch);transform-origin:50% 0;animation:shut .85s cubic-bezier(.76,0,.2,1) both;animation-delay:calc(var(--i) * 34ms + 60ms)}
@keyframes shut{to{transform:scaleY(0)}}

/* ---------- Lead: the one film */
.lead{position:relative;min-height:var(--vh);display:flex;background:var(--night);overflow:hidden}
.motion .lead{position:sticky;top:0;height:var(--vh);z-index:0}
.lead-m{position:absolute;inset:0}
.lead-m img{width:100%;height:100%;object-fit:cover;object-position:var(--x,50%) 60%;transform:scale(1.16);transform-origin:var(--x,50%) 60%}
.lead::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(4,7,6,.88),rgba(4,7,6,.5) 26%,rgba(4,7,6,.42) 50%,rgba(4,7,6,.82));pointer-events:none}
.lead-t{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:space-between;width:100%;padding:calc(76px + 12px) var(--pad) calc(var(--pad) + 22px)}
.lead .cap{position:absolute;left:var(--pad);right:var(--pad);bottom:12px;z-index:1}
.lead h2{font-size:clamp(46px,7vw,120px);line-height:.96;text-wrap:initial}
.lead h2 span{display:block}
.lead h2 a{text-decoration:none}
.lead h2 a:hover{text-decoration:underline;text-decoration-thickness:.05em;text-underline-offset:.08em}
.lead-s{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-top:32px}
.lead-d{font-size:clamp(20px,1.9vw,30px);line-height:1.2;font-weight:600;max-width:24em;letter-spacing:-.01em}
.lead-w{font-size:16px;line-height:1.35;max-width:28em;text-align:right}

/* ---------- Reel: twelve chapters, true running time */
.reel{background:var(--night);position:relative;z-index:1}
.motion .reel{height:640vh}
.reel-row{display:block}
.sl{position:relative;overflow:hidden}
.sl-m img,.sl-m video{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.sl-a{display:block;padding:18px var(--pad) 34px;text-decoration:none;color:inherit}
.sl-box{display:block}
.sl-top{display:block;font-size:15px;font-weight:600}
.sl-top time{font-weight:700;margin-right:.35em}
.sl-t{display:block;font-weight:900;letter-spacing:-.035em;line-height:.96;font-size:clamp(44px,7vw,120px);margin-top:6px}
.sl-c{display:block;font-size:13px;font-style:italic;margin-top:4px}
.sl-paper{background:var(--cream);color:var(--pitch)}
.sl-q{padding:var(--pad);font-size:clamp(20px,2.2vw,34px);line-height:1.2;font-weight:600;letter-spacing:-.01em}

.motion .reel-row{display:flex;height:100%;width:100%}
.motion .sl{flex:none;height:100%;width:calc(var(--d) / 1147 * 100%);border-left:1px solid var(--night);will-change:width}
.motion .sl:first-child{border-left:0}
.motion .sl-box{position:absolute;top:0;left:0;width:70vw;height:var(--vh)}
.motion .sl-m{overflow:hidden;background:#111}
.motion .sl-m img,.motion .sl-m video{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:var(--x,50%) 50%;max-width:none;transform:scale(1.14);transform-origin:var(--x,50%) 50%}
.motion .sl-m::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(4,7,6,.78),rgba(4,7,6,0) 46%)}
.motion .sl-a{position:absolute;inset:0;padding:0;color:var(--cream)}
.motion .sl-paper .sl-a{color:var(--pitch)}
.motion .sl-top{position:absolute;left:4.6vw;top:calc(76px + 8px);font-size:0}
.motion .sl-top time{font-size:clamp(22px,2.3vw,36px);font-weight:900;letter-spacing:-.02em;text-shadow:0 1px 14px rgba(0,0,0,.55)}
.motion .sl-paper .sl-top time{text-shadow:none}
.motion .sl-top span{display:none}
.motion .sl-c{position:absolute;right:calc(var(--pad) + 44px);bottom:var(--pad);margin:0;text-align:right}
.motion .sl-t{position:absolute;left:4.6vw;right:3vw;bottom:calc(var(--pad) + 14px);font-size:clamp(60px,8vw,136px);margin:0}
.motion .sl-a:focus-visible{outline-offset:-6px}
.motion .sl-q{position:absolute;left:4.6vw;top:24%;width:48vw;padding:0;font-size:clamp(24px,2.7vw,44px);line-height:1.15}
.motion .sl .pz{position:absolute;right:var(--pad);bottom:calc(var(--pad) - 6px);left:auto;z-index:3}

/* ---------- Pause control */
.pz{position:absolute;right:12px;bottom:12px;width:36px;height:36px;background:var(--cream);color:var(--ink);border:0;padding:8px;cursor:pointer;z-index:3}
.pz svg{display:block;width:100%;height:100%;fill:currentColor}
.pz .i-play{display:none}
.pz.is-paused .i-play{display:block}
.pz.is-paused .i-pause{display:none}
.pz:hover{background:var(--accent)}
.pz:focus-visible{outline:3px solid var(--cream);outline-offset:2px}
.pz[hidden]{display:none}

/* ---------- Week: staircase to Sunday, on paper */
.week{background:var(--cream);color:var(--pitch);position:relative;z-index:1}
.motion .week{height:260vh}
.motion .week .stage{background:var(--cream)}
.week .stage{padding:var(--pad);display:flex;flex-direction:column}
.week-t{padding:0;max-width:44vw}
.week h2{font-size:clamp(48px,5.6vw,96px)}
.week-t p{margin-top:16px;font-size:clamp(18px,1.45vw,22px);line-height:1.3;max-width:24em}
.days{display:flex;align-items:flex-end;gap:6px;flex:1;min-height:0}
.day{flex:calc(var(--w));min-width:0;display:flex;flex-direction:column;justify-content:flex-end;height:100%}
.day-m{position:relative;overflow:hidden;height:calc(var(--h) * 1% - 84px * var(--h) / 100);min-height:60px;background:var(--pitch)}
.day-m img,.day-m video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--x,50%) 50%;max-width:none;transform:scale(1.14);transform-origin:var(--x,50%) 50%}
.day-t{height:84px;padding-top:8px;line-height:1.14;font-size:14px;overflow:hidden}
.day-t b{display:block;font-size:clamp(20px,2vw,32px);font-weight:900;letter-spacing:-.03em;line-height:1.05}
.sun .day-t b{font-size:clamp(22px,2.6vw,40px)}
.motion .days{position:absolute;left:var(--pad);right:var(--pad);bottom:44px;top:0;height:auto}
.week-t{position:relative;z-index:1}
.week-cap{margin-top:10px}
.motion .week-cap{position:absolute;left:var(--pad);bottom:14px;margin:0;right:var(--pad)}

/* ---------- Two more: closed slats on the accent */
.more{background:var(--accent);color:var(--ink);padding:calc(76px + 24px) var(--pad) var(--pad);min-height:92vh;position:relative;z-index:1;display:grid;grid-template-columns:1fr auto;grid-template-rows:1fr auto;column-gap:4vw}
.more h2{font-size:clamp(56px,10vw,172px);line-height:.94;grid-column:1;grid-row:1;align-self:start}
.more-n{grid-column:1;grid-row:2;align-self:end;font-size:clamp(22px,2.2vw,36px);font-weight:600;letter-spacing:-.01em;line-height:1.1}
.shut{grid-column:2;grid-row:1 / span 2;display:flex;gap:6px;align-items:stretch;height:100%}
.shut li{display:flex;flex-direction:column;width:clamp(120px,13vw,200px);font-size:16px;line-height:1.2;font-weight:700}
.bar-s{flex:1;background:var(--ink);margin-bottom:10px;min-height:280px}
.shut li>span:last-child{min-height:2.4em}

/* ---------- About: a paper slat beside the steam */
.about{position:relative;z-index:1;background:var(--night);min-height:var(--vh);display:grid;grid-template-columns:1fr minmax(0,44vw)}
.about-m{position:relative;overflow:hidden;background:#2a1a0e;min-height:60vw}
.about-m .v{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.about-t{background:var(--cream);color:var(--pitch);padding:calc(76px + 16px) var(--pad) var(--pad);display:flex;flex-direction:column;justify-content:center}
.about h2{font-size:clamp(40px,4.7vw,80px);margin-bottom:28px}
.about-t p{font-size:clamp(19px,1.65vw,26px);line-height:1.32;margin-top:14px;max-width:26em}
@media(min-width:701px){.about-m{min-height:0}}

/* ---------- Newsletter */
.news{position:relative;z-index:1;min-height:var(--vh);display:flex;align-items:flex-end;background:var(--night);overflow:hidden}
.news-m{position:absolute;inset:0}
.news-m img,.news-m video{width:100%;height:100%;object-fit:cover;object-position:var(--x,50%) 50%;transform:scale(1.18);transform-origin:var(--x,50%) 62%;max-width:none}
.news::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(4,7,6,.82),rgba(4,7,6,.2) 52%,rgba(4,7,6,0));pointer-events:none}
.news-m .pz{top:calc(76px + 6px);bottom:auto;right:var(--pad);transform:none}
.news-t{position:relative;z-index:1;padding:var(--pad);padding-bottom:calc(var(--pad) + 26px);width:100%}
.news h2{font-size:clamp(50px,8.6vw,146px);max-width:11em}
.news h3{font-size:clamp(24px,2.4vw,38px);letter-spacing:-.02em;margin:32px 0 2px}
.news .btn{margin-top:22px}
.news:not(.fnews) .news-t{padding-bottom:var(--pad)}
.news>.cap{position:absolute;left:var(--pad);bottom:12px;z-index:1}
.signup{margin-top:26px;max-width:640px}
.signup label{display:block;font-size:15px;font-weight:600;margin-bottom:6px}
.signup-row{display:flex;gap:0}
.signup input{flex:1;min-width:0;background:transparent;color:var(--cream);border:0;border-bottom:2px solid var(--cream);font:400 20px/1 Besley,serif;padding:12px 10px 12px 0;border-radius:0}
.signup input:focus-visible{outline:3px solid var(--cream);outline-offset:2px}
.signup .btn{margin:0}
.msg{min-height:1.5em;margin-top:8px;font-size:15px}

/* ---------- Footer */
.foot{background:var(--pitch);position:relative;z-index:1}
.strip{display:flex;height:clamp(150px,26vh,260px);gap:1px;background:var(--night)}
.strip li{flex:var(--d) 1 0;min-width:0;position:relative;overflow:hidden;background:#111;transition:flex-grow .55s cubic-bezier(.2,.7,.2,1)}
.strip a{position:absolute;inset:0;display:block;color:var(--cream);text-decoration:none}
.strip img{position:absolute;left:50%;top:0;height:100%;width:44vw;max-width:none;object-fit:cover;object-position:var(--x,50%) 50%;transform:translateX(-50%)}
.st-t{position:absolute;left:14px;bottom:10px;width:34vw;font-weight:800;letter-spacing:-.02em;font-size:clamp(18px,1.9vw,30px);line-height:1;text-shadow:0 1px 12px rgba(0,0,0,.8);clip-path:inset(0 0 0 0)}
.st-t time{display:block;font-size:14px;font-weight:600;letter-spacing:0;margin-bottom:2px}
.strip li::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(4,7,6,.55),rgba(4,7,6,0) 60%);pointer-events:none}
.st-paper{background:var(--cream)!important}
.st-paper a{color:var(--pitch)}
.st-paper .st-t{text-shadow:none}
.st-paper::after{display:none}
.strip .st-t{visibility:hidden}
.strip li:hover,.strip li:focus-within{flex-grow:calc(var(--d) * 9)}
.strip li:hover .st-t,.strip li:focus-within .st-t{visibility:visible}
.strip a:focus-visible{outline-offset:-4px}
.strip-cap{padding:8px var(--pad) 0;max-width:80em}
.desc .strip-cap{padding-bottom:12px}
.foot-in{padding:clamp(36px,5vw,72px) var(--pad) var(--pad)}
.foot-tag{font-weight:900;letter-spacing:-.045em;line-height:.95;font-size:clamp(44px,8.9vw,152px)}
.foot-tag span{display:block}
.foot-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:clamp(20px,4vw,64px);margin-top:clamp(32px,4vw,56px);align-items:start}
.foot-mark{width:clamp(110px,10vw,150px);height:auto}
.foot-txt{max-width:36em;font-size:17px;line-height:1.4}
.foot-txt p+p{margin-top:10px}
.foot nav li{font-weight:600;font-size:16px;line-height:1.75;white-space:nowrap}
.foot nav a{text-decoration:none}
.foot nav a:hover{text-decoration:underline}

/* ---------- Film page */
.fhero{position:relative;min-height:var(--vh);display:flex;background:var(--night);overflow:hidden}
.fhero-m{position:absolute;inset:0}
.fhero-m img{width:100%;height:100%;object-fit:cover;object-position:var(--x,50%) 30%;transform:scale(1.24);transform-origin:0 22%}
.fhero::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(4,7,6,.88),rgba(4,7,6,.62) 42%,rgba(4,7,6,0) 72%);pointer-events:none}
.fhero-t{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:flex-end;width:100%;padding:calc(76px + 12px) var(--pad) calc(var(--pad) + 22px)}
.fhero h1{font-size:clamp(50px,7vw,120px);line-height:.96;text-wrap:initial}
.fhero h1 span{display:block}
.fhero-s{display:flex;gap:24px;justify-content:space-between;align-items:center;margin-top:24px;font-size:17px;flex-wrap:wrap}
.fhero .cap{position:absolute;left:var(--pad);bottom:12px;z-index:1}
.desc{background:var(--cream);color:var(--pitch);padding:clamp(56px,8vw,120px) 0 0;position:relative;z-index:1}
.desc h2,.desc-p{padding:0 var(--pad)}
.desc h2{font-size:clamp(44px,7.2vw,122px);font-weight:800}
.desc-p{margin:24px 0 clamp(36px,5vw,64px);font-size:clamp(20px,1.9vw,30px);font-weight:600;letter-spacing:-.01em;line-height:1.2}
.strip-big{height:clamp(320px,62vh,620px);background:var(--cream)}
.strip-big .st-paper{background:var(--pitch)!important}
.strip-big .st-paper a{color:var(--cream)}
.strip-big img{width:60vw}
.strip-big .st-t{width:48vw;font-size:clamp(30px,4.6vw,76px);font-weight:900;letter-spacing:-.035em}
.strip-big .st-t time{font-size:16px}

.film-run{position:relative;background:var(--night)}
.chs{display:block}
.ch{position:relative;background:var(--night)}
.ch .stage{position:relative}
.fr{position:relative;display:block}
.fr-m{position:relative;overflow:hidden;background:#111}
.fr-m img,.fr-m video{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.fr .cap{padding:8px var(--pad) 20px}
.ch-t{padding:clamp(48px,8vw,100px) var(--pad) 16px}
.ch-t time{font-size:clamp(20px,2vw,32px);font-weight:900;letter-spacing:-.02em;display:block}
.ch-t h3{font-size:clamp(52px,9.4vw,160px)}
.stat{padding:clamp(48px,7vw,100px) var(--pad)}
.stat-n{font-weight:900;letter-spacing:-.05em;line-height:.9;font-size:min(24vw,calc(150vw / var(--c,6)))}
.stat.name .stat-n{font-size:clamp(60px,11.6vw,196px);letter-spacing:-.04em;line-height:.95}
.stat.quote .stat-n{font-size:clamp(30px,4.4vw,74px);letter-spacing:-.025em;line-height:1.08;font-weight:700;max-width:21em}
.stat-l{font-weight:800;letter-spacing:-.025em;line-height:1.05;font-size:clamp(28px,4.2vw,70px);margin-top:.85em}
.stat-d{font-size:clamp(18px,1.6vw,25px);line-height:1.3;margin-top:16px;max-width:30em}
.t-accent{background:var(--accent);color:var(--ink)}
.t-cream{background:var(--cream);color:var(--pitch)}
.t-pitch{background:var(--pitch);color:var(--cream)}

.motion .ch{height:calc(var(--n) * 84vh + 34vh)}
.motion .ch .stage{background:var(--night)}
.motion .fr{position:absolute;inset:0;overflow:hidden;will-change:clip-path}
.motion .fr-m{position:absolute;inset:0}
.motion .fr-m img,.motion .fr-m video{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:var(--x,50%) 50%;max-width:none;transform:scale(calc(1.14 + var(--z,0) * .05));transform-origin:var(--x,50%) 50%}
.motion .fr-m::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(4,7,6,.78),rgba(4,7,6,.46) 24%,rgba(4,7,6,0) 46%)}
.motion .fr .cap{position:absolute;left:var(--pad);right:calc(var(--pad) + 60px);bottom:62px;padding:0;color:var(--cream);max-width:60em;z-index:2}
.motion .fr .pz{bottom:56px;right:var(--pad)}
.motion .txt-off .cap,.motion .txt-off .stat-n,.motion .txt-off .stat-l,.motion .txt-off .stat-d,.motion .txt-off .pz{visibility:hidden}
.motion .stat{display:flex;flex-direction:column;justify-content:center}
/* the chapter title rides on the first frame and is cut away with it */
.motion .ch-t{position:absolute;z-index:3;left:0;right:0;bottom:92px;padding:0 var(--pad);pointer-events:none;color:var(--cream)}
.motion .ch.has-stat .ch-t{bottom:auto;top:36px}
.motion .ch.has-stat .fr:first-of-type.stat{padding-top:clamp(190px,27vh,300px);justify-content:flex-start}
.motion .ch.on-light .ch-t{color:var(--pitch)}
.tp{display:none}
.motion .tp{display:block;position:fixed;left:0;right:0;bottom:0;z-index:30;background:var(--night);color:var(--cream);padding:6px var(--pad) 8px;transform:translateY(102%);transition:transform .3s cubic-bezier(.2,.7,.2,1)}
.motion .tp.is-on{transform:none}
.tp-now{display:flex;gap:10px;font-size:14px;line-height:1.3;font-weight:600}
.tp-time{font-weight:800;font-variant-numeric:tabular-nums}
.tp-tot{margin-left:auto;font-weight:400}
.tp-bar{display:flex;gap:2px;margin-top:4px}
.tp-bar a{display:block;height:9px;background:rgba(241,228,204,.3);position:relative;transition:height .12s}
.tp-bar a:hover{background:rgba(241,228,204,.55)}
.tp-bar i{position:absolute;inset:0 auto 0 0;width:calc(var(--f,0) * 100%);background:var(--accent);display:block}
.sources{background:var(--cream);color:var(--pitch);padding:clamp(64px,9vw,130px) var(--pad);position:relative;z-index:1}
.sources h2{font-size:clamp(56px,11vw,186px)}
.sources-l{font-size:clamp(26px,3.6vw,60px);line-height:1.1;letter-spacing:-.02em;margin:24px 0;max-width:22em}
.sources p:last-child{max-width:36em}

/* ---------- Credits */
.cr{background:var(--cream);color:var(--pitch);padding:calc(76px + 40px) var(--pad) clamp(56px,7vw,100px)}
.cr h1{font-size:clamp(64px,13vw,220px);margin-bottom:24px}
.cr h2{font-size:clamp(34px,4.6vw,76px);margin:56px 0 18px}
.cr p{max-width:44em;overflow-wrap:anywhere}
.cr p+p{margin-top:12px}
.cr-big{font-size:clamp(22px,2.2vw,34px);line-height:1.2;font-weight:600;margin-bottom:18px}
.cr-list li{padding:14px 0;font-size:16px;line-height:1.4}
.cr-list p{margin:0}
.cr-what{font-weight:700}
.p-credits .bar{background:var(--pitch)}

/* ---------- Phone: the slats lie down */
@media(max-width:700px){
.bar{height:62px;padding:6px var(--pad)}
.mark img{width:50px;height:50px}
.nav{display:none}
.menu{display:block}
.shot-p{min-height:0}
.shot-i{object-position:51% 50%}
.shot-t{padding:calc(62px + 6px) var(--pad) var(--pad)}
.t1{font-size:17vw;white-space:normal;line-height:.95;letter-spacing:-.045em}
.t2{font-size:17.2vw;margin-left:0;margin-top:0;position:absolute;left:var(--pad);right:var(--pad);bottom:calc(var(--pad) + 134px)}
.shot-s{left:var(--pad);right:var(--pad);bottom:var(--pad);width:auto;font-size:16px;gap:12px}
.say{font-size:clamp(46px,14vw,70px)}
.motion .open{height:520vh}
.motion .shot-i{left:0;width:100%;top:0;height:100%}
.motion .gr-a{padding:31vh var(--pad) 0;align-items:flex-start}
.motion .gr-b{padding:9vh var(--pad) 0;align-items:flex-start;clip-path:inset(0 0 100% 0)}
.motion .gr-b .say{font-size:clamp(40px,12vw,60px)}
.motion .gr-c{clip-path:inset(100% 0 0 0)}
.gr-c .say{left:var(--pad);right:var(--pad);font-size:clamp(50px,14.6vw,74px);text-align:left}
.gr-m .v{object-position:90% 50%}
.gr-c .pz{top:calc(62px + 2px)}

.lead-t,.fhero-t{padding-top:calc(62px + 8px)}
.lead h2{font-size:13vw}
.lead h2 span{display:inline}
.lead-m img{object-position:var(--xm,50%) 50%}
.lead-s{flex-direction:column;align-items:flex-start;gap:10px;margin-top:0}
.lead-d{font-size:20px}
.lead-w{text-align:left;font-size:15px}
.lead-t{padding-bottom:calc(var(--pad) + 46px)}

.motion .reel{height:560vh}
.motion .reel-row{flex-direction:column}
.motion .sl{width:100%;height:calc(var(--d) / 1147 * 100%);border-left:0;border-top:1px solid var(--night)}
.motion .sl:first-child{border-top:0}
.motion .sl-box{width:100%;height:calc(var(--vh) * .61)}
.motion .sl-m img,.motion .sl-m video{object-position:var(--xm,50%) 50%}
.motion .sl-m::after{background:linear-gradient(to bottom,rgba(4,7,6,.5),rgba(4,7,6,.24) 44px,rgba(4,7,6,0) 34%,rgba(4,7,6,0) 62%,rgba(4,7,6,.75))}
.motion .sl-top{left:var(--pad);top:3px;font-size:14px;line-height:1.3;font-weight:700;text-shadow:0 1px 6px rgba(0,0,0,.7);white-space:nowrap}
.motion .sl-top time{font-size:14px;font-weight:800;letter-spacing:0;text-shadow:none;margin-right:.5em}
.motion .sl-top span{display:inline}
.motion .sl-paper .sl-top{text-shadow:none}
.motion .sl-t{left:var(--pad);right:var(--pad);bottom:40px;font-size:clamp(40px,11.2vw,70px)}
.motion .sl-c{left:var(--pad);right:60px;bottom:14px;text-align:left}
.motion .sl .pz{right:var(--pad);bottom:8px}
.motion .sl-q{left:var(--pad);right:var(--pad);top:44px;width:auto;font-size:21px}

.motion .week{height:auto}
.motion .week .stage{position:relative;height:auto;overflow:visible}
.week-t{max-width:none;padding-top:calc(var(--pad) * 2);padding-bottom:26px}
.week h2{font-size:15vw}
.days,.motion .days{position:static;display:block;height:auto;flex:none}
.day{display:grid;grid-template-columns:27vw 1fr;height:auto;gap:10px;margin-bottom:6px;align-items:stretch}
.day-m{height:calc(var(--h) * 1.5px + 8px);min-height:0;order:2}
.sun .day-m{height:62vw}
.day-t{height:auto;padding:0;font-size:13px;order:1;overflow:visible}
.day-t b{font-size:24px}
.sun{grid-template-columns:1fr;gap:6px}
.sun .day-m{order:1}
.sun .day-t{order:2}
.sun .day-t b{font-size:44px}
.motion .week-cap{position:static;margin-top:12px}

.more{display:block;min-height:0;padding-top:48px}
.more h2{font-size:18vw}
.shut{display:block;height:auto;margin:32px calc(var(--pad) * -1) 26px}
.shut li{display:block;width:auto;font-size:20px;padding:0 var(--pad);font-weight:800;letter-spacing:-.01em;margin-bottom:14px}
.bar-s{display:block;height:44px;min-height:0;margin:0 calc(var(--pad) * -1) 6px}
.more-n{font-size:24px}

.about{display:block}
.about-m{height:64vw;min-height:0}
.about-t{padding:36px var(--pad) 44px}
.about h2{font-size:11.2vw}
.news h2{font-size:14vw}
.news-m img,.news-m video{object-position:var(--xm,50%) 50%}
.news-m .pz{top:calc(62px + 2px)}
.news-t{padding-bottom:calc(var(--pad) + 30px)}
.signup-row{gap:0}

.strip{height:112px}
.strip img{width:100vw}
.strip .st-t{display:none}
.foot-tag{font-size:17vw}
.foot-tag span{display:inline}
.foot-row{display:block}
.foot-mark{width:112px;margin-bottom:18px}
.foot nav{margin-top:20px}
.foot nav ul{display:block}
.foot nav li{font-size:18px;line-height:1.8;white-space:normal}

.fhero h1{font-size:12vw}
.fhero::after{background:linear-gradient(to top,rgba(4,7,6,.92),rgba(4,7,6,.74) 48%,rgba(4,7,6,0) 74%)}
.fhero-t{padding-bottom:calc(var(--pad) + 46px)}
.fhero h1 span{display:inline}
.fhero-m img{transform:scale(1.12);transform-origin:var(--xm,50%) 30%}
.fhero-m img{object-position:var(--xm,50%) 30%}
.fhero-s{font-size:15px}
.desc h2{font-size:12.4vw}
.strip-big{display:block;height:auto}
.strip-big li{height:48px;border-bottom:1px solid var(--cream)}
.strip-big img{width:100%;height:auto;top:50%;left:0;transform:translateY(-50%);aspect-ratio:16/9}
.strip-big li::after{background:rgba(4,7,6,.46)}
.strip-big .st-t{display:block;visibility:visible;left:var(--pad);bottom:auto;top:50%;transform:translateY(-50%);width:auto;font-size:21px;font-weight:800;letter-spacing:-.015em;white-space:nowrap}
.strip-big .st-t time{display:inline;font-size:14px;margin-right:.5em}
.strip-big .st-paper::after{display:none}
.motion .ch{height:calc(var(--n) * 78vh + 30vh)}
.motion .fr-m img,.motion .fr-m video{object-position:var(--xm,50%) 50%}
.motion .ch-t{bottom:86px}
.motion .ch.has-stat .ch-t{top:26px}
.ch-t h3{font-size:11.4vw}
.motion .fr .cap{bottom:58px;right:calc(var(--pad) + 48px);font-size:12.5px}
.stat-n{font-size:min(30vw,calc(150vw / var(--c,6)))}
.stat.name .stat-n{font-size:19vw}
.stat.quote .stat-n{font-size:8.3vw}
.stat-l{font-size:9vw}
.sources h2{font-size:17vw}
.tp-now{font-size:13px}
}

/* No script or reduced motion: everything stacks and stays put */
html:not(.motion) .sl-top span{display:none}
html:not(.motion) .reel{padding-bottom:56px}
html:not(.motion) .sl-paper{margin-top:24px}
@media(min-width:701px){html:not(.motion) .days{height:62vh;flex:none}html:not(.motion) .shut{height:auto}html:not(.motion) .sl-m img,html:not(.motion) .sl-m video{max-height:86vh}}
html:not(.motion) .shot-p{height:88vh}
html:not(.motion) .fr .cap{color:inherit}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
