.article-breadcrumb{display:flex;flex-wrap:wrap;gap:9px;font-size:12px;color:var(--muted);padding-block:24px}
.article-breadcrumb a:hover{text-decoration:underline}
.article-heading{max-width:880px;padding:20px 0 34px}
.article-heading .eyebrow{color:var(--brand);margin-bottom:18px}
.article-heading h1{font-size:clamp(34px,4.6vw,61px);line-height:1.06;letter-spacing:-.048em;max-width:850px}
.article-heading .lead{font-size:19px;line-height:1.75;max-width:780px;margin-top:24px;color:var(--muted)}
.article-meta{font-size:12px;color:var(--muted);display:flex;gap:9px;flex-wrap:wrap;margin-top:20px}
.article-layout{display:grid;grid-template-columns:minmax(0,820px) minmax(210px,1fr);gap:56px;align-items:start;padding-bottom:75px}
.article-content{min-width:0;font-size:17px;line-height:1.9}
.article-figure{margin:0 0 42px;overflow:hidden;border-radius:12px;background:var(--pale)}
.article-figure img{width:100%;height:auto;aspect-ratio:3/2;object-fit:contain}
.article-figure figcaption{padding:14px 18px;font-size:14px;line-height:1.65;color:var(--muted);border-top:1px solid var(--line)}
.article-meta a{text-decoration:underline;text-underline-offset:3px}
.article-content section{margin-top:40px}
.article-content h2{font-size:30px;line-height:1.2;margin-bottom:19px;scroll-margin-top:26px;text-wrap:balance}
.article-content p+p{margin-top:18px}
.article-content p a{color:var(--brand-deep);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.article-content p a:hover{color:var(--brand)}
.article-toc{position:sticky;top:24px;border-top:4px solid var(--brand);padding:23px 0}
.article-toc h2{font-size:18px;margin-bottom:18px;letter-spacing:-.02em}
.article-toc ol{padding:0;margin:0;list-style:none;counter-reset:toc}
.article-toc li{counter-increment:toc;border-bottom:1px solid var(--line)}
.article-toc a{display:flex;align-items:baseline;gap:12px;padding:13px 0;font-size:13px;line-height:1.5}
.article-toc a:before{content:counter(toc,decimal-leading-zero);color:var(--brand);font-size:11px;font-weight:650}
.article-toc a:hover{color:var(--brand)}
.article-table-wrap{max-width:100%;overflow-x:auto;margin-top:24px;border:1px solid var(--line);border-radius:8px;background:#fff}
.article-table{width:100%;border-collapse:collapse;font-size:14px;line-height:1.65;text-align:left}
.article-table caption{text-align:left;font-size:12px;font-weight:650;letter-spacing:.02em;padding:15px 18px;background:var(--pale)}
.article-table th,.article-table td{padding:14px 18px;vertical-align:top;border-top:1px solid var(--line)}
.article-table thead{background:var(--brand-deep);color:#fff;font-size:12px}
.article-table tbody th{color:var(--brand-deep);font-weight:750;width:17%}
.article-table td:nth-child(2){width:26%}
.article-table tbody tr:nth-child(even){background:#fff9f4}
.article-related{border-top:1px solid var(--line);padding-top:25px;margin-top:42px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:20px}
.article-related a{font-size:14px;font-weight:650;color:var(--brand-deep)}
@media(max-width:1000px){.article-layout{grid-template-columns:minmax(0,1fr) 220px;gap:30px}.article-heading h1{font-size:49px}}
@media(max-width:800px){.article-layout{display:flex;flex-direction:column;gap:0}.article-toc{position:static;order:-1;width:100%;padding-bottom:25px;margin-bottom:10px}.article-toc ol{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.article-content{width:100%}.article-heading{padding-top:10px}.article-heading h1{font-size:42px}}
@media(max-width:620px){.article-breadcrumb{padding-block:19px;font-size:11px}.article-heading h1{font-size:36px}.article-heading .lead{font-size:17px;margin-top:20px}.article-heading{padding-bottom:27px}.article-meta{font-size:11px}.article-content{font-size:16px;line-height:1.85}.article-content h2{font-size:27px}.article-content section{margin-top:32px}.article-figure{margin-bottom:32px;border-radius:8px}.article-layout{padding-bottom:43px}.article-table{font-size:12px;line-height:1.6}.article-table th,.article-table td{padding:12px 9px}.article-table th:first-child{width:21%}.article-table td:nth-child(2){width:27%}.article-table caption{padding:13px 11px}.article-toc a{font-size:12px;gap:8px}.article-toc ol{gap:0 16px}}
@media(max-width:360px){.article-heading h1{font-size:32px}.article-toc ol{grid-template-columns:1fr}.article-table{font-size:11px}}
