@font-face{font-family:PosterBodoni;src:local('Bodoni 72 Book'),local('Bodoni 72');font-weight:400;font-display:swap}
@font-face{font-family:BodoniWeb;src:url('assets/fonts/bodoni-moda-variable-latin.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Manrope;src:url('assets/fonts/manrope-variable-latin.woff2') format('woff2');font-weight:200 800;font-display:swap}
:root{--black:#000;--white:#f6f5f1;--line:#f6f5f12a;--serif:PosterBodoni,BodoniWeb,'Bodoni 72',Didot,'Times New Roman',serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--black);color:var(--white);font-family:Manrope,Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}img{display:block;max-width:100%;height:auto}a:focus-visible,button:focus-visible,canvas:focus-visible{outline:2px solid currentColor;outline-offset:7px}::selection{background:var(--white);color:var(--black)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip{position:fixed;z-index:100;top:-100px;left:20px;padding:15px;background:var(--white);color:var(--black)}.skip:focus{top:12px}
.site-header{padding:28px 5.6vw 20px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;text-align:center}.production{font-size:11px;line-height:1.5;letter-spacing:.06em;text-transform:uppercase}.site-header nav{display:flex;gap:34px;font-size:15px}.site-header a:hover{text-decoration:underline;text-underline-offset:6px}
.opening{width:88.8vw;max-width:1640px;margin:35px auto 0}.opening h1{text-align:center;font-family:var(--serif);font-weight:400;text-transform:uppercase;font-size:clamp(62px,7.2vw,120px);line-height:.98;letter-spacing:-.045em;margin:0}.opening h1 span{white-space:nowrap}.film-introduction{display:block;text-align:center;margin:26px auto 36px}.film-introduction p{font-size:17px;line-height:1.6;margin:0}.film-introduction .byline{font-size:14px;line-height:1.8}.byline span{display:inline-block;margin:0 9px;opacity:.6}.first-still{margin:0}.first-still button,.stills-sequence button{display:block;width:100%;background:none;border:0;padding:0;cursor:zoom-in}.first-still img,.stills-sequence img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain}
.film-section{width:88.8vw;max-width:680px;margin:70px auto 85px;text-align:center}.film-side h2{font-size:14px;font-weight:400;margin:5px 0 42px}.laurel{width:240px;height:auto;filter:brightness(0) invert(1);margin:0 auto 45px}.synopsis{max-width:650px;margin:auto}.synopsis p{font-size:18px;line-height:1.85;margin:0 0 24px;letter-spacing:-.01em}.synopsis p:last-child{margin:0}
.poster-section{background:#000;width:100%;padding:0;scroll-margin-top:-28px}.poster-room{height:100svh;position:relative;display:flex;justify-content:center;align-items:center;background:#000;overflow:hidden}.poster-object{width:min(91vw,calc(92svh * 1600 / 2204));height:min(92svh,calc(91vw * 2204 / 1600));position:relative;z-index:1;flex:none}.poster-object img{width:100%;height:100%;object-fit:contain;opacity:1}
.stills-sequence{width:88.8vw;max-width:1640px;margin:95px auto;display:grid;grid-template-columns:1fr 1fr;gap:30px}.stills-sequence figure{margin:0}
.credits-section{text-align:center;width:88.8vw;max-width:1400px;margin:90px auto 0;border-top:1px solid var(--line);padding-top:55px}.credits-section h2{font:400 clamp(42px,4.4vw,68px)/1.05 var(--serif);letter-spacing:-.035em;margin:0 0 48px}.credits-section dl{display:grid;grid-template-columns:repeat(3,1fr);gap:36px 45px;margin:0}.credits-section dt{font-size:14px;line-height:1.5;margin-bottom:8px;opacity:.65}.credits-section dd{font-size:21px;line-height:1.5;margin:0}.credits-section .cast{grid-column:1/-1;margin:8px auto 0;max-width:1000px}.credits-section .cast dd{font-size:19px;line-height:1.85}
footer{width:88.8vw;max-width:1400px;margin:85px auto 0;padding:45px 0 35px;border-top:1px solid var(--line)}.follow-links{display:flex;justify-content:center;gap:70px;padding-bottom:70px}.follow-links a{display:flex;align-items:center;gap:55px;font-size:23px;border-bottom:1px solid currentColor;padding:8px 0}.follow-links a:hover{opacity:.65}.footer-meta{display:flex;align-items:center;justify-content:center;gap:35px;font-size:13px;line-height:1.6}.footer-meta button{border:0;padding:0;background:none;font-size:13px}.previous-directions{display:block;width:fit-content;font-size:11px;opacity:.5;margin:35px auto 0}
dialog{width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:50px 20px;border:0;background:#080b0af7;color:var(--white)}dialog::backdrop{background:#000b}dialog[open]{display:flex;align-items:center;justify-content:center}dialog img{max-width:94vw;max-height:87dvh;width:auto;height:auto;object-fit:contain}#close-viewer{position:fixed;top:20px;right:25px;background:none;border:0;border-bottom:1px solid #fff8;padding:8px 0;font-size:15px}.motion-off *{transition:none!important;animation:none!important}
@media(max-width:1000px) and (min-width:701px){.film-introduction{align-items:start}.film-introduction p{font-size:15px}.film-introduction .byline{font-size:12px}.credits-section dl{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.site-header{padding:23px 6vw 18px;gap:17px}.production{font-size:9px}.site-header nav{gap:20px;font-size:12px}.site-header nav a:nth-child(2){display:none}.opening{width:88vw;margin-top:28px}.opening h1{font-size:10.1vw;line-height:1.05;letter-spacing:-.04em}.film-introduction{display:block;margin:23px 0 26px}.film-introduction .byline{font-size:11px;margin-bottom:13px}.byline span{margin:0 5px}.film-introduction p{font-size:14px;line-height:1.7}.desktop-break{display:none}.first-still{width:100vw;margin-left:-6vw}.film-section{width:88vw;margin:45px auto 55px;grid-template-columns:1fr;gap:30px}.film-side{display:block;text-align:center}.film-side h2{font-size:13px;margin:5px 0}.laurel{width:195px;margin:0 auto 34px}.synopsis p{font-size:16px;line-height:1.85;margin-bottom:22px}.poster-section{padding:0}.poster-room{height:100svh;min-height:0}.poster-object{width:min(94vw,calc(82svh * 1600 / 2204));height:min(82svh,calc(94vw * 2204 / 1600))}.stills-sequence{width:100%;grid-template-columns:1fr;gap:30px;margin:55px auto}.credits-section{text-align:center;width:88vw;margin-top:55px;padding-top:38px}.credits-section h2{font-size:40px;margin-bottom:35px}.credits-section dl{grid-template-columns:1fr 1fr;gap:28px 20px}.credits-section dt{font-size:12px;margin-bottom:7px}.credits-section dd{font-size:17px;line-height:1.6}.credits-section .cast dd{font-size:16px;line-height:1.9}footer{width:88vw;margin-top:55px;padding-top:30px}.follow-links{gap:30px;justify-content:center;padding-bottom:50px}.follow-links a{font-size:18px;gap:22px}.footer-meta{font-size:11px;flex-wrap:wrap;gap:17px}.footer-meta button{font-size:11px}.previous-directions{font-size:11px;margin-top:25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}@media(max-width:700px){.film-introduction{text-align:center}.synopsis{text-align:center}.footer-meta{text-align:center;justify-content:center}.credits-section .cast{margin-inline:auto}}
#site-particles{position:fixed;inset:0;width:100%;height:100%;z-index:5;pointer-events:none;contain:strict}
.portrait-still{width:88.8vw;max-width:1640px;margin:100px auto 120px}.portrait-still figure{margin:0}.portrait-still button{display:block;width:100%;border:0;padding:0;background:none;cursor:zoom-in}.portrait-still img{width:100%;height:auto;object-fit:contain}
@media(max-width:700px){.portrait-still{width:100%;margin:65px auto 80px}}

/* Reserve the supplied stills at their exact ratio before decoding. */
main img[data-particle-image^="still-"]{aspect-ratio:1800/1013}
