.js-reveal{
  opacity:0;
  transform:translateY(24px) scale(.99);
  filter:blur(5px);
  transition:opacity .72s cubic-bezier(.22,.61,.36,1),transform .72s cubic-bezier(.22,.61,.36,1),filter .72s cubic-bezier(.22,.61,.36,1);
  transition-delay:var(--reveal-delay,0ms);
  will-change:opacity,transform,filter;
}

.js-reveal.is-visible{
  opacity:1;
  transform:none;
  filter:none;
}

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