/* Custom animations */
@keyframes blob {
  0% {
    transform: scale(1) translate(0px, 0px);
  }
  33% {
    transform: scale(1.1) translate(20px, -20px);
  }
  66% {
    transform: scale(0.9) translate(-20px, 20px);
  }
  100% {
    transform: scale(1) translate(0px, 0px);
  }
}

.animate-blob {
  animation: blob 7s infinite;
}

.animation-delay-2000 {
  animation-delay: 2s;
}

.animation-delay-4000 {
  animation-delay: 4s;
}

/* Smooth scrolling */
html {
  scroll-behavior: smooth;
}

/* Hover effects for buttons */
button {
  transition: all 0.3s ease;
}

/* Custom text animation for hero section */
.hero-text-animation {
  display: inline-block;
}

/* Mobile menu */
.mobile-menu {
  transition: transform 0.3s ease-in-out;
  transform: translateX(100%);
}

.mobile-menu.active {
  transform: translateX(0);
}

/* Custom scrollbar */
::-webkit-scrollbar {
  width: 10px;
}

::-webkit-scrollbar-track {
  background: #f1f1f1;
}

::-webkit-scrollbar-thumb {
  background: #6366f1;
  border-radius: 5px;
}

::-webkit-scrollbar-thumb:hover {
  background: #4f46e5;
}

/* Form Modal Styles */
#form-modal {
  backdrop-filter: blur(5px);
  transition: visibility 0.3s, opacity 0.3s;
}

#form-modal.hidden {
  visibility: hidden;
  opacity: 0;
}

#modal-content {
  max-height: 90vh;
  overflow-y: auto;
}

/* Form input focus styles */
input:focus {
  outline: none;
  border-color: #6366f1;
  box-shadow: 0 0 0 2px rgba(99, 102, 241, 0.2);
}

/* Form validation styles */
input:invalid:focus {
  border-color: #ef4444;
  box-shadow: 0 0 0 2px rgba(239, 68, 68, 0.2);
}

/* Form submit button hover effect */
#signup-form button[type="submit"]:hover {
  background-color: #4f46e5;
  transform: translateY(-2px);
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
}
