/**
 * animations.css
 * ─────────────────────────────────────────────
 * All @keyframes, hover transitions with
 * animation properties, and the
 * prefers-reduced-motion override.
 * Load LAST — after all other CSS files.
 */

/* ─────────────────────────────────────────────
   KEYFRAME ANIMATIONS
   ───────────────────────────────────────────── */

/* Hero pulse glow */
@keyframes pulseGlow {
    0%, 100% { opacity: 1;   transform: translate(-50%, -50%) scale(1);   }
    50%       { opacity: 0.6; transform: translate(-50%, -50%) scale(1.12); }
}

/* Spinning decorative ring */
@keyframes spinRing {
    to { transform: rotate(360deg); }
}

/* Scroll bounce indicator */
@keyframes scrollBounce {
    0%, 100% { top: 5px;  opacity: 1; }
    80%       { top: 18px; opacity: 0; }
}

/* ─────────────────────────────────────────────
   REDUCED MOTION OVERRIDE
   Disable all animations/transitions when user
   prefers reduced motion.
   ───────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *,
    *::before,
    *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
    .hero-photo-ring { animation: none !important; }
    .scroll-indicator span::before { animation: none !important; }
    .hero::before { animation: none !important; }
}