.sfcg-grid {
	display: grid;
	grid-template-columns: repeat(var(--sfcg-cols, 3), 1fr);
	gap: var(--sfcg-gap, 24px);
	/* Sin align-items: stretch (default de CSS Grid) hace que TODAS las tarjetas
	   de una misma fila tomen automáticamente la altura de la más alta de esa fila.
	   Se recalcula solo cada vez que se edita el contenido, sin tocar CSS. */
}

@media (max-width: 991px) {
	.sfcg-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 680px) {
	.sfcg-grid {
		grid-template-columns: 1fr;
	}
}

.sfcg-card {
	background: #ffffff;
	border-radius: 14px;
	padding: 24px;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.07);
	box-sizing: border-box;
}

.sfcg-card h3.sfcg-card-title {
	margin: 0 0 16px 0;
	font-size: 1.1em !important;
}

.sfcg-coord {
	display: flex;
	align-items: center;
	gap: 14px;
	background: #f8f8f8;
	border-radius: 10px;
	padding: 12px 14px;
	margin-bottom: 14px;
}

.sfcg-coord img,
.sfcg-coord-placeholder {
	width: 60px !important;
	height: 60px !important;
	max-width: 60px !important;
	max-height: 60px !important;
	min-width: 60px !important;
	min-height: 60px !important;
	border-radius: 50% !important;
	object-fit: cover !important;
	object-position: center top;
	flex-shrink: 0;
	background: #e2e2e2;
	display: block;
}

.sfcg-coord-info {
	line-height: 1.35;
}

.sfcg-coord-info strong {
	display: block;
	font-size: 0.95em;
}

.sfcg-coord-info span {
	font-size: 0.82em;
	color: #888;
}

.sfcg-member-list {
	line-height: 1.5;
}

.sfcg-member {
	font-size: 1em;
	margin: 0 0 2px 0;
	padding: 0;
	line-height: 1.5;
}

.sfcg-member--lead {
	font-weight: 600;
	margin-bottom: 0;
}

.sfcg-member-subtitle {
	font-size: 1em;
	font-style: italic;
	color: #888;
	margin: 0 0 8px 0;
	line-height: 1.5;
}
