:root{--black:#020202;--bone:#ece8df;--red:#bd171b;--hot:#ff3928}
*{box-sizing:border-box}
html,body{margin:0;background:var(--black);color:var(--bone);font-family:Arial,Helvetica,sans-serif;overscroll-behavior:none}
body,.experience{height:1750vh}
body{overflow-x:hidden;cursor:none}
body.intro-locked{overflow:hidden}
html.sequence-locked,body.sequence-locked{overflow:hidden;overscroll-behavior:none}
html.site-mode,html.site-mode body,html.site-mode .experience{height:100%;min-height:100%;overflow:hidden}
html.site-mode .world,html.site-mode .queen,html.site-mode .queen-copy,html.site-mode .sacrifice,html.site-mode .sacrifice-copy,html.site-mode .eye-bridge,html.site-mode .velocity,html.site-mode .title,html.site-mode .prologue,html.site-mode .entry-options{opacity:0!important;visibility:hidden!important}
html.site-mode .world,html.site-mode .queen,html.site-mode .queen-copy,html.site-mode .sacrifice,html.site-mode .sacrifice-copy,html.site-mode .eye-bridge,html.site-mode .velocity,html.site-mode .title-arrival,html.site-mode .prologue,html.site-mode .entry-options{display:none!important}
.skip{position:fixed;z-index:100;left:16px;top:-60px;padding:12px 16px;background:#fff;color:#000;text-decoration:none;font:700 12px Arial}.skip:focus{top:16px}
.stage{position:sticky;top:0;width:100vw;height:100vh;min-height:620px;overflow:hidden;isolation:isolate;background:#000}
.opening-plate,.source,.source-3d,.source-shade,.queen,.sacrifice,.finale,.eye-bridge,.world,.velocity,.grain,.vignette{position:absolute;inset:0;width:100%;height:100%}
.opening-plate{z-index:1;transform-origin:50% 48%;will-change:transform,filter}
.source{z-index:1;object-fit:cover;filter:brightness(.72) saturate(.86) contrast(1.12);will-change:transform,opacity}
.source-3d{z-index:2;display:block;opacity:0;will-change:opacity,transform}
.source-shade{z-index:3;background:radial-gradient(circle at 50% 44%,transparent 0 14%,#0000 27%,#0007 79%),linear-gradient(180deg,#0005,#0000 30%,#0006);will-change:opacity}
.world{z-index:4;perspective:900px;perspective-origin:50% 50%;opacity:0;will-change:opacity}
.archive-atmosphere{position:absolute;z-index:0;inset:-7%;background:radial-gradient(ellipse at center,#06252b11 0 24%,#0006 72%,#000d 100%),linear-gradient(180deg,#00171d11,#0007),url('assets/optimised/archive-atmosphere.webp') center/cover no-repeat;opacity:.72;transform:scale(1.04);will-change:transform,opacity}
.camera,.archive{position:absolute;z-index:1;inset:0;transform-style:preserve-3d;will-change:transform}
.chain-object{position:absolute;left:50%;top:50%;display:block;width:auto;height:140vh;margin:-70vh 0 0 -46.667vh;transform-origin:50% 50%;backface-visibility:visible;pointer-events:none}
.film-frame{position:absolute;left:50%;top:50%;width:min(42vw,610px);aspect-ratio:16/9;margin-left:min(-21vw,-305px);margin-top:min(-11.8vw,-171px);background:#070707;border:1px solid #e5dfd42b;box-shadow:0 0 0 1px #000,0 28px 90px #000;overflow:hidden;backface-visibility:hidden;will-change:transform,opacity,filter;transform-origin:50% 50%}
.film-frame:after{content:"";position:absolute;inset:0;border:1px solid #fff1;box-shadow:inset 0 0 52px #0007;pointer-events:none}
.film-frame img,.film-frame video{display:block;width:100%;height:100%;object-fit:cover}
.film-frame .code{position:absolute;left:10px;bottom:8px;color:#fff9;text-shadow:0 2px 8px #000;font:700 7px/1 'Courier New',monospace;letter-spacing:.22em}
.film-frame.quote{display:grid;align-content:center;width:min(52vw,750px);aspect-ratio:2.15/1;padding:clamp(25px,4vw,60px);background:#d7d3ca;color:#090909;border:0;box-shadow:10px 10px 0 #a6171b,0 35px 100px #000}
.film-frame.quote p{margin:0;font:900 clamp(25px,4vw,63px)/.84 Arial;letter-spacing:-.07em}.film-frame.quote cite{margin-top:20px;color:#a00e16;font:700 8px/1 'Courier New',monospace;letter-spacing:.24em}
.handoff-frame{--takeover:0}.handoff-frame:after,.handoff-frame .code{opacity:calc(1 - var(--takeover))}
.queen{z-index:3;background:url('assets/optimised/queen-opening.webp') center/cover no-repeat;opacity:0;transform:scale(1.035);filter:saturate(.94) contrast(1.08);will-change:opacity,transform;background-position:var(--queen-x,50%) var(--queen-y,50%)}
.queen-film{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--queen-x,50%) var(--queen-y,50%);opacity:1;will-change:object-position}
.queen i{position:absolute;inset:0;background:radial-gradient(circle at var(--queen-light-x,68%) var(--queen-light-y,38%),#ff9b4b1e 0 7%,#b9191610 18%,transparent 42%),linear-gradient(90deg,#000b 0 25%,#0005 43%,transparent 68%);mix-blend-mode:screen;opacity:.75;pointer-events:none}
.sacrifice{z-index:5;background:#000 url('assets/optimised/sacrifice-pass.webp') center/cover no-repeat;opacity:0;transform:scale(1.025);will-change:opacity,transform;filter:saturate(.96) contrast(1.07)}
.sacrifice-film{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--sac-x,50%) center;will-change:object-position}
.sacrifice i{position:absolute;inset:0;background:linear-gradient(90deg,#0002 0 48%,transparent 73%),radial-gradient(ellipse at 85% 51%,transparent 0 15%,#0002 42%,#0009 130%);pointer-events:none}
.sacrifice-copy{--bar-reveal:0;position:absolute;z-index:14;left:4vw;bottom:11vh;width:min(44vw,720px);pointer-events:none}.sacrifice-copy:before{content:"";display:block;width:clamp(54px,7vw,110px);height:3px;margin-bottom:22px;background:#b41419;transform:scaleX(var(--bar-reveal));transform-origin:left center}.sacrifice-copy p{margin:0;color:#eee9e0;text-transform:uppercase;text-wrap:balance;text-shadow:0 8px 32px #000;font:500 clamp(28px,3.65vw,62px)/1.01 Arial,Helvetica,sans-serif;letter-spacing:-.022em}.sacrifice-copy p>span,.sacrifice-copy strong{display:block}.sacrifice-copy b{color:#e15a50;font-size:.62em;font-weight:600;letter-spacing:.08em}.sacrifice-copy strong{font:500 1em/1.01 Arial,Helvetica,sans-serif;color:#eee9e0;letter-spacing:-.015em}
.finale{position:fixed;z-index:50;display:none;inset:0;width:100vw;height:100vh;background:#000;pointer-events:none}
.finale.is-active{display:block}
.reckoning,.montage,.rewind,.final-hub{position:absolute;inset:0;opacity:0;visibility:hidden}
.reckoning{display:grid;place-items:center;background:#000;padding:5vw;overflow:hidden}
.reckoning p{position:relative;width:min(90vw,1120px);margin:0;text-align:center;text-transform:uppercase;isolation:isolate}
.reckoning span,.reckoning strong,.reckoning em{position:relative;z-index:1;display:block;width:100%;color:transparent;font-family:Arial Black,Arial,sans-serif;font-weight:900;font-style:normal;letter-spacing:-.075em;white-space:nowrap;filter:drop-shadow(0 18px 28px #000)}
.reckoning span:before,.reckoning strong:before,.reckoning em:before{content:attr(data-text);position:absolute;z-index:0;inset:0;color:#82090f;transform:translate(5px,4px);text-shadow:3px 3px 0 #250104;pointer-events:none}
.reckoning span b,.reckoning strong b,.reckoning em b{position:relative;z-index:1;display:block;color:transparent;-webkit-text-fill-color:transparent;background:#d9d6cf url('assets/optimised/title-mark-textured.webp') center/cover no-repeat;-webkit-background-clip:text;background-clip:text;font:inherit;letter-spacing:inherit}
.reckoning span b:after,.reckoning strong b:after,.reckoning em b:after{content:attr(data-text);position:absolute;inset:0;color:transparent;-webkit-text-fill-color:transparent;-webkit-text-stroke:1px #fff3;background:repeating-linear-gradient(127deg,transparent 0 14%,#170105aa 14.3% 14.7%,transparent 15% 29%);-webkit-background-clip:text;background-clip:text;opacity:.72;pointer-events:none}
.reckoning span{margin:0 0 .16em;font-size:clamp(28px,3.8vw,62px);line-height:.9}
.reckoning strong{font-size:clamp(58px,8.3vw,142px);line-height:.82}
.reckoning em{margin:.14em 0 0;font-size:clamp(58px,8.3vw,142px);line-height:.82}
.finale.phase-question .reckoning{visibility:visible;opacity:1}.finale.phase-question .reckoning p{animation:qCentre .72s .12s cubic-bezier(.16,.82,.18,1) both}
@keyframes qCentre{0%{opacity:0;transform:translateY(8px);filter:blur(5px)}100%{opacity:1;transform:none;filter:blur(0)}}
.montage{overflow:hidden;background:#000}.montage:before,.montage:after{content:"";position:absolute;z-index:3;inset:-8%;pointer-events:none;opacity:0}.montage:before{background:repeating-linear-gradient(0deg,#000 0 2.6vh,transparent 2.8vh 7.4vh);mix-blend-mode:multiply}.montage:after{background:linear-gradient(90deg,transparent 0 8%,#d4181e88 9% 12%,transparent 13% 43%,#f1e9df28 44% 45%,transparent 46% 100%);mix-blend-mode:screen}.finale.phase-montage .montage:before{animation:shutterViolence .19s steps(3,end) infinite}.finale.phase-montage .montage:after{animation:tearViolence .26s steps(2,end) infinite}
.montage video{position:absolute;inset:-4%;width:108%;height:108%;object-fit:cover;opacity:0;filter:saturate(.82) contrast(1.16) brightness(.9);transform:scale(1.06);will-change:opacity,transform,filter}.montage video.is-on{opacity:1;animation:shotViolence .86s steps(4,end) both}.montage video[data-shot="1"]{object-position:50% center}.montage video[data-shot="2"]{inset:0;width:100%;height:100%;object-position:50% center}.montage video[data-shot="2"].is-on{animation:hammerViolence .86s steps(4,end) both}.finale.phase-montage .montage{visibility:visible;opacity:1}
@keyframes shotViolence{0%{transform:scale(1.18) translate3d(-2%,1.2%,0);filter:saturate(.55) contrast(1.55) brightness(.76)}9%{transform:scale(1.04) translate3d(1%,0,0);filter:saturate(1.05) contrast(1.22) brightness(1.02)}22%{transform:scale(1.1) translate3d(-1.2%,-1%,0);filter:saturate(.72) contrast(1.42) brightness(.84)}41%{transform:scale(1.07) translate3d(1.6%,.5%,0);filter:saturate(1.1) contrast(1.3) brightness(.96)}63%{transform:scale(1.14) translate3d(-.8%,1%,0);filter:saturate(.58) contrast(1.55) brightness(.8)}100%{transform:scale(1.2) translate3d(1.2%,-1%,0);filter:saturate(.9) contrast(1.38) brightness(.86)}}
@keyframes hammerViolence{0%{transform:scale(1.045) translate3d(-.7%,.4%,0);filter:saturate(.82) contrast(1.28) brightness(1.05)}28%{transform:scale(1.01) translate3d(.5%,0,0);filter:saturate(1) contrast(1.16) brightness(1.16)}56%{transform:scale(1.035) translate3d(-.35%,-.25%,0);filter:saturate(.9) contrast(1.22) brightness(1.1)}100%{transform:scale(1.055) translate3d(.4%,.25%,0);filter:saturate(.82) contrast(1.3) brightness(1.02)}}
@keyframes shutterViolence{0%{opacity:.12;transform:translateY(-5%)}50%{opacity:.32;transform:translateY(4%)}100%{opacity:.08;transform:translateY(-2%)}}
@keyframes tearViolence{0%{opacity:.08;transform:translateX(-5%) skewX(3deg)}50%{opacity:.42;transform:translateX(4%) skewX(-2deg)}100%{opacity:.12;transform:translateX(-1%)}}
.impact-flash{position:absolute;z-index:4;inset:0;opacity:0;background:#e91f18;mix-blend-mode:screen}.impact-flash.hit{animation:impact .16s ease-out}@keyframes impact{0%{opacity:.72}100%{opacity:0}}
.rewind{overflow:hidden;background:#000;perspective:900px}.finale.phase-rewind .rewind{visibility:visible;opacity:1}.rewind-stack,.rewind-stack img,.rewind-velocity,.rewind-flare{position:absolute;inset:0;width:100%;height:100%}.rewind-stack{animation:stackViolence .12s steps(2,end) infinite}.rewind-stack img{object-fit:cover;opacity:0;transform:scale(1.45);filter:contrast(1.3) saturate(.75);will-change:transform,filter,opacity}.rewind-stack img.is-on{animation:reversePlate .38s cubic-bezier(.62,.01,.95,.3) both}.rewind-stack img:nth-child(odd){--roll:4deg}.rewind-stack img:nth-child(even){--roll:-3.5deg}
.rewind-velocity{z-index:2;opacity:0;background:repeating-conic-gradient(from 0deg at 50% 50%,transparent 0 3.2deg,#e4ddd433 3.45deg,#a512192e 3.65deg,transparent 4deg 8deg);mix-blend-mode:screen;transform:scale(.18);filter:blur(3px)}.finale.phase-rewind .rewind-velocity{animation:reverseVelocity 1.25s ease-in both}
.rewind-flare{z-index:3;background:radial-gradient(circle at 50% 50%,#fff 0 1%,#dc1b1e 3%,#7d070b88 7%,transparent 22%);opacity:0;mix-blend-mode:screen}.finale.phase-rewind .rewind-flare{animation:reverseFlare 1.25s ease-in both}
@keyframes reversePlate{0%{opacity:1;transform:scale(1.45) rotate(var(--roll));filter:blur(10px) contrast(1.7) saturate(1.1)}24%{opacity:1;transform:scale(1) rotate(0);filter:blur(0) contrast(1.3) saturate(.76)}68%{opacity:.92}100%{opacity:0;transform:scale(.045) rotate(calc(var(--roll) * -.75));filter:blur(11px) contrast(2) saturate(.2)}}
@keyframes stackViolence{0%{transform:translate3d(-.8%,.4%,0)}50%{transform:translate3d(.7%,-.5%,0)}100%{transform:translate3d(-.2%,.6%,0)}}
@keyframes reverseVelocity{0%{opacity:0;transform:scale(.15) rotate(0)}22%{opacity:.5}100%{opacity:.9;transform:scale(3.4) rotate(-34deg)}}
@keyframes reverseFlare{0%,52%{opacity:0;transform:scale(.2)}78%{opacity:.72}100%{opacity:0;transform:scale(3)}}
.final-hub{overflow:hidden;background:transparent;pointer-events:auto}.finale.phase-hub{background:transparent;cursor:auto}.finale.phase-hub .final-hub{visibility:visible;opacity:1;animation:hubArrive .9s cubic-bezier(.2,.8,.2,1) both}@keyframes hubArrive{0%{opacity:0;filter:blur(18px);transform:scale(1.08)}100%{opacity:1;filter:blur(0);transform:scale(1)}}
.hub-wash{position:absolute;inset:0;background:linear-gradient(180deg,#0008 0,#0001 38%,#0008 76%,#000 100%),radial-gradient(ellipse at 50% 42%,#05282b18,transparent 58%)}
.hub-title{position:absolute;z-index:1;left:50%;top:26%;width:min(54vw,880px);transform:translate(-50%,-50%)}.hub-title img{display:block;width:100%;filter:drop-shadow(0 18px 42px #000)}.hub-title-red{position:absolute;inset:0;transform:translate(9px,7px)}
.hub-kicker{position:absolute;z-index:2;left:50%;top:8vh;transform:translateX(-50%);margin:0;font:700 8px/1 'Courier New',monospace;letter-spacing:.3em;color:#fff9;white-space:nowrap}
.hub-nav{position:absolute;z-index:2;left:50%;top:51%;width:min(88vw,1180px);transform:translateX(-50%);display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr 1fr .8fr;gap:clamp(16px,2.4vw,42px)}.hub-nav a,.hub-nav button{appearance:none;position:relative;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;gap:10px 8px;align-items:end;min-width:0;padding:0 0 13px;border:0;border-bottom:1px solid #fff4;background:transparent;color:#eee8df;text-align:left;text-decoration:none;text-transform:uppercase;cursor:pointer;transition:border-color .25s,color .25s,transform .35s cubic-bezier(.2,.8,.2,1)}.hub-nav span{grid-column:1/-1;font:700 7px/1 'Courier New',monospace;letter-spacing:.22em;color:#ff6158}.hub-nav strong{font:500 clamp(14px,1.45vw,23px)/.95 Arial,Helvetica,sans-serif;letter-spacing:-.02em}.hub-nav b{font-size:12px;color:#ff4a3c}.hub-nav a:after,.hub-nav button:after{content:"";position:absolute;left:0;right:100%;bottom:-1px;height:1px;background:#e02a29;transition:right .38s cubic-bezier(.2,.8,.2,1)}.hub-nav a:hover,.hub-nav button:hover,.hub-nav a:focus-visible,.hub-nav button:focus-visible{color:#fff;border-color:#fff2;outline:0;transform:translateY(-7px)}.hub-nav a:hover:after,.hub-nav button:hover:after,.hub-nav a:focus-visible:after,.hub-nav button:focus-visible:after{right:0}
.site-panel{position:absolute;z-index:20;inset:0;overflow-x:hidden;overflow-y:auto;background:linear-gradient(135deg,#08090a 0,#020202 48%,#120204 145%);opacity:0;visibility:hidden;transform:translate3d(0,3%,0);transition:opacity .42s ease,transform .55s cubic-bezier(.16,.82,.18,1),visibility 0s .55s;pointer-events:none;overscroll-behavior:contain}.site-panel:before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 82% 18%,#7010142b,transparent 32%),repeating-linear-gradient(0deg,transparent 0 3px,#fff 4px,transparent 5px);opacity:.14}.site-panel.is-open{opacity:1;visibility:visible;transform:none;transition-delay:0s;pointer-events:auto}.panel-close{position:fixed;z-index:3;right:clamp(20px,3vw,48px);top:clamp(20px,3vw,42px);display:flex;align-items:center;gap:12px;padding:8px 0;border:0;border-bottom:1px solid #d32227;background:transparent;color:#eee9df;font:700 8px/1 'Courier New',monospace;letter-spacing:.22em;cursor:pointer}.panel-close span{font:300 20px/10px Arial}.panel-close:hover,.panel-close:focus-visible{color:#fff;border-color:#fff;outline:0}.panel-shell{position:relative;z-index:1;width:min(88vw,1180px);min-height:100%;margin:auto;padding:clamp(92px,12vh,140px) 0 clamp(70px,9vh,110px)}.panel-shell-wide{width:min(90vw,1320px)}.panel-heading{display:grid;grid-template-columns:minmax(260px,.9fr) 1.4fr;gap:clamp(30px,7vw,120px);align-items:start;margin-bottom:clamp(45px,7vh,85px)}.panel-heading>span{padding-top:10px;color:#e45a54;font:700 8px/1 'Courier New',monospace;letter-spacing:.28em}.panel-heading h2{margin:0;color:#eee9df;font:500 clamp(54px,8.6vw,148px)/.79 Arial,Helvetica,sans-serif;letter-spacing:-.065em;text-transform:uppercase}.panel-shell-cinema{width:min(92vw,1500px)}.panel-shell-cinema .panel-heading{grid-template-columns:1fr auto;align-items:end;margin-bottom:30px}.panel-shell-cinema .panel-heading h2{font-size:clamp(42px,6vw,94px);text-align:right}.trailer-player{position:relative;width:100%;aspect-ratio:16/9;background:#070707 url('assets/optimised/00-01-45-green-rupture.webp') center/cover no-repeat;box-shadow:0 30px 100px #000}.trailer-player:before{content:"LOADING TRANSMISSION";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:#fff8;font:700 8px/1 'Courier New',monospace;letter-spacing:.28em}.trailer-player iframe{position:absolute;z-index:1;inset:0;width:100%;height:100%;border:0}.panel-external{display:inline-block;margin-top:26px;padding-bottom:7px;border-bottom:1px solid #b9181d;color:#eee9df;text-decoration:none;text-transform:uppercase;font:700 8px/1 'Courier New',monospace;letter-spacing:.2em}.panel-story{width:min(88vw,1200px)}.story-copy{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(25px,4vw,65px);color:#d7d2c9}.story-copy p{margin:0;font:400 clamp(16px,1.35vw,20px)/1.58 Arial,Helvetica,sans-serif}.story-copy p:first-child:first-letter{float:left;margin:.03em .08em 0 0;color:#e23332;font:500 4.5em/.72 Arial}.film-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin:70px 0 0;padding:25px 0;border-top:1px solid #fff3;border-bottom:1px solid #fff2}.film-facts div{display:grid;gap:10px}.film-facts dt,.watch-grid article>span,.selected-cast span{color:#e05b55;font:700 7px/1 'Courier New',monospace;letter-spacing:.24em}.film-facts dd{margin:0;color:#eee9df;font:500 clamp(14px,1.3vw,20px)/1 Arial}.watch-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#fff2;border:1px solid #fff2}.watch-grid article{min-height:230px;padding:clamp(25px,3vw,44px);background:#050505}.watch-grid h3{margin:42px 0 12px;color:#eee9df;font:500 clamp(30px,3.5vw,54px)/.9 Arial;letter-spacing:-.04em}.watch-grid p{max-width:28ch;margin:0;color:#aaa59d;font:400 14px/1.5 Arial}.panel-cta{display:flex;justify-content:space-between;align-items:center;margin-top:28px;padding:21px 0;border-bottom:1px solid #d21e24;color:#eee9df;text-decoration:none;font:600 clamp(15px,1.4vw,21px)/1 Arial;letter-spacing:.04em}.panel-cta b{color:#ef3b39}.press-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(34px,5vw,76px) clamp(28px,4vw,65px)}.press-grid a{display:grid;align-content:space-between;min-height:210px;padding:0 0 24px;border-bottom:1px solid #fff3;color:#eee9df;text-decoration:none;transition:border-color .25s,transform .3s ease}.press-grid a:hover,.press-grid a:focus-visible{border-color:#d9282c;transform:translateY(-6px);outline:0}.press-grid blockquote{margin:0;font:500 clamp(24px,2.5vw,39px)/1.02 Arial;letter-spacing:-.035em}.press-grid cite{margin-top:28px;color:#e15c56;font:700 7px/1.2 'Courier New',monospace;letter-spacing:.19em;font-style:normal}.credits-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,9vw,150px)}.credits-grid dl{margin:0}.credits-grid div{display:grid;grid-template-columns:minmax(150px,.8fr) 1.2fr;gap:25px;padding:13px 0;border-bottom:1px solid #fff2}.credits-grid dt{color:#e15c56;font:700 7px/1.3 'Courier New',monospace;letter-spacing:.18em}.credits-grid dd{margin:0;color:#eee9df;font:500 clamp(16px,1.5vw,22px)/1.1 Arial}.selected-cast{max-width:1000px;margin:55px 0 0;color:#b9b4ac;font:400 clamp(16px,1.5vw,22px)/1.65 Arial}.selected-cast span{display:block;margin-bottom:14px}
.hub-foot{position:absolute;z-index:2;left:4vw;right:4vw;bottom:4vh;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;font:700 7px/1 'Courier New',monospace;letter-spacing:.22em;color:#fff7}.site-credit{margin:0;text-align:center;white-space:nowrap}.site-credit a{color:#fff9;text-decoration:none;border-bottom:1px solid #a9161b;padding-bottom:4px;transition:color .2s,border-color .2s}.site-credit a:hover,.site-credit a:focus-visible{color:#fff;border-color:#ff4a42;outline:0}.hub-replay{justify-self:end;appearance:none;border:0;border-bottom:1px solid #c21b20;background:transparent;padding:8px 0;color:#fffb;font:inherit;letter-spacing:inherit;cursor:pointer}.hub-replay:hover,.hub-replay:focus-visible{color:#fff;border-color:#ff4a42;outline:0}
.trailer-player{background-image:url('assets/optimised/00-01-45-green-rupture.webp')}
.credit-group{align-self:start}.credit-group h3{margin:0 0 18px;padding:0 0 12px;border-bottom:1px solid #b9181d;color:#eee9df;font:500 clamp(24px,2.4vw,38px)/1 Arial,Helvetica,sans-serif;letter-spacing:-.03em}.credit-group:first-child,.credit-group-cast{grid-column:1/-1}.credit-group:first-child dl,.credit-group-cast dl{display:grid;grid-template-columns:1fr 1fr;gap:0 clamp(40px,8vw,130px)}
.site-panel:before{opacity:.07}.panel-close{position:sticky;right:auto;top:calc(3vh + 20px);margin:calc(3vh + 20px) clamp(20px,3vw,48px) -27px auto}
.finale.phase-question~.mast,.finale.phase-montage~.mast,.finale.phase-rewind~.mast,.finale.phase-hub~.mast,.finale.phase-question~.hud,.finale.phase-montage~.hud,.finale.phase-rewind~.hud,.finale.phase-hub~.hud{opacity:0}
.eye-bridge{z-index:16;display:block;opacity:0;pointer-events:none;will-change:opacity}
.hud{position:absolute;z-index:30;left:3vw;right:3vw;display:grid;align-items:center;font:700 9px/1 'Courier New',monospace;letter-spacing:.22em;text-shadow:0 2px 10px #000}
.title-arrival{position:absolute;z-index:12;inset:0;transform-origin:50% 50%;will-change:opacity,transform,filter;pointer-events:none}
.title{position:absolute;left:50%;top:50%;width:min(67vw,1040px);transform:translate(-50%,-50%);will-change:opacity,transform}
.title img{display:block;width:100%;height:auto}.title-red{position:absolute;inset:0;transform:translate(10px,7px);filter:drop-shadow(0 18px 30px #000)}.title-face{position:relative;filter:drop-shadow(0 18px 30px #000)}
.prologue{position:absolute;z-index:41;inset:0;overflow:hidden;background:#000;pointer-events:none;will-change:opacity,visibility}.prologue:before{content:"";position:absolute;z-index:20;inset:-8%;opacity:0;background:linear-gradient(90deg,transparent 0 9%,#b5161c82 9.15% 9.45%,transparent 9.7% 57%,#eee8dd5c 57.15% 57.35%,transparent 57.6% 83%,#7910158c 83.2% 83.55%,transparent 83.8%);mix-blend-mode:screen;will-change:opacity,transform,clip-path}
.camera-loader{position:absolute;z-index:5;inset:0;display:grid;place-items:center;background:#000;overflow:hidden}.camera-object{position:relative;width:min(58vw,890px);filter:drop-shadow(0 32px 85px #000)}.camera-object>img{display:block;width:100%;height:auto}.lens-loader{position:absolute;left:50%;top:38.5%;width:11.2%;aspect-ratio:1;transform:translate(-50%,-50%);display:grid;place-items:center;border-radius:50%;background:#0303039c;box-shadow:inset 0 0 18px #000,0 0 22px #bd171b29}.lens-loader:before,.lens-loader:after,.lens-loader i{content:"";position:absolute;border-radius:50%}.lens-loader:before{inset:8%;background:conic-gradient(from 0deg,#cf1b20 0 12deg,transparent 12deg 34deg,#e6e0d3 34deg 40deg,transparent 40deg 76deg,#9e1117 76deg 92deg,transparent 92deg 145deg,#e6e0d3 145deg 150deg,transparent 150deg 228deg,#c2171d 228deg 243deg,transparent 243deg 310deg,#ddd6ca 310deg 316deg,transparent 316deg);-webkit-mask:radial-gradient(circle,transparent 57%,#000 59%);mask:radial-gradient(circle,transparent 57%,#000 59%);animation:lensSpin .84s steps(12,end) infinite}.lens-loader:after{inset:30%;border:1px solid #eee9df36;box-shadow:0 0 12px #d21b2066}.lens-loader i{inset:44%;background:#bd171b;box-shadow:0 0 9px #d51a21}.lens-loader span{position:relative;z-index:2;color:#eee9df;font:700 clamp(5px,.52vw,8px)/1 'Courier New',monospace;letter-spacing:.08em;text-shadow:0 1px 4px #000}
.webcam-intro,.nowhere-intro,.face-run,.face-shot,.face-shot img{position:absolute;inset:0;width:100%;height:100%}
.webcam-intro{overflow:hidden;background:#000}.webcam-intro-film,.nowhere-intro{display:block;width:100%;height:100%;object-fit:cover}
.webcam-intro-film{filter:contrast(1.08) saturate(.88) brightness(.82);transform:scale(1.015)}
.webcam-intro:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 52%,transparent 22%,#0002 58%,#000c 115%);pointer-events:none}
.lens-acquire{position:absolute;z-index:3;left:50%;top:55.2%;width:clamp(58px,6vw,96px);aspect-ratio:1;transform:translate(-50%,-50%);border:1px solid #eee9df8c;border-radius:50%;box-shadow:0 0 0 5px #0007,0 0 30px #d01d2233;color:#eee9df}
.lens-acquire i,.lens-acquire span{position:absolute;inset:11%;border:1px solid #e9e3d764;border-radius:50%}.lens-acquire span{inset:41%;background:#c1171c;box-shadow:0 0 13px #d0181fc7;border:0}
.lens-acquire:before,.lens-acquire:after{content:"";position:absolute;background:#eee9dfb8}.lens-acquire:before{left:50%;top:-8px;width:1px;height:calc(100% + 16px)}.lens-acquire:after{left:-8px;top:50%;width:calc(100% + 16px);height:1px}
.lens-acquire b{position:absolute;left:50%;top:calc(100% + 15px);transform:translateX(-50%);font:700 7px/1 'Courier New',monospace;letter-spacing:.24em;white-space:nowrap}
.nowhere-intro{opacity:0;filter:contrast(1.12) saturate(.78) brightness(.92);transform:scale(1.04)}
.face-run{opacity:0;background:#000;overflow:hidden}.face-shot{margin:0;opacity:0;overflow:hidden;background:#000;will-change:opacity,filter,transform}.face-shot img{display:block;max-width:none;max-height:none;object-fit:fill;filter:contrast(1.2) saturate(.8) brightness(.88);will-change:transform}
.title-arrival{opacity:0;transform:scale(.94);filter:blur(7px)}
.entry-options{position:absolute;z-index:31;left:50%;bottom:8vh;display:flex;align-items:center;gap:clamp(24px,4vw,70px);transform:translate(-50%,18px);opacity:0;pointer-events:none;transition:opacity .7s ease,transform .9s cubic-bezier(.2,.8,.2,1)}
.entry-options button{appearance:none;position:relative;display:flex;align-items:center;gap:13px;padding:12px 0;border:0;border-bottom:1px solid #fff5;background:transparent;color:#eee9df;cursor:pointer;font:700 8px/1 'Courier New',monospace;letter-spacing:.22em;white-space:nowrap;transition:border-color .25s,color .25s}
.entry-options button:before{content:"";position:absolute;left:0;right:100%;bottom:-1px;height:1px;background:#d31a20;transition:right .35s cubic-bezier(.2,.8,.2,1)}.entry-options button:hover:before,.entry-options button:focus-visible:before{right:0}.entry-options button:hover,.entry-options button:focus-visible{color:#fff;border-color:#fff2;outline:0}.entry-options b{color:#ef332d;font-size:13px}
.stage:not(.opening-complete) .hud{opacity:0}
.stage.opening-live .camera-loader{animation:cameraPrelude 4.08s steps(1,end) both}.stage.opening-live .camera-object{animation:cameraWake 4.08s linear both}
.stage.opening-live .nowhere-intro{animation:nowhereStrike 1.05s 3.88s cubic-bezier(.18,.7,.2,1) both}
.stage.opening-live .webcam-intro{animation:webcamExit .48s 4.88s linear both}.stage.opening-live .webcam-intro-film{animation:webcamBreathe .60s 4.76s ease-out both}
.stage.opening-live .face-run{animation:faceRunWindow 1.38s 5.27s linear both}.stage.opening-live .face-shot{animation:faceCut .17s calc(var(--delay) + 3.72s) cubic-bezier(.2,.8,.2,1) both}
.stage.opening-live .prologue{animation:prologueOut 7.18s linear both}.stage.opening-live .prologue:before{animation:signalSplice 7.18s steps(1,end) both}.stage.opening-live .title-arrival{animation:titleSettle .72s 6.52s cubic-bezier(.16,.82,.2,1) both}.stage.opening-live .opening-plate{animation:plateSettle .82s 6.44s cubic-bezier(.16,.82,.2,1) both}
.stage.opening-complete .entry-options{opacity:1;transform:translate(-50%,0);pointer-events:auto}.stage.opening-complete .hud{transition:opacity .65s ease;opacity:1}
@keyframes webcamExit{0%,84%{opacity:1}93%,100%{opacity:0}}
@keyframes lensSpin{to{transform:rotate(360deg)}}
@keyframes cameraPrelude{0%,96%{opacity:1;visibility:visible}97%,100%{opacity:0;visibility:hidden}}
@keyframes cameraWake{0%{opacity:0;filter:brightness(.35)}10%,100%{opacity:1;filter:brightness(.94)}}
@keyframes webcamBreathe{0%{transform:scale(1.015);filter:contrast(1.08) saturate(.88) brightness(.72)}100%{transform:scale(1.055);filter:contrast(1.16) saturate(.82) brightness(.96)}}
@keyframes lensLock{0%{opacity:0;transform:translate(-50%,-50%) scale(1.42) rotate(-18deg)}18%{opacity:1}76%{transform:translate(-50%,-50%) scale(.94) rotate(0)}100%{opacity:0;transform:translate(-50%,-50%) scale(.86)}}
@keyframes nowhereStrike{0%{opacity:0;transform:scale(1);filter:brightness(1.8) contrast(1.45) saturate(.32)}5%,91%{opacity:1;filter:brightness(.96) contrast(1.15) saturate(.78)}100%{opacity:0;transform:scale(1.055);filter:brightness(.48) contrast(1.42) saturate(.62)}}
@keyframes faceRunWindow{0%,100%{opacity:0}3%,94%{opacity:1}}
@keyframes faceCut{0%{opacity:0;transform:scale(1.08);filter:brightness(1.5) contrast(1.6)}13%,70%{opacity:1;transform:scale(1);filter:brightness(1) contrast(1.1)}100%{opacity:0;transform:scale(.985);filter:brightness(.42) contrast(1.4)}}
@keyframes prologueOut{0%,91.5%{opacity:1;visibility:visible}98%{opacity:0;visibility:visible}100%{opacity:0;visibility:hidden}}
@keyframes signalSplice{0%,53.5%,55%,67.4%,69%,72.8%,74.4%,100%{opacity:0;transform:translate3d(0,0,0);clip-path:inset(0)}53.9%{opacity:.42;transform:translate3d(-2.7%,0,0);clip-path:inset(34% 0 41% 0)}54.35%{opacity:.17;transform:translate3d(1.5%,0,0);clip-path:inset(8% 0 72% 0)}67.85%{opacity:.3;transform:translate3d(2%,0,0);clip-path:inset(58% 0 18% 0)}68.4%{opacity:.12;transform:translate3d(-1%,0,0);clip-path:inset(18% 0 63% 0)}73.2%{opacity:.32;transform:translate3d(-1.5%,0,0);clip-path:inset(42% 0 35% 0)}73.7%{opacity:.1;transform:translate3d(.8%,0,0);clip-path:inset(12% 0 76% 0)}}
@keyframes titleSettle{0%{opacity:0;transform:scale(.82);filter:blur(13px) brightness(1.8)}62%{opacity:1;transform:scale(1.018);filter:blur(0) brightness(1.04)}100%{opacity:1;transform:scale(1);filter:none}}
@keyframes plateSettle{0%{transform:scale(1.13);filter:brightness(.48) contrast(1.3)}100%{transform:scale(1);filter:none}}
.queen-copy{position:absolute;z-index:15;left:4vw;top:13vh;width:min(48vw,700px);text-shadow:0 5px 36px #000;pointer-events:none}.queen-copy>span{font:700 9px/1 'Courier New',monospace;letter-spacing:.28em;color:#ff7766}.queen-copy strong{display:block;margin:22px 0 15px;font:500 clamp(50px,7.2vw,124px)/.86 Arial,Helvetica,sans-serif;letter-spacing:-.035em}.queen-copy strong span{display:block}.queen-copy em{display:block;color:#ff7567;font:600 clamp(13px,1.25vw,20px)/1.1 Arial,Helvetica,sans-serif;letter-spacing:.11em;font-style:normal}.queen-copy p{max-width:540px;margin:30px 0 0;color:#e7e1d8;font:400 clamp(15px,1.25vw,19px)/1.5 Arial,Helvetica,sans-serif;text-wrap:balance}.queen-copy [data-reveal],.sacrifice-copy [data-reveal]{opacity:0;will-change:opacity,transform}
.reticle{position:fixed;z-index:40;left:0;top:0;width:38px;height:38px;opacity:0;transform:translate(-50%,-50%);pointer-events:none;will-change:transform,opacity}.reticle i{position:absolute;inset:0;border:1px solid #fff7;border-radius:50%}.reticle:before,.reticle:after{content:"";position:absolute;background:#fff8}.reticle:before{left:50%;top:-5px;width:1px;height:48px}.reticle:after{left:-5px;top:50%;width:48px;height:1px}.reticle span{position:absolute;left:51px;top:15px;font:700 7px/1 'Courier New',monospace;letter-spacing:.22em;color:#fff9}
.velocity{z-index:17;pointer-events:none;mix-blend-mode:screen}
.grain,.vignette{z-index:24;pointer-events:none}.grain{opacity:.07;mix-blend-mode:soft-light;background:repeating-linear-gradient(0deg,transparent 0 3px,#fff 4px,transparent 5px)}.vignette{background:radial-gradient(ellipse at center,transparent 35%,#0001 58%,#000d 125%)}
.hud{bottom:25px;grid-template-columns:1fr auto;gap:22px;align-items:end}.progress{height:11px;border-bottom:1px solid #fff4}.progress i{display:block;width:0;height:1px;margin-top:10px;background:#ff3d28;box-shadow:0 0 14px #ff3d28}.scroll span{display:inline-block;margin-left:9px;color:#ff3d28;animation:drop 1.2s ease-in-out infinite}
@keyframes drop{50%{transform:translateY(7px);opacity:.25}}
@media(max-width:800px){body{cursor:auto}.stage{min-height:560px}.title{width:90vw}.entry-options{bottom:8.5vh;gap:21px}.entry-options button{font-size:7px;letter-spacing:.14em}.lens-acquire{top:54%;width:64px}.film-frame{width:76vw;margin-left:-38vw;margin-top:-21.4vw}.film-frame.quote{width:82vw}.queen{background-position:62% center}.queen-film{object-position:62% center}.sacrifice{background-position:55% center}.queen-copy{left:22px;right:22px;top:13vh;width:auto}.queen-copy strong{font-size:clamp(48px,14vw,88px)}.queen-copy p{max-width:88%;margin:20px 0}.queen-copy nav{display:grid;gap:16px}.queen-copy a{min-width:0;width:min(100%,330px)}.queen-copy small{max-width:300px;line-height:1.45}.reticle{display:none}.hud{left:20px;right:20px}.scroll{font-size:0}.scroll span{font-size:12px}.reckoning{padding:18px}.reckoning p{width:94vw}.reckoning span{margin-left:4%;font-size:7.5vw}.reckoning strong{font-size:12vw;letter-spacing:-.09em}.reckoning em{margin-left:8%;font-size:17.5vw}.reckoning>i{right:-12vw;bottom:23vh;width:65vw}.hub-title{top:19%;width:86vw}.hub-kicker{top:5.5vh;font-size:7px}.hub-nav{left:22px;right:22px;top:auto;bottom:12vh;width:auto;transform:none;grid-template-columns:1.25fr .75fr;gap:18px 28px}.hub-nav a,.hub-nav button{padding:0 0 8px}.hub-nav strong{font-size:clamp(15px,4.8vw,20px)}.hub-nav button:first-child{grid-column:1/-1}.hub-nav a:hover,.hub-nav button:hover,.hub-nav a:focus-visible,.hub-nav button:focus-visible{transform:none}.hub-foot{left:20px;right:20px;bottom:22px}.hub-foot>span{display:none}.panel-close{right:20px;top:20px}.panel-shell,.panel-shell-wide,.panel-shell-cinema,.panel-story{width:auto;margin:0;padding:82px 20px 60px}.panel-heading,.panel-shell-cinema .panel-heading{display:block;margin-bottom:38px}.panel-heading>span{display:block;margin-bottom:25px}.panel-heading h2,.panel-shell-cinema .panel-heading h2{text-align:left;font-size:clamp(49px,16vw,72px);line-height:.82}.trailer-player{width:calc(100% + 40px);margin-left:-20px}.panel-external{margin-top:22px}.story-copy{grid-template-columns:1fr;gap:24px}.film-facts{grid-template-columns:1fr 1fr;margin-top:48px}.watch-grid{grid-template-columns:1fr}.watch-grid article{min-height:0;padding:25px 22px}.watch-grid h3{margin:22px 0 9px}.press-grid{grid-template-columns:1fr;gap:30px}.press-grid a{min-height:0}.credits-grid{grid-template-columns:1fr;gap:0}.credits-grid div{grid-template-columns:125px 1fr;gap:20px}.selected-cast{margin-top:42px}}
@media(max-width:800px){.sacrifice-copy{left:22px;right:22px;bottom:12vh;width:auto}.sacrifice-copy p{max-width:88vw;font-size:clamp(25px,8.2vw,48px)}.sacrifice-copy:before{height:3px;margin-bottom:14px}.queen-copy strong{font-size:12vw;line-height:.9}.reckoning span{margin:0 0 .18em;font-size:7vw}.reckoning strong{font-size:11.6vw}.reckoning em{margin:.16em 0 0;font-size:11.6vw}}
@media(max-width:800px){.panel-close{right:auto;margin-right:20px}.credit-group:first-child,.credit-group-cast{grid-column:auto}.credit-group:first-child dl,.credit-group-cast dl{grid-template-columns:1fr}.credit-group h3{margin-top:25px}}
@media(max-width:800px){.hub-foot{grid-template-columns:1fr auto}.site-credit{justify-self:start;max-width:190px;text-align:left;white-space:normal;font-size:6px;line-height:1.5}}
@media(prefers-reduced-motion:reduce){.scroll span,.webcam-readout i{animation:none}.grain,.velocity{display:none}.prologue{display:none}.stage.opening-live .title-arrival,.stage.opening-live .opening-plate,.montage video.is-on,.rewind-stack img,.rewind-velocity,.rewind-flare,.finale.phase-hub .final-hub{animation-duration:.01ms}}
