.elementor-widget-section .mas-swiper-arrows .elementor-button-link{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-5900 .elementor-element.elementor-element-0e3ed3f .jet-listing-dynamic-link__link{align-self:flex-start;flex-direction:row;}.elementor-5900 .elementor-element.elementor-element-0e3ed3f .jet-listing-dynamic-link__icon{order:1;}.elementor-5900 .elementor-element.elementor-element-2c37cde .jet-listing-dynamic-field .jet-listing-dynamic-field__inline-wrap{width:auto;}.elementor-5900 .elementor-element.elementor-element-2c37cde .jet-listing-dynamic-field .jet-listing-dynamic-field__content{width:auto;}.elementor-5900 .elementor-element.elementor-element-2c37cde .jet-listing-dynamic-field{justify-content:flex-start;}.elementor-5900 .elementor-element.elementor-element-2c37cde .jet-listing-dynamic-field__content{text-align:left;}.elementor-5900 .elementor-element.elementor-element-75ce275 .jet-listing-dynamic-field .jet-listing-dynamic-field__inline-wrap{width:auto;}.elementor-5900 .elementor-element.elementor-element-75ce275 .jet-listing-dynamic-field .jet-listing-dynamic-field__content{width:auto;}.elementor-5900 .elementor-element.elementor-element-75ce275 .jet-listing-dynamic-field{justify-content:flex-start;}.elementor-5900 .elementor-element.elementor-element-75ce275 .jet-listing-dynamic-field__content{text-align:left;}.elementor-5900 .elementor-element.elementor-element-93930eb .jet-listing-dynamic-field .jet-listing-dynamic-field__inline-wrap{width:auto;}.elementor-5900 .elementor-element.elementor-element-93930eb .jet-listing-dynamic-field .jet-listing-dynamic-field__content{width:auto;}.elementor-5900 .elementor-element.elementor-element-93930eb .jet-listing-dynamic-field{justify-content:flex-start;}.elementor-5900 .elementor-element.elementor-element-93930eb .jet-listing-dynamic-field__content{text-align:left;}.elementor-5900 .elementor-element.elementor-element-4ab69fc .jet-listing-dynamic-repeater__items{flex-direction:column;justify-content:flex-start;}.elementor-5900 .elementor-element.elementor-element-4ab69fc .jet-listing-dynamic-repeater__item > *{justify-content:flex-start;}/* Start custom CSS for jet-listing-dynamic-repeater, class: .elementor-element-4ab69fc *//**
 * CSS COMPLETO: Diseño de Tarjeta de Detalle para Estructura (Título, Texto, Archivo y Lista Repetida)
 * CON BOTONES GRANDES E ICONOS
 */

/* Colores clave: Azul de acento (#3498DB), Sombra suave, Fondo de tarjeta (#FFFFFF) */

/* 1. Estilo de Contenedor General (Tarjeta con Sombra) */
.elementor-element-31b3d2a > .elementor-widget-wrap {
    background-color: #FFFFFF;
    border-radius: 8px; /* Bordes redondeados */
    margin-bottom: 25px; /* Separación entre tarjetas */
    padding: 20px; /* Padding interno */
    
    /* Sombra de tarjeta sutil */
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08), 0 2px 4px rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
}

/* Efecto Hover en la Tarjeta Completa */
.elementor-element-31b3d2a > .elementor-widget-wrap:hover {
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.15), 0 4px 6px rgba(0, 0, 0, 0.1);
}


/* 2. Estilo para el Título Principal (#tituloapartado) */
#tituloapartado {
    order: 1; 
    margin-bottom: 5px;
}
#tituloapartado .jet-listing-dynamic-field__content {
    font-size: 1.4em;
    font-weight: 700;
    color: #34495e; 
    line-height: 1.3;
}


/* 3. Estilo para el Botón de Archivo (.elementor-element-0e3ed3f) */
.elementor-element-0e3ed3f {
    order: 0; 
    margin-bottom: 15px;
    text-align: right;
}

/* Estilo del Enlace/Botón Ghost */
.elementor-element-0e3ed3f .jet-listing-dynamic-link__link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 15px;
    background: transparent;
    color: #3498DB;
    border: 1px solid #3498DB;
    font-weight: 600;
    font-size: 14px;
    border-radius: 4px;
    text-decoration: none;
    transition: all 0.3s ease-in-out;
    cursor: pointer;
}

.elementor-element-0e3ed3f .jet-listing-dynamic-link__link:hover {
    background: #3498DB;
    color: #FFFFFF;
    border-color: #3498DB;
    box-shadow: 0 2px 5px rgba(52, 152, 219, 0.2);
}


/* 4. Estilo para el Texto de Detalle (#textoapartado) */
#textoapartado {
    order: 2;
    margin-bottom: 20px;
    border-top: 1px solid #EEEEEE; 
    padding-top: 15px;
}
#textoapartado .jet-listing-dynamic-field__content {
    font-size: 1em;
    line-height: 1.6;
    color: #555555;
}


/* 5. Estilo para la Lista Repetida de Personas (#datosrepeater) */
#datosrepeater {
    order: 3;
}
#datosrepeater .jet-listing-dynamic-repeater__items {
    border: 1px solid #EEEEEE;
    border-radius: 4px;
    overflow: hidden;
}

/* Fila individual del repeater (Sub-tabla) */
#datosrepeater .jet-listing-dynamic-repeater__item {
    padding: 0; /* Quitamos el padding aquí y lo ponemos en el Flexbox */
    border-bottom: 1px solid #EEEEEE;
    background-color: #F9F9F9; 
    font-size: 0.95em;
    font-weight: 500;
    color: #333333;
    transition: background-color 0.2s ease;
}

/* Zebra Striping (rayas alternas para mejor legibilidad) */
#datosrepeater .jet-listing-dynamic-repeater__item:nth-child(odd) {
    background-color: #FFFFFF;
}

/* Hover de la Fila de la Lista */
#datosrepeater .jet-listing-dynamic-repeater__item:hover {
    background-color: #E6F7FF; 
}

/* Eliminar borde inferior del último ítem */
#datosrepeater .jet-listing-dynamic-repeater__item:last-child {
    border-bottom: none;
}

/* ------------------------------------------------ */
/* 5.1. ESTILOS DE LA FILA INTERNA (PERSONA Y ARCHIVOS) */
/* ------------------------------------------------ */

.persona-fila-completa {
    display: flex; 
    align-items: center; 
    justify-content: space-between;
    padding: 10px 15px; /* Padding de la fila interna */
    width: 100%;
}

.persona-nombre-columna {
    flex-grow: 1; 
    padding-right: 15px;
    font-size: 1em;
    font-weight: 600;
    color: #333333;
}

.persona-archivos-columna {
    flex-shrink: 0; 
    display: flex; 
    gap: 8px; 
    align-items: center;
    text-align: right;
}

/* 5.2. ESTILOS DE BOTÓN AUMENTADO (.btn-archivo) */

.btn-archivo {
    /* **CAMBIOS** */
    display: inline-flex;
    align-items: center;
    gap: 6px; /* Separación entre icono y texto */
    padding: 8px 14px; /* AUMENTADO: Botón más grande */
    font-size: 14px; /* AUMENTADO */
    font-weight: 600; /* Más robusto */
    /* **FIN CAMBIOS** */
    
    background: transparent;
    color: #3498DB;
    border: 1px solid #3498DB;
    border-radius: 4px;
    text-decoration: none;
    transition: all 0.2s ease;
    cursor: pointer;
}

.btn-archivo:hover {
    background: #3498DB;
    color: #FFFFFF;
    border-color: #3498DB;
    box-shadow: 0 1px 3px rgba(52, 152, 219, 0.3);
}

/* Ocultar si el enlace está vacío */
.btn-archivo[href=""] {
    display: none !important;
}


/* 6. Adaptación a Móviles */
@media (max-width: 767px) {
    .elementor-element-31b3d2a > .elementor-widget-wrap {
        padding: 15px;
        margin-bottom: 15px;
        box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    }
    
    #tituloapartado .jet-listing-dynamic-field__content {
        font-size: 1.2em;
    }

    .elementor-element-0e3ed3f {
        text-align: center;
    }
    .elementor-element-0e3ed3f .jet-listing-dynamic-link__link {
        width: 100%; 
        justify-content: center;
    }
    
    /* Repetidor Móvil */
    .persona-fila-completa {
        display: block; 
        padding: 10px 0; /* Menos padding lateral en móvil */
    }
    
    .persona-nombre-columna {
        padding-right: 0;
        margin-bottom: 10px;
        text-align: center;
    }
    
    .persona-archivos-columna {
        justify-content: space-between; 
        gap: 5px; 
        flex-wrap: wrap; 
        text-align: left;
    }
    
    .btn-archivo {
        flex-grow: 1; 
        width: auto;
    }
}/* End custom CSS */
/* Start custom CSS for column, class: .elementor-element-31b3d2a *//**
 * CSS COMPLETO: Diseño de Tarjeta de Detalle para Estructura (Título, Texto, Archivo y Lista Repetida)
 * Contenedor principal: .elementor-widget-wrap (dentro de .elementor-element-31b3d2a)
 */

/* Colores clave: Azul de acento (#3498DB), Sombra suave, Fondo de tarjeta (#FFFFFF) */

/* 1. Estilo de Contenedor General (Tarjeta con Sombra) */
.elementor-element-31b3d2a > .elementor-widget-wrap {
    background-color: #FFFFFF;
    border-radius: 8px; /* Bordes redondeados */
    margin-bottom: 25px; /* Separación entre tarjetas */
    padding: 20px; /* Padding interno */
    
    /* Sombra de tarjeta sutil */
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08), 0 2px 4px rgba(0, 0, 0, 0.05);
    transition: all 0.3s ease;
}

/* Efecto Hover en la Tarjeta Completa */
.elementor-element-31b3d2a > .elementor-widget-wrap:hover {
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.15), 0 4px 6px rgba(0, 0, 0, 0.1);
}


/* 2. Estilo para el Título Principal (#tituloapartado) */
#tituloapartado {
    order: 1; /* Aseguramos que el título aparezca primero */
    margin-bottom: 5px;
}
#tituloapartado .jet-listing-dynamic-field__content {
    font-size: 1.4em;
    font-weight: 700;
    color: #34495e; /* Azul oscuro para prominencia */
    line-height: 1.3;
}


/* 3. Estilo para el Botón de Archivo (.elementor-element-0e3ed3f) */
.elementor-element-0e3ed3f {
    order: 0; /* Colocamos el botón arriba del título para un header de tarjeta */
    margin-bottom: 15px;
    text-align: right;
}

/* Estilo del Enlace/Botón Ghost */
.elementor-element-0e3ed3f .jet-listing-dynamic-link__link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 15px;
    
    background: transparent;
    color: #3498DB;
    border: 1px solid #3498DB;
    
    font-weight: 600;
    font-size: 14px;
    border-radius: 4px;
    text-decoration: none;
    transition: all 0.3s ease-in-out;
    cursor: pointer;
}

.elementor-element-0e3ed3f .jet-listing-dynamic-link__link:hover {
    background: #3498DB;
    color: #FFFFFF;
    border-color: #3498DB;
    box-shadow: 0 2px 5px rgba(52, 152, 219, 0.2);
}


/* 4. Estilo para el Texto de Detalle (#textoapartado) */
#textoapartado {
    order: 2;
    margin-bottom: 20px;
    border-top: 1px solid #EEEEEE; /* Separador sutil */
    padding-top: 15px;
}
#textoapartado .jet-listing-dynamic-field__content {
    font-size: 1em;
    line-height: 1.6;
    color: #555555;
}


/* 5. Estilo para la Lista Repetida de Personas (#datosrepeater) */
#datosrepeater {
    order: 3;
}
#datosrepeater .jet-listing-dynamic-repeater__items {
    border: 1px solid #EEEEEE;
    border-radius: 4px;
    overflow: hidden;
}

/* Fila individual del repeater (Sub-tabla) */
#datosrepeater .jet-listing-dynamic-repeater__item {
    padding: 10px 15px;
    border-bottom: 1px solid #EEEEEE;
    background-color: #F9F9F9; /* Fondo de lista ligeramente distinto */
    font-size: 0.95em;
    font-weight: 500;
    color: #333333;
    transition: background-color 0.2s ease;
}

/* Zebra Striping (rayas alternas para mejor legibilidad) */
#datosrepeater .jet-listing-dynamic-repeater__item:nth-child(odd) {
    background-color: #FFFFFF;
}

/* Hover de la Fila de la Lista */
#datosrepeater .jet-listing-dynamic-repeater__item:hover {
    background-color: #E6F7FF; /* Fondo azul claro en hover */
}

/* Eliminar borde inferior del último ítem */
#datosrepeater .jet-listing-dynamic-repeater__item:last-child {
    border-bottom: none;
}


/* 6. Adaptación a Móviles */
@media (max-width: 767px) {
    .elementor-element-31b3d2a > .elementor-widget-wrap {
        padding: 15px;
        margin-bottom: 15px;
        box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    }
    
    #tituloapartado .jet-listing-dynamic-field__content {
        font-size: 1.2em;
    }

    .elementor-element-0e3ed3f {
        text-align: center;
    }
    .elementor-element-0e3ed3f .jet-listing-dynamic-link__link {
        width: 100%; /* Botón full-width en móvil */
        justify-content: center;
    }
}

/**
 * Estilo para el ID: #grupopolitico
 * Lo convertimos en una etiqueta (badge) con el color de acento.
 */

#grupopolitico {
    /* * Asignamos un order: 1.5 para que se coloque después del título (order: 1)
     * y antes de la descripción (order: 2), si estás usando Elementor/Flexbox.
     */
    order: 1.5; 
    margin-bottom: 15px; /* Espacio antes del texto de detalle (#textoapartado) */
}

#grupopolitico .jet-listing-dynamic-field__content {
    display: inline-block; /* Permite aplicar padding y dimensiones de un bloque */
    font-size: 1em;
    font-weight: 700;
    color: #34495e; /* Color principal más oscuro */
    
    /* Estilo de Badge/Etiqueta */
    padding: 4px 10px; 
    border: 2px solid #3498DB; /* Borde con el color de acento */
    border-radius: 6px; /* Bordes suaves */
    background-color: #E6F7FF; /* Fondo azul muy claro */
    text-transform: uppercase; /* Para que resalte como categoría */
    letter-spacing: 0.5px;
}

/* Opcional: Ajuste para el título si el badge queda muy pegado */
#tituloapartado {
    margin-bottom: 10px; /* Asegura un buen espacio entre título y badge */
}

/* Opcional: Ajuste para la descripción si la línea divisoria se ve rara */
#textoapartado {
    border-top: 1px solid #EEEEEE; 
    padding-top: 15px;
    margin-top: 15px; /* Separación explícita para que el badge no toque la línea */
}/* End custom CSS */