@keyframes fadeInUp { from { opacity: 0; transform: translateY(50px); } to { opacity: 1; transform: translateY(0); } }
@keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }
@keyframes bounce { 0%, 20%, 50%, 80%, 100% { transform: translateY(0); } 40% { transform: translateY(-20px); } 60% { transform: translateY(-10px); } }

.animate-fadeInUp { animation: fadeInUp 1s cubic-bezier(0.4, 0, 0.2, 1) forwards; opacity: 0; }
.animate-fadeIn { animation: fadeIn 0.8s ease forwards; opacity: 0; }
.animate-bounce { animation: bounce 2s ease-in-out infinite; }

.delay-100 { animation-delay: 0.1s; }
.delay-200 { animation-delay: 0.2s; }
.delay-300 { animation-delay: 0.3s; }
.delay-400 { animation-delay: 0.4s; }
.delay-500 { animation-delay: 0.5s; }

.hover-lift { transition: transform 0.4s ease, box-shadow 0.4s ease; }
.hover-lift:hover { transform: translateY(-12px); box-shadow: 0 25px 50px rgba(0, 100, 200, 0.15); }

.scroll-animate { opacity: 0; transform: translateY(50px); transition: opacity 0.8s ease, transform 0.8s ease; }
.scroll-animate.visible { opacity: 1; transform: translateY(0); }
