@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-10px)}to{transform:translateY(0)}}@keyframes scanline{0%{transform:translateY(-100%)}to{transform:translateY(100%)}}@keyframes pulse-glow{0%{box-shadow:0 0 0 0 var(--primary-glow)}70%{box-shadow:0 0 0 10px #0000}to{box-shadow:0 0 #0000}}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-fade-up{animation:fadeInUp var(--dur-normal) ease-out forwards}.animate-fade-left{animation:fadeInLeft var(--dur-normal) ease-out forwards}.animate-fade-right{animation:fadeInRight var(--dur-normal) ease-out forwards}.animate-float{animation:4s ease-in-out infinite float}.animate-pulse-glow{animation:2s infinite pulse-glow}.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}.reveal-on-scroll{opacity:0;visibility:hidden;transition:opacity var(--dur-normal) ease-out, transform var(--dur-normal) ease-out, visibility var(--dur-normal);will-change:opacity, visibility, transform}.reveal-on-scroll.is-visible{opacity:1;visibility:visible;transform:none}
