@media (max-width: 1120px) {
  .nav-toggle { display: inline-grid; place-items: center; margin-left: 0; }
  .brand { order: 1; }
  .header-phone { order: 2; margin-left: auto; }
  .header-language { order: 3; }
  .nav-toggle { order: 4; }
  .site-nav { order: 5; }
  .site-nav { position: absolute; left: 16px; right: 16px; top: 74px; display: none; flex-direction: column; align-items: stretch; padding: 12px; background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); box-shadow: var(--shadow); }
  .site-nav.open { display: flex; }
  .header-phone { margin-left: 0; font-size: .82rem; }
  .hero-grid, .split, .content-grid { grid-template-columns: 1fr; }
  .card-grid, .team-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-service-teasers { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .home-team-teasers { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .story-grid, .spectrum-grid { grid-template-columns: 1fr; }
  .footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .orientation-grid { grid-template-columns: 1fr; }
  .orientation-item { border-right: 0; border-bottom: 1px solid var(--border); }
  .final-cta-inner { align-items: flex-start; flex-direction: column; }
}
@media (max-width: 640px) {
  .container { width: min(100% - 24px, var(--max)); }
  .brand { flex: 1 1 auto; min-width: 0; max-width: min(52vw, 228px); gap: 8px; min-height: 42px; margin-bottom: -10px; }
  .brand-logo-mark { width: 54px; height: 54px; flex: 0 0 auto; }
  .brand-name { font-size: .84rem; white-space: normal; }
  .brand-tagline { font-size: .62rem; letter-spacing: .06em; }
  .header-inner { min-height: 62px; gap: 9px; }
  .site-header.is-scrolled .header-inner { min-height: 56px; }
  .site-header.is-scrolled .brand-logo-mark { width: 48px; height: 48px; }
  .header-phone { gap: 5px; }
  .header-phone span { font-size: .76rem; }
  .header-phone img { width: 11px; height: 11px; }
  .language-toggle { width: 34px; height: 34px; }
  .language-toggle img, .language-menu img { width: 21px; height: 21px; }
  .nav-toggle { margin-left: 0; width: 36px; height: 36px; }
  .section, .hero { padding: 48px 0; }
  .card-grid, .location-grid, .contact-form, .footer-grid, .trust-grid, .team-grid { grid-template-columns: 1fr; }
  .home-service-teasers, .home-team-teasers { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-service-teasers .service-card { grid-template-rows: 112px auto; }
  .home-service-teasers .service-card img { height: 112px; }
  .typewriter { white-space: normal; min-width: 0; }
  .contact-form .full { grid-column: auto; }
  .hero-media { min-height: 280px; }
  h1 { font-size: 2.25rem; }
  body { font-size: 16px; }
  .service-card { min-height: 0; }
  .service-card img { height: 178px; }
  .final-cta-inner { padding: 24px; border-radius: 18px; }
}
@media (max-width: 430px) {
  .brand { max-width: calc(100% - 124px); gap: 7px; }
  .brand-logo-mark { width: 48px; height: 48px; }
  .brand-name { font-size: .78rem; line-height: 1.04; }
  .brand-tagline { display: none; }
  .header-phone { width: 34px; height: 34px; justify-content: center; border: 1px solid var(--border); border-radius: 999px; background: var(--surface); box-shadow: 0 8px 18px rgba(16, 36, 50, .06); }
  .header-phone span { display: none; }
  .header-phone img { width: 13px; height: 13px; }
}
