/* Shared mechanics; the visual identity belongs to each page. */
.fx-stage{position:relative;isolation:isolate;overflow:hidden;touch-action:pan-y;contain:layout paint}.fx-webgl,.fx-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;pointer-events:none}.fx-webgl{z-index:1;opacity:0;transition:opacity 1s}.fx-ready>.fx-webgl{opacity:1}.fx-canvas{z-index:2}.fx-stage::after{content:'';position:absolute;inset:15%;border:1px solid currentColor;opacity:.1;border-radius:50%;transform:rotate(-24deg) scaleY(.6);transition:opacity .5s;pointer-events:none}.fx-stage.fx-ready::after{opacity:0}.fx-stage.fx-ready>.fx-placeholder{opacity:0}.page-progress{position:fixed;left:0;right:0;top:0;height:2px;background:var(--accent,#ff6339);transform:scaleX(0);transform-origin:left;z-index:100;pointer-events:none}.experience-dock{position:fixed;bottom:17px;right:20px;display:flex;align-items:center;gap:15px;border:1px solid #ffffff2b;border-radius:3px;padding:11px 13px;background:#111914e8;color:#f5f4df;z-index:18;box-shadow:0 4px 18px #0002;backdrop-filter:blur(14px)}.experience-dock>span{font:8px/1 Arial,sans-serif;letter-spacing:1.1px;display:flex;align-items:center;gap:7px;color:#b9c6b3}.experience-dock>span i{width:4px;height:4px;background:#c7e9af;border-radius:50%;box-shadow:0 0 8px #bfee9266}.experience-dock .motion-toggle{font-size:10px;letter-spacing:0;border-left:1px solid #fff3;padding-left:13px}.motion-paused .experience-dock>span i{background:#8d9688;box-shadow:none}.site-header{backdrop-filter:blur(16px)}.site-header nav a{position:relative}.site-header nav a::after{content:'';height:1px;position:absolute;left:0;right:0;bottom:-10px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .35s}.site-header nav a:hover::after,.site-header nav a.active::after{transform:scaleX(1);transform-origin:left}.site-header nav a.active::before{display:none}.site-footer{padding-bottom:85px}.privacy-fx-band{position:relative;display:grid;grid-template-columns:1fr 210px;align-items:center;border-bottom:1px solid #bdc8b6;padding-bottom:30px;margin-bottom:35px}.privacy-fx-band .fx-stage{height:180px;color:#657763}.privacy-fx-band h1{margin:0}.film-dialog[open]~.experience-dock{visibility:hidden}
@media(max-width:700px){.experience-dock{bottom:12px;right:12px;padding:10px;gap:0}.experience-dock>span{display:none}.experience-dock .motion-toggle{font-size:9px;padding-left:0;border:0}.privacy-fx-band{grid-template-columns:1fr 90px;gap:8px}.privacy-fx-band .fx-stage{height:120px}.site-footer{padding-bottom:90px}.fx-stage{contain:layout paint}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.fx-webgl,.fx-stage::after{transition:none}.site-header nav a::after{transition:none}.js-motion .reveal{opacity:1;transform:none;transition:none}}
.motion-paused .reveal{transition:none}.motion-paused .fx-webgl{transition:none}
@view-transition{navigation:auto}::view-transition-old(root){animation:fx-page-out .2s ease-out both}::view-transition-new(root){animation:fx-page-in .48s cubic-bezier(.2,.75,.25,1) both}@keyframes fx-page-out{to{opacity:0;filter:brightness(.92)}}@keyframes fx-page-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){::view-transition-old(root),::view-transition-new(root){animation:none}}
.motion-paused::view-transition-old(root),.motion-paused::view-transition-new(root){animation:none}.motion-paused .reveal{opacity:1;transform:none}
body.locked .experience-dock{visibility:hidden}
