/*
 * Shared article card — used by the Local Articles & Events carousel and the
 * Latest Articles & Events block. Registered as the "asb-article-card" style
 * handle and listed in each block.json alongside the block's own stylesheet.
 */

.asb-article-card {
	--asb-primary: var(--wp--preset--color--primary, #0f3449);
	--asb-chip-bg: var(--wp--preset--color--accent-light, #b1eaff);
	--asb-serif: var(--wp--preset--font-family--secondary, "PT Serif", serif);
	--asb-sans: var(--wp--preset--font-family--primary, Helvetica, Arial, sans-serif);
	--asb-card-radius: 16px;

	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.75rem;
	font-family: var(--asb-sans);
	color: var(--asb-primary);
}

.asb-article-card__media {
	position: relative;
	display: block;
	width: 100%;
	border-radius: var(--asb-card-radius);
	overflow: hidden;
}

.asb-article-card img.asb-article-card__image {
	width: 100%;
	height: 280px;
	max-width: none;
	object-fit: cover;
	object-position: center;
	display: block;
	border-radius: var(--asb-card-radius);
	margin: 0;
}

.asb-article-card__chip {
	position: absolute;
	top: 16px;
	left: 16px;
	display: inline-flex;
	align-items: center;
	padding: 0.45em 1.25em;
	border-radius: 999px;
	background: var(--asb-chip-bg);
	color: var(--asb-primary);
	font-family: var(--asb-sans);
	font-size: 11px;
	font-style: normal;
	font-weight: 400;
	line-height: 16.5px; /* 150% */
	letter-spacing: 1px;
	text-transform: uppercase;
}

.asb-article-card__meta {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	margin: 0.5rem 0 0;
	font-family: var(--asb-sans);
	font-size: 13px;
	font-style: normal;
	font-weight: 300;
	line-height: 19.5px; /* 150% */
	color: rgba(15, 52, 73, 0.5);
}

.asb-article-card__title {
	margin: 0;
	font-family: var(--asb-serif);
	font-style: normal;
	font-weight: 400;
	font-size: 24px;
	line-height: 30px; /* 125% */
	letter-spacing: 0.24px;
	color: var(--asb-primary);
}

.asb-article-card__title a {
	color: inherit;
	text-decoration: none;
}

.asb-article-card__title a:hover,
.asb-article-card__title a:focus {
	text-decoration: underline;
	text-underline-offset: 4px;
}

.asb-article-card__excerpt {
	margin: 0;
	font-family: var(--asb-sans);
	font-size: 15px;
	font-style: normal;
	font-weight: 300;
	line-height: 23.25px; /* 155% */
	color: rgba(15, 52, 73, 0.75);
}

.asb-article-card__link {
	display: inline-flex;
	align-items: center;
	gap: 1rem;
	margin-top: auto;
	padding-top: 0.5rem;
	color: var(--asb-primary);
	text-align: center;
	font-family: "PT Serif Caption", var(--asb-serif);
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 120%; /* 19.2px */
	letter-spacing: -0.32px;
	text-decoration: none;
}

.asb-article-card__arrow {
	flex-shrink: 0;
	transition: transform 0.2s ease;
}

.asb-article-card__link:hover .asb-article-card__arrow {
	transform: translateX(4px);
}

@media (max-width: 781px) {
	.asb-article-card img.asb-article-card__image {
		height: 240px;
	}
}
