/* Estado inicial (down -> up + fade) */
.reveal-stagger > *,
.reveal-stagger [data-reveal-item],
.reveal-title,
.reveal-text {
  opacity: 0;
  transform: translate3d(0, 24px, 0);
  will-change: transform, opacity;
}

/* Keyframes de fade-up */
@keyframes lc-fade-up {
  from { opacity: 0; transform: translate3d(0, 24px, 0); }
  to   { opacity: 1; transform: none; }
}

/* Classe aplicada via JS com delay/duração por item */
.lc-anim-up {
  animation: lc-fade-up var(--lc-reveal-dur, 0.9s) cubic-bezier(.22,.61,.36,1) both;
  animation-delay: var(--lc-reveal-delay, 0s);
}

/* Quando quiseres “fixar” o estado após animar (só preciso se fores remover a classe via JS) */
.is-revealed { opacity: 1 !important; transform: none !important; }

/* Acessibilidade */
@media (prefers-reduced-motion: reduce) {
  .reveal-stagger > *,
  .reveal-stagger [data-reveal-item],
  .reveal-title,
  .reveal-text,
  .lc-anim-up {
    opacity: 1;
    transform: none;
    animation: none;
  }
}
