:root{--article-line:#cbd4cd;--article-accent:#236760;--article-panel:#eeeee5;--article-gold:#947441}
body.dark{--article-line:#28423f;--article-accent:#abd3c3;--article-panel:#0d2425;--article-gold:#d4b782}
html{scroll-behavior:smooth;scroll-padding-top:24px}
body{line-height:1.8}
.article-header{padding:clamp(30px,6vw,76px) max(24px,calc((100vw - 1080px)/2));border-bottom:1px solid var(--article-line);background:var(--article-panel)}
.article-kicker{margin:0 0 12px;color:var(--article-gold);font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.article-header h1{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(36px,6vw,68px);line-height:1.12;margin:0 0 18px;letter-spacing:-.035em}
.article-subtitle{margin:0;color:var(--muted);font-size:clamp(16px,2vw,20px)}
.article-layout{display:grid;grid-template-columns:200px minmax(0,1fr);gap:48px;max-width:1128px;margin:auto;padding:48px 24px 80px}
.article-aside{align-self:start;position:sticky;top:24px;font-size:13px;line-height:1.5}
.article-aside p{font-weight:700;color:var(--article-gold);font-size:11px;text-transform:uppercase;letter-spacing:.12em;margin:0 0 14px}
#articleContents{display:grid;gap:12px;border-left:1px solid var(--article-line);padding-left:16px}
#articleContents a{color:var(--muted);text-decoration:none}
#articleContents a:hover,#articleContents a:focus-visible{color:var(--article-accent);text-decoration:underline}
.article-body{min-width:0;font-size:17px}
.article-body p{margin:0 0 1.25em}
.article-body h2,.article-body h3,.article-body h4{color:var(--article-accent);font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.25;scroll-margin-top:24px}
.article-body h2{font-size:32px;margin:2.3em 0 .8em;padding-top:24px;border-top:1px solid var(--article-line)}
.article-body h3{font-size:25px;margin:2em 0 .8em}
.article-body h4{font-size:21px;margin:1.8em 0 .8em}
.article-body>h3:first-child{margin-top:0}
.article-body ul,.article-body ol{padding-left:24px;margin:0 0 1.5em}
.article-body li{padding-left:5px;margin:.6em 0}
.article-body li::marker{color:var(--article-gold)}
.article-body strong{font-weight:700}
.article-body a{color:var(--article-accent);text-underline-offset:3px}
.article-body blockquote{border-left:3px solid var(--article-gold);margin:24px 0;padding:8px 24px;background:var(--article-panel)}
.article-body pre{overflow:auto;padding:20px;background:var(--article-panel);border:1px solid var(--article-line);font-size:14px}
.article-body table{display:block;overflow:auto;border-collapse:collapse;width:100%;margin:24px 0}
.article-body th,.article-body td{border:1px solid var(--article-line);padding:8px 12px;text-align:left}
.article-media{margin:40px 0}
.article-media video,.article-media img{display:block;width:100%;height:auto;border:1px solid var(--article-line)}
.article-media video{background:#000;max-height:75vh}
.article-media figcaption{margin-top:12px;color:var(--muted);font-size:13px;line-height:1.5}
.article-image-link{display:block}
.article-media-img{width:100%}
.article-status{padding:20px;background:var(--article-panel);border:1px solid var(--article-line)}
.article-status[hidden]{display:none}
.article-footer{border-top:1px solid var(--article-line);padding:20px 24px;text-align:center;color:var(--muted);font-size:12px;letter-spacing:.08em}
@media(max-width:850px){.article-layout{grid-template-columns:1fr;gap:30px;padding-top:30px}.article-aside{position:static}.article-aside nav{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.article-media-img{width:100%;margin-left:0}.article-body{font-size:16px}.article-media{margin:30px 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Semantic heading levels retain the article's existing typography. */
.article-body h2.article-heading-level-3{font-size:25px;margin:2em 0 .8em;padding-top:0;border-top:0}
.article-body>h2.article-heading-level-3:first-child{margin-top:0}
.article-body h3.article-heading-level-4{font-size:21px;margin:1.8em 0 .8em}
