/* ══════════════════════════════
   ANIMATIONS.CSS — AIRU Agency
   All @keyframes + reduced-motion
══════════════════════════════ */

/* MARQUEE — will-change only on animated element */
.ticker { will-change: transform; }


    @keyframes wfnav { from{stroke-dashoffset:300} to{stroke-dashoffset:-300} }

    @keyframes wfhero { from{stroke-dashoffset:600} to{stroke-dashoffset:-600} }

    @keyframes airMove{0%{transform:translateX(0)}100%{transform:translateX(270vw)}}

    @keyframes blink{0%,100%{opacity:1}50%{opacity:.3}}

    @keyframes spin { to { transform: rotate(360deg); } }

    @keyframes shimmer { 0%,100% { opacity:1; } 50% { opacity:0.75; text-shadow: 0 0 40px rgba(240,165,0,0.6); } }

    @keyframes orbPulse { 0%,100%{transform:scale(1); opacity:0.7;} 50%{transform:scale(1.08); opacity:1;} }

    @keyframes pingGlow { 0%,100%{box-shadow:0 8px 24px rgba(240,165,0,0.35);} 50%{box-shadow:0 8px 40px rgba(240,165,0,0.65), 0 0 0 8px rgba(240,165,0,0.08);} }

    @keyframes tickMove{to{transform:translateX(-50%)}}

    @keyframes flt{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}

    @keyframes clockBlink { 0%,100%{opacity:1;box-shadow:0 0 6px #ef4444}50%{opacity:0.3;box-shadow:none} }

    @keyframes twBlink { 0%,100%{opacity:1} 50%{opacity:0} }


    @keyframes ppFadeIn { from{opacity:0;transform:translateY(8px)} to{opacity:1;transform:none} }

/* ══════ PREFERS-REDUCED-MOTION ══════ */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
  .ticker { animation: none; }
  #hero-canvas { display: none !important; }
  #scroll-prog { display: none !important; }
  .r { opacity: 1 !important; transform: none !important; }
}
