/* Quiet transport, with a single horizontal story line. */
.scene-player{position:fixed;left:4vw;right:4vw;bottom:max(20px,env(safe-area-inset-bottom));height:48px;z-index:32;color:#78638b}
.player-actions{display:flex;justify-content:center;gap:12px;position:absolute;left:50%;bottom:9px;transform:translateX(-50%)}
.player-actions button{display:grid;place-items:center;width:38px;height:36px;min-height:36px;padding:9px;border:0;background:none;box-shadow:none;color:#8e799e;cursor:pointer;border-radius:0}
.player-actions button svg{width:16px;height:16px;fill:currentColor}
.player-actions button[aria-pressed="true"]{color:#554164}.player-actions button:hover{color:#554164}
.player-actions button:focus-visible,#sound-toggle:focus-visible{outline:2px solid #927aa5;outline-offset:2px}
.player-track{position:absolute;left:0;right:0;bottom:0;height:2px;background:#9c87ad36;overflow:hidden;border-radius:1px}
.player-track>span{display:block;width:0;height:100%;background:#8b70a0;will-change:width}
#sound-toggle{position:absolute;right:0;bottom:10px;min-height:32px;padding:8px 0 8px 14px;border:0;background:none;box-shadow:none;color:#887594;font:inherit;font-size:9px;letter-spacing:.08em;cursor:pointer}
.stage-navigation{position:fixed;inset:0;pointer-events:none;display:block;z-index:31}
.stage-navigation button{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:52px;padding:0;border:0;border-radius:0;background:none!important;box-shadow:none;backdrop-filter:none;color:#806b91;font-size:25px;font-weight:300;pointer-events:auto;transition:opacity .2s,color .2s}
.stage-navigation button:first-child{left:10px}.stage-navigation button:last-child{right:10px}
.stage-navigation button:disabled{opacity:.2}.stage-navigation button:hover:not(:disabled){color:#4d3a60}
.navigation-hint{display:none}.ocean-controls{visibility:hidden;pointer-events:none}
.ocean-instruction{bottom:64px}
@media(max-width:650px){
 .scene-player{left:22px;right:22px;bottom:max(17px,env(safe-area-inset-bottom));height:45px}
 .player-actions{gap:8px;bottom:7px}.player-actions button{width:40px;height:36px;min-height:36px}
 #sound-toggle{bottom:8px;font-size:8px}.stage-navigation button{top:42%;width:30px;height:48px;font-size:23px}
 .stage-navigation button:first-child{left:0}.stage-navigation button:last-child{right:0}
 /* Keep the title word above the portraits, as in the original composition. */
 #intro .back-word{top:174px;left:22px;font-size:11.5vw;line-height:.9;letter-spacing:-.065em}
 #intro .scene-visual-slot{top:237px;height:clamp(130px,calc(100svh - 610px),220px)}
}
@media(max-width:650px) and (max-height:740px){
 #intro .back-word{top:152px}
 #intro .scene-visual-slot{top:212px;height:140px}
 #intro .scene-visual-slot>span{display:none}
}
@media(prefers-reduced-motion:reduce){.stage-navigation button{transition:none}}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .chapter.scene-active .draw-title{translate:calc(var(--cursor-x,0)*-7px) calc(var(--cursor-y,0)*-5px)}
 .chapter.scene-active .back-word{translate:calc(var(--cursor-x,0)*-15px) calc(var(--cursor-y,0)*-9px)}
 .chapter.scene-active .copy>.eyebrow,.chapter.scene-active .copy>p:not(.eyebrow){translate:calc(var(--cursor-x,0)*-3px) calc(var(--cursor-y,0)*-2px)}
 .brand img{transition:transform .45s cubic-bezier(.2,.7,.2,1)}.brand:hover img{transform:translateY(-2px) rotate(-2deg)}
 .chapter .primary,.chapter .outline{transition:transform .3s ease,box-shadow .3s ease,background .2s}
 .chapter .primary:hover,.chapter .outline:hover{transform:translateY(-3px);box-shadow:0 12px 24px #65507720}
 .chapter .primary>span,.chapter .outline>span{display:inline-block;transition:transform .3s}.chapter .primary:hover>span,.chapter .outline:hover>span{transform:translate(3px,-3px)}
}
.motion-paused .chapter .draw-title,.motion-paused .chapter .back-word,.motion-paused .chapter .copy>p{translate:none!important}
#story-speed{display:flex;align-items:center;justify-content:center;gap:3px;width:48px;padding:5px 0}
#story-speed>span{font-size:21px;line-height:1;font-weight:300}#story-speed>small{position:static;display:inline;margin:0;padding:0;font:inherit;font-size:8px;line-height:1;letter-spacing:0}
