/* Shared article presentation; charts, forms and quiz internals retain their styles. */
.article-back { display:inline-block; margin-bottom:24px; color:var(--red); font-size:13px; text-decoration:none; }
.article-refined .rollout-hero h1 { max-width:1000px; font-size:clamp(34px,4vw,60px); }
.article-refined .rollout-lede { font-size:19px; line-height:1.8; font-weight:400; }
.article-refined .article-reading { font-size:17px; line-height:1.85; }
.article-refined .article-reading :where(p,li) { overflow-wrap:anywhere; }
.article-refined .article-reading :where(h2,h3,h4) { scroll-margin-top:130px; }
.article-refined .article-reading :where(ul,ol) { padding-left:1.5em; }
.article-refined .article-reading li { margin-bottom:10px; }
.article-refined .article-reading .content-section { padding-inline:0; }
.article-refined .article-reading :where(.content-paragraph,.MsoNormal) { margin-bottom:24px; text-indent:0!important; }
.article-refined .article-reading :where(.content-column) { min-width:0; }
.article-refined .article-reading :where(img) { height:auto; max-width:100%; }
.article-refined .article-contents { margin:0 0 32px; padding:20px 24px; border:1px solid var(--line); border-radius:8px; }
.article-refined .article-contents summary { font-size:15px; cursor:pointer; }
.article-refined .article-contents ol { margin:20px 0 0; padding-left:20px; }
.article-refined .article-contents li { font-size:14px; line-height:1.6; margin-bottom:12px; }
.article-table { max-width:100%; overflow-x:auto; overscroll-behavior-inline:contain; margin:24px 0; }
.article-table:focus-visible { outline:2px solid var(--red); outline-offset:4px; }
.article-table table { display:table!important; margin:0; }
.article-table th { vertical-align:top; }
.article-directory-intro { max-width:720px; font-size:19px; line-height:1.7; margin:24px 0 0; }
.article-hub-links { display:flex; flex-wrap:wrap; gap:12px 26px; margin-top:30px; }
.article-hub-links a { font-size:13px; text-underline-offset:5px; }
.article-hub-links a[aria-current] { color:var(--red); font-weight:600; }
.article-directory-layout { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:64px; max-width:1280px; padding:56px 40px 90px; margin:auto; align-items:start; }
.article-directory-layout>.editorial-sidebar { grid-column:2; grid-row:1; position:sticky; top:120px; }
.article-directory-layout .preferred-source { margin-top:22px; }
.article-catalog { min-width:0; }
.article-catalog-top { display:flex; align-items:baseline; justify-content:space-between; flex-wrap:wrap; gap:10px; margin-bottom:24px; }
.article-catalog-top h2 { font:500 32px/1.2 var(--serif); margin:0; letter-spacing:-.025em; }
.article-count { font-size:12px; color:var(--muted); margin:0; }
.article-filters { display:grid; grid-template-columns:minmax(0,1fr) minmax(180px,.7fr); gap:16px; margin-bottom:32px; }
.article-filters label { display:block; font-size:12px; font-weight:600; margin-bottom:8px; }
.article-filters :where(input,select) { width:100%; min-width:0; border:1px solid #aba99f; border-radius:4px; background:white; color:var(--ink); padding:13px 12px; font:400 15px/1.5 var(--sans); }
.article-card-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
.article-card { display:flex; flex-direction:column; min-width:0; padding:25px; border:1px solid var(--line); border-radius:8px; }
.article-card:hover { border-color:#aaa69b; }
.article-card-topic { color:var(--red); font:600 10px/1.5 var(--sans); letter-spacing:.08em; text-transform:uppercase; margin:0 0 16px; }
.article-card h3 { font:500 25px/1.22 var(--serif); letter-spacing:-.025em; margin:0 0 16px; overflow-wrap:anywhere; }
.article-card h3 a { text-decoration:none; color:inherit; }
.article-card h3 a:hover { color:var(--red); }
.article-card-excerpt { font:400 14px/1.75 var(--sans); color:#55564e; margin:0 0 24px; }
.article-card-link { margin-top:auto; align-self:flex-start; font-size:12px; font-weight:600; color:var(--red); text-decoration:none; }
.article-more { display:block; margin:32px auto 0; padding:14px 28px; border:1px solid var(--ink); border-radius:4px; background:white; font:500 14px var(--sans); cursor:pointer; }
.article-directory [hidden] { display:none!important; }
.article-empty { padding:35px 0; }
@media(max-width:1000px) { .article-directory-layout { gap:30px; padding-inline:24px; grid-template-columns:minmax(0,1fr) 280px; } .article-card-grid { grid-template-columns:1fr; } }
@media(max-width:760px) {
 .article-directory-layout { display:flex; flex-direction:column; gap:36px; padding:32px 20px 55px; }
 .article-catalog { width:100%; }
 .article-directory-layout>.editorial-sidebar { position:static; width:100%; }
 .article-filters { grid-template-columns:1fr; }
 .article-card { padding:24px; }
 .article-refined .rollout-hero h1 { font-size:36px; line-height:1.15; }
 .article-refined .article-reading :where(.content-grid,.content-grid--2,.content-grid--3,.content-grid--4) { grid-template-columns:minmax(0,1fr); }
 .article-refined .article-reading :where(.content-section) { padding-block:16px; }
 .article-refined .article-reading :where(.content-row) { flex-wrap:wrap; }
 .article-refined .article-reading :where(.content-column) { width:100%; flex-basis:100%; }
 .article-table { -webkit-overflow-scrolling:touch; }
}
