@keyframes shimmer{0%{background-position:-200% center}to{background-position:200% center}}.text-shimmer{background:linear-gradient(90deg,#fff,#a1a1aa,#fff,#a1a1aa,#fff);background-size:200% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:shimmer 6s linear infinite}.text-shimmer-vivid{background:linear-gradient(90deg,#fff,#8b5cf6,#06b6d4,#fff,#8b5cf6,#06b6d4);background-size:300% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:shimmer 5s linear infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}.animate-float{animation:float 6s ease-in-out infinite}.animate-float-slow{animation:float 8s ease-in-out infinite}.animate-float-delay{animation:float 7s ease-in-out 2s infinite}@keyframes gradient-pulse{0%,to{opacity:.4;transform:scale(1)}50%{opacity:.7;transform:scale(1.05)}}.animate-gradient-pulse{animation:gradient-pulse 4s ease-in-out infinite}@keyframes reveal-up{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.reveal-up{animation:reveal-up .8s cubic-bezier(.16,1,.3,1) forwards;opacity:0}@keyframes border-rotate{0%{--angle: 0deg}to{--angle: 360deg}}@property --angle{syntax: "<angle>"; initial-value: 0deg; inherits: false;}.gradient-border{position:relative;background:#09090b;overflow:hidden}.gradient-border:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;padding:1px;border-radius:inherit;background:conic-gradient(from var(--angle),transparent 25%,#8b5cf6 50%,#06b6d4 75%,transparent 100%);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:border-rotate 4s linear infinite;pointer-events:none}.glass-card{background:#ffffff05;border:1px solid rgba(255,255,255,.06);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:all .5s cubic-bezier(.16,1,.3,1)}.glass-card:hover{background:#ffffff0d;border-color:#ffffff26;transform:translateY(-6px);box-shadow:0 20px 60px -15px #8b5cf61a,0 0 30px -10px #06b6d414}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.animate-marquee{animation:marquee 25s linear infinite}.card-glow{position:relative;overflow:hidden;transition:box-shadow .5s ease}.card-glow:hover{box-shadow:0 10px 50px -10px #8b5cf626,0 0 40px -15px #06b6d41a}.img-zoom{overflow:hidden}.img-zoom img{transition:transform .8s cubic-bezier(.16,1,.3,1),filter .8s ease,opacity .8s ease}.img-zoom:hover img{transform:scale(1.08)}@keyframes number-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}.stat-number{animation:number-pulse 3s ease-in-out infinite}@keyframes scroll-hint{0%{transform:translateY(0);opacity:1}50%{transform:translateY(8px);opacity:.4}to{transform:translateY(0);opacity:1}}.animate-scroll-hint{animation:scroll-hint 2s ease-in-out infinite}@keyframes glow-dot{0%,to{box-shadow:0 0 4px 1px #8b5cf666}50%{box-shadow:0 0 10px 3px #8b5cf6cc}}.glow-dot{animation:glow-dot 2s ease-in-out infinite}@keyframes line-grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.accent-line{transform-origin:left;animation:line-grow 1.5s cubic-bezier(.16,1,.3,1) 1.5s forwards;transform:scaleX(0)}@keyframes btn-shine{0%{left:-100%}50%,to{left:100%}}.btn-shine{position:relative;overflow:hidden}.btn-shine:after{content:"";position:absolute;top:0;left:-100%;width:50%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);animation:btn-shine 3s ease-in-out infinite}
