/* Shared motion and decorative overlays. Kept subtle for usability and performance. */
body{position:relative;isolation:isolate}
.site-motion-overlay{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none;opacity:.55}
.site-motion-orb{position:absolute;border-radius:50%;filter:blur(2px);will-change:transform}
.site-motion-orb.one{width:360px;height:360px;left:-190px;top:12vh;background:radial-gradient(circle,rgba(10,79,158,.11),transparent 68%);transform:translate3d(0,var(--motion-shift-one,0px),0)}
.site-motion-orb.two{width:420px;height:420px;right:-230px;top:48vh;background:radial-gradient(circle,rgba(37,157,85,.1),transparent 68%);transform:translate3d(0,var(--motion-shift-two,0px),0)}
body>.site-motion-overlay~*{position:relative;z-index:1}
.site-header{z-index:1000!important}.skip-link{z-index:99999!important}
.reveal{opacity:0;transform:translate3d(0,28px,0);transition:opacity .72s cubic-bezier(.2,.7,.2,1),transform .72s cubic-bezier(.2,.7,.2,1);transition-delay:var(--reveal-delay,0ms)}
.reveal.reveal-left{transform:translate3d(-28px,0,0)}
.reveal.reveal-right{transform:translate3d(28px,0,0)}
.reveal.is-visible{opacity:1;transform:translate3d(0,0,0)}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto!important}.site-motion-overlay{display:none}.reveal,.reveal.reveal-left,.reveal.reveal-right{opacity:1;transform:none;transition:none!important}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
@media print{.site-motion-overlay{display:none}.reveal{opacity:1;transform:none}}
