/**
 * Tech Spartan — animations.css v2
 */
/* Fade-in-up on scroll */
.fade-up{opacity:0;transform:translateY(30px);transition:opacity .6s var(--ease),transform .6s var(--ease)}
.fade-up.visible{opacity:1;transform:translateY(0)}
.fade-up.delay-1{transition-delay:.12s}
.fade-up.delay-2{transition-delay:.24s}
.fade-up.delay-3{transition-delay:.36s}
.fade-up.delay-4{transition-delay:.48s}

/* Scale-in */
.scale-in{opacity:0;transform:scale(.94);transition:opacity .5s var(--ease),transform .5s var(--ease)}
.scale-in.visible{opacity:1;transform:scale(1)}

/* Pulse ring on CTA */
@keyframes pulseRing{0%{box-shadow:0 0 0 0 rgba(0,87,217,.4)}70%{box-shadow:0 0 0 14px rgba(0,87,217,0)}100%{box-shadow:0 0 0 0 rgba(0,87,217,0)}}
.pulse{animation:pulseRing 2s infinite}

/* Counter animation — JS driven */
.count-up{display:inline-block}
