/* ==========================================================================
   LayTehra Animations & Visual Effects Stylesheet
   Keyframes, Aurora Light Orbs, Glass Shimmer & Motion Physics
   ========================================================================== */

/* Background Aurora Mesh Grid */
.aurora-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: 0;
  pointer-events: none;
}

.aurora-orb {
  position: absolute;
  border-radius: 50%;
  filter: blur(100px);
  opacity: 0.35;
  animation: floatOrb 18s ease-in-out infinite alternate;
}

.aurora-orb-1 {
  top: -10%;
  left: 20%;
  width: 550px;
  height: 550px;
  background: radial-gradient(circle, #8a2be2 0%, transparent 70%);
}

.aurora-orb-2 {
  top: 15%;
  right: -5%;
  width: 600px;
  height: 600px;
  background: radial-gradient(circle, #00d2ff 0%, transparent 70%);
  animation-delay: -6s;
}

.aurora-orb-3 {
  bottom: 20%;
  left: -10%;
  width: 700px;
  height: 700px;
  background: radial-gradient(circle, #4a00e0 0%, transparent 70%);
  animation-delay: -12s;
}

/* Keyframes */

@keyframes floatOrb {
  0% {
    transform: translate(0, 0) scale(1);
  }
  50% {
    transform: translate(60px, 80px) scale(1.15);
  }
  100% {
    transform: translate(-40px, -50px) scale(0.95);
  }
}

@keyframes floatCard {
  0% {
    transform: translateY(0px) rotate(0deg);
  }
  50% {
    transform: translateY(-14px) rotate(1deg);
  }
  100% {
    transform: translateY(0px) rotate(0deg);
  }
}

@keyframes pulseGlow {
  0% {
    opacity: 0.6;
    transform: scale(0.98);
  }
  100% {
    opacity: 1;
    transform: scale(1.05);
  }
}

@keyframes slideUpFade {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

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

.reveal.active {
  opacity: 1;
  transform: translateY(0);
}

.reveal-delay-1 { transition-delay: 0.15s; }
.reveal-delay-2 { transition-delay: 0.3s; }
.reveal-delay-3 { transition-delay: 0.45s; }
.reveal-delay-4 { transition-delay: 0.6s; }

/* Shimmer Light Effect on Cards */
.shimmer-card {
  position: relative;
  overflow: hidden;
}

.shimmer-card::after {
  content: '';
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: linear-gradient(
    60deg,
    transparent 30%,
    rgba(255, 255, 255, 0.04) 50%,
    transparent 70%
  );
  transform: rotate(30deg);
  transition: transform 0.8s ease;
  pointer-events: none;
}

.shimmer-card:hover::after {
  transform: rotate(30deg) translate(30%, 30%);
}
