
[data-animate] {
  opacity: 0;
  transform: translateY(18px);
  transition: opacity .42s ease-out, transform .42s ease-out;
}

[data-animate].is-visible { opacity: 1; transform: none; }
[data-animate="fade"] { transform: none; }
[data-animate="zoom"] { transform: scale(.975); }
[data-animate="left"] { transform: translateX(-18px); }
[data-animate="right"] { transform: translateX(18px); }

[data-delay="1"] { transition-delay: .04s; }
[data-delay="2"] { transition-delay: .08s; }
[data-delay="3"] { transition-delay: .12s; }
[data-delay="4"] { transition-delay: .16s; }
[data-delay="5"] { transition-delay: .20s; }
[data-delay="6"] { transition-delay: .24s; }

@keyframes heroFadeIn {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: none; }
}

.hero-content > * { animation: heroFadeIn .5s ease-out both; }
.hero-content .eyebrow { animation-delay: .03s; }
.hero-content h1 { animation-delay: .08s; }
.hero-content p { animation-delay: .13s; }
.hero-content .hero-actions { animation-delay: .18s; }

.btn:active { transform: scale(.985); }
.card-media img { transition: transform .28s ease-out; }

/* En móvil se mantienen animaciones, pero mucho más suaves y cortas. */
@media (max-width: 767px) {
  [data-animate] {
    transform: translateY(8px);
    transition-duration: .24s;
    transition-delay: 0s !important;
  }
  [data-animate="left"],
  [data-animate="right"],
  [data-animate="zoom"] { transform: translateY(8px); }

  .hero-content > * {
    animation-duration: .34s;
    animation-delay: .03s !important;
  }

  .whatsapp-float { animation: none !important; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
    scroll-behavior: auto !important;
  }
  [data-animate] { opacity: 1 !important; transform: none !important; }
}
