/* Virgule Motion — visual direction override.
   The hero artwork is the visual source of truth. No fullscreen mathematical
   field, grid, orbit, particle or looping decorative layer is permitted. */
.vgl-motion-field{display:none!important}
body.vgl-motion{overflow-x:clip}
.vgl-motion-hero{position:relative;isolation:isolate;overflow:clip;transform:translate3d(var(--vgl-hero-x,0),var(--vgl-hero-y,0),0);transition:transform 700ms cubic-bezier(.22,1,.36,1)}
.vgl-motion-hero>*{position:relative;z-index:1}
.vgl-motion-hero .hero-fond{transform:scale(1.018);transition:transform 900ms cubic-bezier(.22,1,.36,1)}
.vgl-motion-ready .vgl-motion-hero .hero-fond{transform:scale(1.028) translate3d(calc(var(--vgl-hero-x,0) * -0.35),calc(var(--vgl-hero-y,0) * -0.35),0)}
.vgl-motion-hero .hero-tag,.vgl-motion-hero .hero-kicker,.vgl-motion-hero .page-eyebrow,.vgl-motion-hero .bib-hero-kicker,.vgl-motion-hero .exam-hero-eyebrow{animation:vgl-local-rise 620ms cubic-bezier(.22,1,.36,1) 90ms both}
.vgl-motion-hero h1,.vgl-motion-hero .page-title,.vgl-motion-hero .hero-title,.vgl-motion-hero .bib-hero-title,.vgl-motion-hero .exam-hero-title{animation:vgl-local-title 900ms cubic-bezier(.16,1,.3,1) 160ms both}
.vgl-motion-hero p,.vgl-motion-hero .hero-sub,.vgl-motion-hero .hero-tagline,.vgl-motion-hero .bib-hero-sub,.vgl-motion-hero .exam-hero-sub{animation:vgl-local-rise 700ms cubic-bezier(.22,1,.36,1) 330ms both}
.vgl-motion-hero .hero-actions,.vgl-motion-hero .hero-cta,.vgl-motion-hero .bib-hero-actions{animation:vgl-local-rise 720ms cubic-bezier(.22,1,.36,1) 470ms both}
.vgl-motion-section{position:relative;scroll-margin-top:96px}
.vgl-motion-section::before{content:'';position:absolute;inset-inline-start:0;top:0;width:0;height:1px;background:rgba(217,168,87,.55);transition:width 700ms cubic-bezier(.22,1,.36,1)}
.vgl-motion-section.vgl-motion-visible::before{width:56px}
.vgl-motion-orbit-card::before,.vgl-motion-streak::after{display:none!important}
@keyframes vgl-local-rise{from{opacity:0;transform:translate3d(0,18px,0)}to{opacity:1;transform:none}}
@keyframes vgl-local-title{from{opacity:0;transform:translate3d(0,28px,0)}to{opacity:1;transform:none}}
@media(max-width:767px){
  .vgl-motion-hero{transform:none}
  .vgl-motion-hero .hero-fond{transform:scale(1.01)}
  .vgl-motion-ready .vgl-motion-hero .hero-fond{transform:scale(1.012)}
}
@media(prefers-reduced-motion:reduce){
  .vgl-motion-hero,.vgl-motion-hero .hero-fond{transform:none!important;transition:none!important}
  .vgl-motion-hero *{animation:none!important}
  .vgl-motion-section::before{transition:none}
}
