@media (max-width: 980px) {
  .nav-toggle { display: inline-block; }
  .nav-menu {
    position: absolute;
    top: 76px;
    left: 20px;
    right: 20px;
    display: none;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    padding: 14px;
    background: var(--white);
    border: 1px solid var(--line);
    border-radius: var(--radius);
    box-shadow: var(--shadow);
  }
  .nav-menu.is-open { display: flex; }
  .nav-menu a { padding: 12px; }
  .nav-link-quiet { border-left: 0; padding-left: 12px; }
  .hero { min-height: 640px; }
  .card-grid.six, .solution-strip, .card-grid.three, .steps, .feature-list, .module-grid, .value-grid, .footer-grid { grid-template-columns: repeat(2, 1fr); }
  .solution-card.featured, .two-column, .featured-system, .contact-layout, .catalog-card, .content-grid { grid-template-columns: 1fr; }
  .solution-card.featured img, .catalog-card img { height: 260px; min-height: 0; }
}

@media (max-width: 640px) {
  .shell { width: min(100% - 28px, 1180px); }
  .brand small { display: none; }
  .hero-content { padding: 86px 0 120px; }
  .hero h1 { font-size: 3.25rem; }
  .section { padding: 56px 0; }
  .section-heading.split { display: block; }
  .card-grid.six, .solution-strip, .card-grid.three, .steps, .feature-list, .module-grid, .value-grid, .footer-grid { grid-template-columns: 1fr; }
  .catalog-card ul { columns: 1; }
  .cta { padding: 34px 24px; margin-block: 56px; }
  .footer-grid { gap: 18px; }
}
