.scene-a11y{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%);white-space:nowrap;border:0}.modal.cutscene-modal{width:min(96vw,1600px);max-width:1600px;padding:0;background:#111e30;border:1px solid #adbda64d;overflow:auto;color:#fff7df;box-shadow:0 30px 120px #07122488}.cutscene-modal .close-modal{background:#183042dd;color:#fff8df;border:1px solid #ead8aa77;z-index:6;top:18px;right:18px}.cutscene-shell{border-radius:inherit;overflow:hidden}.cutscene-stage{position:relative;width:100%;aspect-ratio:14/9;isolation:isolate;background:linear-gradient(#15233d,#5d5775 55%,#e1a890);overflow:hidden}.cutscene-camera{position:absolute;inset:0;transform-origin:50% 42%;will-change:transform}.cutscene-camera>svg:not(.spark-trails){position:absolute;width:100%;height:100%;inset:0}.cinema-vignette{position:absolute;inset:0;pointer-events:none;background:linear-gradient(#0a172dcc,transparent 17%,transparent 68%,#0a172de8),radial-gradient(ellipse at 50% 45%,transparent 35%,#07132366 100%);z-index:3}.cutscene-overline{position:absolute;top:30px;left:35px;right:100px;color:#e8dab5;font-size:clamp(13px,1.2vw,21px);font-weight:900;letter-spacing:.16em;z-index:4}.cutscene-caption{position:absolute;left:7%;right:7%;bottom:4.5%;text-align:center;z-index:4;text-shadow:0 3px 15px #041126}.cutscene-chapter{display:block;color:#f1d69b;font-size:clamp(13px,1.3vw,22px);letter-spacing:.08em;font-weight:800}.cutscene-caption p{color:#fff8e1;font-weight:900;font-size:clamp(24px,2.4vw,42px);line-height:1.25;margin:10px 0 0;min-height:1.3em}.cutscene-controls{display:flex;align-items:center;justify-content:space-between;gap:25px;background:linear-gradient(110deg,#142638,#223847);padding:23px 35px}.cutscene-controls p{color:#d2dfd1;font-size:clamp(16px,1.3vw,22px);line-height:1.5;margin:0;max-width:60%}.cutscene-controls .outline{background:#233f4a;color:#fff4cf;border-color:#9eb09a;white-space:nowrap;font-size:clamp(17px,1.4vw,23px);min-height:58px}.cutscene-controls .primary{font-size:clamp(17px,1.4vw,23px);min-height:58px}.cutscene-controls [hidden]{display:none!important}.spark-trails{position:absolute;inset:0;z-index:2;width:100%;height:100%;filter:drop-shadow(0 0 9px #ffe6a299);pointer-events:none}.cutscene-sparks{position:absolute;inset:0;pointer-events:none;z-index:3}.cinematic-spark{position:absolute;width:clamp(23px,3.2vw,54px);height:clamp(23px,3.2vw,54px);transform:translate(-50%,-50%) scale(var(--spark-size,1));filter:drop-shadow(0 0 7px var(--spark-color)) drop-shadow(0 0 18px var(--spark-color));will-change:left,top,opacity}.cinematic-spark:before{content:'';position:absolute;inset:-70%;border-radius:50%;background:radial-gradient(circle,var(--spark-color),transparent 65%);opacity:.18}.cinematic-spark svg{height:100%;width:100%;position:relative;display:block}.cutscene-companions{position:absolute;inset:0;z-index:2;pointer-events:none}.watching-fox{position:absolute;left:9%;bottom:7%;width:19%;height:34%;object-fit:contain;filter:brightness(.79) drop-shadow(0 10px 16px #07162e55)}.watching-bird{position:absolute;right:15%;top:29%;height:15%;width:12%;object-fit:contain;filter:brightness(.85) drop-shadow(0 4px 14px #07162e55);animation:final-bird-hover 4s ease-in-out infinite}.scene-lit .watching-fox,.scene-lit .watching-bird{filter:brightness(1) drop-shadow(0 4px 15px #f7c97c44);transition:filter 2s}.cutscene-stage #lantern-glow,.cutscene-stage #light-rays,.cutscene-stage #lit-windows,.final-beacon-mini #lantern-glow,.final-beacon-mini #light-rays,.final-beacon-mini #lit-windows{opacity:0;transition:opacity 2s ease}.scene-lit #lantern-glow,.scene-lit #light-rays,.scene-lit #lit-windows{opacity:1}.cutscene-stage #beacon-heart{transition:filter 2s}.cutscene-stage.scene-lit #beacon-heart{filter:drop-shadow(0 0 15px #ffe59a)}.cutscene-stage.scene-lit #light-rays{transform-box:view-box;transform-origin:700px 300px;animation:beacon-beam-sweep 10s ease-in-out infinite alternate}.ignition-wave{position:absolute;left:50%;top:33.333%;height:3%;aspect-ratio:1;border:3px solid #ffe7a6;border-radius:50%;background:#ffe8ab22;opacity:0;z-index:2;pointer-events:none;transform:translate(-50%,-50%) scale(.1)}.scene-lit .ignition-wave{animation:beacon-warm-wave 2.5s ease-out both}.final-beacon-mini{width:min(100%,520px);aspect-ratio:14/9;margin:18px auto 20px;border-radius:24px;overflow:hidden;border:1px solid #e2d3ad;box-shadow:0 12px 38px #786d3b20;position:relative}.final-beacon-mini>svg{height:100%;width:100%;display:block}.final-beacon-mini #light-rays{opacity:.9}.final-beacon-mini.scene-lit #lantern-glow,.final-beacon-mini.scene-lit #lit-windows{opacity:1}.final-scene .final-heart{display:none}.final-actions{align-items:center}.final-actions #replayCutscene{background:#f6edda;border-color:#d7c297}.modal[data-kind="final"]{background:radial-gradient(ellipse at 50% 0,#fff0c6 0,transparent 55%),#fffaf1}.modal[data-kind="final"] .final-scene>.eyebrow{color:#9a8041}.modal[data-kind="cutscene"] .narration-toolbar{display:none!important}@keyframes final-bird-hover{0%,100%{transform:translateY(0) rotate(4deg)}50%{transform:translateY(-10px) rotate(-4deg)}}@keyframes beacon-warm-wave{0%{opacity:.6;transform:translate(-50%,-50%) scale(.1)}70%{opacity:.15}100%{opacity:0;transform:translate(-50%,-50%) scale(25)}}@keyframes beacon-beam-sweep{from{transform:rotate(-5deg)}to{transform:rotate(5deg)}}@media(max-width:800px){.modal.cutscene-modal{width:98vw;border-radius:24px}.cutscene-stage{aspect-ratio:14/10}.cutscene-caption{bottom:5%;left:5%;right:5%}.cutscene-overline{top:23px;left:23px;right:88px;font-size:12px;letter-spacing:.08em}.cutscene-caption p{font-size:clamp(22px,3.6vw,32px)}.cutscene-controls{padding:21px 24px;gap:18px}.cutscene-controls p{font-size:16px}.cutscene-controls .outline,.cutscene-controls .primary{font-size:17px;padding:13px 18px;white-space:normal}.final-beacon-mini{width:min(100%,450px)}}@media(max-width:560px){.modal.cutscene-modal{width:calc(100vw - 16px);max-height:calc(100dvh - 16px);border-radius:22px}.cutscene-stage{aspect-ratio:1/1;min-height:340px}.cutscene-camera>svg:not(.spark-trails),.spark-trails{object-fit:cover}.cutscene-camera{inset:8% -25% 5%}.cinema-vignette{background:linear-gradient(#0c1b35e6,transparent 25%,transparent 60%,#0b1c31f2)}.cutscene-overline{top:19px;left:18px;right:76px;font-size:11px;line-height:1.5;max-width:200px}.cutscene-caption{bottom:5%;left:18px;right:18px}.cutscene-chapter{font-size:12px;line-height:1.5}.cutscene-caption p{font-size:24px;line-height:1.3;min-height:2.6em}.cutscene-controls{flex-direction:column;padding:19px 21px;gap:15px}.cutscene-controls p{max-width:100%;text-align:center;font-size:16px}.cutscene-controls .primary,.cutscene-controls .outline{width:100%;min-height:56px}.cutscene-modal .close-modal{width:48px;height:48px;min-width:48px;min-height:48px;top:13px;right:13px}.watching-fox{left:22%;bottom:11%;height:31%;width:17%}.watching-bird{right:25%;top:29%;width:10%;height:14%}.cinematic-spark{width:31px;height:31px}.final-actions #replayCutscene{width:100%}.final-beacon-mini{margin:15px auto;max-width:380px;border-radius:20px}}@media(prefers-reduced-motion:reduce){.cutscene-camera,.cutscene-stage #lantern-glow,.cutscene-stage #light-rays,.cutscene-stage #lit-windows{transition:none!important;animation:none!important}.scene-lit .ignition-wave{display:none}.watching-bird{animation:none}}@media print{.cutscene-shell{display:none!important}}

@media(min-width:561px){.modal.cutscene-modal{width:min(96vw,calc((100dvh - 180px)*1.5556),1600px)}.cutscene-stage{aspect-ratio:14/9}}
@media(max-width:560px){.cutscene-camera{inset:auto;left:-25%;top:6%;width:150%;height:auto;aspect-ratio:14/9}}
