@media (max-width: 1050px) {
  .main-nav { gap: 18px; }
  .four-grid { grid-template-columns: repeat(2, 1fr); }
  .five-grid { grid-template-columns: repeat(3, 1fr); }
  .support-layout, .contact-layout, .faq-page { gap: 50px; }
}
@media (max-width: 800px) {
  .wrap { width: min(100% - 32px, 1240px); }
  .nav-wrap { min-height: 68px; }
  .menu-toggle { display: flex; }
  .main-nav { position: absolute; top: 68px; right: 16px; left: 16px; display: none; align-items: stretch; gap: 0; padding: 10px; border: 1px solid var(--line); background: var(--paper-2); box-shadow: var(--shadow); }
  .main-nav.is-open { display: flex; flex-direction: column; animation: menu-in .2s ease both; }
  .main-nav > a:not(.nav-cta), .dropdown-trigger { padding: 14px 11px; text-align: left; }
  .main-nav > a:not(.nav-cta)::after, .dropdown-trigger::after { display: none; }
  .dropdown-trigger { display: flex; width: 100%; align-items: center; justify-content: space-between; }
  .dropdown-panel { position: static; width: auto; margin: 0 0 5px; box-shadow: none; }
  .nav-cta { justify-content: center; margin-top: 8px; }
  .hero-grid, .page-hero .hero-grid { grid-template-columns: 1fr; min-height: auto; padding-top: 75px; padding-bottom: 95px; }
  .hero-visual { display: none; }
  .hero-home { min-height: 700px; }
  .hero-foot { flex-direction: column; align-items: flex-start; gap: 9px; }
  .page-hero { padding: 82px 0 90px; }
  .page-hero-mark { display: none; }
  .split-layout, .support-layout, .contact-layout { grid-template-columns: 1fr; gap: 55px; }
  .cta-inner { align-items: flex-start; flex-direction: column; padding-top: 68px; padding-bottom: 68px; }
  .cta-inner .button-row { margin-top: 0; }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 42px 28px; }
  .footer-grid > div:first-child { grid-column: 1 / -1; }
  .footer-bottom { flex-direction: column; gap: 7px; }
  .business-art { min-height: 280px; }
}
@media (max-width: 560px) {
  h1 { font-size: clamp(42px, 13vw, 70px); }
  h2 { font-size: clamp(31px, 9vw, 48px); }
  .hero-lede { font-size: 16px; line-height: 1.7; }
  .hero-home { min-height: 670px; }
  .button-row, .button { width: 100%; }
  .four-grid, .five-grid, .principles-grid, .form-grid { grid-template-columns: 1fr; }
  .service-card { min-height: 0; }
  .section-topline { align-items: flex-start; flex-direction: column; }
  .service-row { grid-template-columns: 44px 1fr 24px; gap: 12px; padding: 22px 0; }
  .service-row h3 { font-size: 20px; }
  .service-row p { font-size: 13px; }
  .quote-panel { padding: 35px 22px; }
  .quote-panel blockquote { font-size: 27px; }
  .form-card { padding: 24px 18px; }
  .support-guidance-grid { grid-template-columns: 1fr; }
  .footer-grid { grid-template-columns: 1fr; }
  .footer-grid > div:first-child { grid-column: auto; }
  .page-hero h1 { font-size: clamp(42px, 12vw, 66px); }
}