@keyframes glow{0%{box-shadow:0 0 5px rgba(123,97,255,.2),0 0 10px rgba(123,97,255,.1)}50%{box-shadow:0 0 20px rgba(123,97,255,.4),0 0 30px rgba(123,97,255,.2)}to{box-shadow:0 0 5px rgba(123,97,255,.2),0 0 10px rgba(123,97,255,.1)}}.animate-glow{animation:glow 3s ease-in-out infinite}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-10px)}to{transform:translateY(0)}}.animate-float{animation:float 6s ease-in-out infinite}.animate-float-slow{animation:float 8s ease-in-out infinite}.animate-float-fast{animation:float 4s ease-in-out infinite}@keyframes scroll{0%{transform:translateX(0)}to{transform:translateX(calc(-100% - 2rem))}}.animate-scroll{animation:scroll 60s linear infinite}.animate-scroll:hover{animation-play-state:paused}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fade-in{opacity:0;animation:fadeIn .6s ease-out forwards}.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}.delay-700{animation-delay:.7s}.delay-800{animation-delay:.8s}.delay-900{animation-delay:.9s}.delay-1000{animation-delay:1s}@keyframes gradientAnimation{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}.animate-gradient{background-size:200% 200%;animation:gradientAnimation 15s ease infinite}.particles-container{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden;z-index:0}@keyframes borderGlow{0%{border-color:rgba(123,97,255,.4)}50%{border-color:rgba(59,130,246,.8)}to{border-color:rgba(123,97,255,.4)}}.animate-border-glow{border:1px solid rgba(123,97,255,.4);animation:borderGlow 3s infinite}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.animate-pulse-slow{animation:pulse 3s infinite}@keyframes lineGrow{0%{width:0}to{width:100%}}.animate-line{position:relative}.animate-line:after{content:"";position:absolute;bottom:-5px;left:0;width:0;height:2px;background:linear-gradient(90deg,#7b61ff,#3b82f6);animation:lineGrow .5s forwards}@keyframes digitalNoise{0%,to{clip-path:inset(10% 0 10% 0)}20%{clip-path:inset(33% 0 34% 0)}40%{clip-path:inset(20% 0 21% 0)}60%{clip-path:inset(80% 0 81% 0)}80%{clip-path:inset(56% 0 57% 0)}}.digital-noise{position:relative}.digital-noise:before{content:attr(data-text);position:absolute;left:0;text-shadow:1px 0 blue;top:0;width:100%;height:100%;background:transparent;animation:digitalNoise 3s linear infinite alternate-reverse}:focus-visible{outline:2px solid var(--color-ring);outline-offset:2px}.gradient-text{background:linear-gradient(90deg,#2563eb,#4f46e5);background-clip:text;-webkit-background-clip:text;color:transparent;text-shadow:0 1px 1px rgba(0,0,0,.1)}.dark .gradient-text{background:linear-gradient(90deg,#c084fc,#60a5fa);background-clip:text;-webkit-background-clip:text;color:transparent;text-shadow:0 1px 1px rgba(0,0,0,.3)}.skip-link:focus{position:fixed;top:1rem;left:1rem;z-index:50;padding:.5rem 1rem;background-color:white;color:#111827;border-radius:.375rem;box-shadow:0 10px 15px -3px rgba(0,0,0,.1)}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.animate-float,.animate-float-fast,.animate-float-slow,.animate-pulse,.animate-pulse-slow,.animate-scroll{animation:none!important}}@media (max-width:640px){h1{font-size:2rem!important}h1,h2{line-height:1.2!important}h2{font-size:1.75rem!important}h3{font-size:1.25rem!important}.container{padding-left:1rem!important;padding-right:1rem!important}}@media (forced-colors:active){.gradient-text{background:none!important;-webkit-text-fill-color:initial!important;color:CanvasText!important}a:focus,button:focus{outline:2px solid CanvasText!important}}@media (hover:none){a:hover,button:hover{transition:none!important}}.futuristic-card:focus-within{box-shadow:0 0 0 2px var(--color-ring),0 10px 25px -5px rgba(0,0,0,.1)!important}.image-loading{background:linear-gradient(90deg,#f0f0f0,#f8f8f8 50%,#f0f0f0);background-size:200% 100%;animation:shimmer 1.5s infinite}@keyframes shimmer{0%{background-position:-100% 0}to{background-position:100% 0}}