@keyframes fade-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes scale-up{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-10px)}to{transform:translateY(0)}}@keyframes pulse-glow{0%,to{opacity:1;box-shadow:0 0 20px #8b5cf680}50%{opacity:.8;box-shadow:0 0 30px #8b5cf6cc}}@keyframes shimmer{0%{background-position:0 0}to{background-position:-200% 0}}.animate-fade-up{animation:.8s cubic-bezier(.2,.8,.2,1) forwards fade-up}.animate-fade-in{animation:1s cubic-bezier(.2,.8,.2,1) forwards fade-in}.animate-scale-up{animation:.5s cubic-bezier(.2,.8,.2,1) forwards scale-up}.animate-float{animation:6s ease-in-out infinite float}.animate-pulse-glow{animation:3s infinite pulse-glow}.animate-shimmer{background:linear-gradient(90deg,#0000 0%,#fff3 50%,#0000 100%) 0 0/200% 100%;animation:2s linear infinite shimmer}.hover-lift{transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s cubic-bezier(.34,1.56,.64,1)}.hover-lift:hover{transform:translateY(-5px);box-shadow:0 10px 30px -10px #00000026}.delay-100{animation-delay:.1s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.delay-500{animation-delay:.5s}.delay-700{animation-delay:.7s}.reveal-on-scroll{opacity:0;transition:opacity .8s ease-out,transform .8s ease-out}.reveal-on-scroll.is-visible{opacity:1;transform:translateY(0)}.reveal-fade-up{transform:translateY(40px)}.reveal-scale{transform:scale(.95)}.reveal-scale.is-visible{transform:scale(1)}@keyframes meteor{0%{opacity:1;transform:rotate(215deg)translate(0)}70%{opacity:1}to{opacity:0;transform:rotate(215deg)translate(-500px)}}.animate-meteor{animation:5s linear infinite meteor}@keyframes border-beam{to{offset-distance:100%}}.animate-border-beam{animation:border-beam calc(var(--duration)*1s)infinite linear}
