/* One native scroll surface; scrolling changes the camera, never fights it. */
html:has(body.immersive){scroll-behavior:auto;scroll-padding-top:0;overflow-anchor:none}
.journey-plane{display:contents}
.immersive .journey-content{overflow-anchor:none}
@media(max-width:700px){
 .immersive .journey-frame{position:relative}
 .immersive .journey-plane{display:block;position:sticky;top:0;height:0}
 .immersive .journey-content{position:relative;inset:auto;top:0;width:100%;height:auto;min-height:100svh;max-height:none;overflow:visible;transform:translateY(var(--mobile-content-y,0px))!important}
 .immersive .hero.white-cover{min-height:100svh}
 .immersive .access{min-height:100svh}
 .immersive .journey-content:has(input:focus){scroll-margin-top:90px}
 .immersive.journey-end footer{position:relative;bottom:auto;background:var(--stage-surface);padding-bottom:calc(64px + env(safe-area-inset-bottom));margin:0}
}
@media(hover:none) and (orientation:landscape) and (max-height:500px){
 .immersive .journey-frame{position:relative}
 .immersive .journey-plane{display:block;position:sticky;top:0;height:0}
 .immersive .journey-content.world-anchored,.immersive .journey-content{position:relative;inset:auto;top:0;min-height:100svh;height:auto;max-height:none;overflow:visible;transform:translateY(var(--mobile-content-y,0px))!important}
}
