.sr-card {
	display: flex;
	flex-direction: column;
	overflow: hidden;
	border: 1px solid var(--border-color);
	border-radius: var(--border-radius);
	background-color: var(--background-color);
}

.sr-card__media {
	display: block;
	aspect-ratio: 3 / 2;
	background-color: var(--surface-color);
}

.sr-card__image {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* Shown when a product has no featured image, so grid rows stay aligned. */
.sr-placeholder {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 8rem;
	background-color: var(--surface-color);
}

.sr-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: var(--space-5);
}

.sr-card__title {
	margin: 0 0 var(--space-2);
	font-size: var(--font-size-xl);
	font-weight: var(--font-weight-bold);
	line-height: var(--line-height-tight);
}

.sr-card__title a {
	color: var(--text-color);
	text-decoration: none;
}

.sr-card__title a:hover {
	text-decoration: underline;
}

.sr-card__excerpt {
	margin: 0 0 var(--space-5);
	color: var(--text-muted-color);
}

/* Pushes the button to the card's bottom edge so buttons align across a row. */
.sr-card__action {
	margin-top: auto;
}