.animate-blob{animation:blob-bounce 7s infinite}.animation-delay-2000{animation-delay:2s}.animation-delay-4000{animation-delay:4s}.animation-delay-500{animation-delay:.5s}.animation-delay-1000{animation-delay:1s}.animation-delay-1500{animation-delay:1.5s}.animation-delay-2500{animation-delay:2.5s}.animation-delay-3000{animation-delay:3s}.animation-delay-3500{animation-delay:3.5s}@keyframes blob-bounce{0%{transform:translate(0) scale(1)}33%{transform:translate(30px,-50px) scale(1.1)}66%{transform:translate(-20px,20px) scale(.9)}to{transform:translate(0) scale(1)}}.animate-building-rise{animation:building-rise 10s infinite;animation-timing-function:ease-in-out}@keyframes building-rise{0%{transform:translateY(100%);opacity:.2}20%{transform:translateY(0);opacity:1}40%{transform:translateY(0);opacity:1}60%{transform:translateY(0);opacity:1}80%{transform:translateY(0);opacity:.8}to{transform:translateY(100%);opacity:.2}}.animate-window-flicker{animation:window-flicker 3s infinite}@keyframes window-flicker{0%{opacity:.2}20%{opacity:1}40%{opacity:.6}60%{opacity:.9}80%{opacity:.3}to{opacity:.2}}.animate-pin-drop{animation:pin-drop 1s forwards;opacity:0;transform:translateY(-20px)}@keyframes pin-drop{0%{opacity:0;transform:translateY(-20px)}70%{opacity:1;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}.graph-path{stroke-dasharray:800;stroke-dashoffset:800;animation:draw-graph 10s infinite alternate}.graph-area{opacity:0;animation:fade-area 10s infinite alternate}.graph-dot{opacity:0;animation:move-dot 10s infinite alternate}@keyframes draw-graph{0%{stroke-dashoffset:800}50%{stroke-dashoffset:0}to{stroke-dashoffset:0}}@keyframes fade-area{0%{opacity:0}50%{opacity:0}60%{opacity:.7}to{opacity:.7}}@keyframes move-dot{0%{opacity:0;cx:0;cy:60}49%{opacity:0}50%{opacity:1;cx:0;cy:60}60%{cx:60;cy:48}70%{cx:120;cy:40}80%{cx:180;cy:24}90%{cx:240;cy:10}to{cx:300;cy:6}}.animate-pulse-value{animation:pulse-value 2s infinite}@keyframes pulse-value{0%{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05);color:#2563eb}to{opacity:1;transform:scale(1)}}.animate-counter{animation:counter-fade 1s forwards;opacity:0}@keyframes counter-fade{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-float{animation:float 6s infinite}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-10px)}to{transform:translateY(0)}}.animate-gradient-x{background-size:200% 200%;animation:gradient-x 3s ease infinite}@keyframes gradient-x{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}
