/* Progressive enhancement: content stays visible unless observation is ready. */
.scroll-progress{position:fixed;inset:0 auto auto 0;height:3px;width:100%;z-index:90;pointer-events:none;transform:scaleX(0);transform-origin:left;background:linear-gradient(90deg,#34d399,#22d3ee,#a78bfa,#fbbf24);box-shadow:0 0 14px #22d3ee99}
.motion-ready .scroll-reveal{opacity:0;translate:0 34px;transition:opacity .8s cubic-bezier(.2,.7,.2,1),translate .8s cubic-bezier(.2,.7,.2,1);transition-delay:var(--reveal-delay,0ms)}
.motion-ready .scroll-reveal.reveal-in,.motion-ready .scroll-reveal:focus-within{opacity:1;translate:0 0}
.motion-ready .scroll-reveal[data-reveal="left"]{translate:-25px 18px}
.motion-ready .scroll-reveal[data-reveal="right"]{translate:25px 18px}
.motion-ready .scroll-reveal.reveal-in[data-reveal]{translate:0 0}
.motion-ambient{animation:ambient-drift 14s ease-in-out infinite alternate}
.motion-ambient:nth-child(2){animation-delay:-5s;animation-direction:alternate-reverse}
@keyframes ambient-drift{to{translate:18px -22px;scale:1.08}}
#floating-cta a:last-child{position:relative;overflow:hidden}
#floating-cta a:last-child:after{content:"";position:absolute;inset:-100% auto -100% -70%;width:25%;rotate:20deg;background:linear-gradient(90deg,transparent,#ffffff30,transparent);animation:cta-light 8s ease-in-out infinite;pointer-events:none}
@keyframes cta-light{0%,70%{translate:0 0}95%,100%{translate:850% 0}}
.thumbnail-cta{display:block;border-radius:18px;overflow:hidden;border:1px solid #34d39966;box-shadow:0 16px 50px #02061766;transition:box-shadow .3s}
.thumbnail-cta:hover{box-shadow:0 16px 54px #10b98133}
.thumbnail-cta img{display:block;width:100%;height:auto}
.motion-toggle{position:fixed;right:12px;top:88px;z-index:80;border:1px solid #34d39999;border-radius:999px;padding:9px 13px;font:600 12px Inter,sans-serif;color:#a7f3d0;background:#0f172aee;box-shadow:0 4px 20px #0005;cursor:pointer}
@media(max-width:639px){.motion-ready .scroll-reveal[data-reveal]{translate:0 26px}.motion-ready .scroll-reveal.reveal-in[data-reveal]{translate:0 0}}
@media(prefers-reduced-motion:reduce){html:not(.motion-user-enabled){scroll-behavior:auto!important}html:not(.motion-user-enabled).motion-ready .scroll-reveal,html:not(.motion-user-enabled).motion-ready .scroll-reveal[data-reveal]{opacity:1!important;translate:none!important;transition:none!important}html:not(.motion-user-enabled) .motion-ambient,html:not(.motion-user-enabled) #floating-cta a:last-child:after,html:not(.motion-user-enabled) .marquee-content,html:not(.motion-user-enabled) .typewriter-cursor{animation:none!important}}
