/* Motion enhances the layout; all content remains readable without JavaScript. */
.nav-links a{position:relative}.nav-links a:after{content:"";position:absolute;left:0;right:0;bottom:3px;height:2px;background:var(--blue);transform:scaleX(0);transform-origin:left;transition:transform .25s}.nav-links a[aria-current]:after,.nav-links a:hover:after,.nav-links a:focus-visible:after{transform:scaleX(1)}
html.motion-ready .js-reveal.is-reveal-pending{opacity:0;transform:translateY(22px)}html.motion-ready .js-reveal.is-revealing{animation:studio-reveal .62s cubic-bezier(.2,.7,.2,1) both;animation-delay:var(--reveal-delay,0ms)}
html.motion-ready .studio-hero-visual{animation:studio-drift 9s ease-in-out infinite}.motion-paused .studio-hero-visual,.is-scene-paused .studio-hero-visual{animation-play-state:paused!important}
@keyframes studio-reveal{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@keyframes studio-drift{0%,100%{transform:rotate(-2deg) translateY(0)}50%{transform:rotate(-1deg) translateY(-8px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}html.motion-ready .js-reveal.is-reveal-pending{opacity:1;transform:none}html.motion-ready .js-reveal.is-revealing,html.motion-ready .studio-hero-visual{animation:none!important}.nav-links a:after{transition:none}}
@media print{html.motion-ready .js-reveal{opacity:1!important;transform:none!important;animation:none!important}.studio-hero-visual{animation:none!important}}
