@keyframes typing{0%{width:0}to{width:100%}}@keyframes blink-caret{0%,to{border-color:transparent}50%{border-color:currentColor}}@keyframes blur-fade-in{0%{opacity:0;filter:blur(10px);transform:translateY(20px)}to{opacity:1;filter:blur(0);transform:translateY(0)}}@keyframes blur-fade-out{0%{opacity:1;filter:blur(0);transform:translateY(0)}to{opacity:0;filter:blur(10px);transform:translateY(20px)}}@keyframes shimmer{0%{background-position:-200% center}to{background-position:200% center}}@keyframes ripple{0%{transform:scale(0);opacity:1}to{transform:scale(4);opacity:0}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}@keyframes float-subtle{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes gradient-shift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes fade-in-up{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in-down{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes scale-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slide-in-left{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes slide-in-right{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes pulse-subtle{0%,to{opacity:1}50%{opacity:.8}}.blur-fade-in{animation:blur-fade-in .8s cubic-bezier(.16,1,.3,1) forwards}.blur-fade-out{animation:blur-fade-out .8s cubic-bezier(.16,1,.3,1) forwards}.blur-fade-in-delay-100{animation:blur-fade-in .8s cubic-bezier(.16,1,.3,1) .1s forwards;opacity:0}.blur-fade-in-delay-200{animation:blur-fade-in .8s cubic-bezier(.16,1,.3,1) .2s forwards;opacity:0}.blur-fade-in-delay-300{animation:blur-fade-in .8s cubic-bezier(.16,1,.3,1) .3s forwards;opacity:0}.blur-fade-in-delay-400{animation:blur-fade-in .8s cubic-bezier(.16,1,.3,1) .4s forwards;opacity:0}.text-gradient{background:linear-gradient(90deg,#4361ee,#805dca);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.text-gradient-animated{background:linear-gradient(90deg,#4361ee,#805dca,#4361ee);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:gradient-shift 3s ease infinite}.btn-shimmer{position:relative;overflow:hidden;background:linear-gradient(90deg,#4361ee,#5a7cff,#4361ee,#5a7cff,#4361ee);background-size:200% auto;animation:shimmer 3s linear infinite;transition:transform .3s ease}.btn-shimmer:hover{transform:translateY(-2px)}.ripple-container{position:relative;overflow:hidden}.ripple-effect{position:absolute;border-radius:50%;background:#fff9;pointer-events:none;animation:ripple .6s ease-out}.float-animation{animation:float 6s ease-in-out infinite}.float-subtle{animation:float-subtle 4s ease-in-out infinite}.glass{background:#ffffff1a;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}.glass-dark{background:#0000001a;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1)}.fade-in{animation:fade-in .6s ease-out forwards}.fade-in-up{animation:fade-in-up .8s cubic-bezier(.16,1,.3,1) forwards}.fade-in-down{animation:fade-in-down .8s cubic-bezier(.16,1,.3,1) forwards}.scale-in{animation:scale-in .5s cubic-bezier(.16,1,.3,1) forwards}.slide-in-left{animation:slide-in-left .8s cubic-bezier(.16,1,.3,1) forwards}.slide-in-right{animation:slide-in-right .8s cubic-bezier(.16,1,.3,1) forwards}.scroll-reveal{opacity:0;transform:translateY(30px);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1)}.scroll-reveal.is-visible{opacity:1;transform:translateY(0)}.hover-lift{transition:transform .3s ease,box-shadow .3s ease}.hover-lift:hover{transform:translateY(-5px);box-shadow:0 10px 40px #00000026}.hover-glow{transition:box-shadow .3s ease}.hover-glow:hover{box-shadow:0 0 30px #4361ee4d}.progressive-blur{position:relative}.progressive-blur:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#fff0,#fffc);backdrop-filter:blur(0px);-webkit-backdrop-filter:blur(0px);pointer-events:none}.grid-pattern{background-image:linear-gradient(rgba(67,97,238,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(67,97,238,.05) 1px,transparent 1px);background-size:50px 50px}.pulse-subtle{animation:pulse-subtle 2s ease-in-out infinite}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.float-animation,.float-subtle,.text-gradient-animated,.btn-shimmer{animation:none!important}.scroll-reveal{opacity:1!important;transform:none!important}}@media(max-width:768px){.blur-fade-in,.fade-in-up{animation-duration:.5s}.float-animation,.float-subtle{animation:none}.hover-lift:hover{transform:translateY(-2px)}}.dot-pattern{background-image:radial-gradient(circle,rgba(0,0,0,.15) 1px,transparent 1px);background-size:16px 16px}.dot-pattern-radial{background-image:radial-gradient(circle,rgba(0,0,0,.15) 1px,transparent 1px);background-size:16px 16px;-webkit-mask-image:radial-gradient(circle at center,black 40%,transparent 70%);mask-image:radial-gradient(circle at center,black 40%,transparent 70%)}.dot-pattern-linear{background-image:radial-gradient(circle,rgba(0,0,0,.15) 1px,transparent 1px);background-size:20px 20px;-webkit-mask-image:linear-gradient(to bottom right,black,transparent,transparent);mask-image:linear-gradient(to bottom right,black,transparent,transparent)}.dot-pattern-glow-primary{background-image:radial-gradient(circle,rgba(255,178,55,.4) 1.5px,transparent 1.5px);background-size:20px 20px;-webkit-mask-image:radial-gradient(circle at center,black 50%,transparent 80%);mask-image:radial-gradient(circle at center,black 50%,transparent 80%);filter:blur(.5px)}.dot-pattern-glow-secondary{background-image:radial-gradient(circle,rgba(255,71,133,.4) 1.5px,transparent 1.5px);background-size:20px 20px;-webkit-mask-image:radial-gradient(circle at center,black 50%,transparent 80%);mask-image:radial-gradient(circle at center,black 50%,transparent 80%);filter:blur(.5px)}.dark .dot-pattern,.dark .dot-pattern-radial,.dark .dot-pattern-linear{background-image:radial-gradient(circle,rgba(255,255,255,.15) 1px,transparent 1px)}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes marquee-vertical{0%{transform:translateY(0)}to{transform:translateY(-50%)}}.marquee-container{position:relative;width:100%;overflow:hidden;display:flex;flex-direction:column;gap:1rem}.marquee{display:flex;gap:1rem;animation:marquee var(--duration, 40s) linear infinite;width:-moz-fit-content;width:fit-content}.marquee-container:hover .marquee{animation-play-state:paused}.marquee.reverse{animation-direction:reverse}.marquee-fade-left{pointer-events:none;position:absolute;inset-y:0;left:0;width:25%;background:linear-gradient(to right,white,transparent)}.marquee-fade-right{pointer-events:none;position:absolute;inset-y:0;right:0;width:25%;background:linear-gradient(to left,white,transparent)}.dark .marquee-fade-left{background:linear-gradient(to right,rgb(17,24,39),transparent)}.dark .marquee-fade-right{background:linear-gradient(to left,rgb(17,24,39),transparent)}.marquee-item{flex-shrink:0;display:flex;align-items:center;justify-content:center}.marquee-vertical{animation:marquee-vertical var(--duration, 40s) linear infinite}.marquee-vertical.reverse{animation-direction:reverse}
