@media (prefers-reduced-motion: no-preference) {
  .button,
  .card,
  .text-link,
  .faq-disclosure__button::after {
    transition: transform 180ms ease-out, box-shadow 180ms ease-out, border-color 180ms ease-out, text-decoration-thickness 180ms ease-out;
  }

  .js [data-reveal] {
    opacity: 0;
    transform: translateY(12px);
    transition: opacity 300ms ease-out, transform 300ms ease-out;
  }

  .js [data-reveal].is-visible {
    opacity: 1;
    transform: translateY(0);
  }

  .mobile-nav-panel {
    animation: nav-enter 180ms ease-out;
  }

  @keyframes nav-enter {
    from {
      opacity: 0;
      transform: translateY(-8px);
    }
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}
