/**
 * Listados y tarjetas — nodos 1:517 (TitleBlock), 1:522 (ConvenioCard),
 * 1:568 (IssueCard revista).
 */

/* TitleBlock: fondo blanco, título Rubik 44 navy, bajada 17 en #595959. */
.cvp-titleblock { background: var(--cvp-white); }

.cvp-titleblock .cvp-container {
	padding-top: var(--cvp-sp-6);      /* 48 */
	padding-bottom: var(--cvp-sp-4);   /* 32 */
	display: flex;
	flex-direction: column;
	gap: 0.625rem;                     /* 10 */
	align-items: flex-start;
}

.cvp-titleblock__title {
	/*
	 * 44px es la medida del Figma, pero fija desbordaba en pantallas de 320px
	 * con títulos largos ("Directorio de cooperativas"). clamp la baja sola.
	 */
	font-size: clamp(1.75rem, 6vw, 2.75rem);   /* 28 → 44 */
	color: var(--cvp-navy);
	margin: 0;
	line-height: 1.05;
	overflow-wrap: break-word;
	text-wrap: balance;
}

.cvp-titleblock__text {
	font-size: 1.0625rem;              /* 17 */
	color: #595959;
	margin: 0;
	max-width: 70ch;
}

.cvp-archive { padding-block: var(--cvp-sp-7); }

.cvp-archive__grid {
	display: grid;
	grid-template-columns: repeat(var(--cvp-archive-cols, 3), minmax(0, 1fr));
	gap: 1.5rem;                       /* 24 */
}

.cvp-archive__empty { color: var(--cvp-muted, #5b6b80); }

.cvp-card { margin: 0; }

.cvp-card__link {
	display: flex;
	flex-direction: column;
	height: 100%;
	text-decoration: none;
	color: inherit;
}

/* Media: 160px en convenios, 200px en revista, 16:9 en noticias. */
.cvp-card__media {
	position: relative;
	width: 100%;
	height: var(--cvp-card-media-h, 200px);
	overflow: hidden;
	background: #ebebeb;
}

.cvp-card__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform var(--cvp-dur) var(--cvp-ease);
}

.cvp-card__link:hover .cvp-card__media img { transform: scale(1.03); }

.cvp-card__placeholder {
	display: block;
	width: 100%;
	height: 100%;
	background: #ebebeb;
}

.cvp-card__body {
	padding-top: 0.875rem;             /* 14 */
	display: flex;
	flex-direction: column;
	gap: 0.5rem;                       /* 8 */
	flex: 1;
}

.cvp-card__title {
	font-family: var(--cvp-font-display);
	font-weight: 700;
	font-size: 1.125rem;               /* 18 */
	color: var(--cvp-navy);
	margin: 0;
	line-height: 1.2;
	text-transform: none;
}

/* Categoría sobre el título, como en el listado del Figma. */
.cvp-card__cat {
	font-family: var(--cvp-font-text);
	font-weight: 700;
	font-size: 0.75rem;                /* 12 */
	letter-spacing: 0.09em;
	text-transform: uppercase;
	color: var(--cvp-navy);
	margin: 0;
}

.cvp-card__excerpt {
	font-size: var(--cvp-fs-sm);       /* 14 */
	color: #666;
	margin: 0;
	line-height: 1.4;
}

.cvp-card__meta {
	font-size: 0.8125rem;              /* 13 */
	color: #8c8c8c;
	margin: 0;
}

/* "VER MÁS →" */
.cvp-card__more {
	font-family: var(--cvp-font-text);
	font-weight: 700;
	font-size: 0.8125rem;              /* 13 */
	color: var(--cvp-navy);
	text-transform: uppercase;
	margin: 0;
	margin-top: auto;
	padding-top: 0.25rem;
}

.cvp-card__link:hover .cvp-card__more { color: var(--cvp-orange); }

/* Revista: tapa más alta y dos enlaces. */
.cvp-card--revista { --cvp-card-media-h: 200px; }
.cvp-card--revista .cvp-card__title { font-size: 1rem; }
.cvp-card--revista .cvp-card__body { gap: 0.375rem; }

.cvp-card__links {
	display: flex;
	flex-direction: column;
	gap: 0.375rem;
	margin-top: 0.25rem;
}

.cvp-card__links a {
	font-family: var(--cvp-font-text);
	font-weight: 700;
	font-size: 0.8125rem;
	color: var(--cvp-navy);
	text-transform: uppercase;
	text-decoration: none;
}

.cvp-card__links a:hover { color: var(--cvp-orange); }

/* Convenios: media de 160. */
.cvp-card--convenio { --cvp-card-media-h: 160px; }

/* Paginación */
.cvp-pagination { margin-top: var(--cvp-sp-6); }

.cvp-pagination .nav-links { display: flex; gap: 0.5rem; flex-wrap: wrap; }

.cvp-pagination .page-numbers {
	display: inline-flex; align-items: center; justify-content: center;
	min-width: 40px; height: 40px; padding-inline: 0.5rem;
	text-decoration: none; font-weight: 700;
	border: 1px solid rgba(0, 70, 150, 0.2); color: var(--cvp-navy);
}

.cvp-pagination .page-numbers.current,
.cvp-pagination .page-numbers:hover { background: var(--cvp-navy); color: var(--cvp-white); }

/*
 * Escalón intermedio: sin él la grilla saltaba de 3 o 4 columnas directo a 1,
 * y en tablet quedaban tarjetas de más de 700px de ancho.
 */
@media (max-width: 1000px) {
	.cvp-archive__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 620px) {
	.cvp-archive__grid { grid-template-columns: 1fr; }
}

/* Categoría del convenio (Salud, Deporte, Cultura, Servicios). */
.cvp-card__meta--cat {
	color: var(--cvp-orange);
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	font-size: 0.75rem;
}

/* Los convenios son logos, no fotos: que se vean enteros y centrados. */
.cvp-card--convenio .cvp-card__media { background: var(--cvp-white); border: 1px solid #ebebeb; }
.cvp-card--convenio .cvp-card__media img { object-fit: contain; padding: 1rem; }
.cvp-card--convenio .cvp-card__link:hover .cvp-card__media img { transform: none; }

/*
 * Convenios es el único listado que el Figma del 18 de setiembre agrandó:
 * la bajada pasa de 17 a 22, el título de la tarjeta de 18 a 22 y su texto
 * de 14 a 20. El resto de los archivos no se toca. (El diseño deja una de
 * las siete tarjetas con el texto en 14; se toma 20, que es lo que dicen
 * las otras seis.)
 */
.cvp-titleblock--convenio .cvp-titleblock__text { font-size: 1.375rem; }   /* 22 */

/* Figma del 6 de octubre de 2026: Noticias y Actividades suben la bajada de 17 a 24. */
.cvp-titleblock--post .cvp-titleblock__text,
.cvp-titleblock--actividad .cvp-titleblock__text { font-size: 1.5rem; }    /* 24 */

.cvp-card--convenio .cvp-card__title   { font-size: 1.375rem; }            /* 22 */
.cvp-card--convenio .cvp-card__excerpt { font-size: var(--cvp-fs-md); }    /* 20 */

/* El mobile del Figma los deja en 15, 19 y 14. */
@media (max-width: 900px) {
	.cvp-titleblock--convenio .cvp-titleblock__text,
	.cvp-titleblock--post .cvp-titleblock__text,
	.cvp-titleblock--actividad .cvp-titleblock__text { font-size: 0.9375rem; }
	.cvp-card--convenio .cvp-card__title   { font-size: 1.1875rem; }
	.cvp-card--convenio .cvp-card__excerpt { font-size: var(--cvp-fs-sm); }
}

/* Figma del 6 de octubre de 2026: en los listados la grilla arranca a 8 del título (nodos 1:425,
   1:520, 1:566); las fotos de noticias miden 160 de alto; la bajada de
   Revista entra en una línea; y el logo de convenio va sin caja ni borde. */
.cvp-archive { padding-top: 0.5rem; }
.cvp-card:not(.cvp-card--convenio):not(.cvp-card--revista) { --cvp-card-media-h: 160px; }
.cvp-titleblock--revista .cvp-titleblock__text { max-width: none; }
.cvp-card--convenio .cvp-card__media { background: none; border: 0; }
.cvp-card--convenio .cvp-card__media img { object-fit: contain; padding: 0; }
.cvp-card--convenio .cvp-card__excerpt { color: #666; }
