.story-ocean-sequence{position:relative;background:#000}
.home-page .story-ocean-sequence .emotion-hero{background:#000}
.home-page .story-ocean-sequence .emotion-hero .hero-copy:before{background:linear-gradient(90deg,#000000e6,#000000a8 60%,transparent)}
.home-page .story-ocean-sequence #resonance-canvas{opacity:0}
.scene-navigation{position:absolute;inset:0;z-index:4;pointer-events:none}
.scene-navigation-viewport{position:absolute;inset:0}
.story-ocean-sequence[data-shared=true] .scene-navigation-viewport{opacity:var(--handoff-copy,1)}
.home-page .scene-arrow{position:absolute;top:calc(50% - 32px);width:64px;height:64px;padding:0;display:grid;place-items:center;border:0;border-radius:50%;background:radial-gradient(ellipse,#09131eb8,transparent 72%);color:#f3e5cd;pointer-events:auto;cursor:pointer;transition:background .25s,opacity .25s;touch-action:manipulation}
.scene-arrow-back{left:0}.scene-arrow-forward{right:0}
.scene-arrow svg{width:64px;height:54px;overflow:visible;pointer-events:none;stroke:none}
.scene-arrow-back svg{transform:scaleX(-1)}
.scene-arrow .arrow-form{filter:drop-shadow(0 0 3px #efb77750);animation:arrow-breath 4.8s ease-in-out infinite}
.scene-arrow .arrow-ball{transform-box:fill-box;transform-origin:center}
.scene-arrow .arrow-wind circle{animation:arrow-drift 3.6s ease-in-out infinite;animation-delay:var(--delay,0s);opacity:0}
.home-page .scene-arrow:hover,.home-page .scene-arrow:focus-visible{background:radial-gradient(ellipse,#263c47ad,transparent 73%)}
.scene-arrow:hover .arrow-form,.scene-arrow:focus-visible .arrow-form{filter:drop-shadow(0 0 5px #ffc67780)}
.scene-arrow:hover .arrow-ball,.scene-arrow:focus-visible .arrow-ball{animation:arrow-gather .8s cubic-bezier(.2,.8,.2,1) both;animation-delay:var(--delay,0s)}
.scene-arrow:hover .arrow-wind circle,.scene-arrow:focus-visible .arrow-wind circle{animation-duration:1.8s}
.home-page .scene-arrow:focus-visible{outline:1px solid #ffdab5;outline-offset:2px}
.home-page .scene-arrow:disabled{opacity:.3;cursor:default}
.scene-arrow:disabled .arrow-form,.scene-arrow:disabled .arrow-wind circle,.emotion-hero[inert] .arrow-form,.emotion-hero[inert] .arrow-wind circle{animation-play-state:paused}
@keyframes arrow-breath{0%,100%{transform:translateX(0);opacity:.85}50%{transform:translateX(2px);opacity:1}}
@keyframes arrow-drift{0%{transform:translate(0,0);opacity:0}22%{opacity:.6}70%{opacity:.8}100%{transform:translate(19px,var(--drift,0px));opacity:0}}
@keyframes arrow-gather{from{transform:translate(var(--scatter-x,-5px),var(--scatter-y,0px)) scale(.6);opacity:.25}to{transform:translate(0,0) scale(1);opacity:1}}
@media(max-width:680px){.scene-arrow-back{left:0}.scene-arrow-forward{right:0}.home-page .scene-arrow{top:calc(58% - 28px);width:60px;height:56px}.scene-arrow svg{width:60px;height:52px}}
/* Character controls belong to page two only; the ocean journey stays unchanged. */
.story-ocean-sequence[data-phase=journey] .scene-navigation,.story-ocean-sequence[data-phase=settle] .scene-navigation{visibility:hidden}
.particle-bridge-layer{display:none}
.story-ocean-sequence[data-shared=true]{isolation:isolate;background:#000}
.story-ocean-sequence[data-shared=true] .particle-bridge-layer{display:block;position:absolute;inset:0;pointer-events:none;z-index:1}
.particle-bridge-viewport{position:sticky;top:0;height:100svh;overflow:hidden;pointer-events:none}
.particle-bridge-viewport:before{content:none}
.bridge-caption{position:absolute;bottom:34px;left:0;width:100%;text-align:center;font:12px/1.5 var(--type-reading);letter-spacing:.06em;color:#c1cfce;opacity:var(--bridge-caption,0);margin:0;pointer-events:none}
.particle-bridge-viewport #dancer-canvas{position:absolute;left:0;width:100%;pointer-events:none;touch-action:pan-y}
.home-page .story-ocean-sequence[data-shared=true] .emotion-hero,.home-page .story-ocean-sequence[data-shared=true] .ocean-listening{background:transparent;isolation:auto;overflow:visible}
.home-page .story-ocean-sequence[data-shared=true] .emotion-hero{position:sticky;top:min(0px,calc(100svh - var(--character-block-height,100svh)));z-index:2}
.home-page .story-ocean-sequence[data-shared=true] .emotion-hero[inert]{pointer-events:none}
.story-ocean-sequence[data-shared=true] .ocean-arrival{position:relative;margin-top:65svh;padding-top:115svh}
.home-page .story-ocean-sequence[data-shared=true] .ocean-listening{margin-top:0}
.story-ocean-sequence[data-shared=true] #ocean-canvas{opacity:0;z-index:0}
.story-ocean-sequence[data-shared=true] .hero-copy,.story-ocean-sequence[data-shared=true] .hero-bottom,.story-ocean-sequence[data-shared=true] .hero-overline,.story-ocean-sequence[data-shared=true] .quiet-controls{opacity:var(--handoff-copy,1)}
.story-ocean-sequence[data-shared=true] .hero-bottom,.story-ocean-sequence[data-shared=true] .hero-overline,.story-ocean-sequence[data-shared=true] .quiet-controls{z-index:2}
.story-ocean-sequence[data-shared=true] .ocean-heading,.story-ocean-sequence[data-shared=true] .ocean-player,.story-ocean-sequence[data-shared=true] .ocean-footer{position:relative;z-index:2}
.story-ocean-sequence[data-shared=true] .ocean-heading,.story-ocean-sequence[data-shared=true] .ocean-player,.story-ocean-sequence[data-shared=true] .ocean-footer{opacity:var(--ocean-copy,0)}
.story-ocean-sequence[data-shared=true] .scene-thread{visibility:hidden}
@media(prefers-reduced-motion:reduce){.particle-bridge-layer{display:none!important}}

@media(prefers-reduced-motion:reduce){.scene-arrow .arrow-form,.scene-arrow .arrow-ball,.scene-arrow .arrow-wind circle{animation:none!important}.scene-arrow .arrow-wind circle{opacity:.4}.home-page .scene-arrow{transition:none}}
