/* =============================================================
   Efecto de aparición suave al hacer scroll (elegante, discreto).
   Los elementos con .reveal-on-scroll inician levemente abajo y
   transparentes, y se asientan en su lugar al entrar en pantalla.
   No afecta layout ni interacción: solo opacidad y transform.
   ============================================================= */

.reveal-on-scroll {
  opacity: 0;
  transform: translateY(28px);
  transition: opacity 0.7s ease, transform 0.7s ease;
  will-change: opacity, transform;
}

.reveal-on-scroll.is-visible {
  opacity: 1;
  transform: translateY(0);
}

@media (prefers-reduced-motion: reduce) {
  .reveal-on-scroll {
    opacity: 1;
    transform: none;
    transition: none;
  }
}
