/* =========================================================
   THERMO ENGINE — Animaciones
   Entrada suave al hacer scroll, contadores y respeto total a
   prefers-reduced-motion. La única secuencia "de bienvenida" es
   la del hero (en styles.css); aquí el movimiento es discreto.
   ========================================================= */

.reveal-up {
  opacity: 0;
  transform: translateY(16px);
  transition: opacity .7s cubic-bezier(.16,1,.3,1) var(--reveal-delay, 0ms), transform .7s cubic-bezier(.16,1,.3,1) var(--reveal-delay, 0ms);
}
.reveal-up.is-visible {
  opacity: 1;
  transform: translateY(0);
}

/* Contadores animados (el valor real ya viene en el HTML) */
[data-counter] { display: inline-block; font-variant-numeric: tabular-nums; }

/* Respeto a prefers-reduced-motion */
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after {
    animation-duration: .001ms !important;
    animation-delay: 0ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .001ms !important;
    scroll-behavior: auto !important;
  }
  .reveal-up { opacity: 1; transform: none; }
  .hero__brand, .hero__display, .hero__subtitle, .hero__actions, .hero__panel { opacity: 1; transform: none; }
  .hero__gauge-fill { width: 58%; }
}
