@keyframes float{0%{transform:translate(0)}25%{transform:translate(4px,-8px)}50%{transform:translate(-2px,4px)}75%{transform:translate(-4px,-4px)}to{transform:translate(0)}}.animate-float{animation:float ease-in-out infinite;animation-duration:var(--float-duration,6s)}@keyframes fade-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{opacity:0;animation:fade-in .8s cubic-bezier(.25,.46,.45,.94) forwards;animation-delay:var(--fade-delay,0s)}@keyframes slide-up{0%{opacity:0;transform:translateY(32px)}to{opacity:1;transform:translateY(0)}}.animate-slide-up{opacity:0;animation:slide-up .9s cubic-bezier(.25,.46,.45,.94) forwards;animation-delay:var(--slide-delay,0s)}@keyframes scale-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.animate-scale-in{opacity:0;animation:scale-in 1.2s cubic-bezier(.25,.46,.45,.94) forwards;animation-delay:var(--fade-delay,0s)}@keyframes gradient-shift{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}.gradient-text-shimmer{background:linear-gradient(135deg,#60a5fa,#818cf8 40%,#60a5fa 80%,#93c5fd);background-size:200% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:gradient-shift 6s ease infinite}.section-divider{height:1px;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.06) 50%,transparent);margin:0 auto;max-width:60%}@keyframes glow-pulse{0%,to{opacity:.3}50%{opacity:.6}}.glow-pulse{animation:glow-pulse 4s ease-in-out infinite}@keyframes shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.shimmer-effect{position:relative;overflow:hidden}.shimmer-effect:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,hsla(0,0%,100%,0),hsla(0,0%,100%,.05) 50%,hsla(0,0%,100%,0));animation:shimmer 3s infinite}