@keyframes slideInUp {
  from {
    transform: translateY(100px);
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}

@keyframes fade-in-up {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes bounce-slow {
  0%,
  100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-5px);
  }
}

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

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

.animate-bounce-slow {
  animation: bounce-slow 3s ease-in-out infinite;
}

.animate-gradient {
  animation: gradient 3s ease infinite;
}

.animate-slideInUp {
  animation: slideInUp 0.5s ease-out;
}

/* Smooth transitions for FAQ */
.faq-answer {
  transition: all 0.3s ease;
  max-height: 0;
  overflow: hidden;
}

.faq-answer:not(.hidden) {
  max-height: 500px;
  padding-top: 0;
}

.faq-question i {
  transition: transform 0.3s ease;
}

/* Navigation transition */
nav {
  transition: transform 0.3s ease;
}

/* Responsive improvements */
@media (max-width: 768px) {
  .text-5xl {
    font-size: 2.5rem;
  }

  .text-7xl {
    font-size: 3rem;
  }
}

/* Gradient text animation */
@keyframes gradient-shift {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}

.bg-gradient-to-r {
  background-size: 200% 200%;
}

/* Loading animations */
@keyframes pulse {
  0%,
  100% {
    opacity: 1;
  }
  50% {
    opacity: 0.5;
  }
}

.animate-pulse {
  animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}

.bg-clip-text {
    -webkit-background-clip: text;
    background-clip: text;
    line-height: 1.8;
    padding-top: 0.05em;
    padding-bottom: 0.05em;
}





/* Ensure parent containers don't clip text */
h1::before,
h1::after,
h2::before,
h2::after {
  display: block;
  content: "";
  height: 0;
}
