@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes fade-in-up{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes shimmer{0%{background-position:-200px 0}to{background-position:calc(200px + 100%) 0}}@keyframes gradient-shift{0%,to{background-position:0%}50%{background-position:100%}}.animate-fade-in{animation:.6s ease-out forwards fade-in}.animate-fade-in-up{opacity:0;animation:.8s ease-out forwards fade-in-up}.animate-slide-up{animation:.6s ease-out forwards slide-up}.animate-float{animation:3s ease-in-out infinite float}.animate-shimmer{background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent) 0 0/200px 100%;animation:2s linear infinite shimmer}.animate-gradient-shift{background-size:200% 200%;animation:4s infinite gradient-shift}.floating-element{opacity:.1;pointer-events:none;position:absolute}.floating-element:first-child{animation:6s ease-in-out infinite float}.floating-element:nth-child(2){animation:8s ease-in-out 1s infinite float}.floating-element:nth-child(3){animation:10s ease-in-out 2s infinite float}.floating-element:nth-child(4){animation:7s ease-in-out 3s infinite float}.stagger-animation>*{opacity:0;animation:.8s ease-out forwards fade-in-up;transform:translateY(30px)}.stagger-animation>:first-child{animation-delay:.1s}.stagger-animation>:nth-child(2){animation-delay:.2s}.stagger-animation>:nth-child(3){animation-delay:.3s}.stagger-animation>:nth-child(4){animation-delay:.4s}.stagger-animation>:nth-child(5){animation-delay:.5s}.stagger-animation>:nth-child(6){animation-delay:.6s}.masonry-item{opacity:0;animation:.6s ease-out forwards masonry-fade-in;transform:scale(.8)translateY(50px)}@keyframes masonry-fade-in{to{opacity:1;transform:scale(1)translateY(0)}}.hover-glow:hover{box-shadow:0 0 20px rgba(59,130,246,.3)}.hover-lift:hover{transform:translateY(-8px)scale(1.02)}.skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%) 0 0/200% 100%;animation:1.5s infinite shimmer}@keyframes wave{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes wave-slow{0%{transform:translate(-100%)scaleY(.8)}50%{transform:translate(0%)scaleY(1.2)}to{transform:translate(100%)scaleY(.8)}}.wave-animation{background:linear-gradient(45deg,rgba(255,255,255,.3),rgba(255,255,255,.1));border-radius:50%;width:200%;height:20px;animation:8s linear infinite wave;position:absolute;bottom:-2px;left:0}.wave-animation:nth-child(2){opacity:.7;height:15px;animation:12s linear -2s infinite wave-slow}.wave-animation:nth-child(3){opacity:.5;height:10px;animation:15s linear -4s infinite wave}@keyframes card-slide-up{0%{opacity:0;transform:translateY(60px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.card-slide-up{animation:.6s ease-out forwards card-slide-up}@keyframes attention-pulse{0%{box-shadow:0 0 rgba(59,130,246,.4)}70%{box-shadow:0 0 0 10px rgba(59,130,246,0)}to{box-shadow:0 0 rgba(59,130,246,0)}}.attention-pulse{animation:2s infinite attention-pulse}@keyframes reveal-up{0%{opacity:0;filter:blur(4px);transform:translateY(40px)}to{opacity:1;filter:blur();transform:translateY(0)}}.reveal-up{animation:.8s ease-out forwards reveal-up}
