@keyframes pulse-slow{0%,to{opacity:.3;transform:scale(1)}50%{opacity:.5;transform:scale(1.05)}}.animate-pulse-slow{animation:pulse-slow 6s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-20px) rotate(5deg)}}.animate-float{animation:float 8s ease-in-out infinite}.animation-delay-500{animation-delay:.5s}.animation-delay-1000{animation-delay:1s}.animation-delay-2000{animation-delay:2s}.animation-delay-3000{animation-delay:3s}@keyframes gradient-shift{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}.animate-gradient{background-size:200% 200%;animation:gradient-shift 5s ease infinite}@keyframes glow{0%,to{box-shadow:0 0 20px rgba(16,185,129,.2)}50%{box-shadow:0 0 40px rgba(16,185,129,.4)}}.animate-glow{animation:glow 3s ease-in-out infinite}@keyframes data-flow{0%{stroke-dashoffset:100;opacity:0}50%{opacity:1}to{stroke-dashoffset:0;opacity:0}}.animate-data-flow{stroke-dasharray:100;animation:data-flow 3s ease-in-out infinite}@keyframes slide-in-left{0%{transform:translateX(-100px);opacity:0}to{transform:translateX(0);opacity:1}}.animate-slide-in-left{animation:slide-in-left .6s ease-out forwards}@keyframes slide-in-right{0%{transform:translateX(100px);opacity:0}to{transform:translateX(0);opacity:1}}.animate-slide-in-right{animation:slide-in-right .6s ease-out forwards}@keyframes scale-up{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}.animate-scale-up{animation:scale-up .5s ease-out forwards}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.animate-blink{animation:blink 1s step-end infinite}@keyframes count-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-count-up{animation:count-up .5s ease-out forwards}@keyframes ripple{0%{transform:scale(1);opacity:.5}to{transform:scale(2);opacity:0}}.animate-ripple{animation:ripple 2s ease-out infinite}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-shimmer{background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.1) 50%,rgba(255,255,255,0));background-size:200% 100%;animation:shimmer 2s infinite}.hover-lift{transition:transform .3s ease,box-shadow .3s ease}.hover-lift:hover{transform:translateY(-4px);box-shadow:0 20px 40px rgba(0,0,0,.3)}.custom-scrollbar::-webkit-scrollbar{width:8px}.custom-scrollbar::-webkit-scrollbar-track{background:rgba(255,255,255,.05);border-radius:4px}.custom-scrollbar::-webkit-scrollbar-thumb{background:rgba(16,185,129,.3);border-radius:4px}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:rgba(16,185,129,.5)}.glass{background:rgba(255,255,255,.05);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1)}.noise-overlay{position:relative}.noise-overlay:before{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");opacity:.03;pointer-events:none}.map-grid{background-image:linear-gradient(rgba(16,185,129,.03) 1px,transparent 0),linear-gradient(90deg,rgba(16,185,129,.03) 1px,transparent 0);background-size:50px 50px}.gradient-border{position:relative;background:linear-gradient(90deg,rgba(16,185,129,.2),rgba(59,130,246,.2));padding:1px;border-radius:1rem}.gradient-border>*{background:rgb(17,24,39);border-radius:calc(1rem - 1px)}