@media (max-width: 1080px) {
  .grid-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .grid-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .layout { grid-template-columns: 1fr; }
  .filter-panel, .sticky-panel { position: static; }
  .metric-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 820px) {
  :root { --container-padding: 18px; }
  .nav-toggle { display: inline-flex; align-items: center; justify-content: center; margin-left: auto; }
  .site-nav { position: absolute; left: 18px; right: 18px; top: 78px; display: none; flex-direction: column; align-items: stretch; background: #fff; padding: 18px; border-radius: 18px; box-shadow: var(--shadow-xl); }
  .site-nav.open { display: flex; }
  .nav-quote { display: none; }
  h1 { font-size: 38px; }
  h2 { font-size: 30px; }
  .hero-content h2 { font-size: 38px; }
  .hero-carousel { min-height: 520px; }
  .hero-arrow { display: none; }
  .quick-search { grid-template-columns: 1fr; }
  .section { padding: 58px 0; }
  .footer-grid { grid-template-columns: 1fr; }
  .form-grid { grid-template-columns: 1fr; }
  .company-hero-content { align-items: flex-start; flex-direction: column; }
}
@media (max-width: 560px) {
  .grid-3, .grid-4, .metric-grid { grid-template-columns: 1fr; }
  .section-head { display: block; }
  .companies-toolbar { display: block; }
  .compare-bar { align-items: stretch; flex-direction: column; }
  .wa-tooltip { display: none; }
}
