/* WEB42: Blog articles and archive entry. Existing site typography is retained. */
.blog-article-page .note-header { padding-bottom:18px; }
.editorial-page.blog-article-page main .note-heading { max-width:1180px; }
.editorial-page.blog-article-page main .note-deck { max-width:940px; }
.editorial-page main .blog-byline { margin:10px 0 0; font:400 14px/1.5 'PT Serif',Georgia,serif; color:#59655b; }
.blog-byline span { padding:0 8px; }
.blog-article-page .note-photo { max-width:1148px; }
.blog-article-page figcaption { padding:12px 0 0; color:#627065; font:400 14px/1.6 'PT Serif',Georgia,serif; }
.blog-reading-layout { display:grid; grid-template-columns:210px minmax(0,780px); gap:56px; max-width:1148px; margin:0 auto; padding:42px 24px 0; align-items:start; }
.blog-reading-layout .note-body { max-width:780px; width:100%; padding:0 0 48px; margin:0; min-width:0; }
.blog-toc { position:sticky; top:115px; padding:18px 0; border-top:3px solid #b89442; }
.editorial-page main .blog-toc p { margin:0 0 17px; font:400 22px/1.2 'Bebas Neue',sans-serif; color:#17392f; letter-spacing:.04em; }
.blog-toc ol { margin:0; padding:0; list-style:none; }
.blog-toc li { margin:0 0 13px; }
.blog-toc a { display:block; color:#506052; font:400 15px/1.55 'PT Serif',Georgia,serif; text-decoration:none; padding:2px 0; }
.blog-toc a:hover { color:#17392f; text-decoration:underline; text-underline-offset:4px; }
.blog-toc .blog-toc-back { border-top:1px solid #dce1d9; padding-top:17px; margin-top:20px; font:400 18px/1.4 'Bebas Neue',sans-serif; }
.blog-body section { padding:0; margin:0; scroll-margin-top:130px; }
.blog-article-page #contact { scroll-margin-top:110px; }
.editorial-page main .blog-body .blog-opening { font-size:20px; line-height:1.75; }
.editorial-page main .blog-body .blog-section-label { margin:42px 0 8px; color:#876621; font:400 17px/1.4 'Bebas Neue',sans-serif; letter-spacing:.10em; }
.editorial-page main .blog-body .blog-section-label+h2 { margin-top:0; }
.blog-table-wrap { overflow-x:auto; margin:24px 0 16px; border:1px solid #d9dfd4; border-radius:2px; }
.blog-table-wrap:focus-visible { outline:3px solid #b48720; outline-offset:4px; }
.blog-season-table { border-collapse:collapse; width:100%; min-width:570px; font:400 15px/1.6 'PT Serif',Georgia,serif; color:#435248; }
.blog-season-table caption { caption-side:top; padding:15px 18px; background:#f7f5ef; color:#526052; font-size:14px; }
.blog-season-table thead th { background:#17392f; color:#fff; font:400 21px/1.2 'Bebas Neue',sans-serif; letter-spacing:.02em; }
.blog-season-table th,.blog-season-table td { padding:17px 18px; vertical-align:top; border-bottom:1px solid #d9dfd4; }
.blog-season-table tbody th { width:26%; color:#17392f; font-weight:700; }
.blog-season-table tbody tr:nth-child(even) { background:#f7f5ef; }
.blog-season-table tr:last-child th,.blog-season-table tr:last-child td { border-bottom:0; }
.editorial-page main .blog-body .blog-small { font-size:14px; line-height:1.65; color:#667265; }
.blog-inline-photo { margin:30px 0 36px; }
.blog-inline-photo img { display:block; width:100%; height:auto; }
.blog-field-note { padding:25px 28px; background:#f7f5ef; border-left:3px solid #b89442; margin:28px 0 36px; }
.editorial-page main .blog-field-note h3 { font-size:28px; margin:0 0 12px; color:#17392f; }
.editorial-page main .blog-field-note p { margin-bottom:0; font-size:16px; line-height:1.75; }
.blog-faq details { border-top:1px solid #d9dfd4; padding:18px 0; }
.blog-faq details:last-child { border-bottom:1px solid #d9dfd4; }
.blog-faq summary { cursor:pointer; font:700 17px/1.6 'PT Serif',Georgia,serif; color:#17392f; padding-right:15px; }
.blog-faq summary:focus-visible { outline:3px solid #b48720; outline-offset:5px; }
.editorial-page main .blog-faq details p { margin:14px 0 0; font-size:17px; }
.blog-author { margin:36px 0; border-bottom:1px solid #d9dfd4; padding-bottom:22px; }
.editorial-page main .blog-author p { font-size:15px; line-height:1.8; margin:0; }
.blog-cta { background:#f7f5ef; padding:30px; }
.editorial-page main .blog-cta h2 { margin:0 0 18px; }
.editorial-page main .blog-cta p { font-size:17px; line-height:1.8; }
.blog-entry { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,1fr); gap:40px; padding:0 0 34px; border-bottom:1px solid #d9dfd4; align-items:center; }
.blog-entry-photo { display:block; }
.blog-entry-photo img { display:block; width:100%; height:auto; }
.editorial-page main .blog-entry .blog-entry-category { margin:0 0 12px; font:400 16px/1.4 'Bebas Neue',sans-serif; color:#876621; letter-spacing:.08em; }
.editorial-page main .blog-entry h3 { font-size:39px; line-height:1.12; margin:0 0 16px; color:#17392f; }
.blog-entry h3 a { color:inherit; text-decoration:none; }
.blog-entry h3 a:hover { text-decoration:underline; text-underline-offset:5px; }
.editorial-page main .blog-entry .blog-entry-summary { font-size:17px; line-height:1.75; margin:0 0 20px; }
.editorial-page main .blog-entry .blog-entry-meta { font-size:13px; line-height:1.5; color:#687468; margin:0 0 18px; }
.editorial-intro a { color:#17392f; text-decoration:underline; text-underline-offset:4px; }
.editorial-page main .editorial-crosslink .blog-inline-link { display:inline; font:inherit; color:inherit; white-space:normal; text-underline-offset:3px; }
@media(max-width:1100px) {
 .blog-reading-layout { grid-template-columns:170px minmax(0,1fr); gap:30px; }
}
@media(max-width:991px) {
 .blog-reading-layout { display:block; max-width:828px; padding-top:25px; }
 .blog-toc { position:static; margin:0 0 30px; padding-bottom:17px; border-bottom:1px solid #d9dfd4; }
 .blog-toc ol { display:flex; flex-wrap:wrap; gap:10px 24px; }
 .blog-toc li { margin:0; }
 .blog-toc .blog-toc-back { display:none; }
 .blog-entry { gap:28px; }
 .editorial-page main .blog-entry h3 { font-size:34px; }
}
@media(max-width:767px) {
 .blog-article-page .note-photo { padding:0; }
 .blog-article-page .note-photo figcaption { padding:10px 20px 0; }
 .blog-reading-layout { padding:28px 24px 0; }
 .editorial-page main .blog-byline { font-size:12px; }
 .blog-byline span { padding:0 4px; }
 .editorial-page main .blog-body .blog-opening { font-size:18px; }
 .blog-toc a { font-size:14px; }
 .blog-season-table th,.blog-season-table td { padding:14px; }
 .blog-field-note { padding:22px; }
 .blog-cta { padding:24px; }
 .blog-entry { grid-template-columns:1fr; gap:22px; }
 .editorial-page main .blog-entry h3 { font-size:34px; }
 .blog-body section { scroll-margin-top:85px; }
}
@media(prefers-reduced-motion:reduce) { .blog-article-page * { scroll-behavior:auto!important; } }

@media(max-width:767px) {
 .blog-season-table { min-width:0; display:block; }
 .blog-season-table caption { display:block; width:100%; text-align:left; }
 .blog-season-table thead { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
 .blog-season-table tbody { display:block; }
 .blog-season-table tbody tr { display:block; padding:18px 20px; border-bottom:1px solid #d9dfd4; }
 .blog-season-table tbody tr:last-child { border-bottom:0; }
 .blog-season-table tbody th { display:block; width:auto; border:0; padding:0 0 9px; font:400 25px/1.2 'Bebas Neue',sans-serif; text-align:left; }
 .blog-season-table tbody td { display:block; border:0; padding:6px 0; width:auto; }
 .blog-season-table tbody td::before { content:attr(data-label); display:block; font:400 17px/1.5 'Bebas Neue',sans-serif; color:#7c611f; letter-spacing:.02em; }
 .blog-table-wrap { overflow:visible; }
}
