/* Blog listing (page-blog.php) and single post (single.php) — editorial
   list pattern per CLAUDE.md section 9, not a card grid. */

.sss-blog {
	padding-block: var(--sss-space-6);
}

.sss-blog__list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.sss-blog__item {
	display: flex;
	gap: var(--sss-space-4);
	padding-block: var(--sss-space-5);
	border-bottom: var(--sss-border-width) solid var(--sss-line);
}

.sss-blog__item:first-child {
	padding-top: 0;
}

.sss-blog__thumb {
	flex: 0 0 200px;
	display: block;
	border-radius: var(--sss-radius-md);
	overflow: hidden;
}

.sss-blog__thumb img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* Shown instead of the featured image when a post doesn't have one, so a
   listing with mixed posts (some with images, some without) never looks
   broken — the brand mark on navy, not a generic stock/placeholder icon. */
.sss-blog__thumb--placeholder {
	background: var(--sss-navy) url("../images/brand/spartan-white-logo-lic.webp") no-repeat center / 55% auto;
	min-height: 120px;
}

.sss-blog__item-body {
	flex: 1 1 auto;
	min-width: 0;
}

.sss-blog__meta {
	margin: 0 0 var(--sss-space-2);
}

.sss-blog__title {
	margin: 0 0 var(--sss-space-2);
}

.sss-blog__title a {
	color: var(--sss-ink);
	text-decoration: none;
}

.sss-blog__title a:hover,
.sss-blog__title a:focus-visible {
	color: var(--sss-blue);
}

.sss-blog__excerpt {
	margin: 0 0 var(--sss-space-2);
}

.sss-blog__more {
	font-weight: 600;
	color: var(--sss-blue);
	text-decoration: none;
}

.sss-blog__more:hover,
.sss-blog__more:focus-visible {
	text-decoration: underline;
}

.sss-blog__empty {
	padding-block: var(--sss-space-5);
}

.sss-blog .pagination,
.sss-blog .nav-links {
	display: flex;
	gap: var(--sss-space-3);
	margin-top: var(--sss-space-5);
	font-family: var(--sss-font-mono);
	font-size: 0.8125rem;
}

.sss-blog .pagination a,
.sss-blog .nav-links a {
	color: var(--sss-blue);
	text-decoration: none;
}

/* Single post */

.sss-page-hero--post .sss-blog__meta {
	color: rgba(255, 255, 255, 0.72);
}

.sss-blog-post {
	padding-block: var(--sss-space-6);
}

.sss-blog-post__thumb {
	margin-bottom: var(--sss-space-5);
	border-radius: var(--sss-radius-md);
	overflow: hidden;
}

.sss-blog-post__thumb img {
	display: block;
	width: 100%;
	height: auto;
}

.sss-blog-post__content {
	font-size: 1.0625rem;
	line-height: 1.7;
}

.sss-blog-post__content > * {
	max-width: 100%;
}

.sss-blog-post__back {
	display: inline-block;
	margin-top: var(--sss-space-5);
	font-weight: 600;
	color: var(--sss-blue);
	text-decoration: none;
}

.sss-blog-post__back:hover,
.sss-blog-post__back:focus-visible {
	text-decoration: underline;
}

@media (max-width: 600px) {
	.sss-blog__item {
		flex-direction: column;
	}

	.sss-blog__thumb {
		flex-basis: auto;
	}
}
