/**
 * Bright Mosaic – Our Centers block styles (CONTACT_REVIEW.md CT-4).
 *
 * Units: the parent theme sets html { font-size: 62.5% }, so 1rem = 10px here. The facts
 * list inside each card is the location template partial; its base rules in style.css are
 * written as if 1rem were 16px, so the sizes it needs are set here, scoped to .bm-locations.
 * Four across in a 1,200px column, two across from 601px, one on phones.
 */

.bm-locations {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 2rem;
}

.bm-locations-card {
	background: #fff;
	border-radius: 12px;
	padding: 2.4rem 2rem;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
	display: flex;
	flex-direction: column;
	gap: 1.6rem;
	min-width: 0;
}

.bm-locations-card-title {
	font-size: 2rem;
	line-height: 1.25;
	margin: 0;
	text-wrap: balance;
}

.bm-locations-card-title a {
	color: var(--color-heading, #004e66);
	text-decoration: none;
}

.bm-locations-card-title a:hover,
.bm-locations-card-title a:focus-visible {
	text-decoration: underline;
	text-decoration-thickness: 2px;
	text-underline-offset: 3px;
}

/* two classes, so the parent's .entry-content ul { padding-left: 1.8em } does not indent the list */
.bm-locations .bmtc-location-facts {
	margin: 0;
	padding: 0;
	display: grid;
	gap: 1rem;
}

.bm-locations .bmtc-fact {
	align-items: flex-start;
	gap: 1rem;
	margin: 0;
	font-size: 1.6rem;
	line-height: 1.5;
}

.bm-locations .bmtc-icon {
	margin-top: 0.2rem;
}

.bm-locations .bmtc-fact-value {
	overflow-wrap: anywhere;
}

.bm-locations-card-link {
	margin-top: auto;
	font-weight: 600;
	color: var(--btn-bg-primary, #007b9c);
	text-decoration: none;
}

.bm-locations-card-link::after {
	content: " \2192";
}

.bm-locations-card-link:hover,
.bm-locations-card-link:focus-visible {
	text-decoration: underline;
}

/* Editor-only empty-state hint. */
.bm-locations-empty {
	padding: 1.5rem;
	text-align: center;
	color: var(--color-muted, #6b6b6b);
	border: 1px dashed var(--border, #e6e6e6);
	border-radius: 8px;
}

@media (max-width: 1199px) {
	.bm-locations {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 600px) {
	.bm-locations {
		grid-template-columns: 1fr;
		gap: 1.2rem;
	}

	.bm-locations-card {
		padding: 2rem 1.6rem;
		gap: 1.2rem;
	}
}
