@keyframes float{0%,to{transform:translateY(0) translateX(0)}25%{transform:translateY(-20px) translateX(10px)}50%{transform:translateY(-10px) translateX(-5px)}75%{transform:translateY(-15px) translateX(8px)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInFromBottom{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInFromLeft{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}@keyframes slideInFromRight{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes ping{0%{transform:scale(1);opacity:1}75%,to{transform:scale(2);opacity:0}}@keyframes bounce{0%,to{transform:translateY(-25%);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:translateY(0);animation-timing-function:cubic-bezier(0,0,.2,1)}}.animate-float{animation:float 8s ease-in-out infinite;will-change:transform}.animate-fade-in-up{animation:fadeInUp .6s ease-out forwards}.animate-slide-in-bottom{animation:slideInFromBottom .5s ease-out forwards}.animate-slide-in-left{animation:slideInFromLeft .5s ease-out forwards}.animate-slide-in-right{animation:slideInFromRight .5s ease-out forwards}.animate-scale-in{animation:scaleIn .4s ease-out forwards}.animate-pulse-slow{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.animate-ping-slow{animation:ping 2s cubic-bezier(0,0,.2,1) infinite}.animate-bounce-slow{animation:bounce 2s infinite}@media (prefers-reduced-motion:reduce){.animate-bounce-slow,.animate-fade-in-up,.animate-float,.animate-ping-slow,.animate-pulse-slow,.animate-scale-in,.animate-slide-in-bottom,.animate-slide-in-left,.animate-slide-in-right{animation:none}*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.gpu-accelerated{transform:translateZ(0);will-change:transform}.hover-lift{transition:transform .2s ease-out,box-shadow .2s ease-out}.hover-lift:hover{transform:translateY(-2px);box-shadow:0 10px 25px rgba(0,0,0,.1)}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}