@keyframes float{0%,to{transform:translateY(0) rotate(0);opacity:.3}50%{transform:translateY(-20px) rotate(180deg);opacity:.8}}.animate-float{animation:float 4s ease-in-out infinite}@keyframes ping-slow{0%{transform:scale(1);opacity:.3}to{transform:scale(1.5);opacity:0}}@keyframes ping-slower{0%{transform:scale(1);opacity:.2}to{transform:scale(1.8);opacity:0}}@keyframes ping-slowest{0%{transform:scale(1);opacity:.1}to{transform:scale(2);opacity:0}}.animate-ping-slow{animation:ping-slow 2s cubic-bezier(0,0,.2,1) infinite}.animate-ping-slower{animation:ping-slower 2.5s cubic-bezier(0,0,.2,1) infinite}.animate-ping-slowest{animation:ping-slowest 3s cubic-bezier(0,0,.2,1) infinite}@keyframes pulse-glow{0%,to{filter:drop-shadow(0 0 20px rgba(80,208,208,.6))}50%{filter:drop-shadow(0 0 40px rgba(80,208,208,1))}}.animate-pulse-glow{animation:pulse-glow 2s ease-in-out infinite}@keyframes fade-in-up{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in-up{animation:fade-in-up 1s ease-out forwards}@keyframes fade-in-scale{0%{opacity:0;transform:scale(.9) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.animate-fade-in-scale{animation:fade-in-scale .8s ease-out forwards}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-shimmer{background:linear-gradient(90deg,#fff0,#fff3,#fff0);background-size:200% 100%;animation:shimmer 2s infinite}.card-3d{transform-style:preserve-3d;perspective:1000px}.card-3d:hover{transform:rotateY(5deg) rotateX(5deg)}@keyframes curtain-reveal{0%{clip-path:circle(0% at 50% 50%)}to{clip-path:circle(150% at 50% 50%)}}.animate-curtain-reveal{animation:curtain-reveal 1.5s ease-out forwards}@keyframes text-reveal{0%{opacity:0;letter-spacing:.5em;filter:blur(10px)}to{opacity:1;letter-spacing:.2em;filter:blur(0)}}.animate-text-reveal{animation:text-reveal 1.2s ease-out forwards}@keyframes glow-border{0%,to{box-shadow:0 0 5px #50d0d04d,0 0 10px #50d0d033,0 0 20px #50d0d01a}50%{box-shadow:0 0 10px #50d0d080,0 0 20px #50d0d066,0 0 40px #50d0d033}}.animate-glow-border{animation:glow-border 3s ease-in-out infinite}@keyframes slide-in-left{0%{opacity:0;transform:translate(-50px)}to{opacity:1;transform:translate(0)}}@keyframes slide-in-right{0%{opacity:0;transform:translate(50px)}to{opacity:1;transform:translate(0)}}.animate-slide-in-left{animation:slide-in-left .8s ease-out forwards}.animate-slide-in-right{animation:slide-in-right .8s ease-out forwards}.hover-tilt{transition:transform .3s ease}.hover-tilt:hover{transform:perspective(1000px) rotateX(5deg) rotateY(-5deg) scale(1.02)}
