/* Persistent GPU scene. Existing information pages and copy are unchanged. */
body.has-ocean{background:#01060b}
.ocean-scene.organism{position:fixed;inset:0;width:100%;height:100dvh;margin:0;z-index:0;pointer-events:none;overflow:hidden;isolation:isolate}
.ocean-scene canvas{position:absolute;inset:0;width:100%;height:100%;opacity:0;transition:opacity 1.5s ease}
.ocean-scene.ready canvas{opacity:1}
.ocean-scene .fallback{width:45%;height:55%;top:22%;left:45%;opacity:.22}
.ocean-scene .art-meta,.ocean-scene .art-caption{display:none}
.has-ocean>.site-header,.has-ocean>main,.has-ocean>.site-footer{position:relative;z-index:1}
.has-ocean .site-header{background:#01060b65;backdrop-filter:blur(16px)}
.has-ocean .hero{isolation:auto;overflow:visible;min-height:calc(100svh - 98px)}
.has-ocean .hero:before{display:none}
.has-ocean .hero-grid{grid-template-columns:1fr 1fr;width:min(calc(100% - 96px),1240px)}
.has-ocean .hero-copy{background:radial-gradient(ellipse at 25% 50%,#01060bb5,transparent 73%);padding:25px 0}
.has-ocean .capability-strip{background:#01060ba6;backdrop-filter:blur(12px)}
.has-ocean main>.section{background:linear-gradient(90deg,#01060beb,#01060b94 60%,#01060b7a)}
.has-ocean .site-footer{background:#01060bcc}
.ocean-scene .art-controls{position:fixed;bottom:24px;right:28px;left:auto;pointer-events:auto;background:#0b1822b8;z-index:10;border-color:#a7d9e02a;box-shadow:0 8px 30px #0005;gap:5px;padding:6px}
.ocean-scene .art-controls button{min-height:38px;padding:8px 14px;font-size:12px;letter-spacing:.02em;color:#b6ced1}
.ocean-scene .art-controls button[aria-pressed=true]{background:#c6eff213;color:#dbfafa}
.ocean-scene .art-controls button[data-immersive]{border-left:1px solid #b6e4e521;border-radius:0;padding-left:18px}
/* Keep controls above the page without raising the entire opaque canvas. */
.has-ocean .ocean-controls{position:fixed;bottom:24px;right:28px;z-index:30;display:flex;gap:5px;padding:6px;border:1px solid #a7d9e02a;border-radius:100px;background:#0b1822c9;backdrop-filter:blur(18px);box-shadow:0 8px 30px #0005}
.ocean-controls button{background:transparent;color:#c2d7dc;padding:8px 14px;font-size:12px;min-height:38px;border-radius:100px}
.ocean-controls button[aria-pressed=true]{background:#c6eff213;color:#e7ffff}
.ocean-controls button[data-immersive]{border-left:1px solid #b6e4e521;border-radius:0}
.scene-heading,.scene-depth,.scene-scroll-hint{display:none}
body.scene-focus{height:400vh}
.scene-focus>.site-header,.scene-focus>main,.scene-focus>.site-footer,.scene-focus>.cookie-banner{display:none!important}
.scene-focus .scene-heading{position:absolute;top:38px;left:42px;right:42px;display:flex;justify-content:space-between;gap:30px;font-size:12px;letter-spacing:.16em;color:#9cb4bd}
.scene-focus .scene-heading span:last-child{font-family:Georgia,serif;font-style:italic;letter-spacing:.025em;font-size:18px;color:#c4d1d8}
.scene-focus .scene-depth{position:absolute;left:42px;top:42%;display:flex;flex-direction:column;gap:20px;color:#789099;font:10px ui-monospace,monospace;letter-spacing:.14em}
.scene-depth i{display:block;height:100px;width:2px;background:linear-gradient(to bottom,#c6e9e1 0%,#c6e9e1 calc(var(--descent,0)*100%),#78909930 calc(var(--descent,0)*100%),#78909930 100%)}
.scene-focus .scene-scroll-hint{display:flex;position:absolute;bottom:42px;left:42px;color:#789099;font:10px ui-monospace,monospace;letter-spacing:.12em;gap:20px;align-items:center}
.scene-scroll-hint span{font-size:20px}
.scene-focus .ocean-scene .fallback{width:60%;left:20%;height:50%;top:25%}
@media(max-width:760px){.has-ocean .hero-grid{width:calc(100% - 40px);padding-top:45px}.has-ocean .hero{min-height:calc(100svh - 80px);align-items:flex-start}.has-ocean .hero-copy{max-width:540px}.has-ocean .hero h1{font-size:clamp(2.7rem,10vw,4.7rem)}.has-ocean .hero-copy>p{max-width:400px}.has-ocean .hero-note{margin-top:22px}.has-ocean .ocean-controls{bottom:15px;right:12px;left:12px;justify-content:center;gap:0}.ocean-controls button{font-size:11px;padding:8px 12px}.scene-focus .scene-heading{top:24px;left:22px;right:22px;font-size:10px}.scene-focus .scene-heading span:last-child{font-size:15px}.scene-focus .scene-depth{left:22px;top:24%;font-size:9px}.scene-focus .scene-scroll-hint{left:22px;bottom:86px}.has-ocean .ocean-scene .fallback{width:80%;height:45%;top:40%;left:10%}}
@media(prefers-reduced-motion:reduce){.ocean-scene canvas{transition:none}}
@media print{.ocean-scene,.ocean-controls{display:none!important}}

.scene-focus>.skip{display:none}

/* Three compute directions share a review surface, not a single recolored mesh. */
.version-selector{position:fixed;z-index:31;right:30px;bottom:92px;display:flex;gap:4px;padding:5px;border:1px solid #c6e8f221;border-radius:100px;background:#091521dc;backdrop-filter:blur(20px)}
.version-selector a{display:flex;align-items:center;gap:10px;padding:10px 18px;font-size:13px;color:#90a8ba;border-radius:100px;transition:background .2s,color .2s}
.version-selector a span{font:11px ui-monospace,monospace;opacity:.65}
.version-selector a:hover{color:#fff;background:#ffffff08}
.version-selector a[aria-current=true]{color:var(--scene-accent,#83f6d4);background:#d1eafa0d;box-shadow:inset 0 0 0 1px #c4e7f318}
.version-caption{display:none}
.compute-scene .scene-heading span:last-child{font-family:inherit;font-style:normal;font-size:12px;letter-spacing:.08em}
.compute-scene.scene-focus .version-selector{top:35px;bottom:auto;left:50%;right:auto;transform:translateX(-50%);background:#0a152366}
.compute-scene.scene-focus .scene-heading{top:49px}
.compute-scene.scene-focus .scene-heading span:last-child{display:none}
.compute-scene.scene-focus .version-caption{display:block;position:fixed;z-index:2;left:42px;bottom:100px;pointer-events:none;max-width:360px}
.version-kicker{display:block;font:10px ui-monospace,monospace;letter-spacing:.17em;color:var(--scene-accent);margin-bottom:13px}
.version-caption h1{font-size:32px;letter-spacing:-.04em;line-height:1.15;margin:0 0 12px;color:#edf7fb;font-weight:450}
.version-caption p{font-size:13px;line-height:1.6;color:#859daa;max-width:290px;margin:0}
.compute-scene .scene-depth{opacity:.55}
.compute-scene.scene-focus .scene-scroll-hint{color:#96acb8}
.compute-scene.scene-focus .ocean-controls{background:#0c162699}
.compute-scene .ocean-controls button[aria-pressed=true]{color:var(--scene-accent)}
.compute-scene.scene-focus{background:#07121d}
@media(max-width:1100px){.compute-scene.scene-focus .scene-heading>span:first-child{font-size:10px;max-width:130px}.compute-scene.scene-focus .version-caption{bottom:100px}.version-caption h1{font-size:28px}}
@media(max-width:760px){.version-selector{bottom:81px;right:12px;left:12px;justify-content:center}.version-selector a{padding:8px 13px;font-size:12px;gap:8px}.compute-scene.scene-focus .version-selector{top:67px;left:50%;bottom:auto;right:auto;white-space:nowrap}.compute-scene.scene-focus .scene-heading{top:25px;left:22px}.compute-scene.scene-focus .scene-heading>span:first-child{max-width:none}.compute-scene.scene-focus .version-caption{left:22px;bottom:120px;max-width:calc(100% - 44px)}.version-caption h1{font-size:27px}.version-caption p{font-size:12px;max-width:290px}.version-kicker{font-size:9px}.compute-scene .scene-depth{display:none!important}.compute-scene.scene-focus .scene-scroll-hint{bottom:86px;font-size:9px}}
@media print{.version-selector,.version-caption{display:none!important}}

/* The hero reads through the open center of the circle. */
.compute-scene .site-header{position:absolute;inset:0 0 auto;height:88px;background:linear-gradient(#020a1370,transparent);border:0;backdrop-filter:none;z-index:20}
.compute-scene .hero{min-height:100svh;display:block;padding:88px 0 60px}
.compute-scene .hero-grid{display:block;width:min(calc(100% - 40px),1240px);padding:0}
.compute-scene .hero-copy{max-width:none;padding:0;background:none;text-align:center}
.compute-scene .hero-core{min-height:390px;height:69svh;max-height:780px;display:flex;flex-direction:column;align-items:center;justify-content:center;margin:auto;width:100%}
.compute-scene .hero h1{font-size:clamp(2.5rem,4.4vw,4.8rem);max-width:600px;margin:0;line-height:1.08;text-shadow:0 3px 40px #0008}
.compute-scene .hero .eyebrow{font-size:12px;margin-bottom:20px;letter-spacing:.16em}
.compute-scene .hero-support{max-width:600px;margin:10px auto 0;padding:0 14px}
.compute-scene .hero-support>p{font-size:16px;line-height:1.7;max-width:550px;margin:0 auto;color:#c1d2df}
.compute-scene .hero .actions{justify-content:center;margin-top:22px}
.compute-scene .hero-note{justify-content:center;margin-top:25px}
.compute-scene main>.section{background:linear-gradient(90deg,#01060bad,#01060b24 80%,transparent);padding-top:150px;padding-bottom:150px}
.compute-scene .capability-strip{background:#01060b40;backdrop-filter:blur(8px)}
.compute-scene .card{background:#06101b99;backdrop-filter:blur(10px)}
.compute-scene .site-footer{padding-bottom:150px;background:#010409a0}
.compute-scene .ocean-scene .fallback{display:none}
.circle-fallback{position:absolute;left:var(--ring-x,50%);top:var(--ring-y,46%);width:var(--ring-size,65vmin);aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;border:2px solid var(--scene-accent);box-shadow:0 0 35px color-mix(in srgb,var(--scene-accent) 30%,transparent),inset 0 0 35px color-mix(in srgb,var(--scene-accent) 15%,transparent);opacity:.55}
.ready .circle-fallback{display:none}
.compute-scene .scene-depth{display:flex;position:absolute;left:28px;top:42%;flex-direction:column;gap:18px;color:#a2b8c7;font:12px ui-monospace,monospace;letter-spacing:.1em;opacity:.65}
.compute-scene .scene-dock{position:fixed;z-index:32;bottom:20px;left:50%;transform:translateX(-50%);display:flex;align-items:center;justify-content:center;gap:8px;width:max-content;max-width:calc(100% - 32px);padding:7px;border:1px solid #d2e8ff21;border-radius:25px;background:#06121ddb;backdrop-filter:blur(22px);box-shadow:0 12px 45px #0004}
.compute-scene .scene-dock .version-selector,.compute-scene.scene-focus .scene-dock .version-selector{position:static;transform:none;padding:0;border:0;background:none;backdrop-filter:none;gap:0}
.compute-scene .scene-dock .version-selector a{font-size:14px;padding:9px 13px;gap:8px}
.compute-scene .scene-dock .version-selector a span{font-size:12px}
.palette-picker{display:flex;flex-direction:column;gap:0;padding:0 12px;border-left:1px solid #d2e8ff21;border-right:1px solid #d2e8ff21}
.palette-picker>span{font-size:12px;color:#91aabb;line-height:1.2}
.palette-picker select{font-size:14px;margin:0;padding:0 18px 0 0;background:transparent;border:0;border-radius:0;width:190px;color:#d6e8f1;min-height:25px}
.palette-picker select option{background:#091624}
.compute-scene .scene-dock .ocean-controls{position:static;box-shadow:none;padding:0;border:0;border-radius:0;background:none;backdrop-filter:none;gap:0}
.compute-scene .scene-dock .ocean-controls button{font-size:14px;padding:9px 11px;white-space:nowrap}
.immersive-hero{display:none}
.scene-focus .immersive-hero{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;position:fixed;z-index:2;left:var(--ring-x,50%);top:var(--ring-y,46%);transform:translate(-50%,-50%);width:calc(var(--ring-size,65vmin)*.72);pointer-events:none}
.immersive-hero h1{font-size:clamp(2.2rem,4.4vw,4.8rem);line-height:1.08;text-shadow:0 4px 40px #0009}
.immersive-hero h1 em{font-style:normal;color:var(--scene-accent)}
.immersive-hero .eyebrow{font-size:12px;margin-bottom:18px}
.compute-scene.scene-focus .version-caption{bottom:110px;left:28px}
.version-caption h2{font-size:24px;line-height:1.15;letter-spacing:-.03em;margin-bottom:10px}
.version-kicker{font-size:12px}
.compute-scene.scene-focus .scene-scroll-hint{left:auto;right:28px;bottom:122px;font-size:12px}
@media(max-width:1050px){.compute-scene .scene-dock{flex-wrap:wrap;width:660px}.compute-scene .scene-dock .ocean-controls{justify-content:center}.compute-scene .scene-depth{left:16px;font-size:12px}.compute-scene.scene-focus .version-caption{bottom:155px}.compute-scene.scene-focus .scene-scroll-hint{bottom:155px}}
@media(max-width:760px){.compute-scene .hero{padding-top:78px;padding-bottom:55px}.compute-scene .hero-grid{width:calc(100% - 24px)}.compute-scene .hero-core{height:100vw;min-height:310px;max-height:600px}.compute-scene .hero h1{font-size:clamp(2rem,7.8vw,3.7rem);max-width:85%}.compute-scene .hero .eyebrow{font-size:12px;letter-spacing:.055em;margin-bottom:16px}.compute-scene .hero-support{margin-top:12px}.compute-scene .hero-support>p{font-size:16px}.compute-scene .hero .actions{gap:10px}.compute-scene .hero .button{font-size:14px;padding:12px 18px}.compute-scene .scene-dock{bottom:10px;max-width:calc(100% - 20px);gap:6px;border-radius:18px;padding:8px}.compute-scene .scene-dock .version-selector{width:100%;justify-content:center}.compute-scene .scene-dock .version-selector a{padding:6px 13px}.palette-picker{border:0;flex-direction:row;align-items:center;gap:8px;padding:0 8px}.palette-picker select{width:185px}.compute-scene .scene-dock .ocean-controls{width:100%;border-top:1px solid #d2e8ff17;padding-top:4px;flex-wrap:wrap}.compute-scene .scene-dock .ocean-controls button{padding:6px 10px;min-height:34px}.compute-scene.scene-focus .version-caption{display:none}.compute-scene.scene-focus .scene-scroll-hint{bottom:175px;right:22px}.scene-focus .immersive-hero h1{font-size:clamp(1.9rem,7.8vw,3.7rem)}.immersive-hero .eyebrow{font-size:12px;letter-spacing:.055em}.compute-scene main>.section{padding:100px 0}.compute-scene .site-footer{padding-bottom:200px}.compute-scene .cookie-banner{bottom:175px}}
@media(max-height:600px) and (min-width:761px){.compute-scene .hero-core{height:80svh;min-height:300px}.compute-scene .hero h1,.immersive-hero h1{font-size:2.6rem}}
@media print{.scene-dock,.immersive-hero,.circle-fallback{display:none!important}}
.abyss-finale{height:100svh;position:relative;pointer-events:none}
.scene-focus .abyss-finale{display:none}
@media print{.abyss-finale{display:none}}

/* Recycle the page at each swallow; the scene and depth persist across passes. */
.ocean-zone{position:fixed;z-index:21;top:112px;left:28px;width:245px;padding:17px 19px;border:1px solid #c5e5ee1c;border-radius:14px;background:#04101a9e;backdrop-filter:blur(12px);pointer-events:none;color:#b3c7d1;transition:opacity .35s}
.ocean-zone h2{font-size:20px;line-height:1.2;font-weight:500;margin:8px 0}
.ocean-zone p{font-size:14px;line-height:1.55;margin:0}
.ocean-zone .zone-fauna{font-size:12px;color:#8ca5b3;margin-top:10px}
.zone-meter{font:12px ui-monospace,monospace;color:var(--scene-accent)}
.descent-veil{position:fixed;inset:0;background:#000;opacity:0;z-index:90;pointer-events:none}
.zone-announcement{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.compute-scene .scene-dock{z-index:100}
.descent-finale .ocean-zone,.descent-finale .version-caption,.descent-finale .scene-depth,.descent-finale .scene-scroll-hint{opacity:0;pointer-events:none}
.descent-continue{display:none;pointer-events:auto;padding:14px 24px;border:1px solid #b5dbe94d;border-radius:100px;background:#0a1926;color:#d8edf5;font-size:16px}
.descent-still .descent-continue{display:block}
.abyss-finale{display:flex;align-items:center;justify-content:center}
.scene-focus.descent-still .abyss-finale{display:flex;position:absolute;top:320vh;left:0;width:100%;height:80vh}
@media(max-width:760px){.ocean-zone{top:87px;left:16px;width:auto;max-width:calc(100% - 32px);padding:10px 14px}.ocean-zone h2{font-size:16px;margin:4px 0}.ocean-zone .zone-fauna{display:none}.ocean-zone p{font-size:12px}.zone-meter{font-size:12px}.compute-scene .scene-depth{display:none!important}}
@media print{.ocean-zone,.descent-veil,.descent-continue{display:none!important}}

/* Timing tools stay usable through blackouts without covering the hero. */
.audio-panel{position:fixed;right:24px;top:108px;z-index:110;width:310px;color:#d5e8ef;font:12px/1.5 system-ui,sans-serif;border:1px solid #b9e3ed30;border-radius:16px;background:#05131dea;box-shadow:0 16px 60px #0005;backdrop-filter:blur(18px)}
.audio-panel:not([open]){width:auto;background:#071520ba}
.audio-panel summary{cursor:pointer;padding:12px 18px;letter-spacing:.04em;font-size:12px}
.audio-panel-body{padding:0 18px 18px;max-height:calc(100dvh - 230px);overflow:auto;overscroll-behavior:contain}
.audio-panel label{display:block;margin:12px 0;color:#a4bdc9;font-size:11px}
.audio-panel output{float:right;color:#e2f0f4;font-variant-numeric:tabular-nums}
.audio-panel input[type=range]{display:block;width:100%;margin:7px 0;accent-color:var(--scene-accent,#99d7de);cursor:ew-resize;min-height:20px}
.audio-panel select{display:block;width:100%;margin-top:5px;color:#d5e8ef;background:#12222d;border:1px solid #b9e3ed30;border-radius:7px;padding:8px;font:inherit}
.audio-actions{display:flex;gap:6px;flex-wrap:wrap}
.audio-panel button{cursor:pointer;color:#d5e8ef;background:#18313d;border:1px solid #b9e3ed30;border-radius:7px;padding:8px 10px;font:inherit}
.audio-panel button:hover{background:#284650}
.audio-panel :focus-visible{outline:2px solid var(--scene-accent,#99d7de);outline-offset:3px}
.audio-wave{position:relative;display:flex;align-items:center;gap:1px;height:33px;margin:16px 0 8px;overflow:hidden;border-bottom:1px solid #b9e3ed20}
.audio-wave i{flex:1;background:#6bafbc;opacity:.5;min-width:1px;border-radius:2px}
.audio-wave:after{content:'';position:absolute;left:var(--music-position,0%);top:0;bottom:0;width:2px;background:#eaf8f5;box-shadow:0 0 6px #b9f7ef}
.audio-status{font-size:10px;line-height:1.6;color:#9eb7c3;margin-bottom:0}
.preview-hold .descent-continue{display:block}
@media(max-width:760px){.audio-panel{top:auto;bottom:100px;right:12px;max-width:calc(100vw - 24px)}.audio-panel-body{max-height:calc(100dvh - 245px)}.audio-panel summary{padding:10px 14px}}
@media print{.audio-panel{display:none!important}}

.ocean-audio-toggle{position:fixed;right:22px;bottom:22px;z-index:120;display:flex;gap:10px;align-items:center;padding:13px 17px;min-height:48px;border:1px solid #b9e3ed42;border-radius:50px;background:#071b27e8;backdrop-filter:blur(16px);color:#c9e3eb;box-shadow:0 6px 28px #0006;cursor:pointer;font:12px/1.3 system-ui,sans-serif;letter-spacing:.04em}
.ocean-audio-toggle svg{height:20px;width:20px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.ocean-audio-toggle:hover{background:#18313d;border-color:#b9e3ed88}.ocean-audio-toggle:focus-visible{outline:2px solid var(--scene-accent,#99d7de);outline-offset:4px}
.ocean-audio-toggle .audio-waves,.ocean-audio-toggle.is-playing .audio-muted{display:none}.ocean-audio-toggle.is-playing .audio-waves{display:block}
.ocean-audio-toggle.is-playing{color:#c2f5e8;border-color:#9ee5d775}.ocean-audio-toggle:disabled{cursor:progress}
@media(max-width:760px){.ocean-audio-toggle{right:12px;bottom:12px;padding:11px 14px}.compute-scene .scene-dock{bottom:72px;box-sizing:border-box}}
@media print{.ocean-audio-toggle{display:none!important}}

@media(min-width:761px) and (max-width:900px){.compute-scene .scene-dock{bottom:82px}}

.encounter-active .descent-continue{display:none}
.scene-focus.preview-hold .abyss-finale{display:flex;position:absolute;top:320vh;width:100%;height:80vh}

/* A real readiness gate: no audio or journey clock until Enter. */
html.entry-pending{overflow:hidden}
.entry-screen{position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:24px;border:0;background:#030b13;color:#e1f3ee;z-index:10000;transition:opacity .7s ease,filter .7s ease}
.entry-screen::backdrop{background:#01060d}
.entry-screen[open]{display:grid;place-items:center}
.entry-content{text-align:center;max-width:420px}
.entry-logo{display:block;width:clamp(210px,32vw,300px);height:auto;object-fit:contain;margin:0 auto 32px;filter:drop-shadow(0 0 28px #72efdd2b)}
.entry-brand{font-size:13px;line-height:1.65;letter-spacing:.32em;margin:0 0 40px;color:#cce6e2}
.entry-status{font-size:12px;letter-spacing:.08em;color:#8ca9b3;min-height:22px}
.entry-button{display:block;min-width:180px;margin:24px auto 28px;padding:15px 36px;border:1px solid #71b8b779;border-radius:30px;background:#15343880;color:#e1fff4;font:inherit;font-size:13px;letter-spacing:.18em;cursor:pointer;transition:background .3s,box-shadow .3s,opacity .3s}
.entry-button:disabled{opacity:.35;cursor:progress}.entry-button:hover:not(:disabled){background:#25514d;box-shadow:0 0 28px #72efdd20}.entry-button:focus-visible{outline:2px solid #80ffdb;outline-offset:6px}
.entry-status:empty{display:none}
.entry-screen.is-leaving{opacity:0;filter:blur(8px);pointer-events:none}

@media(prefers-reduced-motion:reduce){.entry-logo{animation:none}.entry-screen{transition:none}}

.descent-veil.gentle-dissolve{background:#061018;backdrop-filter:blur(3px)}
.contact-arrival #organism{opacity:0;transition:opacity 1.6s ease,filter 1.6s ease}
.contact-arrival #contact{position:relative;z-index:60;min-height:100dvh;background:#061018;animation:contact-emerge 1.8s ease both;padding-top:120px}
.contact-arrival .scene-dock,.contact-arrival .ocean-zone,.contact-arrival .abyss-finale,.contact-arrival .audio-panel,.contact-arrival .ocean-audio-toggle{display:none}
.contact-arrival .descent-veil{opacity:0!important;transition:opacity 1.8s ease}
@keyframes contact-emerge{from{opacity:0;filter:blur(12px)}to{opacity:1;filter:blur(0)}}
@media(prefers-reduced-motion:reduce){.contact-arrival #contact{animation:none}.contact-arrival #organism{transition:none}}

body.has-ocean:not(.contact-arrival):not(.scene-failed) main>#contact{display:none}

.contact-arrival #contact:focus{outline:none}

.entry-audio{display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:10px 16px;border:0;background:transparent;color:#97b8bf;font:12px system-ui;cursor:pointer}
.entry-audio svg{width:20px;height:20px;stroke:currentColor;stroke-width:1.5;fill:none;stroke-linecap:round;stroke-linejoin:round}
.entry-audio:focus-visible{outline:2px solid #80ffdb;outline-offset:4px;border-radius:24px}
.entry-audio[aria-pressed=true] .entry-muted,.entry-audio[aria-pressed=false] .entry-waves{display:none}
.entry-screen.is-leaving::backdrop{background:transparent}
html.entry-pending body>main,html.entry-pending .site-header{opacity:0}
html.home-entering body>main,html.home-entering .site-header{animation:home-arrival 1.8s cubic-bezier(.2,.65,.3,1) both}
@keyframes home-arrival{0%,20%{opacity:0;transform:translateY(24px);filter:blur(6px)}100%{opacity:1;transform:none;filter:blur(0)}}
.scene-blending main,.scene-blending .ocean-zone{opacity:var(--scene-reveal,0);transition:none}
.contact-arrival .ocean-audio-toggle{display:flex}
.contact-arrival #organism{transition:none}
@media(prefers-reduced-motion:reduce){html.home-entering body>main,html.home-entering .site-header{animation:none}}

/* Timing tools remain available only in the explicit editing view. */
.audio-panel[hidden]{display:none!important}
