:root{color-scheme:dark;--ink:#080d14;--ice:#e5eaf0;--muted:#8c99a8;--line:#b8cbdf2b;--electric:#b5cee1}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px;background:var(--ink)}body{margin:0;background:var(--ink);color:var(--ice);font-family:Inter,system-ui,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:2px solid var(--electric);outline-offset:5px}.wrap{width:min(1440px,100%);margin-inline:auto;padding-inline:clamp(22px,5vw,80px)}.grain{position:fixed;inset:0;pointer-events:none;z-index:10;opacity:.025;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.scanlines{display:none}
.topbar{min-height:88px;display:flex;justify-content:space-between;align-items:center;gap:18px;font:500 .65rem/1.5 "IBM Plex Mono",monospace;letter-spacing:.1em;text-transform:uppercase}.brand{display:flex;align-items:center;gap:10px}.brand-mark{width:8px;height:8px;border:1px solid var(--electric);border-radius:50%}.topbar-right{display:flex;gap:28px;align-items:center}.lang{display:flex}.lang button{background:none;color:var(--muted);border:0;border-bottom:1px solid transparent;min-height:44px;min-width:40px;font-size:.65rem}.lang button[aria-pressed=true]{color:var(--ice);border-bottom-color:var(--ice)}
.disc-menu{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto auto;column-gap:7%;padding-top:62px;padding-bottom:110px;min-height:calc(100svh - 88px);align-content:center}.menu-copy{grid-column:1;grid-row:1}.eyebrow,.small-meta,.menu-overline,.section-kicker,.file-label{font:500 .64rem/1.7 "IBM Plex Mono",monospace;letter-spacing:.13em;text-transform:uppercase}.eyebrow{color:var(--muted);margin:0 0 28px}h1{font-size:clamp(80px,8.9vw,130px);font-weight:500;line-height:1.04;letter-spacing:-.065em;margin:0}html[lang=en] h1{font-size:clamp(58px,5.9vw,86px);line-height:1.02;letter-spacing:-.055em}.title-underline{display:none}.small-meta{color:var(--muted);margin:25px 0 36px}.menu-controls{grid-column:1;grid-row:2}.menu-overline{color:var(--muted);font-size:.55rem;margin:0 0 12px}.menu-list{border-top:1px solid var(--line)}.menu-item{width:100%;display:grid;grid-template-columns:38px 1fr 20px;align-items:center;min-height:64px;padding:0 10px 0 0;text-align:left;border:0;border-bottom:1px solid var(--line);background:none;color:var(--ice);font-size:1.08rem;font-weight:400;transition:padding .2s,background .2s}.menu-item:hover{padding-left:12px;background:#b5cee108}.index{font:400 .6rem "IBM Plex Mono",monospace;color:var(--muted)}.arrow{color:var(--muted);font-size:1rem}.eject-control{display:inline-flex;gap:12px;align-items:center;margin-top:26px;color:var(--muted)}.eject-icon{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;font-size:1.2rem;color:var(--ice)}.eject-copy{display:grid;gap:5px}.eject-copy strong{font-size:.67rem;font-weight:500}.eject-copy small{font:400 .52rem "IBM Plex Mono",monospace;letter-spacing:.08em}.eject-control:hover .eject-icon{background:var(--ice);color:var(--ink)}
.disc-stage{grid-column:2;grid-row:1/3;position:relative;align-self:center;aspect-ratio:1/1.12;width:100%;display:grid;place-items:center;background:linear-gradient(135deg,#24303d66,#0d141e 50%,#17222d);border:1px solid #c4d4e82b;box-shadow:10px 14px 35px #0005,inset 4px 0 #c6d5e40b;overflow:hidden}.disc-stage::after{content:'';position:absolute;inset:0;border-left:12px solid #02060c55;pointer-events:none}.sleeve-label{position:absolute;top:22px;left:28px;right:22px;display:flex;justify-content:space-between;color:var(--muted);font:400 .52rem "IBM Plex Mono",monospace;letter-spacing:.12em}.disc{position:relative;width:86%;aspect-ratio:1;border-radius:50%;background:conic-gradient(from 25deg,#8193a4,#d3d9d8 12%,#6a7b8b 24%,#e4e8e3 30%,#9cadb3 42%,#536573 51%,#c4cfcd 60%,#9babb6 72%,#d6dfe2 82%,#627487 93%,#8193a4);box-shadow:0 0 0 1px #dce6ea80,0 10px 22px #0009,inset 0 0 0 4px #e2e7e533;transform:rotate(-17deg)}.disc::before{content:'';position:absolute;inset:5%;border-radius:50%;border:1px solid #eff5f650;background:repeating-radial-gradient(circle,transparent 0 3px,#edf7ff0a 3.5px 4px)}.disc::after{content:'';position:absolute;inset:44.5%;border-radius:50%;background:radial-gradient(circle,#101821 0 38%,#8fa0ac 40% 52%,#c6d2d7 54% 63%,#5f7281 65%);box-shadow:0 0 0 9px #8496a84d,0 0 0 10px #e3edf040}.disc-print{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:16% 10% 15%;color:#152534;text-align:center;font:500 clamp(6px,.65vw,10px)/1.4 "IBM Plex Mono",monospace;letter-spacing:.14em}.disc-title{position:absolute;top:26%;font:700 clamp(24px,3.3vw,46px)/.95 Inter,sans-serif;letter-spacing:-.05em;max-width:85%;text-transform:uppercase}.disc-print>span:last-child{margin-top:auto}.disc-id{position:absolute;bottom:22px;right:22px;text-align:right;font:400 .5rem/1.6 "IBM Plex Mono",monospace;color:var(--muted);letter-spacing:.1em}.disc-glow,.disc-shadow,.disc-flare{display:none}.deck-footer{position:absolute;bottom:28px;left:clamp(22px,5vw,80px);right:clamp(22px,5vw,80px);display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:20px;color:var(--muted);font:400 .52rem/1.5 "IBM Plex Mono",monospace;letter-spacing:.12em}.deck-footer strong{font-weight:400;color:var(--electric)}
.content{border-top:1px solid var(--line);padding-top:70px;padding-bottom:100px}.content[hidden]{display:none}.content-top{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-bottom:40px}.section-kicker{color:var(--muted);margin:0 0 16px}.content h2{font-size:clamp(38px,5vw,68px);font-weight:400;letter-spacing:-.05em;margin:0}.back-menu{background:transparent;color:var(--muted);border:1px solid var(--line);padding:13px 16px;font:400 .6rem/1.5 "IBM Plex Mono",monospace;max-width:100%}.video-shell{border:1px solid var(--line);padding:10px;background:#101923}.video-screen{position:relative;min-height:360px;aspect-ratio:2.35/1;background:#030810;display:grid;place-items:center}.video-empty{width:100%;padding:40px 20px;display:grid;justify-items:center;text-align:center}.play-icon{font-size:40px;color:var(--electric)}.video-empty strong{font-size:clamp(20px,3vw,34px);font-weight:400;margin-top:20px}.video-empty small{color:var(--muted);font-size:.75rem;margin-top:12px}.video-link{margin-top:30px;background:var(--ice);color:var(--ink);padding:16px 24px;font-size:.75rem}.video-link:hover{background:#bed6e7}.caption{display:flex;justify-content:space-between;gap:15px;color:var(--muted);font:400 .58rem/1.6 "IBM Plex Mono",monospace;margin-top:18px}.still-intro{color:var(--muted);margin:0 0 30px}.contact-sheet{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 24px}.frame{margin:0}.frame:first-child{grid-column:1/-1}.frame-image{display:block;position:relative;width:100%;aspect-ratio:2.35/1;overflow:hidden;padding:0;border:0;background:#000;cursor:zoom-in}.frame-image img{width:100%;height:100%;object-fit:cover;display:block}.frame-image::after{content:'↗';position:absolute;right:14px;bottom:14px;width:36px;height:36px;display:grid;place-items:center;border:1px solid #ffffff60;background:#080d14aa;color:white}.frame figcaption{display:flex;justify-content:space-between;margin-top:12px;font:400 .55rem/1.5 "IBM Plex Mono",monospace;color:var(--muted)}
.dossier-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.4fr);gap:clamp(36px,6vw,90px);align-items:start}.dossier-section+.dossier-section{margin-top:52px}.dossier-heading{display:flex;align-items:baseline;gap:16px;border-top:1px solid var(--line);padding-top:21px;margin-bottom:24px}.dossier-heading>span{color:var(--electric);font:400 .62rem/1.5 "IBM Plex Mono",monospace}.dossier-heading h3{font-size:clamp(1.1rem,2vw,1.45rem);line-height:1.4;font-weight:500;letter-spacing:.015em;margin:0}.dossier-prose{max-width:43em}.dossier-prose p{color:#c4d1df;font-size:clamp(.97rem,1.15vw,1.07rem);line-height:1.95;margin:0 0 20px;overflow-wrap:break-word}.dossier-prose p:last-child{margin-bottom:0}.dossier-prose .statement-signature{margin-top:26px;font:400 .65rem/1.7 "IBM Plex Mono",monospace;letter-spacing:.05em;color:var(--electric)}html[lang=en] .dossier-prose p{line-height:1.85}.credit-list{margin:0}.credit-list>div{padding-block:0 21px;margin-bottom:21px;border-bottom:1px solid var(--line)}.credit-list dt{font-size:.7rem;line-height:1.6;color:var(--muted);margin-bottom:9px}.credit-list dd{font-size:.93rem;line-height:1.75;color:var(--ice);margin:0;overflow-wrap:anywhere}.dossier-festivals{margin-top:64px}.festival-list{list-style:none;padding:0;margin:0}.festival-list li{display:grid;grid-template-columns:70px minmax(0,1fr) auto;gap:24px;align-items:start;padding:26px 0;border-bottom:1px solid var(--line)}.festival-year{font:400 .72rem/1.8 "IBM Plex Mono",monospace;color:var(--muted);padding-top:3px}.festival-info h4{font-size:clamp(1rem,1.8vw,1.35rem);font-weight:500;line-height:1.5;margin:0}.festival-info p{display:flex;flex-wrap:wrap;gap:4px 14px;color:var(--muted);font-size:.71rem;line-height:1.8;margin:9px 0 0}.category-name{color:#bdcbd9}.festival-result{font:400 .62rem/1.6 "IBM Plex Mono",monospace;letter-spacing:.05em;color:var(--electric);border:1px solid var(--line);padding:7px 12px}.site-foot{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-block:28px;font:400 .57rem/1.6 "IBM Plex Mono",monospace;color:var(--muted)}
@media(max-width:760px){.dossier-layout{grid-template-columns:minmax(0,1fr);gap:40px}.dossier-section+.dossier-section{margin-top:38px}.dossier-festivals{margin-top:42px}.dossier-heading{margin-bottom:20px}.credit-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}.credit-list .company-credit{grid-column:1/-1}.festival-list li{grid-template-columns:45px minmax(0,1fr);gap:8px 16px}.festival-result{grid-column:2;justify-self:start;margin-top:5px}.festival-info p{display:block}.category-name{display:block}.festival-info h4{font-size:1.05rem}}
.lightbox{position:fixed;inset:0;width:100%;height:100dvh;max-width:none;max-height:none;margin:0;border:0;padding:22px;background:#030609;color:var(--ice)}.lightbox::backdrop{background:#030609}.lightbox[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:16px}.lightbox-top,.lightbox-foot{display:flex;justify-content:space-between;align-items:center;gap:15px;font:400 .6rem/1.5 "IBM Plex Mono",monospace;color:var(--muted)}.lightbox-close,.lightbox-arrow{background:#080d14cc;border:1px solid var(--line);color:var(--ice);min-width:44px;min-height:44px}.lightbox-close{padding:12px 16px;font-size:.65rem}.lightbox-stage{position:relative;min-height:0;height:100%}.lightbox-stage img{display:block;width:100%;height:100%;object-fit:contain}.lightbox-arrow{position:absolute;top:50%;transform:translateY(-50%);font-size:1.3rem}.previous{left:0}.next{right:0}
@media(max-width:900px){.disc-menu{column-gap:5%;padding-top:42px}h1{font-size:clamp(76px,11vw,108px)}html[lang=en] h1{font-size:clamp(48px,7vw,68px)}.disc-stage{aspect-ratio:1/1.2}.disc-title{font-size:clamp(20px,3.3vw,32px)}.sleeve-label span{display:none}.small-meta{font-size:.57rem}.deck-footer span:last-child{display:none}}
@media(max-width:600px){.topbar{min-height:76px;gap:8px}.brand{font-size:.5rem;gap:6px}.topbar-right{gap:7px}.exit-top{font-size:.5rem;max-width:68px}.lang button{min-width:32px}.disc-menu{grid-template-columns:1fr 1fr;gap:0 16px;padding-top:32px;padding-bottom:95px;min-height:0}.menu-copy{grid-column:1/-1;grid-row:1}.eyebrow{font-size:.55rem;margin-bottom:20px}h1{font-size:clamp(65px,15vw,90px);line-height:1.1}h1 br{display:none}html[lang=en] h1{font-size:clamp(46px,11vw,65px);max-width:10ch}.small-meta{margin:18px 0 28px;font-size:.55rem}.disc-stage{grid-column:1/-1;grid-row:2;width:min(280px,78%);justify-self:center;aspect-ratio:1/1.08;margin-bottom:32px}.disc-title{font-size:26px}.disc-print{font-size:6px}.sleeve-label{top:14px;left:20px;font-size:6px}.sleeve-label span{display:inline}.disc-id{bottom:12px;right:14px;font-size:6px}.menu-controls{grid-column:1/-1;grid-row:3}.menu-item{min-height:60px;font-size:1rem}.eject-control{margin-top:22px}.deck-footer{font-size:.46rem;bottom:23px}.deck-footer span:nth-child(2){display:none}.content{padding-top:45px;padding-bottom:65px}.content-top{align-items:flex-start;flex-direction:column;gap:22px;margin-bottom:30px}.back-menu{font-size:.55rem}.contact-sheet,.file-grid,.awards-inline{grid-template-columns:1fr;gap:30px}.frame:first-child,.award-card{grid-column:auto}.video-screen{min-height:300px;aspect-ratio:auto}.video-shell{padding:6px}.caption,.site-foot{flex-direction:column;gap:8px}.lightbox{padding:14px}.lightbox-top,.lightbox-foot{font-size:.52rem}}
@media(max-height:540px) and (orientation:landscape){.disc-menu{padding-top:28px}.disc-stage{max-width:320px;justify-self:center}h1{font-size:78px}html[lang=en] h1{font-size:54px}}
@media(max-width:600px){html[lang=en] h1 br{display:block}.lang{flex-shrink:0}.topbar-right{flex-shrink:0}.lang button{flex-shrink:0;white-space:nowrap}.disc-title{font-size:clamp(18px,6vw,26px)}}
/* Midnight blue / ice cyan: film-specific interface, original stills unchanged. */
:root{--ink:#060e20;--ice:#e3f1fa;--muted:#93a9bf;--line:#8acfe333;--electric:#8ce1ec}
.disc-menu{background:radial-gradient(ellipse at 76% 43%,#12396838,transparent 63%)}
.disc-stage{background:linear-gradient(135deg,#15355480,#08172c 55%,#0c2941);border-color:#84c6e340}
.eyebrow,.section-kicker,.file-label,.menu-item .index,.menu-item .arrow,.disc-id{color:var(--electric)}
.menu-item:hover{background:#8ce1ec0d}.eject-icon{color:var(--electric);border-color:#8ce1ec55}
.video-shell{background:#0c2038;border-color:#8ce1ec55}.video-screen{background:radial-gradient(ellipse at 50% 40%,#14324e,#050d1b 75%)}
.video-link{background:var(--electric);color:#061426}.video-link:hover{background:#c5f5ff}.lang button[aria-pressed=true]{border-bottom-color:var(--electric)}
/* A compact disc archive leaves the title and chapter controls in focus. */
.disc-stage{width:min(100%,400px);justify-self:center;aspect-ratio:1/1.16;border-radius:3px;background:linear-gradient(110deg,#142e4666,transparent 48%),repeating-linear-gradient(0deg,transparent 0 39px,#8ce1ec06 40px),#09182b;box-shadow:0 18px 48px #0005,inset 0 0 0 6px #02091555}
.disc-stage::before{content:'';position:absolute;inset:62px 24px 67px;border:1px solid #8ce1ec16;border-radius:50%;pointer-events:none}
.disc-stage::after{border-left-width:7px}
.disc{width:68%;transform:rotate(-12deg);box-shadow:0 0 0 1px #dce6ea80,5px 13px 25px #000a,inset 0 0 0 3px #e2e7e533}
.disc-title{font-size:clamp(21px,2.3vw,31px)}
.disc-print{font-size:clamp(6px,.55vw,8px)}
.sleeve-label{top:24px;left:24px;right:24px;padding-bottom:15px;border-bottom:1px solid var(--line);color:var(--electric)}
.disc-id{left:24px;right:24px;bottom:24px;border-top:1px solid var(--line);padding-top:14px;text-align:left;line-height:1.9}
@media(max-width:900px){.disc-stage{max-width:330px}.disc-title{font-size:clamp(18px,2.7vw,26px)}}
@media(max-width:600px){.disc-stage{width:min(250px,85%);margin-block:0 26px}.disc-stage::before{inset:54px 20px 60px}.disc-title{font-size:21px}.disc-print{font-size:6px}.sleeve-label{top:17px;left:20px;right:20px;padding-bottom:12px}.disc-id{left:20px;right:20px;bottom:17px;padding-top:12px}}
/* The medical chamber is the DVD menu; the disc is a small physical cue. */
.disc-menu{isolation:isolate;overflow:hidden;display:block;padding-top:clamp(48px,8vh,100px);padding-bottom:120px;min-height:760px;min-height:max(760px,calc(100svh - 88px));background:#061020}
.terminal-scene{position:absolute;inset:0;z-index:-3;width:100%;height:100%;object-fit:cover;object-position:65% center}
@media(min-width:601px){.terminal-scene{transform:scale(1.34);transform-origin:center}}
.disc-menu::before{content:'';position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#040c19f5 4%,#040c19d9 33%,#040c1933 72%),linear-gradient(0deg,#060e20 0%,transparent 40%,#060e2066)}
.terminal-scan{position:absolute;inset:0;z-index:-1;pointer-events:none;background:repeating-linear-gradient(0deg,transparent 0 3px,#a8e5fa09 4px)}
.menu-copy,.menu-controls{width:min(48%,530px)}
.menu-copy h1{font-size:clamp(72px,7.5vw,110px)}html[lang=en] .menu-copy h1{font-size:clamp(52px,5.6vw,80px)}
.film-role{font:400 .65rem/1.7 'IBM Plex Mono',monospace;letter-spacing:.08em;color:var(--electric);margin:22px 0 0}
.small-meta{margin:12px 0 30px;font-size:.56rem}.eyebrow{margin-bottom:22px}
.menu-list{background:#040c1980;backdrop-filter:blur(8px)}
.menu-item{position:relative;min-height:60px;padding-left:14px;grid-template-columns:34px 1fr 24px}
.menu-item:hover,.menu-item:focus-visible,.menu-item[aria-pressed=true]{padding-left:22px;background:#8ce1ec1a;color:var(--electric)}
.menu-item:hover::before,.menu-item:focus-visible::before,.menu-item[aria-pressed=true]::before{content:'';position:absolute;left:0;top:16px;bottom:16px;width:3px;background:var(--electric);box-shadow:0 0 12px #8ce1ec77}
.disc-stage{position:absolute;right:clamp(24px,5vw,80px);bottom:110px;width:180px;aspect-ratio:1;background:#071529aa;backdrop-filter:blur(12px);transform:rotate(5deg);box-shadow:0 12px 30px #0006;border-color:#8ce1ec33}
.disc-stage::before{inset:12px;border-radius:0}.disc-stage::after{border-left-width:5px}.disc{width:76%}.disc-title{font-size:17px}.disc-print{font-size:5px}.sleeve-label,.disc-id{display:none}
.disc-stage .disc{animation:disc-load .38s ease-out both}.disc-stage.ejecting .disc{animation:disc-eject .2s ease-in both}
@keyframes disc-load{from{opacity:.4;transform:translateX(18px) rotate(-28deg)}to{opacity:1;transform:translateX(0) rotate(-12deg)}}
@keyframes disc-eject{to{opacity:0;transform:translateX(60%) rotate(12deg)}}
.signal-enter{animation:signal-arrive .24s ease-out}
@keyframes signal-arrive{from{opacity:.6;transform:translateY(6px);filter:brightness(1.2)}to{opacity:1;transform:none;filter:none}}
@media(max-width:900px){.menu-copy,.menu-controls{width:58%}.terminal-scene{object-position:62% center}.disc-stage{width:150px}.disc-title{font-size:15px}}
@media(max-width:600px){.disc-menu{min-height:800px;padding-top:220px;padding-bottom:160px}.terminal-scene{top:-66px;bottom:auto;height:520px;object-position:center center}.disc-menu::before{background:linear-gradient(180deg,#0610200d 0px,#06102022 180px,#061020c7 330px,#061020 440px)}.menu-copy,.menu-controls{width:100%}.menu-copy h1{font-size:clamp(60px,15vw,86px)}html[lang=en] .menu-copy h1{font-size:clamp(46px,11vw,66px);max-width:10ch}.eyebrow{font-size:.5rem;margin-bottom:15px}.film-role{font-size:.59rem;margin-top:17px}.small-meta{margin-bottom:24px}.disc-stage{width:86px;right:25px;bottom:66px;margin:0}.disc-title{font-size:9px}.disc-print{font-size:3px}.disc-stage::before{inset:7px}.deck-footer{bottom:24px}.eject-control{margin-top:22px}.menu-item{font-size:1rem}}
@media(max-height:540px) and (orientation:landscape){.disc-menu{min-height:680px;padding-top:40px}.menu-copy,.menu-controls{width:62%}.disc-stage{width:125px}.disc-title{font-size:12px}}
.topbar a,.site-foot a{display:inline-flex;align-items:center;min-height:44px}.exit-top{white-space:nowrap;max-width:none}.lang button{min-width:44px}.back-menu{min-height:44px}.eject-control{min-height:44px}
@media(max-width:360px){.topbar{flex-wrap:wrap;padding-block:8px;gap:0 12px}.topbar-right{margin-left:auto}.exit-top{max-width:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.menu-item{transition:none}.signal-enter,.disc-stage .disc{animation:none}}
