/*
 * Blog landing page (page-blog.php).
 *
 * Loaded AFTER services.css AND news.css so the layout primitives
 * (.service-*) and listing block (.news-card, .news-grid,
 * .news-pagination) are available. This file owns:
 *   - the overlay-header rules keyed to .page-template-page-blog,
 *   - the blog-only additions on top of the shared .news-card block
 *     (category badge row above the title).
 *
 * Cards and pagination intentionally reuse .news-card / .news-pagination
 * from news.css so the news and blog listings look identical. To diverge
 * visually, fork .news-card → .blog-card here (and update page-blog.php
 * markup to match).
 */

/* --------------------------------------------------------------
 * Overlay header — matches every other inner template.
 * -------------------------------------------------------------- */
.page-template-page-blog .site-header {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	z-index: 10;
}

.page-template-page-blog .site-main {
	margin-top: 0;
	overflow-x: clip;
}

/* --------------------------------------------------------------
 * Category badge row — blog-only. Sits at the very top of the
 * .news-card__body, above the date meta line. Wraps to multiple
 * lines when a post has many categories.
 * -------------------------------------------------------------- */
.news-card--blog .news-card__categories {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin: 0 0 10px;
	padding: 0;
}

.news-card--blog .news-card__category {
	display: inline-flex;
	align-items: center;
	padding: 4px 10px;
	background: rgba(187, 37, 72, 0.08);
	border: 1px solid rgba(187, 37, 72, 0.25);
	border-radius: 999px;
	font-family: var(--font-heading);
	font-weight: 700;
	font-size: 11px;
	line-height: 14px;
	letter-spacing: 0.5px;
	text-transform: uppercase;
	color: var(--color-brand-red);
	text-decoration: none;
	transition: background 160ms ease, color 160ms ease, border-color 160ms ease;
}

.news-card--blog .news-card__category:hover,
.news-card--blog .news-card__category:focus {
	background: var(--color-brand-red);
	border-color: var(--color-brand-red);
	color: #fff;
	text-decoration: none;
}

/* --------------------------------------------------------------
 * Responsive
 * -------------------------------------------------------------- */
@media screen and (max-width: 599px) {
	.news-card--blog .news-card__categories {
		gap: 4px;
		margin-bottom: 8px;
	}

	.news-card--blog .news-card__category {
		padding: 3px 8px;
		font-size: 10px;
	}
}
