@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes slideInFromBottom{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes slideInFromRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.animate-fade-in-up{animation:.6s ease-out fadeInUp}.animate-pulse-hover:hover{animation:.3s ease-in-out pulse}.animate-spin-slow{animation:1s linear infinite spin}.animate-slide-in-bottom{animation:.3s ease-out slideInFromBottom}.animate-slide-in-right{animation:.3s ease-out slideInFromRight}.transition-smooth{transition:all .3s cubic-bezier(.4,0,.2,1)}.transition-bounce{transition:all .3s cubic-bezier(.68,-.55,.265,1.55)}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.animate-float{animation:3s ease-in-out infinite float}@keyframes gradient-shift{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}.animate-gradient{background-size:200% 200%;animation:3s infinite gradient-shift}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-2px)}20%,40%,60%,80%{transform:translate(2px)}}.animate-shake{animation:.5s ease-in-out shake}.zoom-on-hover{transition:transform .3s}.zoom-on-hover:hover{transform:scale(1.05)}@keyframes glow{0%{box-shadow:0 0 5px rgba(var(--primary), .5)}to{box-shadow:0 0 20px rgba(var(--primary), .8)}}.animate-glow{animation:2s ease-in-out infinite alternate glow}@keyframes typewriter{0%{width:0}to{width:100%}}@keyframes blink{0%,50%{border-color:#0000}51%,to{border-color:currentColor}}.animate-typewriter{white-space:nowrap;border-right:2px solid;animation:3s steps(40,end) typewriter,.75s step-end infinite blink;overflow:hidden}.stagger-fade-in>*{opacity:0;animation:.6s ease-out forwards fadeInUp}.stagger-fade-in>:first-child{animation-delay:.1s}.stagger-fade-in>:nth-child(2){animation-delay:.2s}.stagger-fade-in>:nth-child(3){animation-delay:.3s}.stagger-fade-in>:nth-child(4){animation-delay:.4s}.stagger-fade-in>:nth-child(5){animation-delay:.5s}.stagger-fade-in>:nth-child(6){animation-delay:.6s}
