/* =====================================================
   BITNEKA ANIMATIONS PREMIUM — Extra Keyframes
   ===================================================== */

/* ── Bar pulse (hero mockup) ─────────────────────── */
@keyframes pulseBar {
  0%, 100% { opacity: 1; }
  50%       { opacity: 0.7; }
}

/* ── Gradient border glow ────────────────────────── */
@keyframes borderGlow {
  0%, 100% { box-shadow: 0 0 0 0 rgba(13,91,255,0); }
  50%       { box-shadow: 0 0 20px 4px rgba(13,91,255,0.25); }
}

/* ── Shimmer loading effect ─────────────────────── */
@keyframes shimmer {
  0%   { background-position: -200% center; }
  100% { background-position:  200% center; }
}

/* ── Reveal from bottom (stagger) ───────────────── */
[data-reveal-delay="1"] { transition-delay: 100ms !important; }
[data-reveal-delay="2"] { transition-delay: 200ms !important; }
[data-reveal-delay="3"] { transition-delay: 300ms !important; }
[data-reveal-delay="4"] { transition-delay: 400ms !important; }
[data-reveal-delay="5"] { transition-delay: 500ms !important; }

/* ── Spin slow (loader) ──────────────────────────── */
@keyframes spinSlow {
  from { transform: rotate(0deg); }
  to   { transform: rotate(360deg); }
}

/* ── Typewriter blink ────────────────────────────── */
@keyframes cursorBlink {
  0%, 100% { opacity: 1; }
  50%       { opacity: 0; }
}

/* ── Orbit (decorative circles) ─────────────────── */
@keyframes orbit {
  from { transform: rotate(0deg) translateX(100px) rotate(0deg); }
  to   { transform: rotate(360deg) translateX(100px) rotate(-360deg); }
}

/* ── Page intro ──────────────────────────────────── */
@keyframes pageIntro {
  from { opacity: 0; transform: translateY(16px); }
  to   { opacity: 1; transform: translateY(0); }
}

.page-intro-animate {
  animation: pageIntro .6s var(--ease) both;
}

/* ── Number count pop ────────────────────────────── */
@keyframes countPop {
  0%   { transform: scale(1); }
  50%  { transform: scale(1.08); }
  100% { transform: scale(1); }
}

.count-pop {
  animation: countPop .3s var(--ease);
}

/* ── Reduced motion: disable all ─────────────────── */
@media (prefers-reduced-motion: reduce) {
  .blob, .hero-mockup-card, .hero-accent-card,
  .mockup-bar, .cursor-glow, [data-reveal],
  .gradient-text {
    animation: none !important;
    transition: none !important;
  }
}
