@keyframes fadeInUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.animate-fadeInUp{opacity:0;animation:.8s cubic-bezier(.4,0,.2,1) forwards fadeInUp}.delay-100{animation-delay:.1s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.delay-400{animation-delay:.4s}.delay-500{animation-delay:.5s}.delay-600{animation-delay:.6s}@keyframes fadeInScale{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.animate-fadeInScale{opacity:0;animation:.6s cubic-bezier(.34,1.56,.64,1) forwards fadeInScale}@keyframes slideInRight{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}.animate-slideInRight{opacity:0;animation:.8s cubic-bezier(.4,0,.2,1) forwards slideInRight}@keyframes slideInLeft{0%{opacity:0;transform:translate(-40px)}to{opacity:1;transform:translate(0)}}.animate-slideInLeft{opacity:0;animation:.8s cubic-bezier(.4,0,.2,1) forwards slideInLeft}@keyframes countUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-countUp{animation:.5s cubic-bezier(.4,0,.2,1) forwards countUp}@keyframes pulseGlow{0%,to{box-shadow:0 0 #10b981b3}50%{box-shadow:0 0 20px 8px #10b9814d}}.animate-pulseGlow{animation:2s ease-in-out infinite pulseGlow}@keyframes gradientShift{0%,to{background-position:0%}50%{background-position:100%}}.animate-gradientShift{background-size:200% 200%;animation:3s infinite gradientShift}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.animate-float{animation:3s ease-in-out infinite float}.animate-float-delayed{animation:3s ease-in-out 1.5s infinite float}@keyframes tilt{0%,to{transform:rotate(0)}25%{transform:rotate(2deg)}75%{transform:rotate(-2deg)}}.animate-tilt{animation:4s ease-in-out infinite tilt}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.animate-shimmer{background:linear-gradient(90deg,#0000 0%,#ffffff4d 50%,#0000 100%) 0 0/1000px 100%;animation:2s infinite shimmer}.card-hover-lift{transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s}.card-hover-lift:hover{transform:translateY(-12px)scale(1.02);box-shadow:0 20px 40px -10px #00000026}.bg-grid-pattern-light{background-image:linear-gradient(90deg,#00000008 1px,#0000 1px),linear-gradient(#00000008 1px,#0000 1px);background-size:30px 30px}.bg-dots-pattern{background-image:radial-gradient(#10b98126 1px,#0000 1px);background-size:20px 20px}@keyframes progressFill{0%{width:0%}}.animate-progressFill{animation:1.5s cubic-bezier(.4,0,.2,1) forwards progressFill}@keyframes iconBounce{0%,to{transform:translateY(0)scale(1)}25%{transform:translateY(-8px)scale(1.05)}50%{transform:translateY(0)scale(1)}75%{transform:translateY(-4px)scale(1.02)}}.animate-iconBounce{animation:2s ease-in-out infinite iconBounce}@keyframes textGradient{0%,to{background-position:0%}50%{background-position:100%}}.animate-textGradient{background:linear-gradient(90deg,#10b981,#8b5cf6,#10b981) 0 0/200%;-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;animation:3s infinite textGradient}@keyframes scrollBounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(8px)}60%{transform:translateY(4px)}}.animate-scrollBounce{animation:2s ease-in-out infinite scrollBounce}@keyframes ripple{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(2)}}.animate-ripple{animation:1.5s cubic-bezier(.4,0,.2,1) infinite ripple}.will-change-transform{will-change:transform}.will-change-opacity{will-change:opacity}.transition-all-smooth{transition:all .3s cubic-bezier(.4,0,.2,1)}.transition-transform-smooth{transition:transform .3s cubic-bezier(.34,1.56,.64,1)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (max-width:768px){.animate-fadeInUp,.animate-fadeInScale,.animate-slideInRight,.animate-slideInLeft{animation-duration:.5s}.card-hover-lift:hover{transform:translateY(-6px)scale(1.01)}}
