/*
 * Legislatura San Juan — estilos institucionales (outline 11).
 * Sistema: DESIGN.md en la raíz del sitio («El hemiciclo»). Paleta del Manual de normas básicas (DEV_INSUMOS/Marca).
 *
 * Se carga después de los CSS compilados de Gantry (outline 11 → Page → Assets). Gantry está en modo producción y
 * no recompila el SCSS: los ajustes van acá, en CSS plano, para que el pase a producción sea copiar este archivo.
 *
 * 1. Tokens          4. Ficha y listado de diputados   7. Integrantes de comisiones y organismos
 * 2. Contraste AA    5. Listas con cargo                8. Resolución en PDF
 * 3. Utilidades      6. Autoridades de la Cámara        9. Página del Presidente
 */

/* 1. Tokens ------------------------------------------------------------------------------------------------- */

:root {
    --cdsj-azul: #5aa6dc;          /* Azul Hemiciclo, P 109-5 C: superficies, iconos, títulos grandes */
    --cdsj-azul-25: #d6e9f6;       /* desaturación al blanco 25 % (manual) */
    --cdsj-enlace: #22699e;        /* el mismo azul, más profundo: texto de enlace sobre blanco (5,9:1) */
    --cdsj-enlace-hover: #18527d;
    --cdsj-ocre: #c78f51;          /* P 21-12 C */
    --cdsj-ocre-oscuro: #9a6a33;   /* ocre para iconos y texto chico (4,7:1) */
    --cdsj-arena-velo: rgba(227, 200, 161, 0.25);
    --cdsj-arena-cargo: rgba(227, 200, 161, 0.55);
    --cdsj-pizarra: #252d37;
    --cdsj-texto: #5f6670;         /* reemplaza al #777 de Gantry (4,48:1 → 5,8:1) */
    --cdsj-filete: #e3e7ea;
}

/* 2. Contraste AA ------------------------------------------------------------------------------------------- */

/* Texto corriente: mismas secciones a las que Gantry les asigna #777 */
body, #g-page-surround, #g-drawer, #g-header, #g-breadcrumb, #g-fullwidth, #g-showcase, #g-intro, #g-feature,
#g-system-messages, #g-sidebar, #g-mainbody, #g-aside, #g-mainbottom, #g-extension, #g-additional, #g-prebottom,
#g-bottom, #g-afterbottom, #g-last, #g-offcanvas, .pagination__wrapper ul > li > a, .pagination__wrapper ul > li > span {
    color: var(--cdsj-texto);
}

/* Enlaces: el azul de marca (2,65:1) no alcanza para texto; se usa su versión profunda */
a,
.btn-link,
.nav.mod-list li a:hover,
.nav.mod-list li.current > a,
.g-article-header .page-header h2 a:hover,
#g-footer a:hover {
    color: var(--cdsj-enlace);
}

a:hover,
a:focus-visible {
    color: var(--cdsj-enlace-hover);
}

#g-mainbar a:hover,
#g-aside .sidebar-right:not(.box3) a:hover {
    text-decoration: underline;
    text-underline-offset: 0.18em;
}

/* Menú principal: estado activo y hover en el azul profundo */
#g-navigation .g-main-nav .g-toplevel > li:hover > .g-menu-item-container,
#g-navigation .g-main-nav .g-toplevel > li.active > .g-menu-item-container,
#g-navigation .g-main-nav .g-toplevel > li > .g-menu-item-container a:hover,
#g-navigation .g-main-nav .g-sublevel > li.active > .g-menu-item-container,
#g-offcanvas #g-mobilemenu-container ul > li.active > .g-menu-item-container {
    color: var(--cdsj-enlace);
}

/* Paneles azules del costado (box3: «Sesiones», «Últimas noticias», «Trabajo de Comisiones»): el azul de marca
   se conserva como superficie y el texto pasa a pizarra (blanco sobre #5aa6dc daba 2,65:1; pizarra, 5,3:1) */
.box3.moduletable,
.box3.moduletable a,
.box3.moduletable a:hover {
    color: var(--cdsj-pizarra);
}

.box3.moduletable a:hover {
    text-decoration: underline;
    text-underline-offset: 0.18em;
}

.box3.moduletable :focus-visible {
    outline-color: var(--cdsj-pizarra);
}

/* Noticia destacada: el título va sobre la foto, en blanco. El velo ocupa solo el alto del texto, pegado al borde
   inferior, y entra en degradé (el módulo traía un rectángulo negro con borde duro a altura fija). Prefijo #g-aside
   para ganarle a los estilos propios de cada módulo (#lnee_N). */
#g-aside .box3.moduletable .newshead + .newsinfo {
    top: auto;
    bottom: 0;
    padding: 3rem 0.75rem 0.75rem;
    background: linear-gradient(to top, color-mix(in srgb, var(--cdsj-pizarra) 92%, transparent), color-mix(in srgb, var(--cdsj-pizarra) 70%, transparent) 55%, transparent);
}

#g-aside .box3.moduletable .newshead + .newsinfo,
#g-aside .box3.moduletable .newshead + .newsinfo a,
#g-aside .box3.moduletable .newshead + .newsinfo a:hover {
    color: #fff;
}

#g-aside .box3.moduletable .newshead + .newsinfo .item_details {
    margin: 0 0 0.25rem;
    font-size: 0.8125rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

#g-aside .box3.moduletable .newshead + .newsinfo .newstitle {
    margin: 0;
}

#g-aside .box3.moduletable .latestnews-item .newshead + .newsinfo .newstitle a {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    font-size: 1.15rem; /* Title, igual que los demás títulos del panel */
    line-height: 1.25;
}

/* Botones sobre el azul de marca: texto pizarra, como los paneles (blanco daba 2,65:1). El hover de la plantilla
   (fondo pizarra, texto blanco) ya cumple y no se toca. Solo las variantes que usan el azul de marca. */
.button:not(.dark):not(.empty):not(.standard):not([class*="button-"]),
.button.dark:hover,
.button.dark:active,
.button.dark:focus,
.button.empty:hover,
#g-page-surround .btn.btn-primary,
#g-offcanvas .btn.btn-primary,
#g-page-surround .readmore .btn,
#g-page-surround .search-form-results .btn,
#g-offcanvas .readmore .btn,
#g-offcanvas .search-form-results .btn {
    color: var(--cdsj-pizarra);
}

/* Botón «vacío»: borde y texto en el azul profundo sobre blanco */
.button.empty {
    border-color: var(--cdsj-enlace);
    color: var(--cdsj-enlace);
}

/* Dentro de los paneles azules el botón es pizarra: texto blanco */
.box3.moduletable .button,
#g-offcanvas .button {
    color: #fff;
}

/* Datos del artículo (bloque, autor, fecha): sin el gris #999 de la plantilla (2,8:1).
   !important porque la plantilla lo declara así (medical-joomla_11.css). */
.article-info.text-muted {
    color: var(--cdsj-texto) !important;
}

/* Sin la carpeta de «categoría» de Joomla: el nombre (p. ej. «Bloque Justicialista») ya dice qué es */
.article-info .category-name .fa-folder-open-o,
.article-info .parent-category-name .fa-folder-open-o {
    display: none;
}

/* Foco visible en todo el sitio */
:focus-visible {
    outline: 2px solid var(--cdsj-enlace);
    outline-offset: 2px;
}

::selection {
    background: var(--cdsj-azul-25);
    color: var(--cdsj-pizarra);
}

/* 3. Utilidades --------------------------------------------------------------------------------------------- */

.visually-hidden {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

/* 4. Ficha y listado de diputados --------------------------------------------------------------------------- */

/* Campos de la ficha: etiqueta | valor (se reconoce por el campo «Mandato», que solo tienen los diputados) */
.fields-container:has(> .field-entry.mandato) > li.field-entry {
    display: grid;
    grid-template-columns: 10.5rem minmax(0, 1fr);
    column-gap: 1.5rem;
    align-items: baseline;
    padding: 0.85rem 0;
    border-bottom: 1px solid var(--cdsj-filete);
}

.fields-container:has(> .field-entry.mandato) > li.field-entry:last-child {
    border-bottom: 0;
}

.fields-container:has(> .field-entry.mandato) .field-label {
    font-size: 0.8125rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    line-height: 1.6;
    color: var(--cdsj-pizarra);
}

.fields-container:has(> .field-entry.mandato) .field-value {
    min-width: 0;
    color: var(--cdsj-texto);
    overflow-wrap: anywhere;
}

@media (max-width: 29.99rem) {
    .fields-container:has(> .field-entry.mandato) > li.field-entry {
        grid-template-columns: minmax(0, 1fr);
        row-gap: 0.2rem;
    }
}

/* Ficha individual: retrato circular y nombre lado a lado; los datos debajo, a todo el ancho */
.com-content-article:has(.fields-container > .field-entry.mandato) {
    display: grid;
    grid-template-columns: 13rem minmax(0, 1fr);
    column-gap: 2rem;
    align-items: center;
}

.com-content-article:has(.fields-container > .field-entry.mandato) > * {
    grid-column: 1 / -1;
}

.com-content-article:has(.fields-container > .field-entry.mandato) > .item-image,
.ficha-presidente > .item-image {
    grid-column: 1;
    grid-row: 1;
    float: none;
    margin: 0;
}

.com-content-article:has(.fields-container > .field-entry.mandato) > .item-image img,
.ficha-presidente > .item-image img {
    display: block;
    width: 100%;
    object-fit: cover;
    object-position: 50% 12%;
}

/* Todos los retratos son círculos (la «banca» de cada persona) */
.com-content-article:has(.fields-container > .field-entry.mandato) > .item-image img,
.ficha-presidente > .item-image img {
    height: auto;
    aspect-ratio: 1;
    border-radius: 50%;
    background: var(--cdsj-azul-25);
}

.com-content-article:has(.fields-container > .field-entry.mandato) > .g-article-header {
    grid-column: 2;
    grid-row: 1;
    padding-bottom: 0.5rem;
}

.com-content-article:has(.fields-container > .field-entry.mandato) > .fields-container {
    margin-top: 2rem;
}

@media (max-width: 47.99rem) {
    .com-content-article:has(.fields-container > .field-entry.mandato) {
        grid-template-columns: 7rem minmax(0, 1fr);
        column-gap: 1rem;
    }

    .com-content-article:has(.fields-container > .field-entry.mandato) .g-article-header h2 {
        font-size: 1.4rem;
    }
}

/* Listado: el retrato circular sin el halo gris de la foto recortada */
body.diputados .blog-items.image-left .blog-item .item-image img {
    aspect-ratio: 1;
    object-fit: cover;
    object-position: 50% 12%;
}

@media (max-width: 47.99rem) {
    body.diputados .blog-items.image-left .blog-item .item-image {
        float: none;
        max-width: 8rem;
        margin: 0 0 1rem;
    }
}

/* Página de cada bloque: Presidencia y Vicepresidencia del bloque como tarjetas */
.category-desc:has(.autoridad) {
    margin-bottom: 2.5rem;
    padding-bottom: 2rem;
    border-bottom: 1px solid var(--cdsj-filete);
}

.category-desc .fields-container:has(> .field-entry.presidente) {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 12rem));
    gap: 1.5rem 2rem;
    margin: 0 0 1rem;
}

.category-desc .fields-container:has(> .field-entry.presidente) > li.field-entry {
    padding: 0;
    border: 0;
}

.category-desc .fields-container:has(> .field-entry.presidente) .field-label {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
}

/* 5. Listas con cargo (comisiones y representaciones de un diputado) ---------------------------------------- */

.lista-con-cargo ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.lista-con-cargo li {
    margin: 0;
    padding: 0.2rem 0;
    line-height: 1.45;
}

.lista-con-cargo .cargo {
    display: inline-block;
    margin-left: 0.45rem;
    padding: 0.15rem 0.5rem;
    background: var(--cdsj-arena-cargo);
    color: var(--cdsj-pizarra);
    font-size: 0.8125rem;
    font-weight: 700;
    line-height: 1.4;
    white-space: nowrap;
}

/* 6. Autoridades de la Cámara: el hemiciclo — Presidencia arriba, Vicepresidencias, Secretarías --------------- */

.fields-container:has(> .field-entry.presidencia) {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 2.75rem 0;
    margin: 2rem 0 0;
}

.fields-container:has(> .field-entry.presidencia) > li.field-entry {
    grid-column: span 2;
    padding: 0 0.75rem;
    border: 0;
}

.fields-container:has(> .field-entry.presidencia) > li.presidencia {
    grid-column: 1 / -1;
    padding-bottom: 2.75rem;
    border-bottom: 1px solid var(--cdsj-filete);
}

.fields-container:has(> .field-entry.presidencia) > li.secretaria-legislativa,
.fields-container:has(> .field-entry.presidencia) > li.secretaria-administrativa {
    grid-column: span 3;
    padding-top: 2.75rem;
    border-top: 1px solid var(--cdsj-filete);
}

.autoridad {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.autoridad__foto {
    width: 8.5rem;
    aspect-ratio: 1;
    margin-bottom: 1rem;
    overflow: hidden;
    border-radius: 50%;
    background: var(--cdsj-azul-25);
}

.autoridad__foto a,
.autoridad__img {
    display: block;
    width: 100%;
    height: 100%;
}

.autoridad__img {
    object-fit: cover;
    object-position: 50% 12%;
}

.autoridad__nombre {
    margin: 0;
    font-size: 1.15rem;
    line-height: 1.25;
    text-wrap: balance;
}

.autoridad__nombre a {
    color: var(--cdsj-pizarra);
}

.autoridad__nombre a:hover {
    color: var(--cdsj-enlace);
}

.autoridad__cargo {
    max-width: 30ch;
    margin: 0.4rem 0 0;
    font-size: 0.875rem;
    line-height: 1.45;
    color: var(--cdsj-texto);
    text-wrap: balance;
}

.autoridad--presidencia .autoridad__foto {
    width: 11rem;
}

.autoridad--presidencia .autoridad__nombre {
    font-size: 1.4rem;
}

.autoridad--presidencia .autoridad__cargo {
    font-size: 1rem;
}

@media (max-width: 47.99rem) {
    .fields-container:has(> .field-entry.presidencia) {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 2.25rem 0;
    }

    /* La Vicepresidencia Alterna cierra su fila; las Secretarías empiezan una nueva */
    .fields-container:has(> .field-entry.presidencia) > li.vicepresidencia-alterna {
        grid-column: 1 / -1;
    }

    .fields-container:has(> .field-entry.presidencia) > li.field-entry,
    .fields-container:has(> .field-entry.presidencia) > li.secretaria-legislativa,
    .fields-container:has(> .field-entry.presidencia) > li.secretaria-administrativa {
        grid-column: span 1;
    }

    .fields-container:has(> .field-entry.presidencia) > li.presidencia {
        grid-column: 1 / -1;
        padding-bottom: 2.25rem;
    }

    .fields-container:has(> .field-entry.presidencia) > li.secretaria-legislativa,
    .fields-container:has(> .field-entry.presidencia) > li.secretaria-administrativa {
        padding-top: 2.25rem;
    }

    .autoridad__foto {
        width: 7rem;
    }

    .autoridad--presidencia .autoridad__foto {
        width: 9rem;
    }
}

/* Botones para compartir: aire respecto del contenido */
.com-content-article .s2s_supra_contenedor {
    margin: 2rem 0;
}

/* 7. Integrantes de comisiones y organismos ----------------------------------------------------------------- */

/* Descripción del organismo o de la comisión: ancho de lectura */
body.diputados .com-content-article__body,
.fields-container .funcion-de-la-comision-articulo .field-value {
    display: block;
    max-width: 70ch;
}

.fields-container > li.field-entry:has(.layout-grid),
.fields-container > li.field-entry.archivos-adjuntos-comisiones {
    padding: 1.75rem 0;
    border-bottom: 1px solid var(--cdsj-filete);
}

.fields-container > li.field-entry:has(.layout-grid):last-child,
.fields-container > li.field-entry.archivos-adjuntos-comisiones {
    border-bottom: 0;
}

.fields-container span.field-label.campo_etiqueta,
.fields-container .archivos-adjuntos-comisiones .field-label {
    display: block;
    margin: 0 0 1.25rem;
    font-size: 0.8125rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    color: var(--cdsj-pizarra);
}

.fields-container .acfarticles-field-wrapper.layout-grid {
    grid-template-columns: repeat(auto-fill, minmax(8.5rem, 1fr));
    gap: 1.75rem 1rem;
}

.fields-container .acfarticles-field-wrapper .acfarticle-item {
    align-items: center;
    gap: 0.65rem;
    text-align: center;
}

.fields-container .acfarticles-field-wrapper .acfarticle-item img {
    width: 6.5rem;
    max-width: none;
    height: 6.5rem;
    margin: 0;
    object-fit: cover;
    object-position: 50% 12%;
    border-radius: 50%;
    background: var(--cdsj-azul-25);
}

.fields-container .acfarticles-field-wrapper .acfarticle-item--content--title {
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.3;
    color: var(--cdsj-pizarra);
    text-wrap: balance;
}

.fields-container .acfarticles-field-wrapper .acfarticle-item--content--title:hover {
    color: var(--cdsj-enlace);
}

/* Comisiones: Presidencia, Vicepresidencia y Secretaría en una fila; los demás integrantes debajo */
.fields-container:has(> .presidente-de-la-comision) {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    column-gap: 0;
}

.fields-container:has(> .presidente-de-la-comision) > li.field-entry {
    grid-column: 1 / -1;
}

.fields-container:has(> .presidente-de-la-comision) > li.presidente-de-la-comision,
.fields-container:has(> .presidente-de-la-comision) > li.vicepresidente-de-la-comision,
.fields-container:has(> .presidente-de-la-comision) > li.secretario-a-de-la-comision {
    grid-column: span 1;
    text-align: center;
}

.fields-container:has(> .presidente-de-la-comision) > li.presidente-de-la-comision .layout-grid,
.fields-container:has(> .presidente-de-la-comision) > li.vicepresidente-de-la-comision .layout-grid,
.fields-container:has(> .presidente-de-la-comision) > li.secretario-a-de-la-comision .layout-grid {
    grid-template-columns: minmax(0, 1fr);
}

@media (max-width: 29.99rem) {
    .fields-container:has(> .presidente-de-la-comision) {
        grid-template-columns: minmax(0, 1fr);
    }
}

/* Directorio de diputados (diseño alternativo «directorio»): tarjetas con retrato, nombre, bloque y representación */
.directorio__buscador {
    margin: 1.5rem 0 0.5rem;
}

.directorio__buscador input[type="search"] {
    width: 100%;
    max-width: 28rem;
    min-height: 2.75rem;
    padding: 0 0.9rem;
    border: 1px solid var(--cdsj-texto); /* 5,8:1: el borde de un campo necesita 3:1 */
    border-radius: 3px;
    background: #fff;
    color: var(--cdsj-pizarra);
    font-size: 1rem;
}

.directorio__buscador input[type="search"]::placeholder {
    color: var(--cdsj-texto);
}

.directorio__estado {
    min-height: 1.5rem;
    margin: 0.5rem 0 0;
    font-size: 0.875rem;
}

.directorio__lista {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(11rem, 1fr));
    gap: 2.5rem 1.5rem;
    margin: 1.5rem 0 0;
    padding: 0;
    list-style: none;
}

.directorio__buscador[hidden],
.directorio__lista .diputado[hidden] {
    display: none !important;
}

.diputado {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 0;
    text-align: center;
}

.diputado__foto {
    display: block;
    width: 8rem;
    aspect-ratio: 1;
    margin-bottom: 0.9rem;
    overflow: hidden;
    border-radius: 50%;
    background: var(--cdsj-azul-25);
}

.diputado__foto img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 12%;
}

.diputado__nombre {
    margin: 0;
    font-size: 1.15rem;
    line-height: 1.25;
    text-wrap: balance;
}

.diputado__nombre a {
    color: var(--cdsj-pizarra);
}

.diputado__nombre a:hover {
    color: var(--cdsj-enlace);
}

.diputado__bloque,
.diputado__representacion {
    margin: 0.3rem 0 0;
    font-size: 0.875rem;
    line-height: 1.4;
    text-wrap: balance;
}

.diputado__representacion {
    color: var(--cdsj-texto);
}

.diputado__representacion .sin-corte {
    white-space: nowrap;
}

@media (max-width: 29.99rem) {
    .directorio__lista {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 2rem 1rem;
    }

    .diputado__foto {
        width: 6.5rem;
    }

    .diputado__nombre {
        font-size: 1rem;
    }
}

/* Índice de comisiones (diseño alternativo «comisiones») */
.comisiones-lista {
    margin: 1.5rem 0 0;
    padding: 0;
    list-style: none;
}

.comision {
    margin: 0;
    padding: 1.1rem 0;
    border-bottom: 1px solid var(--cdsj-filete);
}

.comision:first-child {
    border-top: 1px solid var(--cdsj-filete);
}

.comision__nombre {
    margin: 0 0 0.3rem;
    font-size: 1.15rem;
    line-height: 1.25;
}

.comision__nombre a {
    color: var(--cdsj-pizarra);
}

.comision__nombre a:hover {
    color: var(--cdsj-enlace);
}

.comision__dato {
    margin: 0;
    font-size: 0.875rem;
    line-height: 1.5;
}

.comision__etiqueta {
    display: inline-block;
    min-width: 6.5rem;
    font-size: 0.8125rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--cdsj-pizarra);
}

@media (max-width: 29.99rem) {
    .comision__etiqueta {
        display: block;
        min-width: 0;
    }
}

/* 8. Resolución en PDF -------------------------------------------------------------------------------------- */

.documento-pdf {
    max-width: 40rem;
    margin: 0;
}

.documento-pdf__marco {
    border: 1px solid var(--cdsj-filete);
    border-bottom: 0;
    background: var(--cdsj-filete);
}

.documento-pdf__visor {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 210 / 297;
    border: 0;
}

.documento-pdf__tarjeta {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 0.75rem 1rem;
    padding: 1rem 1.25rem;
    border: 1px solid var(--cdsj-filete);
    background: var(--cdsj-arena-velo);
}

.documento-pdf__icono {
    font-size: 1.9rem;
    color: var(--cdsj-ocre-oscuro);
}

.documento-pdf__datos {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.documento-pdf__titulo {
    font-weight: 700;
    line-height: 1.3;
    color: var(--cdsj-pizarra);
}

.documento-pdf__meta {
    font-size: 0.8125rem;
    color: var(--cdsj-texto);
}

.documento-pdf__acciones {
    display: flex;
    gap: 0.5rem;
}

.documento-pdf__acciones a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.5rem;
    padding: 0 1rem;
    border: 1px solid var(--cdsj-enlace);
    background: #fff;
    color: var(--cdsj-enlace);
    font-size: 0.875rem;
    font-weight: 700;
    text-decoration: none;
    transition: background-color 0.15s ease-out, color 0.15s ease-out;
}

.documento-pdf__acciones a:hover {
    background: var(--cdsj-enlace);
    color: #fff;
    text-decoration: none;
}

/* Móvil: los navegadores no muestran PDF dentro de la página; queda la tarjeta con sus dos acciones */
@media (max-width: 47.99rem) {
    .documento-pdf__marco {
        display: none;
    }

    .documento-pdf__tarjeta {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .documento-pdf__acciones {
        grid-column: 1 / -1;
    }

    .documento-pdf__acciones a {
        flex: 1;
        min-height: 2.75rem;
    }
}

/* 9. Página del Presidente ---------------------------------------------------------------------------------- */

.ficha-presidente {
    display: grid;
    grid-template-columns: 13rem minmax(0, 1fr);
    column-gap: 2rem;
    align-content: start;
}

.ficha-presidente > * {
    grid-column: 2;
}

.ficha-presidente > .item-image {
    grid-row: 1 / span 4;
}

.ficha-presidente > .g-article-header {
    align-self: end;
    margin-top: 1rem;
}

.ficha-presidente .com-content-article__body {
    max-width: 60ch;
}

.ficha-presidente .com-content-article__body > p:first-child strong {
    font-weight: 400;
    font-size: 1.15rem;
    line-height: 1.5;
    color: var(--cdsj-pizarra);
}

@media (max-width: 47.99rem) {
    .ficha-presidente {
        grid-template-columns: 7rem minmax(0, 1fr);
        column-gap: 1rem;
    }

    .ficha-presidente > .item-image {
        grid-row: 1 / span 2;
    }

    .ficha-presidente > .com-content-article__body {
        grid-column: 1 / -1;
        margin-top: 1rem;
    }
}
