.blog-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s-3);margin-top:var(--s-4)}
/* Listing widens to fit up to 4 columns; article pages keep the narrow reading width. */
body[data-page="blog"] .container-narrow:has(> .blog-grid){max-width:var(--container-max)}
.blog-grid .blog-card{padding:20px}.blog-grid .blog-card h2{font-size:1.0625rem}.blog-grid .blog-card p{font-size:.9375rem;line-height:1.8}
@media(max-width:1100px){.blog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:820px){.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.blog-card{padding:var(--s-3);border:1px solid var(--color-border);border-radius:var(--radius-md);min-width:0}
.blog-card h2{font-size:1.25rem;line-height:1.6}.blog-card p{line-height:1.9}.blog-card time{font-size:.875rem}
.blog-card img,.news-article__body img{max-width:100%;height:auto}.news-article__body{overflow-wrap:anywhere}
.news-article__body figure{margin:0 0 var(--s-3)}.news-article__body table{display:block;overflow-x:auto;width:100%}
.news-article__body th,.news-article__body td{padding:.75rem;border:1px solid var(--color-border)}
@media(max-width:600px){.blog-grid{grid-template-columns:1fr}.news-article__title{font-size:1.6rem}}
@media(max-width:960px){body[data-page="blog"] .site-nav:not([data-open="true"]){display:none}}
/* Blog-specific reading layout; other existing pages keep their spacing. */
body[data-page="blog"] .page-hero{padding:28px 0}
body[data-page="blog"] .page-hero__big{font-size:80px}
body[data-page="blog"] .section{padding:40px 0}
body[data-page="blog"] .container-narrow{max-width:824px;padding-left:32px;padding-right:32px}
.news-article__body figure img{display:block;margin:0 0 8px;width:100%}
.blog-title-hero{margin:0 0 var(--s-3)}.blog-title-hero img{display:block;width:100%;max-width:100%;height:auto}
.news-article__body figcaption{font-size:.875rem;line-height:1.7;color:var(--color-text-muted)}
@media(max-width:800px){body[data-page="blog"] .container-narrow{padding-left:20px;padding-right:20px}.news-article__body{font-size:16px}}
