@media (max-width: 1320px) { .head-cta { display: none; } }
@media (max-width: 1180px) {
  .menu { gap: 1.35rem; }
  .head-cta { display: none; }
  .timeline { grid-template-columns: repeat(3, 1fr); row-gap: 3rem; }
  .pillars, .consid-grid.four { grid-template-columns: repeat(2, 1fr); }
  .foot-grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 980px) {
  .utility-in > span:first-child { display: none; }
  .utility-r { width: 100%; justify-content: space-between; gap: 1rem; }
  .nav-open { display: inline-flex; align-items: center; gap: .75rem; background: none; border: 1px solid var(--stone); padding: .7rem 1rem; font: inherit; font-size: .72rem; font-weight: 600; letter-spacing: .2em; text-transform: uppercase; color: var(--espresso); cursor: pointer; }
  .bars, .bars::before { display: block; width: 20px; height: 1px; background: var(--burgundy); position: relative; }
  .bars::before { content: ""; position: absolute; top: 6px; width: 13px; }
  .bars { margin-top: -6px; }
  .primary { position: fixed; inset: 0 0 0 auto; width: min(420px, 100%); background: var(--burgundy-dark); color: var(--ivory); z-index: 80; padding: 1.5rem 2rem 2rem; transform: translateX(100%); transition: transform .45s var(--ease); display: flex; flex-direction: column; overflow-y: auto; visibility: hidden; }
  .primary.open { transform: none; visibility: visible; }
  .nav-panel-head { display: flex; justify-content: space-between; align-items: center; padding-bottom: 1.5rem; border-bottom: 1px solid rgba(198,167,120,.4); margin-bottom: 1rem; }
  .nav-panel-head .eyebrow { color: var(--gold); margin: 0; }
  .nav-close { background: none; border: 1px solid rgba(248,245,239,.4); color: var(--ivory); padding: .5rem .9rem; font: inherit; font-size: .7rem; letter-spacing: .2em; text-transform: uppercase; cursor: pointer; }
  .menu { flex-direction: column; gap: 0; }
  .menu > li { flex-wrap: wrap; border-bottom: 1px solid rgba(248,245,239,.12); }
  .menu > li > a { color: var(--ivory); font-family: var(--serif); font-size: 1.8rem; letter-spacing: 0; text-transform: none; font-weight: 500; padding: 1rem 0; flex: 1; }
  .menu > li > a::after { display: none; }
  .dd-toggle { color: var(--gold); font-size: 1.6rem; padding: .5rem; }
  .dd { position: static; width: 100%; opacity: 1; visibility: visible; transform: none; background: transparent; border: 0; padding: 0 0 1rem; display: none; }
  .has-dd.open .dd { display: block; }
  .has-dd:hover .dd, .has-dd:focus-within .dd { opacity: 1; }
  .dd a { color: rgba(248,245,239,.8); padding: .45rem 0; }
  .dd a:hover { background: none; color: var(--gold); }
  .dd-all { border-color: rgba(248,245,239,.15); }
  .dd-all a { color: var(--gold); }
  .nav-panel-foot { display: grid; gap: .5rem; margin-top: auto; padding-top: 2rem; font-size: .9rem; }
  .nav-panel-foot a { color: rgba(248,245,239,.8); text-decoration: none; }
  body.nav-locked { overflow: hidden; }

  .split-asym, .split-even, .split-img, .feature, .contact-grid, .transp, .doc { grid-template-columns: 1fr; }
  .transp .textlink { grid-column: 1; }
  .feature-media img { min-height: 360px; aspect-ratio: 16/10; }
  .sec-head { grid-template-columns: 1fr; gap: 1rem; }
  .dir-row, .aud-row { grid-template-columns: 3rem 1fr 1.5rem; gap: .5rem 1rem; }
  .dir-desc { grid-column: 2 / 3; grid-row: 2; }
  .dir-arrow { grid-row: 1; grid-column: 3; }
  .mag, .mag-all { grid-template-columns: 1fr 1fr; }
  .mag .acard-big, .mag-all .acard-big { grid-column: span 2; grid-row: auto; }
  .consid-grid { grid-template-columns: 1fr; gap: 1.5rem; }
  .toc { position: static; max-height: none; }
  .toc details:not([open]) summary { margin-bottom: 0; }
  .hero-side { display: none; }
}

@media (max-width: 640px) {
  body { font-size: 1rem; }
  .utility { display: none; }
  .head-in { min-height: 72px; gap: 1rem; }
  .wm-mark { width: 42px; height: 42px; font-size: .9rem; }
  .wm-name { font-size: 1.25rem; }
  .wm-name small { display: none; }
  .hero { min-height: 88vh; }
  .hero-in { padding-top: 5rem; }
  .btns .btn { width: 100%; justify-content: center; }
  .timeline, .pillars, .consid-grid.four, .mag, .mag-all, .foot-grid, .row2 { grid-template-columns: 1fr; }
  .mag .acard-big, .mag-all .acard-big { grid-column: auto; }
  .kv > div { grid-template-columns: 1fr; gap: .25rem; }
  .mini-arts .acard-link { grid-template-columns: 110px 1fr; gap: 1rem; }
  .faq summary { font-size: 1.2rem; }
  .faq-a { padding-right: 0; }
  .cc { left: .75rem; right: .75rem; bottom: .75rem; max-width: none; }
  .cc-in { padding: 1.25rem; }
  .cc-actions .btn { flex: 1 1 100%; }
  .ruled li { padding-left: 2.75rem; }
}
