/* ─── Premium Modern Animations starts ─── */
@keyframes fadeInUpCustom {
  from {
    opacity: 0;
    transform: translate3d(0, 30px, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInDownCustom {
  from {
    opacity: 0;
    transform: translate3d(0, -30px, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInLeftCustom {
  from {
    opacity: 0;
    transform: translate3d(-30px, 0, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInRightCustom {
  from {
    opacity: 0;
    transform: translate3d(30px, 0, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

@keyframes scaleIn {
  from {
    opacity: 0;
    transform: scale3d(0.95, 0.95, 0.95);
  }
  to {
    opacity: 1;
    transform: scale3d(1, 1, 1);
  }
}

@keyframes floatElement {
  0% {
    transform: translateY(0px);
  }
  50% {
    transform: translateY(-10px);
  }
  100% {
    transform: translateY(0px);
  }
}

@keyframes glowPulse {
  0%, 100% {
    box-shadow: 0 0 15px rgba(2, 143, 67, 0.2);
  }
  50% {
    box-shadow: 0 0 25px rgba(2, 143, 67, 0.5);
  }
}

/* Helper Classes */
.animate-fade-up {
  animation: fadeInUpCustom 0.8s cubic-bezier(0.25, 1, 0.5, 1) forwards;
}

.animate-fade-down {
  animation: fadeInDownCustom 0.8s cubic-bezier(0.25, 1, 0.5, 1) forwards;
}

.animate-fade-left {
  animation: fadeInLeftCustom 0.8s cubic-bezier(0.25, 1, 0.5, 1) forwards;
}

.animate-fade-right {
  animation: fadeInRightCustom 0.8s cubic-bezier(0.25, 1, 0.5, 1) forwards;
}

.animate-scale-in {
  animation: scaleIn 0.6s cubic-bezier(0.25, 1, 0.5, 1) forwards;
}

.animate-float {
  animation: floatElement 4s ease-in-out infinite;
}

.animate-glow {
  animation: glowPulse 6s ease-in-out infinite;
}

/* Micro-animations and Transitions */
.hover-lift {
  transition: transform 0.3s cubic-bezier(0.25, 0.8, 0.25, 1), box-shadow 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
}

.hover-lift:hover {
  transform: translateY(-5px);
  box-shadow: 0 12px 20px rgba(0, 0, 0, 0.1);
}

.hover-glow-green {
  transition: all 0.3s ease;
}

.hover-glow-green:hover {
  box-shadow: 0 0 15px rgba(2, 143, 67, 0.4);
  border-color: var(--primary-green);
}

.hover-glow-blue {
  transition: all 0.3s ease;
}

.hover-glow-blue:hover {
  box-shadow: 0 0 15px rgba(33, 64, 129, 0.4);
  border-color: var(--primary-blue);
}

/* Card Tilt effect CSS placeholder */
.tilt-card {
  transform-style: preserve-3d;
  perspective: 1000px;
}
/* ─── Premium Modern Animations ends ─── */
