.blog-single .pb-columns {
  max-width: 900px;
}

.blog-intro { font-size: 1.05em; color: var(--color-muted); margin-bottom: 30px; }

.blog-filter { gap: 8px; margin-bottom: 30px; }
.blog-filter a {
    padding: 6px 14px;
    border: 1px solid #ddd;
    border-radius: 20px;
    color: var(--color-text);
    font-size: 0.88em;
}
.blog-filter a.active { background: var(--color-accent); border-color: var(--color-accent); color: #fff; }
.blog-filter-count { opacity: 0.7; font-size: 0.9em; }
.blog-category-badge { color: var(--color-accent); }
.blog-category-badge:hover { text-decoration: underline; }

.blog-list { gap: var(--columns-gap); }
.blog-list-item {
    background: var(--color-bg-alt);
	border-radius: var(--border-radius);
}
.blog-list-item h2 { font-family: var(--font-main);
  font-size: clamp(1.125rem, 1.04rem + 0.38vw, 1.375rem);
  line-height: 1.3;
  margin: 10px 0 4px; }
.blog-list-item a h2 { color: var(--color-text-alt); text-decoration: none; }
.blog-meta { color: var(--color-muted); font-size: 0.85em; margin: 0 0 10px; }
.blog-read-more { color: var(--color-accent); font-size: 0.9em; display: inline-block; }

.blog-list-cover img { border-radius: 8px; }
.blog-cover { border-radius: 8px; margin-bottom: 20px; }

.blog-pagination a {
    padding: 6px 12px;
    border: 1px solid #ddd;
    border-radius: 4px;
    text-decoration: none;
    color: var(--color-text);
    font-size: 0.9em;
}
.blog-pagination a.active { background: var(--color-accent); color: #fff; border-color: var(--color-accent); }
.blog-pagination a:hover:not(.active) { border-color: var(--color-accent); }
