.breadcrumb { max-width:760px; margin:auto; padding:28px 24px 0; font-size:11px; color:#626c65; }
.article { max-width:760px; margin:auto; padding:28px 24px 8px; }
.meta { display:flex; flex-wrap:wrap; gap:8px 16px; align-items:center; margin:0 0 18px; color:#626c65; font-size:12px; line-height:1.6; }
.meta a { display:inline-block; padding:6px 10px; background:#e7efeb; color:#2f6566; }
.meta a:hover { text-decoration:none; background:#dce8e0; }
.article h1 { margin:0 0 28px; font-size:32px; font-weight:300; line-height:1.6; }
.hero { margin:0 0 36px; }
.hero img { display:block; width:100%; height:auto; aspect-ratio:3/2; object-fit:cover; }
.body p { margin:0 0 24px; font-size:16px; line-height:2.15; }
.body h2, .phase h2 { margin:28px 0 12px; color:var(--dark); font:400 13px "Josefin Sans",sans-serif; letter-spacing:.06em; }
.body img { display:block; width:100%; max-width:100%; height:auto !important; margin:0 0 28px; }
.body .wp-caption { box-sizing:border-box; width:100% !important; max-width:100%; margin:0 0 28px; }
.body .wp-caption img { margin-bottom:12px; }
.body .wp-caption-text { margin:0; font-size:14px; line-height:1.9; }
.phase { margin:8px 0 32px; padding-top:8px; }
.more { max-width:760px; margin:12px auto 0; padding:8px 24px 0; }
.more h2 { margin:0 0 16px; font-size:16px; font-weight:500; line-height:1.7; }
.cats { display:flex; flex-wrap:wrap; gap:10px; margin:0 0 40px; }
.cats a { display:inline-flex; align-items:center; min-height:44px; padding:8px 14px; border:1px solid #d5e2dc; background:#fff; color:var(--dark); font-size:13px; }
.cats a[aria-current="true"] { background:var(--pale); border-color:#b7cdc4; }
.cats a:hover { text-decoration:none; background:#f7faf8; }
.related { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin:0 0 12px; }
.related a { display:block; min-width:0; }
.related a:hover { text-decoration:none; }
.related img { display:block; width:100%; aspect-ratio:3/2; object-fit:cover; }
.related p { margin:10px 0 0; font-size:13px; line-height:1.7; }
.related a:hover p { text-decoration:underline; text-underline-offset:4px; }
@media(max-width:760px) {
  .article h1 { font-size:26px; }
  .related { grid-template-columns:minmax(0,1fr); }
}
