.faq-intro {
  position: relative;
  overflow: hidden;
  background: radial-gradient(ellipse at 95% 110%, var(--glow-a), var(--clear) 60%);
  color: var(--text);
}
.faq-intro .section {
  padding-top: 64px;
  padding-bottom: 64px;
}
.faq-intro h1 {
  margin: 18px 0 22px;
}
.faq-intro-copy {
  max-width: 700px;
  margin-bottom: 28px;
  color: var(--text-muted);
}
.faq-reference {
  display: inline-flex;
  align-items: center;
  min-height: 46px;
  padding: 8px 4px;
  color: var(--text);
  text-decoration: none;
}
.faq-reference:hover {
  text-decoration: underline;
}
.faq-intro-note {
  margin: 32px 0 0;
  color: var(--text-faint);
  font-size: var(--size-small);
  overflow-wrap: anywhere;
}
.faq-content {
  max-width: calc(1000px + var(--gutter) * 2);
  padding-top: 40px;
}
.faq-category + .faq-category {
  margin-top: 80px;
}
.faq-category .sub {
  max-width: 760px;
}
.faq-stack {
  overflow: hidden;
  border: 1px solid var(--line-light);
  border-radius: var(--r);
  background: var(--surface);
  color: var(--ink);
  box-shadow: var(--shadow-panel);
}
.faq-stack .faq-item:last-child {
  border-bottom: 0;
}
.faq-stack .faq-item {
  scroll-margin-top: 110px;
}
.faq-stack summary {
  overflow-wrap: anywhere;
}
.faq-stack .faq-answer {
  max-width: 860px;
  line-height: 1.9;
  overflow-wrap: anywhere;
}
.faq-related {
  margin: 20px 0 0;
  color: var(--ink-muted);
  font-size: var(--size-small);
  line-height: 2;
}
.faq-related a {
  color: var(--accent-dark);
}
@media (max-width: 640px) {
  .faq-intro .section {
    padding-top: 40px;
    padding-bottom: 40px;
  }
  .faq-category + .faq-category {
    margin-top: 56px;
  }
  .faq-stack summary {
    padding-left: 18px;
  }
  .faq-stack .faq-answer {
    padding-left: 18px;
    padding-right: 18px;
  }
}