/* Editorial pages only. No changes to existing research-tool layout. */
.blog-shell { max-width: 830px; }
.blog-kicker { color: #47635b; font-size: .76rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; margin-bottom: 1.2rem; }
.blog-index-heading h1, .blog-article-heading h1 { font-family: Georgia, "Times New Roman", serif; font-size: clamp(2.15rem, 5vw, 3.45rem); line-height: 1.12; letter-spacing: -.035em; color: #192b26; }
.blog-deck { font-size: clamp(1.13rem, 2.4vw, 1.4rem); line-height: 1.5; color: #58645f; margin: 1.2rem 0 1.6rem; }
.blog-byline { border-bottom: 1px solid #dbe2dd; margin: 1.8rem 0 2.5rem; padding-bottom: 1.5rem; }
.blog-meta { color: #63716a; font-size: .88rem; margin-top: .45rem; }
.blog-back { color: #315b4c; font-size: .9rem; }
.article-body { font-family: Georgia, "Times New Roman", serif; font-size: 1.17rem; line-height: 1.82; color: #26332e; }
.article-body p { margin: 0 0 1.4rem; }
.article-body h2 { font-family: inherit; font-size: 1.85rem; margin: 2.7rem 0 1.15rem; line-height: 1.25; }
.article-body h3 { font-family: inherit; font-size: 1.45rem; margin: 2.1rem 0 1rem; }
.article-body blockquote { border-left: 3px solid #5b7a6d; padding: .15rem 0 .15rem 1.25rem; margin: 1.5rem 0; }
.article-body blockquote p { margin-bottom: 0; }
.blog-citation { font-family: system-ui, sans-serif; font-size: .78em; white-space: nowrap; color: #315b4c; }
.blog-index-card { border-top: 1px solid #dbe2dd; }
.blog-index-card h2 { font-family: Georgia, "Times New Roman", serif; font-size: 1.85rem; }
.blog-index-card h2 a { color: #192b26; text-decoration: none; }
.blog-index-card h2 a:hover { text-decoration: underline; }
.blog-sources, .blog-author, .blog-cite { border-top: 1px solid #dbe2dd; padding-top: 1.5rem; }
.blog-sources h2, .blog-author h2, .blog-cite h2 { font-size: 1.2rem; }
.blog-sources li { padding: .45rem 0; line-height: 1.6; scroll-margin-top: 2rem; }
.blog-source-id { color: #63716a; }
.blog-empty { padding: 2rem; background: #f2f6f3; border-radius: .6rem; }
.blog-empty h2 { font-family: Georgia, "Times New Roman", serif; }
@media (max-width: 600px) { .blog-shell { padding-left: 1.15rem; padding-right: 1.15rem; } .article-body { font-size: 1.08rem; line-height: 1.75; } }
@media print { nav, footer, .blog-back, .blog-cite { display: none !important; } .blog-shell { max-width: none; } .article-body { font-size: 11pt; } a { color: inherit; } h2, h3 { break-after: avoid; } }

.blog-article-heading { padding-top: .5rem; }
.blog-article-heading h1 { text-wrap: balance; }
.blog-contents { border: 1px solid #d6dfd8; border-radius: .6rem; background: #f2f6f3; padding: 1.1rem 1.35rem; margin: 0 0 2.5rem; }
.blog-contents summary { font-weight: 650; cursor: pointer; color: #26483c; }
.blog-contents summary span { float: right; }
.blog-contents ol { margin-top: 1rem; margin-bottom: .25rem; padding-left: 1.3rem; }
.blog-contents li { margin: .5rem 0; line-height: 1.5; }
.blog-contents a { color: #315b4c; }
.article-body h2, .article-body h3 { scroll-margin-top: 1.5rem; }
.article-body > p:first-child { font-size: 1.1em; color: #192b26; }
.blog-source-link { display: block; overflow-wrap: anywhere; font-size: .9rem; margin-top: .25rem; }
.blog-sources li { padding: .75rem 0; }
.blog-author { background: #eef3ef; padding: 1.5rem; border-radius: .6rem; }
.blog-index-card { padding-left: .25rem; padding-right: .25rem; }
.blog-index-card h2 a:hover { color: #497866; }
@media print { .blog-contents { display: none; } .blog-author { break-inside: avoid; } }

.blog-reference-text { white-space: pre-line; }
.blog-reference-text a { overflow-wrap: anywhere; }

.blog-sources ol { list-style: none; padding-left: 0; }
