/* ==========================================================================
   ADRIJ SEO EXPERT — 60FPS HARDWARE-ACCELERATED ANIMATIONS
   ========================================================================== */

/* Beacon Pulse */
@keyframes pulseBeacon {
  0% {
    transform: scale(0.95);
    box-shadow: 0 0 0 0 rgba(0, 255, 157, 0.7);
  }
  70% {
    transform: scale(1.1);
    box-shadow: 0 0 0 8px rgba(0, 255, 157, 0);
  }
  100% {
    transform: scale(0.95);
    box-shadow: 0 0 0 0 rgba(0, 255, 157, 0);
  }
}

/* Radar Sweep */
@keyframes radarSweep {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

/* Fade In */
@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(12px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Subtle Floating Effect */
@keyframes subtleFloat {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-6px);
  }
}

.float-slow {
  animation: subtleFloat 6s ease-in-out infinite;
}

/* Glow Shimmer */
@keyframes glowShimmer {
  0% {
    background-position: -200% 0;
  }
  100% {
    background-position: 200% 0;
  }
}

.shimmer-active {
  background: linear-gradient(90deg, 
    rgba(255,255,255,0) 0%, 
    rgba(16, 185, 129, 0.15) 50%, 
    rgba(255,255,255,0) 100%
  );
  background-size: 200% 100%;
  animation: glowShimmer 2.5s infinite;
}

/* Scroll Reveal Classes */
.reveal-on-scroll {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity 0.6s cubic-bezier(0.16, 1, 0.3, 1), transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);
  will-change: opacity, transform;
}

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