/* ==========================================================================
   VANTAGE EXPERTS - ANIMATIONS & VISUAL EFFECTS
   Theme: #0B1F42 Navy & #C6A15B Gold
   ========================================================================== */

/* Keyframe Animations */
@keyframes floatSlow {
  0%, 100% {
    transform: translateY(0px) rotate(0deg);
  }
  50% {
    transform: translateY(-12px) rotate(1deg);
  }
}

@keyframes pulseGoldGlow {
  0%, 100% {
    box-shadow: 0 0 20px rgba(198, 161, 91, 0.22), inset 0 0 15px rgba(198, 161, 91, 0.12);
  }
  50% {
    box-shadow: 0 0 40px rgba(198, 161, 91, 0.45), inset 0 0 25px rgba(198, 161, 91, 0.22);
  }
}

@keyframes shimmerBorder {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}

@keyframes infiniteTicker {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}

@keyframes ripplePulse {
  0% {
    transform: scale(0.95);
    opacity: 0.8;
  }
  50% {
    transform: scale(1.15);
    opacity: 0.3;
  }
  100% {
    transform: scale(0.95);
    opacity: 0.8;
  }
}

@keyframes gradientShift {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}

/* Ambient Background Light Orbs */
.ambient-glow {
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
  filter: blur(100px);
  z-index: 0;
  opacity: 0.50;
}

.ambient-glow-gold {
  background: radial-gradient(circle, rgba(198, 161, 91, 0.25) 0%, rgba(198, 161, 91, 0) 70%);
}

.ambient-glow-navy {
  background: radial-gradient(circle, rgba(16, 42, 86, 0.70) 0%, rgba(11, 31, 66, 0) 70%);
}

.ambient-glow-emerald {
  background: radial-gradient(circle, rgba(16, 185, 129, 0.18) 0%, rgba(16, 185, 129, 0) 70%);
}

/* Scroll Reveal Classes */
.reveal-init {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 0.8s var(--ease-spring), transform 0.8s var(--ease-spring);
  will-change: opacity, transform;
}

.reveal-init.revealed {
  opacity: 1;
  transform: translateY(0);
}

.stagger-1 { transition-delay: 0.1s; }
.stagger-2 { transition-delay: 0.2s; }
.stagger-3 { transition-delay: 0.3s; }
.stagger-4 { transition-delay: 0.4s; }
.stagger-5 { transition-delay: 0.5s; }
.stagger-6 { transition-delay: 0.6s; }

/* Micro-interaction Helper Classes */
.hover-lift {
  transition: transform var(--transition-normal), box-shadow var(--transition-normal), border-color var(--transition-normal);
}

.hover-lift:hover {
  transform: translateY(-6px);
  box-shadow: var(--shadow-card-hover);
  border-color: var(--gold-border-bright);
}

.hover-glow:hover {
  box-shadow: var(--gold-glow);
}

/* Shimmer Button Effect */
.btn-shimmer {
  position: relative;
  overflow: hidden;
}

.btn-shimmer::after {
  content: '';
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: linear-gradient(
    60deg,
    rgba(255, 255, 255, 0) 20%,
    rgba(255, 255, 255, 0.35) 50%,
    rgba(255, 255, 255, 0) 80%
  );
  transform: rotate(30deg) translateY(-100%);
  transition: transform 0.75s ease-in-out;
}

.btn-shimmer:hover::after {
  transform: rotate(30deg) translateY(100%);
}
