@keyframes float{0%,to{transform:translateY(0) rotate(0);opacity:.2}50%{transform:translateY(-20px) rotate(180deg);opacity:.8}}@keyframes glow{0%,to{box-shadow:0 0 20px #ef44444d}50%{box-shadow:0 0 30px #ef444499,0 0 40px #ef444466}}@keyframes shimmer{0%{background-position:-200% center}to{background-position:200% center}}@keyframes text-glow{0%,to{filter:drop-shadow(0 0 10px rgba(239,68,68,.5))}50%{filter:drop-shadow(0 0 20px rgba(239,68,68,.8)) drop-shadow(0 0 30px rgba(239,68,68,.6))}}@keyframes fade-in-up{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes scale-in{0%{opacity:0;transform:scale(.9)}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 grid-move{0%{transform:translate(0)}to{transform:translate(50px,50px)}}@keyframes pulse-glow{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}}@keyframes bounce-in{0%{opacity:0;transform:scale(.3)}50%{opacity:1;transform:scale(1.05)}70%{transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes morphing-blob{0%,to{border-radius:60% 40% 30% 70%/60% 30% 70% 40%}50%{border-radius:30% 60% 70% 40%/50% 60% 30%}}.animate-float{animation:float 6s ease-in-out infinite}.animate-glow{animation:glow 2s ease-in-out infinite}.animate-text-shimmer{background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);background-size:200% 100%;animation:shimmer 3s infinite}.animate-text-glow{animation:text-glow 2s ease-in-out infinite}.animate-fade-in-up{animation:fade-in-up .8s ease-out forwards}.animate-scale-in{animation:scale-in .6s ease-out forwards}.animate-slide-in-left{animation:slide-in-left .8s ease-out forwards}.animate-slide-in-right{animation:slide-in-right .8s ease-out forwards}.animate-pulse-glow{animation:pulse-glow 2s ease-in-out infinite}.animate-bounce-in{animation:bounce-in .8s ease-out forwards}.animate-morphing-blob{animation:morphing-blob 8s ease-in-out infinite}.glass-morphism{background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);box-shadow:0 8px 32px #1f26875e}.glass-morphism-dark{background:#0003;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);box-shadow:0 8px 32px #00000080}.btn-modern{position:relative;overflow:hidden;transition:all .3s ease}.btn-modern:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.btn-modern:hover:before{left:100%}.scroll-reveal{opacity:0;transform:translateY(30px);transition:all .8s ease-out}.scroll-reveal.revealed{opacity:1;transform:translateY(0)}.parallax{transform:translateZ(0);will-change:transform}.card-hover{transition:all .3s ease}.card-hover:hover{transform:translateY(-10px) scale(1.02);box-shadow:0 20px 40px #0000004d}.gradient-text{background:linear-gradient(45deg,#ef4444,#3b82f6,#8b5cf6);background-size:200% 200%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shimmer 3s ease-in-out infinite}@keyframes skeleton-loading{0%{background-position:-200px 0}to{background-position:calc(200px + 100%) 0}}.skeleton-loading{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200px 100%;animation:skeleton-loading 1.5s infinite}.gpu-accelerated{transform:translateZ(0);will-change:transform,opacity}.no-select{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.dark-gradient{background:linear-gradient(135deg,#1e293b,#0f172a,#020617)}.neon-glow{box-shadow:0 0 5px currentColor,0 0 10px currentColor,0 0 15px currentColor,0 0 20px currentColor}.interactive-element{cursor:pointer;transition:all .2s ease}.interactive-element:hover{transform:scale(1.05)}.interactive-element:active{transform:scale(.95)}::selection{background:#ef44444d;color:#fff}::-moz-selection{background:#ef44444d;color:#fff}
