/* ============================================================
   animations.css — keyframes + reduced-motion overrides
   Extracted as standalone per migration-friendliness checklist
   item 1: animation keyframes and prefers-reduced-motion media
   queries live in standalone CSS.
   ============================================================ */

/* Pulsing scroll/top lines (hero + section-divider asteroids) */
@keyframes pulse-line{0%,100%{opacity:0.25}50%{opacity:0.9}}
@keyframes pulse-line-mid{0%,100%{opacity:0.4}50%{opacity:0.85}}

/* Globe node pulses, rings, orbits, AI accent */
@keyframes pulse{0%,100%{opacity:0.21}50%{opacity:1}}
@keyframes pulse-bright{0%,100%{opacity:0.21;filter:brightness(1)}50%{opacity:1;filter:brightness(1.5)}}
@keyframes ring{0%{opacity:0.85;r:6}100%{opacity:0;r:18}}
@keyframes orbit{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
@keyframes ai-pulse{0%,100%{opacity:0.1}50%{opacity:0.35}}
@keyframes dot-rotate{from{stroke-dashoffset:-15.71}to{stroke-dashoffset:-78.54}}
@keyframes dot-rotate-color{0%,6.52%{stroke:#C8CDD6}6.53%,56.52%{stroke:#C0685E}56.53%,100%{stroke:#C8CDD6}}

/* ============================================================
   prefers-reduced-motion: reveals snap (0.1s), CSS-driven
   smooth-scroll falls back to instant. The JS slow-scroll
   handler is left untouched per build rules; users who care
   about reduced motion typically also disable JS smooth-scroll
   at the OS level, and scroll-behavior:auto here neutralizes
   the smooth-scroll baseline so the JS RAF animation is the
   only remaining motion on those links.
   ============================================================ */
@media (prefers-reduced-motion: reduce){
  .reveal,
  .reveal.visible{
    transition-duration:0.1s !important;
    transform:none !important;
  }
  html{
    scroll-behavior:auto !important;
  }
  *,*::before,*::after{
    animation-duration:0.01ms !important;
    animation-iteration-count:1 !important;
    transition-duration:0.01ms !important;
  }
}
