/*
  biro51 lightweight reveal

  Progressive enhancement:
  - content is visible by default and stays visible without JavaScript;
  - only opacity and translateY are animated, so layout does not shift;
  - no blur, scale, permanent will-change or endless animation;
  - temporary classes are removed after every reveal.
*/

@media (prefers-reduced-motion: no-preference) {
  .b51-reveal.b51-reveal--pending {
    opacity: 0;
    transform: translateY(14px);
    transition: none;
  }

  .b51-reveal.b51-reveal--show {
    opacity: 1;
    transform: translateY(0);
    transition:
      opacity 420ms ease-out var(--b51-reveal-delay, 0ms),
      transform 520ms cubic-bezier(.22, 1, .36, 1) var(--b51-reveal-delay, 0ms);
  }
}

@media (max-width: 700px) and (prefers-reduced-motion: no-preference) {
  .b51-reveal.b51-reveal--pending {
    transform: translateY(10px);
  }

  .b51-reveal.b51-reveal--show {
    transition-duration: 360ms, 430ms;
    transition-delay: 0ms;
  }
}

@media (prefers-reduced-motion: reduce), print {
  .b51-reveal,
  .b51-reveal.b51-reveal--pending,
  .b51-reveal.b51-reveal--show {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }
}
