.blog-categories { display: flex; flex-wrap: wrap; gap: 18px 36px; margin: 32px 0; font: var(--type-ui)/var(--leading-ui) var(--font-ui); }
.blog-categories a { text-decoration: none; }
.blog-categories a[aria-current=page] { color: var(--color-blue); text-decoration-line: underline; }
.wp-site-blocks > .blog-categories { max-width: 1400px; padding-inline: 0; margin: 44px max(var(--page-gutter), calc((100% - 1400px) / 2)); }
.post-grid { display: grid; grid-template-columns: 1fr; gap: 32px; }
.post-card { display: grid; grid-template-columns: 48.5% minmax(0, 1fr); min-height: 360px; padding: 0; }
.post-image { display: block; position: relative; min-height: 100%; overflow: hidden; border-radius: var(--radius-card); }
.post-image img { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: cover; }
.post-card-copy { display: flex; flex-direction: column; padding: 25px 34px; min-width: 0; }
.post-card :is(h2, h3) { margin: 18px 0; font-size: var(--type-card); line-height: 1.3; }
.post-card :is(h2, h3) a { text-decoration: none; }
.post-card p { margin: 0; font: var(--type-body)/var(--leading-body) var(--font-reading); }
.post-meta { display: flex; align-items: center; gap: 10px; font: var(--type-meta)/var(--leading-ui) var(--font-ui); }
.post-meta .author-photo { width: 36px; height: 36px; flex: 0 0 36px; object-fit: cover; border-radius: 50%; }
.post-meta-line { display: block; }
.post-card .post-excerpt { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; }
.post-card-footer { margin-top: auto; padding-top: 22px; font: var(--type-meta)/var(--leading-ui) var(--font-ui); }
.post-card-footer a { display: block; padding-top: 12px; border-top: 1px solid var(--color-sand); text-decoration: none; }
.post-card--text { display: block; min-height: 0; }
.post-card--text .post-card-copy { min-height: 300px; }
.single-article { --article-inset: clamp(22px, 6.8vw, 98px); font: var(--type-reading)/var(--leading-body) var(--font-reading); max-width: calc(var(--measure-reading) + 2 * var(--article-inset)); padding: 60px var(--article-inset) 64px; margin: 0 auto 64px; border: 1px solid #e5e3d466; overflow-wrap: anywhere; }
.single-article > .post-meta { margin: 0 0 24px; font-size: 15px; }
.single-article > .post-meta .post-meta-line { display: inline; }
.single-article > .post-meta .post-meta-line::before { content: ' · '; }
.single-article .wp-block-post-title { margin: 0 0 32px; font-size: var(--type-title); line-height: var(--leading-heading); text-wrap: balance; }
.single-article .wp-block-post-content { font: var(--type-reading)/var(--leading-body) var(--font-reading); color: #52584e; }
.single-article .wp-block-post-content :is(p, ul, ol, blockquote) { margin-block: 0 var(--paragraph-gap); }
.single-article .wp-block-post-content :is(ul, ol) { padding-inline-start: 1.4em; }
.single-article .wp-block-post-content li + li { margin-top: var(--list-item-gap); }
.single-article .wp-block-post-content li > :is(ul, ol) { margin-block: var(--list-item-gap) 0; }
.single-article .wp-block-post-content li > p { margin-bottom: var(--list-item-gap); }
.single-article .wp-block-post-content h2 { font-size: var(--type-section); line-height: 1.25; color: #2a5a4e; margin: 1.6em 0 .65em; }
.single-article .wp-block-post-content h3 { font-size: var(--type-card); line-height: 1.3; color: var(--text-accent); margin: 1.6em 0 .65em; }
.single-article .wp-block-post-content h4 { font-size: var(--type-small-title); line-height: 1.3; margin: 1.6em 0 .65em; }
.single-article .wp-block-post-content > :first-child { margin-top: 0; }
.single-article .wp-block-post-content > :last-child { margin-bottom: 0; }
.single-article .wp-block-post-content figure { margin: 28px 0; }
.single-article .wp-block-post-content img { display: block; width: 100%; height: auto; }
.single-article .wp-block-post-featured-image { margin-bottom: 28px; }
.single-article .wp-block-post-terms { margin-top: 32px; font: var(--type-meta)/var(--leading-ui) var(--font-ui); }
.share { margin-top: 35px; padding-top: 24px; border-top: 1px solid var(--color-sand); }
.share nav { display: flex; flex-wrap: wrap; gap: 14px 22px; }
.share a, .share button { font: var(--type-meta)/var(--leading-ui) var(--font-ui); }
.share button { cursor: pointer; border: 0; padding: 0; background: transparent; color: inherit; text-decoration-line: underline; text-underline-offset: var(--link-underline-offset); }
.share [role=status] { margin: 8px 0; font: var(--type-meta)/var(--leading-ui) var(--font-ui); }
.share-url { width: 100%; padding: 8px; }
.related { margin-top: 46px; }
.related > h2 { font-size: var(--type-card); margin-bottom: 24px; }
.related-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.related .post-card { display: flex; flex-direction: column; min-height: 0; }
.related .post-image { height: 145px; min-height: 145px; }
.related .post-card-copy { padding: 18px; min-height: 0; flex: 1; }
.related .post-card :is(h2, h3) { font-size: var(--type-small-title); line-height: 1.35; margin: 0 0 18px; }
.related .post-meta, .related .post-excerpt { display: none; }
.related .post-card-footer { padding-top: 0; }
@media (max-width: 920px) {
  .blog-page { padding-top: 25px; }
  .post-card-copy { padding: 24px; }
  .single-article { --article-inset: var(--page-gutter); margin-inline: var(--page-gutter); padding-block: 40px; }
}
@media (max-width: 640px) {
  .post-card { grid-template-columns: 1fr; min-height: 0; }
  .post-image { min-height: 250px; }
  .post-card--text .post-card-copy { min-height: 0; }
  .post-card-footer { padding-top: 24px; }
  .single-article { margin-inline: 0; padding: 28px var(--page-gutter) 40px; border-inline: 0; }
  .related-grid { grid-template-columns: 1fr; }
  .related .post-image { min-height: 200px; height: 200px; }
}
@media print {
  .site-header, .site-footer, .blog-categories, .share, .related, .wp-block-post-navigation-link { display: none; }
  .single-article { max-width: none; border: 0; padding: 0; margin: 0; }
}

/* Editorial listing; single-article and related-post styles above stay independent. */
.blog-page {
 width:calc(100% - var(--page-gutter));max-width:var(--content-wide);padding-block:var(--section-space);margin-inline:auto;overflow-wrap:anywhere;
 padding-inline:max(calc(var(--section-gutter) - var(--page-gutter)/2),min(calc((var(--content-wide) - var(--measure-feature))/2),calc((100% - var(--measure-feature) - var(--page-gutter))/2)));
}
.blog-page > * {max-width:var(--measure-feature);margin-inline:auto}
.blog-page > h1 {font-size:var(--type-title);line-height:1.2;text-align:start;margin:0 0 12px}
.blog-page .blog-introduction {font:18px/1.6 var(--font-body);margin:0;color:#52615e}
.blog-topic-navigation {padding-bottom:22px;border-bottom:1px solid var(--color-sand);margin:24px 0 32px}
.blog-topics {display:flex;flex-wrap:wrap;gap:10px 32px}
.blog-topics a,.blog-topics-menu a {display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:8px 0;font:17px/1.5 var(--font-ui);color:var(--color-ink);text-decoration:none}
.blog-topics a:is([aria-current],:hover,:focus-visible) .blog-topic-label {color:var(--color-blue);text-decoration-line: underline;text-underline-offset: var(--link-underline-offset);text-decoration-thickness: var(--link-underline-active-width)}
.blog-topic-count {font:14px/1.5 var(--font-body);color:#52615e}
.blog-topics-mobile {display:none}
.blog-page .post-card {border:0;border-radius:0;background:transparent;box-shadow:none;min-height:0}
.blog-page .post-card-copy {min-height:0;padding:0}
.blog-page .post-card :is(h2,h3) {margin:0 0 12px}
.blog-page .post-card :is(h2,h3) a {transition:color 180ms,text-decoration-color 180ms}
.blog-page .post-card :is(h2,h3) a:is(:hover,:focus-visible) {color:var(--link-hover);text-decoration-line: underline;text-underline-offset: var(--link-underline-offset);text-decoration-thickness: var(--link-underline-active-width)}
.blog-page .blog-reading-meta {font:15px/1.5 var(--font-ui);color:#52615e;margin:0 0 16px}
.blog-page .post-card .post-excerpt {font:18px/1.65 var(--font-reading);-webkit-line-clamp:2;margin:0}
.blog-page .post-card-footer {padding-top:16px;margin-top:auto}
.blog-page .post-card-footer>a {border:0;padding:6px 0;min-height:44px;font:16px/1.5 var(--font-ui);width:fit-content;max-width:100%}
.blog-page .post-card-footer>a:is(:hover, :focus-visible) {text-decoration-line: underline;text-underline-offset: var(--link-underline-offset);text-decoration-thickness: var(--link-underline-active-width); }
.blog-page .blog-featured {display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:var(--layout-gap);align-items:center;margin-block:0 var(--section-space)}
.blog-featured .post-card-copy {padding-block:20px}
.blog-page .blog-featured h2 {font-size:clamp(26px,2.3vw,34px);line-height:1.25;margin:0 0 var(--copy-heading-gap);max-width:27ch}
.blog-page .blog-featured-label {font:14px/1.5 var(--font-ui);color:var(--color-blue);margin:0 0 20px}
.blog-featured .post-image {aspect-ratio:4/3;min-height:0;width:100%;align-self:stretch;max-height:440px}
.blog-featured .post-image img {object-position:center 58%}
.blog-page .post-image img {transition:filter var(--interaction-duration) var(--interaction-ease)}
.blog-page .post-image:is(:hover,:focus-visible) img {filter:brightness(.86)}
.blog-page .blog-featured .post-excerpt {-webkit-line-clamp:3;max-width:54ch}
.blog-collection-heading {display:flex;gap:16px;align-items:baseline;justify-content:space-between;margin:0 0 var(--heading-gap)}
.blog-collection-heading h2 {font-size:var(--type-section);margin:0}
.blog-collection-heading p {font:15px/1.5 var(--font-ui);color:#52615e;margin:0}
.blog-page .blog-collection-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 48px}
.blog-page .blog-teaser {display:grid;grid-template-columns:minmax(0,1fr) 128px;gap:24px;border-top:1px solid var(--color-sand);padding-top:24px;align-items:stretch}
.blog-page .blog-teaser.post-card--text {grid-template-columns:minmax(0,1fr)}
.blog-page .blog-teaser h3 {font-size:var(--type-card);line-height:1.3}
.blog-page .blog-teaser-topic {font:14px/1.5 var(--font-ui);color:#52615e;margin:0 0 10px}
.blog-teaser .post-image {align-self:start;width:128px;aspect-ratio:1/1;min-height:0;margin-top:31px}
.blog-teaser .post-image img {object-position:center}
.blog-page .pagination {margin-block:42px 0;justify-content:center;gap:10px}
.blog-page .pagination .next,.blog-page .pagination .prev {width:auto;padding-inline:12px;white-space:normal}
.blog-browse-controls {display:flex;flex-wrap:wrap;align-items:center;gap:16px 32px;margin:24px 0 32px;padding-bottom:22px;border-bottom:1px solid var(--color-sand)}
.blog-browse-controls .blog-topic-navigation {flex:1 1 520px;min-width:0;margin:0;padding:0;border:0}
.blog-browse-controls .pagination--top {flex:0 1 auto;justify-content:flex-end;margin:0 0 0 auto}
.blog-empty {padding:64px 0 72px;max-width:var(--measure-feature)}
.blog-empty h2 {font-size:var(--type-section);margin:0 0 20px}
.blog-empty p {font:19px/1.7 var(--font-reading);max-width:52ch;margin:0 0 28px}
.blog-empty .blog-empty-context {font:16px/1.5 var(--font-ui);margin-bottom:16px;color:#52615e}
.blog-empty-actions {display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px}
.blog-empty-actions a {max-width:100%;white-space:normal}
.blog-empty-about {font:17px/1.5 var(--font-ui);padding:10px 0;text-underline-offset: var(--link-underline-offset)}
@media(max-width:1000px){
 .blog-page .blog-collection-grid {grid-template-columns:minmax(0,1fr);gap:32px}
 .blog-page .blog-teaser {grid-template-columns:minmax(0,1fr) 96px;gap:16px}
 .blog-teaser .post-image {width:96px}
}
@media(max-width:740px){
 .blog-page > h1 {margin-bottom:8px}
 .blog-page .blog-introduction {font-size:17px}
 .blog-topic-navigation {margin:18px 0 24px;padding-bottom:16px}
 .blog-browse-controls {margin:18px 0 24px;padding-bottom:16px;flex-wrap:nowrap;align-items:center;gap:12px}
 .blog-browse-controls .blog-topic-navigation {flex:1 1 0}
 .blog-browse-controls .pagination--top {flex:0 1 auto;max-width:55%;gap:4px}
 .blog-topics {display:none}
 .blog-topics-mobile.choice-picker {display:block;position:relative;background:transparent}
 .blog-topics-mobile.choice-picker > summary {gap:8px;min-height:44px;padding:8px 12px;background:#e9e7e1;color:var(--color-accent)}
 .blog-topics-mobile.choice-picker[open] > summary {border-radius:var(--radius-control)}
 .blog-topics-mobile.choice-picker > summary:is(:hover,:focus-visible) {background:#d8d7ce}
 .blog-topics-mobile.choice-picker .choice-picker-menu {position:absolute;z-index:3;inset:calc(100% + 5px) auto auto 0;width:max(100%,min(280px,calc(100vw - 2 * var(--section-gutter))));gap:0;padding:0;border:1px solid var(--control-border);border-radius:var(--radius-control);background:var(--color-paper);box-shadow:var(--shadow-popover);overflow:hidden}
 .blog-topics-mobile.choice-picker .choice-picker-menu > a {padding:10px 14px;border-radius:0;text-decoration:none}
 .blog-topics-mobile.choice-picker .choice-picker-menu > a:is(:hover,:focus-visible) {background:var(--color-cream)}
 .blog-page .blog-featured{grid-template-columns:minmax(0,1fr);gap:var(--copy-heading-gap);padding:var(--panel-space);border-radius:var(--radius-card);background:var(--surface-support)}
 .blog-featured .post-image{grid-row:1;aspect-ratio:auto;height:clamp(180px,52vw,260px);max-height:none;min-height:0;width:100%}
 .blog-featured .post-card-copy {padding:0}
 .blog-page .blog-featured-label {margin-bottom:12px}
 .blog-page .blog-featured h2 {font-size:28px;line-height:1.28;max-width:none}
 .blog-page .blog-reading-meta {margin-bottom:12px}
 .blog-page .blog-featured .post-excerpt {-webkit-line-clamp:2}
 .blog-page .post-card-footer {padding-top:10px}
 .blog-collection-heading {gap:var(--control-gap);flex-wrap:wrap}
 .blog-collection-heading h2 {font-size:var(--type-card)}
 .blog-page .blog-collection-grid {grid-template-columns:minmax(0,1fr);gap:28px}
 .blog-page .blog-teaser{grid-template-columns:minmax(0,1fr) 84px;gap:18px;padding-top:22px}
 .blog-page .blog-teaser.post-card--text{grid-template-columns:minmax(0,1fr)}
 .blog-teaser .post-image{width:84px;margin-top:29px;aspect-ratio:1}
 .blog-page .blog-teaser h3 {font-size:22px}
 .blog-empty {padding-block:40px 32px}
 .blog-empty h2 {font-size:var(--type-card)}
 .blog-empty p {font-size:18px}
 .blog-empty-actions {align-items:flex-start;flex-direction:column;gap:14px}
}
@media(max-width:360px){
 .blog-topics-mobile.choice-picker > summary {gap:4px;padding-inline:8px}
}
@media(prefers-reduced-motion:reduce){.blog-topic-prompt::after,.blog-page .post-card :is(h2,h3) a,.blog-page .post-image img{transition:none}}

.blog-empty .action-button {--action-icon:var(--action-icon-book)}
@media(min-width:741px){html:has(.blog-page){scrollbar-gutter:stable}}
.blog-page .blog-featured.post-card--text {grid-template-columns:minmax(0,1fr)}
.blog-topics-menu a,.blog-topics-mobile>summary {overflow-wrap:anywhere}
