/* ============================================================
   animations.css — .reveal + staggered delays, keyframes
   Driven by IntersectionObserver in js/animations.js
   ============================================================ */

.reveal {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity var(--motion-slow) var(--ease-out),
    transform var(--motion-slow) var(--ease-out);
}

.reveal.is-visible {
  opacity: 1;
  transform: translateY(0);
}

.reveal--delay-1 {
  transition-delay: 60ms;
}

.reveal--delay-2 {
  transition-delay: 120ms;
}

.reveal--delay-3 {
  transition-delay: 180ms;
}

.reveal--delay-4 {
  transition-delay: 240ms;
}

@keyframes hero-glow-pulse {
  0%,
  100% {
    opacity: 0.85;
  }
  50% {
    opacity: 1;
  }
}
