/* ── Blog archive (/blog) ────────────────────────────── */
.site-main--blog {
	background: linear-gradient(180deg, var(--gtd-brand-neutral-40) 0%, var(--gtd-brand-bg) 220px);
	padding: clamp(36px, 5vw, 64px) 0 clamp(48px, 6vw, 80px);
}

.blog-header {
	max-width: 720px;
	margin: 0 auto 28px;
	text-align: center;
}

.blog-header__title {
	font-family: var(--gtd-font-head);
	font-size: clamp(32px, 4.5vw, 44px);
	font-weight: 600;
	line-height: 1.12;
	margin: 8px 0 12px;
}

.blog-header__intro {
	margin: 0;
	font-size: 17px;
	line-height: 1.6;
	color: var(--gtd-muted);
}

.blog-filters {
	margin: 0 auto 32px;
	max-width: 960px;
}

.blog-filters__list {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 10px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.blog-filters__chip {
	display: inline-flex;
	align-items: center;
	padding: 10px 18px;
	border-radius: 999px;
	border: 1px solid var(--gtd-border);
	background: var(--gtd-white);
	color: var(--gtd-text);
	font-family: var(--gtd-font-accent);
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.04em;
	text-decoration: none;
	transition: background .2s, border-color .2s, color .2s, transform .2s;
}

.blog-filters__chip:hover {
	border-color: var(--gtd-brand-accent);
	color: var(--gtd-brand-accent);
	transform: translateY(-1px);
}

.blog-filters__chip.is-active {
	background: var(--gtd-brand-accent);
	border-color: var(--gtd-brand-accent);
	color: var(--gtd-white);
}

.blog-empty {
	text-align: center;
	padding: 48px 20px;
	border-radius: var(--gtd-radius-lg);
	background: var(--gtd-white);
	border: 1px dashed var(--gtd-border);
}

.blog-empty p {
	margin: 0 0 18px;
	color: var(--gtd-muted);
}

.post-card__media {
	display: block;
	aspect-ratio: 16/10;
	overflow: hidden;
	background: var(--gtd-grad-card-media);
	color: inherit;
	text-decoration: none;
}

.post-card__title a {
	color: inherit;
	text-decoration: none;
	transition: color .2s;
}

.post-card:hover .post-card__title a {
	color: var(--gtd-brand-accent);
}

.post-card__badge {
	padding: 2px 10px;
	border-radius: 6px;
	background: var(--gtd-brand-neutral-80);
	color: var(--gtd-brand-accent);
	font-size: 11px;
	font-weight: 700;
	text-decoration: none;
	transition: background .2s, color .2s;
}

.post-card__badge:hover {
	background: var(--gtd-brand-accent);
	color: var(--gtd-white);
}

.post-card__more {
	text-decoration: none;
}
