/*
Theme Name: LIPROES Institucional
Theme URI: https://liproes.org/
Author: LIPROES
Description: Plantilla WordPress institucional basada en el sitio LigaProEst, con navegación, postulación en línea y formularios integrados.
Version: 2.8.49
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: liproes
*/

:root { --liproes-blue:#002147; --liproes-gold:#FFD700; }
html { scroll-behavior:smooth; }
body { margin:0; }
.wp-block { max-width:none; }

/* v2.6.3: logo superior sin cuadro/fondo blanco */
.site-header .custom-logo-link, .site-header .custom-logo { background: transparent !important; box-shadow: none !important; }


/* v2.6.6: reproductor de video dentro del sitio */
.liproes-modal-open { overflow: hidden; }
.liproes-video-modal { position: fixed; inset: 0; z-index: 99999; display: flex; align-items: center; justify-content: center; padding: 24px; }
.liproes-video-modal.hidden { display: none; }
.liproes-video-modal-backdrop { position: absolute; inset: 0; background: rgba(0, 18, 38, .82); backdrop-filter: blur(4px); }
.liproes-video-modal-dialog { position: relative; z-index: 1; width: min(960px, 100%); background: #061a34; border: 2px solid var(--liproes-gold); border-radius: 18px; padding: 20px; box-shadow: 0 24px 80px rgba(0,0,0,.45); }
.liproes-video-modal-title { color: #fff; font-size: 1.2rem; font-weight: 700; margin: 0 44px 16px 0; }
.liproes-video-modal-player { position: relative; width: 100%; aspect-ratio: 16 / 9; background: #000; border-radius: 10px; overflow: hidden; }
.liproes-video-modal-player iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.liproes-video-modal-close { position: absolute; top: 10px; right: 12px; z-index: 2; width: 38px; height: 38px; border: 0; border-radius: 50%; background: var(--liproes-gold); color: var(--liproes-blue); font-size: 28px; line-height: 1; cursor: pointer; font-weight: 700; }
.liproes-video-modal-close:hover { transform: scale(1.05); }
.liproes-video-play { border: 0; cursor: pointer; }
@media (max-width: 640px) { .liproes-video-modal { padding: 12px; } .liproes-video-modal-dialog { padding: 14px; border-radius: 14px; } }


/* v2.6.9: inscripción rápida a talleres */

/* v2.7.0: página principal simplificada — se mantiene solo el hero institucional */
.liproes-enrollment-modal { position: fixed; inset: 0; z-index: 100000; display: flex; align-items: center; justify-content: center; padding: 20px; }
.liproes-enrollment-modal.hidden { display: none; }
.liproes-enrollment-backdrop { position: absolute; inset: 0; background: rgba(0, 18, 38, .78); backdrop-filter: blur(4px); }
.liproes-enrollment-dialog { position: relative; z-index: 1; width: min(640px, 100%); max-height: calc(100vh - 40px); overflow-y: auto; background: #fff; border-radius: 20px; padding: 28px; border-top: 4px solid var(--liproes-gold); box-shadow: 0 24px 80px rgba(0,0,0,.42); }
.liproes-enrollment-close { position: absolute; top: 12px; right: 14px; border: 0; background: transparent; color: var(--liproes-blue); font-size: 30px; line-height: 1; cursor: pointer; }
.liproes-enrollment-close:hover { color: #b88600; }
.liproes-honeypot { position:absolute!important; left:-9999px!important; width:1px!important; height:1px!important; opacity:0!important; }
@media (max-width: 640px) { .liproes-enrollment-modal { padding: 10px; } .liproes-enrollment-dialog { padding: 22px 18px; border-radius: 16px; max-height: calc(100vh - 20px); } }

/* v2.7.1: portada institucional sin botones de acción y texto institucional simplificado */


/* v2.7.2: identidad superior reforzada */
.site-header .liproes-brand-logo { background: transparent !important; }


/* v2.8.2: Centro Femenino solo texto, lectura amplia y limpia */
.centro-femenino-texto { max-width: 900px; margin: 0 auto; }
.centro-femenino-texto p { margin: 0 0 1.75rem; font-size: 1.125rem; line-height: 1.8; color: #475569; }
.centro-femenino-texto p:last-child { margin-bottom: 0; }
@media (max-width: 640px) { .centro-femenino-texto p { font-size: 1rem; line-height: 1.7; } }


/* v2.8.3: alianzas editables y ampliables */
.liproes-alianza-publica { min-height: 120px; text-decoration: none; }
.liproes-alianza-logo { max-width: 100%; width: 180px; height: 86px; object-fit: contain; }
.liproes-alianza-publica:hover { text-decoration: none; }

/* v2.8.4: pie de página simplificado; se eliminan Enlaces Rápidos y Programas. */


/* v2.8.5: portada de inicio con una única imagen institucional */
.liproes-home-cover {
    width: 100%;
    margin: 0;
    padding: 0;
    line-height: 0;
    overflow: hidden;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
}
.liproes-home-cover-image {
    display: block;
    width: 100%;
    height: auto;
    max-width: 1920px;
    margin: 0 auto;
    object-fit: contain;
    object-position: center center;
}

/* v2.8.7: Noticias editables y portada institucional optimizada para el primer viewport */
.liproes-home-cover {
    min-height: 0;
    max-height: calc(100dvh - 80px);
    height: auto;
}
.liproes-home-cover-image {
    max-height: calc(100dvh - 80px);
}
.liproes-news-card { transition: transform .25s ease, box-shadow .25s ease; }
.liproes-news-card:hover { transform: translateY(-4px); box-shadow: 0 16px 35px rgba(0,33,71,.12); }
.liproes-news-article { color: #334155; font-size: 1.1rem; line-height: 1.8; }
.liproes-news-article h2, .liproes-news-article h3, .liproes-news-article h4 { color: var(--liproes-blue); font-weight: 800; margin: 1.5rem 0 .75rem; }
.liproes-news-article p { margin: 0 0 1.2rem; }
.liproes-news-article img { max-width: 100%; height: auto; border-radius: 12px; }
.liproes-news-article a { color: var(--liproes-blue); text-decoration: underline; }
@media (max-width: 768px) {
    .liproes-home-cover { max-height: none; height: auto; }
    .liproes-home-cover-image { max-height: none; width: 100%; height: auto; }
    .liproes-news-article { font-size: 1rem; line-height: 1.7; }
}
/* Logged-in WordPress toolbar: reserve its height so the cover still fits the viewport. */
.admin-bar .liproes-home-cover {
    max-height: calc(100dvh - 112px);
}
.admin-bar .liproes-home-cover-image {
    max-height: calc(100dvh - 112px);
}
@media (max-width: 782px) {
    .admin-bar .liproes-home-cover,
    .admin-bar .liproes-home-cover-image {
        max-height: none;
    }
}


/* v2.8.8: Quiénes Somos solo texto; se elimina imagen y tarjeta lateral */
.liproes-quienes-solo-texto { width: 100%; }
.liproes-quienes-body { color: #475569; font-size: 1.125rem; line-height: 1.8; }
.liproes-quienes-body p { margin: 0 0 1.5rem; }
.liproes-quienes-body p:last-child { margin-bottom: 0; }
.liproes-quienes-body strong { color: var(--liproes-blue); font-weight: 800; }
@media (max-width: 640px) {
  .liproes-quienes-body { font-size: 1rem; line-height: 1.7; }
}

/* v2.8.8: nombre institucional completo junto al logo */
.liproes-brand-name { max-width: 300px; }


/* v2.8.9: encabezado simplificado — solo logo y navegación con color uniforme */
.liproes-brand-name { display: none !important; }
.site-header .nav-link,
.site-header nav > a,
.site-header nav button.nav-link {
    color: #ffffff !important;
}
.site-header .nav-link:hover,
.site-header nav > a:hover,
.site-header nav button.nav-link:hover {
    color: var(--liproes-gold) !important;
}
.site-header .custom-logo,
.site-header .liproes-brand-logo {
    background: transparent !important;
}


/* v2.8.11: Noticias integrada directamente en el mismo menú, sin icono */
.site-header .nav-link {
    color: #ffffff !important;
    background: transparent !important;
    box-shadow: none !important;
}
.site-header .nav-link:hover,
.site-header .nav-link:focus {
    color: var(--liproes-gold) !important;
    background: transparent !important;
}
.site-header .nav-link i {
    color: inherit !important;
}


/* v2.8.12: encabezado compacto — logo 30% mayor y navegación más próxima al logo */
@media (min-width: 1024px) {
    .liproes-header-inner {
        justify-content: flex-start !important;
    }
    .liproes-header-logo {
        width: 83px !important;
        height: 83px !important;
        max-width: none !important;
    }
    .liproes-main-nav {
        margin-left: 42px !important;
        gap: 2px !important;
    }
    .liproes-main-nav .nav-link {
        white-space: nowrap;
    }
}
@media (max-width: 1023px) {
    .liproes-header-logo {
        width: 72px !important;
        height: 72px !important;
    }
}


/* v2.8.13: galería de hitos con marco y fondo blanco para fotografías históricas */
.liproes-hito-gallery-main { background:#ffffff !important; }
.liproes-hito-gallery-main-image { background:#ffffff !important; }


/* v2.8.14: página independiente "Nuestros Valores" */
.liproes-valor-card {
    border-top-color: var(--liproes-blue);
    min-height: 100%;
}
.liproes-valor-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 14px 30px rgba(0,33,71,.12);
}
@media (min-width: 1024px) {
    #page-nosotros-valores .liproes-valor-card:nth-child(4),
    #page-nosotros-valores .liproes-valor-card:nth-child(5) {
        /* Mantiene una distribución equilibrada cuando hay cinco valores. */
    }
}


/* v2.8.20: mini galería de fotografías para proyectos */
.liproes-proyecto-gallery { background:#fff; }
.liproes-proyecto-card { transition: transform .25s ease, box-shadow .25s ease; }
.liproes-proyecto-card:hover { transform: translateY(-3px); box-shadow: 0 14px 30px rgba(0,33,71,.12); }

/* v2.8.24: proyectos en formato de ficha cronológica + página completa */
.liproes-proyectos-lista { max-width: 1080px; }
.liproes-proyecto-linea {
    display: grid;
    grid-template-columns: 250px minmax(0,1fr);
    gap: 34px;
    padding: 0 0 28px;
    margin: 0 0 28px;
    border-bottom: 1px solid #dfe5ed;
}
.liproes-proyecto-meta { color:#52657d; font-size:15px; padding-top:4px; }
.liproes-proyecto-meta > div { display:flex; align-items:center; gap:12px; margin:0 0 24px; text-transform:uppercase; letter-spacing:.03em; }
.liproes-proyecto-meta-icon { width:28px; font-size:22px; line-height:1; color:#9aa9bd; text-align:center; }
.liproes-proyecto-linea-contenido { border-top:2px solid #6573d7; padding-top:15px; position:relative; }
.liproes-proyecto-categoria { display:block; color:#4b4fc9; font-weight:800; font-size:20px; line-height:1.3; margin-bottom:9px; }
.liproes-proyecto-linea-contenido h3 { margin:0 0 12px; color:#26384a; font-size:20px; font-weight:500; line-height:1.35; }
.liproes-proyecto-responsable { margin:0 0 9px; color:#5c6d80; font-size:15px; }
.liproes-proyecto-resumen { margin:0 0 15px; color:#5c6d80; font-size:18px; line-height:1.6; }
.liproes-proyecto-estado { margin:0 0 14px; color:#66788b; font-size:18px; }
.liproes-proyecto-leer-mas { border:0; background:transparent; color:#4b4fc9; padding:0; font-weight:800; font-size:15px; cursor:pointer; }
.liproes-proyecto-leer-mas:hover { color:var(--liproes-gold,#ffd200); }
.liproes-proyecto-volver { border:0; background:transparent; padding:0; color:#123052; font-weight:700; cursor:pointer; margin-bottom:14px; }
.liproes-proyecto-detalle-meta { display:flex; flex-wrap:wrap; gap:12px 28px; margin-top:14px; color:#5c6d80; font-size:15px; }
.liproes-proyecto-detalle-meta span:last-child { font-weight:700; color:#4b4fc9; }
.liproes-proyecto-detalle-grid { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr); gap:40px; align-items:start; }
.liproes-proyecto-detalle-galeria { background:#fff; border-radius:16px; overflow:hidden; box-shadow:0 8px 25px rgba(0,0,0,.10); border:1px solid #e7ebf0; }
.liproes-proyecto-detalle-texto { background:#fff; border-radius:16px; padding:30px; box-shadow:0 8px 25px rgba(0,0,0,.07); border:1px solid #e7ebf0; color:#34495e; font-size:18px; line-height:1.75; }
.liproes-proyecto-resumen-detalle { font-size:19px; color:#26384a; font-weight:500; margin-bottom:22px; }
.liproes-proyecto-contenido-completo p { margin:0 0 18px; }
.liproes-proyecto-detalle-galeria .liproes-proyecto-gallery-main-image { height:390px; }
@media(max-width:800px){
    .liproes-proyecto-linea { grid-template-columns:1fr; gap:10px; padding-bottom:24px; }
    .liproes-proyecto-meta { display:flex; gap:18px; flex-wrap:wrap; }
    .liproes-proyecto-meta > div { margin:0; }
    .liproes-proyecto-linea-contenido { padding-top:12px; }
    .liproes-proyecto-detalle-grid { grid-template-columns:1fr; }
    .liproes-proyecto-detalle-galeria .liproes-proyecto-gallery-main-image { height:62vw; min-height:240px; }
}


/* v2.8.25: tipografía institucional unificada, lectura amplia y mejor aprovechamiento del ancho */
:root {
    --liproes-text: #26384a;
    --liproes-muted: #52657d;
    --liproes-content-width: 1320px;
}

html, body {
    font-family: 'Inter', 'Segoe UI', Arial, sans-serif !important;
    color: var(--liproes-text);
    font-size: 18px;
}

body {
    line-height: 1.65;
}

/* Evita que los contenidos institucionales queden innecesariamente estrechos. */
.page-section > .max-w-4xl,
.page-section > .max-w-5xl,
.page-section > .max-w-6xl,
.page-section > .max-w-7xl,
.page-section .liproes-quienes-solo-texto,
.page-section .liproes-proyectos-lista {
    width: min(calc(100% - 48px), var(--liproes-content-width)) !important;
    max-width: var(--liproes-content-width) !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Las páginas de texto utilizan mejor el espacio horizontal y generan menos scroll vertical. */
.page-section h2,
.page-section h3,
.page-section h4,
.page-section h5 {
    font-family: 'Montserrat', 'Inter', 'Segoe UI', Arial, sans-serif !important;
    color: var(--liproes-blue) !important;
}

.page-section h2 {
    font-size: clamp(2.25rem, 3.2vw, 3rem) !important;
    line-height: 1.15 !important;
    font-weight: 800 !important;
}

.page-section h3 {
    font-size: clamp(1.65rem, 2.2vw, 2.15rem) !important;
    line-height: 1.25 !important;
    font-weight: 750 !important;
}

.page-section h4 {
    font-size: clamp(1.25rem, 1.7vw, 1.6rem) !important;
    line-height: 1.3 !important;
}

/* Texto editorial: más grande, uniforme y con mejor contraste. */
.page-section p,
.page-section li,
.page-section td,
.page-section th,
.page-section label,
.page-section .text-slate-500,
.page-section .text-slate-600,
.page-section .text-slate-700,
.page-section .text-slate-800 {
    font-family: 'Inter', 'Segoe UI', Arial, sans-serif !important;
}

.page-section p,
.page-section li {
    font-size: 1.12rem;
    line-height: 1.72;
}

.page-section ul,
.page-section ol {
    padding-left: 1.5rem;
}

/* Historia: aprovecha el ancho disponible para reducir el número de líneas. */
#page-nosotros-historia > .max-w-4xl {
    max-width: 1320px !important;
    width: min(calc(100% - 48px), 1320px) !important;
    padding-top: 48px !important;
    padding-bottom: 48px !important;
}

#page-nosotros-historia > .max-w-4xl > p,
#page-nosotros-historia > .max-w-4xl > h2,
#page-nosotros-historia > .max-w-4xl > h3,
#page-nosotros-historia > .max-w-4xl > h4 {
    max-width: 1180px;
}

#page-nosotros-historia > .max-w-4xl p {
    font-size: 1.18rem;
    line-height: 1.72;
    margin-bottom: 1.45rem;
}

/* Quiénes Somos y Centro Femenino: texto ancho sin sacrificar legibilidad. */
#page-nosotros-quienes .liproes-quienes-body,
#page-centro-femenino .centro-femenino-texto,
#page-centro-femenino .space-y-6 {
    max-width: 1180px;
}

#page-nosotros-quienes .liproes-quienes-body,
#page-centro-femenino .space-y-6 {
    font-size: 1.18rem;
    line-height: 1.72;
}

/* Cabeceras de sección más compactas para que el contenido comience antes. */
.page-section > .bg-slate-100 {
    padding-top: 28px !important;
    padding-bottom: 28px !important;
}

.page-section > .bg-slate-100 p {
    font-size: 1.08rem;
    line-height: 1.5;
}

/* Formularios: textos legibles sin agrandar innecesariamente los controles. */
.page-section input,
.page-section select,
.page-section textarea,
.page-section button {
    font-family: 'Inter', 'Segoe UI', Arial, sans-serif;
}

.page-section label {
    font-size: 1rem !important;
}

/* Hitos y proyectos mantienen jerarquía, pero con tipografía coherente. */
.liproes-proyecto-meta,
.liproes-proyecto-responsable,
.liproes-proyecto-detalle-meta {
    font-family: 'Inter', 'Segoe UI', Arial, sans-serif;
}

.liproes-proyecto-resumen,
.liproes-proyecto-estado,
.liproes-proyecto-detalle-texto,
.liproes-proyecto-contenido-completo {
    font-size: 1.08rem;
    line-height: 1.7;
}

/* Evita desplazamiento horizontal accidental en móviles. */
html, body {
    overflow-x: hidden;
}

@media (max-width: 900px) {
    html, body { font-size: 17px; }
    .page-section > .max-w-4xl,
    .page-section > .max-w-5xl,
    .page-section > .max-w-6xl,
    .page-section > .max-w-7xl,
    .page-section .liproes-quienes-solo-texto,
    .page-section .liproes-proyectos-lista {
        width: min(calc(100% - 32px), var(--liproes-content-width)) !important;
    }
    .page-section p,
    .page-section li { font-size: 1.05rem; }
}

@media (max-width: 640px) {
    html, body { font-size: 16px; }
    .page-section > .max-w-4xl,
    .page-section > .max-w-5xl,
    .page-section > .max-w-6xl,
    .page-section > .max-w-7xl,
    .page-section .liproes-quienes-solo-texto,
    .page-section .liproes-proyectos-lista {
        width: calc(100% - 24px) !important;
    }
    .page-section > .bg-slate-100 {
        padding-top: 22px !important;
        padding-bottom: 22px !important;
    }
    .page-section p,
    .page-section li { font-size: 1rem; line-height: 1.65; }
}


/* ==========================================================
   HISTORIA – lectura amplia, Leer más e imágenes ampliables
   ========================================================== */
#page-nosotros-historia .liproes-historia-layout {
    width: min(100% - 56px, 1440px);
    max-width: 1440px;
    margin: 0 auto;
    padding: 48px 0 64px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 56px;
    align-items: start;
}

#page-nosotros-historia .liproes-historia-texto {
    min-width: 0;
    color: #173b67;
    font-family: 'Inter', 'Segoe UI', Arial, sans-serif;
}

#page-nosotros-historia .liproes-historia-texto > p,
#page-nosotros-historia .liproes-historia-texto > h2,
#page-nosotros-historia .liproes-historia-texto > h3,
#page-nosotros-historia .liproes-historia-texto > h4,
#page-nosotros-historia .liproes-historia-texto > ul,
#page-nosotros-historia .liproes-historia-texto > ol {
    max-width: none;
}

#page-nosotros-historia .liproes-historia-texto > p {
    font-size: clamp(1.15rem, 1.05rem + .25vw, 1.35rem);
    line-height: 1.75;
    margin: 0 0 1.45rem;
    text-align: left;
}

#page-nosotros-historia .liproes-historia-texto > p:first-child {
    font-weight: 500;
}

#page-nosotros-historia .liproes-historia-texto .liproes-historia-extra {
    display: none;
}

#page-nosotros-historia .liproes-historia-texto.is-expanded .liproes-historia-extra {
    display: block;
}

#page-nosotros-historia .liproes-historia-leer-mas {
    appearance: none;
    border: 0;
    background: #ffd200;
    color: #062b55;
    font-family: 'Inter', 'Segoe UI', Arial, sans-serif;
    font-size: 1.08rem;
    font-weight: 800;
    line-height: 1;
    padding: 13px 22px;
    border-radius: 999px;
    cursor: pointer;
    box-shadow: 0 4px 12px rgba(0,0,0,.12);
    transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

#page-nosotros-historia .liproes-historia-leer-mas:hover {
    transform: translateY(-1px);
    box-shadow: 0 7px 18px rgba(0,0,0,.16);
    background: #f6c800;
}

#page-nosotros-historia .liproes-historia-gallery {
    display: flex;
    flex-direction: column;
    gap: 28px;
}

#page-nosotros-historia .liproes-historia-gallery figure {
    margin: 0;
    text-align: center;
}

#page-nosotros-historia .liproes-historia-gallery img {
    display: block;
    width: 100%;
    max-width: 360px;
    max-height: 430px;
    object-fit: contain;
    margin: 0 auto;
    padding: 0;
    background: #fff;
    border-radius: 10px;
    box-shadow: 0 8px 24px rgba(6,43,85,.16);
    cursor: zoom-in;
    transition: transform .25s ease, box-shadow .25s ease;
}

#page-nosotros-historia .liproes-historia-gallery img:hover {
    transform: scale(1.025);
    box-shadow: 0 12px 30px rgba(6,43,85,.22);
}

#page-nosotros-historia .liproes-historia-gallery figcaption {
    margin-top: 9px;
    color: #4c6077;
    font-size: .98rem;
    line-height: 1.35;
}

/* Visor de imágenes: permanece dentro de la misma web */
.liproes-image-lightbox {
    position: fixed;
    inset: 0;
    z-index: 999999;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 32px;
    background: rgba(4, 25, 50, .86);
}

.liproes-image-lightbox.is-open { display: flex; }

.liproes-image-lightbox img {
    display: block;
    max-width: min(94vw, 1400px);
    max-height: 90vh;
    width: auto;
    height: auto;
    object-fit: contain;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 18px 60px rgba(0,0,0,.4);
}

.liproes-image-lightbox-close {
    position: absolute;
    top: 18px;
    right: 22px;
    width: 44px;
    height: 44px;
    border: 0;
    border-radius: 50%;
    background: #ffd200;
    color: #062b55;
    font-size: 28px;
    font-weight: 800;
    cursor: pointer;
}

@media (max-width: 900px) {
    #page-nosotros-historia .liproes-historia-layout {
        width: min(100% - 32px, 760px);
        grid-template-columns: 1fr;
        gap: 34px;
        padding-top: 34px;
    }
    #page-nosotros-historia .liproes-historia-gallery {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    #page-nosotros-historia .liproes-historia-gallery img { max-width: 100%; }
}

@media (max-width: 560px) {
    #page-nosotros-historia .liproes-historia-layout { width: min(100% - 24px, 520px); }
    #page-nosotros-historia .liproes-historia-texto > p { font-size: 1.08rem; line-height: 1.65; }
    #page-nosotros-historia .liproes-historia-gallery { grid-template-columns: 1fr; }
    .liproes-image-lightbox { padding: 18px; }
}


/* ==========================================================
   HISTORIA – Corrección visual y funcionamiento v2.8.27
   ========================================================== */
#page-nosotros-historia .liproes-historia-layout {
    width: min(100% - 48px, 1500px) !important;
    max-width: 1500px !important;
    margin: 0 auto !important;
    padding: 42px 0 60px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 320px !important;
    gap: 42px !important;
    align-items: start !important;
}
#page-nosotros-historia .liproes-historia-texto > p,
#page-nosotros-historia .liproes-historia-texto > h2,
#page-nosotros-historia .liproes-historia-texto > h3,
#page-nosotros-historia .liproes-historia-texto > h4 {
    max-width: none !important;
}
#page-nosotros-historia .liproes-historia-texto > p {
    font-size: clamp(1.16rem, 1rem + .3vw, 1.38rem) !important;
    line-height: 1.65 !important;
    margin: 0 0 1.35rem !important;
    color: #173b67 !important;
}
#page-nosotros-historia .liproes-historia-texto .liproes-historia-extra { display:none !important; }
#page-nosotros-historia .liproes-historia-texto.is-expanded .liproes-historia-extra { display:block !important; }
#page-nosotros-historia .liproes-historia-leer-mas {
    display:none;
    align-items:center;
    gap:7px;
    margin-top:4px;
    padding:10px 18px;
    border:0;
    border-radius:8px;
    background:#ffd200;
    color:#062b55;
    font-size:1.05rem;
    font-weight:800;
    cursor:pointer;
    box-shadow:0 3px 10px rgba(0,0,0,.12);
}
#page-nosotros-historia .liproes-historia-leer-mas:hover { background:#f5c900; transform:translateY(-1px); }
#page-nosotros-historia .liproes-historia-gallery {
    display:flex !important;
    flex-direction:column !important;
    gap:26px !important;
}
#page-nosotros-historia .liproes-historia-gallery figure { margin:0 !important; text-align:center !important; }
#page-nosotros-historia .liproes-historia-gallery img {
    width:100% !important;
    max-width:320px !important;
    max-height:380px !important;
    height:auto !important;
    object-fit:contain !important;
    display:block !important;
    margin:0 auto !important;
    padding:8px !important;
    background:#fff !important;
    border-radius:10px !important;
    box-shadow:0 6px 20px rgba(6,43,85,.15) !important;
    cursor:zoom-in !important;
}
#page-nosotros-historia .liproes-historia-gallery figcaption {
    margin-top:8px !important;
    font-size:1rem !important;
    line-height:1.35 !important;
    color:#4c6077 !important;
}
.liproes-image-lightbox.is-open { display:flex !important; }
@media (max-width: 900px) {
    #page-nosotros-historia .liproes-historia-layout {
        grid-template-columns:1fr !important;
        width:min(100% - 28px, 760px) !important;
        gap:30px !important;
    }
    #page-nosotros-historia .liproes-historia-gallery {
        display:grid !important;
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
}
@media (max-width: 560px) {
    #page-nosotros-historia .liproes-historia-gallery { grid-template-columns:1fr !important; }
}


/* ==========================================================
   v2.8.28 – HISTORIA Y CENTRO FEMENINO: lectura progresiva
   ========================================================== */
#page-nosotros-historia .liproes-historia-texto > p {
    margin-bottom: 2rem !important;
}
#page-nosotros-historia .liproes-historia-texto > p + p {
    margin-top: 0.35rem !important;
}
#page-nosotros-historia .liproes-historia-extra {
    display: none !important;
}
#page-nosotros-historia .liproes-historia-texto.is-expanded .liproes-historia-extra {
    display: block !important;
}
#page-nosotros-historia .liproes-historia-leer-mas,
#page-centro-femenino .liproes-centro-leer-mas {
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-top: 10px;
    margin-bottom: 10px;
    padding: 11px 22px;
    border: 0;
    border-radius: 8px;
    background: #FFD200;
    color: #062B55;
    font-size: 1.05rem;
    font-weight: 800;
    line-height: 1.2;
    cursor: pointer;
    box-shadow: 0 3px 10px rgba(0,0,0,.12);
    transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}
#page-nosotros-historia .liproes-historia-leer-mas:hover,
#page-centro-femenino .liproes-centro-leer-mas:hover {
    background: #F5C900;
    transform: translateY(-1px);
    box-shadow: 0 6px 16px rgba(0,0,0,.16);
}

#page-centro-femenino .centro-femenino-texto {
    max-width: 1120px !important;
    margin: 0 auto !important;
    color: #173B67 !important;
}
#page-centro-femenino #liproes-centro-texto {
    display: block;
}
#page-centro-femenino #liproes-centro-texto > p,
#page-centro-femenino #liproes-centro-texto > h4,
#page-centro-femenino #liproes-centro-texto > h5,
#page-centro-femenino #liproes-centro-texto > ul,
#page-centro-femenino #liproes-centro-texto > ol {
    margin-top: 0 !important;
    margin-bottom: 1.9rem !important;
}
#page-centro-femenino #liproes-centro-texto > p {
    font-size: clamp(1.12rem, 1rem + .25vw, 1.3rem) !important;
    line-height: 1.8 !important;
    color: #34495E !important;
}
#page-centro-femenino #liproes-centro-texto .liproes-centro-extra {
    display: none !important;
}
#page-centro-femenino #liproes-centro-texto.is-expanded .liproes-centro-extra {
    display: block !important;
}
#page-centro-femenino .liproes-centro-leer-mas {
    margin-left: 0;
}
@media (max-width: 700px) {
    #page-centro-femenino .centro-femenino-texto { max-width: none !important; }
    #page-centro-femenino #liproes-centro-texto > p {
        font-size: 1.08rem !important;
        line-height: 1.7 !important;
    }
}

/* =========================================================
   FOOTER SIMPLE — MEMBRETE EN UNA SOLA LÍNEA
   Sin logo ni iconos. Mantiene la identidad azul/amarillo.
   ========================================================= */
.liproes-footer-simple {
    width: 100%;
    background: #002b55;
    color: #dbe7f5;
    border-top: 4px solid #ffd400;
    padding: 18px 24px;
    box-sizing: border-box;
}
.liproes-footer-line {
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 10px 8px;
    border-top: 1px solid rgba(93, 154, 214, .34);
    border-bottom: 1px solid rgba(93, 154, 214, .20);
    box-sizing: border-box;
    white-space: nowrap;
    overflow-x: auto;
    scrollbar-width: thin;
    font-size: 15px;
    line-height: 1.5;
    color: #f4f8fc !important;
    letter-spacing: .1px;
}
.liproes-footer-name {
    color: #ffd400 !important;
    font-weight: 800;
}
.liproes-footer-line > span:not(.liproes-footer-name):not(.liproes-footer-separator),
.liproes-footer-line a {
    color: #f4f8fc !important;
    text-decoration: none;
    font-weight: 600;
}
.liproes-footer-line a:hover {
    color: #ffd400;
}
.liproes-footer-separator {
    color: #ffd400;
    font-weight: 700;
}
@media (max-width: 900px) {
    .liproes-footer-simple { padding: 16px 14px; }
    .liproes-footer-line {
        justify-content: flex-start;
        font-size: 13px;
        padding: 9px 6px;
        gap: 9px;
    }
}


/* =========================================================
   v2.8.31 – ENCABEZADO + PORTADA EN UN SOLO PRIMER VIEWPORT
   Logo 20% mayor, menú en mayúsculas y portada completa sin scroll.
   ========================================================= */
@media (min-width: 1024px) {
    .liproes-header-inner {
        height: 96px !important;
        justify-content: flex-start !important;
    }
    .liproes-header-logo {
        width: 100px !important;
        height: 100px !important;
        max-width: 100px !important;
        max-height: 100px !important;
    }
    .liproes-main-nav {
        margin-left: 28px !important;
        gap: 0 !important;
        align-items: center !important;
    }
    .liproes-main-nav .nav-link,
    .liproes-main-nav .nav-link span,
    .liproes-main-nav > a,
    .liproes-main-nav button {
        text-transform: uppercase !important;
        letter-spacing: .15px;
    }
    .liproes-main-nav .nav-link {
        font-size: 0.88rem !important;
        padding-left: 10px !important;
        padding-right: 10px !important;
    }
}

/* La portada usa exactamente el espacio que queda entre encabezado y pie. */
.liproes-home-cover {
    height: calc(100dvh - 96px - 72px) !important;
    min-height: 0 !important;
    max-height: calc(100dvh - 96px - 72px) !important;
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
}
.liproes-home-cover-image {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: contain !important;
    object-position: center center !important;
}

/* Pie compacto para que la portada y el membrete entren en el primer viewport. */
.liproes-footer-simple {
    min-height: 72px !important;
    padding: 8px 18px !important;
    display: flex !important;
    align-items: center !important;
    box-sizing: border-box !important;
}
.liproes-footer-line {
    min-height: 40px !important;
    padding: 7px 8px !important;
    font-size: 14px !important;
    line-height: 1.3 !important;
}

/* Barra de administración de WordPress: reserva su espacio adicional. */
.admin-bar .liproes-home-cover {
    height: calc(100dvh - 128px - 72px) !important;
    max-height: calc(100dvh - 128px - 72px) !important;
}

@media (max-width: 1023px) {
    .liproes-header-inner {
        height: 80px !important;
    }
    .liproes-header-logo {
        width: 82px !important;
        height: 82px !important;
    }
    .liproes-home-cover {
        height: auto !important;
        max-height: none !important;
    }
    .liproes-home-cover-image {
        width: 100% !important;
        height: auto !important;
        max-height: none !important;
    }
    .liproes-footer-simple {
        min-height: auto !important;
    }
    .liproes-footer-line {
        white-space: normal !important;
        overflow-x: visible !important;
        justify-content: center !important;
        text-align: center !important;
        flex-wrap: wrap !important;
    }
}


/* v2.8.34 – Historia: soporte para párrafos anidados y botón Leer más. */
#page-nosotros-historia .liproes-historia-texto .liproes-historia-extra {
    display: none !important;
}
#page-nosotros-historia .liproes-historia-texto.is-expanded .liproes-historia-extra {
    display: block !important;
}


/* v2.8.35 – Control de lectura de Historia: el primer párrafo queda visible y
   el contenido restante permanece oculto hasta pulsar el botón. */
#page-nosotros-historia .liproes-historia-texto .liproes-historia-extra {
    display: none !important;
}
#page-nosotros-historia .liproes-historia-texto.is-expanded .liproes-historia-extra {
    display: block !important;
}
#page-nosotros-historia .liproes-historia-leer-mas {
    display: none;
}


/* v2.8.40: página de Videos inspirada en el diseño clásico de liproes.org */
.liproes-videos-oldstyle {
    background: linear-gradient(135deg, #34448f 0%, #4267aa 100%);
    min-height: 580px;
    display: flex;
    align-items: center;
    color: #fff;
    border-top: 1px solid rgba(255,255,255,.08);
}
.liproes-videos-oldstyle-inner {
    width: min(1180px, calc(100% - 48px));
    margin: 0 auto;
    padding: 72px 0;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(420px, 1fr);
    gap: 64px;
    align-items: center;
}
.liproes-videos-oldstyle-copy h2 {
    margin: 0 0 42px;
    color: #09c5c8;
    font-size: clamp(2rem, 3vw, 2.55rem);
    line-height: 1.08;
    font-weight: 800;
    letter-spacing: -.02em;
}
.liproes-videos-oldstyle-copy p {
    margin: 0;
    max-width: 610px;
    color: #fff;
    font-size: clamp(1.25rem, 2vw, 1.55rem);
    line-height: 1.7;
    font-weight: 500;
}
.liproes-videos-oldstyle-player {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    background: #101827;
    border: 1px solid rgba(0,0,0,.28);
    box-shadow: 0 18px 38px rgba(0,0,0,.24);
    overflow: hidden;
}
.liproes-videos-oldstyle-player video { width:100%; height:100%; display:block; object-fit:cover; background:#000; }
.liproes-oldstyle-video-button, .liproes-oldstyle-placeholder {
    position: relative; width:100%; height:100%; padding:0; border:0; background:#101827; display:block; overflow:hidden;
}
.liproes-oldstyle-video-button { cursor:pointer; }
.liproes-oldstyle-video-button img, .liproes-oldstyle-placeholder img { width:100%; height:100%; object-fit:cover; display:block; }
.liproes-oldstyle-video-button::after { content:""; position:absolute; inset:0; background:rgba(0,0,0,.18); transition:background .2s ease; }
.liproes-oldstyle-video-button:hover::after { background:rgba(0,0,0,.04); }
.liproes-oldstyle-play {
    position:absolute; z-index:2; left:50%; top:50%; transform:translate(-50%,-50%);
    width:72px; height:72px; border-radius:50%; background:#fff; color:#30468e;
    display:flex; align-items:center; justify-content:center; font-size:27px; padding-left:4px;
    box-shadow:0 8px 24px rgba(0,0,0,.28);
}
.liproes-oldstyle-play.is-muted { opacity:.86; }
.liproes-oldstyle-note { position:absolute; z-index:3; left:16px; right:16px; bottom:14px; padding:9px 12px; border-radius:7px; background:rgba(0,0,0,.68); color:#fff; text-align:center; font-size:.8rem; }
.liproes-secondary-video-button { border:0; cursor:pointer; }
.liproes-secondary-video-button .liproes-oldstyle-play { width:58px; height:58px; font-size:21px; }
@media (max-width: 900px) {
    .liproes-videos-oldstyle-inner { grid-template-columns:1fr; gap:34px; padding:52px 0 60px; }
    .liproes-videos-oldstyle-copy h2 { margin-bottom:20px; }
    .liproes-videos-oldstyle-player { max-width:760px; margin:0 auto; }
}
@media (max-width: 640px) {
    .liproes-videos-oldstyle-inner { width:calc(100% - 28px); }
    .liproes-videos-oldstyle-copy p { font-size:1.08rem; line-height:1.65; }
    .liproes-oldstyle-play { width:60px; height:60px; font-size:22px; }
}


/* v2.8.42: Videos — composición horizontal estable y reproductor corregido */
#page-nosotros-videos .liproes-videos-oldstyle {
    width: 100% !important;
    min-height: 0 !important;
    display: block !important;
    background: linear-gradient(135deg, #34448f 0%, #4267aa 100%) !important;
    box-sizing: border-box !important;
}
#page-nosotros-videos .liproes-videos-oldstyle-inner {
    width: min(1180px, calc(100% - 48px)) !important;
    max-width: 1180px !important;
    margin: 0 auto !important;
    padding: 64px 0 !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    gap: 56px !important;
    align-items: center !important;
    box-sizing: border-box !important;
}
#page-nosotros-videos .liproes-videos-oldstyle-copy {
    min-width: 0 !important;
    width: 100% !important;
}
#page-nosotros-videos .liproes-videos-oldstyle-copy h2 {
    margin: 0 0 24px !important;
    color: #09c5c8 !important;
    font-size: clamp(2rem, 3vw, 2.55rem) !important;
    line-height: 1.1 !important;
    font-weight: 800 !important;
}
#page-nosotros-videos .liproes-videos-oldstyle-copy p {
    margin: 0 !important;
    max-width: none !important;
    color: #fff !important;
    font-size: clamp(1.15rem, 1.65vw, 1.45rem) !important;
    line-height: 1.65 !important;
    font-weight: 500 !important;
}
#page-nosotros-videos .liproes-videos-oldstyle-player {
    position: relative !important;
    width: 100% !important;
    max-width: none !important;
    aspect-ratio: 16 / 9 !important;
    height: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    background: #000 !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}
#page-nosotros-videos .liproes-videos-oldstyle-player video {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    object-fit: contain !important;
    background: #000 !important;
}
#page-nosotros-videos .liproes-oldstyle-video-button,
#page-nosotros-videos .liproes-oldstyle-placeholder {
    display: block !important;
    position: relative !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
}
#page-nosotros-videos .liproes-oldstyle-video-button img,
#page-nosotros-videos .liproes-oldstyle-placeholder img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}
@media (max-width: 900px) {
    #page-nosotros-videos .liproes-videos-oldstyle-inner {
        grid-template-columns: 1fr !important;
        gap: 32px !important;
        padding: 48px 0 56px !important;
    }
    #page-nosotros-videos .liproes-videos-oldstyle-player {
        max-width: 760px !important;
        margin: 0 auto !important;
    }
}
@media (max-width: 640px) {
    #page-nosotros-videos .liproes-videos-oldstyle-inner {
        width: calc(100% - 28px) !important;
    }
}

/* v2.8.42: Videos — dos columnas, texto centrado verticalmente y reproducción en la misma página */
#page-nosotros-videos .liproes-videos-oldstyle {
    width: 100% !important;
    min-height: 620px !important;
    display: flex !important;
    align-items: center !important;
    background: linear-gradient(135deg, #34448f 0%, #4267aa 100%) !important;
    box-sizing: border-box !important;
}
#page-nosotros-videos .liproes-videos-oldstyle-inner {
    width: min(1180px, calc(100% - 64px)) !important;
    max-width: 1180px !important;
    margin: 0 auto !important;
    padding: 72px 0 !important;
    display: grid !important;
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr) !important;
    gap: 64px !important;
    align-items: center !important;
    box-sizing: border-box !important;
}
#page-nosotros-videos .liproes-videos-oldstyle-copy {
    min-width: 0 !important;
    width: 100% !important;
    align-self: center !important;
}
#page-nosotros-videos .liproes-videos-oldstyle-copy h2 {
    margin: 0 0 24px !important;
    color: #fff !important;
    font-size: clamp(2.1rem, 3.2vw, 3rem) !important;
    line-height: 1.08 !important;
    font-weight: 800 !important;
}
#page-nosotros-videos .liproes-videos-oldstyle-copy p {
    margin: 0 !important;
    max-width: 560px !important;
    color: #fff !important;
    font-size: clamp(1.15rem, 1.65vw, 1.45rem) !important;
    line-height: 1.65 !important;
    font-weight: 500 !important;
}
#page-nosotros-videos .liproes-videos-oldstyle-player {
    position: relative !important;
    width: 100% !important;
    max-width: none !important;
    aspect-ratio: 16 / 9 !important;
    height: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    background: #000 !important;
    border: 1px solid rgba(0,0,0,.3) !important;
    box-shadow: 0 18px 38px rgba(0,0,0,.24) !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
    align-self: center !important;
}
#page-nosotros-videos .liproes-videos-oldstyle-player video,
#page-nosotros-videos .liproes-featured-video-frame {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    border: 0 !important;
    object-fit: contain !important;
    background: #000 !important;
}
#page-nosotros-videos .liproes-featured-video-frame { position:absolute !important; inset:0 !important; }
@media (max-width: 900px) {
    #page-nosotros-videos .liproes-videos-oldstyle { min-height: 0 !important; }
    #page-nosotros-videos .liproes-videos-oldstyle-inner {
        grid-template-columns: 1fr !important;
        gap: 36px !important;
        padding: 52px 0 60px !important;
    }
    #page-nosotros-videos .liproes-videos-oldstyle-copy p { max-width: none !important; }
    #page-nosotros-videos .liproes-videos-oldstyle-player { max-width: 820px !important; margin: 0 auto !important; }
}
@media (max-width: 640px) {
    #page-nosotros-videos .liproes-videos-oldstyle-inner { width: calc(100% - 28px) !important; }
}

/* v2.8.43: Videos — composición horizontal 2 columnas y reproductor 400x400 */
#page-nosotros-videos .liproes-videos-oldstyle {
    min-height: 560px !important;
    display: flex !important;
    align-items: center !important;
}
#page-nosotros-videos .liproes-videos-oldstyle-inner {
    width: min(1120px, calc(100% - 64px)) !important;
    max-width: 1120px !important;
    margin: 0 auto !important;
    padding: 60px 0 !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 400px !important;
    gap: 72px !important;
    align-items: center !important;
}
#page-nosotros-videos .liproes-videos-oldstyle-copy {
    width: 100% !important;
    min-width: 0 !important;
    align-self: center !important;
}
#page-nosotros-videos .liproes-videos-oldstyle-copy h2 {
    margin: 0 0 18px !important;
    font-size: 42px !important;
    line-height: 1.12 !important;
    font-weight: 800 !important;
}
#page-nosotros-videos .liproes-videos-oldstyle-copy p {
    margin: 0 !important;
    max-width: 620px !important;
    font-size: 20px !important;
    line-height: 1.55 !important;
}
#page-nosotros-videos .liproes-videos-oldstyle-player {
    width: 400px !important;
    height: 400px !important;
    max-width: 400px !important;
    aspect-ratio: auto !important;
    margin: 0 !important;
    justify-self: end !important;
    align-self: center !important;
}
#page-nosotros-videos .liproes-videos-oldstyle-player video,
#page-nosotros-videos .liproes-videos-oldstyle-player iframe,
#page-nosotros-videos .liproes-featured-video-frame {
    width: 400px !important;
    height: 400px !important;
    max-width: 400px !important;
    max-height: 400px !important;
}
#page-nosotros-videos .liproes-videos-oldstyle-player video {
    object-fit: contain !important;
}
@media (max-width: 900px) {
    #page-nosotros-videos .liproes-videos-oldstyle-inner {
        grid-template-columns: 1fr !important;
        gap: 36px !important;
        width: min(680px, calc(100% - 40px)) !important;
        padding: 48px 0 56px !important;
    }
    #page-nosotros-videos .liproes-videos-oldstyle-copy h2 {
        font-size: 38px !important;
    }
    #page-nosotros-videos .liproes-videos-oldstyle-player {
        width: min(400px, 100%) !important;
        height: min(400px, 100vw - 40px) !important;
        max-width: 400px !important;
        justify-self: center !important;
    }
    #page-nosotros-videos .liproes-videos-oldstyle-player video,
    #page-nosotros-videos .liproes-videos-oldstyle-player iframe,
    #page-nosotros-videos .liproes-featured-video-frame {
        width: 100% !important;
        height: 100% !important;
        max-width: 400px !important;
        max-height: 400px !important;
    }
}
@media (max-width: 640px) {
    #page-nosotros-videos .liproes-videos-oldstyle-inner {
        width: calc(100% - 28px) !important;
    }
    #page-nosotros-videos .liproes-videos-oldstyle-copy h2 {
        font-size: 32px !important;
    }
    #page-nosotros-videos .liproes-videos-oldstyle-copy p {
        font-size: 18px !important;
    }
}

/* v2.8.44: Nuestros Valores — descripciones desplegables, conservando tarjetas y distribución */
#page-nosotros-valores .liproes-valor-collapsible {
    position: relative !important;
    cursor: default !important;
}
#page-nosotros-valores .liproes-valor-heading-row {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 18px !important;
}
#page-nosotros-valores .liproes-valor-heading-row h3 {
    flex: 1 1 auto !important;
}
#page-nosotros-valores .liproes-valor-toggle {
    flex: 0 0 auto !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    border: 0 !important;
    background: transparent !important;
    color: #082d57 !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    padding: 8px 4px !important;
    cursor: pointer !important;
    transition: color .2s ease, transform .2s ease !important;
}
#page-nosotros-valores .liproes-valor-toggle:hover {
    color: #e0ae00 !important;
}
#page-nosotros-valores .liproes-valor-toggle i {
    font-size: 13px !important;
    transition: transform .2s ease !important;
}
#page-nosotros-valores .liproes-valor-collapsible.is-open .liproes-valor-toggle {
    color: #082d57 !important;
}
#page-nosotros-valores .liproes-valor-body {
    margin-top: 20px !important;
    padding-top: 18px !important;
    border-top: 1px solid rgba(8,45,87,.12) !important;
    animation: liproesValorOpen .22s ease-out !important;
}
#page-nosotros-valores .liproes-valor-body p {
    margin: 0 !important;
}
@keyframes liproesValorOpen {
    from { opacity: 0; transform: translateY(-5px); }
    to { opacity: 1; transform: translateY(0); }
}
@media (max-width: 640px) {
    #page-nosotros-valores .liproes-valor-heading-row {
        align-items: flex-start !important;
        flex-direction: column !important;
        gap: 8px !important;
    }
    #page-nosotros-valores .liproes-valor-toggle {
        padding-left: 0 !important;
    }
}

/* v2.8.45: activación real de los desplegables de Valores */
#page-nosotros-valores .liproes-valor-collapsible .liproes-valor-body[hidden] { display: none !important; }
#page-nosotros-valores .liproes-valor-collapsible .liproes-valor-body:not([hidden]) { display: block !important; }
#page-nosotros-valores .liproes-valor-toggle { min-width: 110px; justify-content: flex-end; white-space: nowrap; }

/* ==========================================================
   HISTORIA – texto + galería lateral ampliable (v2.8.48)
   ========================================================== */
#page-nosotros-historia .liproes-historia-layout {
    width: min(100% - 48px, 1280px) !important;
    margin: 0 auto !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 320px !important;
    gap: 48px !important;
    align-items: start !important;
    padding: 44px 0 70px !important;
}
#page-nosotros-historia .liproes-historia-texto {
    min-width: 0 !important;
}
#page-nosotros-historia .liproes-historia-texto > p {
    font-size: 1.08rem !important;
    line-height: 1.72 !important;
    margin: 0 0 20px !important;
    color: #173b67 !important;
}
#page-nosotros-historia .liproes-historia-extra { display:none !important; }
#page-nosotros-historia .liproes-historia-texto.is-expanded .liproes-historia-extra { display:block !important; }
#page-nosotros-historia .liproes-historia-leer-mas {
    display: none;
    align-items:center;
    gap:8px;
    margin-top:4px;
    padding:10px 18px;
    border:0;
    border-radius:8px;
    background:#ffd200;
    color:#062b55;
    font-size:1rem;
    font-weight:800;
    cursor:pointer;
    box-shadow:0 3px 10px rgba(0,0,0,.12);
}
#page-nosotros-historia .liproes-historia-gallery {
    display:flex !important;
    flex-direction:column !important;
    gap:24px !important;
}
#page-nosotros-historia .liproes-historia-gallery figure { margin:0 !important; }
#page-nosotros-historia .liproes-historia-gallery img {
    width:100% !important;
    max-width:320px !important;
    height:auto !important;
    max-height:360px !important;
    object-fit:contain !important;
    display:block !important;
    margin:0 auto !important;
    padding:7px !important;
    background:#fff !important;
    border-radius:10px !important;
    box-shadow:0 6px 20px rgba(6,43,85,.15) !important;
    cursor:zoom-in !important;
}
#page-nosotros-historia .liproes-historia-gallery figcaption {
    margin:8px auto 0 !important;
    max-width:320px !important;
    text-align:center !important;
    font-size:.9rem !important;
    line-height:1.35 !important;
    color:#4c6077 !important;
}
#page-nosotros-historia .liproes-image-lightbox {
    position:fixed !important;
    inset:0 !important;
    z-index:99999 !important;
    display:none !important;
    align-items:center !important;
    justify-content:center !important;
    padding:30px !important;
    background:rgba(4,17,34,.92) !important;
}
#page-nosotros-historia .liproes-image-lightbox.is-open { display:flex !important; }
#page-nosotros-historia .liproes-image-lightbox img {
    max-width:92vw !important;
    max-height:88vh !important;
    width:auto !important;
    height:auto !important;
    object-fit:contain !important;
    background:#fff !important;
    border-radius:8px !important;
    box-shadow:0 20px 70px rgba(0,0,0,.45) !important;
}
#page-nosotros-historia .liproes-image-lightbox-close {
    position:absolute !important;
    top:18px !important;
    right:22px !important;
    width:44px !important;
    height:44px !important;
    border:0 !important;
    border-radius:50% !important;
    background:#ffd200 !important;
    color:#062b55 !important;
    font-size:30px !important;
    line-height:1 !important;
    cursor:pointer !important;
}
@media (max-width:900px){
  #page-nosotros-historia .liproes-historia-layout{grid-template-columns:1fr !important;width:min(100% - 28px,760px) !important;gap:30px !important;}
  #page-nosotros-historia .liproes-historia-gallery{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}
@media (max-width:560px){
  #page-nosotros-historia .liproes-historia-gallery{grid-template-columns:1fr !important;}
}


/* ==========================================================
   v2.8.49 – TÍTULOS MÁS EQUILIBRADOS + LEER MÁS CENTRO FEMENINO
   ========================================================== */
/* Reduce en 20% los títulos principales de todas las páginas. */
.page-section h2 {
    font-size: clamp(1.8rem, 2.56vw, 2.4rem) !important;
    line-height: 1.15 !important;
}

/* Botón compacto para Centro Femenino. */
#page-centro-femenino .liproes-centro-leer-mas {
    display: none;
    width: auto !important;
    min-width: 0 !important;
    padding: 7px 13px !important;
    margin: 4px 0 12px !important;
    border-radius: 6px !important;
    font-size: .86rem !important;
    line-height: 1.1 !important;
    font-weight: 800 !important;
    box-shadow: 0 2px 7px rgba(0,0,0,.10) !important;
}
#page-centro-femenino .liproes-centro-leer-mas:hover {
    transform: translateY(-1px);
    box-shadow: 0 4px 10px rgba(0,0,0,.14) !important;
}

/* El primer párrafo queda claramente separado del contenido desplegable. */
#page-centro-femenino #liproes-centro-texto > p:first-child {
    margin-bottom: 1.25rem !important;
}

/* Mantiene los subtítulos de página proporcionados en móvil. */
@media (max-width: 700px) {
    .page-section h2 {
        font-size: clamp(1.65rem, 7vw, 2rem) !important;
    }
}

/* v2.8.52 – Video institucional: reproductor directo, completo y responsive */
#page-nosotros-videos .liproes-videos-oldstyle-player {
    width: min(100%, 720px) !important;
    max-width: 720px !important;
    height: auto !important;
    aspect-ratio: 16 / 9 !important;
    justify-self: end !important;
    align-self: center !important;
    overflow: hidden !important;
    position: relative !important;
}
#page-nosotros-videos .liproes-videos-oldstyle-player video,
#page-nosotros-videos .liproes-videos-oldstyle-player iframe,
#page-nosotros-videos .liproes-featured-video-frame {
    display: block !important;
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    border: 0 !important;
}
#page-nosotros-videos .liproes-videos-oldstyle-player video {
    object-fit: contain !important;
    background: #000 !important;
}
@media (max-width: 900px) {
    #page-nosotros-videos .liproes-videos-oldstyle-player {
        width: min(100%, 720px) !important;
        max-width: 720px !important;
        aspect-ratio: 16 / 9 !important;
        height: auto !important;
        justify-self: center !important;
    }
}
@media (max-width: 640px) {
    #page-nosotros-videos .liproes-videos-oldstyle-player {
        width: 100% !important;
        max-width: 100% !important;
    }
}
