/* All new artwork, choreography and controls belong to the portable space root. */
[data-cinematic] { --world-color: #d6bc94; --tour-screen: 100svh; color: #edf0f5; }
[data-cinematic] [hidden] { display: none !important; }
[data-cinematic] button, [data-cinematic] a, [data-cinematic] select, [data-cinematic] summary { -webkit-tap-highlight-color: transparent; }
[data-cinematic] :is(button,a,select,summary):focus-visible { outline: 2px solid #f0d8ae; outline-offset: 5px; }
[data-cinematic] .space-caption { display: none; }
[data-cinematic] .cinema-visual, [data-cinematic] .cinema-hud, [data-cinematic] .cinema-toolbar, [data-cinematic] .cinema-navigation, [data-cinematic] .cinema-overview-spacer { display: none; }
[data-cinematic] .cinema-reading-scene { position: relative; min-height: 80svh; padding: 0; background: #090c14; isolation: isolate; scroll-margin-top: calc(var(--journey-header) + 20px); }
[data-cinematic] .cinema-reading-scene:nth-child(even) { background: #0d111a; }
[data-cinematic] .cinema-reading-picture, [data-cinematic] .cinema-static-picture { display: block; width: 100%; }
[data-cinematic] .cinema-reading-picture img, [data-cinematic] .cinema-static-picture img { display: block; width: 100%; max-height: 95svh; object-fit: cover; }
[data-cinematic] .cinema-reading-copy { position: relative; padding: clamp(35px,7vw,100px); max-width: 1000px; }
[data-cinematic] .cinema-reading-copy h2 { font: 400 clamp(28px,4vw,55px)/1.3 var(--font-display); margin: 14px 0 28px; }
[data-cinematic] .cinema-reading-copy h3 { font: 400 clamp(23px,3vw,36px)/1.3 var(--font-display); margin: 0 0 16px; }
[data-cinematic] .cinema-reading-copy p:not(.space-eyebrow) { color: #b8c1cf; font: 15px/1.8 var(--font-body); }
[data-cinematic] .cinema-reading-beat { position: relative; scroll-margin-top: calc(var(--journey-header) + 18px); }
[data-cinematic] .cinema-static-visual { position: relative; aspect-ratio: 1672/941; overflow: hidden; background: radial-gradient(ellipse at 50% 80%,#172331,#050810); }
[data-cinematic] .cinema-static-render, [data-cinematic] .cinema-static-visual picture, [data-cinematic] .cinema-static-construction, [data-cinematic] .cinema-static-flight { position: absolute; inset: 0; width: 100%; height: 100%; }
[data-cinematic] .cinema-static-visual picture img { width: 100%; height: 100%; max-height: none; object-fit: cover; }
[data-cinematic] .cinema-static-backing { z-index: 1; }
[data-cinematic] .cinema-static-construction { z-index: 2; }
[data-cinematic] .cinema-static-object { position: absolute; left: var(--x); top: var(--y); width: var(--w); height: var(--h); transform-origin: 50% 100%; }
[data-cinematic] .cinema-static-object[data-layer="rocket"] { z-index: 3; }
[data-cinematic] .cinema-static-object[data-layer="exhaust"] { z-index: 2; mix-blend-mode: screen; }
[data-cinematic] .cinema-static-object[data-layer="service-arm"] { transform-origin: 100% 50%; }
[data-cinematic] .cinema-static-flight img { position: absolute; width: 54%; height: 88%; object-fit: contain; left: var(--flight-x); top: var(--flight-y); transform: translate(-50%,-50%) scale(var(--flight-scale)) rotate(var(--flight-roll)); }
[data-cinematic] .cinema-static-passage { z-index: 3; }
@media (max-width:999px) and (orientation:portrait) {
  [data-cinematic] .cinema-static-visual { aspect-ratio: 941/1672; }
  [data-cinematic] .cinema-static-object { left: var(--portrait-x); top: var(--portrait-y); width: var(--portrait-w); height: var(--portrait-h); }
  [data-cinematic] .cinema-static-flight img { left: var(--flight-portrait-x); transform: translate(-50%,-50%) scale(var(--flight-portrait-scale)) rotate(var(--flight-portrait-roll)); }
}
[data-cinematic] .cinema-reading-copy ol { padding-left: 22px; color: #b8c1cf; font-size: 15px; line-height: 1.8; }
[data-cinematic] .cinema-reading-copy li { margin-bottom: 18px; padding-left: 10px; }
[data-cinematic] .cinema-reading-copy li strong { display: block; color: #e0d2bc; font-weight: 500; }
[data-cinematic] .cinema-reading-copy a { display: inline-flex; align-items: center; gap: 20px; min-height: 44px; color: #dfcaa9; font: 12px/1.5 var(--font-mono); margin-top: 20px; }
[data-cinematic] .cinema-reading-index { padding: 25px clamp(24px,6vw,100px); background: #0b0e16; }
[data-cinematic] .cinema-reading-index summary { color: #dfcaaa; min-height: 44px; cursor: pointer; font: 13px/44px var(--font-mono); }
[data-cinematic] .cinema-reading-index nav { display: flex; flex-wrap: wrap; gap: 10px 24px; padding: 12px 0 22px; }
[data-cinematic] .cinema-reading-index a { color: #bdc7d4; min-height: 44px; font: 12px/44px var(--font-mono); }
.journey-animated [data-cinematic].journey { height: auto; }
.journey-animated [data-cinematic] .journey-stage { height: 100svh; position: sticky; top: 0; overflow: clip; }
.journey-animated [data-cinematic] .cinema-story { margin-top: -100svh; pointer-events: none; }
.journey-animated [data-cinematic] .cinema-story::after { content: ''; display: block; height: var(--tour-screen); }
.journey-animated [data-cinematic] .cinema-overview-spacer { display: block; height: calc(var(--tour-screen) * 1.6); }
.journey-animated [data-cinematic] .cinema-reading-scene { height: calc(var(--scene-screens) * var(--tour-screen)); min-height: 0; background: none; visibility: hidden; }
.journey-animated [data-cinematic] .cinema-reading-copy, .journey-animated [data-cinematic] .cinema-reading-index { display: none; }
.journey-animated [data-cinematic] .cinema-reading-beat { display: none; }
.journey-animated [data-cinematic] .space-hero { z-index: 4; visibility: visible; transition: none; }
.journey-animated [data-cinematic] .space-hero[aria-hidden="true"] { pointer-events: none; }
.journey-animated [data-cinematic] .cinema-visual { display: block; position: absolute; inset: var(--journey-header) 0 0; z-index: 2; background: #080b13; pointer-events: none; }
[data-cinematic] .cinema-backdrop, [data-cinematic] .cinema-frame, [data-cinematic] .cinema-world, [data-cinematic] .cinema-art, [data-cinematic] .cinema-secondary, [data-cinematic] .cinema-foreground, [data-cinematic] .cinema-atmosphere, [data-cinematic] .cinema-shade, [data-cinematic] .cinema-construction, [data-cinematic] .cinema-occluder { position: absolute; inset: 0; width: 100%; height: 100%; }
[data-cinematic] .cinema-backdrop, [data-cinematic] .cinema-art, [data-cinematic] .cinema-secondary, [data-cinematic] .cinema-foreground, [data-cinematic] .cinema-construction img { object-fit: cover; }
[data-cinematic] .cinema-backdrop:not([src]), [data-cinematic] .cinema-art:not([src]) { visibility: hidden; }
[data-cinematic] .cinema-frame { overflow: clip; opacity: 0; isolation: isolate; }
[data-cinematic] .cinema-world { transform: translate(var(--camera-x,0),var(--camera-y,0)) scale(var(--camera-scale,1)); transform-origin: var(--focus-x,50%) var(--focus-y,50%); will-change: transform; }
[data-cinematic] .cinema-art { z-index: 0; }
[data-cinematic] .cinema-frame[data-framing="complete"] .cinema-art { object-fit: contain; }
[data-cinematic][data-framing="complete"] .cinema-backdrop { filter: blur(24px) brightness(.35); transform: scale(1.08); }
[data-cinematic] .cinema-secondary { z-index: 1; }
[data-cinematic] .cinema-construction { z-index: 3; }
[data-cinematic] .cinema-construction [data-earth-layer] { position: absolute; transform-origin: 50% 100%; }
[data-cinematic] .cinema-construction svg { display: block; width: 100%; height: 100%; overflow: hidden; }
[data-cinematic] .cinema-construction [data-earth-layer="rocket"] { z-index: 3; }
[data-cinematic] .cinema-construction [data-earth-layer="exhaust"] { z-index: 2; mix-blend-mode: screen; }
[data-cinematic] .cinema-construction [data-earth-layer="service-arm"] { transform-origin: 100% 50%; }
[data-cinematic] .cinema-foreground { z-index: 4; transform-origin: 50% 100%; }
[data-cinematic] .cinema-shade { z-index: 7; background: linear-gradient(180deg,#03070c4d,transparent 28%,transparent 60%,#04070b9c); }
[data-cinematic] .cinema-occluder { z-index: 6; pointer-events: none; opacity: 0; }
[data-cinematic] .cinema-frame[data-transition="occlude"] .cinema-occluder { background: linear-gradient(100deg,#03060b 0%,#060a0fe0 12%,transparent 36%); transform: translateX(calc(-110% + var(--phase) * 170%)); opacity: calc(.22 * var(--occlusion)); }
/* Doorway reveals use only the incoming frame mask. The outgoing full frame
   remains behind it; a direct chapter entry starts with the complete artwork. */
[data-cinematic] .cinema-frame[data-treatment="descent"] .cinema-world { transform: translate(var(--camera-x),calc(var(--camera-y) + var(--horizon) * .25)) scale(var(--camera-scale)); }
[data-cinematic] .cinema-frame[data-framing="complete"] .cinema-world { transform: translate(var(--camera-x),var(--camera-y)) scale(var(--camera-scale)); }
[data-cinematic] .cinema-frame[data-treatment="launch"] .cinema-atmosphere { background: radial-gradient(ellipse at 58% 77%,#ffc06745,transparent 30%); opacity: var(--ignition,0); }
[data-cinematic] .cinema-atmosphere { z-index: 5; opacity: .15; pointer-events: none; animation: cinema-breathe 12s ease-in-out infinite alternate; }
[data-cinematic] .cinema-frame[data-atmosphere="stars"] .cinema-atmosphere { background: radial-gradient(1px 1px at 23% 18%,#f6ddba,transparent),radial-gradient(1px 1px at 78% 39%,#e0e8ff,transparent),radial-gradient(1px 1px at 59% 76%,#f0dbba,transparent); }
[data-cinematic] .cinema-frame:is([data-atmosphere="clouds"],[data-atmosphere="haze"],[data-atmosphere="storm"],[data-atmosphere="ascent"]) .cinema-atmosphere { inset: -10%; width: 120%; height: 120%; background: radial-gradient(ellipse at 30% 62%,#c6b39b55,transparent 32%),radial-gradient(ellipse at 85% 33%,#b1bddb55,transparent 31%); transform: translate(calc(var(--phase) * -10%),calc(var(--phase) * 7%)); animation: cinema-haze 19s ease-in-out infinite alternate; opacity: .3; }
[data-cinematic] .cinema-frame[data-atmosphere="earth"] .cinema-atmosphere { background: radial-gradient(ellipse at 11% 18%,#f8d29542,transparent 60%); opacity: .16; }
[data-cinematic] .cinema-frame:is([data-atmosphere="embers"],[data-atmosphere="mars"],[data-atmosphere="heat"],[data-atmosphere="solar"]) .cinema-atmosphere { background: radial-gradient(2px 2px at 31% 78%,#ffc36a,transparent),radial-gradient(1px 1px at 69% 72%,#ffe3a1,transparent),radial-gradient(ellipse at 72% 86%,#f8943025,transparent 49%); opacity: .22; animation: cinema-embers 17s ease-in-out infinite alternate; }
[data-cinematic] .cinema-frame[data-atmosphere="ice"] .cinema-atmosphere { background: linear-gradient(115deg,transparent 20%,#9bd9ff13 42%,transparent 62%); opacity: .3; }
[data-cinematic] .cinema-frame[data-atmosphere="cave"] .cinema-atmosphere { background: conic-gradient(from 166deg at 64% 4%,transparent 0deg,#cce8ff28 5deg,transparent 20deg); opacity: .2; }
[data-cinematic] .cinema-frame[data-atmosphere="interior"] .cinema-atmosphere { background: radial-gradient(ellipse at 31% 45%,#eab36435,transparent 42%); opacity: .2; }
[data-cinematic] .cinema-frame[data-atmosphere="rings"] .cinema-atmosphere { background: repeating-linear-gradient(157deg,transparent 0px,transparent 80px,#edd6b313 81px,transparent 82px); opacity: .14; }
[data-cinematic] .cinema-flight { position: absolute; inset: 0; z-index: 4; overflow: clip; }
[data-cinematic] .cinema-flight-body { position: absolute; display: block; object-fit: contain; width: min(54vw,70vh); height: min(54vw,70vh); }
[data-cinematic] .cinema-flight-landscape { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: 5; }
[data-cinematic] .cinema-frame[data-treatment="flight"] .cinema-atmosphere { background: radial-gradient(ellipse at 72% 42%,var(--passage-color,#93a6c2),transparent 60%); opacity: var(--passage-glow,.1); animation: cinema-breathe 15s ease-in-out infinite alternate; }
.journey-animated [data-cinematic] .cinema-hud { display: block; position: absolute; inset: 0; z-index: 10; pointer-events: none; }
[data-cinematic] .cinema-caption { position: absolute; left: clamp(28px,6vw,112px); bottom: 126px; max-width: min(620px,65vw); text-shadow: 0 2px 25px #04070ec0; }
[data-cinematic] .cinema-caption .space-eyebrow { display: inline-block; font-size: 10px; color: var(--world-color); margin-bottom: 13px; padding: 4px 9px; margin-left: -9px; border-radius: 3px; background: #05091265; text-shadow: 0 1px 3px #000,0 0 12px #000b; }
[data-cinematic] .cinema-caption h2 { font: 400 clamp(27px,3.4vw,54px)/1.26 var(--font-display); letter-spacing: -.04em; margin: 0; }
[data-cinematic] .cinema-caption p:last-child { font: 12px/1.7 var(--font-mono); color: #c0c7d1; margin: 16px 0 0; }
[data-cinematic][data-active-scene="overview"] .cinema-caption { display: none; }
.journey-animated [data-cinematic][data-artwork-ready="false"] :is(.cinema-caption,.cinema-hotspots,.cinema-hotspot-detail) { visibility: hidden; pointer-events: none; }
.journey-animated [data-cinematic] .cinema-toolbar { display: flex; align-items: flex-start; gap: 8px; position: fixed; z-index: 14; top: calc(var(--journey-header) + 16px); right: 26px; }
.journey-animated [data-cinematic][data-framing="complete"] .cinema-toolbar { left: 26px; right: auto; }
[data-cinematic][data-framing="complete"] .cinema-menu-panel { left: 0; right: auto; }
[data-cinematic] .cinema-toolbar button, [data-cinematic] .cinema-toolbar summary { color: #d5c5ad; font: 10px/1.4 var(--font-mono); min-height: 44px; border: 1px solid #d5c5ad28; border-radius: 4px; padding: 12px 13px; background: #0a0f18bd; backdrop-filter: blur(12px); cursor: pointer; }
[data-cinematic] .cinema-destinations summary { list-style: none; display: flex; gap: 18px; align-items: center; }
[data-cinematic] .cinema-destinations summary::-webkit-details-marker { display: none; }
[data-cinematic] .cinema-destinations summary::after { content: '+'; font-size: 15px; }
[data-cinematic] .cinema-destinations[open] summary::after { content: '−'; }
[data-cinematic] .cinema-menu-panel { position: absolute; top: 51px; right: 0; width: min(680px,calc(100vw - 48px)); max-height: calc(100svh - var(--journey-header) - 110px); overflow: auto; padding: 23px; border: 1px solid #e0c29935; border-radius: 5px; background: #080e18f5; box-shadow: 0 14px 80px #0009; }
[data-cinematic] .cinema-menu-panel > p { font: 10px/1.6 var(--font-mono); letter-spacing: .12em; color: #9baabd; text-transform: uppercase; margin: 0 0 14px; }
[data-cinematic] .cinema-world-links { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 5px; }
[data-cinematic] .cinema-menu-panel a { display: flex; align-items: center; min-height: 44px; padding: 8px 10px; border: 1px solid transparent; color: #d0d7df; font: 11px/1.5 var(--font-mono); }
[data-cinematic] .cinema-menu-panel a:hover, [data-cinematic] .cinema-menu-panel a[aria-current] { color: #f5d7a8; border-color: #d5b88535; background: #eed3a70a; }
[data-cinematic] .cinema-local-scenes { display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid #b8c9de1c; margin-top: 17px; padding-top: 13px; }
[data-cinematic] .cinema-toolbar .motion-toggle { position: static; margin: 0; }
[data-cinematic] .cinema-audio-toggle { display: inline-flex; align-items: center; justify-content: center; gap: 7px; }
[data-cinematic] .cinema-audio-icon { position: relative; display: inline-block; font-size: 17px; line-height: 18px; width: 18px; }
[data-cinematic] .cinema-audio-toggle[aria-pressed="false"] .cinema-audio-icon::after { content: ''; position: absolute; left: 0; right: 0; top: 50%; border-top: 1px solid currentColor; transform: rotate(-45deg); }
[data-cinematic] .cinema-audio-toggle:disabled { opacity: .6; cursor: default; }
[data-cinematic] .cinema-toolbar [data-open-explorer] { display: inline-flex; align-items: center; gap: 8px; }
[data-cinematic][data-active-scene="overview"] .cinema-toolbar [data-open-explorer] { display: none; }
.journey-animated [data-cinematic] .cinema-navigation { display: flex; position: fixed; z-index: 13; bottom: 28px; left: 50%; transform: translateX(-50%); align-items: center; gap: 25px; color: #b9c3d1; min-height: 44px; padding: 4px 16px; border: 1px solid #c7ccd520; border-radius: 30px; background: #070c14c9; backdrop-filter: blur(15px); }
.journey-animated [data-cinematic][data-stage-active="false"] :is(.cinema-toolbar,.cinema-navigation) { visibility: hidden; pointer-events: none; }
[data-cinematic] .cinema-navigation a, [data-cinematic] .cinema-navigation button { color: inherit; background: none; border: 0; font: 10px/1.4 var(--font-mono); min-height: 44px; display: inline-flex; align-items: center; cursor: pointer; padding: 8px; white-space: nowrap; }
[data-cinematic] .cinema-count { color: #e4d0af; font: 10px/1.4 var(--font-mono); white-space: nowrap; }
[data-cinematic] .cinema-progress { position: absolute; left: 0; right: 0; bottom: 0; height: 2px; background: #d7c09918; z-index: 15; }
[data-cinematic] .cinema-progress::after { content: ''; position: absolute; inset: 0; background: #d7c099b0; transform-origin: 0 50%; transform: scaleX(var(--progress,0)); }
[data-cinematic] .cinema-loading { pointer-events: auto; position: absolute; left: 50%; top: 44%; transform: translate(-50%,-50%); width: max-content; max-width: 80%; padding: 20px 24px; border: 1px solid #d6c9b330; background: #070b14e8; border-radius: 5px; text-align: center; }
[data-cinematic] .cinema-loading strong { display: block; font: 14px/1.6 var(--font-mono); color: #e1d0b3; }
[data-cinematic] .cinema-loading span { display: block; font: 12px/1.8 var(--font-body); color: #b7c1ce; margin-top: 7px; }
[data-cinematic] .cinema-loading button { min-height: 44px; color: #ead2a7; background: none; border: 0; border-bottom: 1px solid #ead2a744; margin-top: 9px; font: 11px/1.4 var(--font-mono); cursor: pointer; }
[data-cinematic] .cinema-hotspots { position: absolute; inset: 0; pointer-events: none; }
[data-cinematic] .cinema-hotspot { position: absolute; width: 44px; height: 44px; transform: translate(-50%,-50%); border: 0; border-radius: 50%; color: #eee0c6; background: transparent; cursor: pointer; pointer-events: auto; font: 18px/1 var(--font-mono); }
[data-cinematic] .cinema-hotspot > span:first-child { display: grid; place-items: center; width: 23px; height: 23px; margin: auto; border: 1px solid #f6e1bd8c; border-radius: 50%; background: #0c12168f; box-shadow: 0 0 15px #0007; transition: transform .2s; }
[data-cinematic] .cinema-hotspot:hover > span:first-child, [data-cinematic] .cinema-hotspot[aria-expanded="true"] > span:first-child { transform: scale(1.18); background: #2c2b23db; }
[data-cinematic] .cinema-hotspot-label { opacity: 0; position: absolute; left: 50%; bottom: 46px; transform: translateX(-50%); white-space: nowrap; color: #eedcbc; font: 10px/1.5 var(--font-mono); padding: 5px 8px; border-radius: 3px; background: #080d16e3; pointer-events: none; }
[data-cinematic] .cinema-hotspot:is(:hover,:focus-visible) .cinema-hotspot-label { opacity: 1; }
[data-cinematic] .cinema-hotspot-detail { position: absolute; right: 28px; bottom: 117px; width: min(290px,calc(100% - 56px)); padding: 19px 44px 17px 19px; pointer-events: auto; border: 1px solid #d6c09c40; border-radius: 4px; background: #080e18ea; backdrop-filter: blur(12px); }
[data-cinematic] .cinema-hotspot-detail strong { color: #ecd5ae; font: 12px/1.6 var(--font-mono); }
[data-cinematic] .cinema-hotspot-detail p { color: #bbc4cf; font: 12px/1.7 var(--font-body); margin: 10px 0 0; }
[data-cinematic] .cinema-hotspot-detail button { position: absolute; top: 1px; right: 0; min-width: 44px; min-height: 44px; background: none; border: 0; color: #c9d0d9; font-size: 20px; cursor: pointer; }
[data-cinematic] .cinema-ending { display: flex; pointer-events: auto; gap: 22px; margin-top: 22px; }
[data-cinematic] .cinema-ending a, [data-cinematic] .cinema-ending button { color: #e7cea5; font: 11px/1.4 var(--font-mono); min-height: 44px; display: inline-flex; align-items: center; border: 0; border-bottom: 1px solid #e7cea544; background: none; padding: 0; cursor: pointer; }
[data-cinematic] .journey-stage[data-ambient="paused"] .cinema-atmosphere { animation-play-state: paused; }
.journey-static [data-cinematic] .space-hero { opacity: 1 !important; }
.journey-static [data-cinematic] .cinema-toolbar { display: flex; position: fixed; right: 20px; bottom: 22px; top: auto; z-index: 15; gap: 8px; }
.journey-static [data-cinematic] .cinema-toolbar .cinema-life-toggle { display: none; }
.journey-static [data-cinematic] .cinema-menu-panel { top: auto; bottom: 51px; }
@keyframes cinema-breathe { from { filter: brightness(.88); } to { filter: brightness(1.12); } }
@keyframes cinema-haze { from { translate: -1% 0; } to { translate: 1.4% -.6%; } }
@keyframes cinema-embers { from { translate: 0 0; } to { translate: -.4% -1%; } }
@media (max-width:999px) {
  .journey-animated [data-cinematic] .cinema-toolbar { top: calc(var(--journey-header) + 9px); right: 14px; left: 14px; justify-content: flex-end; gap: 6px; }
  [data-cinematic] .cinema-toolbar button, [data-cinematic] .cinema-toolbar summary { font-size: 9px; padding: 11px 10px; }
  [data-cinematic] .cinema-toolbar .cinema-life-toggle { display: none; }
  [data-cinematic] .cinema-caption { left: 26px; bottom: 108px; max-width: calc(100% - 52px); }
  [data-cinematic] .cinema-caption h2 { font-size: clamp(25px,5.4vw,43px); }
  [data-cinematic] .cinema-caption p:last-child { font-size: 10px; }
  [data-cinematic] .cinema-caption .space-eyebrow { font-size: 9px; }
  [data-cinematic] .cinema-navigation { gap: 14px; bottom: 18px; max-width: calc(100% - 24px); }
  [data-cinematic] .cinema-world-links { grid-template-columns: repeat(3,minmax(0,1fr)); }
  [data-cinematic] .cinema-menu-panel { width: calc(100vw - 28px); padding: 17px; }
  [data-cinematic] .cinema-hotspot-detail { right: 20px; bottom: 210px; }
  [data-cinematic] .cinema-flight img { width: 76vw; height: 76vw; }
  [data-cinematic] .cinema-flight-from { left: -36%; top: 42%; }
  [data-cinematic] .cinema-flight-to { right: -8%; top: 26%; }
  [data-cinematic] .cinema-construction img { object-fit: contain; }
  [data-cinematic][data-active-scene="overview"] .cinema-toolbar { top: auto; bottom: 90px; }
  [data-cinematic][data-active-scene="overview"] .cinema-menu-panel { top: auto; bottom: 51px; }
  [data-cinematic] .body-inspection { min-height: 104px; }
  .journey-animated [data-cinematic] .body-inspection { position: fixed; top: auto; bottom: calc(84px + env(safe-area-inset-bottom)); max-height: calc(100svh - var(--journey-header) - 110px); overflow-y: auto; }
  .journey-animated [data-cinematic][data-inspected-body] .cinema-toolbar { top: auto; bottom: calc(20px + env(safe-area-inset-bottom)); }
  .journey-animated [data-cinematic] .scroll-cue { bottom: 151px; }
}
@media (max-width:600px) {
  [data-cinematic] .cinema-audio-toggle .cinema-audio-label, [data-cinematic] .cinema-toolbar [data-open-explorer] span { display: none; }
  [data-cinematic] .cinema-toolbar .cinema-audio-toggle, [data-cinematic] .cinema-toolbar [data-open-explorer] { min-width: 44px; width: 44px; padding-inline: 8px; }
  [data-cinematic] .cinema-navigation { gap: 10px; padding-inline: 10px; }
  [data-cinematic] .cinema-navigation a, [data-cinematic] .cinema-navigation button { font-size: 9px; }
  [data-cinematic] .cinema-menu-panel a { font-size: 10px; }
  [data-cinematic] .cinema-local-scenes { grid-template-columns: 1fr; }
  [data-cinematic] .cinema-caption h2 { font-size: clamp(23px,6.6vw,36px); }
  [data-cinematic] .cinema-caption { bottom: 102px; }
  [data-cinematic] .cinema-caption p:last-child { max-width: 29ch; }
  [data-cinematic] .cinema-ending { gap: 17px; margin-top: 12px; }
  [data-cinematic] .cinema-ending a, [data-cinematic] .cinema-ending button { font-size: 9px; }
}
@media (max-height:600px) and (orientation:landscape) {
  .journey-animated [data-cinematic] .cinema-toolbar { top: calc(var(--journey-header) + 6px); right: 15px; left: auto; }
  [data-cinematic] .cinema-caption { bottom: 78px; left: 27px; max-width: 60%; }
  [data-cinematic] .cinema-caption h2 { font-size: 26px; }
  [data-cinematic] .cinema-caption .space-eyebrow { margin-bottom: 6px; }
  [data-cinematic] .cinema-caption p:last-child { margin-top: 7px; }
  [data-cinematic] .cinema-navigation { bottom: 9px; }
  [data-cinematic] .cinema-hotspot-detail { right: 18px; bottom: 77px; }
  [data-cinematic] .cinema-foreground { display: none; }
  [data-cinematic][data-active-scene="overview"] .cinema-toolbar { bottom: 64px; }
  .journey-animated [data-cinematic] .scroll-cue { bottom: 61px; }
}
@media (prefers-reduced-motion:reduce) {
  [data-cinematic] .cinema-atmosphere { animation: none; }
}
