/*
 * fx-reveal: reveal genérico ao rolar. js/fx-reveal.js soma .js em <html> e
 * marca as seções elegíveis com .fx-reveal-target antes de observá-las.
 * Sem JS (ou sem .js em <html>) tudo aparece direto — nada depende de JS
 * para ficar visível.
 */
.js .fx-reveal-target {
  opacity: 0;
  transform: translateY(22px);
  transition: opacity .6s ease, transform .6s ease;
}

.js .fx-reveal-target.fx-visible {
  opacity: 1;
  transform: none;
}

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