@media (max-width: 1024px) {
  .site-nav { gap: 1.1rem; }
  .site-nav > a { font-size: .72rem; }
  .hero__principles article { min-height: 235px; }
  .capability-layout, .technology-grid { gap: 4rem; }
  .system-map { grid-template-columns: 1fr 1fr; }
  .system-map__outcomes { grid-column: 1 / 3; grid-template-columns: repeat(3,1fr); }
}

@media (max-width: 820px) {
  .container { width: min(calc(100% - 2rem), var(--container)); }
  .nav-shell { min-height: 72px; }
  .nav-toggle { position: relative; z-index: 2; display: block; cursor: pointer; }
  .site-nav {
    position: absolute; top: 100%; right: 0; left: 0; display: flex; padding: 1rem;
    align-items: stretch; flex-direction: column; gap: 0; border-top: 1px solid var(--color-border);
    background: #fff; box-shadow: 0 20px 40px rgba(13,47,85,.12);
    visibility: hidden; opacity: 0; transform: translateY(-10px);
    transition: opacity var(--transition-base), transform var(--transition-base), visibility var(--transition-base);
  }
  .site-nav.is-open { visibility: visible; opacity: 1; transform: none; }
  .site-nav > a { padding: .9rem .3rem; border-bottom: 1px solid var(--color-border); font-size: .85rem; }
  .site-nav > a::after { display: none; }
  .nav-cta { margin-top: 1rem; }
  .hero__principles { grid-template-columns: 1fr; }
  .hero__principles article { min-height: 0; }
  .hero__principles span { margin-bottom: 1.2rem; }
  .section-intro--row { align-items: flex-start; flex-direction: column; }
  .capability-layout, .technology-grid { grid-template-columns: 1fr; }
  .capability-heading { position: static; }
  .solution-mosaic { grid-template-columns: 1fr 1fr; grid-template-rows: auto auto; }
  .solution-feature { grid-column: 1 / 3; grid-row: auto; }
  .footer-main { grid-template-columns: 1fr; }
  .footer-contact { text-align: left; }
}

@media (max-width: 620px) {
  h1 { font-size: clamp(2.35rem, 12vw, 3.7rem); }
  .hero__inner { padding-block: 4.2rem 6.2rem; }
  .hero__actions, .cta-band__actions { align-items: stretch; flex-direction: column; }
  .hero__actions .text-link, .cta-band__actions .text-link { align-self: center; }
  .system-map { display: block; }
  .system-map__rail { padding: .8rem; }
  .system-map__core { min-height: 290px; }
  .system-map__outcomes { display: grid; grid-template-columns: 1fr; padding: .8rem; }
  .capability-row { grid-template-columns: 30px 1fr; }
  .capability-row__glyph { display: none; }
  .solution-mosaic { display: grid; grid-template-columns: 1fr; }
  .solution-feature { grid-column: auto; }
  .solution-feature__visual { min-height: 230px; }
  .solution-compact { min-height: 220px; }
  .assurance-stack > div { grid-template-columns: 30px 1fr; }
  .assurance-stack small { display: none; }
  .footer-base { align-items: flex-start; flex-direction: column; gap: .8rem; }
  .modal { padding: .75rem; }
  .modal__panel { max-height: calc(100vh - 1.5rem); padding: 2rem 1.35rem; }
  .modal__close { top: .7rem; right: .7rem; }
}
