/* Long-form guides only. Shared header/footer and legal documents stay unchanged. */
.site-main > .document-page.article-page { max-width: 760px; }
.article-page .article-body { font-size: 16px; line-height: 1.85; }
.article-page .article-body p, .article-page .article-body li { line-height: 1.85; }
.article-page .article-body p { margin-bottom: 18px; }
.article-page .article-body section + section { margin-top: 0; }
.article-page .article-body h2,
.article-page .article-body section:first-child > h2:first-child {
  margin: 40px 0 20px; padding: 14px 16px;
  color: #243645; background: #f4f6f7;
  font-size: 24px; font-weight: 700; line-height: 1.5;
}
.article-page .article-body h3,
.article-page .article-body :is(.guide-point-list, .guide-step-list) h3 {
  margin: 28px 0 12px; padding: 0;
  color: #243645; background: transparent;
  font-size: 18px; font-weight: 600; line-height: 1.5;
}
/* Sequential article flow rather than parallel card columns. */
.article-page .article-body .guide-point-list { display: block; border-top: 0; }
.article-page .article-body :is(.guide-point-list, .guide-step-list) > div { padding: 0 0 16px; }
.article-page .article-body .guide-step-list h3 { grid-column: 2; }
.article-page .article-body .guide-step-list span { margin-top: 28px; }
/* The shared statistics widget is outside the article outline and heading treatment. */
.article-page .article-body .public-profile-stats h2,
.article-page .article-body .public-profile-stats:first-child > h2:first-child {
  margin: 0 0 16px; padding: 0; background: transparent;
}
.article-page .article-body .public-profile-stats[data-stats-view="rates"] .contract-data-grid { display: block; }
/* Existing global scroll-padding-top is 84px; add 12px of breathing room. */
.article-page .article-body :is(h2, h3, section)[id] { scroll-margin-top: 12px; }
.article-page .article-body :is(ul, ol) { padding-left: 1.5em; margin-bottom: 18px; }
.article-page .article-body li + li { margin-top: 8px; }
.article-page .article-body .guide-source-list { padding-left: 0; }
.article-page .article-toc {
  margin: 24px 0 32px; padding: 20px;
  color: #243645; border: 1px solid #cdd5da;
  background: #f4f6f7;
}
/* Keep the visible gap at 32px; the first chapter needs no extra top margin. */
.article-page .article-toc + .article-body { display: flow-root; margin-top: 0; }
.article-page .article-toc + .article-body > section:first-child > h2:first-child { margin-top: 0; }
.article-page .article-body[id] { scroll-margin-top: 12px; }
.article-page .article-toc > summary {
  display: flex; align-items: center; justify-content: center; gap: 8px;
  margin: 0; padding: 8px 12px; color: #243645;
  font-size: 16px; font-weight: 600; line-height: 1.7;
  list-style: none; cursor: pointer;
}
.article-page .article-toc > summary::-webkit-details-marker { display: none; }
.article-page .article-toc-icon { fill: currentColor; flex: 0 0 18px; }
.article-page .article-toc-toggle { display: inline-block; width: 8px; height: 8px; margin-left: 8px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg); }
.article-page .article-toc[open] .article-toc-toggle { transform: rotate(225deg); margin-top: 5px; }
.article-page .article-toc nav { display: block; margin-top: 12px; }
.article-page .article-toc ol { margin: 0; padding: 0; list-style: none; }
.article-page .article-toc li + li { margin-top: 4px; }
.article-page .article-toc .article-toc-chapters > li + li { margin-top: 12px; }
.article-page .article-toc a {
  display: grid; grid-template-columns: max-content 1em minmax(0, 1fr); column-gap: 3px; align-items: baseline;
  padding: 2px 6px; color: #243645; text-decoration: none;
  font-size: 16px; font-weight: 600; line-height: 1.7; overflow-wrap: anywhere;
}
.article-page .article-toc :is(.article-toc-number, .article-toc-divider) { color: #626b71; font-variant-numeric: tabular-nums; }
.article-page .article-toc-number { text-align: left; white-space: nowrap; }
.article-page .article-toc-text { min-width: 0; padding-left: 4px; }
.article-page .article-toc .article-toc-subsections { margin: 4px 0 0 24px; }
.article-page .article-toc .article-toc-subsections a { font-size: 15px; font-weight: 400; color: #4f5d68; }
.article-page .article-toc :is(a, summary):hover { background-color: #edf1f3; }
.article-page .article-toc :is(a, summary):focus-visible { outline: 3px solid #537795; outline-offset: 1px; background-color: #edf1f3; }
.article-page .article-toc a:is(:hover, :focus-visible) .article-toc-text { text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 767.98px) {
  .article-page .article-body h2,
  .article-page .article-body section:first-child > h2:first-child { font-size: 22px; padding: 12px; }
  .article-page .article-toc { padding: 16px; }
  .article-page .article-toc .article-toc-subsections { margin-left: 16px; }
  .article-page .article-toc a { padding-left: 2px; padding-right: 2px; }
}
