@media (max-width: 72rem) {
  :root { --shell: min(100% - 3rem, 72rem); }
  .header-contact { display: none; }
  .site-header__inner { grid-template-columns: auto 1fr; }
  body[data-page="home"] .site-header__inner { grid-template-columns: auto 1fr auto; }
  .site-nav { justify-content: flex-end; gap: 1.2rem; }
  body[data-page="home"] .site-footer__grid { grid-template-columns: 1.2fr .8fr 1fr; }
  body[data-page="home"] .footer-qrs { grid-column: 1 / -1; justify-content: flex-start; }
}

@media (max-width: 52rem) {
  :root { --shell: min(100% - 2rem, 48rem); --header-height: 4.8rem; }
  body { padding-bottom: 4rem; }
  .site-header__inner { grid-template-columns: 1fr auto; gap: 1rem; }
  body[data-page="home"] .site-header__inner { grid-template-columns: 1fr auto; }
  .header-quote { display: none; }
  .brand-lockup { min-width: 0; }
  .brand-lockup__mark { width: 3.25rem; height: 3rem; }
  .brand-lockup__mark img { width: 3.15rem; }
  .brand-lockup__name { font-size: 1rem; }
  .brand-lockup__name strong { font-size: 1.12rem; }
  .menu-toggle { display: inline-flex; }
  .site-nav { grid-column: 1 / -1; display: grid; justify-content: stretch; gap: 0; padding-bottom: 1rem; }
  .js .site-nav { display: none; }
  .js body.menu-open .site-nav { display: grid; }
  .site-nav__link { min-height: 3.15rem; border-top: 1px solid var(--color-line); }
  .site-nav__link::after { width: 2.5rem; right: auto; }
  .site-footer { padding-bottom: 5.5rem; }
  .site-footer__grid { grid-template-columns: 1fr; gap: 2rem; }
  body[data-page="home"] .site-footer__grid { grid-template-columns: 1fr; }
  .footer-qrs { grid-column: auto; justify-content: flex-start; }
  .site-footer__legal { display: grid; gap: 0.5rem; }
  .mobile-actions { position: fixed; z-index: 90; right: 0; bottom: 0; left: 0; display: grid; grid-template-columns: 1fr 1fr; min-height: 4rem; background: var(--color-charcoal); color: white; }
  .mobile-actions a { display: grid; place-items: center; font-weight: 750; }
  .mobile-actions__primary { background: var(--color-red); }
}

@media (max-width: 27rem) {
  :root { --shell: min(100% - 1.25rem, 26rem); }
  .brand-lockup__name { display: grid; line-height: 1.05; }
  .brand-lockup__name strong { font-size: 1rem; }
  .brand-lockup__name span { font-size: 0.82rem; }
  .quote-dialog__actions { display: grid; }
}
