/* Page-length geometry: it belongs to the document, never the viewport. */
body{position:relative;isolation:isolate;min-height:100vh}
#app,#interactive-app{position:relative;z-index:1}
.ambient-scene{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0;contain:strict;background:radial-gradient(ellipse at 0 8%,#81705b09,transparent 28%),radial-gradient(ellipse at 100% 60%,#768c7c08,transparent 25%)}
.ambient-panel{position:absolute;left:0;width:100%;display:block;pointer-events:none;z-index:2}
.product-motion-slot{display:none}
body[data-product-motion-stage="true"] .ambient-fallback{display:none}
@media(max-width:820px){
    .product-motion-slot{display:block;position:relative;height:clamp(500px,140vw,680px);width:calc(100% + 50px);margin:24px -25px 0;overflow:hidden;pointer-events:none;isolation:isolate}
    body:not(.motion-study) .product-motion-slot .ambient-panel{opacity:1}
}
@media(max-width:560px){.product-motion-slot{width:calc(100% + 44px);margin-inline:-22px}}
@media(max-width:360px){.product-motion-slot{width:calc(100% + 36px);margin-inline:-18px}}
.ambient-scene::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background-image:var(--absence-grain,none),var(--absence-field,none);background-size:192px 192px,1536px 2304px;background-repeat:repeat;opacity:.84}
.absence-residue{position:absolute;z-index:1;width:430px;height:310px;pointer-events:none;transform:translate(-50%,-50%) rotate(var(--scar-angle));background:radial-gradient(ellipse at 45% 52%,#020303c7,transparent 58%),radial-gradient(ellipse at 25% 43%,#aaa08a16,transparent 34%),radial-gradient(ellipse at 76% 61%,#81928813,transparent 40%);filter:blur(11px);animation:absence-residue 23s ease-out both}
@keyframes absence-residue{0%{opacity:0;scale:.82}12%{opacity:.7}45%{opacity:.38}100%{opacity:0;scale:1.19}}
body[data-ambient-paused="true"] .absence-residue,body[data-ambient-hidden="true"] .absence-residue{animation-play-state:paused}
.ambient-fallback{position:absolute;left:0;top:0;width:100%;height:1100px;opacity:.17}
.ambient-scene[data-geometry="ready"] .ambient-fallback{display:none}
.ambient-scene[data-theme="z"] .ambient-fallback{display:none}
[data-z-credits][hidden]{display:none!important}
.listening-section,.session-section{background:rgba(17,21,16,.68)}
.site-footer{background:rgba(16,19,15,.93)}
.status-dot{animation:ambient-breath 4.8s ease-in-out infinite}
.motion-toggle{appearance:none;background:none;border:0;padding:0;color:inherit;font:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.motion-toggle:disabled{cursor:default;text-decoration:none}
body:not([data-ambient-paused]) .status-dot,body[data-ambient-paused="true"] .status-dot,body[data-ambient-hidden="true"] .status-dot{animation-play-state:paused!important}
body[data-ambient-quiet="true"] .ambient-scene{visibility:hidden}
@keyframes ambient-breath{0%,100%{transform:scale(1);opacity:.6}50%{transform:scale(1.35);opacity:1}}
@media(max-width:699px){body:not(.motion-study) .ambient-panel{opacity:.78}.ambient-scene::before{opacity:.62;background-size:160px 160px,1152px 1728px}.absence-residue{width:min(82vw,340px);height:240px;filter:blur(8px)}}
@media(pointer:coarse) and (min-width:700px) and (max-width:1099px){body:not(.motion-study) .ambient-panel{opacity:.78}.absence-residue{width:340px;height:240px;filter:blur(8px)}}
@media(prefers-reduced-motion:reduce){.status-dot{animation:none!important}.absence-residue{display:none}.ambient-scene{opacity:.7}html{scroll-behavior:auto}}
@media print{.ambient-scene,.motion-toggle{display:none}}

@media(pointer:coarse) and (min-width:821px) and (max-width:1099px){
 .product-motion-slot{display:block;position:relative;height:clamp(500px,140vw,680px);width:calc(100% + 70px);margin:24px -35px 0;overflow:hidden;pointer-events:none;isolation:isolate}
 body:not(.motion-study) .product-motion-slot .ambient-panel{opacity:1}
}
