@media (max-width: 760px) {
  .section-wrap { padding-right: var(--page-gutter); padding-left: var(--page-gutter); }
  .service-cta .button, .home-cta .button { width: 100%; }
  .site-footer { padding-top: 1.6rem; }
}

@media (max-width: 420px) {
  .hero-description, .page-hero-copy > p:not(.eyebrow) { font-size: .92rem; }
  .location-list li { gap: .55rem; }
}

/* Transparent full brand lockup in the header and footer. */
.brand-logo { display: block; width: 220px; height: auto; object-fit: contain; }
.site-header .brand-logo { width: 210px; }
.site-header .primary-nav { justify-content: flex-end; }
@media (max-width: 1020px) {
  .site-header .brand-logo { width: 185px; }
}
@media (max-width: 760px) {
  .site-header .brand-logo { width: 190px; }
  .site-header .primary-nav { justify-content: initial; }
  .brand-footer .brand-logo { width: 210px; }
}

.footer-contacts { display: flex; flex-direction: column; gap: .65rem; font-size: .85rem; }
.footer-contacts a, .contact-card h2 a { overflow-wrap: anywhere; }
