/* ============================================================
   BANTOO IQ — Animations CSS
   ============================================================ */

/* ---------- Stagger reveal ---------- */
.reveal-delay-1 { transition-delay: 0.1s; }
.reveal-delay-2 { transition-delay: 0.2s; }
.reveal-delay-3 { transition-delay: 0.3s; }
.reveal-delay-4 { transition-delay: 0.4s; }

/* ---------- Count-up pulse ---------- */
@keyframes pulse-gold {
  0%   { text-shadow: 0 0 0 rgba(212,168,67,0); }
  50%  { text-shadow: 0 0 20px rgba(212,168,67,0.4); }
  100% { text-shadow: 0 0 0 rgba(212,168,67,0); }
}

.stat-number.counting { animation: pulse-gold 0.6s ease; }

/* ---------- Hero text fade-in ---------- */
@keyframes fadeInUp {
  from { opacity: 0; transform: translateY(32px); }
  to   { opacity: 1; transform: translateY(0); }
}

.hero-content h1  { animation: fadeInUp 0.8s ease forwards; }
.hero-content .lead { animation: fadeInUp 0.8s 0.15s ease both; }
.hero-content .hero-cta { animation: fadeInUp 0.8s 0.3s ease both; }

/* ---------- Nav scroll shrink ---------- */
.navbar.scrolled {
  padding: 0.4rem 0;
  box-shadow: 0 2px 16px rgba(0,0,0,0.2);
}

/* ---------- Active nav dot ---------- */
.nav-link.active::after {
  content: '';
  display: block;
  width: 4px;
  height: 4px;
  background: var(--secondary);
  border-radius: 50%;
  margin: 2px auto 0;
}

/* ---------- Button ripple ---------- */
.btn-primary-custom {
  position: relative;
  overflow: hidden;
}

.btn-primary-custom::after {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(255,255,255,0.15);
  opacity: 0;
  transition: opacity 0.2s;
}

.btn-primary-custom:active::after { opacity: 1; }

/* ---------- Card hover lift ---------- */
.pillar-card,
.service-card,
.realisation-card {
  will-change: transform;
}

/* ---------- Geometric pattern overlay ---------- */
.hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image:
    radial-gradient(circle at 20% 50%, rgba(212,168,67,0.06) 0%, transparent 60%),
    radial-gradient(circle at 80% 20%, rgba(15,110,86,0.06) 0%, transparent 60%);
  pointer-events: none;
  z-index: 1;
}
