.article-shell { max-width:960px; padding-top:40px; padding-bottom:72px; }
.article-header { padding-bottom:40px; border-bottom:1px solid var(--line); margin-bottom:44px; }
.article-header > .eyebrow { color:var(--brand-dark); }
.article-meta { display:flex; flex-wrap:wrap; align-items:center; gap:12px 24px; margin-block:24px; font-size:14px; color:var(--muted); }
.article-meta span { color:var(--brand-dark); background:var(--light-gray); padding:4px 12px; }
.article-header h1 { font-family:var(--serif); font-size:clamp(26px,3.1vw,40px); font-weight:400; }
.article-body { font-size:18px; line-height:2.1; overflow-wrap:anywhere; }
.article-body p { margin-block:22px; }
.article-body h2 { font-family:var(--serif); font-size:30px; font-weight:500; margin-top:56px; margin-bottom:24px; padding-top:25px; border-top:1px solid var(--line); }
.article-body h3 { font-size:24px; font-weight:500; margin-top:38px; margin-bottom:20px; }
.article-body h4 { font-size:21px; font-weight:500; margin-top:30px; margin-bottom:18px; }
.article-body > :first-child { margin-top:0; }
.article-body strong { font-weight:600; }
.article-body ul,.article-body ol { padding-left:1.5em; margin-block:24px; }
.article-body li { margin-block:12px; }
.article-body ul { list-style:disc; }
.article-body ol { list-style:decimal; }
.article-body a { color:var(--brand-dark); text-decoration:underline; text-underline-offset:4px; }
.article-body a:hover { text-decoration-thickness:2px; }
.article-body small { font-size:14px; }
.article-body hr { border:0; border-top:1px solid var(--line); margin-block:36px; }
.article-body blockquote { border-left:3px solid var(--brand); padding:12px 24px; margin-block:28px; background:var(--light-gray); }
.article-table { max-width:100%; overflow-x:auto; margin-block:30px; }
.article-table table { width:100%; border-collapse:collapse; font-size:16px; line-height:1.85; min-width:560px; }
.article-table th,.article-table td { text-align:left; vertical-align:top; border:1px solid var(--line); padding:16px 20px; }
.article-table th { background:var(--light-gray); font-weight:500; }
.article-footer { margin-top:48px; border-top:1px solid var(--line); padding-top:26px; font-size:14px; color:var(--muted); }
.article-guide-links { display:flex; flex-wrap:wrap; gap:12px 32px; }
.article-return { margin-top:40px; }
.article-next { display:flex; justify-content:space-between; align-items:center; gap:40px; padding-block:64px; }
.article-next > div { flex:1; min-width:0; }
.article-next .eyebrow { color:var(--brand-dark); }
.article-next h2 { margin-block:20px; }
.article-next > .button { flex-shrink:0; }
@media(max-width:800px) {
 .article-next { flex-direction:column; align-items:stretch; gap:28px; }
 .article-next > div { width:100%; }
 .article-next > .button { align-self:flex-start; }
}
@media(max-width:640px) {
 .article-shell { padding-top:26px; padding-bottom:48px; }
 .article-header { padding-bottom:28px; margin-bottom:30px; }
 .article-body { font-size:17px; line-height:2; }
 .article-body h2 { font-size:26px; margin-top:42px; }
 .article-body h3 { font-size:22px; }
 .article-body h4 { font-size:20px; }
 .article-table th,.article-table td { padding:12px 14px; }
 .article-return .button { width:100%; gap:20px; }
}
