@keyframes fadeInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInFromLeft{from{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}@keyframes slideInFromRight{from{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}@keyframes pulse{0%,100%{opacity:1}50%{opacity:.7}}@keyframes shimmer{0%{transform:translateX(-100%)}100%{transform:translateX(100%)}}.fade-in-up{animation:fadeInUp .8s ease-out}.slide-in-left{animation:slideInFromLeft .6s ease-out}.slide-in-right{animation:slideInFromRight .6s ease-out}.animate-pulse-subtle{animation:pulse 3s ease-in-out infinite}.delay-100{animation-delay:.1s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.delay-400{animation-delay:.4s}.delay-500{animation-delay:.5s}.delay-600{animation-delay:.6s}.delay-700{animation-delay:.7s}.delay-800{animation-delay:.8s}.delay-900{animation-delay:.9s}.delay-1000{animation-delay:1s}.feature-card{position:relative;overflow:hidden}.feature-card::before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.feature-card:hover::before{left:100%}.status-indicator{position:relative}.status-indicator::after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;border-radius:50%;background:inherit;animation:pulse 2s ease-in-out infinite;opacity:.3}.fade-in-up,.feature-card,.slide-in-left,.slide-in-right{will-change:transform,opacity}@media (prefers-reduced-motion:reduce){.animate-pulse-subtle,.fade-in-up,.feature-card::before,.slide-in-left,.slide-in-right,.status-indicator::after{animation:none;transition:none}}