/* ============================================
   ANIMAÇÕES
   ============================================ */

@keyframes fadeIn {
  from { opacity: 0; }
  to   { opacity: 1; }
}

@keyframes fadeUp {
  from { opacity: 0; transform: translateY(40px); }
  to   { opacity: 1; transform: translateY(0); }
}

@keyframes fadeLeft {
  from { opacity: 0; transform: translateX(30px); }
  to   { opacity: 1; transform: translateX(0); }
}

@keyframes scaleIn {
  from { opacity: 0; transform: scale(0.94); }
  to   { opacity: 1; transform: scale(1); }
}

@keyframes shimmer {
  0%   { background-position: -200% center; }
  100% { background-position: 200% center; }
}

@keyframes rotateSlow {
  from { transform: rotate(0deg); }
  to   { transform: rotate(360deg); }
}

@keyframes goldPulse {
  0%, 100% { opacity: 0.6; }
  50%       { opacity: 1; }
}

/* ─── Gold shimmer text ─── */
.shimmer-text {
  background: linear-gradient(
    90deg,
    var(--gold-dark) 0%,
    var(--gold-light) 40%,
    var(--gold-dark) 60%,
    var(--gold) 100%
  );
  background-size: 200% auto;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  animation: shimmer 3s linear infinite;
}

/* ─── Linha dourada animada ─── */
.animated-line {
  position: relative;
  overflow: hidden;
}

.animated-line::after {
  content: '';
  position: absolute;
  bottom: 0; left: 0;
  width: 0; height: 1px;
  background: var(--gold);
  transition: width 0.5s var(--ease);
}

.animated-line:hover::after {
  width: 100%;
}

/* ─── Float decoration ─── */
.deco-circle {
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
}

/* ─── Counter up ─── */
.counter {
  display: inline-block;
}
