/* IIM CSIC Mega Menu */
:root {
    --iim-menu-side-margins: calc(calc(100dvw - 1170px) / 2);
}

/* ==========================================================================
   RESETEO DE CSS PARA LOS PANELS DE LAYOUT
   ========================================================================== */

/* Resetear TODA la herencia dentro del panel del layout */
.iim-layout-panel {
    all: initial;
    display: block;
    box-sizing: border-box;
    font-family: inherit;
    color: inherit;
}

/* Revertir los estilos de los elementos dentro del panel
   al valor por defecto del navegador o del theme (no del nav) */
.iim-layout-panel *,
.iim-layout-panel *::before,
.iim-layout-panel *::after {
    all: revert;
    box-sizing: border-box;
}

/* Asegurar que las listas dentro del layout NO hereden estilos del menú */
.iim-layout-panel ul,
.iim-layout-panel ol {
    list-style: revert;
    padding: revert;
    margin: revert;
    display: revert;
}

.iim-layout-panel li {
    display: revert;
    padding: revert;
    margin: revert;
    width: revert;
    position: revert;
    float: revert;
    list-style: revert;
    border: revert;
    background: revert;
}

.iim-layout-panel li::before,
.iim-layout-panel li::after {
    content: revert;
    display: revert;
}

/* Asegurar que los enlaces dentro del layout tengan estilos normales */
.iim-layout-panel a {
    display: revert;
    padding: revert;
    color: revert;
    text-decoration: revert;
    font-weight: revert;
    line-height: revert;
}

/* Forzar que el sub-menu del nav NO aplique sus estilos al panel */
.iim-mega-dropdown>.iim-layout-panel {
    position: relative;
}

/* Contraatacar selectores específicos de Neve que podrían filtrar */
nav .iim-layout-panel ul {
    position: static;
    display: block;
    visibility: visible;
    opacity: 1;
    background: none;
    box-shadow: none;
    border: none;
    min-width: unset;
    left: unset;
    top: unset;
    padding: 0;
    margin: 0;
}

nav .iim-layout-panel li {
    display: list-item;
    width: auto;
    float: none;
    padding: 0;
    margin: 0;
    border: none;
    background: none;
}

nav .iim-layout-panel li:hover {
    background: none;
}

nav .iim-layout-panel a {
    display: inline;
    padding: 0;
}

/* Permitir que los bloques de Gutenberg apliquen sus propios estilos */
.iim-layout-panel .wp-block-group,
.iim-layout-panel .wp-block-columns,
.iim-layout-panel .wp-block-column,
.iim-layout-panel .wp-block-image,
.iim-layout-panel .wp-block-heading,
.iim-layout-panel .wp-block-paragraph,
.iim-layout-panel .wp-block-list,
.iim-layout-panel .wp-block-buttons,
.iim-layout-panel .wp-block-button {
    all: revert;
}

/* Los shortcodes de menú dentro del layout necesitan sus propios estilos */
.iim-layout-panel .iim-csic-menu-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.iim-layout-panel .iim-csic-menu-list li {
    display: block;
    list-style: none;
    padding: 0;
    margin: 0;
}

/* ==========================================================================
    FIN - RESETEO DE CSS PARA LOS PANELS DE LAYOUT
   ========================================================================== */

/* Todos static EXCEPTO el item mega que debe ser relative */
.header-main .container,
.hfg_header .container,
.nv-navbar,
.nv-nav-wrap,
.nav-ul,
.primary-menu-ul,
.iim-mega-nav {
    position: static !important;
}

/* mega menu */
.header--row .builder-item.has-nav,
.header--row .builder-item.has-nav>.has_menu {
    margin: unset !important;
    height: 100% !important;
}

.header--row .builder-item.has-nav,
.header--row .builder-item.has-nav>.has_menu>.nv-nav-wrap,
.header--row .builder-item.has-nav>.has_menu>.nv-nav-wrap>.nav-menu-primary,
.header--row .builder-item.has-nav>.has_menu>.nv-nav-wrap>.nav-menu-primary>.primary-menu-ul,
.header--row .builder-item.has-nav>.has_menu>.nv-nav-wrap>.nav-menu-primary>.primary-menu-ul .wrap {
    height: 100% !important;
}

/* El item mega es relative para anclar el dropdown */
.iim-mega-item {
    position: static !important;
    margin: unset !important;
}

.iim-mega-nav>li>.wrap {
    padding: 25px !important;
    /* width: 100% !important; */
}

/* Dropdown */
.iim-mega-item>.iim-mega-dropdown {
    position: absolute !important;
    /* top: calc(100% - 8px); */
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    min-height: max(40vh, 400px) !important;
    display: none;
    padding: 0 !important;
    z-index: 99999;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

.sub-menu.iim-mega-dropdown {
    transform: unset !important;
}

.iim-mega-item:hover>.iim-mega-dropdown,
.iim-mega-item:focus-within>.iim-mega-dropdown {
    display: block !important;
    flex-direction: column;
}

.iim-mega-item .caret-wrap .sub-menu-icon {
    transition: transform 0.3s ease;
    margin-top: 6px;
}

.iim-mega-item:hover .caret-wrap .sub-menu-icon {
    transform: unset !important;
}

/* Fondo panel derecho */
.iim-mega-dropdown::before {
    content: '';
    position: absolute;
    top: 0;
    left: calc(50% - 130px);
    right: 0;
    bottom: 0;
    z-index: 0;
    pointer-events: none;
}

/* Items del menú */
.iim-mega-dropdown>.menu-item {
    position: static !important;
    display: block !important;
    width: 280px !important;
    padding: 10px 20px !important;
    margin: 0 auto 0 var(--iim-menu-side-margins) !important;
    z-index: 1;
}

/* Padding superior solo al primer ítem del menú */
.iim-mega-dropdown>.menu-item:first-of-type {
    padding-top: 30px !important;
}


.iim-mega-dropdown>.menu-item>.wrap {
    padding: 0 !important;
}

/* Color para items activos SOLO en el menú padre (primer nivel) */
.nav-ul>li.nv-active>.wrap>a,
.nav-ul>li.nv-active>.wrap .caret {
    color: var(--nv-secondary-accent) !important;
}

.iim-mega-dropdown .caret-wrap,
.iim-mega-dropdown>.menu-item>.sub-menu {
    display: none !important;
}

/* Paneles de layout - Por defecto todos ocultos */
.iim-layout-panel {
    background: var(--nv-secondary-accent);
    position: absolute !important;
    top: 0 !important;
    left: calc(var(--iim-menu-side-margins) + 320px) !important;
    right: 0 !important;
    bottom: 0 !important;
    padding: 30px 40px !important;
    display: none !important;
    overflow-y: auto;
    z-index: 10;
}

.iim-layout-panel p {
    line-height: 1.3rem;
}

/* Paneles de layout hijos */
.iim-layout-panel>div {
    margin-right: calc((100dvw - 1170px) / 2) !important;
}

/* Panel del padre - Mostrar por defecto cuando el dropdown está abierto */
.iim-mega-dropdown>.iim-parent-panel {
    display: block !important;
}

/* Ocultar panel del padre cuando hay hover en algún ítem */
.iim-mega-dropdown.iim-has-hover>.iim-parent-panel {
    display: none !important;
}

/* Mostrar el panel del ítem con hover */
.iim-mega-dropdown>.menu-item.iim-has-layout:hover>.iim-layout-panel {
    display: block !important;
}

/* Contenido del layout */
.iim-layout-panel h2,
.iim-layout-panel h3,
.iim-layout-panel h4 {
    margin: 0 0 15px;
}

.iim-layout-panel .innerblocks-wrap {
    display: flex !important;
    gap: 30px !important;
}

.iim-layout-panel .wp-block-themeisle-blocks-advanced-column {
    flex: 1 !important;
}

.iim-layout-panel .menu-vertical-links li a,
.iim-layout-panel .wp-block-list li a {
    padding: 8px 0 !important;
    display: block !important;
}

.iim-layout-panel .wp-block-button__link {
    padding: 10px 20px !important;
    border-radius: 4px !important;
    font-weight: 600 !important;
}

/* Responsive */
@media (max-width: 1200px) {
    .iim-mega-dropdown>.menu-item {
        margin-left: 50px !important;
    }

    .iim-layout-panel,
    .iim-mega-dropdown::before {
        left: 330px !important;
    }
}

@media (max-width: 960px) {
    .iim-mega-item>.iim-mega-dropdown {
        position: relative !important;
        height: auto !important;
    }

    .iim-mega-dropdown>.menu-item {
        width: 100% !important;
        margin-left: 0 !important;
    }

    .iim-mega-dropdown::before {
        display: none;
    }

    .iim-layout-panel {
        position: relative !important;
        left: 0 !important;
        width: 100% !important;
        height: auto !important;
    }
}

/*********************************
    IIM CSIC Mega Menu - Fin 
**********************************/


/* listas */

.iim-csic-custom-li {
    display: block;
    padding: 5px 25px;
    list-style: disc;
    margin-bottom: 30px;
}

/* Titulos H1 */
.nv-title-meta-wrap .title.entry-title {
    color: inherit !important;
}

/* Titulos H1 */


/**********************************
    MENU FOOOTER
***********************************/

.iim-nav-footer a {
    display: inline-flex !important;
}

.nv-contact-list {
    flex-wrap: wrap;
}

.nv-contact-list li {
    margin-left: 0 !important;
}

.nv-contact-list address {
    font-style: inherit !important;
}

/**************************************
    Paginas 
**************************************/

/* cabecera */

.iim-header {
    position: relative;
    top: 53%;
    left: 25%;
    transform: translate(-50%, -50%);
    z-index: 1;
}

.iim-header-L {
    position: relative;
    top: 53%;
    left: 32%;
    transform: translate(-50%, -50%);
    z-index: 1;

}

@media (max-width: 1400px) {

    .iim-header-L {
        position: static;
        top: auto;
        left: auto;
        transform: none;
    }
}

@media (max-width: 960px) {
    .iim-header {
        position: static;
        top: auto;
        left: auto;
        transform: none;
    }
}

/* Contenido -  sección con imagen y icono */
.iim-section-icon {
    max-height: 150px;
}

/* Contenido -  icono con imagen a la izquierda */

.iim-icon-left {
    position: absolute !important;
    left: 0%;
    background: var(--nv-text-dark-bg);
    padding: 15px;
    border-radius: 80px;
    width: 110px;
    top: 25%;
    transform: translate(-50%, -50%);
}

@media (max-width: 960px) {
    .iim-icon-left {
        position: absolute !important;
        left: 50%;
        background: var(--nv-text-dark-bg);
        width: 110px;
        padding: 15px;
        border-radius: 80px;
        top: 10%;
        transform: translate(-50%, -50%);
    }
}

/* Contenido -  icono con imagen a la derecha*/
.iim-icon-right {
    position: absolute !important;
    left: 95%;
    z-index: 1;
    width: 110px;
    background: var(--nv-text-dark-bg);
    padding: 15px;
    border-radius: 80px;
    top: 25%;
    transform: translate(-50%, -50%);
}

@media (max-width: 960px) {
    .iim-icon-right {
        position: absolute !important;
        left: 50%;
        z-index: 1;
        width: 120px;
        background: var(--nv-text-dark-bg);
        padding: 15px;
        border-radius: 80px;
        top: 20%;
        transform: translate(-50%, -50%);
    }
}

/* Contenido - Imagens cuando pasan a column la segunda */
@media (max-width: 960px) {

    .iim-section-img-right .innerblocks-wrap {
        flex-direction: column-reverse !important;
    }


}


/* ==========================================================================
   Header bar — Las pestañas siempre en una fila horizontal
   ========================================================================== */
.wp-block-themeisle-blocks-tabs__header {
    display: flex !important;
    flex-wrap: nowrap !important;
    width: 100% !important;
    overflow-x: auto;
}

.wp-block-themeisle-blocks-tabs-item__header {
    display: none !important;
}

/***************
    Archives
*****************/

.blog ul.page-numbers,
.archive ul.page-numbers {
    justify-content: center;
}

/* archive - comites  */

.archive.tax-grupos_unidades_estrategicas .nv-post-thumbnail-wrap img {
    aspect-ratio: auto !important;
}