/* Public reading aids shared by service and article pages. */
.content-brief { padding: 44px 0; background: #f5f8f3; border-block: 1px solid #dce7db; color: #173b28; }
.content-brief h2 { font-size: clamp(25px, 3vw, 36px); line-height: 1.45; margin: 0 0 18px; }
.content-brief p { max-width: 66ch; font-size: 17px; line-height: 1.85; margin: 0 0 18px; color: #45564c; }
.content-links { display: flex; flex-wrap: wrap; gap: 10px 24px; padding: 0; margin: 0; list-style: none; }
.content-links a, .article-answer a, .article-toc a, .article-related a, .content-byline a { color: #1b5e20; text-decoration-thickness: 1px; text-underline-offset: 4px; }
.content-links a:focus-visible, .article-toc a:focus-visible { outline: 2px solid #1b5e20; outline-offset: 4px; }
.service-crumbs { font-size: 14px; margin-bottom: 18px; color: #45564c; }
.service-crumbs a { color: inherit; text-underline-offset: 3px; }
.content-byline { font-size: 14px; line-height: 1.8; color: #526455; margin: 18px 0 0; }
.article-answer { background: #f1f7ee; border: 1px solid #d6e4d4; border-radius: 18px; padding: 24px; margin: 0 0 24px; }
.article-answer h2, .article-toc h2, .article-related h2 { font-size: 23px; line-height: 1.5; margin: 0 0 14px; color: #173b28; }
.article-answer p { margin: 0 0 16px; line-height: 1.85; color: #45564c; }
.article-answer ol { padding-left: 1.4em; margin: 0; line-height: 1.8; }
.article-answer li + li { margin-top: 8px; }
.article-toc { padding: 0 0 26px; margin-bottom: 24px; border-bottom: 1px solid #dce7db; }
.article-toc ol { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px 30px; margin: 0; padding-left: 1.5em; font-size: 15px; line-height: 1.7; }
.article-related { padding: 26px 0; border-top: 1px solid #dce7db; margin-top: 32px; }
.article-related p { line-height: 1.8; color: #45564c; margin-bottom: 16px; }
.article-related ul { margin: 0; padding-left: 1.4em; line-height: 1.8; }
.article-related li + li { margin-top: 8px; }
.prose h2[id], .article-answer[id], #editorial-policy { scroll-margin-top: 90px; }
.metric-banner .metric-new { white-space: normal; }
.financing-page .deploy-stat-k { font-size: clamp(18px, 1.8vw, 24px); line-height: 1.4; white-space: nowrap; }
.eff-table caption { text-align: left; font-weight: 600; padding: 16px 20px; }
@media (max-width: 600px) {
  .content-brief { padding: 32px 0; }
  .content-brief p { font-size: 16px; }
  .content-links { flex-direction: column; gap: 12px; }
  .article-answer { padding: 20px; }
  .article-answer h2, .article-toc h2, .article-related h2 { font-size: 21px; }
  .article-toc ol { grid-template-columns: 1fr; }
}
