@keyframes glowPulse {
  0%,
  100% {
    opacity: .68;
    transform: scale(.98);
  }
  50% {
    opacity: 1;
    transform: scale(1.03);
  }
}

@keyframes cinematicSweep {
  0% {
    transform: translateX(-125%);
  }
  52%,
  100% {
    transform: translateX(125%);
  }
}

@keyframes dotPulse {
  0%,
  100% {
    box-shadow: 0 0 14px rgba(255, 179, 0, .72);
  }
  50% {
    box-shadow: 0 0 28px rgba(255, 179, 0, 1);
  }
}

[data-reveal],
[data-card],
[data-timeline-card] {
  will-change: transform, opacity;
}

.sr-reduced-motion *,
.sr-reduced-motion *::before,
.sr-reduced-motion *::after {
  animation-duration: .01ms !important;
  animation-iteration-count: 1 !important;
  scroll-behavior: auto !important;
  transition-duration: .01ms !important;
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
  }
}

