/*
 * Ficha del directorio (C07; guía de estilo «Ficha del directorio»): la tarjeta del listado (mlp/directorio) y los datos
 * de la página de la ficha (mlp/ficha-directorio) comparten el logo y la lista de datos. Solo tokens (M-004).
 */

/* Ficha en el listado (guía de estilo): blanca, borde fino, logo sobre el fondo, nombre «primario» de 20 px y los
   datos en una lista de dos columnas. */
.mlp-ficha {
	background-color: var(--wp--preset--color--superficie);
	border: var(--wp--custom--borde--fino) solid var(--wp--preset--color--borde-suave);
	box-sizing: border-box;
	flex: 1;
	padding: var(--wp--preset--spacing--50);
}

.mlp-ficha > * {
	margin-block: 0;
}

.mlp-ficha > * + * {
	margin-block-start: var(--wp--preset--spacing--30);
}

.mlp-ficha__logo {
	align-items: center;
	background-color: var(--wp--preset--color--fondo);
	block-size: calc(var(--wp--custom--icono-circulo) * 1.5);
	display: flex;
	justify-content: center;
	margin-block-end: var(--wp--preset--spacing--40);
}

/* En el listado (v1.13.3, como hoy): el logo, en un tercio a la izquierda, y el nombre con las categorías a su lado.
   Sin logo, el nombre ocupa toda la fila. */
.mlp-ficha__cabecera {
	align-items: start;
	display: grid;
	gap: var(--wp--preset--spacing--40);
	grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
}

.mlp-ficha__cabecera:not(:has(.mlp-ficha__logo)) {
	grid-template-columns: minmax(0, 1fr);
}

.mlp-ficha__cabecera .mlp-ficha__logo {
	background-color: transparent;
	block-size: auto;
	justify-content: start;
	margin-block-end: 0;
}

.mlp-ficha__cabecera .mlp-ficha__logo img {
	max-block-size: calc(var(--wp--custom--icono-circulo) * 1.4);
}

.mlp-ficha__titular > * {
	margin-block: 0;
}

.mlp-ficha__categoria.mlp-ficha__categoria {
	color: var(--wp--preset--color--texto-secundario);
	font-size: var(--wp--preset--font-size--minimo);
	margin-block-start: var(--wp--preset--spacing--10);
}

/* Logos enteros, sin recortar. */
.mlp-ficha__logo img {
	block-size: auto;
	inline-size: auto;
	max-block-size: 100%;
	max-inline-size: 100%;
	object-fit: contain;
}

/* El nombre: «primario» de 20 px, sin el aspecto de título de sección de los h2 (lección 34). */
.mlp-ficha .mlp-ficha__nombre {
	font-size: var(--wp--preset--font-size--ficha);
	font-weight: var(--wp--custom--peso--titulo);
	letter-spacing: normal;
	line-height: var(--wp--custom--interlineado--compacto);
	text-transform: none;
}

.mlp-ficha__nombre a {
	color: var(--wp--preset--color--primario);
	text-decoration: none;
}

.mlp-ficha__nombre a:hover {
	text-decoration: underline;
}

.mlp-ficha__datos {
	display: grid;
	font-size: var(--wp--preset--font-size--pequeno);
	gap: var(--wp--preset--spacing--10) var(--wp--preset--spacing--30);
	grid-template-columns: auto 1fr;
}

.mlp-ficha__datos dt {
	color: var(--wp--preset--color--titulo);
	font-weight: var(--wp--custom--peso--fuerte);
}

.mlp-ficha__datos dd {
	margin: 0;
	overflow-wrap: anywhere;
}

/* Enlaces de los datos (tel:, mailto: y web): 24 px de alto como mínimo (2.5.8). En bloque en línea y no flex: el
   nombre de la web y su aviso «(web externa)» se parten como texto (lección 19). */
.mlp-ficha__datos a {
	color: var(--wp--preset--color--enlace);
	display: inline-block;
	min-block-size: var(--wp--custom--control--objetivo-min);
}
