@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes loadingFadeOut{to{opacity:0;pointer-events:none;visibility:hidden}}@keyframes logoPulse{0%,100%{transform:scale(1);filter:drop-shadow(0 0 15px rgba(108,99,255,0.6))}50%{transform:scale(1.08);filter:drop-shadow(0 0 30px rgba(108,99,255,1))}}@keyframes toastSlideIn{from{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}@keyframes toastSlideOut{to{opacity:0;transform:translateX(-20px)}}@keyframes modalIn{from{opacity:0;transform:scale(0.9) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-20px)}}@keyframes orbFloat{0%,100%{transform:translate(0,0) scale(1)}33%{transform:translate(30px,-30px) scale(1.1)}66%{transform:translate(-20px,20px) scale(0.9)}}@keyframes slideLeft{from{opacity:0;transform:translateX(50px)}to{opacity:1;transform:translateX(0)}}.animate-fade-up{opacity:0;transform:translateY(30px);will-change:transform,opacity}.animate-slide-left{opacity:0;transform:translateX(50px);will-change:transform,opacity}.in-view.animate-fade-up{animation:fadeInUp 0.8s cubic-bezier(0.16,1,0.3,1) both}.in-view.animate-slide-left{animation:slideLeft 0.8s cubic-bezier(0.16,1,0.3,1) both}.delay-1{animation-delay:0.15s !important}.delay-2{animation-delay:0.3s !important}.delay-3{animation-delay:0.45s !important}.delay-4{animation-delay:0.6s !important}.delay-5{animation-delay:0.75s !important}