.faq-page-section {
    padding: clamp(48px, 7vh, 88px) var(--pad-x) clamp(64px, 10vh, 120px);
    max-width: 820px;
    margin: 0 auto;
  }

  .faq-jump-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: clamp(40px, 6vh, 64px);
  }
  .faq-jump-pill {
    display: inline-flex;
    align-items: center;
    padding: 10px 20px;
    border-radius: 999px;
    border: 1px solid var(--border);
    background: #fff;
    font-family: var(--font-jp);
    font-size: 14px;
    font-weight: 600;
    color: var(--fg);
    transition: background .2s, color .2s, border-color .2s;
  }
  .faq-jump-pill:hover {
    background: var(--bg-soft);
    border-color: var(--border-strong);
    color: var(--fg);
  }

  .page-faq .faq-page-section {
    max-width: none;
    padding-inline: var(--pad-x);
    background: #ffffff;
  }
  .page-faq .faq-page-section > * {
    max-width: 820px;
    margin-inline: auto;
  }
