/* ================================================================
   ANIMATIONS - Conquista Brasileira Ind e Com de Doces e Salgados Ltda
   ================================================================ */

/* === Keyframes === */
@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}

@keyframes fadeUp {
  from { opacity: 0; transform: translateY(20px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes fadeRight {
  from { opacity: 0; transform: translateX(20px); }
  to { opacity: 1; transform: translateX(0); }
}

@keyframes float {
  0%, 100% { transform: translateY(0) rotate(-3deg); }
  50% { transform: translateY(-15px) rotate(-2deg); }
}

@keyframes pulse {
  0% { transform: scale(1); opacity: 0.5; }
  100% { transform: scale(1.6); opacity: 0; }
}

@keyframes blink {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.4; }
}

@keyframes scrollDown {
  0% { transform: translate(-50%, 0); opacity: 1; }
  100% { transform: translate(-50%, 14px); opacity: 0; }
}

@keyframes rotate {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

@keyframes shimmer {
  0% { background-position: -200% 0; }
  100% { background-position: 200% 0; }
}

@keyframes heroGlow {
  0%, 100% { opacity: 0.5; }
  50% { opacity: 0.8; }
}

/* === Scroll Reveal === */
.reveal {
  opacity: 0;
  transform: translateY(28px);
  transition: opacity 0.8s var(--ease-out), transform 0.8s var(--ease-out);
  will-change: opacity, transform;
}
.reveal.is-visible {
  opacity: 1;
  transform: translateY(0);
}

.reveal[data-reveal-delay="100"] { transition-delay: 0.1s; }
.reveal[data-reveal-delay="200"] { transition-delay: 0.2s; }
.reveal[data-reveal-delay="300"] { transition-delay: 0.3s; }
.reveal[data-reveal-delay="400"] { transition-delay: 0.4s; }

/* === Parallax (suave) === */
.parallax-slow { transition: transform 0.4s cubic-bezier(0,0,0.2,1); }

/* === Animação inicial hero === */
.hero-title,
.hero-subtitle,
.hero-eyebrow,
.hero-cta,
.hero-badges,
.hero-floating {
  opacity: 0;
  animation: fadeUp 0.9s var(--ease-out) forwards;
}
.hero-eyebrow { animation-delay: 0.1s; }
.hero-title { animation-delay: 0.2s; }
.hero-subtitle { animation-delay: 0.4s; }
.hero-cta { animation-delay: 0.55s; }
.hero-badges { animation-delay: 0.7s; }
.hero-floating { animation-delay: 0.6s; }

/* === Hover gentle lift === */
.hover-lift { transition: transform var(--transition), box-shadow var(--transition); }
.hover-lift:hover { transform: translateY(-4px); box-shadow: var(--shadow-md); }
