.support-header,
.support-page,
.support-footer {
  max-width: 960px;
  margin: 0 auto;
  padding: 1.5rem clamp(1rem, 4vw, 3rem);
  overflow-wrap: anywhere;
}

.support-header nav,
.support-page > nav:last-child {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem 1.25rem;
  margin-bottom: 1rem;
}

.support-page {
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  line-height: 1.75;
}

.support-page h1 { font-size: clamp(2rem, 6vw, 3rem); }
.support-page h2 { font-size: 1.3rem; line-height: 1.4; }
.support-page ol { padding-left: 1.5rem; }
.support-page li { padding-bottom: 0.35rem; }
.support-version { color: var(--muted); }
.support-section { border-top: 1px solid var(--line); padding-top: 1rem; scroll-margin-top: 1rem; }
.support-page a,
.support-header nav a,
.support-footer a { color: var(--brand-dark); text-decoration: underline; text-underline-offset: 0.2em; }
.support-page input { display: block; width: 100%; font: inherit; padding: 0.75rem; border: 1px solid var(--muted); border-radius: 8px; }
.support-page label { font-weight: 700; }
.support-skip { position: absolute; left: -9999px; }
.support-skip:focus { position: static; display: block; padding: 1rem; }
:focus-visible { outline: 3px solid var(--brand); outline-offset: 3px; }

@media print {
  .support-header, .support-skip, #support-search, label[for="support-search"], #support-results { display: none; }
  .support-page { border: none; max-width: none; }
  .support-section[hidden] { display: block; }
  body { background: white; }
}
