:root{
  --reveal-dur: 700ms;
  --reveal-ease: cubic-bezier(.22,.61,.36,1); /* easeOut */
}

/* Estado inicial */
[data-reveal],
[data-reveal-group] > *{
  opacity: 0;
  transform: translateY(24px);
  transition:
    opacity var(--reveal-dur) var(--reveal-ease),
    transform var(--reveal-dur) var(--reveal-ease),
    filter var(--reveal-dur) var(--reveal-ease);
  transition-delay: var(--reveal-delay, 0ms);
  will-change: opacity, transform, filter;
}

/* Variantes opcionales si las necesitaras más adelante */
[data-reveal="left"]  { transform: translateX(24px);  }
[data-reveal="right"] { transform: translateX(-24px); }
[data-reveal="down"]  { transform: translateY(-24px); }
[data-reveal="scale"] { transform: scale(.96); }
[data-reveal="blur"]  { filter: blur(8px); }

/* Visible */
.is-in{
  opacity: 1 !important;
  transform: none !important;
  filter: none !important;
}

/* Respeta reducir movimiento */
@media (prefers-reduced-motion: reduce){
  [data-reveal],
  [data-reveal-group] > *{
    opacity: 1; transform: none; filter: none; transition: none;
  }
}



