.article-library,.article-reading { width:min(1080px,calc(100% - 48px)); margin:0 auto 72px; }
[data-page-type="article"] .breadcrumb,[data-page-type="articles"] .breadcrumb { max-width:1080px; }
[data-page-type="article"] .hero,[data-page-type="articles"] .hero { width:min(1080px,calc(100% - 48px)); text-align:left; padding-block:36px 40px; }
[data-page-type="article"] .hero h1,[data-page-type="articles"] .hero h1 { font-family:var(--ui-font); font-weight:750; font-size:clamp(1.65rem,2.7vw,2.2rem); line-height:1.25; text-transform:none; letter-spacing:-.035em; margin:0; }
[data-page-type="article"] .eyebrow,[data-page-type="articles"] .eyebrow { font-size:.8125rem; letter-spacing:.1em; color:#65541f; }
[data-page-type="article"] .eyebrow::before,[data-page-type="articles"] .eyebrow::before { content:""; display:inline-block; width:8px; height:8px; border-radius:50%; background:#c39600; margin-right:9px; }
[data-page-type="articles"] .hero-lead { margin:18px 0 12px; font-size:1.08rem; line-height:1.6; font-weight:500; }
[data-page-type="articles"] .hero-description { margin:0; max-width:700px; }
.article-library-heading { display:flex; align-items:baseline; justify-content:space-between; flex-wrap:wrap; gap:8px 20px; padding:18px 0; border-top:1px solid var(--line); font-size:.8125rem; }
.article-library-heading p { margin:0; font-weight:650; }
.article-library-heading span { color:var(--muted); font-size:.8125rem; }
.article-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; list-style:none; padding:0; margin:0; }
.article-card { position:relative; min-width:0; background:var(--surface); border:1px solid #ded8cc; border-radius:14px; overflow:hidden; }
.article-card-content { display:flex; flex-direction:column; height:100%; }
.article-card-link { color:inherit; text-decoration:none; }
.article-card-link::after { content:""; position:absolute; inset:0; border-radius:14px; }
.article-card-link:focus-visible { outline:none; }
.article-card-link:focus-visible::after { outline:3px solid #6d5300; outline-offset:-5px; }
.article-card-visual { aspect-ratio:16/10; overflow:hidden; background:#eee7d8; }
.article-image { display:block; width:100%; height:100%; object-fit:cover; transition:transform 220ms ease; }
.article-image--contain { object-fit:contain; padding:12px; }
.article-card-body { display:flex; flex:1; flex-direction:column; padding:23px; }
.article-card h2,.article-card h3 { font-family:var(--ui-font); font-size:1.1rem; font-weight:720; line-height:1.45; letter-spacing:-.015em; margin:12px 0; }
.article-card .article-topic { display:flex; align-items:center; flex-wrap:wrap; gap:10px; font-size:.8125rem; font-weight:750; letter-spacing:.05em; color:#675214; margin:0; line-height:1.5; }
.article-topic span { color:#625d50; font-size:.8125rem; font-weight:500; letter-spacing:0; border-left:1px solid #b2a779; padding-left:10px; }
.article-card-description { color:#5a564e; font-size:.85rem; line-height:1.75; margin:0 0 24px; }
.article-card-bottom { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:10px; border-top:1px solid #e8e3d8; padding-top:16px; margin-top:auto; font-size:.8125rem; color:#676158; }
.article-card-cta { color:var(--ink); font-size:.8125rem; font-weight:700; }
.article-card-cta>span { display:inline-grid; place-items:center; width:25px; height:25px; margin-left:5px; border-radius:50%; background:#fff1b6; font-size:1rem; }
.article-card--featured { grid-column:1/-1; background:#fffaf0; margin-bottom:8px; }
.article-card--featured .article-card-content { display:grid; grid-template-columns:1fr 1fr; }
.article-card--featured .article-card-visual { aspect-ratio:auto; min-height:310px; }
.article-card--featured .article-card-body { padding:32px; }
.article-card--featured h2 { font-size:clamp(1.25rem,2.1vw,1.65rem); line-height:1.35; margin-block:17px; }
.article-card--featured .article-card-description { font-size:.95rem; }
.article-library-help { border-left:3px solid #d4ac28; padding:8px 0 8px 20px; margin:32px 0 0; font-size:.9rem; line-height:1.75; color:#514c42; }
.article-library-help a,.article-reading a { text-underline-offset:3px; }
.article-hero { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); gap:44px; align-items:center; }
.article-hero-copy { min-width:0; }
[data-page-type="article"] .hero-lead { margin:20px 0; font-size:.97rem; line-height:1.8; font-weight:400; color:#504c44; }
.article-byline { display:flex; align-items:center; gap:12px; margin:24px 0; }
.article-author-mark { display:grid; place-items:center; flex:0 0 38px; height:38px; background:#f5cd49; border-radius:50%; color:#30280d; font-size:.8125rem; font-weight:800; }
.article-byline p { margin:0; font-size:.8125rem; line-height:1.6; }
.article-byline a { font-weight:700; text-decoration:none; }
.article-byline p>span { display:block; color:#6a6459; font-size:.8125rem; }
.article-hero-actions { display:flex; align-items:center; flex-wrap:wrap; gap:12px 22px; font-size:.8125rem; font-weight:650; }
.article-hero-actions a { min-height:44px; display:inline-flex; align-items:center; gap:14px; }
.article-hero-actions a:first-child { background:#24241f; color:white; padding:12px 18px; border-radius:8px; text-decoration:none; }
.article-cover { margin:0; min-width:0; }
.article-cover-frame { height:350px; border-radius:16px; overflow:hidden; background:#eee7d8; border:1px solid #ded8cc; }
.article-cover figcaption { font-size:.8125rem; line-height:1.7; color:#6a6459; padding-top:10px; }
.article-cover figcaption a { text-underline-offset:3px; }
.article-reading { font-size:1rem; line-height:1.8; overflow-wrap:anywhere; }
.article-layout { display:grid; grid-template-columns:220px minmax(0,1fr); gap:32px; align-items:start; }
.article-sidebar { min-width:0; padding-top:20px; font-size:.8125rem; line-height:1.65; }
.article-toc { padding:0 0 24px; border-bottom:1px solid var(--line); }
.article-toc summary { min-height:44px; cursor:pointer; font-weight:750; font-size:.82rem; padding-block:10px; }
.article-toc ol { padding-left:20px; margin:12px 0 0; }
.article-toc li { padding-left:4px; margin-bottom:12px; }
.article-toc li::marker { color:#8a701e; font-size:.8125rem; }
.article-toc a { color:#5b554a; text-decoration:none; }
.article-toc a:hover { color:#171612; text-decoration:underline; }
.article-sidebar-help { padding-top:25px; }
.article-sidebar-help>span { font-size:1.4rem; color:#917000; }
.article-reading .article-sidebar-help h2 { font-size:.92rem; margin:5px 0 12px; }
.article-sidebar-help p { color:#625c51; }
.article-sidebar-help a { font-weight:650; }
.article-content { min-width:0; padding:34px 40px; background:#fff; border:1px solid #e3ded3; border-radius:14px; scroll-margin-top:24px; }
.article-reading h2 { font-family:var(--ui-font); font-size:clamp(1.14rem,2vw,1.35rem); line-height:1.4; letter-spacing:-.02em; margin:36px 0 16px; scroll-margin-top:24px; }
.article-prose>h2:first-child { margin-top:0; }
.article-prose h3 { font-size:1.05rem; line-height:1.5; margin:28px 0 12px; }
.article-content p { margin:0 0 20px; }
.article-prose ul,.article-prose ol { padding-left:24px; margin-bottom:24px; }
.article-prose li { padding-left:3px; margin-bottom:10px; }
.article-prose a { text-decoration:underline; text-decoration-color:#aa871b; }
.article-prose blockquote { margin:26px 0; padding:20px 24px; background:#faf5e6; border-left:3px solid #c8a331; border-radius:0 8px 8px 0; }
.article-prose blockquote p:last-child { margin-bottom:0; }
.article-prose pre { overflow:auto; max-width:100%; background:#f1efe9; padding:18px; border-radius:8px; font-size:.83rem; }
.article-prose code { overflow-wrap:anywhere; }
.article-table-scroll { overflow-x:auto; margin:24px 0; border:1px solid var(--line); border-radius:8px; }
.article-table-scroll table { border-collapse:collapse; width:100%; min-width:520px; font-size:.88rem; }
.article-table-scroll th,.article-table-scroll td { padding:12px; border:1px solid #ded8cc; text-align:left; vertical-align:top; }
.article-table-scroll th { background:#f5f0e4; }
.article-quiz { margin-top:40px; padding:24px; border:1px solid #dfcc89; border-radius:12px; background:#fffaf0; scroll-margin-top:24px; }
.article-quiz .article-quiz-kicker { margin:0 0 8px; color:#705a13; font-size:.8125rem; font-weight:750; letter-spacing:.06em; text-transform:uppercase; }
.article-quiz h2 { margin-top:0; }
.article-quiz>p { font-size:.88rem; line-height:1.8; }
.article-quiz fieldset { min-width:0; background:#fff; }
.article-quiz fieldset[data-answered="correct"] { border-color:#477a4c; }
.article-quiz fieldset[data-answered="incorrect"] { border-color:#9b6029; }
.article-quiz .article-explanation { margin:14px 0 0; font-size:.87rem; }
.article-quiz-actions { display:flex; gap:12px; flex-wrap:wrap; margin:20px 0; }
.article-reset { border:1px solid #b8ad91; border-radius:8px; min-height:44px; padding:10px 16px; font:inherit; font-size:.82rem; cursor:pointer; background:white; }
.article-result { font-weight:650; }
.article-related { margin-top:52px; padding-top:30px; border-top:1px solid var(--line); }
.article-related>.section-kicker { font-size:.8125rem; margin:0 0 9px; }
.article-related>h2 { margin:0 0 24px; }
.article-grid--related { grid-template-columns:repeat(3,minmax(0,1fr)); }
.article-related>p:last-child { margin-top:24px; font-size:.85rem; }
@media(hover:hover) and (prefers-reduced-motion:no-preference) {
 .article-card:hover .article-image { transform:scale(1.025); }
}
@media(hover:hover) {
 .article-card:hover h2,.article-card:hover h3 { text-decoration:underline; text-decoration-color:#b48b0b; text-underline-offset:4px; }
}
@media(max-width:980px) {
 .article-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .article-hero { grid-template-columns:1fr; gap:24px; }
 .article-cover-frame { height:auto; aspect-ratio:2/1; }
 .article-layout { grid-template-columns:1fr; gap:24px; }
 .article-sidebar { padding:0; }
 .article-toc { padding:14px 20px; border:1px solid #ded8cc; border-radius:10px; }
 .article-toc ol { columns:2; column-gap:32px; }
 .article-toc li { break-inside:avoid; }
 .article-sidebar-help { display:none; }
}
@media(max-width:680px) {
 .article-library,.article-reading,[data-page-type="article"] .hero,[data-page-type="articles"] .hero { width:calc(100% - 32px); }
 [data-page-type="article"] .hero,[data-page-type="articles"] .hero { padding-block:26px 28px; }
 .article-grid,.article-card--featured .article-card-content { grid-template-columns:1fr; }
 .article-card--featured .article-card-visual { min-height:0; aspect-ratio:16/10; }
 .article-card-body,.article-card--featured .article-card-body { padding:22px; }
 .article-card--featured h2 { font-size:1.3rem; }
 .article-card--featured .article-card-description { font-size:.88rem; }
 .article-cover-frame { aspect-ratio:4/3; }
 .article-toc ol { columns:1; }
 .article-content { padding:24px 20px; }
 .article-reading { font-size:.97rem; }
 .article-quiz { padding:20px 14px; margin-inline:-6px; }
 .article-quiz-actions { flex-direction:column; align-items:stretch; }
 .article-quiz .guide-copy,.article-reset { width:100%; justify-content:center; }
}
@media(prefers-reduced-motion:reduce) { .article-image { transition:none; } }
@media print {
 .article-hero { display:block; }
 .article-hero-actions,.article-sidebar,.article-related { display:none; }
 .article-cover { max-width:480px; margin-block:20px; }
 .article-layout { display:block; }
 .article-content { border:0; padding:0; }
}
