.fwm {
	display: grid;
	grid-template-columns: minmax(0, 1.55fr) minmax(0, 1fr);
	gap: 28px;
	align-items: center;
	color: #12315c;
}

.fwm__map { display: block; width: 100%; height: auto; margin: 0; }

/* Cartes d'effectifs */
.fwm__cards {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.fwm-card {
	display: flex;
	flex-direction: column;
	gap: 6px;
	margin: 0;
	padding: 14px 14px 12px;
	border: 1px solid rgba(18, 49, 92, .06);
	border-radius: 12px;
	background: var(--bg);
}
.fwm-card__top { display: flex; align-items: center; gap: 8px; }
.fwm-card__pin { display: block; width: 16px; height: 19px; color: var(--c); line-height: 0; flex: none; }
.fwm-card__n { font-size: clamp(22px, 2.4vw, 30px); font-weight: 700; line-height: 1; color: #12315c; }
.fwm-card__l { font-size: 13px; line-height: 1.3; color: #44546d; }

.fwm__note {
	display: flex;
	gap: 10px;
	align-items: flex-start;
	margin: 16px 0 0;
	font-size: 13px;
	line-height: 1.5;
	color: #51607a;
}
.fwm__info {
	flex: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 18px;
	height: 18px;
	border-radius: 50%;
	background: #dfe9f6;
	color: #3b6db3;
	font-size: 11px;
	font-weight: 700;
	font-style: normal;
}

@media (max-width: 900px) {
	.fwm { grid-template-columns: minmax(0, 1fr); gap: 20px; }
}
@media (max-width: 560px) {
	.fwm__cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

.fwm--solo { grid-template-columns: minmax(0, 1fr); }
