.scroll-progress {
  contain: strict;
}

.scroll-progress span {
  will-change: transform;
}

.site-header {
  transition:
    background-color var(--motion-base) ease,
    border-color var(--motion-base) ease,
    box-shadow var(--motion-base) ease;
}

.site-header.scrolled {
  min-height: 92px;
  padding-top: 18px;
  padding-bottom: 18px;
  backdrop-filter: blur(8px);
}

@media (max-width: 980px) {
  .site-header.scrolled,
  .mobile-actions {
    background: var(--forest-deep);
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
  }

  .service-card,
  .availability {
    transition:
      color var(--motion-base) ease,
      background-color var(--motion-base) ease,
      border-color var(--motion-base) ease,
      transform var(--motion-base) var(--motion-ease);
  }

  .quote-form,
  .quote-form:focus-within {
    box-shadow: 0 18px 55px rgba(20, 61, 43, 0.06);
    transition: border-color var(--motion-base) ease;
  }
}

@media (max-width: 640px) {
  .site-header.scrolled {
    min-height: 76px;
    padding-top: 14px;
    padding-bottom: 14px;
  }
}

@media (hover: none) {
  .button:hover,
  .quick-facts div:hover,
  .availability:hover {
    transform: none;
  }
}
