/* GMA — Scroll Animations */

/* Initial hidden states */
[data-animate] {
  opacity: 0;
  transition: opacity 0.7s ease, transform 0.7s ease;
}

[data-animate="fade-up"]    { transform: translateY(30px); }
[data-animate="fade-down"]  { transform: translateY(-30px); }
[data-animate="fade-left"]  { transform: translateX(30px); }
[data-animate="fade-right"] { transform: translateX(-30px); }
[data-animate="scale-up"]   { transform: scale(0.92); }
[data-animate="fade"]       { transform: none; }

/* Visible state */
[data-animate].is-visible {
  opacity: 1;
  transform: translate(0) scale(1);
}

/* Stagger delays for grid children */
[data-stagger] > *:nth-child(1) { transition-delay: 0s; }
[data-stagger] > *:nth-child(2) { transition-delay: 0.1s; }
[data-stagger] > *:nth-child(3) { transition-delay: 0.2s; }
[data-stagger] > *:nth-child(4) { transition-delay: 0.3s; }
[data-stagger] > *:nth-child(5) { transition-delay: 0.4s; }
[data-stagger] > *:nth-child(6) { transition-delay: 0.5s; }

[data-stagger] > * {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.6s ease, transform 0.6s ease;
}

[data-stagger].is-visible > * {
  opacity: 1;
  transform: none;
}

/* Counter animation */
.counter-number { transition: color 0.3s ease; }

/* Gold shimmer on headings */
@keyframes shimmer {
  0%   { background-position: -200% center; }
  100% { background-position: 200% center; }
}

.text-shimmer {
  background: linear-gradient(90deg, var(--gold), #fff8d6, var(--gold-deep), var(--gold));
  background-size: 200% auto;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  animation: shimmer 4s linear infinite;
}
