/* Documentary environment, spatial hierarchy and responsive scene boundaries. */
:root{--data-font:Consolas,'Courier New',monospace}.screen{scroll-margin-top:110px}.map-screen{padding:0!important;position:relative;min-height:calc(100svh - 88px)}.map-screen>.screen-heading{position:absolute;top:20px;inset-inline-start:4%;margin:0;z-index:15;pointer-events:none}.map-screen>.screen-heading h1{font-size:clamp(28px,3.5vw,46px);margin:8px 0}.map-screen>.screen-heading p{font-size:13px;max-width:420px}.map-screen>.screen-heading .kicker{font-size:11px}.map-screen .tactical-map{height:calc(100svh - 88px);min-height:780px;background:radial-gradient(ellipse at 52% 52%,#293c2c88,transparent 65%),#070d0b}.map-screen .map-hud{top:145px}.map-screen .map-layout>aside{top:180px;bottom:65px;max-height:none;inset-inline-end:24px;width:330px;padding:18px;background:linear-gradient(120deg,#111c17f0,#070d0bf5);border:1px solid #c0c9ab22;border-top:2px solid var(--orange);scrollbar-width:thin}.map-screen .map-stage-3d{inset:100px 365px 100px 20px}html[dir=rtl] .map-screen .map-stage-3d{inset:100px 20px 100px 365px}.map-screen .map-info .map-file{display:none}.map-screen .map-info h2{font-size:44px;margin:14px 0}.map-screen .map-info p{font-family:var(--data-font);font-size:12px}.map-screen #city-controls{gap:4px}.map-screen #city-controls button{font-size:13px;padding:8px 10px}.map-screen .camera-telemetry{top:auto;bottom:155px;inset-inline-start:28px;max-width:50%;font-family:var(--data-font);background:#09120dd9}.map-screen .camera-instructions{bottom:30px;inset-inline-start:28px;width:48%;line-height:1.7;font-size:11px}.map-screen .map-scale{bottom:10px;left:28px;right:auto;font-size:10px}.map-screen .camera-home{bottom:100px;inset-inline-start:28px}.map-screen .location-lock{bottom:75px;inset-inline-start:28px;font-family:var(--data-font);font-size:11px}.map-zoom{position:absolute;bottom:105px;inset-inline-start:185px;display:flex;gap:5px;z-index:14}.map-zoom button{background:#132017;border:1px solid #a8ba7777;color:#e5e8d8;width:40px;height:40px;font-size:24px;cursor:pointer}.map-city .acquisition-ring{stroke:#b6c599;stroke-width:.7;opacity:.65}.map-city:hover .acquisition-ring,.map-city.camera-selected .acquisition-ring{stroke:#ff994c;stroke-width:2;stroke-dasharray:14 5;animation:acquire-ring 8s linear infinite;transform-box:fill-box;transform-origin:center}.map-city .map-point{r:5px;stroke:#f4cb94;stroke-width:1}.map-city .map-label{font-family:var(--font);font-size:16px!important;font-weight:500;stroke-width:2px}.location-preview{position:absolute;inset-inline-start:25px;top:195px;width:220px;background:#0b120fe8;border:1px solid #a8bc6b66;z-index:13;padding:12px;pointer-events:none;display:grid;gap:6px}.location-preview[hidden]{display:none}.location-preview img{height:85px;width:100%;object-fit:cover;filter:grayscale(.8)}.location-preview small{color:var(--orange);font-size:10px}.location-preview strong{font-size:18px}.location-preview span{font:11px var(--data-font)}.location-preview p{font-size:12px;margin:0;color:#b8c1ae}.location-preview:empty{display:none}.location-evidence{position:relative;margin:12px 0 0}.location-evidence img{width:100%;height:125px;object-fit:cover;filter:grayscale(.8) contrast(1.15);display:block}.location-evidence a{display:block;padding:6px 0;color:#aab79f;font-size:10px}.evidence-axis{display:flex;justify-content:space-between;font:10px var(--data-font);letter-spacing:.09em;color:#cbd3ba;border-block:1px solid #909f693d;padding:10px 0;margin-top:8px}.context-evidence summary{font-size:13px;padding:12px 0;color:#dfc39d;cursor:pointer}.context-evidence p{font-size:14px;line-height:1.9;margin-top:0;color:#c7d0bc}.archive-connections{position:relative;padding-inline-start:18px}.archive-connections:before{content:'';position:absolute;inset-inline-start:3px;top:0;bottom:12px;width:1px;background:#9aa98066;transform:scaleY(.05);transform-origin:top;transition:transform .7s}.location-narrative.acquired .archive-connections:before{transform:scaleY(1)}.connection-file{display:grid;grid-template-columns:28px 1fr;gap:3px 8px;position:relative;padding:12px 0;border-bottom:1px solid #87956b33;color:#e5e8d9}.connection-file:before{content:'';position:absolute;top:24px;inset-inline-start:-15px;width:13px;height:1px;background:var(--orange)}.connection-file b{grid-row:span 2;font:25px var(--display);color:var(--orange)}.connection-file span{font-size:15px}.connection-file time{font:11px var(--data-font);color:#a4b597}.connection-file:hover{background:#d9e6be09}.location-narrative[data-context=contested] .location-evidence{clip-path:polygon(0 0,100% 0,100% 43%,95% 43%,95% 51%,100% 51%,100% 100%,0 100%)}.location-narrative[data-context=document] .location-evidence img{height:95px}.location-narrative[data-context=panorama] .location-evidence img{height:160px}.narrative-acquiring .location-narrative{opacity:.5;transition:opacity .25s}.camera-scene:focus-visible,.connection-file:focus-visible{outline:2px solid #f49a52;outline-offset:4px}
.campaign-cold-open{position:absolute;inset:0;background:#030605;z-index:20;overflow:hidden;isolation:isolate;perspective:1400px}.intro-imagery{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;filter:grayscale(1) contrast(1.25) brightness(.6);transition:transform 1.3s,opacity .5s;z-index:-2}.intro-coordinates{position:absolute;top:15%;inset-inline-start:8%;font:12px var(--data-font);letter-spacing:.15em;color:#c2caaa}.intro-title{position:absolute;inset:38% 8% auto;margin:0;font-size:clamp(40px,7vw,110px);line-height:1.3;font-weight:800;text-wrap:balance;max-width:1000px}.intro-year{position:absolute;inset:14% auto auto 5%;font:900 clamp(150px,30vw,450px)/1 var(--display);color:#cbd2b918;direction:ltr}.intro-date{position:absolute;bottom:20%;inset-inline-start:8%;max-width:80%;font:13px var(--data-font);color:#d6b68c}.intro-source{position:absolute;bottom:35px;inset-inline-start:8%;max-width:70%;font-size:12px;color:#b8c6ae}.intro-skip{position:absolute;bottom:25px;inset-inline-end:5%;background:#101910e0;border:1px solid #909c7e;color:#e0e3d4;padding:12px 18px;font:13px var(--font);cursor:pointer}.intro-line{position:absolute;left:8%;right:8%;top:28%;height:1px;background:#cfa16d;transform-origin:left;animation:trace-frame 1s both}.intro-map{position:absolute;inset:5% 15%;width:70%;height:90%;opacity:.45;transform:perspective(1000px) rotateX(35deg) rotateZ(-12deg)}[data-scene=signal] .intro-title{font-size:22px;letter-spacing:.2em;color:#abb49b}[data-scene=signal] .intro-year,[data-scene=silence]>*:not(.intro-skip){display:none}[data-scene=fragment] .intro-imagery{opacity:.8;clip-path:polygon(30% 0,80% 0,75% 100%,25% 100%);transform:scale(1.13)}[data-scene=fragment] .intro-title{inset:50% 6% auto}[data-scene=interruption] .intro-imagery{opacity:.65;clip-path:inset(15% 0 30%);transform:translateX(-2%)}[data-scene=interruption] .intro-title{color:#f2c69a;animation:single-impact .6s both}[data-scene=interruption] .intro-year{color:#eea064aa;inset:12% 8% auto;font-size:40vw}[data-scene=image] .intro-imagery{opacity:1;transform:scale(1.06)}[data-scene=image] .intro-title{inset:52% 8% auto}[data-scene=statement] .intro-title,[data-scene=endures] .intro-title{inset:35% 8% auto;animation:title-impact .65s both}[data-scene=endures] .intro-title{color:#d7d1bb}[data-scene=statement] .intro-year,[data-scene=endures] .intro-year{display:none}.cold-open-active .story-composition,.cold-open-active .story-year,.cold-open-active .story-bottom,.cold-open-active .sequence-skip{visibility:hidden}.replay-sequence{position:absolute;top:52px;inset-inline-start:4%;z-index:15;background:#0a100bba;color:#aab79d;border:1px solid #94a77e55;padding:9px 13px;font:12px var(--font)}html[lang=en] .intro-title{font:800 clamp(55px,9vw,135px)/.95 'Barlow Condensed',sans-serif}.chapter-registration{position:absolute;inset:15px;pointer-events:none}.chapter-registration i{position:absolute;width:30px;height:30px;border-color:#b3bd9766;border-style:solid}.chapter-registration i:nth-child(1){top:0;left:0;border-width:1px 0 0 1px}.chapter-registration i:nth-child(2){top:0;right:0;border-width:1px 1px 0 0}.chapter-registration i:nth-child(3){bottom:0;left:0;border-width:0 0 1px 1px}.chapter-registration i:nth-child(4){bottom:0;right:0;border-width:0 1px 1px 0}.chapter-evidence-label{display:block;font:10px var(--data-font);color:#98a78e;letter-spacing:.12em;margin-bottom:10px}.chapter-prelude[data-rhythm=contested] .chapter-image{clip-path:polygon(0 0,100% 0,100% 49%,94% 49%,94% 52%,100% 52%,100% 100%,0 100%)}.chapter-prelude[data-rhythm=document] .chapter-fragment{background:#070c0dcc;padding:18px}.chapter-prelude[data-rhythm=paired] .chapter-numeral{color:#bbccaf30}
.history-stations{display:grid;grid-template-columns:repeat(8,1fr);gap:0;border-top:1px solid #95a48066;margin-top:22px;direction:ltr}.history-station{position:relative;text-align:start;background:none;border:0;border-inline-start:1px solid #b6c29333;color:#a0b294;padding:15px 9px;cursor:pointer;min-width:0}.history-station:before{content:'';position:absolute;width:5px;height:5px;top:-3px;left:8px;background:#a3b78a}.history-station b{display:block;font:28px var(--display);color:#dde2d2}.history-station span{display:block;font-size:11px;line-height:1.5}.history-station[aria-pressed=true]{background:#cddbaa0d;border-top:2px solid var(--orange)}.history-station[aria-pressed=true] b{color:var(--orange)}html[dir=rtl] .history-station{text-align:right}.history-atmosphere{position:absolute;inset:-30px -5vw;z-index:-1;background-size:cover;background-position:center;opacity:.18;filter:grayscale(1);mask-image:linear-gradient(transparent,#000 30%,#000 70%,transparent);pointer-events:none}.timeline-camera{isolation:isolate}.timeline-camera .time-stage{background:transparent}.timeline-camera .time-image-button{box-shadow:none;clip-path:polygon(4% 0,100% 0,96% 100%,0 100%)}.timeline-camera .time-stage .big-year{font-size:clamp(120px,25vw,360px);color:#d4d8c525}.timeline-camera .time-stage h2{font-size:clamp(34px,4vw,66px)}.evidence-line-frame{position:relative}.evidence-line-frame:before{content:'';position:absolute;top:0;inset-inline-start:0;width:65px;height:1px;background:var(--orange);transform:scaleX(0);transform-origin:0 0;transition:transform .7s}.evidence-line-frame.line-acquired:before{transform:scaleX(1)}.method-grid article{border:0!important;border-inline-start:1px solid #a3b28466!important;background:transparent!important;padding:28px!important}.method-grid article:nth-child(2){margin-top:40px}.method-grid article:nth-child(3){margin-top:80px}.photo-tile>button{animation:none!important}.photo-tile:hover img{transform:scale(1.035);transition:transform .7s}.photo-tile{overflow:hidden}.chapter-prelude,.screen-heading,.detail-cover{scroll-margin-top:110px}
@keyframes acquire-ring{to{rotate:360deg}}@keyframes trace-frame{from{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes single-impact{0%{transform:translateX(-25px);opacity:0}25%{transform:translateX(4px);opacity:1}100%{transform:none}}@keyframes title-impact{from{transform:scale(1.12);opacity:0;clip-path:inset(0 0 65%)}to{transform:none;opacity:1;clip-path:inset(0)}}
@media(max-width:900px){.map-screen .map-layout>aside{width:290px}.map-screen .map-stage-3d{inset:120px 310px 130px 0}html[dir=rtl] .map-screen .map-stage-3d{inset:120px 0 130px 310px}}
@media(max-width:800px){.map-screen>.screen-heading{position:relative;padding:25px 6%;top:auto;inset-inline-start:auto}.map-screen .tactical-map{height:65svh;min-height:490px;touch-action:pan-y}.map-screen .map-stage-3d,html[dir=rtl] .map-screen .map-stage-3d{inset:15px 15px 150px}.map-screen .map-hud{top:12px}.map-screen .map-layout>aside{position:relative;inset:auto;width:auto;max-height:none;margin:0 5% 25px}.map-screen .camera-telemetry{bottom:140px;font-size:10px;max-width:75%}.map-screen .camera-home{bottom:80px}.map-screen .map-zoom{bottom:80px;inset-inline-start:175px}.map-screen .camera-instructions{width:90%;bottom:20px;line-height:1.5}.map-screen .location-lock{bottom:62px;max-width:90%}.map-screen .map-scale{bottom:3px}.location-preview{display:none}.map-screen .map-city .map-label{font-size:19px!important}.location-evidence img{height:190px}.location-narrative[data-context=panorama] .location-evidence img{height:210px}.map-screen .map-info .map-file{display:none}.intro-title{font-size:42px;inset:36% 7% auto}.intro-source{bottom:100px;max-width:85%;font-size:11px}.intro-skip{bottom:35px;inset-inline-end:7%}.intro-coordinates{font-size:10px;letter-spacing:0;inset-inline-start:7%}.intro-date{bottom:26%;line-height:1.8}.intro-year{font-size:190px;top:20%}.history-stations{display:flex;overflow-x:auto;scroll-snap-type:x proximity}.history-station{flex:0 0 120px;scroll-snap-align:start}.method-grid article:nth-child(n){margin-top:0}.chapter-editorial{position:relative!important;inset:auto!important;padding:260px 6% 150px;max-width:none!important}.chapter-prelude{min-height:0!important;height:auto!important}.chapter-fragment{max-width:none}.chapter-begin{margin-bottom:0}.chapter-credit{bottom:80px}.chapter-location{top:40px}.chapter-registration{inset:10px}.replay-sequence{top:90px;font-size:11px}.campaign-opening .portrait-cut>span{display:none}.history-atmosphere{inset:0}.timeline-camera .time-stage h2{font-size:34px}}
@media(prefers-reduced-motion:reduce){.campaign-cold-open{display:none}.acquisition-ring,.intro-line,.intro-title{animation:none!important}.evidence-line-frame:before,.archive-connections:before{transform:none!important;transition:none}.photo-tile:hover img{transform:none}.history-atmosphere{display:none}}.motion-paused .acquisition-ring{animation:none!important}.motion-paused .evidence-line-frame:before,.motion-paused .archive-connections:before{transition:none}
@media(min-width:801px){.map-screen .tactical-map{height:calc(100svh - var(--header-height,88px));min-height:650px}.map-screen .map-layout>aside{top:160px;bottom:105px}.map-screen .camera-instructions{max-width:45%;font-size:11px}.map-screen .camera-telemetry{bottom:200px;max-width:40%}.map-screen .location-lock{bottom:150px}.map-screen .map-stage-3d{inset:100px 365px 160px 20px}html[dir=rtl] .map-screen .map-stage-3d{inset:100px 20px 160px 365px}.map-screen .camera-home,.map-screen .map-zoom{bottom:95px}.campaign-opening .story-cinema{height:calc(100svh - var(--header-height,88px))}.timeline-camera{top:var(--header-height,100px)!important}}
.screen,.chapter-prelude,.detail{scroll-margin-top:calc(var(--header-height,88px) + 15px)}
