/* Latest news */

.blk-news__head {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	justify-content: space-between;
	gap: 16px 48px;
	margin-bottom: clamp(32px, 4vw, 48px);
}

.blk-news__head .section-heading {
	margin-bottom: 0;
}

.blk-news__grid {
	padding-bottom: 0;
}

/* Hover: a rounded white panel fades in behind the card with room around the
   image and text, and the card lifts slightly. The panel sits outside the
   card's box, so the grid alignment never changes. */
.blk-news .content-card {
	isolation: isolate;
	transition: transform .3s var(--ease);
}

.blk-news .content-card::before {
	content: '';
	position: absolute;
	inset: -16px;
	z-index: -1;
	border-radius: calc(var(--radius-lg) + 8px);
	background: var(--surface);
	box-shadow: var(--shadow-lg);
	opacity: 0;
	transition: opacity .3s var(--ease);
	pointer-events: none;
}

.blk-news .content-card:hover,
.blk-news .content-card:focus-within {
	transform: translateY(-4px);
}

.blk-news .content-card:hover::before,
.blk-news .content-card:focus-within::before {
	opacity: 1;
}

.blk-news .content-card--featured::before {
	inset: -24px;
}

/* Topic filter on the blog page: the same pill buttons as the case study filter. */
.topic-filter {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-bottom: clamp(32px, 4vw, 48px);
}

.topic-filter__link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-height: 44px;
	padding: 0 20px;
	border: 1px solid var(--line);
	border-radius: 999px;
	background: var(--surface);
	color: var(--heading);
	font: 500 .9375rem/1 var(--font-body);
	text-decoration: none;
	transition: background-color .2s var(--ease), border-color .2s var(--ease), color .2s var(--ease);
}

.topic-filter__link[style]::before {
	content: '';
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: var(--swatch);
}

.topic-filter__link:hover {
	border-color: var(--swatch, var(--amber));
}

.topic-filter__link[aria-current="page"] {
	border-color: var(--ink);
	background: var(--ink);
	color: #fff;
}

.content-card__topic::before {
	content: '\00b7';
	margin: 0 8px;
}

.blk-news__pages {
	margin-top: clamp(40px, 5vw, 64px);
}

.blk-news__empty {
	font-size: 1.0625rem;
}

/* The blog page lists in an explicit three-column grid; the newest post leads,
   full width, with the image beside the copy. */
.blk-news--all .blk-news__grid {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(32px, 4vw, 48px) clamp(20px, 2.5vw, 32px);
}

.blk-news .content-card--featured {
	grid-column: 1 / -1;
	display: grid;
	grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr);
	gap: clamp(28px, 4vw, 64px);
	align-items: center;
}

.blk-news .content-card--featured .content-card__media {
	position: relative;
	aspect-ratio: 16 / 10;
}

.blk-news .content-card--featured .content-card__media img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	aspect-ratio: auto;
}

.blk-news .content-card--featured .content-card__body {
	gap: 16px;
	padding: 0;
}

.blk-news .content-card--featured .content-card__title {
	font-size: clamp(1.75rem, 1.25rem + 1.5vw, 2.75rem);
}

.blk-news .content-card--featured .content-card__excerpt {
	font-size: 1.0625rem;
}

@media (max-width: 1023px) {
	.blk-news--all .blk-news__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 767px) {
	.blk-news--all .blk-news__grid,
	.blk-news .content-card--featured { grid-template-columns: minmax(0, 1fr); }
}

.content-card__more {
	margin-top: 8px;
}

