.site-header,
.button,
.text-link,
.request-card,
input,
textarea {
  transition:
    background-color 0.2s,
    border-color 0.2s,
    box-shadow 0.2s,
    transform 0.2s;
}
.site-header.scrolled {
  box-shadow: var(--shadow);
}
.service:hover .number {
  transform: translateX(5px);
}
.number {
  transition: transform 0.2s;
}
.reveal.is-observed {
  opacity: 0;
  transform: translateY(14px);
  transition:
    opacity 0.5s,
    transform 0.5s;
}
.reveal.is-observed.is-visible {
  opacity: 1;
  transform: none;
}
.faq-answer {
  animation: appear 0.2s ease-out;
}
@keyframes appear {
  from {
    opacity: 0;
    transform: translateY(-4px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
  *,
  *::before,
  *::after {
    animation: none !important;
    transition: none !important;
  }
  .reveal.is-observed {
    opacity: 1;
    transform: none;
  }
}
