@media (max-width: 920px) {
  :root { --header-height: 4.75rem; }
  .menu-toggle { display: inline-flex; align-items: center; gap: var(--space-3); padding: 0.5rem; font-family: var(--font-display); font-size: var(--text-sm); font-weight: 700; text-transform: uppercase; }
  .primary-nav { position: fixed; top: var(--header-height); right: 0; left: 0; z-index: var(--z-menu); display: grid; gap: var(--space-4); padding: var(--space-5) var(--container-gutter); border-top: 1px solid var(--color-line); background: white; box-shadow: var(--shadow-header); visibility: hidden; opacity: 0; transform: translateY(-0.75rem); transition: opacity var(--transition-fast), transform var(--transition-fast), visibility var(--transition-fast); }
  .primary-nav.is-open { visibility: visible; opacity: 1; transform: translateY(0); }
  .primary-nav__list { display: grid; gap: 0; }
  body.menu-open { overflow: hidden; }
  .primary-nav__list > li > a, .nav-trigger { display: flex; width: 100%; align-items: center; justify-content: space-between; padding-block: 0.9rem; border-bottom: 1px solid var(--color-line); text-align: left; }
  .nav-item { position: static; }
  .submenu, .mega-menu { position: static; width: 100%; min-width: 0; max-height: 0; padding: 0 var(--space-4); border-top: 0; box-shadow: none; visibility: hidden; opacity: 0; overflow: hidden; transform: none; transition: max-height 260ms ease, opacity var(--transition-fast), visibility var(--transition-fast), padding var(--transition-fast); }
  .submenu.is-open, .mega-menu.is-open { max-height: 70vh; padding-block: var(--space-3); visibility: visible; opacity: 1; overflow-y: auto; transform: none; }
  .mega-menu__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-4); }
  .mega-menu__grid > div, .mega-menu__grid > div:first-child, .mega-menu__grid > div:last-child { padding-inline: 0; border-right: 0; }
  .language-switcher { padding-block: var(--space-3); }
  .primary-nav__call { width: 100%; }
  .brand-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .service-grid, .component-two-column { grid-template-columns: 1fr; }
  .site-footer__grid { grid-template-columns: 1.2fr 0.8fr 1fr; gap: var(--space-5); }
  .site-footer__grid--wide { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-6); }
  .submenu::before { display: none; }
  .submenu a:hover, .submenu a:focus-visible { padding-left: 0.6rem; }
  .mega-menu--services .mega-menu__grid { grid-template-columns: 1fr; }
  .mega-menu--services .mega-menu__grid > div { padding-inline: 0; }
  .service-finder-card { grid-template-columns: 1fr; }
  .home-service-grid { grid-template-columns: 1fr 1fr; }
  .home-service-card--image { grid-column: 1 / -1; }
  .split-media { gap: var(--space-6); }
  .why-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .values-grid, .contact-cards { grid-template-columns: 1fr 1fr; }
  .contact-layout { grid-template-columns: 1fr; }
  .directory-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .brand-directory-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .brand-detail__hero, .brand-pending-grid { grid-template-columns: 1fr; }
  .article-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .article-hero, .article-layout { grid-template-columns: 1fr; }
  .article-aside { position: static; }
}

@media (max-width: 720px) {
  :root { --container-gutter: 1.25rem; --space-9: 4.5rem; }
  .menu-toggle__label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
  .foundation-hero { min-height: 42rem; text-align: center; }
  .foundation-hero__media { background-position: 57% center; }
  .foundation-hero__overlay { background: linear-gradient(180deg, rgba(10, 12, 15, 0.45) 0%, rgba(10, 12, 15, 0.8) 66%, rgba(10, 12, 15, 0.91) 100%); }
  .foundation-hero h1, .foundation-hero__lead { margin-inline: auto; }
  .button-group { justify-content: center; }
  .button-group .button { width: 100%; }
  .foundation-status__grid, .contact-strip__grid, .site-footer__grid, .site-footer__grid--wide, .grid--2, .grid--3 { grid-template-columns: 1fr; }
  .foundation-status__grid { gap: var(--space-5); }
  .contact-strip__grid > div { padding: 0 0 var(--space-4); border-left: 0; border-bottom: 1px solid rgba(255,255,255,0.35); }
  .contact-strip__grid > div:last-child { padding-bottom: 0; border-bottom: 0; }
  .site-footer__legal { display: grid; }
  .cta-banner { display: grid; padding: var(--space-6); }
  .cta-banner .button { width: 100%; }
  .brand-grid { grid-template-columns: 1fr; }
  .service-card { grid-template-columns: 1fr; }
  .service-card > img { height: 14rem; }
  .component-row .button { width: 100%; }
  .floating-actions { right: 0.75rem; bottom: 0.75rem; }
  .floating-action { min-width: 5.8rem; }
  .modal__content { padding: var(--space-6) var(--space-5); }
  .modal__actions { display: grid; }
  .home-consultation__inner, .section-heading--with-action { display: grid; align-items: start; }
  .home-consultation .button, .section-heading--with-action .button { width: 100%; }
  .service-finder { grid-template-columns: 1fr; }
  .service-finder-card { padding: var(--space-5); }
  .split-media, .appointment-layout { grid-template-columns: 1fr; }
  .split-media--reverse .split-media__image { order: 0; }
  .split-media__image, .split-media__image img { min-height: 20rem; }
  .home-service-grid, .why-grid { grid-template-columns: 1fr; }
  .home-service-card--image { grid-column: auto; }
  .trust-strip__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-5) 0; }
  .trust-strip__grid > div:nth-child(2) { border-right: 0; }
  .location-panel { min-height: 32rem; padding: var(--space-6); }
  .page-hero { min-height: 25rem; text-align: left; }
  .values-grid, .contact-cards, .legal-layout { grid-template-columns: 1fr; }
  .page-cta__inner { display: grid; }
  .page-cta .button { width: 100%; }
  .contact-form-card, .contact-details-panel, .success-card { padding: var(--space-6) var(--space-5); }
  .legal-nav { position: static; }
  .directory-grid, .service-detail__hero, .service-detail__grid { grid-template-columns: 1fr; }
  .service-empty { padding: var(--space-6) var(--space-5); }
  .service-detail__hero img { min-height: 20rem; }
  .brand-directory-grid, .brand-assurance-grid { grid-template-columns: 1fr; }
  .brand-category-nav { display: grid; grid-template-columns: 1fr 1fr; }
  .brand-category-link { text-align: center; }
  .brand-detail__hero img { min-height: 20rem; }
  .brand-pending-grid { padding: var(--space-6) var(--space-5); }
  .gallery-grid, .article-grid, .related-articles .article-grid, .sitemap-grid { grid-template-columns: 1fr; }
  .gallery-card img { height: 17rem; }
  .lightbox__footer { grid-template-columns: 1fr 1fr; }
  .lightbox__footer h2 { grid-column: 1 / -1; grid-row: 1; }
  .article-hero img { min-height: 20rem; }
  .article-copy { padding: var(--space-6) var(--space-5); }
}

@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; }
}
