@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInFromBottom{0%{transform:translateY(100%)}to{transform:translateY(0)}}.animate-fadeInUp{animation:fadeInUp .6s ease-out}.animate-fadeIn{animation:fadeIn .8s ease-out}.animate-slideInFromBottom{animation:slideInFromBottom .4s cubic-bezier(.68,-.55,.265,1.55)}@keyframes ping{75%,to{transform:scale(2);opacity:0}}.animate-ping{animation:ping 1s cubic-bezier(0,0,.2,1) infinite}@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-bounce{animation:bounce 1s infinite}html{scroll-behavior:smooth}.glass-effect{background:hsla(0,0%,100%,.8);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid hsla(0,0%,100%,.3);box-shadow:0 8px 32px 0 rgba(31,38,135,.15)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#f8fafc}::-webkit-scrollbar-thumb{background:#e5e5e5;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#cbd5e1}.btn-primary{transition:all .2s ease}.btn-primary:active{transform:scale(.98)}.hover-card{transition:all .3s ease}.hover-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px rgba(0,0,0,.1)}.gradient-text-animated{background-size:200% 200%;animation:gradientShift 3s ease infinite}@keyframes gradientShift{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}:focus-visible{outline:2px solid #8b5cf6;outline-offset:2px;border-radius:4px}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media (max-width:768px){.mobile-sticky-cta{position:fixed;bottom:0;left:0;right:0;z-index:50;animation:slideInFromBottom .3s ease-out}}