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

@keyframes pulseSlow {
  0%, 100% { opacity: 0.15; }
  50% { opacity: 0.45; }
}

@keyframes floatBlob1 {
  0% { transform: translate(0, 0) scale(1); }
  100% { transform: translate(12%, 8%) scale(1.15); }
}

@keyframes floatBlob2 {
  0% { transform: translate(0, 0) scale(1); }
  100% { transform: translate(-10%, -12%) scale(1.1); }
}

.animate-fade-in-up {
  animation: fadeInUp 0.8s cubic-bezier(0.22, 0.61, 0.36, 1) both;
}

.animate-pulse-slow {
  animation: pulseSlow 4s ease-in-out infinite;
}
