/* Motion effects driven by scroll and JavaScript state classes. */

/* Conteúdo ganha nitidez ao entrar pela base da viewport */
.scroll-reveal {
  opacity: 0;
  filter: blur(10px);
  transform: translateY(12px);
  will-change: opacity, filter, transform;
}

.scroll-reveal.is-revealed {
  opacity: 1;
  filter: blur(0);
  transform: translateY(0);
  animation: scroll-reveal-in 700ms cubic-bezier(0.22, 1, 0.36, 1) both;
}

@keyframes scroll-reveal-in {
  from {
    opacity: 0;
    filter: blur(10px);
    transform: translateY(12px);
  }

  to {
    opacity: 1;
    filter: blur(0);
    transform: translateY(0);
  }
}
