/* Font Family */
body {
  font-family: 'Inter', sans-serif;
}

/* Animations */
@keyframes float {
  0%, 100% {
    transform: translateY(0px);
  }
  50% {
    transform: translateY(-10px);
  }
}

@keyframes text-shimmer {
  0%, 100% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
}

@keyframes morph {
  0%, 100% {
    border-radius: 60% 40% 30% 70% / 60% 30% 70% 40%;
  }
  25% {
    border-radius: 30% 60% 70% 40% / 50% 60% 30% 60%;
  }
  50% {
    border-radius: 40% 60% 30% 70% / 60% 40% 70% 30%;
  }
  75% {
    border-radius: 60% 40% 70% 30% / 40% 50% 60% 50%;
  }
}

@keyframes aurora {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

@keyframes wave {
  0%, 100% {
    transform: translateY(0) scaleY(1);
  }
  50% {
    transform: translateY(-10px) scaleY(0.95);
  }
}

@keyframes glitch-anim {
  0% { clip: rect(31px, 9999px, 94px, 0); }
  10% { clip: rect(112px, 9999px, 76px, 0); }
  20% { clip: rect(85px, 9999px, 77px, 0); }
  30% { clip: rect(27px, 9999px, 97px, 0); }
  40% { clip: rect(64px, 9999px, 98px, 0); }
  50% { clip: rect(61px, 9999px, 85px, 0); }
  60% { clip: rect(99px, 9999px, 114px, 0); }
  70% { clip: rect(34px, 9999px, 115px, 0); }
  80% { clip: rect(98px, 9999px, 129px, 0); }
  90% { clip: rect(43px, 9999px, 96px, 0); }
  100% { clip: rect(82px, 9999px, 64px, 0); }
}

@keyframes glitch-anim2 {
  0% { clip: rect(125px, 9999px, 162px, 0); }
  10% { clip: rect(120px, 9999px, 147px, 0); }
  20% { clip: rect(113px, 9999px, 171px, 0); }
  30% { clip: rect(142px, 9999px, 116px, 0); }
  40% { clip: rect(121px, 9999px, 167px, 0); }
  50% { clip: rect(131px, 9999px, 140px, 0); }
  60% { clip: rect(111px, 9999px, 122px, 0); }
  70% { clip: rect(133px, 9999px, 111px, 0); }
  80% { clip: rect(138px, 9999px, 131px, 0); }
  90% { clip: rect(151px, 9999px, 125px, 0); }
  100% { clip: rect(141px, 9999px, 112px, 0); }
}

/* Animation Classes */
.animate-float {
  animation: float 6s ease-in-out infinite;
}
.animate-pulse-slow {
  animation: pulse 4s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}
.animate-bounce-slow {
  animation: bounce 3s infinite;
}
.animate-spin-slow {
  animation: spin 8s linear infinite;
}
.animate-ping-slow {
  animation: ping 3s cubic-bezier(0, 0, 0.2, 1) infinite;
}
.animate-text-shimmer {
  animation: text-shimmer 3s ease-in-out infinite;
}
.animate-morph {
  animation: morph 8s ease-in-out infinite;
}
.animate-aurora {
  animation: aurora 10s linear infinite;
}
.animate-wave {
  animation: wave 8s ease-in-out infinite;
}
.animate-glitch-anim {
  animation: glitch-anim 5s infinite linear alternate-reverse;
}
.animate-glitch-anim2 {
  animation: glitch-anim2 5s infinite linear alternate-reverse;
}