/* ==========================================================================
   SINASSC 728 - Sistema de Diseño Institucional Moderno (Estándar 2026)
   ========================================================================== */

:root {
    --primary-blue: #0A2540;
    --primary-dark: #001E3D;
    --primary-light: #1E3A8A;
    --accent-blue: #2B9BFF;
    --accent-blue-hover: #1D80E0;
    --bg-soft: #F8FAFC;
    --surface-white: #FFFFFF;
    --text-primary: #d0e912;
    --text-muted: #475569;
    --text-light: #94A3B8;
    --border-color: #E2E8F0;
    --card-shadow: 0 10px 25px -5px rgba(15, 23, 42, 0.05), 0 8px 10px -6px rgba(15, 23, 42, 0.05);
    --card-hover-shadow: 0 20px 35px -10px rgba(10, 37, 64, 0.12), 0 10px 15px -5px rgba(43, 155, 255, 0.15);
    --radius-sm: 8px;
    --radius-md: 12px;
    --radius-lg: 20px;
    --radius-pill: 50px;
    --transition-fast: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}

body {
    font-family: 'Inter', 'Poppins', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
    color: var(--text-primary) !important;
    background-color: var(--bg-soft) !important;
    overflow-x: hidden;
}

/* Typography Overrides */
h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: 'Poppins', 'Inter', sans-serif !important;
    color: var(--primary-blue);
    letter-spacing: -0.02em;
}

.text-accent {
    color: var(--accent-blue) !important;
}

/* Header & Navbar Modernization - Superpuesto dentro del Slider */
.main-header.header-style-one {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    z-index: 9999 !important;
    background: transparent !important;
    box-shadow: none !important;
    transition: all 0.3s ease;
}

/* ==========================================================================
   Header Sticky / Fijado Dinámico al desplazarse (Scroll)
   ========================================================================== */
.main-header.header-style-one.fixed-header,
.main-header.fixed-header {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    z-index: 999999 !important;
    background: transparent !important;
    box-shadow: none !important;
    pointer-events: auto !important;
    visibility: visible !important;
    opacity: 1 !important;
}

.main-header.fixed-header .header-top {
    display: none !important;
    max-height: 0 !important;
    opacity: 0 !important;
    padding: 0 !important;
    border: none !important;
    overflow: hidden !important;
}

.main-header.fixed-header .header-upper {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    background: rgba(6, 18, 33, 0.96) !important;
    backdrop-filter: blur(16px) !important;
    -webkit-backdrop-filter: blur(16px) !important;
    padding: 8px 0 !important;
    border-bottom: 1px solid rgba(43, 155, 255, 0.28) !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.45), 0 0 15px rgba(43, 155, 255, 0.15) !important;
    animation: stickyNavSlide 0.35s cubic-bezier(0.16, 1, 0.3, 1) forwards !important;
    pointer-events: auto !important;
}

.main-header.fixed-header .header-upper .logo-box .logo img {
    max-height: 48px !important;
    transition: max-height 0.25s ease !important;
}

/* Submenús Desplegables Institucionales (Fondo Blanco Pulcro y Elegante 2026) */
.main-header .main-menu .navigation>li>ul,
.main-header.fixed-header .main-menu .navigation>li>ul,
.main-menu .navigation>li>ul,
.main-menu .navigation>li.dropdown>ul {
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    background: #FFFFFF !important;
    min-width: 280px !important;
    padding: 10px 8px !important;
    border-radius: 14px !important;
    border: 1px solid rgba(0, 45, 90, 0.12) !important;
    border-top: 3.5px solid #2B9BFF !important;
    box-shadow: 0 16px 40px rgba(0, 20, 50, 0.18), 0 5px 15px rgba(0, 0, 0, 0.08) !important;
    z-index: 1000000 !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    list-style: none !important;
    margin: 0 !important;
    opacity: 0 !important;
    visibility: hidden !important;
    transform: translateY(10px) !important;
    transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.main-menu .navigation>li.dropdown:hover>ul,
.main-header.fixed-header .main-menu .navigation>li.dropdown:hover>ul,
.main-header .main-menu .navigation>li.dropdown:hover>ul {
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateY(0) !important;
    display: block !important;
}

.main-header .main-menu .navigation>li>ul>li,
.main-header.fixed-header .main-menu .navigation>li>ul>li,
.main-menu .navigation>li>ul>li,
.main-menu .navigation>li.dropdown>ul>li {
    background: transparent !important;
    border-bottom: 1px solid #F1F5F9 !important;
    padding: 2px 0 !important;
    margin: 0 !important;
    width: 100% !important;
    display: block !important;
}

.main-header .main-menu .navigation>li>ul>li:last-child,
.main-header.fixed-header .main-menu .navigation>li>ul>li:last-child,
.main-menu .navigation>li>ul>li:last-child,
.main-menu .navigation>li.dropdown>ul>li:last-child {
    border-bottom: none !important;
}

.main-header .main-menu .navigation>li>ul>li>a,
.main-header.fixed-header .main-menu .navigation>li>ul>li>a,
.main-menu .navigation>li>ul>li>a,
.main-menu .navigation>li.dropdown>ul>li>a {
    font-family: 'Poppins', sans-serif !important;
    font-size: 14.5px !important;
    font-weight: 600 !important;
    line-height: 22px !important;
    color: #0A2540 !important;
    padding: 10px 14px !important;
    border-radius: 8px !important;
    text-decoration: none !important;
    text-shadow: none !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
    background: transparent !important;
}

.main-header .main-menu .navigation>li>ul>li>a i,
.main-header.fixed-header .main-menu .navigation>li>ul>li>a i,
.main-menu .navigation>li>ul>li>a i,
.main-menu .navigation>li.dropdown>ul>li>a i {
    color: #2B9BFF !important;
    font-size: 15px !important;
    width: 22px !important;
    text-align: center !important;
    display: inline-block !important;
    transition: transform 0.25s ease !important;
}

.main-header .main-menu .navigation>li>ul>li:hover>a,
.main-header.fixed-header .main-menu .navigation>li>ul>li:hover>a,
.main-menu .navigation>li>ul>li:hover>a,
.main-menu .navigation>li.dropdown>ul>li:hover>a {
    background: rgba(43, 155, 255, 0.10) !important;
    color: #0066CC !important;
    padding-left: 18px !important;
}

.main-header .main-menu .navigation>li>ul>li:hover>a i,
.main-header.fixed-header .main-menu .navigation>li>ul>li:hover>a i,
.main-menu .navigation>li>ul>li:hover>a i,
.main-menu .navigation>li.dropdown>ul>li:hover>a i {
    color: #0066CC !important;
    transform: scale(1.15) !important;
}

.main-header .main-menu .navigation>li>ul>li.current>a,
.main-header.fixed-header .main-menu .navigation>li>ul>li.current>a,
.main-menu .navigation>li>ul>li.current>a,
.main-menu .navigation>li.dropdown>ul>li.current>a {
    background: rgba(43, 155, 255, 0.14) !important;
    color: #0066CC !important;
    font-weight: 700 !important;
}

@keyframes stickyNavSlide {
    0% {
        transform: translateY(-100%);
        opacity: 0;
    }

    100% {
        transform: translateY(0);
        opacity: 1;
    }
}

.header-top {
    background: rgba(0, 15, 35, 0.78) !important;
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
    color: rgba(255, 255, 255, 0.9) !important;
    padding: 7px 0 !important;
    font-size: 13px !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
    transition: all 0.3s ease !important;
}

.header-top a {
    color: rgba(255, 255, 255, 0.9) !important;
    transition: var(--transition-fast) !important;
}

.header-top a:hover {
    color: var(--accent-blue) !important;
}

.header-upper {
    background: rgba(0, 15, 35, 0.70) !important;
    backdrop-filter: blur(10px) !important;
    -webkit-backdrop-filter: blur(10px) !important;
    padding: 10px 0 !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.12) !important;
    box-shadow: 0 4px 25px rgba(0, 0, 0, 0.25) !important;
    transition: all 0.3s ease !important;
}

.main-header .header-upper .inner-container {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    flex-wrap: nowrap !important;
    gap: 15px !important;
}

.main-header .header-upper .logo-box {
    flex-shrink: 0 !important;
    display: flex !important;
    align-items: center !important;
    margin: 0 !important;
}

.main-header .header-upper .logo-box .logo img {
    max-height: 56px !important;
    width: auto !important;
    object-fit: contain !important;
}

.main-header .header-upper .right-column {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    flex-grow: 1 !important;
    flex-wrap: nowrap !important;
}

.main-menu {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    float: none !important;
    margin: 0 !important;
}

.main-menu .navbar-collapse {
    display: flex !important;
    align-items: center !important;
    padding: 0 !important;
    flex-wrap: nowrap !important;
}

.main-menu .navigation {
    position: relative !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    list-style: none !important;
    gap: 2px !important;
}

.main-menu .navigation>li {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    float: none !important;
    margin: 0 !important;
    list-style: none !important;
    flex-shrink: 0 !important;
}

/* Eliminación total de corchetes [, ], carets y subrayados del menú */
.main-menu .navigation>li:before,
.main-menu .navigation>li:after,
.main-menu .navigation>li>a:before,
.main-menu .navigation>li>a:after,
.main-menu .navigation>li.current:before,
.main-menu .navigation>li.current:after,
.main-menu .navigation>li.current>a:before,
.main-menu .navigation>li.current>a:after,
.main-menu .navigation>li:hover:before,
.main-menu .navigation>li:hover:after,
.main-menu .navigation>li:hover>a:before,
.main-menu .navigation>li:hover>a:after {
    display: none !important;
    content: "" !important;
    opacity: 0 !important;
    visibility: hidden !important;
    border: none !important;
    text-decoration: none !important;
}

.main-menu .navigation>li>a {
    font-family: 'Poppins', 'Inter', sans-serif !important;
    font-weight: 600 !important;
    color: #FFFFFF !important;
    font-size: 14.5px !important;
    padding: 8px 12px !important;
    border-radius: 8px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    white-space: nowrap !important;
    text-decoration: none !important;
    text-shadow: 0 1px 4px rgba(0, 0, 0, 0.8) !important;
    transition: all 0.25s ease !important;
    opacity: 1 !important;
    visibility: visible !important;
    border: 1px solid transparent !important;
}

/* Opción activa por defecto */
.main-menu .navigation>li.current>a {
    color: #2B9BFF !important;
    background: rgba(43, 155, 255, 0.2) !important;
    border: 1px solid rgba(43, 155, 255, 0.4) !important;
    text-decoration: none !important;
}

/* Al explorar el menú, la opción activa cede el resalte a la opción apuntada */
.main-menu .navigation:hover>li.current:not(:hover)>a {
    color: #FFFFFF !important;
    background: transparent !important;
    border: 1px solid transparent !important;
    box-shadow: none !important;
    transform: none !important;
}

/* Resalte Azul Moderno Luminoso al pasar el cursor sobre cualquier opción */
.main-menu .navigation>li:hover>a,
.main-menu .navigation>li>a:hover {
    color: #2B9BFF !important;
    background: rgba(43, 155, 255, 0.28) !important;
    border: 1px solid rgba(43, 155, 255, 0.6) !important;
    box-shadow: 0 4px 15px rgba(43, 155, 255, 0.35) !important;
    transform: translateY(-1.5px) !important;
    text-decoration: none !important;
}

/* Botón CTA Intranet */

.btn-intranet-cta {
    background: linear-gradient(135deg, #2B9BFF 0%, #1D80E0 100%) !important;
    color: #FFFFFF !important;
    padding: 8px 18px !important;
    border-radius: var(--radius-pill) !important;
    font-weight: 700 !important;
    font-size: 13.5px !important;
    box-shadow: 0 4px 15px rgba(43, 155, 255, 0.4) !important;
    transition: var(--transition-fast) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: none !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    height: 38px !important;
    margin-left: 6px !important;
    flex-shrink: 0 !important;
}

.btn-intranet-cta:hover {
    background: linear-gradient(135deg, #1D80E0 0%, #2B9BFF 100%) !important;
    color: #FFFFFF !important;
    box-shadow: 0 6px 22px rgba(43, 155, 255, 0.6) !important;
    transform: translateY(-2px) !important;
}

/* Section Titles */
.sec-title-modern {
    margin-bottom: 40px;
}

.sec-title-modern .sub-title {
    font-size: 11.5px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    color: var(--accent-blue);
    background: rgba(43, 155, 255, 0.1);
    padding: 6px 16px;
    border-radius: var(--radius-pill);
    display: inline-block;
    margin-bottom: 12px;
}

.sec-title-modern h2 {
    font-size: 32px;
    font-weight: 800;
    color: var(--primary-blue);
    margin-bottom: 10px;
}

.sec-title-modern p {
    color: var(--text-muted);
    font-size: 16px;
    max-width: 650px;
    margin: 0 auto;
}

/* Animaciones de Caída Suave para el Modal Institucional */
@keyframes modalSlideDown {
    0% {
        opacity: 0;
        transform: translateY(-80px) scale(0.96);
    }

    100% {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

@keyframes modalSlideUp {
    0% {
        opacity: 1;
        transform: translateY(0) scale(1);
    }

    100% {
        opacity: 0;
        transform: translateY(-60px) scale(0.96);
    }
}

.banner-slide-bg-img {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    z-index: 0 !important;
    pointer-events: none !important;
}

.banner-section .content-outer {
    position: relative !important;
    z-index: 5 !important;
    width: 100% !important;
    text-align: center !important;
}

.banner-section .content-box {
    padding: 0 15px !important;
    min-height: auto !important;
    max-width: 880px !important;
    margin: 0 auto !important;
    opacity: 1 !important;
    transform: none !important;
    visibility: visible !important;
    text-align: center !important;
}

.banner-section h4,
.banner-section .slider-badge,
.banner-section .hero-badge {
    color: var(--accent-blue) !important;
    font-weight: 700 !important;
    letter-spacing: 1px !important;
    font-size: 13px !important;
    margin: 0 auto 8px auto !important;
    text-transform: uppercase !important;
    text-shadow: none !important;
    line-height: 1.4 !important;
    text-align: center !important;
    align-self: center !important;
}

.banner-section h1 {
    color: #FFFFFF !important;
    font-weight: 800 !important;
    font-size: 36px !important;
    line-height: 1.2 !important;
    margin: 0 auto 8px auto !important;
    text-shadow: 0 4px 18px rgba(0, 0, 0, 0.6) !important;
    text-align: center !important;
}

.banner-section .text,
.banner-section p {
    color: rgba(255, 255, 255, 0.92) !important;
    font-size: 15px !important;
    max-width: 760px !important;
    margin: 0 auto 16px auto !important;
    line-height: 1.5 !important;
    text-align: center !important;
}

/* ==========================================================================
   Contenedor Principal Panorámico Institucional (Expansión Widescreen 1420px)
   Eliminación del exceso de espacio en blanco lateral
   ========================================================================== */
.auto-container {
    position: static !important;
    max-width: 1420px !important;
    padding: 0 clamp(16px, 3.2vw, 36px) !important;
    margin: 0 auto !important;
    width: 100% !important;
}

.page-wrapper {
    position: relative !important;
    z-index: auto !important;
}

/* Títulos de Sección Institucionales Modernos */
.sec-title-modern {
    margin-bottom: 38px;
}

.sec-title-modern .sub-title {
    font-size: 11.5px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.4px;
    color: var(--accent-blue);
    background: rgba(43, 155, 255, 0.12);
    border: 1px solid rgba(43, 155, 255, 0.25);
    padding: 6px 18px;
    border-radius: var(--radius-pill);
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 12px;
}

.sec-title-modern h2 {
    font-size: 34px;
    font-weight: 800;
    color: var(--primary-blue);
    margin-bottom: 10px;
    line-height: 1.25;
}

.sec-title-modern p {
    color: var(--text-muted);
    font-size: 16px;
    max-width: 760px;
    margin: 0 auto;
    line-height: 1.6;
}

/* ==========================================================================
   2. MESA DE PARTES & TRÁMITES VIRTUALES (Barra Flotante Glassmorphic 2026)
   ========================================================================== */
.mesadepartes-bar {
    background: linear-gradient(135deg, #071C36 0%, #0D2D52 50%, #06182E 100%);
    padding: 26px 32px;
    border-radius: 22px;
    border: 1.5px solid rgba(43, 155, 255, 0.32);
    box-shadow: 0 20px 45px rgba(0, 20, 45, 0.35), 0 0 25px rgba(43, 155, 255, 0.15);
    margin-top: -36px;
    position: relative;
    z-index: 20;
    transition: var(--transition-fast);
}

.mesadepartes-bar-x {
 
    box-shadow: 0 30px 55px rgba(79, 80, 81, 0.35), 0 0 25px rgba(46, 46, 46, 0.15);
    margin-top: -36px;
    position: relative;
    z-index: 20;
    transition: var(--transition-fast);
}

.mesadepartes-bar:hover {
    box-shadow: 0 25px 55px rgba(0, 20, 45, 0.45), 0 0 35px rgba(43, 155, 255, 0.25);
    border-color: rgba(43, 155, 255, 0.5);
}

.mesadepartes-icon-badge {
    width: 64px;
    height: 64px;
    border-radius: 18px;
    background: linear-gradient(135deg, rgba(43, 155, 255, 0.25) 0%, rgba(13, 88, 205, 0.35) 100%);
    border: 1.5px solid rgba(43, 155, 255, 0.5);
    color: #00F0FF;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 28px;
    box-shadow: 0 8px 20px rgba(43, 155, 255, 0.3);
    flex-shrink: 0;
}

.btn-tramite-pill {
    background: #FFFFFF;
    color: #0A2540 !important;
    padding: 13px 26px;
    border-radius: 50px;
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 14.5px;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.15);
    border: 2px solid transparent;
    transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
    text-decoration: none !important;
    white-space: nowrap;
}

.btn-tramite-pill:hover {
    background: linear-gradient(135deg, #2B9BFF 0%, #0066CC 100%);
    color: #FFFFFF !important;
    transform: translateY(-3px);
    box-shadow: 0 10px 25px rgba(43, 155, 255, 0.5);
}

.btn-tramite-pill:hover i {
    color: #FFFFFF !important;
}

.btn-tramite-pill-secondary {
    background: rgba(255, 255, 255, 0.12);
    color: #FFFFFF !important;
    border: 1.5px solid rgba(255, 255, 255, 0.35);
    backdrop-filter: blur(8px);
}

.btn-tramite-pill-secondary:hover {
    background: #FFFFFF;
    color: #0A2540 !important;
    border-color: #FFFFFF;
    transform: translateY(-3px);
    box-shadow: 0 10px 25px rgba(255, 255, 255, 0.25);
}

.btn-tramite-pill-secondary:hover i {
    color: #2B9BFF !important;
}

/* ==========================================================================
   3. ACCESOS RÁPIDOS (Grid Dinámico 6 Columnas con Acabado Interactivo)
   ========================================================================== */
.quick-access-grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 18px;
    width: 100%;
}

@media (max-width: 1199.98px) {
    .quick-access-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 16px;
    }
}

@media (max-width: 575.98px) {
    .quick-access-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 12px;
    }
}

.quick-access-card {
    background: #FFFFFF;
    border-radius: 18px;
    padding: 26px 16px 22px 16px;
    text-align: center;
    border: 1.5px solid #E2E8F0;
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.04);
    transition: all 0.28s cubic-bezier(0.16, 1, 0.3, 1);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 100%;
    text-decoration: none !important;
    position: relative;
    overflow: hidden;
}

.quick-access-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 4px;
    background: linear-gradient(90deg, #0A2540 0%, #2B9BFF 100%);
    opacity: 0;
    transition: all 0.25s ease;
}

.quick-access-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 18px 36px rgba(10, 37, 64, 0.12), 0 0 20px rgba(43, 155, 255, 0.15);
    border-color: rgba(43, 155, 255, 0.4);
}

.quick-access-card:hover::before {
    opacity: 1;
}

.quick-access-icon {
    width: 64px;
    height: 64px;
    border-radius: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 26px;
    margin-bottom: 14px;
    transition: all 0.28s ease;
}

.quick-access-card:hover .quick-access-icon {
    transform: scale(1.12) rotate(4deg);
}

.qa-icon-1 {
    background: rgba(59, 130, 246, 0.12);
    color: #2563EB;
    border: 1px solid rgba(59, 130, 246, 0.2);
}

.qa-icon-2 {
    background: rgba(14, 165, 233, 0.12);
    color: #0284C7;
    border: 1px solid rgba(14, 165, 233, 0.2);
}

.qa-icon-3 {
    background: rgba(99, 102, 241, 0.12);
    color: #4F46E5;
    border: 1px solid rgba(99, 102, 241, 0.2);
}

.qa-icon-4 {
    background: rgba(16, 185, 129, 0.12);
    color: #059669;
    border: 1px solid rgba(16, 185, 129, 0.2);
}

.qa-icon-5 {
    background: rgba(245, 158, 11, 0.12);
    color: #D97706;
    border: 1px solid rgba(245, 158, 11, 0.2);
}

.qa-icon-6 {
    background: rgba(239, 68, 68, 0.12);
    color: #DC2626;
    border: 1px solid rgba(239, 68, 68, 0.2);
}

.quick-access-card:hover .qa-icon-1 {
    background: #2563EB;
    color: #FFFFFF;
}

.quick-access-card:hover .qa-icon-2 {
    background: #0284C7;
    color: #FFFFFF;
}

.quick-access-card:hover .qa-icon-3 {
    background: #4F46E5;
    color: #FFFFFF;
}

.quick-access-card:hover .qa-icon-4 {
    background: #059669;
    color: #FFFFFF;
}

.quick-access-card:hover .qa-icon-5 {
    background: #D97706;
    color: #FFFFFF;
}

.quick-access-card:hover .qa-icon-6 {
    background: #DC2626;
    color: #FFFFFF;
}

.quick-access-title {
    font-family: 'Poppins', sans-serif;
    font-size: 12px;
    font-weight: 700;
    color: #0A2540;
    margin: 0;
    line-height: 1.3;
}

.quick-access-tag {
    font-size: 11.5px;
    font-weight: 600;
    color: #64748B;
    margin-top: 6px;
    display: inline-block;
}

/* ==========================================================================
   4. PUBLICACIONES RECIENTES, TABS Y SIDEBAR (Ratio 8 / 4 Panorámico)
   ========================================================================== */
.publications-tab-wrapper {
    background: #FFFFFF !important;
    border-radius: 50px !important;
    padding: 8px 10px !important;
    border: 1.5px solid #EAEFF5 !important;
    box-shadow: 0 4px 25px rgba(0, 20, 50, 0.05) !important;
    width: 100% !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
}

.publications-tab-wrapper::-webkit-scrollbar {
    display: none !important;
}

.publications-tab-bar {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 10px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    border: none !important;
    width: 100% !important;
}

.publications-tab-bar .nav-item {
    display: flex !important;
    width: 100% !important;
    margin: 0 !important;
}

.publications-tab-bar .nav-link {
    width: 100% !important;
    background: #F8FAFD !important;
    color: #1E293B !important;
    font-family: 'Poppins', sans-serif !important;
    font-weight: 700 !important;
    font-size: 14.5px !important;
    padding: 13px 18px !important;
    border-radius: 50px !important;
    border: 1px solid #E8EEF5 !important;
    transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 9px !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    box-sizing: border-box !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.02) !important;
}

.publications-tab-bar .nav-link i {
    font-size: 15.5px !important;
    transition: all 0.25s ease !important;
}

.publications-tab-bar .nav-link:hover {
    background: #F1F6FB !important;
    color: #0F172A !important;
    border-color: #CBD5E1 !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.06) !important;
}

.publications-tab-bar .nav-link.active {
    background: linear-gradient(135deg, #0D2D52 0%, #1D58CD 100%) !important;
    color: #FFFFFF !important;
    font-weight: 800 !important;
    border-color: transparent !important;
    box-shadow: 0 6px 20px rgba(13, 45, 82, 0.35) !important;
    transform: none !important;
}

.publications-tab-bar .nav-link.active i {
    color: #00F0FF !important;
    text-shadow: 0 0 10px rgba(0, 240, 255, 0.6) !important;
}

@media (max-width: 767.98px) {
    .publications-tab-wrapper {
        border-radius: 18px !important;
        padding: 8px !important;
        overflow: visible !important;
    }

    .publications-tab-bar {
        min-width: 0 !important;
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 8px !important;
        width: 100% !important;
    }

    .publications-tab-bar .nav-item {
        width: 100% !important;
        flex: none !important;
    }

    .publications-tab-bar .nav-link {
        font-size: 11.5px !important;
        padding: 8px 6px !important;
        border-radius: 12px !important;
        justify-content: center !important;
        text-align: center !important;
        gap: 6px !important;
        white-space: normal !important;
        min-height: 42px !important;
    }

    .publications-tab-bar .nav-link i {
        font-size: 12.5px !important;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    .publications-tab-bar {
        min-width: 0 !important;
        gap: 6px !important;
    }

    .publications-tab-bar .nav-link {
        font-size: 12px !important;
        padding: 7px 8px !important;
        gap: 5px !important;
    }
}

/* Tarjetas de Publicaciones Oficiales */
.publication-item-card {
    background: #FFFFFF !important;
    border-radius: 18px !important;
    padding: 18px 22px !important;
    margin-bottom: 14px !important;
    border: 1.5px solid #E2E8F0 !important;
    box-shadow: 0 4px 18px rgba(0, 0, 0, 0.03) !important;
    transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
    position: relative !important;
    overflow: hidden !important;
}

.publication-item-card:hover {
    border-color: #CBD5E1 !important;
    box-shadow: 0 14px 32px rgba(0, 30, 60, 0.09) !important;
    transform: translateY(-3px) !important;
}

.publication-item-card.card-comunicado {
    border-left: 5px solid #3eb8ed !important;
}

.publication-item-card.card-oficio {
    border-left: 5px solid #6950cb !important;
}

.publication-item-card.card-convocatoria {
    border-left: 5px solid #b895ec !important;
}

.publication-item-card.card-resolucion {
    border-left: 5px solid #2c6eaf !important;
}

.pub-date-badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    font-size: 11.5px !important;
    font-weight: 600 !important;
    color: #64748B !important;
    background: #F8FAFC !important;
    padding: 3px 12px !important;
    border-radius: 50rem !important;
    border: 1px solid #E2E8F0 !important;
    line-height: 1.25 !important;
    white-space: nowrap !important;
}

.pub-date-badge i {
    font-size: 11px !important;
}

.pub-btn-view {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    padding: 3px 10px !important;
    border-radius: 50px !important;
    font-size: 11.5px !important;
    font-weight: 700 !important;
    background: linear-gradient(135deg, #033168 0%, #2384f9 100%) !important;
    color: #FFFFFF !important;
    text-decoration: none !important;
    box-shadow: 0 4px 12px rgba(10, 37, 64, 0.2) !important;
    transition: all 0.25s ease !important;
    border: none !important;
    white-space: nowrap !important;
}

.pub-btn-view:hover {
    background: linear-gradient(135deg, #033168 0%, #2384f9 100%) !important;
    color: #FFFFFF !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 16px rgba(43, 155, 255, 0.35) !important;
}

.btn-view-more-pubs {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    padding: 10px 20px !important;
    border-radius: 50px !important;
    font-weight: 700 !important;
    font-size: 12px !important;
    background: linear-gradient(135deg, #0A2540 0%, #1D80E0 100%) !important;
    color: #FFFFFF !important;
    text-decoration: none !important;
    box-shadow: 0 6px 20px rgba(10, 37, 64, 0.22) !important;
    transition: all 0.25s ease !important;
    border: none !important;
}

.btn-view-more-pubs:hover {
    background: linear-gradient(135deg, #1D80E0 0%, #2B9BFF 100%) !important;
    color: #FFFFFF !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 25px rgba(43, 155, 255, 0.4) !important;
}

/* Tarjetas Sidebar (Noticias Recientes y Facebook) */
.sidebar-panel-card {
    background: #FFFFFF;
    border-radius: 20px;
    border: 1.5px solid #E2E8F0;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.04);
    padding: 24px;
    transition: var(--transition-fast);
}

.sidebar-panel-card:hover {
    border-color: #CBD5E1;
    box-shadow: 0 12px 30px rgba(0, 20, 50, 0.07);
}

.sidebar-panel-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 14px;
    margin-bottom: 18px;
    border-bottom: 2px solid #F1F5F9;
}

.sidebar-panel-title {
    font-family: 'Poppins', sans-serif;
    font-size: 17px;
    font-weight: 800;
    color: #0A2540;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 8px;
}

.sidebar-news-item {
    background: #F8FAFD;
    border-radius: 14px;
    padding: 14px 16px;
    border: 1px solid #EAEFF5;
    border-left: 4px solid #2B9BFF;
    transition: all 0.25s ease;
}

.sidebar-news-item:hover {
    background: #FFFFFF;
    border-color: #2B9BFF;
    transform: translateX(4px);
    box-shadow: 0 6px 18px rgba(43, 155, 255, 0.12);
}

/* Carrusel Secundario de Logros y Pases (slid2) */
.slid2-card-premium {
    background: #FFFFFF;
    border-radius: 20px;
    padding: 24px;
    border: 1.5px solid #E2E8F0;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
    transition: var(--transition-fast);
}

.slid2-card-premium:hover {
    box-shadow: 0 16px 40px rgba(0, 30, 70, 0.1);
    border-color: rgba(43, 155, 255, 0.35);
}

/* ==========================================================================
   5. NOTICIAS Y EVENTOS EN GRID (INCLUYE VIDEOS YOUTUBE Y FOTOS)
   ========================================================================== */
.video-container-169 {
    position: relative;
    width: 100%;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    border-radius: 16px 16px 0 0;
    background: #000;
}

.video-container-169 iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

.news-card-modern {
    background: #FFFFFF;
    border-radius: 18px;
    overflow: hidden;
    border: 1.5px solid #E2E8F0;
    box-shadow: 0 4px 20px rgba(15, 23, 42, 0.05);
    transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.3s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.3s ease;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.news-card-modern:hover {
    transform: translateY(-6px);
    box-shadow: 0 18px 36px rgba(10, 37, 64, 0.12);
    border-color: #CBD5E1;
}

.news-card-img-wrapper {
    height: 320px;
    overflow: hidden;
    position: relative;
    background: #071728;
}

.news-card-img-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top;
    transition: transform 0.45s ease;
}

.news-card-modern:hover .news-card-img-wrapper img {
    transform: scale(1.05);
}

@media (max-width: 991px) {
    .news-card-img-wrapper {
        height: 280px;
    }
}

@media (max-width: 576px) {
    .news-card-img-wrapper {
        height: 240px;
    }
}

/* ==========================================================================
   6. SERVICIOS INSTITUCIONALES (Beneficios Permanentes)
   ========================================================================== */
.service-card-modern {
    background: #FFFFFF;
    border-radius: 20px;
    overflow: hidden;
    border: 1.5px solid #E2E8F0;
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.04);
    transition: all 0.28s cubic-bezier(0.16, 1, 0.3, 1);
    height: 100%;
    display: flex;
    flex-direction: column;
}

.service-card-modern:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 40px rgba(10, 37, 64, 0.12);
    border-color: rgba(43, 155, 255, 0.4);
}

/* ==========================================================================
   7. SOBRE NOSOTROS & INSTITUCIONALIDAD
   ========================================================================== */
.about-feature-box {
    background: rgba(255, 255, 255, 0.07);
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 16px;
    padding: 20px 18px;
    backdrop-filter: blur(10px);
    transition: all 0.25s ease;
}

.about-feature-box:hover {
    background: rgba(255, 255, 255, 0.12);
    border-color: rgba(43, 155, 255, 0.5);
    transform: translateY(-4px);
}

.about-image-frame {
    position: relative;
    display: inline-block;
    width: 100%;
    max-width: 580px;
}

.about-image-frame img {
    border-radius: 24px;
    border: 2px solid rgba(255, 255, 255, 0.15);
    box-shadow: 0 25px 60px rgba(0, 0, 0, 0.45);
    width: 100%;
    max-height: 400px;
    object-fit: cover;
}

.about-floating-stat {
    position: absolute;
    bottom: -15px;
    left: 20px;
    background: linear-gradient(135deg, #0A2540 0%, #1D58CD 100%);
    border: 1.5px solid rgba(43, 155, 255, 0.6);
    border-radius: 16px;
    padding: 16px 24px;
    color: #FFFFFF;
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.4), 0 0 20px rgba(43, 155, 255, 0.3);
    text-align: left;
}

/* ==========================================================================
   8. POR QUÉ ELEGIRNOS / BENEFICIOS DE AFILIACIÓN (4 BLOQUES)
   ========================================================================== */
.benefit-card-modern {
    background: #FFFFFF;
    border-radius: 20px;
    padding: 32px 28px;
    border: 1.5px solid #E2E8F0;
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.04);
    transition: all 0.28s cubic-bezier(0.16, 1, 0.3, 1);
    height: 100%;
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

.benefit-card-modern::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 5px;
    height: 100%;
    background: linear-gradient(180deg, #2B9BFF 0%, #0A2540 100%);
    opacity: 0;
    transition: all 0.25s ease;
}

.benefit-card-modern:hover {
    transform: translateY(-6px);
    box-shadow: 0 20px 40px rgba(10, 37, 64, 0.1);
    border-color: rgba(43, 155, 255, 0.35);
}

.benefit-card-modern:hover::before {
    opacity: 1;
}

.benefit-card-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 18px;
}

.benefit-number-badge {
    font-family: 'Poppins', sans-serif;
    font-size: 18px;
    font-weight: 800;
    color: #2B9BFF;
    background: rgba(43, 155, 255, 0.12);
    border: 1px solid rgba(43, 155, 255, 0.25);
    width: 48px;
    height: 48px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.benefit-icon-box {
    width: 48px;
    height: 48px;
    border-radius: 14px;
    background: rgba(10, 37, 64, 0.06);
    color: #0A2540;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    transition: all 0.25s ease;
}

.benefit-card-modern:hover .benefit-icon-box {
    background: #2B9BFF;
    color: #FFFFFF;
    transform: scale(1.1);
}

/* ==========================================================================
   9. CÓMO TRABAJAMOS / OBJETIVOS INSTITUCIONALES
   ========================================================================== */
.objective-card-modern {
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 20px;
    padding: 32px 22px;
    backdrop-filter: blur(10px);
    transition: all 0.28s cubic-bezier(0.16, 1, 0.3, 1);
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    position: relative;
}

.objective-card-modern:hover {
    background: rgba(255, 255, 255, 0.12);
    border-color: rgba(43, 155, 255, 0.6);
    transform: translateY(-8px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.35), 0 0 25px rgba(43, 155, 255, 0.2);
}

.objective-number-badge {
    font-family: 'Poppins', sans-serif;
    font-size: 32px;
    font-weight: 800;
    color: #00F0FF;
    text-shadow: 0 0 15px rgba(0, 240, 255, 0.5);
    margin-bottom: 12px;
    line-height: 1;
}

.objective-icon {
    width: 58px;
    height: 58px;
    border-radius: 50%;
    background: rgba(43, 155, 255, 0.15);
    border: 1px solid rgba(43, 155, 255, 0.3);
    color: #2B9BFF;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    margin-bottom: 18px;
    transition: all 0.25s ease;
}

.objective-card-modern:hover .objective-icon {
    background: #2B9BFF;
    color: #FFFFFF;
    transform: scale(1.1);
}

/* ==========================================================================
   10. ESTADÍSTICAS E IMPACTO (Grid 5 Columnas Luminoso)
   ========================================================================== */
.counter-grid-5 {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 20px;
    width: 100%;
}

@media (max-width: 1199.98px) {
    .counter-grid-5 {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 767.98px) {
    .counter-grid-5 {
        grid-template-columns: repeat(2, 1fr);
        gap: 14px;
    }
}

@media (max-width: 480px) {
    .counter-grid-5 {
        grid-template-columns: 1fr;
    }
}

.counter-card-modern {
    background: rgba(255, 255, 255, 0.06);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border: 1.5px solid rgba(255, 255, 255, 0.14);
    border-radius: 20px;
    padding: 28px 18px;
    text-align: center;
    color: #FFFFFF;
    transition: all 0.28s cubic-bezier(0.16, 1, 0.3, 1);
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.counter-card-modern:hover {
    background: rgba(255, 255, 255, 0.12);
    border-color: rgba(43, 155, 255, 0.6);
    transform: translateY(-6px);
    box-shadow: 0 16px 35px rgba(0, 0, 0, 0.35), 0 0 25px rgba(43, 155, 255, 0.25);
}

.counter-card-icon {
    font-size: 26px;
    color: #2B9BFF;
    margin-bottom: 10px;
    display: inline-block;
    transition: transform 0.25s ease;
}

.counter-card-modern:hover .counter-card-icon {
    transform: scale(1.15);
    color: #00F0FF;
}

.counter-card-modern .count-number {
    font-size: 40px;
    font-weight: 800;
    color: #00F0FF;
    font-family: 'Poppins', sans-serif;
    line-height: 1.1;
    text-shadow: 0 0 20px rgba(0, 240, 255, 0.4);
}

.counter-card-modern .count-label {
    font-size: 13.5px;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.9);
    margin-top: 8px;
    line-height: 1.4;
}

/* ==========================================================================
   HERO BANNER SLIDER (ESTÁNDAR INSTITUCIONAL 2026)
   ========================================================================== */
.banner-section {
    position: relative !important;
    width: 100% !important;
    min-height: 720px !important;
    background: #00152B !important;
    overflow: hidden !important;
}

.banner-section .swiper-container,
.banner-section .banner-slider {
    position: relative !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 720px !important;
}

.banner-section .swiper-slide.banner-slide-item {
    position: relative !important;
    width: 100% !important;
    min-height: 720px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-end !important;
    align-items: center !important;
    text-align: center !important;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    box-sizing: border-box !important;
    padding-top: 180px !important;
    padding-bottom: 80px !important;
    filter: none !important;
}

.banner-section .banner-slide-overlay {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    background: transparent !important;
    pointer-events: none !important;
}

.banner-section .content-outer {
    position: relative !important;
    z-index: 5 !important;
    width: 100% !important;
    display: block !important;
    text-align: center !important;
}

.banner-section .content-box {
    position: relative !important;
    z-index: 5 !important;
    padding: 0 15px !important;
    min-height: auto !important;
    max-width: 920px !important;
    margin: 0 auto !important;
    display: block !important;
    text-align: center !important;
}

.banner-section .content-box .inner {
    position: relative !important;
    opacity: 1 !important;
    transform: none !important;
    visibility: visible !important;
    padding: 0 !important;
    background: transparent !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    border: none !important;
    box-shadow: none !important;
    max-width: 880px !important;
    width: 100% !important;
    margin: 0 auto !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
}

/* 1. Badge Superior */
.hero-badge,
.banner-section .hero-badge {
    display: inline-flex !important;
    align-self: center !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 6px 20px !important;
    background: rgba(2, 22, 48, 0.82) !important;
    border: 1.5px solid rgba(43, 155, 255, 0.7) !important;
    border-radius: 50px !important;
    color: #2B9BFF !important;
    font-family: 'Poppins', sans-serif !important;
    font-size: 12.5px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 1.4px !important;
    margin: 0 auto 12px auto !important;
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.4), 0 0 15px rgba(43, 155, 255, 0.25) !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    text-align: center !important;
    transition: all 0.3s ease !important;
}

.hero-badge:hover,
.banner-section .hero-badge:hover {
    border-color: #00F0FF !important;
    box-shadow: 0 4px 25px rgba(0, 240, 255, 0.45) !important;
}

/* 2. Título Principal */
.hero-title,
.banner-section .hero-title,
.banner-section .content-box h1 {
    font-family: 'Poppins', sans-serif !important;
    font-size: 40px !important;
    font-weight: 800 !important;
    line-height: 1.22 !important;
    color: #FFFFFF !important;
    margin: 0 auto 12px auto !important;
    padding: 0 !important;
    text-align: center !important;
    align-self: center !important;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.95), 0 6px 25px rgba(0, 10, 25, 0.98), 0 0 50px rgba(0, 30, 61, 0.85) !important;
    letter-spacing: -0.02em !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    width: 100% !important;
    max-width: 880px !important;
}

/* 3. Barra Decorativa Azul */
.slider-divider,
.banner-section .slider-divider {
    width: 75px !important;
    height: 4px !important;
    background: linear-gradient(90deg, #2B9BFF 0%, #00F0FF 100%) !important;
    border-radius: 4px !important;
    margin: 0 auto 14px auto !important;
    align-self: center !important;
    box-shadow: 0 0 16px rgba(43, 155, 255, 0.9), 0 0 30px rgba(0, 240, 255, 0.5) !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
}

/* 4. Subtítulo Descriptivo */
.hero-subtitle,
.banner-section .hero-subtitle,
.banner-section .content-box .text {
    font-family: 'Inter', sans-serif !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 1.65 !important;
    color: #F1F5F9 !important;
    margin: 0 auto 22px auto !important;
    max-width: 780px !important;
    width: 100% !important;
    text-align: center !important;
    align-self: center !important;
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.95), 0 4px 20px rgba(0, 0, 0, 0.85) !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
}

/* 5. Botones de Acción */
.hero-actions,
.banner-section .hero-actions,
.banner-section .link-box {
    display: flex !important;
    gap: 14px !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: center !important;
    align-self: center !important;
    margin: 0 auto !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    padding: 0 !important;
    width: 100% !important;
}

.btn-hero-primary,
.banner-section .btn-hero-primary {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 12px 28px !important;
    background: linear-gradient(135deg, #2B9BFF 0%, #1D80E0 100%) !important;
    color: #FFFFFF !important;
    font-family: 'Poppins', sans-serif !important;
    font-weight: 700 !important;
    font-size: 14px !important;
    letter-spacing: 0.5px !important;
    border-radius: 50px !important;
    box-shadow: 0 8px 25px rgba(43, 155, 255, 0.45), 0 2px 6px rgba(0, 0, 0, 0.2) !important;
    text-decoration: none !important;
    border: none !important;
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.btn-hero-primary:hover,
.banner-section .btn-hero-primary:hover {
    transform: translateY(-3px) scale(1.02) !important;
    box-shadow: 0 14px 30px rgba(43, 155, 255, 0.65) !important;
    color: #FFFFFF !important;
}

.btn-hero-secondary,
.banner-section .btn-hero-secondary {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 12px 28px !important;
    background: rgba(255, 255, 255, 0.12) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    color: #FFFFFF !important;
    font-family: 'Poppins', sans-serif !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    border-radius: 50px !important;
    border: 1.5px solid rgba(255, 255, 255, 0.45) !important;
    text-decoration: none !important;
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.btn-hero-secondary:hover,
.banner-section .btn-hero-secondary:hover {
    background: rgba(255, 255, 255, 0.25) !important;
    border-color: #FFFFFF !important;
    transform: translateY(-3px) scale(1.02) !important;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.35) !important;
    color: #FFFFFF !important;
}

/* 6. Botones de Navegación Swiper (Flechas Anterior y Siguiente) */
.banner-slider-button-prev,
.banner-slider-button-next,
.banner-section .banner-slider-button-prev,
.banner-section .banner-slider-button-next {
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 52px !important;
    height: 52px !important;
    background: rgba(0, 20, 45, 0.85) !important;
    border: 1.5px solid rgba(43, 155, 255, 0.65) !important;
    color: #FFFFFF !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 18px !important;
    cursor: pointer !important;
    z-index: 90 !important;
    pointer-events: auto !important;
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
    line-height: 1 !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.35) !important;
}

.banner-slider-button-prev,
.banner-section .banner-slider-button-prev {
    left: 25px !important;
}

.banner-slider-button-next,
.banner-section .banner-slider-button-next {
    right: 25px !important;
}

.banner-slider-button-prev:hover,
.banner-slider-button-next:hover,
.banner-section .banner-slider-button-prev:hover,
.banner-section .banner-slider-button-next:hover {
    background: #2B9BFF !important;
    border-color: #2B9BFF !important;
    color: #FFFFFF !important;
    box-shadow: 0 0 25px rgba(43, 155, 255, 0.85) !important;
    transform: translateY(-50%) scale(1.1) !important;
}

/* 7. Paginación Swiper */
.banner-slider-pagination,
.banner-section .banner-slider-pagination,
.swiper-container .banner-slider-pagination {
    position: absolute !important;
    bottom: 28px !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    margin: 0 auto !important;
    padding: 0 !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    text-align: center !important;
    z-index: 90 !important;
    transform: none !important;
    pointer-events: auto !important;
}

.banner-slider-pagination .swiper-pagination-bullet,
.banner-section .banner-slider-pagination .swiper-pagination-bullet {
    width: 12px !important;
    height: 12px !important;
    background: #FFFFFF !important;
    opacity: 0.5 !important;
    margin: 0 6px !important;
    border-radius: 50% !important;
    transition: all 0.3s ease !important;
    cursor: pointer !important;
    display: inline-block !important;
    outline: none !important;
    border: none !important;
}

.banner-slider-pagination .swiper-pagination-bullet-active,
.banner-section .banner-slider-pagination .swiper-pagination-bullet-active {
    background: #2B9BFF !important;
    opacity: 1 !important;
    width: 34px !important;
    border-radius: 8px !important;
    box-shadow: 0 0 12px rgba(43, 155, 255, 0.85) !important;
}

/* ==========================================================================
   Responsive Fixes
   ========================================================================== */
@media (max-width: 991.98px) {

    .banner-section,
    .banner-slide-item {
        min-height: 480px !important;
    }

    .banner-slide-content {
        padding: 50px 0;
    }

    .hero-title {
        font-size: 34px !important;
    }

    .hero-subtitle {
        font-size: 16px !important;
    }

    .banner-slider-button-prev {
        left: 12px !important;
    }

    .banner-slider-button-next {
        right: 12px !important;
    }

    .mesadepartes-bar {
        margin-top: 0;
    }

    .quick-access-card {
        padding: 20px 14px;
    }
}

@media (max-width: 575.98px) {

    .banner-section,
    .banner-slide-item {
        min-height: 420px !important;
    }

    .banner-slide-content {
        padding: 35px 0;
    }

    .hero-badge {
        font-size: 11px;
        padding: 4px 12px;
        margin-bottom: 12px;
    }

    .hero-title {
        font-size: 26px !important;
        margin-bottom: 12px;
    }

    .hero-subtitle {
        font-size: 14px !important;
        margin-bottom: 20px;
    }

    .btn-hero-primary,
    .btn-hero-secondary {
        padding: 10px 20px;
        font-size: 13.5px;
    }

    .banner-slider-button-prev,
    .banner-slider-button-next {
        width: 38px !important;
        height: 38px !important;
        font-size: 14px !important;
    }

    .banner-slider-button-prev {
        left: 8px !important;
    }

    .banner-slider-button-next {
        right: 8px !important;
    }

    .sec-title-modern h2 {
        font-size: 24px;
    }
}

/* ==========================================================================
   Skeleton Loaders & UI Polish (Carga Asíncrona Fluida)
   ========================================================================== */
.skeleton-box {
    display: inline-block;
    position: relative;
    overflow: hidden;
    background-color: #E2E8F0;
    border-radius: 8px;
}

.skeleton-box::after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    transform: translateX(-100%);
    background-image: linear-gradient(90deg,
            rgba(255, 255, 255, 0) 0,
            rgba(255, 255, 255, 0.45) 20%,
            rgba(255, 255, 255, 0.65) 60%,
            rgba(255, 255, 255, 0));
    animation: skeletonShimmer 1.8s infinite;
    content: '';
}

@keyframes skeletonShimmer {
    100% {
        transform: translateX(100%);
    }
}

.skeleton-card {
    background: #FFFFFF;
    border-radius: var(--radius-md);
    padding: 20px;
    margin-bottom: 15px;
    border: 1px solid var(--border-color);
    box-shadow: var(--card-shadow);
}

/* ==========================================================================
   Modal Institucional Autónomo (Comunicados Emergentes)
   ========================================================================== */
.comunicado-modal-overlay {
    position: fixed !important;
    inset: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    z-index: 99999999 !important;
    background: rgba(0, 0, 0, 0.12) !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 15px !important;
    box-sizing: border-box !important;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.6s ease, visibility 0.6s ease !important;
}

.comunicado-modal-overlay.active {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
}

.comunicado-modal-card {
    background: #ffffff !important;
    border-radius: 20px !important;
    max-width: 470px !important;
    width: 100% !important;
    max-height: 90vh !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
    box-shadow: 0 25px 65px rgba(0, 0, 0, 0.45), 0 0 30px rgba(0, 20, 50, 0.25) !important;
    position: relative !important;
    border: 1.5px solid rgba(43, 155, 255, 0.35) !important;
    transform: translateY(-100vh) scale(0.95) !important;
    opacity: 0 !important;
    transition: transform 0.85s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.7s ease !important;
    will-change: transform, opacity;
}

.comunicado-modal-overlay.active .comunicado-modal-card {
    transform: translateY(0) scale(1) !important;
    opacity: 1 !important;
}

.comunicado-modal-card.closing {
    transform: translateY(-100vh) scale(0.95) !important;
    opacity: 0 !important;
    transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.45s ease !important;
}

/* ==========================================================================
   Mobile Menu Institutional Drawer Polish (Estilo 2026)
   ========================================================================== */
.mobile-menu .menu-box {
    background-color: #071728 !important;
    border-right: 1px solid rgba(43, 155, 255, 0.2) !important;
    box-shadow: 10px 0 35px rgba(0, 0, 0, 0.5) !important;
}

.mobile-menu .navigation li>a {
    font-family: 'Poppins', 'Inter', sans-serif !important;
    color: #FFFFFF !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
    padding: 12px 20px !important;
}

.mobile-menu .navigation li.current>a,
.mobile-menu .navigation li>a:hover {
    color: #2B9BFF !important;
    background: rgba(43, 155, 255, 0.12) !important;
}

.mobile-menu .close-btn {
    color: #FFFFFF !important;
    background: rgba(43, 155, 255, 0.25) !important;
    border-radius: 50% !important;
    transition: var(--transition-fast) !important;
}

.mobile-menu .close-btn:hover {
    background: #2B9BFF !important;
    color: #FFFFFF !important;
}

.mobile-menu .navigation li.dropdown .dropdown-btn {
    color: #2B9BFF !important;
}

.mobile-menu .navigation li>ul {
    background: rgba(0, 20, 45, 0.6) !important;
}

.mobile-menu .navigation li>ul>li>a {
    color: rgba(255, 255, 255, 0.85) !important;
    font-size: 14px !important;
    padding-left: 35px !important;
}

/* ==========================================================================
   Accessibility & Keyboard Navigation (WCAG AA)
   ========================================================================== */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
[role="button"]:focus-visible,
[tabindex="0"]:focus-visible {
    outline: 2.5px solid #2B9BFF !important;
    outline-offset: 3px !important;
}

/* Skip to content link for screen readers */
.sr-only {
    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;
}

/* ==========================================================================
   Botón Volver Arriba Izquierdo (Scroll To Top Left - Homogeneizado con el Derecho)
   ========================================================================== */
/* Botones Scroll to Top flotantes (Izquierdo y Derecho) nivelados y con acabado tenue profesional */
.scroll-to-top,
.scroll-to-top-left {
    position: fixed !important;
    bottom: 35px !important;
    width: 46px !important;
    height: 46px !important;
    line-height: 42px !important;
    font-size: 16px !important;
    text-align: center !important;
    z-index: 9999 !important;
    cursor: pointer !important;
    display: none;
    color: #0284C7 !important;
    border: 1.5px dashed rgba(2, 132, 199, 0.45) !important;
    background: rgba(255, 255, 255, 0.9) !important;
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
    border-radius: 12px !important;
    box-shadow: 0 4px 14px rgba(15, 23, 42, 0.08) !important;
    transition: all 0.28s ease !important;
    -webkit-transform: rotate(-90deg) !important;
    -ms-transform: rotate(-90deg) !important;
    transform: rotate(-90deg) !important;
    box-sizing: border-box !important;
}

.scroll-to-top-left {
    left: 30px !important;
}

.scroll-to-top {
    right: 30px !important;
}

.scroll-to-top:hover,
.scroll-to-top-left:hover {
    background: #0284C7 !important;
    color: #FFFFFF !important;
    border: 1.5px solid #0284C7 !important;
    transform: rotate(-90deg) scale(1.06) !important;
    -webkit-transform: rotate(-90deg) scale(1.06) !important;
    box-shadow: 0 6px 18px rgba(2, 132, 199, 0.3) !important;
}

.scroll-to-top span,
.scroll-to-top-left span,
.scroll-to-top i,
.scroll-to-top-left i {
    display: inline-block !important;
    line-height: 1 !important;
}

@media (max-width: 767.98px) {
    .scroll-to-top,
    .scroll-to-top-left {
        bottom: 20px !important;
        width: 38px !important;
        height: 38px !important;
        line-height: 34px !important;
        font-size: 13px !important;
        border-radius: 10px !important;
    }
    .scroll-to-top-left {
        left: 15px !important;
    }
    .scroll-to-top {
        right: 15px !important;
    }
}

/* ==========================================================================
   7. SOBRE NOSOTROS & INSTITUCIONALIDAD (Estilo Clásico Original & Fotorrealista)
   ========================================================================== */
.about-classic-original-section {
    position: relative !important;
    overflow: hidden !important;
    padding: 90px 0 !important;
    background: linear-gradient(135deg, rgba(12, 45, 110, 0.52) 0%, rgba(7, 28, 72, 0.82) 100%),
        url('../images/background/bg-241.jpg') center center / cover no-repeat !important;
    background-attachment: scroll !important;
}

.about-classic-tag {
    color: #00F0FF !important;
    font-family: 'Poppins', sans-serif !important;
    font-weight: 700 !important;
    font-size: 14px !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    margin-bottom: 14px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    text-shadow: 0 0 12px rgba(0, 240, 255, 0.5) !important;
}

.about-classic-title {
    font-family: 'Poppins', sans-serif !important;
    font-weight: 800 !important;
    font-size: clamp(28px, 3.2vw, 42px) !important;
    color: #FFFFFF !important;
    line-height: 1.22 !important;
    margin-bottom: 18px !important;
    text-shadow: 0 4px 16px rgba(0, 15, 45, 0.4) !important;
}

.about-classic-text {
    font-family: 'Inter', sans-serif !important;
    font-size: 16.5px !important;
    color: rgba(255, 255, 255, 0.92) !important;
    line-height: 1.75 !important;
    margin-bottom: 22px !important;
    max-width: 660px !important;
}

.about-classic-btn-detail {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    color: #FFFFFF !important;
    font-family: 'Poppins', sans-serif !important;
    font-weight: 800 !important;
    font-size: 13.5px !important;
    text-transform: uppercase !important;
    letter-spacing: 1.5px !important;
    text-decoration: none !important;
    padding-bottom: 4px !important;
    border-bottom: 2px solid #00F0FF !important;
    transition: all 0.3s ease !important;
    margin-bottom: 32px !important;
}

.about-classic-btn-detail i {
    color: #00F0FF !important;
    transition: transform 0.3s ease !important;
}

.about-classic-btn-detail:hover {
    color: #00F0FF !important;
    transform: translateX(4px) !important;
}

.about-classic-btn-detail:hover i {
    transform: translateX(4px) !important;
}

/* 4 Tarjetas Blancas (Grid 2x2) */
.about-classic-cards-grid {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 16px !important;
    max-width: 620px !important;
}

.about-classic-white-card {
    background: #FFFFFF !important;
    border-radius: 14px !important;
    padding: 20px 22px !important;
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
    box-shadow: 0 10px 30px rgba(0, 20, 50, 0.25) !important;
    border: 2px solid rgba(255, 255, 255, 0.9) !important;
    cursor: pointer !important;
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
    text-decoration: none !important;
    user-select: none !important;
}

.about-classic-white-card:hover {
    transform: translateY(-5px) !important;
    box-shadow: 0 18px 40px rgba(0, 20, 50, 0.38) !important;
    border-color: #00F0FF !important;
}

.about-classic-white-card .card-icon-box {
    width: 52px !important;
    height: 52px !important;
    border-radius: 12px !important;
    background: #F1F5F9 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 26px !important;
    color: #64748B !important;
    transition: all 0.3s ease !important;
    flex-shrink: 0 !important;
}

.about-classic-white-card:hover .card-icon-box {
    background: linear-gradient(135deg, #0D58CD 0%, #00F0FF 100%) !important;
    color: #FFFFFF !important;
    box-shadow: 0 6px 18px rgba(13, 88, 205, 0.4) !important;
    transform: scale(1.08) !important;
}

.about-classic-white-card .card-label {
    font-family: 'Poppins', sans-serif !important;
    font-weight: 700 !important;
    font-size: 16.5px !important;
    color: #475569 !important;
    line-height: 1.25 !important;
    transition: color 0.3s ease !important;
}

.about-classic-white-card:hover .card-label {
    color: #0A2540 !important;
}

/* Columna Derecha: Marco de Fotografía Fotorrealista */
.about-classic-photo-wrapper {
    position: relative !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    height: 100% !important;
}

.about-classic-photo-frame {
    position: relative !important;
    width: 100% !important;
    max-width: 500px !important;
    border-radius: 22px !important;
    overflow: hidden !important;
    box-shadow: 0 25px 60px rgba(0, 15, 45, 0.45), 0 0 0 3px rgba(255, 255, 255, 0.25) !important;
    transition: transform 0.4s ease, box-shadow 0.4s ease !important;
}

.about-classic-photo-frame:hover {
    transform: translateY(-6px) scale(1.01) !important;
    box-shadow: 0 32px 70px rgba(0, 15, 45, 0.55), 0 0 0 3px rgba(0, 240, 255, 0.6) !important;
}

.about-classic-photo-img {
    width: 100% !important;
    height: 540px !important;
    object-fit: cover !important;
    display: block !important;
    transition: transform 0.5s ease !important;
}

.about-classic-photo-frame:hover .about-classic-photo-img {
    transform: scale(1.03) !important;
}

.about-classic-float-badge {
    position: absolute !important;
    bottom: 22px !important;
    left: 22px !important;
    right: 22px !important;
    background: rgba(7, 28, 54, 0.92) !important;
    backdrop-filter: blur(14px) !important;
    border: 1.5px solid rgba(0, 240, 255, 0.5) !important;
    padding: 14px 20px !important;
    border-radius: 16px !important;
    color: #FFFFFF !important;
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.4) !important;
}

/* Modales Institucionales para las 4 Tarjetas */
.modal {
    z-index: 10550 !important;
    pointer-events: auto !important;
}

.modal-backdrop {
    z-index: 10540 !important;
    background-color: rgba(7, 23, 40, 0.75) !important;
    backdrop-filter: blur(4px) !important;
}

.modal-dialog {
    z-index: 10560 !important;
    position: relative !important;
    pointer-events: auto !important;
}

.modal-content {
    position: relative !important;
    z-index: 10570 !important;
    pointer-events: auto !important;
}

.modal-institutional-header {
    background: linear-gradient(135deg, #071C36 0%, #0D2D52 100%) !important;
    color: #FFFFFF !important;
    border-bottom: 2px solid #00F0FF !important;
    border-top-left-radius: 20px !important;
    border-top-right-radius: 20px !important;
    padding: 20px 26px !important;
}

.modal-institutional-content {
    border-radius: 20px !important;
    border: 1.5px solid rgba(43, 155, 255, 0.3) !important;
    box-shadow: 0 25px 60px rgba(0, 20, 50, 0.4) !important;
    overflow: hidden !important;
}

.modal-header .btn-close,
.modal-header .close {
    cursor: pointer !important;
    pointer-events: auto !important;
    z-index: 10580 !important;
    opacity: 0.85 !important;
    transition: opacity 0.2s ease, transform 0.2s ease !important;
}

.modal-header .btn-close:hover,
.modal-header .close:hover {
    opacity: 1 !important;
    transform: scale(1.1) !important;
}

@media (max-width: 767.98px) {
    .about-classic-cards-grid {
        grid-template-columns: 1fr !important;
    }

    .about-classic-photo-img {
        height: 380px !important;
    }
}

/* ==========================================================================
   BLOQUE 9: CÓMO TRABAJAMOS / PILARES ESTRATÉGICOS (Diseño Premium Coherente)
   ========================================================================== */
.how-we-work-premium-section {
    position: relative !important;
    padding: 90px 0 80px !important;
    background: linear-gradient(180deg, rgba(12, 42, 100, 0.45) 0%, rgba(7, 24, 62, 0.80) 100%),
        url('../images/background/bg-02.jpg') center top / cover no-repeat !important;
    color: #FFFFFF !important;
    overflow: hidden !important;
}

.work-badge-tag {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 6px 18px !important;
    background: rgba(7, 28, 54, 0.85) !important;
    backdrop-filter: blur(8px) !important;
    border: 1.5px solid rgba(0, 240, 255, 0.7) !important;
    border-radius: 50px !important;
    font-size: 12.5px !important;
    font-weight: 800 !important;
    letter-spacing: 2px !important;
    color: #00F0FF !important;
    text-transform: uppercase !important;
    margin-bottom: 16px !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.35) !important;
}

.work-hero-title-premium {
    font-family: 'Poppins', sans-serif !important;
    font-size: clamp(24px, 3.2vw, 38px) !important;
    font-weight: 800 !important;
    color: #FFFFFF !important;
    line-height: 1.3 !important;
    margin: 0 auto 16px auto !important;
    max-width: 860px !important;
    text-shadow: 0 4px 20px rgba(0, 0, 0, 0.85), 0 2px 6px rgba(0, 0, 0, 0.9) !important;
}

.work-hero-subtitle-premium {
    font-size: 15.5px !important;
    color: #FFFFFF !important;
    max-width: 740px !important;
    margin: 0 auto 48px auto !important;
    line-height: 1.65 !important;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.85) !important;
}

.work-pillars-grid-premium {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 24px !important;
    margin-bottom: 45px !important;
}

.pillar-card-premium {
    background: #FFFFFF !important;
    border-radius: 22px !important;
    padding: 32px 24px 28px !important;
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    box-shadow: 0 16px 40px rgba(0, 15, 45, 0.28) !important;
    border: 2px solid rgba(255, 255, 255, 0.9) !important;
    transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.35s ease, border-color 0.35s ease !important;
}

.pillar-card-premium:hover {
    transform: translateY(-10px) !important;
    box-shadow: 0 24px 50px rgba(0, 10, 40, 0.4) !important;
    border-color: #00F0FF !important;
}

.pillar-number-badge-premium {
    position: absolute !important;
    top: -18px !important;
    width: 42px !important;
    height: 42px !important;
    border-radius: 50% !important;
    background: #FFFFFF !important;
    color: #0A4FA8 !important;
    font-family: 'Poppins', sans-serif !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.22) !important;
    border: 2.5px solid #00F0FF !important;
    transition: transform 0.3s ease, background 0.3s ease, color 0.3s ease !important;
}

.pillar-card-premium:hover .pillar-number-badge-premium {
    transform: scale(1.15) !important;
    background: #00F0FF !important;
    color: #071C36 !important;
}

.pillar-icon-box-premium {
    width: 62px !important;
    height: 62px !important;
    border-radius: 16px !important;
    background: linear-gradient(135deg, rgba(10, 79, 168, 0.08) 0%, rgba(0, 240, 255, 0.12) 100%) !important;
    color: #0A4FA8 !important;
    font-size: 26px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-top: 10px !important;
    margin-bottom: 18px !important;
    transition: transform 0.3s ease, background 0.3s ease, color 0.3s ease !important;
}

.pillar-card-premium:hover .pillar-icon-box-premium {
    background: linear-gradient(135deg, #0A4FA8 0%, #00F0FF 100%) !important;
    color: #FFFFFF !important;
    transform: scale(1.1) rotate(6deg) !important;
}

.pillar-title-premium {
    font-family: 'Poppins', sans-serif !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    color: #071C36 !important;
    margin-bottom: 8px !important;
    line-height: 1.35 !important;
}

.pillar-desc-premium {
    font-size: 13.5px !important;
    color: #64748B !important;
    line-height: 1.55 !important;
    margin: 0 !important;
}

.work-action-callout {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
    gap: 16px !important;
    padding: 10px 24px 10px 28px !important;
    background: rgba(7, 28, 54, 0.92) !important;
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
    border: 1.5px solid rgba(0, 240, 255, 0.35) !important;
    border-radius: 50px !important;
    font-size: 14.5px !important;
    color: #FFFFFF !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.25) !important;
    transition: all 0.3s ease !important;
}

.work-action-callout:hover {
    border-color: rgba(0, 240, 255, 0.7) !important;
    box-shadow: 0 12px 35px rgba(0, 240, 255, 0.15) !important;
}

.work-action-callout .callout-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 6px 18px !important;
    background: rgba(0, 78, 113, 0.95) !important;
    border: 1px solid rgba(0, 240, 255, 0.5) !important;
    border-radius: 50px !important;
    color: #00F0FF !important;
    font-size: 13.5px !important;
    font-weight: 800 !important;
    text-decoration: underline !important;
    transition: all 0.25s ease !important;
}

.work-action-callout .callout-btn:hover {
    background: #00F0FF !important;
    color: #071C36 !important;
    text-decoration: none !important;
    transform: translateX(3px) !important;
}

/* Facts Section - Refinamiento de Tarjetas Flotantes */
.facts-section .counter-column {
    transition: transform 0.3s ease, box-shadow 0.3s ease !important;
}

.facts-section .counter-column:hover {
    transform: translateY(-5px) !important;
    box-shadow: 0 20px 45px rgba(0, 15, 45, 0.22) !important;
}

/* ==========================================================================
   BLOQUE 10: LOS NÚMEROS HABLAN POR SÍ SOLOS (Composición Ejecutiva 2 Columnas)
   ========================================================================== */
.impact-showcase-section {
    position: relative !important;
    padding: 85px 0 90px !important;
    background: #F8FAFC !important;
    overflow: hidden !important;
}

.impact-visual-frame {
    position: relative !important;
    border-radius: 26px !important;
    overflow: hidden !important;
    box-shadow: 0 24px 60px rgba(7, 28, 54, 0.22) !important;
    border: 4px solid #FFFFFF !important;
    height: 100% !important;
    min-height: 420px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-end !important;
}

.impact-visual-img {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    transition: transform 0.6s ease !important;
}

.impact-visual-frame:hover .impact-visual-img {
    transform: scale(1.04) !important;
}

.impact-floating-tag {
    position: absolute !important;
    top: 20px !important;
    left: 20px !important;
    background: rgba(7, 28, 54, 0.85) !important;
    backdrop-filter: blur(10px) !important;
    border: 1px solid rgba(0, 240, 255, 0.4) !important;
    color: #00F0FF !important;
    padding: 6px 16px !important;
    border-radius: 50px !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    letter-spacing: 1px !important;
    z-index: 3 !important;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.25) !important;
}

.impact-visual-overlay {
    position: relative !important;
    z-index: 2 !important;
    padding: 30px 24px 22px !important;
    background: linear-gradient(to top, rgba(7, 28, 54, 0.95) 0%, rgba(7, 28, 54, 0.7) 65%, rgba(7, 28, 54, 0) 100%) !important;
    color: #FFFFFF !important;
}

.impact-visual-overlay h4 {
    font-family: 'Poppins', sans-serif !important;
    font-size: 20px !important;
    font-weight: 800 !important;
    color: #FFFFFF !important;
    margin-bottom: 6px !important;
}

.impact-visual-overlay p {
    font-size: 13.5px !important;
    color: rgba(255, 255, 255, 0.82) !important;
    margin: 0 !important;
    line-height: 1.5 !important;
}

/* Tarjetas de Estadísticas Lado Derecho */
.stat-card-featured-premium {
    background: #FFFFFF !important;
    border-radius: 20px !important;
    padding: 24px 28px !important;
    box-shadow: 0 16px 36px rgba(7, 28, 54, 0.12) !important;
    border: 2px solid rgba(10, 79, 168, 0.15) !important;
    border-left: 6px solid #0A4FA8 !important;
    margin-bottom: 20px !important;
    transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.3s ease !important;
}

.stat-card-featured-premium:hover {
    transform: translateY(-5px) !important;
    box-shadow: 0 22px 48px rgba(7, 28, 54, 0.2) !important;
}

.stat-card-featured-number {
    font-family: 'Poppins', sans-serif !important;
    font-size: 38px !important;
    font-weight: 900 !important;
    color: #0A4FA8 !important;
    line-height: 1 !important;
}

.stat-grid-2x2-premium {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 18px !important;
}

.stat-mini-card-premium {
    background: #FFFFFF !important;
    border-radius: 18px !important;
    padding: 20px !important;
    box-shadow: 0 12px 30px rgba(7, 28, 54, 0.08) !important;
    border: 1.5px solid rgba(226, 232, 240, 0.9) !important;
    transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.3s ease, border-color 0.3s ease !important;
}

.stat-mini-card-premium:hover {
    transform: translateY(-5px) !important;
    box-shadow: 0 18px 38px rgba(7, 28, 54, 0.15) !important;
    border-color: rgba(10, 79, 168, 0.3) !important;
}

.stat-mini-number {
    font-family: 'Poppins', sans-serif !important;
    font-size: 28px !important;
    font-weight: 800 !important;
    color: #0A4FA8 !important;
    line-height: 1 !important;
}

.stat-mini-label {
    font-size: 13.5px !important;
    font-weight: 700 !important;
    color: #334155 !important;
    margin-top: 6px !important;
    line-height: 1.35 !important;
}

.stat-mini-icon-img {
    width: 36px !important;
    height: 36px !important;
    object-fit: contain !important;
}

@media (max-width: 991.98px) {
    .work-pillars-grid-premium {
        grid-template-columns: repeat(2, 1fr) !important;
    }

    .impact-visual-frame {
        min-height: 340px !important;
        margin-bottom: 25px !important;
    }
}

@media (max-width: 767.98px) {
    .work-pillars-grid-premium {
        grid-template-columns: 1fr !important;
    }

    .stat-grid-2x2-premium {
        grid-template-columns: 1fr !important;
    }

    .stat-card-featured-number {
        font-size: 32px !important;
    }

    .work-action-callout {
        flex-direction: column !important;
        border-radius: 20px !important;
        text-align: center !important;
    }
}

/* ==========================================================================
   MAIN FOOTER: GALERÍA DE FOTOS & SÍMBOLO [+]
   ========================================================================== */
.footer-gallery-item {
    position: relative !important;
    overflow: hidden !important;
    border-radius: 10px !important;
    transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.3s ease, border-color 0.3s ease !important;
    cursor: pointer !important;
    background: #071C36 !important;
    border: 1.5px solid rgba(30, 144, 255, 0.4) !important;
}

.footer-gallery-item:hover {
    transform: translateY(-4px) scale(1.05) !important;
    border-color: #1E90FF !important;
    box-shadow: 0 8px 20px rgba(30, 144, 255, 0.4) !important;
}

.footer-gallery-overlay {
    background: rgba(7, 28, 54, 0.55) !important;
    opacity: 0 !important;
    transition: opacity 0.3s ease, background 0.3s ease !important;
    text-decoration: none !important;
}

.footer-gallery-item:hover .footer-gallery-overlay {
    opacity: 1 !important;
}

.footer-gallery-plus-btn {
    width: 32px !important;
    height: 32px !important;
    border-radius: 50% !important;
    background: #1E90FF !important;
    color: #FFFFFF !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 14px !important;
    box-shadow: 0 4px 12px rgba(30, 144, 255, 0.6) !important;
    transform: scale(0.7) !important;
    transition: transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275), background 0.2s ease !important;
}

.footer-gallery-item:hover .footer-gallery-plus-btn {
    transform: scale(1) !important;
}

.footer-gallery-plus-btn:hover {
    background: #00F0FF !important;
    color: #071C36 !important;
}

.footer-useful-links a {
    transition: color 0.2s ease, transform 0.2s ease !important;
    display: inline-block !important;
}

.footer-useful-links a:hover {
    color: #1E90FF !important;
    transform: translateX(4px) !important;
}

/* ==========================================================================
   SINASSC 728 - Navegación Institucional (4 Botones: Nosotros, Historia, Directorio, Red)
   ========================================================================== */

.institutional-page-title {
    position: relative !important;
    background-color: transparent !important;
    background-size: cover !important;
    background-position: center top !important;
    background-repeat: no-repeat !important;
    padding: 130px 0 0 !important;
    /* Altura acortada */
    overflow: visible !important;
    min-height: 330px !important;
}

/* Reducción exacta del 10 % en la altura del banner y centrado vertical del título */
.institutional-page-title .content-box {
    position: relative !important;
    padding: 230px 0 175px !important;
}

.institutional-page-title::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 30px !important;
    background: rgba(10, 37, 64, 0.22) !important;
    /* Muy sutil para que bg-24.jpg se aprecie con total claridad */
    z-index: 1 !important;
}

.institutional-page-title .auto-container {
    position: relative !important;
    z-index: 30 !important;
    pointer-events: auto !important;
}

/* Garantizar que el texto decorativo con parallax SINASSC728 jamás intercepte clics */
.page-title .background-text,
.page-title .background-text *,
.institutional-page-title .background-text,
.institutional-page-title .background-text * {
    pointer-events: none !important;
    user-select: none !important;
    z-index: 1 !important;
}

.institutional-nav-wrapper {
    position: relative !important;
    margin-top: 35px !important;
    margin-bottom: -28px !important;
    z-index: 50 !important;
    pointer-events: auto !important;
}

.institutional-nav-tabs {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 14px !important;
    width: 100% !important;
    max-width: 1140px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    list-style: none !important;
    position: static !important;
}

.institutional-nav-item {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
}

.institutional-nav-link {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    background: #ffffff !important;
    color: #102a4c !important;
    /* Texto institucional oscuro */
    padding: 0 24px !important;
    border-radius: 0px !important;
    /* Rectangular limpio, esquinas cuadradas fieles a Imagen 1 */
    border: 1px solid #d2dfea !important;
    /* Bordes finos sencillos */
    height: 52px !important;
    /* Altura uniforme */
    min-height: 52px !important;
    font-family: 'Poppins', sans-serif !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    letter-spacing: 0.4px !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.04) !important;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
    position: relative !important;
    cursor: pointer !important;
    pointer-events: auto !important;
}

/* Flechas con micro-interacción fluida */
.institutional-nav-link .nav-icon {
    font-size: 13px !important;
    color: #94a3b8 !important;
    transition: transform 0.25s ease, color 0.25s ease !important;
    flex-shrink: 0 !important;
    margin-left: 10px !important;
}

/* Efecto Hover en botones inactivos: fondo blanco, borde azul, texto y flecha azul (Fiel a Imagen 1) */
.institutional-nav-link:hover {
    color: #168bee !important;
    border: 1px solid #168bee !important;
    background: #ffffff !important;
    box-shadow: 0 4px 14px rgba(22, 139, 238, 0.16) !important;
    transform: translateY(-2px) !important;
}

.institutional-nav-link:hover .nav-icon {
    color: #168bee !important;
    transform: translateX(4px) !important;
}

/* Estado activo: Fondo azul institucional sólido con texto y flecha blancos (Fiel a NUESTRA RED en Imagen 1) */
.institutional-nav-item.active .institutional-nav-link {
    color: #ffffff !important;
    border: 1px solid #168bee !important;
    background: #168bee !important;
    box-shadow: 0 4px 14px rgba(22, 139, 238, 0.28) !important;
}

.institutional-nav-item.active .institutional-nav-link .nav-icon {
    color: #ffffff !important;
}

/* Hover en botón activo */
.institutional-nav-item.active .institutional-nav-link:hover {
    background: #137ad7 !important;
    color: #ffffff !important;
    border-color: #137ad7 !important;
    box-shadow: 0 6px 18px rgba(22, 139, 238, 0.38) !important;
    transform: translateY(-2px) !important;
}

.institutional-nav-item.active .institutional-nav-link:hover .nav-icon {
    color: #ffffff !important;
    transform: translateX(4px) !important;
}

/* Foco accesible para teclado */
.institutional-nav-link:focus-visible {
    outline: 2px solid #168bee !important;
    outline-offset: 2px !important;
}

/* Responsive: Tablet (768px a 991px) */
@media (max-width: 991px) {
    .institutional-page-title .content-box {
        padding: 150px 0 110px !important;
    }

    .institutional-nav-tabs {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 12px !important;
    }

    .institutional-nav-link {
        padding: 0 16px !important;
        font-size: 12px !important;
        height: 50px !important;
        min-height: 50px !important;
    }

    .institutional-nav-wrapper {
        margin-bottom: -22px !important;
    }
}

/* Responsive: Móvil (< 768px) - Desplazamiento horizontal para evitar corte de textos */
@media (max-width: 767px) {
    .institutional-page-title .content-box {
        padding: 80px 0 40px !important;
    }

    .institutional-page-title {
        padding: 110px 0 25px !important;
    }

    .institutional-nav-wrapper {
        margin-top: 25px !important;
        margin-bottom: -15px !important;
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch !important;
        scrollbar-width: none !important;
        padding-bottom: 6px !important;
    }

    .institutional-nav-wrapper::-webkit-scrollbar {
        display: none !important;
    }

    .institutional-nav-tabs {
        display: flex !important;
        flex-wrap: nowrap !important;
        gap: 10px !important;
        width: max-content !important;
        min-width: 100% !important;
        padding: 0 4px !important;
    }

    .institutional-nav-item {
        flex: 0 0 auto !important;
        width: auto !important;
    }

    .institutional-nav-link {
        white-space: nowrap !important;
        padding: 0 18px !important;
        font-size: 12px !important;
        height: 48px !important;
        min-height: 48px !important;
        gap: 12px !important;
    }
}

/* ==========================================================================
   SINASSC 728 - Sección "Sobre Sinassc728" (Bloque 1)
   ========================================================================== */

/* Eliminar completamente la franja gris horizontal detrás y debajo de los botones */
.who-we-are-section::before {
    display: none !important;
    background-color: transparent !important;
    content: none !important;
}

.who-we-are-section {
    position: relative !important;
    background-color: #ffffff !important;
    padding: 95px 0 80px !important;
}

.who-we-are-section .top-content {
    padding-bottom: 50px !important;
}

.who-we-are-section .top-content .auto-container {
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding: 0 15px !important;
}

.who-we-are-section .top-content .sec-title {
    position: relative !important;
    margin-bottom: 25px !important;
}

.who-we-are-section .top-content .sec-title .sub-title {
    position: relative !important;
    font-size: 13.5px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    font-family: "Poppins", sans-serif !important;
    margin-bottom: 18px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 6px 16px !important;
    color: #1D80E0 !important;
    letter-spacing: 0.05em !important;
    background: rgba(43, 155, 255, 0.08) !important;
    border-radius: 50px !important;
    border: 1px solid rgba(43, 155, 255, 0.2) !important;
}

.who-we-are-section .top-content .sec-title .sub-title:before,
.who-we-are-section .top-content .sec-title .sub-title:after {
    display: none !important;
    content: none !important;
}

.who-we-are-section .top-content .sec-title h2 {
    font-family: 'Poppins', sans-serif !important;
    font-size: 38px !important;
    font-weight: 800 !important;
    color: #0A2540 !important;
    line-height: 1.25 !important;
    letter-spacing: -0.01em !important;
    margin-bottom: 25px !important;
}

/* Insignia de Experiencia Sindical Modernizada (Bloque 1) */
.who-we-are-section .experience-year {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 18px !important;
    margin-bottom: 40px !important;
    margin-top: 0 !important;
    background: linear-gradient(135deg, rgba(43, 155, 255, 0.06) 0%, rgba(10, 37, 64, 0.02) 100%) !important;
    border: 1.5px solid rgba(43, 155, 255, 0.25) !important;
    border-radius: 10px !important;
    box-shadow: 0 10px 25px -8px rgba(10, 37, 64, 0.08) !important;
    padding: 16px 22px !important;
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.who-we-are-section .experience-year:hover {
    border-color: #2B9BFF !important;
    transform: translateY(-3px) !important;
    box-shadow: 0 14px 28px -6px rgba(43, 155, 255, 0.18) !important;
}

.who-we-are-section .experience-year .icon {
    position: relative !important;
    width: 68px !important;
    height: 68px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 36px !important;
    margin-right: 0 !important;
    border: 1.5px solid rgba(43, 155, 255, 0.3) !important;
    border-radius: 14px !important;
    background: #FFFFFF !important;
    color: #1D80E0 !important;
    flex-shrink: 0 !important;
    box-shadow: 0 6px 15px rgba(43, 155, 255, 0.12) !important;
}

.who-we-are-section .experience-year .icon i {
    line-height: 1 !important;
    display: block !important;
}

.who-we-are-section .experience-year .content {
    width: auto !important;
}

.who-we-are-section .experience-year .content h3 {
    font-family: 'Poppins', sans-serif !important;
    font-size: 44px !important;
    font-weight: 800 !important;
    color: #0A2540 !important;
    line-height: 1 !important;
    margin: 0 !important;
    text-transform: uppercase !important;
    letter-spacing: -0.02em !important;
}

.who-we-are-section .experience-year .content h3 span {
    font-size: 26px !important;
    font-weight: 700 !important;
    color: #1D80E0 !important;
}

.who-we-are-section .experience-year .content h5 {
    font-family: 'Poppins', sans-serif !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    color: #64748B !important;
    margin-top: 4px !important;
    letter-spacing: 0.5px !important;
}

/* Imagen Oficial del Equipo - Borde semicircular sutil (8px) */
.who-we-are-section .top-content .image {
    position: relative !important;
    margin-bottom: 30px !important;
    border-radius: 4px !important;
    overflow: hidden !important;
}

.who-we-are-section .top-content .image img {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    border-radius: 6px !important;
    border: none !important;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.05) !important;
    max-height: none !important;
    object-fit: cover !important;
}

/* ==========================================================================
   SINASSC 728 - Overview Institucional y 4 Columnas Estadísticas (Bloque 2)
   ========================================================================== */

.who-we-are-section .overview {
    margin-top: 30px !important;
}

.who-we-are-section .overview .wrapper-box {
    background: #ffffff !important;
    border-radius: 8px !important;
    padding: 48px 45px !important;
    box-shadow: 0 20px 45px -15px rgba(10, 37, 64, 0.08), 0 0 0 1px rgba(226, 232, 240, 0.8) !important;
    border: 1px solid #E2E8F0 !important;
    transition: box-shadow 0.3s ease !important;
}

.who-we-are-section .overview .wrapper-box:hover {
    box-shadow: 0 25px 55px -15px rgba(10, 37, 64, 0.12), 0 0 0 1px rgba(43, 155, 255, 0.3) !important;
}

.overview-main-title {
    font-family: 'Poppins', sans-serif !important;
    font-size: 24px !important;
    font-weight: 800 !important;
    color: #0A2540 !important;
    line-height: 1.35 !important;
    margin-bottom: 8px !important;
    letter-spacing: -0.01em !important;
}

.overview-sub-title {
    font-family: 'Poppins', 'Inter', sans-serif !important;
    font-size: 17px !important;
    font-weight: 600 !important;
    color: #1D80E0 !important;
    line-height: 1.45 !important;
    margin-top: 0 !important;
    margin-bottom: 25px !important;
}

.overview-text p {
    font-family: 'Inter', sans-serif !important;
    font-size: 15px !important;
    line-height: 1.75 !important;
    color: #475569 !important;
    margin-bottom: 16px !important;
}

/* Caja de Video y Autor (Bloque 2) */
.overview-author-box {
    border-top: 1px solid #E2E8F0 !important;
    padding-top: 20px !important;
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
}

.overview-play-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 54px !important;
    height: 54px !important;
    border-radius: 50% !important;
    background: linear-gradient(135deg, #2B9BFF 0%, #1D80E0 100%) !important;
    color: #ffffff !important;
    font-size: 18px !important;
    border: none !important;
    box-shadow: 0 6px 18px rgba(43, 155, 255, 0.35) !important;
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
    text-decoration: none !important;
}

.overview-play-btn:hover {
    background: linear-gradient(135deg, #1D80E0 0%, #0A2540 100%) !important;
    color: #ffffff !important;
    transform: scale(1.08) !important;
    box-shadow: 0 10px 24px rgba(43, 155, 255, 0.45) !important;
}

.overview-author-details .author-name {
    font-family: 'Poppins', sans-serif !important;
    font-size: 17.5px !important;
    font-weight: 800 !important;
    color: #0F172A !important;
    line-height: 1.25 !important;
}

.overview-author-details .author-role {
    font-family: 'Inter', sans-serif !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    color: #1D80E0 !important;
    letter-spacing: 0.6px !important;
    text-transform: uppercase !important;
    margin-top: 3px !important;
}

/* Grid de las 4 Columnas Estadísticas Alternadas (Bloque 2) */
.overview-stats-grid {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 14px !important;
    width: 100% !important;
}

.stat-column {
    height: 225px !important;
    border: 1.5px solid #E2E8F0 !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    display: flex !important;
    flex-direction: column !important;
    background: #ffffff !important;
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
    box-shadow: 0 4px 15px rgba(15, 23, 42, 0.04) !important;
}

.stat-column:hover {
    transform: translateY(-5px) !important;
    box-shadow: 0 12px 25px rgba(43, 155, 255, 0.18) !important;
    border-color: #2B9BFF !important;
}

/* Columna 1: Total Afiliados (Full Azul Institucional) */
.stat-full-blue {
    background-color: #1D80E0 !important;
    background-image: url('../images/shape/shape-3.png') !important;
    background-size: cover !important;
    padding: 20px 16px !important;
    justify-content: space-between !important;
    color: #ffffff !important;
    border-color: #1D80E0 !important;
}

.stat-full-blue .stat-number {
    font-family: 'Poppins', sans-serif !important;
    font-size: 32px !important;
    font-weight: 800 !important;
    color: #ffffff !important;
    line-height: 1 !important;
    display: block !important;
}

.stat-full-blue .stat-label {
    font-family: 'Inter', sans-serif !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    line-height: 1.3 !important;
    margin-top: 8px !important;
    display: block !important;
}

.stat-full-blue .stat-tag {
    font-family: 'Inter', sans-serif !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    letter-spacing: 1px !important;
    color: #ffffff !important;
    text-transform: uppercase !important;
    background: rgba(255, 255, 255, 0.22) !important;
    padding: 4px 10px !important;
    border-radius: 20px !important;
    display: inline-block !important;
    width: fit-content !important;
}

/* Bloques Divididos (Columnas 2, 3 y 4) */
.stat-block-blue {
    height: 50% !important;
    background-color: #2B9BFF !important;
    background-image: url('../images/shape/shape-3.png') !important;
    background-size: cover !important;
    padding: 14px 14px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    color: #ffffff !important;
}

.stat-block-blue .stat-number {
    font-family: 'Poppins', sans-serif !important;
    font-size: 26px !important;
    font-weight: 800 !important;
    color: #ffffff !important;
    line-height: 1 !important;
}

.stat-block-blue .stat-tag {
    font-family: 'Inter', sans-serif !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    letter-spacing: 1px !important;
    color: #ffffff !important;
    text-transform: uppercase !important;
}

.stat-block-white {
    height: 50% !important;
    background-color: #ffffff !important;
    background-image: url('../images/shape/shape-4.png') !important;
    background-size: cover !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.stat-block-white .stat-icon {
    font-size: 36px !important;
    color: #1D80E0 !important;
    line-height: 1 !important;
}

/* Responsividad de las 4 Tarjetas */
@media (max-width: 991px) {
    .overview-stats-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 14px !important;
        margin-top: 25px !important;
    }
}

@media (max-width: 576px) {
    .stat-column {
        height: 195px !important;
    }

    .overview-main-title {
        font-size: 20px !important;
    }

    .overview-sub-title {
        font-size: 16px !important;
    }
}

/* ==========================================================================
   SINASSC 728 - Sección "¿Por qué elegirnos?" (Bloque 3)
   ========================================================================== */

.whychooseus-section-four {
    position: relative !important;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    padding: 95px 0 85px !important;
}

.whychooseus-section-four::before {
    display: none !important;
    content: none !important;
}

.whychooseus-section-four .auto-container {
    position: relative !important;
    z-index: 2 !important;
}

.whychooseus-section-four .sec-title .sub-title {
    color: #60A5FA !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    display: inline-block !important;
    margin-bottom: 12px !important;
}

.whychooseus-section-four .sec-title h2 {
    font-family: 'Poppins', sans-serif !important;
    font-size: 36px !important;
    font-weight: 800 !important;
    color: #ffffff !important;
    line-height: 1.25 !important;
    text-shadow: 0 4px 15px rgba(0, 0, 0, 0.45) !important;
}

.whychooseus-block-four .inner-box {
    background: linear-gradient(145deg, #0A2540 0%, #103B66 100%) !important;
    border: 1.5px solid rgba(43, 155, 255, 0.35) !important;
    border-radius: 16px !important;
    padding: 45px 28px 28px !important;
    position: relative !important;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.25), inset 0 1px 0 rgba(255, 255, 255, 0.1) !important;
    transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
    height: 100% !important;
    min-height: 255px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    margin-bottom: 25px !important;
    overflow: hidden !important;
}

.whychooseus-block-four .inner-box:hover {
    transform: translateY(-8px) !important;
    border-color: #2B9BFF !important;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.35), 0 0 25px rgba(43, 155, 255, 0.3) !important;
}

.whychooseus-block-four .icon {
    position: relative !important;
    width: 68px !important;
    height: 68px !important;
    line-height: 68px !important;
    background: #ffffff !important;
    border-radius: 14px !important;
    text-align: center !important;
    margin-bottom: 30px !important;
    display: inline-block !important;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15) !important;
}

.whychooseus-block-four .icon::before {
    display: none !important;
}

.whychooseus-block-four .icon span[class^="flaticon-"] {
    position: relative !important;
    z-index: 2 !important;
    font-size: 34px !important;
    color: #1D80E0 !important;
    line-height: 68px !important;
    display: inline-block !important;
}

.whychooseus-block-four .icon i.fa-check,
.whychooseus-block-four .icon i {
    position: absolute !important;
    right: -8px !important;
    bottom: -8px !important;
    width: 26px !important;
    height: 26px !important;
    line-height: 26px !important;
    background: #2B9BFF !important;
    color: #ffffff !important;
    border-radius: 50% !important;
    font-size: 11px !important;
    text-align: center !important;
    border: 2px solid #ffffff !important;
    box-shadow: 0 3px 8px rgba(0, 0, 0, 0.2) !important;
    z-index: 5 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.whychooseus-block-four h4 {
    font-family: 'Poppins', sans-serif !important;
    font-size: 20px !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    position: relative !important;
    padding-bottom: 16px !important;
    margin-bottom: 0 !important;
    letter-spacing: -0.01em !important;
}

.whychooseus-block-four h4::before {
    position: absolute !important;
    content: '' !important;
    left: 0 !important;
    bottom: 0 !important;
    height: 3px !important;
    width: 45px !important;
    background: #2B9BFF !important;
    border-radius: 2px !important;
}

.whychooseus-block-four .count {
    position: absolute !important;
    top: 25px !important;
    right: 22px !important;
    font-family: 'Poppins', sans-serif !important;
    font-size: 70px !important;
    line-height: 1 !important;
    font-weight: 800 !important;
    -webkit-text-stroke-width: 1.5px !important;
    -webkit-text-stroke-color: rgba(255, 255, 255, 0.22) !important;
    color: transparent !important;
    pointer-events: none !important;
}

/* ==========================================================================
   SINASSC 728 - Sección Declaraciones / Misión, Visión, Valores (Bloque 4)
   ========================================================================== */

.statement-section {
    position: relative !important;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    padding: 100px 0 !important;
}

.statement-section::before {
    display: none !important;
    content: none !important;
}

.statement-section .auto-container {
    position: relative !important;
    max-width: 1200px !important;
    padding: 0 15px !important;
    margin: 0 auto !important;
    z-index: 2 !important;
}

.statement-section .image {
    position: relative !important;
}

/* REGLA INTACTA: No modificar la visualización de la fotografía */
.statement-section .image img {
    width: 100% !important;
    display: block !important;
    border-radius: 8px !important;
    border: none !important;
    box-shadow: none !important;
    max-height: none !important;
}

.statement-section .content {
    position: relative !important;
    margin: 40px 0 0 -160px !important;
    background: #ffffff !important;
    padding: 50px 45px 50px 90px !important;
    border-radius: 8px !important;
    border: 1px solid rgba(226, 232, 240, 0.9) !important;
    box-shadow: 0 25px 50px -12px rgba(10, 37, 64, 0.15), 0 0 0 1px rgba(226, 232, 240, 0.5) !important;
    z-index: 3 !important;
    transition: box-shadow 0.3s ease !important;
}

.statement-section .badge {
    position: absolute !important;
    left: -60px !important;
    top: 50px !important;
    z-index: 5 !important;
    background: transparent !important;
    padding: 0 !important;
    display: block !important;
    filter: drop-shadow(0 10px 15px rgba(0, 0, 0, 0.15)) !important;
}

.statement-section .badge img {
    width: 120px !important;
    height: auto !important;
    filter: none !important;
    display: block !important;
}

.statement-section .sec-title {
    position: relative !important;
    margin-bottom: 20px !important;
}

.statement-section .sec-title .sub-title {
    position: relative !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    font-family: "Poppins", sans-serif !important;
    margin-bottom: 12px !important;
    display: inline-block !important;
    padding: 0 !important;
    color: #1D80E0 !important;
    letter-spacing: 1.5px !important;
}

.statement-section .sec-title .sub-title:before,
.statement-section .sec-title .sub-title:after {
    display: none !important;
    content: none !important;
}

.statement-section .sec-title h2 {
    position: relative !important;
    font-size: 34px !important;
    font-weight: 800 !important;
    font-family: "Poppins", sans-serif !important;
    color: #0A2540 !important;
    line-height: 1.25 !important;
    margin-bottom: 18px !important;
    letter-spacing: -0.01em !important;
}

.statement-section .text {
    position: relative !important;
    margin-bottom: 30px !important;
    font-family: "Inter", sans-serif !important;
    font-size: 15px !important;
    line-height: 1.8 !important;
    color: #475569 !important;
}

/* Tabs Navigation Modernizada (Bloque 4) */
.statement-section .nav-tabs.tab-btn-style-one {
    position: relative !important;
    border: none !important;
    display: flex !important;
    align-items: center !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    gap: 10px !important;
}

.statement-section .nav-tabs.tab-btn-style-one li.nav-item {
    position: relative !important;
    margin: 0 !important;
}

.statement-section .nav-tabs.tab-btn-style-one li.nav-item:before {
    display: none !important;
    content: none !important;
}

.statement-section .nav-tabs.tab-btn-style-one .nav-item .nav-link {
    border: 1.5px solid #CBD5E1 !important;
    border-radius: 50px !important;
    padding: 10px 22px !important;
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
    background: #F8FAFC !important;
    text-decoration: none !important;
    display: inline-flex !important;
    align-items: center !important;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.04) !important;
    cursor: pointer !important;
}

.statement-section .nav-tabs.tab-btn-style-one h4 {
    font-size: 14px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    font-family: "Poppins", sans-serif !important;
    margin: 0 !important;
    color: #475569 !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    letter-spacing: 0.5px !important;
    transition: color 0.3s ease !important;
}

.statement-section .nav-tabs.tab-btn-style-one .nav-item .nav-link i {
    margin-right: 0 !important;
    display: inline-block !important;
    color: #94A3B8 !important;
    transition: transform 0.3s ease, color 0.3s ease !important;
    font-size: 12px !important;
}

.statement-section .nav-tabs.tab-btn-style-one .nav-item .nav-link:hover:not(.active) {
    border-color: #2B9BFF !important;
    background: #EFF6FF !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 15px rgba(43, 155, 255, 0.15) !important;
}

.statement-section .nav-tabs.tab-btn-style-one .nav-item .nav-link:hover:not(.active) h4 {
    color: #1D80E0 !important;
}

.statement-section .nav-tabs.tab-btn-style-one .nav-item .nav-link:hover:not(.active) i {
    color: #1D80E0 !important;
}

.statement-section .nav-tabs.tab-btn-style-one .nav-item .nav-link.active {
    background: #0A2540 !important;
    border-color: #0A2540 !important;
    box-shadow: 0 8px 20px rgba(10, 37, 64, 0.25) !important;
    transform: translateY(-2px) !important;
}

.statement-section .nav-tabs.tab-btn-style-one .nav-item .nav-link.active h4 {
    color: #FFFFFF !important;
}

.statement-section .nav-tabs.tab-btn-style-one .nav-item .nav-link.active i {
    color: #2B9BFF !important;
    transform: rotate(90deg) !important;
}

/* Responsive Declaraciones (< 992px) */
@media (max-width: 991px) {
    .statement-section {
        padding: 60px 0 !important;
    }

    .statement-section .content {
        margin-left: 0 !important;
        margin-top: 25px !important;
        padding: 35px 22px !important;
        border-radius: 14px !important;
    }

    .statement-section .badge {
        display: none !important;
    }

    .statement-section .nav-tabs.tab-btn-style-one {
        flex-direction: row !important;
        flex-wrap: wrap !important;
        gap: 8px !important;
    }

    .statement-section .nav-tabs.tab-btn-style-one li.nav-item {
        width: auto !important;
    }

    .statement-section .nav-tabs.tab-btn-style-one .nav-item .nav-link {
        width: auto !important;
        margin-right: 0 !important;
        text-align: center !important;
    }

    .statement-section .nav-tabs.tab-btn-style-one h4 {
        justify-content: center !important;
    }
}

/* ==========================================================================
   MÓDULO: NUESTRA HISTORIA (Rediseño Institucional Estándar 2026)
   ========================================================================== */

.history-section {
    position: relative !important;
    padding: 85px 0 110px !important;
    background-color: #F8FAFC !important;
    background-repeat: repeat !important;
    background-position: center !important;
    overflow: hidden !important;
}

/* Neutralizar el antiguo corte rígido y aplicar velo institucional armónico */
.history-section:before {
    position: absolute !important;
    content: '' !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    height: 100% !important;
    background: linear-gradient(180deg, rgba(248, 250, 252, 0.93) 0%, rgba(241, 245, 249, 0.97) 100%) !important;
    z-index: 1 !important;
    pointer-events: none !important;
}

.history-section .auto-container {
    position: relative !important;
    z-index: 2 !important;
}

/* Cabecera y Presentación de la Sede Institucional */
.history-intro-header {
    max-width: 820px;
    margin: 0 auto 35px;
    text-align: center;
}

.history-intro-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 6px 18px;
    background: rgba(43, 155, 255, 0.1);
    color: #1D80E0;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    border-radius: 50px;
    border: 1px solid rgba(43, 155, 255, 0.25);
    margin-bottom: 16px;
}

.history-intro-title {
    font-size: 36px;
    font-weight: 800;
    color: #0A2540;
    margin-bottom: 14px;
    line-height: 1.25;
}

.history-intro-desc {
    font-size: 16px;
    color: #475569;
    line-height: 1.6;
    margin-bottom: 0;
}

.history-showcase-card {
    position: relative;
    max-width: 760px;
    margin: 0 auto 60px;
    border-radius: 18px;
    overflow: hidden;
    background: #FFFFFF;
    border: 1px solid rgba(226, 232, 240, 0.9);
    box-shadow: 0 20px 45px -15px rgba(10, 37, 64, 0.12), 0 0 0 1px rgba(226, 232, 240, 0.4);
    transition: transform 0.4s ease, box-shadow 0.4s ease;
}

.history-showcase-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 25px 55px -15px rgba(10, 37, 64, 0.18), 0 0 20px rgba(43, 155, 255, 0.15);
}

.history-showcase-img {
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
}

.history-showcase-caption {
    padding: 14px 22px;
    background: linear-gradient(180deg, #FFFFFF 0%, #F8FAFC 100%);
    border-top: 1px solid #E2E8F0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 10px;
}

.history-showcase-caption span {
    font-size: 13.5px;
    font-weight: 600;
    color: #334155;
    display: flex;
    align-items: center;
    gap: 8px;
}

.history-showcase-caption span i {
    color: #2B9BFF;
}

/* Timeline Navegador de Pestañas (5 Periodos) */
.history-section .nav-tabs.tab-btn-style-one {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    border: none !important;
    position: relative !important;
    padding: 0 15px !important;
    margin: 0 0 55px 0 !important;
}

/* Línea conectora continua del timeline */
.history-section .nav-tabs.tab-btn-style-one:before {
    position: absolute !important;
    content: '' !important;
    left: 8% !important;
    right: 8% !important;
    top: 50% !important;
    bottom: auto !important;
    transform: translateY(-50%) !important;
    height: 3px !important;
    background: #E2E8F0 !important;
    z-index: 1 !important;
    border-radius: 2px !important;
}

.history-section .nav-tabs.tab-btn-style-one li.nav-item {
    position: relative !important;
    z-index: 2 !important;
    flex: 1 !important;
    text-align: center !important;
}

/* Anular completamente los viejos nodos cuadrados */
.history-section .nav-tabs.tab-btn-style-one li.nav-item:before,
.history-section .nav-tabs.tab-btn-style-one li.nav-item:after {
    display: none !important;
}

/* Botón interactivo de la pestaña del timeline */
.history-section .nav-tabs.tab-btn-style-one .nav-link {
    display: inline-flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 10px 18px !important;
    background: #FFFFFF !important;
    border: 2px solid #E2E8F0 !important;
    border-radius: 50px !important;
    text-decoration: none !important;
    box-shadow: 0 4px 14px rgba(15, 23, 42, 0.05) !important;
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
    cursor: pointer !important;
}

.history-section .nav-tabs.tab-btn-style-one .nav-link .timeline-dot {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: #CBD5E1;
    transition: all 0.3s ease;
    box-shadow: 0 0 0 3px #FFFFFF;
}

.history-section .nav-tabs.tab-btn-style-one .nav-link h4 {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #64748B !important;
    margin: 0 !important;
    transition: all 0.3s ease !important;
    white-space: nowrap !important;
    letter-spacing: -0.01em !important;
    font-family: 'Poppins', sans-serif !important;
}

/* Hover de Tab */
.history-section .nav-tabs.tab-btn-style-one .nav-link:hover {
    border-color: #93C5FD !important;
    transform: translateY(-3px) !important;
    box-shadow: 0 8px 20px rgba(43, 155, 255, 0.15) !important;
}

.history-section .nav-tabs.tab-btn-style-one .nav-link:hover h4 {
    color: #1D80E0 !important;
}

.history-section .nav-tabs.tab-btn-style-one .nav-link:hover .timeline-dot {
    background: #2B9BFF;
}

/* Tab Activo */
.history-section .nav-tabs.tab-btn-style-one .nav-link.active {
    background: #0A2540 !important;
    border-color: #0A2540 !important;
    transform: translateY(-4px) scale(1.04) !important;
    box-shadow: 0 12px 25px -5px rgba(10, 37, 64, 0.3), 0 0 15px rgba(43, 155, 255, 0.35) !important;
}

.history-section .nav-tabs.tab-btn-style-one .nav-link.active h4 {
    color: #FFFFFF !important;
    font-weight: 800 !important;
}

.history-section .nav-tabs.tab-btn-style-one .nav-link.active .timeline-dot {
    background: #2B9BFF;
    box-shadow: 0 0 0 3px rgba(43, 155, 255, 0.4), 0 0 10px #2B9BFF;
}

/* Tarjetas Históricas (History Cards) */
.history-section .history-area {
    padding: 0 !important;
}

.history-block {
    height: 100% !important;
    padding: 10px 5px !important;
}

.history-block .inner-box {
    background: #FFFFFF !important;
    border: 1px solid #E2E8F0 !important;
    border-radius: 16px !important;
    padding: 28px 24px !important;
    box-shadow: 0 10px 25px -5px rgba(15, 23, 42, 0.05), 0 8px 10px -6px rgba(15, 23, 42, 0.03) !important;
    transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
    height: 100% !important;
    min-height: 270px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    position: relative !important;
    overflow: hidden !important;
}

.history-block .inner-box:before {
    position: absolute !important;
    content: '' !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 4px !important;
    background: linear-gradient(90deg, #2B9BFF 0%, #1E3A8A 100%) !important;
    opacity: 0 !important;
    transition: opacity 0.3s ease !important;
}

.history-block .inner-box:hover {
    border-color: rgba(43, 155, 255, 0.5) !important;
    transform: translateY(-6px) !important;
    box-shadow: 0 20px 35px -10px rgba(10, 37, 64, 0.12), 0 10px 20px -5px rgba(43, 155, 255, 0.16) !important;
}

.history-block .inner-box:hover:before {
    opacity: 1 !important;
}

.history-block .date {
    display: inline-flex !important;
    align-items: center !important;
    gap: 7px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
    color: #1D80E0 !important;
    background: rgba(43, 155, 255, 0.08) !important;
    padding: 5px 13px !important;
    border-radius: 50px !important;
    border: 1px solid rgba(43, 155, 255, 0.2) !important;
    width: fit-content !important;
    margin-bottom: 16px !important;
    padding-bottom: 5px !important;
}

.history-block .date:before {
    display: none !important;
}

.history-block .date span {
    font-size: 12px !important;
    font-weight: 700 !important;
}

.history-block h4 {
    font-size: 17px !important;
    font-weight: 700 !important;
    color: #0F172A !important;
    line-height: 1.45 !important;
    margin-bottom: 12px !important;
    font-family: 'Poppins', sans-serif !important;
}

.history-block .text {
    font-size: 14px !important;
    color: #475569 !important;
    line-height: 1.65 !important;
    margin-bottom: 0 !important;
    flex-grow: 1 !important;
}

/* Neutralización definitiva de los controles asimétricos legados de Owl */
.history-section .owl-theme .owl-nav,
.history-section .owl-nav {
    display: none !important;
}

/* Dots refinados */
.history-section .owl-theme .owl-dots {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 6px !important;
    margin-top: 25px !important;
}

.history-section .owl-theme .owl-dots .owl-dot span {
    width: 8px !important;
    height: 8px !important;
    margin: 0 !important;
    background: #CBD5E1 !important;
    border-radius: 4px !important;
    transition: all 0.3s ease !important;
}

.history-section .owl-theme .owl-dots .owl-dot.active span {
    width: 24px !important;
    background: #2B9BFF !important;
}

/* Controles de Navegación del Carrusel Centrados y Simétricos */
.history-carousel-controls {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    margin-top: 35px;
}

.history-nav-btn {
    width: 48px !important;
    height: 48px !important;
    border-radius: 50% !important;
    background: #FFFFFF !important;
    border: 2px solid #CBD5E1 !important;
    color: #0A2540 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 15px !important;
    cursor: pointer !important;
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.08) !important;
    transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
    outline: none !important;
}

.history-nav-btn:hover {
    background: #2B9BFF !important;
    border-color: #2B9BFF !important;
    color: #FFFFFF !important;
    transform: scale(1.08) !important;
    box-shadow: 0 8px 20px rgba(43, 155, 255, 0.3) !important;
}

.history-nav-btn:active {
    transform: scale(0.96) !important;
}

.history-nav-hint {
    font-size: 13.5px;
    font-weight: 500;
    color: #64748B;
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0 8px;
}

/* Adaptabilidad Móvil */
@media (max-width: 991px) {
    .history-intro-title {
        font-size: 28px;
    }

    .history-section .nav-tabs.tab-btn-style-one {
        gap: 8px !important;
        padding: 0 5px !important;
    }

    .history-section .nav-tabs.tab-btn-style-one .nav-link {
        padding: 8px 12px !important;
    }

    .history-section .nav-tabs.tab-btn-style-one .nav-link h4 {
        font-size: 13px !important;
    }
}

@media (max-width: 767px) {
    .history-section {
        padding: 55px 0 75px !important;
    }

    .history-intro-title {
        font-size: 24px;
    }

    .history-showcase-card {
        margin-bottom: 35px;
    }

    .history-section .nav-tabs.tab-btn-style-one {
        display: flex !important;
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        padding-bottom: 12px !important;
        margin-bottom: 30px !important;
        justify-content: flex-start !important;
        -webkit-overflow-scrolling: touch !important;
        scrollbar-width: none !important;
    }

    .history-section .nav-tabs.tab-btn-style-one::-webkit-scrollbar {
        display: none !important;
    }

    .history-section .nav-tabs.tab-btn-style-one:before {
        display: none !important;
    }

    .history-section .nav-tabs.tab-btn-style-one li.nav-item {
        flex: 0 0 auto !important;
    }

    .history-carousel-controls {
        flex-wrap: wrap;
        gap: 12px;
    }
}

/* ==========================================================================
   MÓDULO: NUESTRO EQUIPO DE LIDERAZGO / DIRECTORIO (Rediseño Institucional 2026)
   ========================================================================== */

/* 1. Sección contenedora con fondo institucional bg-18.jpg intacto */
.team-section.style-three {
    position: relative !important;
    padding: 70px 0 85px !important;
    background-color: #F8FAFC !important;
    background-repeat: repeat !important;
    background-position: center !important;
    background-size: auto !important;
}

/* Velo institucional suave para profundidad y contraste con el fondo bg-18.jpg */
.team-section.style-three::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    background: linear-gradient(180deg, rgba(245, 248, 252, 0.88) 0%, rgba(240, 244, 248, 0.94) 100%) !important;
    pointer-events: none !important;
    z-index: 1 !important;
}

.team-section.style-three>.auto-container {
    position: relative !important;
    z-index: 2 !important;
}

/* 2. Contenedor Principal Institucional Moderno (Max 1200px, Fondo blanco/suave, Bordes 16px, Sombra discreta) */
.directory-main-container {
    max-width: 1200px !important;
    margin: 0 auto !important;
    background: #FFFFFF !important;
    border: 1px solid #DFE8F3 !important;
    border-radius: 16px !important;
    box-shadow: 0 10px 30px -5px rgba(16, 42, 76, 0.07), 0 4px 12px -2px rgba(16, 42, 76, 0.03) !important;
    padding: 44px 36px 48px !important;
    position: relative !important;
}

/* 3. Encabezado del Directorio */
.directory-header {
    text-align: center !important;
    margin-bottom: 38px !important;
}

/* Etiqueta superior en azul institucional (#168BEE) */
.directory-badge {
    display: inline-block !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 12.5px !important;
    font-weight: 700 !important;
    color: #168BEE !important;
    text-transform: uppercase !important;
    letter-spacing: 0.12em !important;
    background: rgba(22, 139, 238, 0.08) !important;
    border: 1px solid rgba(22, 139, 238, 0.22) !important;
    padding: 6px 18px !important;
    border-radius: 50px !important;
    margin-bottom: 12px !important;
}

/* Título principal en azul marino (#102A4C) */
.directory-title {
    font-family: 'Poppins', sans-serif !important;
    font-size: 32px !important;
    font-weight: 700 !important;
    color: #102A4C !important;
    line-height: 1.25 !important;
    margin: 0 0 8px !important;
    letter-spacing: -0.01em !important;
}

/* Subtítulo en gris azulado (#5A6E85 / #64748B) */
.directory-subtitle {
    font-family: 'Inter', sans-serif !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    color: #5A6E85 !important;
    line-height: 1.5 !important;
    margin: 0 !important;
}

/* 4. Grilla y Columnas de Tarjetas */
.directory-grid {
    margin-top: 0 !important;
}

.directory-col {
    display: flex !important;
}

/* 5. Tarjetas de los Dirigentes (Estructura y Efecto Hover fiel a phpcms/team.php) */
.team-section.style-three .team-blcok {
    margin-bottom: 40px !important;
    display: flex !important;
}

.team-section.style-three .team-blcok .inner-box {
    position: relative !important;
    width: 100% !important;
    margin-bottom: 10px !important;
    background: transparent !important;
    transition: all 0.35s ease !important;
}

/* Contenedor de Fotografía */
.team-section.style-three .team-blcok .image {
    position: relative !important;
    overflow: hidden !important;
    background: #E2E8F0 !important;
    border-radius: 4px !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05) !important;
}

.team-section.style-three .team-blcok .image img {
    width: 100% !important;
    aspect-ratio: 1 / 1 !important;
    object-fit: cover !important;
    object-position: center top !important;
    display: block !important;
    transition: transform 0.5s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.team-section.style-three .team-blcok .inner-box:hover .image img {
    transform: scale(1.04) !important;
}

/* Caja de contenido superpuesta a la fotografía (Fondo blanco, sombra y desplazamiento -35px) */
.team-section.style-three .team-blcok .content {
    position: relative !important;
    background: #FFFFFF !important;
    box-shadow: 0px 10px 30px 0px rgba(0, 0, 0, 0.12) !important;
    padding: 24px 16px 20px !important;
    margin: -35px 25px 0 !important;
    border-radius: 2px !important;
    z-index: 3 !important;
    transition: box-shadow 0.3s ease !important;
}

.team-section.style-three .team-blcok .inner-box:hover .content {
    box-shadow: 0px 15px 35px 0px rgba(10, 37, 64, 0.18) !important;
}

/* Cargo institucional en estado normal (Barra azul marino con pestaña izquierda azul brillante) */
.team-section.style-three .team-blcok .content>.designation {
    position: absolute !important;
    top: -35px !important;
    left: 0 !important;
    height: 35px !important;
    line-height: 23px !important;
    display: inline-flex !important;
    align-items: center !important;
    font-family: 'Poppins', sans-serif !important;
    font-size: 13.5px !important;
    font-weight: 700 !important;
    color: #FFFFFF !important;
    text-transform: uppercase !important;
    letter-spacing: 0.04em !important;
    background: #1D3C97 !important;
    border-left: 4px solid #1E90FF !important;
    padding: 6px 18px !important;
    white-space: nowrap !important;
    transition: opacity 0.22s ease, visibility 0.22s ease !important;
    z-index: 2 !important;
}

/* Ocultar cargo normal al pasar el mouse */
.team-section.style-three .team-blcok .inner-box:hover .content>.designation {
    opacity: 0 !important;
    visibility: hidden !important;
}

/* Nombre del directivo */
.team-section.style-three .team-blcok .content h4 {
    position: relative !important;
    text-align: center !important;
    font-family: 'Poppins', sans-serif !important;
    font-size: 19px !important;
    font-weight: 700 !important;
    color: #212529 !important;
    line-height: 1.35 !important;
    margin: 0 !important;
    padding: 0 !important;
    letter-spacing: -0.01em !important;
    transition: color 0.3s ease !important;
}

.team-section.style-three .team-blcok .inner-box:hover .content h4 {
    color: #1D3C97 !important;
}

/* Contenido Hover desplegable: Redes Sociales + FUNDADOR */
.team-section.style-three .team-blcok .hover-content {
    position: absolute !important;
    left: 0 !important;
    top: -35px !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    height: 35px !important;
    transform: scaleY(0) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    transform-origin: top !important;
    transition: transform 0.28s ease, opacity 0.28s ease, visibility 0.28s ease !important;
    z-index: 5 !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15) !important;
}

/* Despliegue al pasar el mouse sobre la tarjeta o el cargo */
.team-section.style-three .team-blcok .inner-box:hover .hover-content {
    transform: scaleY(1) !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/* Bloque azul de redes sociales */
.team-section.style-three .team-blcok .hover-content .social-icon {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    background: #2563EB !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    height: 35px !important;
}

.team-section.style-three .team-blcok .hover-content .social-icon li {
    margin: 0 !important;
    padding: 0 !important;
    height: 100% !important;
    display: flex !important;
}

.team-section.style-three .team-blcok .hover-content .social-icon li a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #FFFFFF !important;
    font-size: 14px !important;
    width: 36px !important;
    height: 35px !important;
    text-align: center !important;
    border-right: 1px solid rgba(255, 255, 255, 0.22) !important;
    transition: background 0.25s ease !important;
    text-decoration: none !important;
}

.team-section.style-three .team-blcok .hover-content .social-icon li:last-child a {
    border-right: none !important;
}

.team-section.style-three .team-blcok .hover-content .social-icon li a:hover {
    background: rgba(0, 0, 0, 0.18) !important;
    color: #FFFFFF !important;
}

/* Placa FUNDADOR en el hover */
.team-section.style-three .team-blcok .hover-content .designation {
    position: relative !important;
    top: 0 !important;
    left: 0 !important;
    border: 0 !important;
    background: #1D3C97 !important;
    color: #FFFFFF !important;
    font-family: 'Poppins', sans-serif !important;
    font-size: 13.5px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    padding: 0 18px !important;
    height: 35px !important;
    line-height: 35px !important;
    display: inline-flex !important;
    align-items: center !important;
    white-space: nowrap !important;
    margin: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/* 6. Adaptabilidad Responsive */
@media (max-width: 991px) {
    .team-section.style-three {
        padding: 60px 0 70px !important;
    }

    .directory-main-container {
        padding: 36px 20px 40px !important;
        margin: 0 10px !important;
    }

    .directory-title {
        font-size: 28px !important;
    }

    .team-section.style-three .team-blcok .content {
        margin: -35px 15px 0 !important;
        padding: 22px 12px 18px !important;
    }

    .team-section.style-three .team-blcok .content h4 {
        font-size: 17.5px !important;
    }
}

@media (max-width: 767px) {
    .team-section.style-three {
        padding: 45px 0 55px !important;
    }

    .directory-main-container {
        padding: 26px 12px 30px !important;
        border-radius: 12px !important;
        margin: 0 5px !important;
    }

    .directory-title {
        font-size: 24px !important;
    }

    .directory-subtitle {
        font-size: 14.5px !important;
        margin-bottom: 26px !important;
    }

    .team-section.style-three .team-blcok {
        max-width: 380px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        width: 100% !important;
    }
}

/* ==========================================================================
   MÓDULO: NUESTRA RED / DESLIZADOR REGIONAL HORIZONTAL & SEDES
   ========================================================================== */

.institutional-sedes-section {
    position: relative !important;
    padding: 70px 0 85px !important;
    background-color: #F8FAFC !important;
    background-repeat: repeat !important;
    background-position: center !important;
    background-size: auto !important;
}

.institutional-sedes-section::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    background: linear-gradient(180deg, rgba(245, 248, 252, 0.88) 0%, rgba(240, 244, 248, 0.94) 100%) !important;
    pointer-events: none !important;
    z-index: 1 !important;
}

.institutional-sedes-section>.auto-container {
    position: relative !important;
    z-index: 2 !important;
}

/* ==========================================================================
   ENCABEZADO INSTITUCIONAL Y CONTENEDOR (NUESTRA RED - Similar a /directorio)
   ========================================================================== */

.regional-conceptual-card {
    max-width: 1200px !important;
    margin: 0 auto 40px !important;
    background: #FFFFFF !important;
    border: 1px solid #DFE8F3 !important;
    border-radius: 16px !important;
    box-shadow: 0 10px 30px -5px rgba(16, 42, 76, 0.07), 0 4px 12px -2px rgba(16, 42, 76, 0.03) !important;
    padding: 44px 36px 36px !important;
    position: relative !important;
}

/* Encabezado: Idéntico al de /directorio */
.regional-conceptual-header {
    text-align: center !important;
    margin-bottom: 38px !important;
}

/* Etiqueta / Badge tipo píldora en azul institucional (#168BEE) */
.regional-conceptual-badge {
    display: inline-block !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 12.5px !important;
    font-weight: 700 !important;
    color: #168BEE !important;
    text-transform: uppercase !important;
    letter-spacing: 0.12em !important;
    background: rgba(22, 139, 238, 0.08) !important;
    border: 1px solid rgba(22, 139, 238, 0.22) !important;
    padding: 6px 18px !important;
    border-radius: 50px !important;
    margin-bottom: 12px !important;
}

/* Título principal en azul marino (#102A4C) */
.regional-conceptual-title {
    font-family: 'Poppins', sans-serif !important;
    font-size: 32px !important;
    font-weight: 700 !important;
    color: #102A4C !important;
    line-height: 1.25 !important;
    margin: 0 0 8px !important;
    letter-spacing: -0.01em !important;
}

/* Subtítulo en gris azulado (#5A6E85) */
.regional-conceptual-subtitle {
    font-family: 'Inter', sans-serif !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    color: #5A6E85 !important;
    line-height: 1.5 !important;
    margin: 0 !important;
}

/* Flecha inferior indicadora del deslizador */
.regional-scroll-down-wrapper {
    margin-top: 26px !important;
    display: flex !important;
    justify-content: center !important;
}

.regional-scroll-down-btn {
    width: 38px !important;
    height: 38px !important;
    border-radius: 50% !important;
    border: 1px solid #cbd5e1 !important;
    background: #ffffff !important;
    color: #475569 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 14px !important;
    box-shadow: 0 2px 6px rgba(16, 42, 76, 0.06) !important;
    transition: all 0.25s ease !important;
    text-decoration: none !important;
    cursor: pointer !important;
}

.regional-scroll-down-btn:hover {
    background: #168bee !important;
    border-color: #168bee !important;
    color: #ffffff !important;
    transform: translateY(3px) !important;
    box-shadow: 0 4px 12px rgba(22, 139, 238, 0.25) !important;
}

/* ==========================================================================
   DESLIZADOR HORIZONTAL DE REGIONES (CARRUSEL 6 REGIONES)
   ========================================================================== */

.regional-slider-component {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    margin-bottom: 0 !important;
    gap: 12px !important;
    width: 100% !important;
}

/* Flechas de Navegación del Deslizador */
.regional-slider-arrow {
    flex: 0 0 44px !important;
    width: 44px !important;
    height: 44px !important;
    background: #ffffff !important;
    border: 1px solid #cbd5e1 !important;
    border-radius: 4px !important;
    color: #102a4c !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 16px !important;
    cursor: pointer !important;
    box-shadow: 0 4px 12px rgba(16, 42, 76, 0.08) !important;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
    z-index: 5 !important;
    outline: none !important;
    padding: 0 !important;
}

.regional-slider-arrow:hover:not(:disabled):not(.disabled) {
    background: #168bee !important;
    border-color: #168bee !important;
    color: #ffffff !important;
    box-shadow: 0 6px 16px rgba(22, 139, 238, 0.3) !important;
    transform: scale(1.04) !important;
}

.regional-slider-arrow:disabled,
.regional-slider-arrow.disabled {
    opacity: 0.35 !important;
    cursor: not-allowed !important;
    pointer-events: none !important;
    background: #f1f5f9 !important;
    border-color: #e2e8f0 !important;
    color: #94a3b8 !important;
    box-shadow: none !important;
}

/* Viewport con Scroll Snap y barra de desplazamiento oculta */
.regional-slider-viewport {
    flex: 1 1 auto !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-behavior: smooth !important;
    scroll-snap-type: x mandatory !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    /* Firefox */
    -ms-overflow-style: none !important;
    /* IE/Edge */
    padding: 8px 4px !important;
}

.regional-slider-viewport::-webkit-scrollbar {
    display: none !important;
    /* Chrome, Safari, Opera */
}

/* Track de las pestañas (Pista del carrusel) */
.regional-slider-track {
    display: flex !important;
    flex-wrap: nowrap !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    gap: 16px !important;
    border: none !important;
    width: 100% !important;
}

/* Elemento del Deslizador (Slide) */
.regional-slider-item {
    /* En escritorio se distribuyen las 6 uniformemente en una sola línea */
    flex: 1 1 0px !important;
    min-width: 145px !important;
    scroll-snap-align: start !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Tarjeta Regional */
.regional-card {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    background: #ffffff !important;
    border: 1px solid #d9e2ec !important;
    /* Bordes finos */
    border-radius: 4px !important;
    /* Esquinas cuadradas / mínimamente redondeadas */
    padding: 24px 14px 20px !important;
    text-decoration: none !important;
    box-shadow: 0 2px 8px rgba(16, 42, 76, 0.05) !important;
    /* Sombras discretas */
    transition: all 0.25s ease !important;
    cursor: pointer !important;
    position: relative !important;
    width: 100% !important;
    min-height: 165px !important;
    text-align: center !important;
}

/* Envoltorio de la Fotografía Circular Original */
.regional-card-flag {
    width: 82px !important;
    height: 82px !important;
    border-radius: 50% !important;
    overflow: hidden !important;
    margin: 0 auto 14px !important;
    border: 3px solid #f1f5f9 !important;
    box-shadow: 0 3px 8px rgba(0, 0, 0, 0.08) !important;
    transition: border-color 0.25s ease, box-shadow 0.25s ease !important;
    flex-shrink: 0 !important;
}

/* Fotografía Original: 100% intacta, circular, sin filtros ni recortes */
.regional-flag-img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    border-radius: 50% !important;
    display: block !important;
}

/* Nombre de la Región */
.regional-card-title {
    font-family: 'Poppins', sans-serif !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    letter-spacing: 0.5px !important;
    text-transform: uppercase !important;
    color: #102a4c !important;
    margin: 0 !important;
    text-align: center !important;
    transition: color 0.25s ease !important;
}

/* Hover de la Tarjeta */
.regional-card:hover {
    border-color: #168bee !important;
    box-shadow: 0 4px 14px rgba(22, 139, 238, 0.12) !important;
    transform: translateY(-2px) !important;
    background: #ffffff !important;
}

.regional-card:hover .regional-card-flag {
    border-color: #168bee !important;
}

.regional-card:hover .regional-card-title {
    color: #168bee !important;
}

/* Estado Activo de la Región Seleccionada (Borde azul institucional destacado) */
.regional-card.active,
.regional-card.active:hover {
    border: 0.5px solid #168bee !important;
    background: #ffffff !important;
    box-shadow: 0 4px 16px rgba(22, 139, 238, 0.18) !important;
    position: relative !important;
    transform: none !important;
}

.regional-card.active .regional-card-flag {
    border-color: #168bee !important;
    box-shadow: 0 4px 12px rgba(22, 139, 238, 0.25) !important;
}

.regional-card.active .regional-card-title {
    color: #168bee !important;
    font-weight: 800 !important;
}

.regional-card.active::after {
    content: '' !important;
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 1px !important;
    background: #168bee !important;
}

/* Responsive del Deslizador */
/* Tablet: 3 a 4 regiones visibles con desplazamiento horizontal */
@media (max-width: 991px) and (min-width: 768px) {
    .regional-slider-track {
        gap: 14px !important;
    }

    .regional-slider-item {
        flex: 0 0 calc((100% - (2 * 14px)) / 3) !important;
        /* ~3 visibles cómodas */
        min-width: calc((100% - (2 * 14px)) / 3) !important;
    }
}

/* Móvil: ~2 regiones visibles con desplazamiento táctil */
@media (max-width: 767px) {
    .regional-slider-component {
        margin-bottom: 30px !important;
        gap: 8px !important;
    }

    .regional-slider-arrow {
        flex: 0 0 38px !important;
        width: 38px !important;
        height: 38px !important;
        font-size: 14px !important;
    }

    .regional-slider-track {
        gap: 10px !important;
    }

    .regional-slider-item {
        flex: 0 0 calc((100% - 10px) / 2) !important;
        /* 2 regiones visibles */
        min-width: calc((100% - 10px) / 2) !important;
    }

    .regional-card {
        padding: 16px 8px 14px !important;
        min-height: 140px !important;
    }

    .regional-card-flag {
        width: 60px !important;
        height: 60px !important;
        margin-bottom: 8px !important;
    }

    .regional-card-title {
        font-size: 13px !important;
    }
}

/* ==========================================================================
   MODERNIZACIÓN DE LAS TARJETAS DE ESTABLECIMIENTOS (.contact-info-block-two)
   ========================================================================== */
.institutional-sedes-section .tab-pane .row {
    display: flex !important;
    flex-wrap: wrap !important;
    margin-right: -12px !important;
    margin-left: -12px !important;
}

.institutional-sedes-section .contact-info-block-two {
    display: flex !important;
    flex-direction: column !important;
    padding-right: 12px !important;
    padding-left: 12px !important;
    margin-bottom: 24px !important;
}

.institutional-sedes-section .contact-info-block-two .inner-box {
    flex: 1 1 auto !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    background: #ffffff !important;
    border: 1px solid #d9e2ec !important;
    border-top: 1px solid #168bee !important;
    border-radius: 8px !important;
    /* Esquinas cuadradas institucionales */
    padding: 26px 22px !important;
    box-shadow: 0 4px 15px rgba(16, 42, 76, 0.05) !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    text-align: left !important;
    margin-bottom: 0 !important;
    position: relative !important;
}

.institutional-sedes-section .contact-info-block-two .inner-box:hover {
    transform: translateY(-4px) !important;
    border-color: #168bee !important;
    box-shadow: 0 12px 28px rgba(22, 139, 238, 0.15) !important;
}

.institutional-sedes-section .contact-info-block-two h4 {
    font-family: 'Poppins', sans-serif !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #102a4c !important;
    margin-bottom: 14px !important;
    padding-bottom: 10px !important;
    border-bottom: 1px solid #f1f5f9 !important;
    text-transform: none !important;
    line-height: 1.4 !important;
}

.institutional-sedes-section .contact-info-block-two ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    flex: 1 1 auto !important;
}

.institutional-sedes-section .contact-info-block-two ul li {
    font-family: 'Inter', sans-serif !important;
    font-size: 13.5px !important;
    line-height: 1.5 !important;
    color: #475569 !important;
    word-break: break-word !important;
    margin: 0 !important;
    display: flex !important;
    align-items: flex-start !important;
    gap: 9px !important;
}

.institutional-sedes-section .contact-info-block-two ul li i {
    color: #168bee !important;
    font-size: 13.5px !important;
    margin-top: 3px !important;
    flex-shrink: 0 !important;
}

.institutional-sedes-section .contact-info-block-two ul li a {
    color: #168bee !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    transition: color 0.2s ease !important;
}

.institutional-sedes-section .contact-info-block-two ul li a:hover {
    color: #0b5ed7 !important;
    text-decoration: underline !important;
}

.institutional-sedes-section .contact-info-block-two ul li a span {
    color: #168bee !important;
}

/* Métrica / Contador Inferior */
.institutional-sedes-section .bottom-content {
    margin-top: 40px !important;
    margin-bottom: 0 !important;
}

/* ==========================================================================
   PIE DE PÁGINA INSTITUCIONAL ESTANDARIZADO (MAIN FOOTER - Ref: /directorio)
   ========================================================================== */
.footer-modern {
    background-color: #071728 !important;
    position: relative !important;
    z-index: 10 !important;
    padding-top: 50px !important;
    border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.institutional-sedes-section .bottom-content .text {
    display: inline-block !important;
    background: #ffffff !important;
    border: 1px solid #d9e2ec !important;
    border-radius: 4px !important;
    padding: 16px 36px !important;
    box-shadow: 0 4px 16px rgba(16, 42, 76, 0.06) !important;
    font-family: 'Poppins', sans-serif !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    color: #102a4c !important;
    margin: 0 !important;
}

.institutional-sedes-section .bottom-content .text span {
    color: #168bee !important;
    font-weight: 800 !important;
    font-size: 18px !important;
    text-decoration: underline !important;
}

/* ==========================================================================
   SINASSC 728 - REDISEÑO PROFESIONAL DE SERVICIOS Y PORTAFOLIOS
   ========================================================================== */

/* --- 1. Tarjetas Institucionales de Redes de Salud (/servicios - Fiel a phpcms/service.php) --- */
.services-institutional-section {
    background-color: #ffffff !important;
    padding: 45px 0 35px 0 !important;
}

.services-cards-container {
    max-width: 1170px !important;
    margin: 0 auto !important;
    padding: 0 15px !important;
    width: 100% !important;
}

.service-phpcms-card {
    background: #ffffff !important;
    border: 1px solid rgba(0, 0, 0, 0.125) !important;
    border-radius: 4px !important;
    overflow: hidden !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    height: 100% !important;
    width: 100% !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04) !important;
    transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease !important;
}

.service-phpcms-card:hover {
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.09) !important;
    border-color: rgba(30, 144, 255, 0.35) !important;
}

.service-phpcms-card .service-phpcms-top {
    display: flex !important;
    flex-direction: column !important;
    flex-grow: 1 !important;
}

.service-phpcms-card .card-img-top {
    height: 270px !important;
    width: 100% !important;
    object-fit: cover !important;
    display: block !important;
    border-top-left-radius: 3px !important;
    border-top-right-radius: 3px !important;
}

.service-phpcms-card .card-body {
    padding: 22px 20px 18px 20px !important;
    flex-grow: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    background: #ffffff !important;
}

.service-phpcms-card .card-title {
    font-size: 19.5px !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
    margin-bottom: 12px !important;
    font-family: 'Inter', 'Poppins', sans-serif !important;
}

.service-phpcms-card .card-title a {
    color: #1e90ff !important;
    text-decoration: none !important;
    transition: color 0.2s ease !important;
}

.service-phpcms-card .card-title a:hover {
    color: #0056b3 !important;
}

.service-phpcms-card .card-text {
    font-size: 14.5px !important;
    color: #495057 !important;
    line-height: 1.6 !important;
    margin-bottom: 0 !important;
    font-family: 'Inter', sans-serif !important;
}

.service-phpcms-card .card-footer {
    background-color: rgba(0, 0, 0, 0.03) !important;
    border-top: 1px solid rgba(0, 0, 0, 0.08) !important;
    padding: 12px 20px !important;
    margin-top: auto !important;
    border-radius: 0 0 3px 3px !important;
}

.service-phpcms-card .card-footer .link {
    margin: 0 !important;
    padding: 0 !important;
}

.service-phpcms-card .readmore-link {
    font-family: 'Poppins', sans-serif !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #2b3940 !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
    letter-spacing: 0.03em !important;
    display: inline-flex !important;
    align-items: center !important;
    transition: color 0.2s ease !important;
}

.service-phpcms-card .readmore-link i {
    display: inline-block !important;
    transform: rotate(135deg) !important;
    color: #1e90ff !important;
    font-size: 11px !important;
    margin-right: 8px !important;
    transition: transform 0.3s ease !important;
}

.service-phpcms-card:hover .readmore-link {
    color: #1e90ff !important;
}

.service-phpcms-card:hover .readmore-link i {
    transform: rotate(90deg) !important;
}

.service-card-modern {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 18px !important;
    box-shadow: 0 4px 20px rgba(15, 23, 42, 0.05) !important;
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    overflow: hidden !important;
    transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.3s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.3s ease !important;
}

.service-card-modern:hover {
    transform: translateY(-6px) !important;
    box-shadow: 0 18px 36px rgba(10, 37, 64, 0.12) !important;
    border-color: #cbd5e1 !important;
}

.service-card-img-wrap {
    height: 320px !important;
    width: 100% !important;
    position: relative !important;
    overflow: hidden !important;
    background-color: #0f172a !important;
}

.service-card-img-wrap img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center top !important;
    transition: transform 0.45s ease !important;
}

.service-card-modern:hover .service-card-img-wrap img {
    transform: scale(1.05) !important;
}

@media (max-width: 991px) {
    .service-card-img-wrap {
        height: 280px !important;
    }
}

@media (max-width: 576px) {
    .service-card-img-wrap {
        height: 240px !important;
    }
}

.service-card-modern .btn-primary {
    background: #0d6efd !important;
    border-color: #0d6efd !important;
    color: #ffffff !important;
    box-shadow: 0 4px 12px rgba(13, 110, 253, 0.25) !important;
    transition: all 0.25s ease !important;
}

.service-card-modern .btn-primary:hover {
    background: #0b5ed7 !important;
    border-color: #0a58ca !important;
    box-shadow: 0 6px 16px rgba(13, 110, 253, 0.35) !important;
    transform: translateY(-2px) !important;
}

.service-card-modern .btn-primary:hover i {
    transform: translateX(2px) !important;
}

.service-card-body {
    padding: 24px 24px 20px 24px;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
}

.service-card-title {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #0a2540 !important;
    margin-bottom: 12px !important;
    line-height: 1.4 !important;
}

.service-card-title a {
    color: #0a2540 !important;
    text-decoration: none !important;
    transition: color 0.2s ease;
}

.service-card-title a:hover {
    color: #2563eb !important;
}

.service-card-desc {
    font-size: 14.5px !important;
    color: #64748b !important;
    line-height: 1.6 !important;
    margin-bottom: 16px !important;
    flex-grow: 1;
}

.service-card-footer {
    padding: 0 22px 20px 22px;
    background: transparent !important;
    border-top: none !important;
}

.btn-readmore-institutional {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    letter-spacing: 0.04em !important;
    color: #2563eb !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
    transition: all 0.2s ease !important;
}

.btn-readmore-institutional i {
    font-size: 11px !important;
    transition: transform 0.2s ease !important;
}

.btn-readmore-institutional:hover {
    color: #1d4ed8 !important;
}

.btn-readmore-institutional:hover i {
    transform: translateX(4px) !important;
}

/* --- 2. Portafolios Estratégicos de Servicios (Grilla 2x2) --- */
.portfolio-header-container {
    text-align: center;
    margin-bottom: 35px;
}

/* Etiqueta / Badge tipo píldora en azul institucional (#168BEE) - Idéntico a Cobertura Institucional */
.institutional-badge-pill,
.portfolio-header-badge {
    display: inline-block !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 12.5px !important;
    font-weight: 700 !important;
    color: #168BEE !important;
    text-transform: uppercase !important;
    letter-spacing: 0.12em !important;
    background: rgba(22, 139, 238, 0.08) !important;
    border: 1px solid rgba(22, 139, 238, 0.22) !important;
    padding: 6px 18px !important;
    border-radius: 50px !important;
    margin-bottom: 14px !important;
    line-height: 1.4 !important;
}

.portfolio-header-title {
    font-size: 30px !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    margin-bottom: 8px !important;
}

.portfolio-header-subtitle {
    font-size: 15px !important;
    color: #64748b !important;
    margin-bottom: 0 !important;
}

/* --- Bloque Portafolios (Estilo service-block-two fiel a phpcms/service.php e Imagen 2) --- */
.portfolio-block-two-card {
    position: relative !important;
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 8px !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06) !important;
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding: 0 !important;
    padding-right: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 220px !important;
    overflow: visible !important;
    transition: transform 0.25s ease, box-shadow 0.25s ease !important;
}

.portfolio-block-two-card:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.1) !important;
}

.portfolio-block-two-card .image-box {
    position: relative !important;
    flex: 0 0 210px !important;
    width: 210px !important;
    max-width: 210px !important;
    height: auto !important;
    min-height: 100% !important;
    align-self: stretch !important;
    overflow: visible !important;
}

.portfolio-block-two-card .image-box img.portfolio-card-img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
    border-top-left-radius: 8px !important;
    border-bottom-left-radius: 8px !important;
    border-top-right-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
}

.portfolio-block-two-card .image-box .icon {
    position: absolute !important;
    right: 0 !important;
    top: 50% !important;
    transform: translateY(-50%) translateX(50%) !important;
    width: 100px !important;
    height: 100px !important;
    background-color: #ffffff !important;
    border-radius: 50% !important;
    text-align: center !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12) !important;
    z-index: 5 !important;
}

.portfolio-block-two-card .image-box .icon:before {
    position: absolute !important;
    content: '' !important;
    left: 0 !important;
    bottom: 0 !important;
    top: 0 !important;
    right: 0 !important;
    background-image: url('../images/shape/border-shape-8.png') !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    background-size: contain !important;
    transition: transform 0.6s ease-in-out !important;
    display: inline-block !important;
}

.portfolio-block-two-card:hover .image-box .icon:before {
    transform: rotate(180deg) !important;
}

.portfolio-block-two-card .image-box .icon span {
    font-size: 38px !important;
    color: #168bee !important;
    position: static !important;
    opacity: 1 !important;
    visibility: visible !important;
    display: inline-block !important;
}

.portfolio-block-two-card .content {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    padding: 24px 24px 22px 64px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: flex-start !important;
    width: 100% !important;
}

.portfolio-tag-sub {
    color: #168bee !important;
    font-size: 11.5px !important;
    font-weight: 700 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    margin-bottom: 6px !important;
    display: block !important;
    font-family: 'Inter', sans-serif !important;
}

.portfolio-item-title {
    font-size: 18.5px !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    margin-bottom: 8px !important;
    line-height: 1.35 !important;
    padding-bottom: 0 !important;
}

.portfolio-item-title:before {
    display: none !important;
}

.portfolio-item-title a {
    color: #0f172a !important;
    text-decoration: none !important;
    transition: color 0.2s ease !important;
}

.portfolio-item-title a:hover {
    color: #168bee !important;
}

.portfolio-item-text {
    font-size: 13.5px !important;
    color: #64748b !important;
    line-height: 1.55 !important;
    margin-bottom: 16px !important;
}

.portfolio-item-link {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    font-size: 12.5px !important;
    font-weight: 700 !important;
    color: #168bee !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    letter-spacing: 0.04em !important;
    transition: all 0.2s ease !important;
    margin-top: auto !important;
}

.portfolio-item-link:hover {
    color: #0b5ed7 !important;
}

.portfolio-item-link:hover i {
    transform: translateX(3px) !important;
}

/* Pantallas grandes de escritorio (>= 1200px) */
@media (min-width: 1200px) {
    .portfolio-block-two-card .image-box {
        flex: 0 0 230px !important;
        width: 230px !important;
        max-width: 230px !important;
    }
    .portfolio-block-two-card .image-box .icon {
        width: 110px !important;
        height: 110px !important;
    }
    .portfolio-block-two-card .image-box .icon span {
        font-size: 42px !important;
    }
    .portfolio-block-two-card .content {
        padding: 26px 28px 24px 72px !important;
    }
    .portfolio-item-title {
        font-size: 19px !important;
    }
    .portfolio-item-text {
        font-size: 14px !important;
    }
}

/* Tablet (768px a 991.98px): Tarjeta horizontal de ancho completo */
@media (min-width: 768px) and (max-width: 991.98px) {
    .portfolio-block-two-card {
        flex-direction: row !important;
        flex-wrap: nowrap !important;
    }
    .portfolio-block-two-card .image-box {
        flex: 0 0 230px !important;
        width: 230px !important;
        max-width: 230px !important;
    }
    .portfolio-block-two-card .image-box .icon {
        width: 105px !important;
        height: 105px !important;
    }
    .portfolio-block-two-card .image-box .icon span {
        font-size: 40px !important;
    }
    .portfolio-block-two-card .content {
        padding: 24px 28px 24px 68px !important;
    }
}

/* Móvil (< 768px): Tarjeta vertical (imagen superior, texto abajo) */
@media (max-width: 767.98px) {
    .portfolio-block-two-card {
        flex-direction: column !important;
        align-items: stretch !important;
        min-height: auto !important;
    }
    .portfolio-block-two-card .image-box {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 190px !important;
        height: 190px !important;
    }
    .portfolio-block-two-card .image-box img.portfolio-card-img {
        border-top-left-radius: 8px !important;
        border-top-right-radius: 8px !important;
        border-bottom-left-radius: 0 !important;
        border-bottom-right-radius: 0 !important;
    }
    .portfolio-block-two-card .image-box .icon {
        top: 100% !important;
        right: 50% !important;
        transform: translate(50%, -50%) !important;
        width: 86px !important;
        height: 86px !important;
    }
    .portfolio-block-two-card .image-box .icon span {
        font-size: 32px !important;
    }
    .portfolio-block-two-card .content {
        padding: 55px 20px 24px 20px !important;
        text-align: center !important;
        align-items: center !important;
    }
    .portfolio-item-link {
        justify-content: center !important;
        margin-top: 0 !important;
    }
}

.portfolio-card-action:hover i {
    transform: translateX(4px) !important;
}

/* --- 3. Panel Izquierdo: Servicios y Etiquetas (Sidebar 30%) --- */
.institutional-sidebar-panel {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 8px !important;
    padding: 24px 20px !important;
    box-shadow: 0 4px 15px rgba(15, 23, 42, 0.03) !important;
    margin-bottom: 30px !important;
}

.sidebar-institutional-title {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    margin-bottom: 16px !important;
    padding-bottom: 12px !important;
    border-bottom: 2px solid #2563eb !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
}

.sidebar-nav-list {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.sidebar-nav-item {
    margin-bottom: 10px !important;
}

.sidebar-nav-btn {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 13px 16px !important;
    background: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 6px !important;
    color: #1e293b !important;
    font-size: 14.5px !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
    position: static !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/* Solución definitiva al bug de opacidad de style.css (.widget_categories span) */
.sidebar-nav-btn span,
.sidebar-nav-btn .nav-btn-text {
    position: static !important;
    opacity: 1 !important;
    visibility: visible !important;
    color: inherit !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    transition: none !important;
    display: inline-block !important;
}

.sidebar-nav-btn .nav-btn-icon {
    font-size: 12px !important;
    color: #64748b !important;
    transition: transform 0.2s ease, color 0.2s ease !important;
    opacity: 1 !important;
    position: static !important;
}

.sidebar-nav-btn:hover {
    background: #eff6ff !important;
    border-color: #93c5fd !important;
    color: #1d4ed8 !important;
    transform: translateX(2px) !important;
}

.sidebar-nav-btn:hover .nav-btn-icon {
    color: #2563eb !important;
    transform: translateX(3px) !important;
}

.sidebar-nav-btn.active {
    background: #eff6ff !important;
    border: 1.5px solid #2563eb !important;
    color: #1e40af !important;
    font-weight: 700 !important;
    box-shadow: 0 2px 8px rgba(37, 99, 235, 0.12) !important;
}

.sidebar-nav-btn.active .nav-btn-icon {
    color: #2563eb !important;
    font-weight: bold !important;
}

/* Etiquetas del panel lateral */
.sidebar-tag-badge {
    display: inline-block !important;
    background: #f1f5f9 !important;
    color: #475569 !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 4px !important;
    padding: 7px 12px !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
    margin-bottom: 6px !important;
    margin-right: 4px !important;
}

.sidebar-tag-badge:hover {
    background: #2563eb !important;
    color: #ffffff !important;
    border-color: #2563eb !important;
    transform: translateY(-1px) !important;
}

/* --- 4. Encabezado de Detalle de Portafolio (Banner Azul Institucional) --- */
.portfolio-detail-hero-banner {
    background: #0f3460 !important;
    background: linear-gradient(135deg, #033168 0%, #2384f9 100%) !important;
    padding: 38px 0 34px 0 !important;
    color: #ffffff !important;
    text-align: center !important;
    box-shadow: inset 0 -4px 12px rgba(0, 0, 0, 0.1) !important;
}

.portfolio-detail-hero-banner h1 {
    color: #ffffff !important;
    font-size: 32px !important;
    font-weight: 700 !important;
    margin-bottom: 6px !important;
    letter-spacing: -0.02em !important;
}

.portfolio-detail-hero-banner p {
    color: rgba(255, 255, 255, 0.85) !important;
    font-size: 15px !important;
    margin-bottom: 0 !important;
}

/* --- 5. Contenedor Principal de Detalle (70%) --- */
.institutional-main-detail-box {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 8px !important;
    padding: 32px !important;
    box-shadow: 0 4px 16px rgba(15, 23, 42, 0.04) !important;
}

.institutional-detail-image-box {
    width: 100%;
    overflow: hidden;
    border-radius: 12px;
    margin-bottom: 26px;
    background: #ffffff;
    border: 1px solid #e2e8f0;
    box-shadow: 0 4px 16px rgba(15, 23, 42, 0.08);
    padding: 0;
    display: block;
}

.institutional-detail-image-box img {
    width: 100%;
    height: auto;
    max-width: 100%;
    display: block;
    border-radius: 11px;
    object-fit: cover;
}

.institutional-detail-title {
    font-size: 28px !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    margin-bottom: 14px !important;
    line-height: 1.3 !important;
}

.institutional-detail-intro {
    font-size: 16px !important;
    color: #475569 !important;
    line-height: 1.75 !important;
    margin-bottom: 24px !important;
}

.institutional-divider {
    border-top: 1px solid #e2e8f0 !important;
    margin: 28px 0 !important;
}

.institutional-section-heading {
    font-size: 21px !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    margin-bottom: 22px !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
}

.institutional-benefit-item {
    background: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
    border-left: 4px solid #2563eb !important;
    border-radius: 6px !important;
    padding: 20px 22px !important;
    margin-bottom: 18px !important;
    transition: all 0.2s ease !important;
}

.institutional-benefit-item:hover {
    background: #ffffff !important;
    border-color: #cbd5e1 !important;
    border-left-color: #1d4ed8 !important;
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.05) !important;
}

.benefit-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    margin-bottom: 8px !important;
}

.benefit-title {
    font-size: 17px !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    margin: 0 !important;
}

.benefit-status-pill {
    font-size: 11.5px !important;
    font-weight: 600 !important;
    padding: 4px 10px !important;
    border-radius: 20px !important;
    display: inline-block !important;
    text-transform: uppercase !important;
    letter-spacing: 0.03em !important;
}

.benefit-status-success {
    background: #dcfce7 !important;
    color: #15803d !important;
    border: 1px solid #bbf7d0 !important;
}

.benefit-status-info {
    background: #e0f2fe !important;
    color: #0369a1 !important;
    border: 1px solid #bae6fd !important;
}

.benefit-status-warning {
    background: #fef3c7 !important;
    color: #b45309 !important;
    border: 1px solid #fde68a !important;
}

.benefit-description {
    font-size: 14.5px !important;
    color: #475569 !important;
    line-height: 1.65 !important;
    margin-bottom: 0 !important;
}

.benefit-disclaimer-box {
    margin-top: 10px !important;
    padding: 10px 14px !important;
    background: #fffbeb !important;
    border: 1px dashed #f59e0b !important;
    border-radius: 4px !important;
    font-size: 13px !important;
    color: #92400e !important;
    display: flex !important;
    align-items: flex-start !important;
    gap: 8px !important;
}

.benefit-disclaimer-box i {
    color: #d97706 !important;
    margin-top: 2px !important;
    flex-shrink: 0 !important;
}
@media (max-width: 991px) {
    .institutional-main-detail-box {
        padding: 22px !important;
    }
    .institutional-detail-image-box {
        max-height: none;
    }
    .portfolio-strategic-card {
        margin-bottom: 24px;
    }
}

/* ==========================================================================
   MÓDULO DE NOTICIAS & BLOG INSTITUCIONAL (Fiel a phpcms/blog.php)
   ========================================================================== */

/* 1. Badge de Fecha Apilado Vertical (Mes, Día, Año) */
.news-date-badge {
    position: absolute;
    right: 25px;
    top: 0;
    width: 68px;
    height: 92px;
    background-color: #00BFFF !important;
    color: #ffffff !important;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    font-family: 'Poppins', sans-serif;
    text-align: center;
    z-index: 10;
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;
    box-shadow: 0 4px 12px rgba(0, 191, 255, 0.4) !important;
}

.news-date-badge .month {
    font-size: 13px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    line-height: 1.1 !important;
    letter-spacing: 0.5px !important;
}

.news-date-badge .day {
    font-size: 26px !important;
    font-weight: 800 !important;
    line-height: 1.05 !important;
    margin: 2px 0 !important;
}

.news-date-badge .year {
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    opacity: 0.95 !important;
}

/* 2. Tarjeta Principal de Noticias (.news-block-four) */
.news-block-four-card {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 8px !important;
    overflow: hidden !important;
    box-shadow: 0 4px 18px rgba(15, 23, 42, 0.04) !important;
    margin-bottom: 40px !important;
    transition: transform 0.3s ease, box-shadow 0.3s ease !important;
}

.news-block-four-card:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 10px 25px rgba(15, 23, 42, 0.08) !important;
}

.news-block-four-card .image-box {
    position: relative !important;
    width: 100% !important;
    height: 400px !important;
    overflow: hidden !important;
    background: #0f172a !important;
}

.news-block-four-card .image-box img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    transition: transform 0.7s ease !important;
}

.news-block-four-card:hover .image-box img {
    transform: scale(1.05) !important;
}

.news-block-four-card .lower-content {
    padding: 30px !important;
    position: relative !important;
}

.news-block-four-card .category-meta {
    font-size: 15.5px !important;
    font-weight: 600 !important;
    color: #00BFFF !important;
    margin-bottom: 12px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
}

.news-block-four-card .category-meta a {
    color: #00BFFF !important;
    text-decoration: none !important;
    transition: color 0.2s ease !important;
}

.news-block-four-card .category-meta a:hover {
    color: #071C36 !important;
}

.news-block-four-card h3.title {
    font-size: 26px !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    margin-bottom: 16px !important;
    line-height: 1.35 !important;
    position: relative !important;
    padding-bottom: 18px !important;
    font-family: 'Poppins', sans-serif !important;
}

.news-block-four-card h3.title a {
    color: #0f172a !important;
    text-decoration: none !important;
    transition: color 0.2s ease !important;
}

.news-block-four-card h3.title a:hover {
    color: #00BFFF !important;
}

.news-block-four-card h3.title::before {
    position: absolute !important;
    content: '' !important;
    left: 0 !important;
    bottom: 0 !important;
    height: 2px !important;
    width: 100% !important;
    background-image: url(../images/shape/border-shape-3.png) !important;
    background-repeat: repeat-x !important;
}

.news-block-four-card .excerpt-text {
    font-size: 15.5px !important;
    color: #475569 !important;
    line-height: 1.75 !important;
    margin-bottom: 24px !important;
}

.news-btn-detail {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    background-color: #00BFFF !important;
    color: #ffffff !important;
    font-size: 13.5px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    padding: 12px 24px !important;
    border-radius: 4px !important;
    transition: all 0.3s ease !important;
    text-decoration: none !important;
    box-shadow: 0 4px 12px rgba(0, 191, 255, 0.25) !important;
    border: none !important;
}

.news-btn-detail:hover {
    background-color: #071C36 !important;
    color: #ffffff !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 16px rgba(7, 28, 54, 0.3) !important;
}

/* 3. Barra Lateral (Blog Sidebar Widgets) */
.blog-sidebar-widget {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 8px !important;
    padding: 24px 20px !important;
    box-shadow: 0 4px 16px rgba(15, 23, 42, 0.03) !important;
    margin-bottom: 28px !important;
}

.blog-widget-title {
    font-size: 19px !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    padding-bottom: 12px !important;
    margin-bottom: 18px !important;
    border-bottom: 2px solid #00BFFF !important;
    position: relative !important;
    font-family: 'Poppins', sans-serif !important;
}

/* Widget 1: Categorías */
.widget-category-link {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 13px 18px !important;
    background: #f0ece5 !important;
    border-radius: 6px !important;
    color: #334155 !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    transition: all 0.25s ease !important;
    border: 1px solid transparent !important;
    margin-bottom: 8px !important;
}

.widget-category-link:hover {
    background: #eff6ff !important;
    color: #00BFFF !important;
    border-color: #00BFFF !important;
    transform: translateX(3px) !important;
}

.widget-category-link.active {
    background: #00BFFF !important;
    color: #ffffff !important;
    border-color: #00BFFF !important;
    box-shadow: 0 4px 12px rgba(0, 191, 255, 0.25) !important;
}

.widget-category-link .chevron {
    font-size: 13px !important;
    color: #94a3b8 !important;
    transition: transform 0.25s ease !important;
}

.widget-category-link:hover .chevron {
    transform: translateX(3px) !important;
    color: #00BFFF !important;
}

.widget-category-link.active .chevron {
    color: #ffffff !important;
}

/* Widget 2: Publicaciones Recientes con Efecto "Sube Cortina" */
.news-curtain-card {
    position: relative !important;
    height: 98px !important;
    margin-bottom: 14px !important;
    border-radius: 6px !important;
    overflow: hidden !important;
    background-size: cover !important;
    background-position: center !important;
    display: flex !important;
    align-items: center !important;
    text-decoration: none !important;
    box-shadow: none !important;
}

.news-curtain-overlay {
    position: absolute !important;
    left: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background-color: #f1f5f9 !important;
    background: #f1f5f9 !important;
    border: 1px solid #e2e8f0 !important;
    transition: height 0.45s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.35s ease !important;
    z-index: 1 !important;
}

.news-curtain-card:hover .news-curtain-overlay {
    height: 0% !important;
    opacity: 0 !important;
}

.news-curtain-content {
    position: relative !important;
    z-index: 2 !important;
    padding: 14px 18px !important;
    width: 100% !important;
}

.news-curtain-date {
    font-size: 12.5px !important;
    font-weight: 600 !important;
    color: #64748b !important;
    margin-bottom: 4px !important;
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    transition: color 0.3s ease !important;
}

.news-curtain-title {
    font-size: 14.5px !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    margin: 0 !important;
    line-height: 1.35 !important;
    transition: color 0.3s ease !important;
}

.news-curtain-card:hover .news-curtain-title {
    color: #ffffff !important;
    text-shadow: 0 2px 6px rgba(0,0,0,0.9) !important;
}

.news-curtain-card:hover .news-curtain-date {
    color: #e2e8f0 !important;
    text-shadow: 0 1px 4px rgba(0,0,0,0.8) !important;
}

/* Widget 3: Nube de Etiquetas */
.news-tag-badge {
    display: inline-block !important;
    background: #f0ece5 !important;
    color: #475569 !important;
    font-size: 13.5px !important;
    font-weight: 500 !important;
    padding: 7px 15px !important;
    border-radius: 4px !important;
    margin: 0 5px 8px 0 !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
    border: 1px solid #e2e8f0 !important;
}

.news-tag-badge:hover {
    background: #00BFFF !important;
    color: #ffffff !important;
    border-color: #00BFFF !important;
    transform: translateY(-1px) !important;
}

/* Widget 4: Bloque Institucional (La confiabilidad prima sobre nosotros ! Juntos Todo lo podemos) */
.advertisement-widget-box {
    background: linear-gradient(135deg, #00BFFF 0%, #0284c7 100%) !important;
    border-radius: 8px !important;
    padding: 34px 22px !important;
    text-align: center !important;
    color: #ffffff !important;
    box-shadow: 0 8px 25px rgba(0, 191, 255, 0.25) !important;
    position: relative !important;
    overflow: hidden !important;
}

.advertisement-logo {
    max-height: 52px !important;
    object-fit: contain !important;
    margin-bottom: 18px !important;
    filter: drop-shadow(0 2px 4px rgba(0,0,0,0.2)) !important;
}

.advertisement-divider {
    width: 60px !important;
    height: 3px !important;
    background: rgba(255, 255, 255, 0.5) !important;
    margin: 0 auto 18px !important;
    border-radius: 2px !important;
}

.advertisement-title {
    font-size: 20px !important;
    font-weight: 800 !important;
    line-height: 1.4 !important;
    color: #ffffff !important;
    margin-bottom: 20px !important;
    font-family: 'Poppins', sans-serif !important;
    text-shadow: 0 2px 8px rgba(0,0,0,0.2) !important;
}

.advertisement-img {
    width: 100% !important;
    max-height: 155px !important;
    object-fit: cover !important;
    border-radius: 6px !important;
    margin-bottom: 22px !important;
    border: 2px solid rgba(255,255,255,0.4) !important;
    box-shadow: 0 4px 15px rgba(0,0,0,0.15) !important;
}

.advertisement-btn {
    display: inline-block !important;
    background: #ffffff !important;
    color: #0284c7 !important;
    font-weight: 800 !important;
    font-size: 14px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    padding: 12px 28px !important;
    border-radius: 4px !important;
    transition: all 0.25s ease !important;
    text-decoration: none !important;
    box-shadow: 0 4px 12px rgba(0,0,0,0.12) !important;
}

.advertisement-btn:hover {
    background: #071C36 !important;
    color: #ffffff !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 18px rgba(7, 28, 54, 0.35) !important;
}

/* ==========================================================================
   4. Modo Vista Categoría (.news-block-one fiel a phpcms/blog-category.php)
   ========================================================================== */
.news-block-one {
    position: relative;
    margin-bottom: 30px;
    height: 100%;
}

.news-block-one .inner-box {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    min-height: 520px;
    background: #ffffff;
    border-radius: 4px;
    overflow: hidden;
    box-shadow: 0 4px 18px rgba(0, 0, 0, 0.06);
    transition: all 0.35s ease;
}

.news-block-one .inner-box:hover {
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.12);
}

/* Imagen Normal Superior (250px) */
.news-block-one .image {
    position: relative;
    overflow: hidden;
    margin-bottom: 22px;
    height: 250px;
    background-color: #0f172a;
    flex-shrink: 0;
}

.news-block-one .image a {
    display: block;
    width: 100%;
    height: 100%;
    cursor: pointer;
}

.news-block-one .image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
    display: block;
}

/* Badge de Fecha Azul Apilado (Mes, Día, Año) */
.news-block-one .date {
    position: absolute;
    right: 20px;
    top: 0;
    width: 68px;
    min-height: 85px;
    text-align: center;
    padding: 10px 4px;
    color: #ffffff !important;
    font-family: "Poppins", sans-serif;
    background-color: #278bf5 !important;
    z-index: 10;
    box-shadow: 0 4px 12px rgba(39, 139, 245, 0.35);
    line-height: 1.15;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    border-radius: 0 0 4px 4px;
}

.news-block-one .date .month {
    font-size: 13px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #ffffff;
}

.news-block-one .date .day {
    font-size: 22px;
    font-weight: 800;
    margin: 2px 0;
    color: #ffffff;
}

.news-block-one .date .year {
    font-size: 13px;
    font-weight: 600;
    opacity: 0.95;
    color: #ffffff;
}

/* Contenido Inferior (Normal) */
.news-block-one .lower-content {
    position: relative;
    padding: 0 25px 25px;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

.news-block-one .category {
    font-size: 15px;
    font-weight: 600;
    color: #278bf5;
    margin-bottom: 8px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.news-block-one .category i {
    color: #278bf5;
}

.news-block-one h3 {
    position: relative;
    font-size: 20px;
    font-weight: 700;
    padding: 0 0 16px;
    margin: 0 0 18px;
    line-height: 1.35;
    letter-spacing: -0.5px;
}

.news-block-one h3 a {
    color: #1e293b;
    text-decoration: none;
    transition: color 0.3s ease;
}

.news-block-one h3 a:hover {
    color: #278bf5;
}

/* Línea Divisoria Punteada Bajo el Título */
.news-block-one h3:before {
    position: absolute;
    content: '';
    left: 0;
    bottom: 0;
    height: 2px;
    width: 100%;
    background-image: url(../images/shape/border-shape-3.png);
    background-repeat: repeat-x;
}

.news-block-one .text {
    font-size: 14.5px;
    line-height: 1.6;
    color: #64748b;
    margin-bottom: 20px;
    flex-grow: 1;
}

.news-block-one .text p {
    margin: 0;
}

.news-block-one .link {
    margin-top: auto;
    display: flex;
    align-items: center;
}

.news-block-one .readmore-link {
    font-size: 14px;
    font-weight: 700;
    color: #1e293b;
    font-family: "Poppins", sans-serif;
    text-transform: uppercase;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: all 0.3s ease;
}

.news-block-one .readmore-link i {
    color: #278bf5;
    font-size: 15px;
    transition: transform 0.3s ease;
}

.news-block-one .readmore-link:hover {
    color: #278bf5;
}

.news-block-one .readmore-link:hover i {
    transform: translate(3px, -3px);
}

/* ==========================================================================
   ESTADO HOVER (.overlay con Imagen a Altura Completa)
   ========================================================================== */
.news-block-one .overlay {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transform: scale(1.04);
    transition: opacity 0.45s cubic-bezier(0.4, 0, 0.2, 1), transform 0.45s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 8;
    pointer-events: none;
    overflow: hidden;
}

.news-block-one .inner-box:hover .overlay {
    opacity: 1;
    transform: scale(1);
    pointer-events: auto;
}

.news-block-one .overlay .image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    margin-bottom: 0;
}

.news-block-one .overlay .image a {
    display: block;
    width: 100%;
    height: 100%;
    cursor: pointer;
}

.news-block-one .overlay .image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.6s ease;
}

.news-block-one .inner-box:hover .overlay .image img {
    transform: scale(1.03);
}

/* Gradiente Oscuro Inferior para legibilidad de Categoría y MAS DETALLE */
.news-block-one .overlay .image:before {
    position: absolute;
    content: '';
    left: 0;
    bottom: 0;
    right: 0;
    top: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.05) 0%, rgba(0, 0, 0, 0.15) 35%, rgba(7, 23, 40, 0.88) 100%);
    z-index: 2;
    pointer-events: none;
}

.news-block-one .overlay .date {
    z-index: 9;
}

.news-block-one .overlay .lower-content {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    padding: 25px 25px;
    z-index: 9;
}

.news-block-one .overlay .category {
    color: #278bf5 !important;
    font-size: 15px;
    font-weight: 700;
    margin-bottom: 12px;
}

.news-block-one .overlay .dashed-divider {
    height: 2px;
    width: 100%;
    background-image: url(../images/shape/border-shape-4.png);
    background-repeat: repeat-x;
    margin-bottom: 18px;
}

.news-block-one .overlay .readmore-link {
    color: #ffffff !important;
    font-size: 14px;
    font-weight: 700;
}

.news-block-one .overlay .readmore-link i {
    color: #278bf5 !important;
}

.news-block-one .overlay .readmore-link:hover {
    color: #278bf5 !important;
}

@media (max-width: 767px) {
    .news-block-four-card .image-box {
        height: 240px !important;
    }
    .news-block-four-card .lower-content {
        padding: 20px !important;
    }
    .news-block-four-card h3.title {
        font-size: 21px !important;
    }
    .news-category-card {
        height: 280px !important;
    }
}

/* ==========================================================================
   Paginación Profesional Institucional SINASSC 728
   ========================================================================== */
.sinassc-pagination {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    background: #ffffff !important;
    padding: 8px 16px !important;
    border-radius: 50px !important;
    box-shadow: 0 4px 20px rgba(15, 23, 42, 0.08) !important;
    border: 1px solid #e2e8f0 !important;
    list-style: none !important;
}

.sinassc-pagination .page-item {
    margin: 0 !important;
    list-style: none !important;
}

.sinassc-pagination .page-item .page-link {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 42px !important;
    height: 42px !important;
    padding: 0 12px !important;
    border-radius: 50% !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    font-family: 'Poppins', sans-serif !important;
    color: #334155 !important;
    background: transparent !important;
    border: 1px solid transparent !important;
    transition: all 0.25s ease !important;
    text-decoration: none !important;
}

.sinassc-pagination .page-item .page-link:hover {
    color: #278bf5 !important;
    background: #f0f7ff !important;
    border-color: #bfdbfe !important;
    transform: translateY(-2px) !important;
}

.sinassc-pagination .page-item.active .page-link {
    color: #ffffff !important;
    background: linear-gradient(135deg, #278bf5 0%, #1d72d6 100%) !important;
    border-color: #278bf5 !important;
    box-shadow: 0 4px 14px rgba(39, 139, 245, 0.4) !important;
}

.sinassc-pagination .page-item.disabled .page-link {
    color: #cbd5e1 !important;
    background: transparent !important;
    border-color: transparent !important;
    cursor: not-allowed !important;
    transform: none !important;
}

.sinassc-pagination .page-item .page-link i {
    font-size: 14px !important;
    line-height: 1 !important;
}

/* ==========================================================================
   Efecto Hover Gradiente Institucional en Botones de Acción
   1. Actualidad Institucional (Leer Noticia, Ver Video)
   2. Beneficios Permanentes (Ver Detalle)
   3. Noticias Recientes (Ver Todas)
   ========================================================================== */
#contenet__noticias .news-card-modern .btn-outline-primary,
.service-card-modern .btn-outline-primary,
.panel-box-card .btn-outline-primary {
    transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

/* Anular resplandor verde claro de Bootstrap en :focus, :active y al retornar con navegación */
.btn-outline-primary:focus,
.btn-outline-primary:active,
.btn-outline-primary:focus-visible,
.btn-check:focus + .btn-outline-primary,
.btn-check:checked + .btn-outline-primary:focus,
.btn-check:active + .btn-outline-primary:focus,
#contenet__noticias .news-card-modern .btn-outline-primary:focus,
#contenet__noticias .news-card-modern .btn-outline-primary:active,
.service-card-modern .btn-outline-primary:focus,
.service-card-modern .btn-outline-primary:active,
.panel-box-card .btn-outline-primary:focus,
.panel-box-card .btn-outline-primary:active {
    box-shadow: none !important;
    outline: none !important;
    border-color: #003C5E !important;
    color: #003C5E !important;
    background-color: transparent !important;
}

#contenet__noticias .news-card-modern .btn-outline-primary:hover,
.service-card-modern .btn-outline-primary:hover,
.panel-box-card .btn-outline-primary:hover,
#contenet__noticias .news-card-modern .btn-outline-primary:hover:focus,
.service-card-modern .btn-outline-primary:hover:focus,
.panel-box-card .btn-outline-primary:hover:focus {
    background: linear-gradient(135deg, #033168 0%, #2384f9 100%) !important;
    color: #FFFFFF !important;
    border-color: transparent !important;
    box-shadow: 0 4px 14px rgba(10, 37, 64, 0.25) !important;
    transform: translateY(-2px) !important;
}

#contenet__noticias .news-card-modern .btn-outline-primary:hover i,
.service-card-modern .btn-outline-primary:hover i,
.panel-box-card .btn-outline-primary:hover i,
#contenet__noticias .news-card-modern .btn-outline-primary:hover:focus i,
.service-card-modern .btn-outline-primary:hover:focus i,
.panel-box-card .btn-outline-primary:hover:focus i {
    color: #FFFFFF !important;
    transform: translateX(2px);
    transition: transform 0.2s ease;
}

/* Estado persistente del botón presionado (para saber dónde se quedó al retornar) */
.service-card-modern .btn-outline-primary.btn-last-pressed,
#contenet__noticias .news-card-modern .btn-outline-primary.btn-last-pressed,
.panel-box-card .btn-outline-primary.btn-last-pressed,
.btn-outline-primary.btn-last-pressed {
    background: linear-gradient(135deg, #033168 0%, #2384f9 100%) !important;
    color: #FFFFFF !important;
    border-color: transparent !important;
    box-shadow: 0 4px 14px rgba(10, 37, 64, 0.28) !important;
    transform: translateY(-2px) !important;
}

.service-card-modern .btn-outline-primary.btn-last-pressed i,
#contenet__noticias .news-card-modern .btn-outline-primary.btn-last-pressed i,
.panel-box-card .btn-outline-primary.btn-last-pressed i,
.btn-outline-primary.btn-last-pressed i {
    color: #FFFFFF !important;
    transform: translateX(2px) !important;
}

/* ==========================================================================
   Botones de Convocatorias Laborales (/convocatorias)
   - Botón 728: color gradiente institucional idéntico a "Ver Todas las Convocatorias"
   - Botón CAS: estilo outline que al pasar el mouse adopta el gradiente de "Ver Todas las Convocatorias"
   ========================================================================== */
.btn-convocatoria-728 {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: linear-gradient(135deg, #0A2540 0%, #1D80E0 100%) !important;
    color: #FFFFFF !important;
    border: none !important;
    box-shadow: 0 6px 20px rgba(10, 37, 64, 0.22) !important;
    transition: all 0.25s ease !important;
    font-weight: 700 !important;
}

.btn-convocatoria-728:hover {
    background: linear-gradient(135deg, #1D80E0 0%, #2B9BFF 100%) !important;
    color: #FFFFFF !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 25px rgba(43, 155, 255, 0.4) !important;
}

.btn-convocatoria-728 i {
    transition: transform 0.2s ease;
}

.btn-convocatoria-728:hover i {
    transform: translateX(4px);
}

.btn-convocatoria-728:focus,
.btn-convocatoria-728:active {
    outline: none !important;
    box-shadow: 0 0 0 .2rem rgba(29, 128, 224, 0.25) !important;
}

/* Botón Convocatoria CAS */
.btn-convocatoria-cas {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: transparent !important;
    color: #0A2540 !important;
    border: 2px solid #1D80E0 !important;
    box-shadow: none !important;
    transition: all 0.25s ease !important;
    font-weight: 700 !important;
}

.btn-convocatoria-cas i {
    color: #1D80E0 !important;
    transition: all 0.2s ease;
}

.btn-convocatoria-cas:hover {
    background: linear-gradient(135deg, #0A2540 0%, #1D80E0 100%) !important;
    color: #FFFFFF !important;
    border-color: transparent !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 20px rgba(10, 37, 64, 0.25) !important;
}

.btn-convocatoria-cas:hover i {
    color: #FFFFFF !important;
    transform: translateX(4px);
}

.btn-convocatoria-cas:focus,
.btn-convocatoria-cas:active {
    outline: none !important;
    box-shadow: none !important;
    border-color: #1D80E0 !important;
}

/* ==========================================================================
   MÓDULO DE CONVOCATORIAS LABORALES SINASSC 728 (UI/UX)
   - Hero Banner con alto contraste
   - Tarjetas Hub 728 y CAS con cápsula de icono
   - Card-Header institucional integrado
   - Tablas 728 (8 cols) y CAS (10 cols)
   - Botones PDF interactivos y badges de estado
   - Controles DataTables estilizados
   ========================================================================== */
.convocatorias-hero {
    position: relative;
    padding: 140px 0 65px;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    overflow: hidden;
}

.convocatorias-hero__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(7, 23, 40, 0.82) 0%, rgba(3, 18, 36, 0.94) 100%);
    z-index: 1;
}

.convocatorias-hero__content {
    position: relative;
    z-index: 2;
    text-align: center;
    color: #FFFFFF;
}

.convocatorias-hero__badge {
    display: inline-block;
    padding: 6px 18px;
    border-radius: 50px;
    background: linear-gradient(135deg, #1D80E0 0%, #2B9BFF 100%);
    color: #FFFFFF;
    font-size: 11.5px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    box-shadow: 0 4px 12px rgba(29, 128, 224, 0.35);
    margin-bottom: 12px;
}

.convocatorias-hero__title {
    font-family: 'Poppins', sans-serif;
    font-weight: 800;
    font-size: 38px;
    line-height: 1.25;
    color: #FFFFFF;
    text-shadow: 0 4px 18px rgba(0, 0, 0, 0.5);
    margin-bottom: 10px;
}

.convocatorias-hero__breadcrumb {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    list-style: none;
    padding: 6px 18px;
    margin: 0;
    background: rgba(255, 255, 255, 0.08);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border-radius: 50px;
    border: 1px solid rgba(255, 255, 255, 0.15);
    font-size: 13px;
    font-weight: 600;
}

.convocatorias-hero__breadcrumb a {
    color: rgba(255, 255, 255, 0.85);
    text-decoration: none;
    transition: color 0.2s ease;
}

.convocatorias-hero__breadcrumb a:hover {
    color: #2B9BFF;
}

.convocatorias-hero__breadcrumb .active {
    color: #2B9BFF;
}

.convocatorias-hero__breadcrumb .separator {
    color: rgba(255, 255, 255, 0.4);
    font-size: 10px;
}

/* Tarjetas del Hub Principal (/convocatorias) - Compactas y Proporcionadas */
.convocatoria-hub-card {
    background: #FFFFFF;
    border-radius: 18px;
    border: 1.5px solid #E2E8F0;
    box-shadow: 0 6px 20px rgba(10, 37, 64, 0.05);
    padding: 22px 20px;
    text-align: center;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
    position: relative;
    overflow: hidden;
}

.convocatoria-hub-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, #0A2540 0%, #1D80E0 50%, #2B9BFF 100%);
    opacity: 0;
    transition: opacity 0.3s ease;
}

.convocatoria-hub-card:hover {
    transform: translateY(-4px);
    border-color: #CBD5E1;
    box-shadow: 0 14px 28px -8px rgba(10, 37, 64, 0.12);
}

.convocatoria-hub-card:hover::before {
    opacity: 1;
}

.convocatoria-hub-card__icon-wrap {
    width: 52px;
    height: 52px;
    border-radius: 50%;
    background: linear-gradient(135deg, rgba(29, 128, 224, 0.1) 0%, rgba(43, 155, 255, 0.18) 100%);
    border: 1.5px solid rgba(29, 128, 224, 0.25);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 10px;
    color: #1D80E0;
    font-size: 22px;
    transition: all 0.3s ease;
}

.convocatoria-hub-card:hover .convocatoria-hub-card__icon-wrap {
    transform: scale(1.08);
    background: linear-gradient(135deg, #0A2540 0%, #1D80E0 100%);
    color: #FFFFFF;
    border-color: transparent;
    box-shadow: 0 8px 18px rgba(29, 128, 224, 0.3);
}

.convocatoria-hub-card__badge {
    display: inline-block;
    padding: 2.5px 10px;
    border-radius: 50px;
    background: #F1F5F9;
    color: #0A2540;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.5px;
    margin-bottom: 6px;
    border: 1px solid #E2E8F0;
}

.convocatoria-hub-card__title {
    font-family: 'Poppins', sans-serif;
    font-weight: 800;
    font-size: 19px;
    color: #0A2540;
    margin-bottom: 6px;
}

.convocatoria-hub-card__desc {
    color: #64748B;
    font-size: 13px;
    line-height: 1.45;
    margin-bottom: 14px;
    flex-grow: 1;
}

.convocatoria-hub-card .btn {
    padding: 8px 22px !important;
    font-size: 13px !important;
}

/* Card Header Institucional para Convocatorias 728 y CAS */
.convocatoria-table-card {
    background: #FFFFFF;
    border-radius: 20px;
    border: 1.5px solid #E2E8F0;
    box-shadow: 0 8px 24px rgba(10, 37, 64, 0.05);
    overflow: hidden;
}

.convocatoria-table-header {
    background: linear-gradient(135deg, #0A2540 0%, #031E3D 60%, #0D3E70 100%);
    padding: 20px 24px;
    color: #FFFFFF;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
    border-bottom: 3px solid #1D80E0;
}

.convocatoria-table-header__left {
    display: flex;
    align-items: center;
    gap: 12px;
}

.convocatoria-table-header__icon {
    width: 42px;
    height: 42px;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.12);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    color: #2B9BFF;
}

.convocatoria-table-header__title {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 18px;
    color: #FFFFFF;
    margin: 0;
    line-height: 1.3;
}

.convocatoria-table-header__count {
    display: inline-block;
    padding: 3px 10px;
    border-radius: 50px;
    background: rgba(43, 155, 255, 0.2);
    border: 1px solid rgba(43, 155, 255, 0.35);
    color: #BAE6FD;
    font-size: 12px;
    font-weight: 600;
    margin-left: 6px;
}

.convocatoria-table-header__back {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 16px;
    border-radius: 50px;
    background: rgba(255, 255, 255, 0.1);
    color: #FFFFFF;
    text-decoration: none;
    font-size: 12.5px;
    font-weight: 600;
    border: 1px solid rgba(255, 255, 255, 0.2);
    transition: all 0.25s ease;
}

.convocatoria-table-header__back:hover {
    background: #FFFFFF;
    color: #0A2540;
    border-color: #FFFFFF;
    transform: translateX(-3px);
}

/* Tabla de Convocatorias Estilizada */
.table-convocatorias-modern {
    margin-bottom: 0 !important;
    border-collapse: separate;
    border-spacing: 0;
    width: 100% !important;
}

.table-convocatorias-modern thead th {
    background-color: #F8FAFC !important;
    color: #0F172A !important;
    font-family: 'Poppins', sans-serif !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    padding: 14px 10px !important;
    border-bottom: 2px solid #CBD5E1 !important;
    border-top: none !important;
    vertical-align: middle !important;
    white-space: nowrap !important;
}

.table-convocatorias-modern tbody td {
    padding: 14px 10px !important;
    vertical-align: middle !important;
    border-bottom: 1px solid #E2E8F0 !important;
    font-size: 13.5px !important;
    color: #334155;
}

.table-convocatorias-modern tbody tr {
    transition: background-color 0.2s ease;
}

.table-convocatorias-modern tbody tr:hover {
    background-color: #F8FAFC !important;
}

/* Documento PDF Botón Interactivo */
.btn-pdf-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    padding: 6px 11px;
    border-radius: 8px;
    background: #FEF2F2;
    color: #DC2626 !important;
    border: 1.5px solid #FECACA;
    text-decoration: none !important;
    font-size: 11.5px;
    font-weight: 700;
    transition: all 0.2s ease;
    min-width: 65px;
}

.btn-pdf-action i {
    font-size: 14px;
    transition: transform 0.2s ease;
}

.btn-pdf-action:hover {
    background: #DC2626 !important;
    color: #FFFFFF !important;
    border-color: #DC2626 !important;
    transform: translateY(-2px);
    box-shadow: 0 4px 10px rgba(220, 38, 38, 0.25);
}

.btn-pdf-action:hover i {
    transform: scale(1.15);
}

/* Badges de Estado */
.badge-status-proceso {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 5px 12px;
    border-radius: 50px;
    background: #ECFDF5;
    color: #059669;
    border: 1px solid #A7F3D0;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.5px;
    white-space: nowrap;
}

.badge-status-proceso i {
    font-size: 8px;
    animation: pulseDot 2s infinite;
}

@keyframes pulseDot {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.4; }
}

.badge-status-finalizado {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 5px 12px;
    border-radius: 50px;
    background: #F1F5F9;
    color: #475569;
    border: 1px solid #CBD5E1;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.5px;
    white-space: nowrap;
}

/* DataTables Controles Personalizados */
.convocatorias-table-card .dataTables_wrapper {
    padding: 16px 20px;
}

.convocatorias-table-card .dataTables_filter {
    margin-bottom: 16px;
    text-align: right;
}

.convocatorias-table-card .dataTables_filter label {
    font-weight: 600;
    font-size: 13px;
    color: #475569;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.convocatorias-table-card .dataTables_filter input {
    border-radius: 50px !important;
    border: 1.5px solid #CBD5E1 !important;
    padding: 8px 16px 8px 14px !important;
    font-size: 13px !important;
    outline: none !important;
    transition: all 0.2s ease !important;
    min-width: 260px;
    background-color: #FFFFFF;
}

.convocatorias-table-card .dataTables_filter input:focus {
    border-color: #1D80E0 !important;
    box-shadow: 0 0 0 3px rgba(29, 128, 224, 0.15) !important;
}

.convocatorias-table-card .dataTables_info {
    font-size: 13px;
    color: #64748B;
    padding-top: 14px !important;
}

.convocatorias-table-card .dataTables_paginate {
    padding-top: 10px !important;
    text-align: right;
}

.convocatorias-table-card .dataTables_paginate .paginate_button {
    border-radius: 50px !important;
    border: 1px solid #E2E8F0 !important;
    padding: 6px 14px !important;
    margin: 0 3px !important;
    font-size: 12.5px !important;
    font-weight: 600 !important;
    color: #334155 !important;
    background: #FFFFFF !important;
    transition: all 0.2s ease !important;
}

.convocatorias-table-card .dataTables_paginate .paginate_button:hover {
    background: #1D80E0 !important;
    color: #FFFFFF !important;
    border-color: #1D80E0 !important;
}

.convocatorias-table-card .dataTables_paginate .paginate_button.current,
.convocatorias-table-card .dataTables_paginate .paginate_button.current:hover {
    background: linear-gradient(135deg, #0A2540 0%, #1D80E0 100%) !important;
    color: #FFFFFF !important;
    border-color: transparent !important;
    box-shadow: 0 4px 10px rgba(10, 37, 64, 0.2) !important;
}

.convocatorias-table-card .dataTables_paginate .paginate_button.disabled,
.convocatorias-table-card .dataTables_paginate .paginate_button.disabled:hover {
    opacity: 0.5;
    background: #F8FAFC !important;
    color: #94A3B8 !important;
    border-color: #E2E8F0 !important;
    cursor: not-allowed !important;
}

/* Scrollbar personalizado para tablas responsive */
.convocatorias-table-responsive {
    overflow-x: auto;
    scrollbar-width: thin;
    scrollbar-color: #CBD5E1 #F1F5F9;
}

.convocatorias-table-responsive::-webkit-scrollbar {
    height: 7px;
}

.convocatorias-table-responsive::-webkit-scrollbar-track {
    background: #F1F5F9;
    border-radius: 10px;
}

.convocatorias-table-responsive::-webkit-scrollbar-thumb {
    background: #CBD5E1;
    border-radius: 10px;
}

.convocatorias-table-responsive::-webkit-scrollbar-thumb:hover {
    background: #94A3B8;
}

/* Responsive adjustments */
@media (max-width: 767px) {
    .convocatorias-hero {
        padding: 120px 0 50px;
    }
    .convocatorias-hero__title {
        font-size: 28px;
    }
    .convocatoria-hub-card {
        padding: 28px 20px;
    }
    .convocatoria-table-header {
        flex-direction: column;
        align-items: flex-start;
    }
    .convocatoria-table-header__back {
        width: 100%;
        justify-content: center;
    }
    .convocatorias-table-card .dataTables_filter {
        text-align: left;
    }
    .convocatorias-table-card .dataTables_filter input {
        width: 100%;
        min-width: unset;
    }
    .convocatorias-table-card .dataTables_paginate {
        text-align: center;
    }
}

/* ==========================================================================
   REDISEÑO PROFESIONAL UI/UX – COMUNICADOS Y VISOR DE DOCUMENTOS PDF (2026)
   - Hero Banner con cápsula de ícono y breadcrumb integrado
   - Contenedor institucional blanco con buscador integrado
   - Zona de filtros: Año, Mes, Estado y Limpiar filtros
   - Fila de comunicado compacta: Bloque de fecha, miniatura uniforme, datos y botones
   - Paginación profesional con contador de registros
   - Visor de Documentos 100% full-width con cabecera y 4 metadatos
   - Visor PDF embebido responsive
   ========================================================================== */

/* Hero Banner Comunicados y Visor */
.sinassc-module-hero {
    position: relative;
    width: 100%;
    padding: 200px 0 55px;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    overflow: hidden;
}

.sinassc-module-hero__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(7, 24, 48, 0.12) 0%, rgba(10, 40, 82, 0.22) 100%);
    z-index: 1 !important;
    pointer-events: none !important;
}

.sinassc-module-hero .auto-container {
    position: relative !important;
    z-index: 5 !important;
}

.sinassc-module-hero__content {
    position: relative !important;
    z-index: 6 !important;
    display: flex;
    align-items: center;
    gap: 24px;
}

.sinassc-module-hero__icon-capsule {
    position: relative !important;
    z-index: 7 !important;
    width: 68px;
    height: 68px;
    min-width: 68px;
    border-radius: 50%;
    background: rgba(7, 24, 48, 0.35) !important;
    border: 2px solid rgba(255, 255, 255, 0.4) !important;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #FFFFFF !important;
    font-size: 26px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.35);
}

.sinassc-module-hero__icon-capsule i,
.sinassc-module-hero__icon-capsule svg {
    color: #FFFFFF !important;
    fill: #FFFFFF !important;
}

.sinassc-module-hero__title {
    position: relative !important;
    z-index: 7 !important;
    font-family: 'Poppins', sans-serif !important;
    font-weight: 800 !important;
    font-size: 36px !important;
    line-height: 1.2 !important;
    color: #FFFFFF !important;
    margin-bottom: 4px !important;
    text-shadow: 0 4px 15px rgba(0, 0, 0, 0.75) !important;
}

.sinassc-module-hero__desc {
    position: relative !important;
    z-index: 7 !important;
    color: #FFFFFF !important;
    font-size: 14.5px !important;
    margin-bottom: 8px !important;
    font-weight: 500 !important;
    line-height: 1.45 !important;
    opacity: 1 !important;
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.8) !important;
}

.sinassc-module-hero__breadcrumb {
    position: relative !important;
    z-index: 7 !important;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    list-style: none;
    padding: 0;
    margin: 0;
    font-size: 13px;
    font-weight: 500;
    text-shadow: 0 2px 6px rgba(0, 0, 0, 0.8) !important;
}

.sinassc-module-hero__breadcrumb li {
    display: inline-flex;
    align-items: center;
}

.sinassc-module-hero__breadcrumb a {
    color: #FFFFFF !important;
    text-decoration: none !important;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    transition: color 0.2s ease, opacity 0.2s ease;
    cursor: pointer;
}

.sinassc-module-hero__breadcrumb a i {
    color: #FFFFFF !important;
    font-size: 12px;
}

.sinassc-module-hero__breadcrumb a:hover {
    color: #38bdf8 !important;
}

.sinassc-module-hero__breadcrumb a:hover i {
    color: #38bdf8 !important;
}

.sinassc-module-hero__breadcrumb .active {
    color: #38bdf8 !important;
    font-weight: 500;
}

.sinassc-module-hero__breadcrumb .separator {
    color: rgba(255, 255, 255, 0.7) !important;
    font-size: 13px;
    margin: 0 4px;
    user-select: none;
}

/* Tarjeta Contenedor Principal (/comunicados) */
.sinassc-comunicados-card {
    background: #FFFFFF;
    border-radius: 20px;
    border: 1.5px solid #E2E8F0;
    box-shadow: 0 8px 30px rgba(10, 37, 64, 0.05);
    padding: 28px;
    margin-bottom: 40px;
}

.sinassc-comunicados-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding-bottom: 22px;
    border-bottom: 1.5px solid #F1F5F9;
    margin-bottom: 22px;
}

.sinassc-comunicados-header__left {
    display: flex;
    align-items: center;
    gap: 14px;
}

.sinassc-comunicados-header__icon {
    width: 44px;
    height: 44px;
    min-width: 44px;
    border-radius: 12px;
    background: linear-gradient(135deg, #0A2540 0%, #1D80E0 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #FFFFFF;
    font-size: 18px;
    box-shadow: 0 4px 12px rgba(29, 128, 224, 0.25);
}

.sinassc-comunicados-header__title {
    font-family: 'Poppins', sans-serif;
    font-weight: 800;
    font-size: 20px;
    color: #0A2540;
    margin: 0 0 2px 0;
}

.sinassc-comunicados-header__desc {
    color: #64748B;
    font-size: 13px;
    margin: 0;
}

/* Buscador Header */
.sinassc-search-box {
    display: flex;
    align-items: center;
    border: 1.5px solid #CBD5E1;
    border-radius: 10px;
    background: #FFFFFF;
    overflow: hidden;
    transition: all 0.25s ease;
}

.sinassc-search-box:focus-within {
    border-color: #1D80E0;
    box-shadow: 0 0 0 3px rgba(29, 128, 224, 0.15);
}

.sinassc-search-box input {
    border: none;
    outline: none;
    padding: 8px 14px;
    font-size: 13px;
    color: #0A2540;
    width: 260px;
    background: transparent;
}

.sinassc-search-box button {
    border: none;
    background: #0A2540;
    color: #FFFFFF;
    padding: 8px 16px;
    cursor: pointer;
    transition: background 0.2s ease;
}

.sinassc-search-box button:hover {
    background: #1D80E0;
}

/* Fila de Filtros */
.sinassc-filters-bar {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr auto;
    gap: 16px;
    align-items: end;
    margin-bottom: 24px;
    background: #F8FAFC;
    border: 1px solid #E2E8F0;
    border-radius: 14px;
    padding: 16px 20px;
}

.sinassc-filter-group label {
    display: block;
    font-size: 11.5px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #0A2540;
    margin-bottom: 6px;
}

.sinassc-filter-group select {
    width: 100%;
    border: 1.5px solid #CBD5E1;
    border-radius: 8px;
    padding: 7px 12px;
    font-size: 13px;
    color: #334155;
    font-weight: 500;
    background: #FFFFFF;
    outline: none;
    transition: border-color 0.2s ease;
}

.sinassc-filter-group select:focus {
    border-color: #1D80E0;
    box-shadow: 0 0 0 2px rgba(29, 128, 224, 0.12);
}

.sinassc-btn-clear-filters {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    border: 1.5px solid #CBD5E1;
    border-radius: 8px;
    padding: 7px 16px;
    font-size: 12.5px;
    font-weight: 700;
    color: #1D80E0;
    background: #FFFFFF;
    cursor: pointer;
    text-decoration: none;
    transition: all 0.2s ease;
    white-space: nowrap;
    height: 38px;
}

.sinassc-btn-clear-filters:hover {
    border-color: #1D80E0;
    background: #EFF6FF;
    color: #0A2540;
}

/* Fila de Comunicado Compacta */
.sinassc-comunicado-row {
    background: #FFFFFF;
    border: 1.5px solid #E2E8F0;
    border-radius: 16px;
    padding: 16px 20px;
    margin-bottom: 14px;
    display: flex;
    align-items: center;
    gap: 18px;
    transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
    position: relative;
}

.sinassc-comunicado-row:hover {
    border-color: #CBD5E1;
    transform: translateY(-2px);
    box-shadow: 0 10px 24px rgba(10, 37, 64, 0.07);
}

/* Bloque Fecha Lateral */
.sinassc-date-capsule {
    width: 62px;
    min-width: 62px;
    border: 1.5px solid #CBD5E1;
    border-radius: 12px;
    background: #FFFFFF;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 2px 6px rgba(10, 37, 64, 0.04);
}

.sinassc-date-capsule__top {
    height: 10px;
    background: #1D80E0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 3px;
}

.sinassc-date-capsule__top span {
    width: 3px;
    height: 3px;
    background: #FFFFFF;
    border-radius: 50%;
    display: inline-block;
}

.sinassc-date-capsule__day {
    font-family: 'Poppins', sans-serif;
    font-size: 21px;
    font-weight: 800;
    line-height: 1.15;
    color: #0A2540;
    margin-top: 4px;
}

.sinassc-date-capsule__month {
    font-size: 11px;
    font-weight: 800;
    color: #475569;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.sinassc-date-capsule__year {
    font-size: 9.5px;
    font-weight: 600;
    color: #94A3B8;
    margin-bottom: 4px;
}

/* Caja Miniatura Horizontal */
.sinassc-thumb-wrap {
    width: 115px;
    height: 75px;
    min-width: 115px;
    border-radius: 8px;
    background: #0A2540;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #E2E8F0;
    box-shadow: 0 2px 6px rgba(10, 37, 64, 0.04);
}

.sinassc-thumb-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.sinassc-comunicado-row:hover .sinassc-thumb-wrap img {
    transform: scale(1.05);
}

/* Info Central */
.sinassc-info-wrap {
    flex-grow: 1;
    min-width: 0;
}

.sinassc-tag-pill {
    display: inline-block;
    padding: 2.5px 10px;
    border-radius: 50px;
    background: #EFF6FF;
    border: 1px solid #BFDBFE;
    color: #1D80E0;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    margin-bottom: 4px;
}

.sinassc-info-wrap__title {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: 14.5px;
    line-height: 1.35;
    color: #0A2540;
    margin: 0 0 4px 0;
}

.sinassc-info-wrap__desc {
    color: #64748B;
    font-size: 12.5px !important;
    line-height: 1.45;
    margin: 0 0 6px 0;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.sinassc-info-wrap__meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 16px;
    font-size: 11.5px;
    color: #64748B;
    font-weight: 600;
}

.sinassc-info-wrap__meta span {
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

.sinassc-info-wrap__meta i {
    color: #1D80E0;
}

/* Acciones a la Derecha - Botones Rectangulares con Bordes Redondeados */
.sinassc-actions-wrap {
    display: flex;
    flex-direction: column;
    gap: 8px;
    min-width: 135px;
}

.sinassc-btn-ver {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 7px 18px;
    border-radius: 8px !important;
    border: 1.5px solid #1D80E0;
    color: #1D80E0;
    font-size: 12.5px;
    font-weight: 700;
    background: #FFFFFF;
    text-decoration: none;
    transition: all 0.2s ease;
}

.sinassc-btn-ver:hover {
    background: #1D80E0;
    color: #FFFFFF;
}

.sinassc-btn-descargar {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 7px 18px;
    border-radius: 8px !important;
    background: linear-gradient(135deg, #0A2540 0%, #1D80E0 100%);
    color: #FFFFFF;
    font-size: 12.5px;
    font-weight: 700;
    border: none;
    text-decoration: none;
    box-shadow: 0 2px 6px rgba(10, 37, 64, 0.2);
    transition: all 0.2s ease;
}

.sinassc-btn-descargar:hover {
    background: linear-gradient(135deg, #1D80E0 0%, #2B9BFF 100%);
    color: #FFFFFF;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(29, 128, 224, 0.35);
}

/* Paginación y Contador */
.sinassc-pagination-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 16px;
    margin-top: 24px;
    padding-top: 18px;
    border-top: 1.5px solid #F1F5F9;
}

.sinassc-pagination-count {
    color: #64748B;
    font-size: 12.5px;
    font-weight: 600;
}

.sinassc-pagination-links .pagination {
    margin: 0;
    gap: 4px;
}

.sinassc-pagination-links .page-link {
    border-radius: 8px !important;
    border: 1.5px solid #E2E8F0;
    color: #0A2540;
    font-size: 12.5px;
    font-weight: 700;
    padding: 6px 14px;
    transition: all 0.2s ease;
}

.sinassc-pagination-links .page-item.active .page-link {
    background: #1D80E0;
    border-color: #1D80E0;
    color: #FFFFFF;
    box-shadow: 0 4px 10px rgba(29, 128, 224, 0.3);
}

.sinassc-pagination-links .page-link:hover {
    background: #EFF6FF;
    border-color: #CBD5E1;
    color: #1D80E0;
}

/* ==========================================================================
   VISOR DE DOCUMENTOS PDF (/visor-documento)
   ========================================================================== */

/* Cabecera del Documento */
.sinassc-doc-header-card {
    background: #FFFFFF;
    border: 1.5px solid #E2E8F0;
    border-radius: 18px;
    box-shadow: 0 6px 20px rgba(10, 37, 64, 0.05);
    padding: 22px 26px;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
}

.sinassc-doc-header-card__left {
    display: flex;
    align-items: center;
    gap: 18px;
    flex-grow: 1;
    min-width: 0;
}

.sinassc-doc-header-card__title {
    font-family: 'Poppins', sans-serif;
    font-weight: 800;
    font-size: 18px;
    line-height: 1.35;
    color: #0A2540;
    margin: 4px 0 4px 0;
}

.sinassc-doc-header-card__desc {
    color: #64748B;
    font-size: 13px;
    margin: 0;
}

.sinassc-doc-header-card__actions {
    display: flex;
    flex-direction: column;
    gap: 8px;
    min-width: 175px;
}

.sinassc-btn-viewer-download {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 10px 22px;
    border-radius: 8px !important;
    background: linear-gradient(135deg, #0A2540 0%, #1D80E0 100%);
    color: #FFFFFF;
    font-size: 13.5px;
    font-weight: 700;
    text-decoration: none;
    border: none;
    box-shadow: 0 4px 14px rgba(10, 37, 64, 0.22);
    transition: all 0.25s ease;
}

.sinassc-btn-viewer-download:hover {
    background: linear-gradient(135deg, #1D80E0 0%, #2B9BFF 100%);
    color: #FFFFFF;
    transform: translateY(-2px);
    box-shadow: 0 6px 18px rgba(29, 128, 224, 0.35);
}

.sinassc-btn-viewer-back {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 9px 20px;
    border-radius: 8px !important;
    background: #EFF6FF;
    border: 1.5px solid #BFDBFE;
    color: #1D80E0;
    font-size: 12.5px;
    font-weight: 700;
    text-decoration: none;
    transition: all 0.25s ease;
}

.sinassc-btn-viewer-back:hover {
    background: #1D80E0;
    border-color: #1D80E0;
    color: #FFFFFF;
}

/* Fila de 4 Metadatos */
.sinassc-meta-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 14px;
    margin-bottom: 22px;
}

.sinassc-meta-card {
    background: #FFFFFF;
    border: 1.5px solid #E2E8F0;
    border-radius: 14px;
    padding: 14px 16px;
    display: flex;
    align-items: center;
    gap: 12px;
    box-shadow: 0 4px 12px rgba(10, 37, 64, 0.03);
}

.sinassc-meta-card__icon {
    width: 40px;
    height: 40px;
    min-width: 40px;
    border-radius: 10px;
    background: #EFF6FF;
    border: 1px solid #BFDBFE;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    color: #1D80E0;
}

.sinassc-meta-card__icon--success {
    background: #ECFDF5;
    border-color: #A7F3D0;
    color: #059669;
}

.sinassc-meta-card__label {
    font-size: 11px;
    font-weight: 600;
    color: #64748B;
    margin-bottom: 2px;
}

.sinassc-meta-card__value {
    font-size: 13.5px;
    font-weight: 800;
    color: #0A2540;
    line-height: 1.2;
}

/* Contenedor Visor PDF Integrado */
.sinassc-pdf-viewer-wrap {
    background: #FFFFFF;
    border: 1.5px solid #E2E8F0;
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 8px 30px rgba(10, 37, 64, 0.07);
    padding: 6px;
    margin-bottom: 40px;
}

.sinassc-pdf-iframe {
    width: 100%;
    height: 840px;
    border: none;
    border-radius: 12px;
    display: block;
    background: #525659;
}

/* Responsive adjustments */
@media (max-width: 991px) {
    .sinassc-filters-bar {
        grid-template-columns: 1fr 1fr;
    }
    .sinassc-meta-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .sinassc-doc-header-card {
        flex-direction: column;
        align-items: flex-start;
    }
    .sinassc-doc-header-card__actions {
        width: 100%;
        flex-direction: row;
    }
    .sinassc-doc-header-card__actions a {
        flex: 1;
    }
    .sinassc-pdf-iframe {
        height: 650px;
    }
}

@media (max-width: 767px) {
    .sinassc-module-hero {
        padding: 160px 0 45px;
    }
    .sinassc-module-hero__content {
        flex-direction: column;
        text-align: center;
    }
    .sinassc-comunicados-header {
        flex-direction: column;
        align-items: flex-start;
    }
    .sinassc-search-box {
        width: 100%;
    }
    .sinassc-search-box input {
        width: 100%;
    }
    .sinassc-filters-bar {
        grid-template-columns: 1fr;
    }
    .sinassc-comunicado-row {
        flex-direction: column;
        align-items: flex-start;
        padding: 16px;
    }
    .sinassc-actions-wrap {
        width: 100%;
        flex-direction: row;
    }
    .sinassc-actions-wrap a {
        flex: 1;
    }
    .sinassc-meta-grid {
        grid-template-columns: 1fr;
    }
    .sinassc-doc-header-card__actions {
        flex-direction: column;
    }
    .sinassc-pdf-iframe {
        height: 500px;
    }
}