.faq-mast {
  background: var(--accent-dark);
  color: var(--on-dark);
}
.faq-kicker {
  display: inline-flex;
  max-width: 100%;
  margin-bottom: 20px;
  padding: 6px 14px;
  border: 1px solid var(--on-dark-line-strong);
  border-radius: var(--r-pill);
  color: var(--on-dark);
  font-family: var(--font-mono);
  font-size: var(--fs-small);
  overflow-wrap: anywhere;
}
.faq-mast h1 {
  color: var(--on-dark);
}
.faq-summary {
  max-width: 36em;
  margin-bottom: 0;
  color: var(--on-dark-muted);
  font-size: var(--fs-intro);
  line-height: 1.8;
}
.faq-route {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin-top: 28px;
  padding-top: 24px;
  border-top: 1px solid var(--on-dark-line);
  font-family: var(--font-mono);
  font-size: var(--fs-ui);
}
.faq-route span[aria-hidden] {
  color: var(--sun);
}
.faq-reading {
  padding-top: 32px;
}
.faq-reading-note p {
  line-height: 1.85;
}
.faq-chapter {
  padding-top: 48px;
  padding-bottom: 16px;
  scroll-margin-top: 112px;
}
.faq-chapter-head .eyebrow {
  margin-bottom: 14px;
}
.faq-chapter-head h2 {
  margin-bottom: 12px;
}
.faq-chapter-head > p {
  margin-bottom: 12px;
  font-size: var(--fs-lede);
}
.faq-reading .faq-item summary {
  line-height: 1.75;
  overflow-wrap: anywhere;
}
.faq-reading .faq-item summary:hover {
  color: var(--accent-dark);
}
.faq-reading .faq-item[open] summary {
  color: var(--accent-dark);
}
.faq-reading .faq-answer {
  line-height: 1.95;
  overflow-wrap: anywhere;
}
.faq-next {
  margin: 24px 0 0;
  padding: 16px 20px;
  border: 1px solid var(--border);
  border-radius: var(--r-md);
  background: var(--bg-panel2);
  color: var(--text-muted);
  font-size: var(--fs-ui);
  line-height: 1.85;
}
@media (max-width: 640px) {
  .faq-summary {
    font-size: var(--fs-body);
  }
  .faq-route {
    gap: 8px;
    font-size: var(--fs-caption);
  }
  .faq-chapter {
    padding-top: 36px;
  }
}