/* Blog pages only. Colours, fonts and controls come from design/. */
.blog-header { display:flex; align-items:center; justify-content:space-between; gap:var(--sp-md); max-width:var(--layout-reading-max-width); margin:0 auto; padding:var(--sp-sm) var(--sp-gutter); }
.blog-header a { display:inline-flex; align-items:center; min-height:var(--layout-control-height); color:var(--sys-text-primary); }
.blog-brand { font-weight:600; text-decoration:none; }
.blog-excerpt { font-size:var(--type-headline-size); color:var(--sys-text-secondary); }
.blog-article h2 { margin-top:var(--sp-xl); font-size:var(--type-headline-size); }
.blog-article h3 { margin-top:var(--sp-lg); }
.blog-article p, .blog-article li { line-height:1.6; }
.blog-article a { color:var(--sys-action-primary); }
.blog-promo { margin-top:var(--sp-xxl); padding:var(--sp-md); border:1px solid var(--sys-border-subtle); border-radius:var(--r-card); background:var(--sys-surface); }
.blog-promo p { margin:var(--sp-xxs) 0; }
.blog-list { list-style:none; margin:var(--sp-lg) 0 0; padding:0; display:grid; gap:var(--sp-md); }
.blog-card h2 { margin:0 0 var(--sp-xxs); font-size:var(--type-headline-size); }
.blog-card a { color:var(--sys-text-primary); }
.blog-card p { margin:var(--sp-xxs) 0; }
