.gradient-text{background:linear-gradient(-45deg,#6366f1,#8b5cf6,#ec4899,#f59e0b,#6366f1) 0 0/400% 400%;-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;animation:8s ease-in-out infinite gradient-shift}@keyframes gradient-shift{0%,to{background-position:0%}25%{background-position:100%}50%{background-position:100% 100%}75%{background-position:0 100%}}.floating-icon{animation:4s ease-in-out infinite float}@keyframes float{0%,to{transform:translateY(0)rotate(0)}25%{transform:translateY(-8px)rotate(2deg)}50%{transform:translateY(-12px)rotate(0)}75%{transform:translateY(-8px)rotate(-2deg)}}.pulse-glow{animation:3s ease-in-out infinite pulse-glow}@keyframes pulse-glow{0%,to{box-shadow:0 0 20px #6366f14d,0 0 40px #8b5cf633}50%{box-shadow:0 0 40px #6366f180,0 0 60px #8b5cf666}}.shimmer{position:relative;overflow:hidden}.shimmer:before{content:"";background:linear-gradient(120deg,#0000,#ffffff4d,#ffffff80,#ffffff4d,#0000);width:150%;height:100%;transition:left .8s cubic-bezier(.4,0,.2,1);position:absolute;top:0;left:-150%}.shimmer:hover:before{left:150%}.scale-on-hover{transition:transform .4s cubic-bezier(.4,0,.2,1)}.scale-on-hover:hover{transform:scale(1.08)}.rotate-on-hover{transition:transform .6s cubic-bezier(.4,0,.2,1)}.rotate-on-hover:hover{transform:rotate(360deg)scale(1.1)}.bounce-in{animation:.8s cubic-bezier(.68,-.55,.265,1.55) bounce-in}@keyframes bounce-in{0%{opacity:0;transform:scale(.3)rotate(-5deg)}50%{transform:scale(1.08)rotate(2deg)}70%{transform:scale(.95)rotate(-1deg)}85%{transform:scale(1.02)rotate(.5deg)}to{opacity:1;transform:scale(1)rotate(0)}}.slide-in-left{animation:1s cubic-bezier(.4,0,.2,1) slide-in-left}@keyframes slide-in-left{0%{opacity:0;transform:translate(-100%)scale(.95)}to{opacity:1;transform:translate(0)scale(1)}}.slide-in-right{animation:1s cubic-bezier(.4,0,.2,1) slide-in-right}@keyframes slide-in-right{0%{opacity:0;transform:translate(100%)scale(.95)}to{opacity:1;transform:translate(0)scale(1)}}.fade-in{animation:1.2s cubic-bezier(.4,0,.2,1) fade-in}@keyframes fade-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.typing-effect{white-space:nowrap;border-right:2px solid #3b82f6;animation:3s steps(40,end) typing,.75s step-end infinite blink-caret;overflow:hidden}@keyframes typing{0%{width:0}to{width:100%}}@keyframes blink-caret{0%,to{border-color:#0000}50%{border-color:#3b82f6}}.parallax-bg{will-change:transform;transform:translateZ(0)}.glow-button{position:relative;overflow:hidden}.glow-button:before{content:"";background:linear-gradient(120deg,#0000,#ffffff4d,#fff9,#ffffff4d,#0000);width:200%;height:200%;transition:left .8s cubic-bezier(.4,0,.2,1);position:absolute;top:-50%;left:-150%;transform:rotate(30deg)}.glow-button:hover:before{left:150%}.morphing-bg{background:linear-gradient(-45deg,#6366f1,#8b5cf6,#ec4899,#f59e0b,#10b981,#6366f1) 0 0/400% 400%;animation:20s ease-in-out infinite morphing}@keyframes morphing{0%,to{background-position:0%}25%{background-position:100%}50%{background-position:100% 100%}75%{background-position:0 100%}}.stagger-item{opacity:0;animation:.8s cubic-bezier(.4,0,.2,1) forwards stagger-in;transform:translateY(30px)scale(.95)}.stagger-item:first-child{animation-delay:.1s}.stagger-item:nth-child(2){animation-delay:.18s}.stagger-item:nth-child(3){animation-delay:.26s}.stagger-item:nth-child(4){animation-delay:.34s}.stagger-item:nth-child(5){animation-delay:.42s}.stagger-item:nth-child(6){animation-delay:.5s}@keyframes stagger-in{to{opacity:1;transform:translateY(0)scale(1)}}.spinner{border:4px solid #6366f11a;border-top-color:#6366f1;border-radius:50%;width:40px;height:40px;animation:1s cubic-bezier(.4,0,.2,1) infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.card-hover{transition:all .5s cubic-bezier(.4,0,.2,1)}.card-hover:hover{transform:translateY(-12px)scale(1.02);box-shadow:0 25px 50px #6366f126,0 10px 20px #8b5cf61a}.text-reveal{overflow:hidden}.text-reveal span{animation:1s cubic-bezier(.4,0,.2,1) forwards text-reveal;display:inline-block;transform:translateY(120%)rotate(5deg)}@keyframes text-reveal{to{transform:translateY(0)rotate(0)}}.counter{animation:2.5s cubic-bezier(.4,0,.2,1) count-up;display:inline-block}@keyframes count-up{0%{opacity:0;transform:translateY(30px)scale(.8)}to{opacity:1;transform:translateY(0)scale(1)}}.breathing{animation:4s ease-in-out infinite breathing}@keyframes breathing{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.wiggle{animation:1s ease-in-out wiggle}@keyframes wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-5deg)}75%{transform:rotate(5deg)}}.slide-up-fade{animation:1s cubic-bezier(.4,0,.2,1) slide-up-fade}@keyframes slide-up-fade{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}*{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
