/* MatrixLevels+ site fixes (2026-10-23). Loaded after the main stylesheet. */
@media (max-width: 1023.98px) {
  /* With JS: collapse the primary nav behind the menu button. Without JS the nav stays visible. */
  html.js-nav header:not(.nav-open) nav[aria-label="Primary"] { display: none !important; }
  html.js-nav header.nav-open nav[aria-label="Primary"] {
    display: flex !important; flex-direction: column; align-items: flex-start;
    order: 3; width: 100%; gap: .25rem; padding: .5rem 0 1rem;
  }
  html.js-nav header.nav-open nav[aria-label="Primary"] a { display: block; padding: .6rem 0; min-height: 44px; }
}
/* No JS: the menu button would do nothing, so hide it. */
html:not(.js-nav) button[aria-label="Open menu"] { display: none; }
/* Indicator suite cards */
.ind-grid { display: grid; gap: 1.5rem; }
@media (min-width: 768px) { .ind-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1100px) { .ind-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.ind-card { display: flex; flex-direction: column; }
.ind-card img { aspect-ratio: 16 / 10; object-fit: cover; object-position: left top; width: 100%; height: auto; }
.ind-card .ind-body { display: flex; flex: 1; flex-direction: column; }
.ind-card .ind-body a { margin-top: auto; align-self: flex-start; }
.ind-badge { display: inline-block; margin-left: .5rem; padding: .1rem .5rem; border-radius: 999px;
  border: 1px solid var(--color-green); color: var(--color-green); font-size: .65rem; letter-spacing: .08em; vertical-align: middle; }
.ind-card .mb-6 { margin-bottom: 1.5rem; }
