:root{--red:#ff372d;--white:#eae7df;--muted:#9c9a95;--line:rgba(255,255,255,.17);--mx:0px;--my:0px;color-scheme:dark}*{box-sizing:border-box}body{margin:0;background:#070707;color:var(--white);font-family:Arial,Helvetica,sans-serif;min-height:100svh;height:100svh;overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid var(--red);outline-offset:6px}button{border:0;background:none}button:disabled{cursor:default}a{color:inherit;text-decoration:none}.world,.vignette,.scene,.scanlines,.grit,.beam,#dust{position:absolute;inset:0;pointer-events:none}.world{position:fixed;overflow:hidden}.scene{inset:-3%;background:#0c0808 url('/entity.webp') center/cover no-repeat;transform:translate(var(--mx),var(--my)) scale(1.045);transition:transform .35s ease-out;will-change:transform}.vignette{background:linear-gradient(90deg,rgba(5,5,5,.75),rgba(5,5,5,.12) 43%,transparent 66%),linear-gradient(0deg,#080808 0%,transparent 24%,transparent 77%,rgba(0,0,0,.65));box-shadow:inset 0 0 150px 25px #0008}.scanlines{background:repeating-linear-gradient(0deg,transparent 0px,transparent 3px,#0002 4px);opacity:.35}.grit{opacity:.08;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' opacity='.8' filter='url(%23n)'/%3E%3C/svg%3E")}.beam{background:radial-gradient(circle 220px at var(--bx,70%) var(--by,45%),rgba(255,59,42,.08),transparent);mix-blend-mode:screen}.frame{position:fixed;inset:16px;pointer-events:none;z-index:10}.frame i{position:absolute;width:15px;height:15px;border-color:#8b8b8555;border-style:solid}.frame i:nth-child(1){left:0;top:0;border-width:1px 0 0 1px}.frame i:nth-child(2){right:0;top:0;border-width:1px 1px 0 0}.frame i:nth-child(3){left:0;bottom:0;border-width:0 0 1px 1px}.frame i:nth-child(4){right:0;bottom:0;border-width:0 1px 1px 0}header{position:relative;z-index:3;display:flex;justify-content:space-between;align-items:center;height:100px;padding:25px 4.5vw}.wordmark{display:flex;gap:20px;align-items:center}.mark{font-family:Impact,'Arial Black',sans-serif;font-size:39px;letter-spacing:-3px}.mark>span{color:var(--red)}.wordmark-meta{font:9px/1.7 'Courier New',monospace;letter-spacing:1.2px;padding-left:20px;border-left:1px solid var(--line)}.top-right{display:flex;align-items:center;gap:35px}.live{font:9px 'Courier New',monospace;letter-spacing:1.5px;color:#b6b6ad}.live i{display:inline-block;width:5px;height:5px;background:var(--red);margin-right:7px;border-radius:100%;box-shadow:0 0 9px var(--red)}.text-btn{font:10px 'Courier New',monospace;letter-spacing:1px;padding:12px 0}.text-btn span{padding-left:14px;color:var(--red)}main{position:relative;z-index:2;height:calc(100svh - 246px);display:flex;align-items:center;padding:0 4.5vw}.hero{width:55%;max-width:800px}.eyebrow{font:10px 'Courier New',monospace;letter-spacing:2px;color:#bcb8b1;display:flex;align-items:center;gap:12px;margin-bottom:18px}.red-cross{color:var(--red);font-size:20px}h1{font-family:Impact,Haettenschweiler,'Arial Narrow Bold','Arial Black',sans-serif;font-weight:900;font-size:clamp(82px,10.8vw,180px);line-height:.8;letter-spacing:-.025em;margin:0 0 26px;text-transform:uppercase;width:max-content;filter:drop-shadow(0 3px 12px #0005)}h1>span{display:block}h1>span:nth-child(2){margin-top:5px}.year{color:var(--red);margin-left:1px;-webkit-text-stroke:1px var(--red)}.registered{font:13px 'Courier New',monospace;display:inline-block;vertical-align:top;margin:10px 0 0 9px}.tagline{font-size:clamp(19px,2.35vw,36px);line-height:1.03;letter-spacing:-.7px;font-weight:800;margin:0 0 23px}.tagline em{font-style:normal;color:#9d9992}.hero-bottom{display:flex;gap:22px;align-items:center}.enter{display:flex;justify-content:space-between;align-items:center;background:var(--red);color:#090909;min-height:54px;padding:18px 22px;font-size:11px;letter-spacing:1.3px;font-weight:800;transition:background .2s,box-shadow .2s;min-width:205px}.enter:hover{background:#ff5c4f;box-shadow:0 0 32px #ff30233b}.enter span{font-size:24px;line-height:.5;margin-left:28px}.micro{font:8px/1.9 'Courier New',monospace;letter-spacing:.65px;color:#a29d96;margin:0}.micro span{color:#767570}.entity-label{position:absolute;left:74%;bottom:17%;display:flex;gap:12px;align-items:center;font:8px/1.8 'Courier New',monospace;letter-spacing:1px;color:#d5ccc2}.entity-label b{font-weight:400;color:var(--red)}.label-line{width:34px;height:1px;background:var(--red);position:relative}.label-line:before{content:'';width:4px;height:4px;border:1px solid var(--red);position:absolute;left:0;top:-2px}.coordinates{position:absolute;right:24px;top:38%;writing-mode:vertical-rl;font:8px 'Courier New',monospace;letter-spacing:1.6px;color:#92918b}.coordinates span{color:var(--red);margin:15px 0}footer{height:146px;position:relative;z-index:3;padding:0 4.5vw}.presenters{display:flex;align-items:center;gap:32px;padding:24px 0 25px;border-top:1px solid var(--line)}.present-label{font:8px 'Courier New',monospace;letter-spacing:1.8px;color:#7a7873}.brands{display:flex;gap:48px;align-items:center}.brand{font-size:13px;line-height:1;font-weight:900;letter-spacing:-.2px}.ubc{font-size:19px}.ubc>span{font-size:7px;display:block;letter-spacing:4px;margin-top:4px}.droktr{font-size:25px;font-style:italic;letter-spacing:-2px}.droktr>span{font-style:normal;font-size:7px;vertical-align:top;letter-spacing:0;margin-left:3px}.gbp{font-size:12px;line-height:1.05}.crawl{font-size:10px;letter-spacing:1px;line-height:1.3}.bottom-line{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:15px;align-items:center}.domain{font:8px 'Courier New',monospace;letter-spacing:1px;color:#8a8780}.domain>span{color:var(--red);margin:0 10px}.controls{display:flex;gap:20px}.controls button{font:8px 'Courier New',monospace;color:#aaa69d;letter-spacing:1px;padding:6px 0}.controls button:hover{color:var(--red)}dialog{width:min(480px,calc(100% - 36px));max-height:90svh;background:#0f0e0e;color:var(--white);border:1px solid #555048;padding:40px;box-shadow:0 0 100px #000a}dialog::backdrop{background:#020202b8;backdrop-filter:blur(9px)}.close{position:absolute;right:14px;top:12px;font-size:25px;color:#a6a096;padding:4px 10px}.dialog-kicker{font:9px 'Courier New',monospace;letter-spacing:2px;color:var(--red)}dialog h2{font-family:Impact,'Arial Black',sans-serif;font-size:66px;line-height:.95;letter-spacing:-2px;margin:25px 0 20px}dialog p{font-size:13px;line-height:1.7;color:#a9a39a}.intel-grid{display:grid;gap:18px;padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:25px}.intel-grid span,.intel-grid strong{display:block;font:9px 'Courier New',monospace;letter-spacing:1px}.intel-grid span{color:#817a73;margin-bottom:7px}.intel-grid strong{color:#eae3db}.partners-copy{margin:20px 0}.partners-copy b{color:#d8d0c6;font-weight:400}dialog .enter{width:100%}.dialog-foot{display:block;font:8px 'Courier New',monospace;color:#8a8178;margin-top:20px;letter-spacing:1px}.secondary{width:100%;font:10px 'Courier New',monospace;padding:20px 0 0;letter-spacing:1px}.result-stat{border-block:1px solid var(--line);margin:22px 0;padding:20px 0;display:flex;justify-content:space-between;gap:10px;font:9px 'Courier New',monospace;letter-spacing:1px}.result-stat strong{color:var(--red)}.toast{position:fixed;z-index:50;left:50%;bottom:40px;transform:translate(-50%,20px);background:#eae7df;color:#111;padding:14px 20px;font:11px 'Courier New',monospace;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;max-width:90vw}.toast.on{opacity:1;transform:translate(-50%,0)}[hidden]{display:none!important}.motion-off *{animation:none!important;transition:none!important}.motion-off #dust{display:none}
@media(min-width:1700px){.hero{width:50%}h1{font-size:180px}.scene{background-position:center 47%}}
@media(max-height:760px) and (min-width:701px){header{height:82px;padding-top:20px;padding-bottom:20px}main{height:calc(100svh - 208px)}footer{height:126px}.presenters{padding:18px 0}.eyebrow{margin-bottom:10px}h1{font-size:min(10vw,145px);margin-bottom:18px}.tagline{font-size:25px;margin-bottom:18px}.hero-bottom{gap:14px}.game{inset:82px 4.5vw 127px}}
@media(max-width:1050px){.brands{gap:30px}.hero-bottom{display:block}.micro{margin-top:12px}.hero{width:60%}h1{font-size:11.8vw}.scene{background-position:58% center}.entity-label{left:76%;font-size:7px}.live{display:none}}
@media(max-width:700px){.frame{inset:10px}header{height:78px;padding:20px 24px}.mark{font-size:30px}.wordmark{gap:10px}.wordmark-meta{font-size:7px;letter-spacing:.6px;padding-left:10px}.top-right{gap:0}.text-btn{font-size:8px}main{height:calc(100svh - 218px);padding:0 24px;align-items:flex-end;padding-bottom:25px}.hero{width:100%}.scene{background-size:auto 104%;background-position:64% 40%;inset:-3%;opacity:.82}.vignette{background:linear-gradient(0deg,#070707 1%,#07070777 22%,#0707070a 63%,#07070799),linear-gradient(90deg,#05050577,transparent)}.eyebrow{font-size:7px;letter-spacing:1px;margin-bottom:10px;gap:8px}.red-cross{font-size:16px}h1{font-size:clamp(66px,19.7vw,130px);margin:0 0 17px;line-height:.8}.registered{font-size:8px;margin:5px 0 0 5px}.tagline{font-size:22px;margin-bottom:17px}.tagline br{display:none}.tagline em{margin-left:4px;color:#cbc6bf}.hero-bottom{display:flex;gap:10px}.enter{min-height:46px;padding:15px 16px;min-width:180px;font-size:9px;letter-spacing:.8px}.enter span{font-size:20px;margin-left:15px}.micro{font-size:6px;margin:0;letter-spacing:.1px;line-height:1.7;max-width:140px}.micro span{color:#aaa39a}.entity-label{top:9%;bottom:auto;left:auto;right:28px;font-size:6px;letter-spacing:.5px}.label-line{width:20px}.coordinates{display:none}footer{height:140px;padding:0 24px}.presenters{padding:16px 0;gap:0;display:block}.present-label{font-size:6px;display:block;margin-bottom:10px;letter-spacing:1px}.brands{justify-content:space-between;gap:8px}.ubc{font-size:15px}.ubc>span{font-size:6px;letter-spacing:2.5px}.droktr{font-size:23px}.gbp{font-size:9px}.crawl{font-size:7px;letter-spacing:.7px}.bottom-line{padding-top:10px;display:block}.domain{font-size:6px;letter-spacing:.7px}.controls{margin-top:6px;gap:22px}.controls button{font-size:7px;padding:5px 0}.game{inset:90px 24px 145px}.game h2{font-size:29px}.game p{font-size:9px;max-width:240px;line-height:1.4}.game-top>.text-btn{font-size:7px;padding-top:0}.game-stats{top:92px;left:0;right:auto;gap:40px}.game-stats b{font-size:20px}#target-zone{inset:160px 5% 40px}.sigil{width:76px;height:76px}.game-bottom{font-size:7px;gap:15px}.game-bottom span{max-width:110px}dialog{padding:32px 26px}dialog h2{font-size:60px}}
@media(max-height:670px) and (max-width:700px){main{padding-bottom:16px}.tagline{display:none}.eyebrow{margin-bottom:6px}h1{font-size:17.5vw;margin-bottom:14px}.micro{display:none}footer{height:132px}main{height:calc(100svh - 210px)}.game{inset:78px 24px 135px}.game-top p{display:none}.game-stats{top:65px}#target-zone{inset:115px 5% 40px}.sigil{width:65px;height:65px}}
@media(max-height:480px){body{height:auto;min-height:600px;overflow-y:auto}main{height:360px}footer{height:146px}.game{position:absolute;inset:85px 5% auto;height:350px}}

/* A haunted screen to fiddle with. */
.scene{transform:translate(var(--mx),var(--my)) scale(calc(1.045 + var(--warp, .026))) rotate(var(--twist,0deg));filter:contrast(calc(1 + var(--warp,.026)*.5)) saturate(calc(1 + var(--warp,.026)*3));transition:transform .3s ease-out,filter .3s ease-out}
.grit{opacity:calc(.045 + var(--warp,.026)*.4)}
.hero{position:relative;z-index:2}.hero-bottom{align-items:center}.touch-hint{font:8px/1.7 'Courier New',monospace;letter-spacing:.8px;color:#aaa49a;margin:15px 0 0}.skull-touch{position:absolute;z-index:1;right:3%;top:3%;width:40%;height:83%;touch-action:none;cursor:grab;border-radius:45%;border:1px solid transparent}.skull-touch:active{cursor:grabbing}.skull-touch span{position:absolute;left:50%;bottom:3%;transform:translateX(-50%);font:8px 'Courier New',monospace;letter-spacing:1px;color:#8d8179;white-space:nowrap}.skull-touch:hover span,.skull-touch:focus-visible span{color:var(--red)}
.presenters{gap:30px}.brands{flex:1;display:flex;justify-content:space-between;align-items:center;gap:20px}.brands .brand{font:700 13px/1.3 Arial,Helvetica,sans-serif;letter-spacing:.1px;white-space:nowrap;color:#d5d0c8}.present-label{white-space:nowrap}
#ripples{position:fixed;inset:0;z-index:4;pointer-events:none;overflow:hidden}.echo-ring{position:absolute;width:20px;height:20px;margin:-10px;border:1px solid #ff3c2aaa;border-radius:50%;box-shadow:0 0 22px #ff302233;animation:echo 1.8s ease-out forwards}.echo-ring:after{content:'';position:absolute;inset:-8px;border:1px solid #ff3b2933;border-radius:50%}.whisper{position:absolute;font:9px 'Courier New',monospace;letter-spacing:2px;color:#edb7a4;text-shadow:0 0 10px #d9301c;animation:whisper 2.5s ease-out forwards;transform:translate(-50%,-50%);white-space:nowrap}.motion-off .echo-ring,.motion-off .whisper{display:none}
@keyframes echo{from{transform:scale(1);opacity:.8}to{transform:scale(15);opacity:0}}@keyframes whisper{0%{opacity:0}20%{opacity:.75}100%{opacity:0;transform:translate(-50%,-65px)}}
@media(max-width:1050px){.brands .brand{font-size:11px}.brands{gap:14px}.hero-bottom{display:flex}.skull-touch{right:0;width:39%}}
@media(max-width:700px){main{height:calc(100svh - 240px)}footer{height:162px}.presenters{padding:14px 0}.brands{display:grid;grid-template-columns:1fr 1fr;gap:9px 12px}.brands .brand{font-size:11px;line-height:1.4;letter-spacing:0}.hero-bottom{gap:16px}.touch-hint{font-size:6px;margin-top:10px;letter-spacing:.25px}.skull-touch{top:0;right:3%;width:63%;height:33%}.skull-touch span{font-size:6px;bottom:0}.entity-label{display:none}}
@media(max-height:670px) and (max-width:700px){main{height:calc(100svh - 240px)}footer{height:162px}h1{font-size:16.5vw}.skull-touch{height:28%}.skull-touch span{display:none}.touch-hint{margin-top:8px}}
@media(max-height:480px){main{height:360px}footer{height:162px}}
/* One-way detonation: the city is all that remains. */
.aftermath{position:fixed;inset:0;z-index:20;opacity:0;visibility:hidden;background:#100807;overflow:hidden;pointer-events:none}.aftermath>img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;filter:brightness(.85) contrast(1.08)}#ash{position:absolute;inset:0;pointer-events:none}.ruin-haze{position:absolute;inset:-15%;background:radial-gradient(ellipse at 20% 55%,#9c3e1418,transparent 50%),radial-gradient(ellipse at 80% 45%,#14121060,transparent 50%);animation:smolder 18s ease-in-out infinite alternate}.detonation{position:fixed;inset:0;z-index:40;pointer-events:none;visibility:hidden;overflow:hidden}#blast-canvas,#shards{position:absolute;inset:0;width:100%;height:100%}.blast-charge{position:absolute;left:var(--blast-x,70%);top:var(--blast-y,40%);width:5px;height:5px;border-radius:50%;transform:translate(-50%,-50%);background:#ffe4b3;box-shadow:0 0 0 1px #ff632f,0 0 40px 15px #ff382433;opacity:0}.shock-front{position:absolute;left:var(--blast-x,70%);top:var(--blast-y,40%);width:8px;height:8px;border:2px solid #ffdfa0;border-radius:50%;transform:translate(-50%,-50%);opacity:0}.shard{position:fixed;top:var(--piece-y);left:var(--piece-x);width:var(--piece-w);height:var(--piece-h);overflow:hidden;will-change:transform,opacity;animation:fracture 1.9s cubic-bezier(.12,.65,.4,1) forwards;animation-delay:var(--piece-delay)}.shard>div{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden}.shard-copy{position:absolute;margin:0!important;white-space:nowrap}.detonating .detonation{visibility:visible}.detonating .blast-charge{animation:charge .8s ease-in forwards}.detonating .scene{animation:entity-collapse 1.6s ease-in forwards!important}.detonating .world{animation:camera-hit 1.8s ease-in-out .7s both}.detonating header,.detonating main,.detonating footer,.detonating .frame{animation:ui-erasure .5s ease-in .8s forwards}.detonating .aftermath{visibility:visible;animation:ruins-reveal 5s ease-out 1.3s forwards}.erupting .shock-front{animation:shockwave 1.4s ease-out forwards}.ruined .aftermath{opacity:1;visibility:visible;pointer-events:auto}.ruined header,.ruined main,.ruined footer,.ruined .world,.ruined .frame,.ruined #ripples,.ruined .toast,.ruined dialog,.ruined .detonation{display:none!important}.ruined{height:100svh;min-height:100svh;overflow:hidden;cursor:default}.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}
@keyframes charge{0%{opacity:0;transform:translate(-50%,-50%) scale(1)}65%{opacity:1;transform:translate(-50%,-50%) scale(16);box-shadow:0 0 40px 25px #ff381fcc}100%{opacity:0;transform:translate(-50%,-50%) scale(100)}}
@keyframes entity-collapse{0%{filter:contrast(1.1) saturate(1.4)}40%{filter:contrast(1.6) saturate(2.2);transform:scale(1.1) rotate(-1deg)}60%{filter:brightness(1.8) saturate(2);transform:scale(1.18) rotate(2deg)}100%{filter:brightness(0);transform:scale(1.5);opacity:0}}
@keyframes camera-hit{0%{transform:translate(0)}8%{transform:translate(-14px,10px)}17%{transform:translate(11px,-8px)}28%{transform:translate(-7px,5px)}43%{transform:translate(4px,-3px)}70%,100%{transform:translate(0)}}
@keyframes shockwave{0%{opacity:1;transform:translate(-50%,-50%) scale(1)}55%{opacity:.45}100%{opacity:0;transform:translate(-50%,-50%) scale(430);border-width:.015px}}
@keyframes ui-erasure{0%{opacity:1;filter:blur(0)}100%{opacity:0;filter:blur(10px);visibility:hidden}}
@keyframes fracture{0%{opacity:1;transform:translate(0,0) rotate(0)}20%{opacity:1}100%{opacity:0;transform:translate(var(--piece-dx),var(--piece-dy)) rotate(var(--piece-rotation)) scale(.45)}}
@keyframes ruins-reveal{0%{opacity:0;filter:brightness(.2) blur(7px);transform:scale(1.1)}40%{opacity:.55}100%{opacity:1;filter:none;transform:scale(1)}}
@keyframes smolder{from{transform:translate(-2%,0)}to{transform:translate(3%,-2%)}}
@media(max-width:700px){.aftermath>img{object-position:52% center}}

.event-drop{margin:0 0 22px;max-width:440px;padding-left:15px;border-left:2px solid var(--red)}.drop-kicker{font:8px/1.3 'Courier New',monospace;letter-spacing:1.3px;color:#c3b9af;margin:0 0 8px}.drop-dates{display:flex;align-items:center;gap:10px;font:10px/1 Arial,Helvetica,sans-serif;font-weight:700;letter-spacing:1.4px;margin:0 0 7px;color:#9f948b}.drop-dates strong{font-size:30px;letter-spacing:-1px;color:var(--white)}.drop-dates i{font-size:20px;font-weight:400;font-style:normal;color:var(--red)}.drop-soon{font:7px/1.4 'Courier New',monospace;letter-spacing:1px;color:#a89d92;margin:0 0 11px}.drop-return{font:8px/1.6 'Courier New',monospace;letter-spacing:.7px;color:#b9afa3;margin:0}.drop-return time{color:var(--red);font-weight:bold;white-space:nowrap}.drop-return>span{display:block;font-weight:bold;color:var(--white);letter-spacing:1.4px}
@media(max-height:800px) and (min-width:701px){.tagline{font-size:22px;margin-bottom:16px}h1{font-size:min(9.4vw,132px);margin-bottom:18px}.event-drop{margin-bottom:16px}.drop-dates strong{font-size:26px}.drop-soon{margin-bottom:7px}.drop-kicker{margin-bottom:6px}}
@media(max-width:700px){.tagline{font-size:18px;margin-bottom:15px}.event-drop{padding-left:11px;margin-bottom:18px;max-width:340px}.drop-kicker{font-size:6px;letter-spacing:.8px;margin-bottom:7px}.drop-dates{gap:9px;font-size:8px}.drop-dates strong{font-size:27px}.drop-dates i{font-size:17px}.drop-soon{font-size:6px;letter-spacing:.6px;margin-bottom:8px}.drop-return{font-size:7px;letter-spacing:.35px}.drop-return>span{letter-spacing:1px}}
@media(max-height:670px) and (max-width:700px){.event-drop{margin-bottom:12px}.drop-kicker{margin-bottom:4px}.drop-dates strong{font-size:23px}.drop-soon{margin-bottom:5px}.touch-hint{display:none}}
.tagline{display:block}.tagline em{color:var(--red)}.aftermath:after{content:'';position:absolute;inset:30% 0 0;background:linear-gradient(transparent,#080606b8);pointer-events:none}.aftermath-message{position:absolute;z-index:3;left:20px;right:20px;bottom:10vh;text-align:center;opacity:0;pointer-events:none;text-shadow:0 4px 35px #000,0 1px 7px #000}.aftermath-message p{font:10px 'Courier New',monospace;letter-spacing:5px;margin:0 0 12px;color:#d2b6a0}.aftermath-message h2{font:900 clamp(40px,6vw,96px)/1 Impact,'Arial Black',sans-serif;letter-spacing:-1px;color:#eee2d2;margin:0 0 15px}.aftermath-message>span{font:10px 'Courier New',monospace;letter-spacing:3px;color:#d8b7a1}.ruined .aftermath-message{opacity:1;animation:message-appears 2.8s ease-out both}.detonating .blast-charge{animation:cinema-charge 1.65s ease-in forwards}.detonating .scene{animation:cinema-collapse 3.2s ease-in forwards!important}.detonating .world{animation:camera-hit 2.2s ease-in-out 1.6s both}.detonating header,.detonating main,.detonating footer,.detonating .frame{animation:ui-erasure .6s ease-in 1.65s forwards}.detonating .aftermath{animation:cinema-reveal 6.5s ease-out 4s forwards}.shard{animation-duration:3.8s;animation-timing-function:cubic-bezier(.06,.65,.35,1)}.lens-flare{position:absolute;top:var(--blast-y);left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,#ff4d1f55,#ffecd1,transparent);box-shadow:0 0 25px 8px #ff6a1b55;opacity:0}.erupting .lens-flare{animation:lens-hit 3s ease-out both}.impact-blackout{position:absolute;inset:0;background:#090606;opacity:0}.detonating .impact-blackout{animation:impact-cut .3s linear 1.42s both}.detonating:before,.detonating:after{content:'';position:fixed;left:0;right:0;height:7svh;background:#030303;z-index:45;pointer-events:none;animation:letterbox .7s ease-out both}.detonating:before{top:0;transform-origin:top}.detonating:after{bottom:0;transform-origin:bottom}
@keyframes cinema-charge{0%{opacity:0;transform:translate(-50%,-50%) scale(1)}60%{opacity:.9;transform:translate(-50%,-50%) scale(8);box-shadow:0 0 50px 15px #ff381fcc}90%{opacity:1;transform:translate(-50%,-50%) scale(4);box-shadow:0 0 70px 30px #ff381fcc}100%{opacity:0;transform:translate(-50%,-50%) scale(90)}}
@keyframes cinema-collapse{0%{filter:brightness(1);transform:scale(1.05)}40%{filter:brightness(.35) contrast(1.8) saturate(2);transform:scale(1.09)}51%{filter:brightness(.2);transform:scale(1.035)}61%{filter:brightness(1.8) saturate(2.3);transform:scale(1.18) rotate(1deg)}100%{filter:brightness(0);opacity:0;transform:scale(1.45)}}
@keyframes cinema-reveal{0%{opacity:0;filter:brightness(.12) blur(9px);transform:scale(1.18)}45%{opacity:.45;filter:brightness(.5) blur(2px)}100%{opacity:1;filter:none;transform:scale(1)}}
@keyframes letterbox{from{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes lens-hit{0%{opacity:1;transform:scaleY(1)}25%{opacity:.6;transform:scaleY(4)}100%{opacity:0;transform:scaleY(.2)}}@keyframes impact-cut{0%{opacity:0}45%{opacity:1}100%{opacity:0}}@keyframes message-appears{from{opacity:0;transform:translateY(18px);filter:blur(3px)}to{opacity:1;transform:none;filter:none}}
@media(max-width:700px){.tagline{display:block;font-size:18px;line-height:1.1}.tagline br{display:block}.tagline em{display:block;margin-left:0}.aftermath-message{bottom:12vh}.aftermath-message p{font-size:8px;letter-spacing:3px}.aftermath-message h2{font-size:clamp(34px,11vw,60px)}.aftermath-message>span{font-size:8px;letter-spacing:2px}}
/* The skull moves independently of the city. */
.scene{background-image:url('/portal.webp');transform:translate(var(--mx),var(--my)) scale(1.045);filter:contrast(1.06) saturate(1.15)}.grit{opacity:.07}main,.hero{pointer-events:none}.hero button,.hero a{pointer-events:auto}.skull-touch{position:fixed;z-index:1;left:53vw;right:auto;top:7svh;width:43vw;height:80svh;padding:0;border:0;border-radius:0;transform:translate(var(--skull-dx,0px),var(--skull-dy,0px)) rotate(var(--skull-tilt,0deg));transition:none;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;cursor:grab;will-change:transform}.skull-touch img{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none;filter:drop-shadow(0 0 18px #ff392233)}.skull-touch span{left:50%;bottom:0;font:9px 'Courier New',monospace;letter-spacing:1px;color:#ba9786;pointer-events:none;transform:translateX(-50%)}.dragging-skull .skull-touch{z-index:8;cursor:grabbing}.dragging-skull .skull-touch img{filter:drop-shadow(0 0 26px #ff392255)}.hero-bottom{display:block}.touch-hint{font-size:9px;color:#b8b0a4;letter-spacing:1px}.detonating .skull-touch{pointer-events:none;animation:skull-burn 3.1s ease-in both}.ruined .skull-touch{display:none!important}.tagline{font-size:clamp(21px,2.3vw,34px)}.enter{min-height:58px;font-size:12px}.brands .brand{font-size:14px}.controls button{min-height:35px;font-size:9px}
@keyframes skull-burn{0%{filter:brightness(1);opacity:1}48%{filter:brightness(.4) saturate(2);opacity:1}60%{filter:brightness(2.1);opacity:1}100%{filter:brightness(0) blur(14px);opacity:0}}
@media(max-width:1050px) and (min-width:701px){.brands .brand{font-size:12px}}
@media(max-width:700px){header{height:66px;padding:15px 22px}.wordmark-meta{font-size:8px;letter-spacing:.4px}.text-btn{font-size:10px;padding:12px 0}.mark{font-size:32px}.scene{background-size:auto 100%;background-position:64% center;opacity:.85}.vignette{background:linear-gradient(0deg,#050505 0%,#050505d9 35%,#05050540 60%,#05050500 80%)}.skull-touch{left:35vw;top:65px;width:69vw;height:38svh;max-height:340px}.skull-touch span{font-size:9px;bottom:1%;background:#08080866;padding:8px 10px;color:#edc8b5}.hero{width:100%}main{height:calc(100svh - 248px);padding:0 22px 18px;align-items:flex-end}.eyebrow{font-size:8px;letter-spacing:.7px;margin-bottom:12px;line-height:1.4;max-width:300px}h1{font-size:clamp(62px,18.5vw,116px);margin-bottom:17px;line-height:.8}.tagline{font-size:23px;line-height:1.03;margin-bottom:19px;letter-spacing:-.4px}.tagline em{margin-top:3px}.event-drop{margin-bottom:19px;padding-left:12px}.drop-kicker{font-size:9px;line-height:1.3;letter-spacing:.5px;margin-bottom:8px}.drop-dates{font-size:10px;gap:12px}.drop-dates strong{font-size:33px}.drop-dates i{font-size:23px}.drop-soon{font-size:8px;letter-spacing:.5px;margin:8px 0 0}.drop-return{display:none}.hero-bottom{display:block}.enter{width:100%;max-width:370px;min-height:56px;padding:17px 20px;font-size:12px;letter-spacing:1.2px}.enter span{font-size:26px}.touch-hint{display:block;font-size:8px;margin-top:12px;letter-spacing:.6px}.entity-label{display:none}footer{height:182px;padding:0 22px}.presenters{padding:15px 0 14px}.present-label{font-size:8px;margin-bottom:10px}.brands{gap:9px 12px}.brands .brand{font-size:12px;line-height:1.4}.bottom-line{padding-top:10px}.domain{font-size:7px;letter-spacing:.3px}.domain>span{margin:0 5px}.controls{margin-top:5px;justify-content:space-between;gap:8px}.controls button{min-height:39px;font-size:9px;letter-spacing:.5px}.aftermath-message p{font-size:10px;letter-spacing:3px}.aftermath-message>span{font-size:10px;letter-spacing:1.4px}}
@media(max-height:700px) and (max-width:700px){header{height:60px;padding-top:12px;padding-bottom:12px}main{height:calc(100svh - 220px);padding-bottom:12px}.skull-touch{top:55px;height:33svh;width:64vw;left:40vw}h1{font-size:17.3vw;margin-bottom:12px}.eyebrow{font-size:7px;margin-bottom:8px}.tagline{font-size:20px;margin-bottom:14px}.event-drop{margin-bottom:14px}.drop-kicker{font-size:8px;margin-bottom:5px}.drop-dates strong{font-size:28px}.drop-soon{font-size:7px;margin-top:6px}.enter{min-height:51px}.touch-hint{font-size:7px;margin-top:8px}footer{height:160px}.presenters{padding:10px 0}.present-label{font-size:7px;margin-bottom:6px}.brands .brand{font-size:11px}.controls button{min-height:33px}}
@media(max-width:360px){.brands .brand{font-size:11px}.domain{font-size:6px}.tagline{font-size:20px}.drop-kicker{font-size:8px}.wordmark-meta{font-size:7px}}
@media(max-height:480px){main{height:380px}footer{height:160px}.skull-touch{top:40px;height:75svh;width:45vw;left:54vw}}

@media(max-width:700px){.controls button{min-height:44px}.brands .brand{font-size:13px}}
@media(max-height:700px) and (max-width:700px){.brands .brand{font-size:11px}}
/* Fire fills the dynamic phone viewport; no debris, streaks or letterboxing. */
.detonation{inset:0;left:0;top:0;right:0;bottom:0;width:100vw;height:100dvh;min-height:100svh;max-width:none;max-height:none;z-index:50;contain:none}.detonating:before,.detonating:after{content:none!important;display:none!important}#blast-canvas{position:absolute;inset:0;left:0;top:0;display:block;max-width:none;max-height:none;object-fit:fill}.detonating .world{animation:none}.detonating .aftermath{animation:fire-reveal 6.5s ease-out 4s forwards}
@keyframes fire-reveal{from{opacity:0;filter:brightness(.25)}50%{opacity:.7}to{opacity:1;filter:none}}
/* A fast, full-resolution crimson blast, matched to the portal. */
.detonating .blast-charge{animation:red-charge .28s ease-in both}.detonating .scene{animation:red-collapse 1s ease-in both!important}.detonating .skull-touch{animation:skull-burn 1s ease-in both}.detonating header,.detonating main,.detonating footer,.detonating .frame{animation:ui-erasure .22s ease-in .26s forwards}.detonating .aftermath{animation:fire-reveal 1.65s ease-out 1.1s forwards}.ruined .aftermath-message{animation:message-appears 1.1s ease-out both}
@keyframes red-charge{from{opacity:0;transform:translate(-50%,-50%) scale(1);background:#ff372d;box-shadow:0 0 50px 20px #e9142744}70%{opacity:1;transform:translate(-50%,-50%) scale(12);background:#ff372d;box-shadow:0 0 70px 30px #e9142777}to{opacity:0;transform:translate(-50%,-50%) scale(40)}}
@keyframes red-collapse{from{opacity:1;filter:saturate(1.2)}40%{opacity:1;filter:brightness(.7) saturate(1.7)}to{opacity:0;filter:brightness(0);transform:scale(1.1)}}
