:root{color-scheme:dark;--ink:#090b10;--paper:#d8d4c8;--cyan:#55f2e1;--pink:#ff4286;--amber:#ffba62;--p:0;--mouse-x:0;--mouse-y:0}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px}body{margin:0;background:var(--ink);color:var(--paper);overflow-x:clip;font-family:Arial,sans-serif}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:9;opacity:.045;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23n)' opacity='.5' d='M0 0h160v160H0z'/%3E%3C/svg%3E")}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}a{color:inherit}button:focus-visible,a:focus-visible{outline:3px solid var(--amber);outline-offset:7px}.svg-defs{position:absolute;width:0;height:0;overflow:hidden}figure{margin:0}img{display:block;width:100%;height:100%;object-fit:cover}.hud{position:fixed;top:max(22px,env(safe-area-inset-top));left:clamp(18px,3vw,48px);right:clamp(18px,3vw,48px);display:flex;justify-content:space-between;align-items:center;z-index:20;pointer-events:none}.hud>*{pointer-events:auto}.brand{width:40px;height:40px;display:grid;place-items:center;color:var(--cyan);filter:drop-shadow(0 0 9px #55f2e166);transition:color .4s}.brand svg{width:27px;height:27px;fill:currentColor}.icon-button{width:42px;height:42px;border:1px solid #ffffff2a;border-radius:50%;background:#090b10aa;backdrop-filter:blur(14px);display:grid;place-items:center;color:#e8e4da;cursor:pointer;transition:border-color .3s,box-shadow .3s}.icon-button:hover{border-color:var(--cyan);box-shadow:0 0 20px #55f2e122}.icon-button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.reading-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:30;background:#ffffff09}.reading-progress i{display:block;height:100%;width:100%;transform:scaleX(0);transform-origin:left;background:linear-gradient(90deg,var(--cyan),var(--pink),var(--amber));box-shadow:0 0 14px var(--cyan)}.edge-neon{position:fixed;top:18%;height:60%;width:1px;z-index:8;pointer-events:none;opacity:.35}.edge-neon--left{left:12px;background:linear-gradient(transparent,var(--cyan),transparent);box-shadow:0 0 14px var(--cyan)}.edge-neon--right{right:12px;background:linear-gradient(transparent,var(--pink),transparent);box-shadow:0 0 14px var(--pink)}#atmosphere{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:7}.scene{position:relative;--p:0}.cover{min-height:100svh;display:flex;align-items:center;justify-content:center;isolation:isolate;background:radial-gradient(ellipse at 20% 60%,#0c343944,transparent 55%),radial-gradient(ellipse at 85% 40%,#49182c44,transparent 60%);overflow:hidden}.cover-grid{position:absolute;inset:0;background-image:linear-gradient(#c0fff006 1px,transparent 1px),linear-gradient(90deg,#c0fff006 1px,transparent 1px);background-size:65px 65px;mask-image:radial-gradient(ellipse,#000,transparent 75%);transform:rotate(-12deg) scale(1.3)}.cover-composition{position:relative;width:min(1120px,85vw);height:74svh;max-height:780px;min-height:460px}.panel{position:relative;background:#151922;overflow:hidden;border:7px solid var(--ink);box-shadow:0 0 0 1px #d9d9c956,0 24px 60px #0006;isolation:isolate}.panel:after{content:"";position:absolute;inset:0;pointer-events:none;border:1px solid #ffffff1a;z-index:4}.cover-main{position:absolute;inset:8% 8% 7%;transform:rotate(-3deg);z-index:2;box-shadow:-14px 12px 0 #55f2e11c,14px -12px 0 #ff428615,0 30px 100px #0009}.cover-main img{object-position:50% 45%;transform:scale(1.04);filter:saturate(1.08)}.cover-strip{position:absolute;overflow:hidden;border:6px solid var(--ink);box-shadow:0 0 0 1px #ffffff44}.strip-a{width:75%;height:36%;left:-5%;top:-4%;transform:rotate(5deg);opacity:.65}.strip-b{width:42%;height:33%;right:-3%;bottom:-1%;transform:rotate(6deg);z-index:3;border-bottom-color:var(--pink);box-shadow:0 10px 45px #0009}.strip-b img{object-position:50% 37%;transform:scale(1.35)}.neon-cat{position:absolute;top:0;right:-2%;width:clamp(85px,12vw,150px);z-index:4;transform:rotate(12deg);color:var(--pink);filter:drop-shadow(0 0 5px #ff4286) drop-shadow(0 0 20px #ff428688)}.neon-cat svg{fill:#130d1d;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.neon-orbit{position:absolute;left:-3%;bottom:10%;width:140px;height:140px;border:2px solid var(--cyan);border-radius:50%;box-shadow:0 0 12px #55f2e166,inset 0 0 12px #55f2e166;z-index:1}.scroll-cue{position:absolute;bottom:19px;left:calc(50% - 20px);width:40px;height:48px;display:grid;place-items:center;z-index:5;color:var(--cyan)}.scroll-cue svg{width:25px;animation:beckon 2.2s infinite}.story{max-width:1600px;margin:auto;padding:0 6vw}.cinematic{height:155svh}.sticky-stage{height:100svh;position:sticky;top:0;display:flex;align-items:center;justify-content:center;isolation:isolate}.wide{width:100%;aspect-ratio:3/2;max-height:82svh}.wide img{object-position:50% 50%}.street{margin-top:5svh}.street .panel{transform:rotate(-1deg)}.headlight{position:absolute;top:65%;left:65%;width:5%;aspect-ratio:1;filter:blur(7px);background:#ffebb9;border-radius:50%;mix-blend-mode:screen;opacity:calc(.12 + var(--p)*.5);box-shadow:0 0 50px 12px #ffc98055}.headlight-b{left:73%;width:3%}.mist{position:absolute;inset:60% -20% -10%;background:radial-gradient(ellipse at 30% 70%,#97d8e02b,transparent 60%);filter:blur(20px);transform:translateX(calc(var(--p)*70px));pointer-events:none}.neon-line{position:absolute;height:3px;width:19%;box-shadow:0 0 9px currentColor,0 0 25px currentColor;z-index:3;pointer-events:none}.line-cyan{color:var(--cyan);background:currentColor;right:-3%;bottom:14%;transform:rotate(-35deg)}.spread{min-height:100svh;position:relative;padding:10svh 0}.arrival{display:grid;grid-template-columns:.9fr 1.15fr;align-items:center;gap:2.5vw;margin-top:3svh}.arrival-detail{height:48svh;transform:rotate(-4deg);margin-right:-4vw;z-index:2}.arrival-detail img{object-position:25% center}.arrival-hero{height:80svh;transform:rotate(3deg)}.arrival-hero img{object-position:53% center}.light-sweep{position:absolute;inset:-50%;pointer-events:none;background:linear-gradient(112deg,transparent 43%,#a6fff016 48%,#cfffff40 50%,transparent 53%);transform:translateX(calc(-60% + var(--p)*120%));mix-blend-mode:screen}.speed-marks{position:absolute;bottom:2%;left:3%;width:25%;height:50px;background:repeating-linear-gradient(125deg,transparent 0 15px,var(--pink) 16px 18px,transparent 19px 30px);opacity:.45;transform:skewY(-8deg)}.passage{padding:12svh 0 8svh}.passage .panel{transform:rotate(-2deg);clip-path:polygon(0 4%,100% 0,98% 100%,1% 96%)}.neon-wash{position:absolute;inset:0;background:linear-gradient(100deg,#55f2e114,transparent 40%,#ff428618);mix-blend-mode:screen;opacity:calc(.25 + var(--p))}.walk{height:165svh}.tall{width:78%;height:83svh;max-height:1000px}.tall img{object-position:50% 50%}.vignette{position:absolute;inset:0;box-shadow:inset 0 0 140px 35px #0009}.rail{position:absolute;top:19%;height:65%;width:2px;z-index:-1;box-shadow:0 0 18px currentColor;background:currentColor}.rail-left{left:4%;color:var(--cyan);transform:rotate(8deg)}.rail-right{right:4%;color:var(--pink);transform:rotate(8deg)}.encounter{height:180svh;margin-top:5svh}.encounter .panel{transform:rotate(1.5deg)}.shadow-mask{position:absolute;inset:0;background:linear-gradient(90deg,#0003,transparent 30%,#000a);opacity:calc(1 - var(--p));pointer-events:none}.amber-pulse{position:absolute;inset:0;background:radial-gradient(ellipse at 70% 50%,#ffad3324,transparent 70%);mix-blend-mode:screen;opacity:calc(var(--p)*.8)}.tension-lines{position:absolute;inset:8% -4%;background:repeating-conic-gradient(from 10deg at 75% 50%,transparent 0deg 14deg,#ffbf641f 14.1deg 14.3deg,transparent 14.4deg 28deg);z-index:-1;mask-image:radial-gradient(ellipse,transparent 40%,#000);opacity:var(--p)}.suspense{min-height:100svh;padding:5svh 2vw 15svh;display:flex;flex-direction:column;align-items:flex-start;gap:5svh}.eyes{width:78%;height:28svh;transform:rotate(-4deg);z-index:2;clip-path:polygon(2% 0,100% 5%,96% 100%,0 94%)}.eyes img{object-position:50% 37%}.bag{align-self:flex-end;width:65%;aspect-ratio:1.6;transform:rotate(4deg)}.line-pink{color:var(--pink);background:currentColor;left:-1%;bottom:30%;width:27%;transform:rotate(-20deg)}.offering{padding:7svh 5vw 12svh;isolation:isolate}.offering .panel{transform:rotate(-2deg)}.burst-lines{position:absolute;inset:0;z-index:-1;background:repeating-conic-gradient(from 5deg at 40% 45%,transparent 0deg 14deg,#ffbd612b 14.2deg 14.4deg,transparent 14.6deg 22deg);mask-image:radial-gradient(ellipse,transparent 30%,#000 80%)}.can-glint{position:absolute;left:25%;top:50%;width:6%;height:2px;transform:rotate(-30deg);background:#ffefc5;box-shadow:0 0 20px 4px #ffce7c;opacity:0}.revelation{height:180svh}.boss-halo{position:absolute;width:65vw;height:65vw;max-width:900px;max-height:900px;border-radius:50%;background:radial-gradient(circle,#ffb43b1f,transparent 65%);border:1px solid #ffb43b20;z-index:-1;transform:scale(calc(.8 + var(--p)*.3))}.boss-paw{position:absolute;right:1%;top:11%;width:70px;height:70px;fill:var(--amber);filter:drop-shadow(0 0 16px #ffba6266);transform:rotate(17deg);opacity:var(--p)}.service{min-height:90svh;display:flex;align-items:center;padding:10svh 0}.dinner{width:83%;aspect-ratio:3/2;transform:rotate(-3deg)}.service-decoration{position:absolute;right:1%;top:24%;width:10%;color:var(--pink)}.service-decoration svg{width:100%;fill:none;stroke:currentColor;stroke-width:1.3;filter:drop-shadow(0 0 8px currentColor);transform:rotate(15deg)}.service-decoration i{display:block;background:var(--cyan);height:2px;margin-top:28px;transform:rotate(-25deg);box-shadow:0 0 9px var(--cyan)}.service-decoration i:nth-child(3){width:70%}.service-decoration i:nth-child(4){width:40%}.shelter{height:165svh}.shelter .panel{transform:rotate(1deg)}.warmth{position:absolute;inset:0;background:radial-gradient(ellipse at 30% 60%,#ffad2422,transparent 55%);mix-blend-mode:screen}.rain-overlay{position:absolute;inset:-40%;background:repeating-linear-gradient(108deg,transparent 0 91px,#94d4ec12 92px,transparent 94px 180px);animation:rain 1.4s linear infinite;opacity:.4;pointer-events:none}.finale{height:175svh}.finale .panel{width:94%;transform:rotate(-2deg)}.finale-ring{position:absolute;width:70%;aspect-ratio:1;border:2px solid #ffba6240;border-radius:50%;z-index:-1;box-shadow:0 0 60px #ffba6210,inset 0 0 60px #ffba6210}.pet-button{position:absolute;bottom:6%;left:calc(50% - 30px);width:60px;height:60px;border:1px solid #ffba6288;background:#191311;border-radius:50%;color:var(--amber);display:grid;place-items:center;box-shadow:0 0 30px #ffba6222;cursor:pointer;transition:transform .3s,box-shadow .3s}.pet-button:hover{transform:rotate(-10deg) scale(1.1);box-shadow:0 0 40px #ffba6255}.pet-button svg{fill:currentColor;width:30px;height:30px}.replay{position:absolute;right:3%;bottom:7%;color:#d7cdbd}#pet-reaction{position:fixed;inset:0;pointer-events:none;z-index:25}.heart{position:absolute;color:var(--amber);font-size:26px;animation:float-heart 1.7s ease-out forwards;text-shadow:0 0 18px #ffba62}.petting .finale .panel{box-shadow:0 0 0 1px #ffba62,0 0 80px #ffba6240}.js:not(.reduced) .scene:not(.cinematic):not(.cover) .panel{opacity:0;translate:0 38px;transition:opacity .8s,translate 1s cubic-bezier(.16,1,.3,1)}.js:not(.reduced) .scene.is-visible .panel{opacity:1!important;translate:0 0!important}.js .arrival-hero,.js .bag{transition-delay:.16s!important}.reduced *{animation:none!important;scroll-behavior:auto!important}.reduced .cinematic{height:auto;padding:8svh 0}.reduced .sticky-stage{position:relative;height:auto;min-height:65svh}.reduced .panel img{transform:none!important}.reduced .shadow-mask{display:none}.reduced .boss-paw{opacity:1}.reduced #atmosphere{display:none}.reduced .finale{padding-bottom:120px}.reduced .finale .pet-button,.reduced .finale .replay{bottom:-90px}.reduced .heart{display:none}
@keyframes beckon{0%,100%{transform:translateY(-5px);opacity:.5}50%{transform:translateY(5px);opacity:1}}@keyframes rain{to{transform:translate(-40px,130px)}}@keyframes float-heart{0%{opacity:0;transform:translate(-50%,0) scale(.6)}20%{opacity:1}100%{opacity:0;transform:translate(calc(-50% + var(--drift)), -150px) rotate(20deg) scale(1.3)}}
@media(min-width:1600px){.story{padding:0 90px}.cover-composition{height:78svh}}@media(max-width:760px){.hud{top:18px;left:18px;right:18px}.brand{width:32px;height:32px}.icon-button{width:36px;height:36px}.edge-neon--left{left:5px}.edge-neon--right{right:5px}.story{padding:0 5vw}.cover-composition{width:90vw;height:74svh;min-height:400px}.cover-main{inset:8% 4% 9%;transform:rotate(-4deg)}.cover-main img{object-position:52% center}.strip-a{top:1%;width:90%;height:27%;left:0}.strip-b{width:62%;height:24%;right:-1%;bottom:2%}.neon-cat{top:1%;right:1%;width:90px}.neon-orbit{width:90px;height:90px;left:-4%;bottom:20%}.panel{border-width:4px}.wide{aspect-ratio:auto;height:69svh;max-height:780px}.wide img{object-position:55% center}.cinematic{height:145svh}.street{margin-top:0}.street .wide img{object-position:65% center}.arrival{min-height:120svh;display:block;padding:10svh 0}.arrival-detail{width:75%;height:35svh;z-index:3;margin:0}.arrival-hero{width:80%;height:65svh;margin:-4svh 0 0 auto}.arrival-detail img{object-position:30% center}.arrival-hero img{object-position:52% center}.passage{padding:7svh 0}.passage .wide{height:65svh}.passage .wide img{object-position:50% center}.tall{width:91%;height:75svh}.walk{height:155svh}.encounter{height:170svh}.encounter .wide img{object-position:60% center}.suspense{min-height:83svh;padding:4svh 0 7svh;gap:6svh}.eyes{width:95%;height:24svh}.bag{width:88%;aspect-ratio:1.2}.bag img{object-position:42% center}.line-pink{bottom:10%}.offering{padding:4svh 0 10svh}.offering .wide{height:65svh}.offering .wide img{object-position:42% center}.revelation{height:170svh}.revelation .wide img{object-position:62% center}.boss-paw{width:48px;height:48px;top:10%;right:3%}.boss-halo{width:110vw;height:110vw}.service{min-height:75svh;padding:8svh 0}.dinner{width:95%;height:62svh;aspect-ratio:auto}.dinner img{object-position:50% center}.service-decoration{right:-2%;top:3%;width:40px;z-index:3}.service-decoration i{display:none}.shelter{height:160svh}.shelter .wide img{object-position:47% center}.finale{height:170svh}.finale .wide{width:100%;height:66svh}.finale .wide img{object-position:65% center}.pet-button{bottom:4%;width:54px;height:54px;left:calc(50% - 27px)}.replay{bottom:5%}.finale-ring{width:115%}.headlight{left:54%;top:64%}.headlight-b{left:77%}.can-glint{left:14%;top:51%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.scroll-cue svg,.rain-overlay{animation:none}}
@media(max-height:550px) and (orientation:landscape){.cover-composition{min-height:260px;height:78svh;width:70vw}.cover-main{inset:4% 8%}.wide{width:78%;height:82svh}.pet-button{bottom:1%;left:3%}.replay{bottom:3%}.strip-b{height:40%}.cover .scroll-cue{left:auto;right:3%;bottom:30px}}
/* Preserve both characters in story-critical two-person compositions. */
html{overflow-x:clip}
@media(max-width:760px){
 .passage .wide,.revelation .wide,.shelter .wide,.finale .wide{height:auto;aspect-ratio:3/2}
 .passage .wide img,.revelation .wide img,.shelter .wide img,.finale .wide img{object-position:center}
 .passage{padding:12svh 0}
 .revelation .boss-halo{box-shadow:0 0 100px #ffba6209}
 .finale .wide{transform:rotate(-4deg)}
 .finale .pet-button{bottom:17%}.finale .replay{bottom:18%}
 .shelter .sticky-stage:before{content:"";position:absolute;inset:12% 0;background:radial-gradient(ellipse at 25% 60%,#ffba6210,transparent 65%),radial-gradient(ellipse at 80% 40%,#55f2e10c,transparent 65%);z-index:-1}
}

.refusal,.takeover{position:relative;padding:9svh 3vw 13svh}.refusal .panel{transform:rotate(2deg)}.takeover .panel{transform:rotate(-3deg)}.takeover>.neon-wash{inset:10% 0;pointer-events:none;opacity:.35}.finale .wide{aspect-ratio:1671/941}.finale .wide img{object-position:center}.finale .light-sweep{opacity:.35}
@media(max-width:760px){.refusal .wide,.takeover .wide{height:auto;aspect-ratio:3/2}.refusal .wide img,.takeover .wide img{object-position:center}.finale .wide{height:auto;aspect-ratio:1671/941}.refusal,.takeover{padding:9svh 0 13svh}.revelation .wide img{object-position:center}.service .dinner{height:auto;aspect-ratio:3/2}.service{min-height:65svh}}

/* Scene-specific neon effects, layered inside each illustration. */
.scene-fx{position:absolute;inset:0;pointer-events:none;z-index:3;overflow:hidden}
.scene-fx:before,.scene-fx:after{content:"";position:absolute;pointer-events:none}
.scan-glow{background:linear-gradient(110deg,transparent 20%,#1bffe92b 40%,transparent 54%,#ff328c20 70%,transparent 85%);background-size:260% 100%;mix-blend-mode:screen;animation:neon-pass 7s ease-in-out infinite}
.headlight-beam{background:conic-gradient(from 240deg at 71% 66%,transparent 0deg,#ffe7a56b 9deg,#fff1bb22 23deg,transparent 40deg);mix-blend-mode:screen;opacity:var(--beam,0);filter:blur(3px);transform:scale(1.3)}
.headlight-beam:after{inset:0;background:linear-gradient(115deg,transparent 30%,#fff0c24d 47%,transparent 65%);transform:translateX(calc(-70% + var(--p)*180%))}
.road-glow{inset:68% 0 0;background:repeating-linear-gradient(95deg,transparent 0 15%,#ff3d8a30 17%,transparent 20%,#48ffe82b 28%,transparent 30%);filter:blur(8px);mix-blend-mode:screen;animation:wet-road 4s ease-in-out infinite alternate}
.impact-ring{background:repeating-conic-gradient(from 5deg at 72% 45%,transparent 0 12deg,#ffda9b5c 12.1deg 12.5deg,transparent 12.7deg 26deg);mask-image:radial-gradient(ellipse,transparent 42%,#000);opacity:0}
.shadow-impact .impact-ring{animation:impact-glow .7s ease-out both}
.shadow-impact .panel{animation:shadow-jolt .65s ease-out both}
.iris-reveal{background:radial-gradient(circle at 67% 65%,transparent 0 calc(var(--iris,9%) - 4%),#08090ce6 var(--iris,9%),#08090c 125%)}
.reward-rays{background:repeating-conic-gradient(from 0deg at 30% 48%,transparent 0deg 17deg,#ffc76f26 17.2deg 18deg,transparent 18.2deg 30deg);mix-blend-mode:screen;opacity:calc(.8 - var(--p)*.4);mask-image:radial-gradient(ellipse,transparent 14%,#000 80%)}
.reward-rays:after{left:29%;top:45%;width:3px;height:18%;background:#ffebac;box-shadow:0 0 20px 5px #ffbc6288;transform:rotate(55deg);animation:tin-sparkle 3.4s ease-in-out infinite}
.window-drops{background-image:repeating-linear-gradient(107deg,transparent 0 76px,#a8e8ff26 77px,transparent 79px 162px);background-size:180px 230px;animation:falling-rain .75s linear infinite;mask-image:linear-gradient(90deg,#000,transparent 45%,transparent 65%,#000)}
.city-reflections{clip-path:polygon(0 0,100% 0,100% 39%,54% 32%,42% 0,23% 0,22% 39%,0 45%);background:repeating-linear-gradient(105deg,transparent 0 13%,#ff42864d 16%,transparent 21%,#55f2e15c 28%,transparent 33%);background-size:220% 100%;mix-blend-mode:screen;animation:city-drive 2.8s linear infinite}
.city-reflections:after{inset:0;background:linear-gradient(90deg,transparent,#ffcc8a40,transparent);animation:city-drive 4s linear infinite reverse}
.fx-active .neon-cat{animation:sign-breathe 4s ease-in-out infinite}
.fx-active .rail{animation:rail-charge 3s ease-in-out infinite alternate}
.fx-active .boss-paw{animation:boss-stamp 1s cubic-bezier(.2,.8,.2,1) both}
.scene:not(.fx-active) .scene-fx,.scene:not(.fx-active) .scene-fx:after{animation-play-state:paused}
.panel{transition:box-shadow .35s}
@media(hover:hover) and (pointer:fine){.panel:hover{box-shadow:0 0 0 1px #55f2e1bb,-10px 4px 32px #55f2e122,10px -4px 32px #ff428622}.cover-main:hover img{filter:saturate(1.2) contrast(1.03)}}
@keyframes neon-pass{0%,100%{background-position:0% 50%;opacity:.45}50%{background-position:100% 50%;opacity:1}}
@keyframes wet-road{from{transform:translateX(-4%) skewX(-10deg);opacity:.4}to{transform:translateX(4%) skewX(5deg);opacity:.9}}
@keyframes impact-glow{0%{opacity:0}20%{opacity:.85}100%{opacity:0}}
@keyframes shadow-jolt{0%,100%{translate:0 0}15%{translate:-7px 3px}30%{translate:6px -3px}48%{translate:-4px 1px}65%{translate:2px -1px}}
@keyframes tin-sparkle{0%,65%,100%{opacity:0;scale:.3}78%{opacity:.8;scale:1}90%{opacity:0;scale:1.3}}
@keyframes falling-rain{to{background-position:-25px 230px}}
@keyframes city-drive{from{background-position:160% 50%}to{background-position:-60% 50%}}
@keyframes sign-breathe{0%,100%{opacity:.8;filter:drop-shadow(0 0 4px #ff4286) drop-shadow(0 0 12px #ff428688)}50%{opacity:1;filter:drop-shadow(0 0 7px #ff4286) drop-shadow(0 0 28px #ff4286aa)}}
@keyframes rail-charge{from{opacity:.25;scale:1 .65}to{opacity:.9;scale:1 1}}
@keyframes boss-stamp{from{opacity:0;scale:1.8;rotate:-15deg}to{opacity:1;scale:1;rotate:0deg}}
.reduced .scene-fx{display:none!important}.reduced .shadow-impact .panel{translate:0 0!important}
