/*
 * animations.css
 *
 * Define keyframes and helper classes for reveal and hover animations used
 * throughout the landing page. These animations are subtle to preserve
 * performance while adding a premium feel reminiscent of futuristic HUD
 * interfaces. Classes can be added via JavaScript when elements come into
 * view.
 */

/* Fade in and up animation */
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translate3d(0, 20px, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

.fade-in-up {
  animation: fadeInUp 0.8s ease forwards;
}

/* Glow pulse for cards */
@keyframes pulseGlow {
  0%, 100% {
    box-shadow: 0 0 10px rgba(0, 255, 186, 0.25), 0 0 20px rgba(0, 191, 255, 0.15);
  }
  50% {
    box-shadow: 0 0 25px rgba(0, 255, 186, 0.45), 0 0 40px rgba(0, 191, 255, 0.3);
  }
}

.pulse-glow {
  animation: pulseGlow 3s infinite ease-in-out;
}

/* Neon text glow */
.neon-text {
  color: var(--primary-color);
  text-shadow: 0 0 10px rgba(0, 255, 186, 0.6), 0 0 20px rgba(0, 191, 255, 0.4);
}

/* Hidden by default – used for Intersection Observer */
.reveal {
  opacity: 0;
  transform: translateY(20px);
}