.neon-glow-hover{position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.neon-glow-hover:before{content:"";position:absolute;inset:-2px;background:linear-gradient(45deg,#4dd0e1,#fb5a00,#8e6ed3);border-radius:inherit;opacity:0;z-index:-1;filter:blur(20px);transition:opacity .5s cubic-bezier(.4,0,.2,1)}.neon-glow-hover:hover:before{opacity:.7;animation:neon-pulse 2s ease-in-out infinite}@keyframes neon-pulse{0%,to{opacity:.7;filter:blur(20px)}50%{opacity:1;filter:blur(25px)}}.glitch-hover{position:relative;display:inline-block}.glitch-hover:after,.glitch-hover:before{content:attr(data-text);position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;pointer-events:none}.glitch-hover:hover:before{animation:glitch-1 .3s cubic-bezier(.25,.46,.45,.94) infinite both;color:#4dd0e1;z-index:-1}.glitch-hover:hover:after{animation:glitch-2 .3s cubic-bezier(.25,.46,.45,.94) infinite reverse both;color:#fb5a00;z-index:-2}@keyframes glitch-1{0%{transform:translate(0);opacity:1}20%{transform:translate(-2px,2px);opacity:.8}40%{transform:translate(-2px,-2px);opacity:.6}60%{transform:translate(2px,2px);opacity:.8}80%{transform:translate(2px,-2px);opacity:.6}to{transform:translate(0);opacity:1}}@keyframes glitch-2{0%{transform:translate(0);opacity:1}20%{transform:translate(2px,-2px);opacity:.8}40%{transform:translate(2px,2px);opacity:.6}60%{transform:translate(-2px,-2px);opacity:.8}80%{transform:translate(-2px,2px);opacity:.6}to{transform:translate(0);opacity:1}}.holo-shimmer{position:relative;overflow:hidden}.holo-shimmer:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(45deg,transparent 30%,rgba(77,208,225,.3) 50%,transparent 70%);transform:translateX(-100%) translateY(-100%) rotate(45deg);transition:transform .6s cubic-bezier(.4,0,.2,1)}.holo-shimmer:hover:before{transform:translateX(100%) translateY(100%) rotate(45deg)}.scan-lines{position:relative}.scan-lines:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,rgba(0,0,0,.1),transparent 1px,transparent 2px,rgba(0,0,0,.1) 3px);pointer-events:none;opacity:.3;animation:scan 8s linear infinite}@keyframes scan{0%{transform:translateY(0)}to{transform:translateY(10px)}}.magnetic-hover{transition:transform .2s cubic-bezier(.4,0,.2,1)}.data-stream{position:relative;overflow:hidden}.data-stream:before{content:"01010101 11001100 10101010";position:absolute;top:0;left:0;width:100%;font-family:Courier New,monospace;font-size:10px;color:rgba(77,208,225,.2);white-space:nowrap;animation:data-scroll 10s linear infinite;pointer-events:none}@keyframes data-scroll{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.card-3d{transform-style:preserve-3d;transition:transform .5s cubic-bezier(.4,0,.2,1)}.card-3d:hover{transform:perspective(1000px) rotateX(2deg) rotateY(-2deg) translateZ(10px)}.glow-border{position:relative;background:linear-gradient(45deg,rgba(77,208,225,.2),rgba(142,110,211,.2));background-size:200% 200%;animation:glow-border-shift 3s ease infinite}@keyframes glow-border-shift{0%,to{background-position:0 50%}50%{background-position:100% 50%}}.typewriter{overflow:hidden;border-right:2px solid #4dd0e1;white-space:nowrap;animation:typewriter 2s steps(40) 1s forwards,blink .75s step-end infinite}@keyframes typewriter{0%{width:0}to{width:100%}}@keyframes blink{50%{border-color:transparent}}@keyframes particle-burst{0%{transform:translate(0) scale(1);opacity:1}to{transform:translate(var(--x),var(--y)) scale(0);opacity:0}}.energy-pulse{position:relative}.energy-pulse:before{content:"";position:absolute;inset:-5px;border-radius:inherit;background:radial-gradient(circle,rgba(77,208,225,.3),transparent 70%);opacity:0;animation:energy-pulse-animation 2s ease-out infinite}@keyframes energy-pulse-animation{0%,to{transform:scale(.95);opacity:0}50%{transform:scale(1.1);opacity:.5}}.cyber-spinner{width:40px;height:40px;border:3px solid rgba(77,208,225,.1);border-top-color:#4dd0e1;border-radius:50%;animation:cyber-spin .8s linear infinite}@keyframes cyber-spin{to{transform:rotate(1turn)}}.fade-in-up{animation:fadeInUp .8s cubic-bezier(.4,0,.2,1) forwards;opacity:0}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.gpu-accelerated{will-change:transform;transform:translateZ(0);backface-visibility:hidden;perspective:1000px}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}