#primary-menu li.current-menu-item.current_page_item a{
    text-decoration: underline;
    font-weight: 700!important;
}
#primary-menu ul.sub-menu li a {
    text-decoration: none!important;
}
.sticky-enabled .main-navigation.is_stuck{
    background: rgba(17, 24, 39, 0.48);
    backdrop-filter: blur(2px);
}

.sticky-enabled .main-navigation.is_stuck .main-nav ul li a{
    color: var(--white) !important;
}

.sticky-enabled .main-navigation.is_stuck .main-nav ul.sub-menu li a {
    color: var(--text-primary)!important;
}

.main-navigation.navigation-stick.has-sticky-branding .inside-navigation.grid-container{
    padding-top: 16px;
    padding-bottom: 16px;
}

#sticky-navigation .inside-navigation .navigation-branding img{
    height: 32px;
    padding: 0;
}

.current-menu-item > a{
    text-decoration: underline;
    text-underline-offset: 5px;
}

/* Contact button color merged header */
/*.header-wrap .menu-bar-items a {*/
/*    border-color: var(--white);*/
/*    color: var(--white)!important;*/
/*}*/

/* Contact button color sticky nav*/
.is_stuck.navigation-stick .menu-bar-items a {
    border-color: var(--white);
    color: var(--white)!important;
}

.is_stuck.navigation-stick .menu-bar-items a:hover{
    border-color: transparent;
}

.is_stuck .current-language-button {
    color: var(--white);
}

.is_stuck .current-language-button svg path {
    stroke: var(--white);
}

.sticky-enabled .main-navigation.is_stuck .main-nav ul li a:hover {
    color: var(--purple-100)!important;
}
.sticky-enabled .main-navigation.is_stuck .main-nav .sub-menu li a:hover {
    color: var(--primary-main)!important;
}

.is_stuck.navigation-stick .menu-bar-items a:hover {
    color: var(--text-primary)!important;
}

.is_stuck.navigation-stick .language-switcher-options a {
    color: var(--text-primary)!important;
}

.current-language-item{
    gap: 8px;
}

.header-wrap .menu-bar-items button {
    color: var(--white);
}

.archive a.gb-button-94ce13ef{
    color: var(--white);
    border-color: var(--white) !important;
}

.archive a.gb-button-94ce13ef:hover{
    color: inherit;
}

.archive.category a.gb-button-94ce13ef{
    color: inherit;
    border-color: inherit!important;
}
.archive a.gb-button-94ce13ef:hover{
    border-color: var(--purple-200) !important;
}
.page-id-48164 a.gb-button-94ce13ef, /* Servicios ES */
.page-id-48501 a.gb-button-94ce13ef, /* Servicios PT */
.page-id-48499 a.gb-button-94ce13ef, /* Servicios EN */
.single-post a.gb-button-94ce13ef,
.single-cliente a.gb-button-94ce13ef,
.page-id-49759 a.gb-button-94ce13ef{
    color: var(--white);
    border-color: var(--white);
}
.single-cliente a.gb-button-94ce13ef:hover,
.page-id-48499 a.gb-button-94ce13ef:hover{
    color: inherit;
}

/*.header-wrap .menu-bar-items a.gb-button {*/
/*    border-color: var(--white);*/
/*    color: var(--white) !important;*/
/*}*/

.header-wrap .language-switcher-dropdown:hover button.current-language-button{
    color: var(--purple-300);
}
.header-wrap .language-switcher-dropdown:hover button.current-language-button svg path{
    stroke: var(--purple-300);
}

.header-wrap .menu-bar-items .language-switcher-dropdown svg path{
    stroke: var(--white)
}

.main-navigation .inside-navigation{
    gap: 80px;
}

/* Language dropdown custom */

.language-switcher-dropdown {
    position: relative;
    display: inline-block;
}

.current-language-button {
    background-color: transparent;
    padding: 12px;
    cursor: pointer;
    font-size: 16px!important;
    color: var(--primary);
    font-weight: 600;
    font-family: 'Montserrat';
    display: flex;
    align-items: center;
    gap: 8px;
}

.current-language-button:hover{
    background-color: transparent;
    color: var(--primary);
}

li.current-language:before{
    width: 16px;
    content: "•";
    display: block;
}

li.current-language {
    display: flex;
    align-items: center;
    gap: 8px;
    font-weight: 500;
    font-size: 14px;
}

ul.language-switcher-options li:not(.current-language) {
    padding-left: 32px;
}

.language-switcher-options {
    display: none; /* Hidden by default */
    position: absolute;
    background-color: var(--white);
    min-width: max-content;
    box-shadow: 0px 8px 16px rgba(0,0,0,0.2);
    z-index: 1;
    list-style-type: none;
    padding: 0;
    margin: 0;
}

.language-switcher-options li:last-of-type {
    border-bottom: none;
}

.language-switcher-options li {
    padding: 11px 26px;
}

nav div.menu-bar-items ul.language-switcher-options li a {
    font-weight: 500;
    text-decoration: none;
    color: var(--text-primary) !important;
    display: block;
    font-size: 14px;
}

.language-switcher-dropdown:hover .language-switcher-options {
    display: block; /* Show the dropdown when hovering */
    border-radius: 8px;
    background: var(--white);
    box-shadow: 0px 4px 16px 0px rgba(74, 95, 187, 0.24);
    /*padding: 10px;*/
    font-family: "Plus Jakarta Sans"
}

.language-switcher-options li a:hover {
    color: var(--primary-main);
}

.language-switcher-dropdown:hover button.current-language-button svg:last-child {
    transform: rotate(180deg);
}

.language-switcher-dropdown button.current-language-button svg:last-child {
    transition: transform 300ms ease-in;
}

.language-switcher-dropdown:hover button.current-language-button svg  path{
    stroke: var(--primary-main);
}

.language-switcher-dropdown:hover button.current-language-button {
    color: var(--primary-main);
}

.is_stuck .language-switcher-dropdown:hover button.current-language-button{
    color: var(--purple-300);
}

.is_stuck .language-switcher-dropdown:hover button.current-language-button svg  path{
    stroke: var(--purple-300);
}


ul.sub-menu li.menu-item a:hover {
    color: var(--primary-main)!important;
}

#primary-menu ul.sub-menu {
    background: var(--white);
    box-shadow: 0px 4px 16px 0px rgba(74, 95, 187, 0.24);
    min-width: max-content;
    padding: 16px;
    border-radius: 8px;
}

#primary-menu ul.sub-menu li.menu-item a {
    font-weight: 500;
}

.header-wrap .menu-bar-items h2 svg path {
    stroke: var(--white);
}

.language-switcher-options li:hover {
    background: var(--gray-100);
    border-radius: 8px;
}

.language-switcher-options li.current-language {
    padding: 11px 8px;
}

@media (max-width: 1024px){
    :root{
        --gp-slideout-width: 100% !important;
    }
    .main-navigation .inside-navigation{
        gap: unset;
    }
    .slideout-navigation  .inside-navigation{
        padding: unset!important;
        align-items: flex-start;
    }
    #generate-slideout-menu .slideout-menu li{
        /*text-align: left!important;*/
        margin-bottom: 0;
    }
    .slideout-navigation.do-overlay .menu-item-has-children .dropdown-menu-toggle{
        border-left: unset!important;
        padding: 0!important;
    }
    /* Off canvas menu */
    .offside-js--is-open .slideout-overlay{
        z-index: 9999999999;
        background: transparent;
        pointer-events: none;
    }
    .offside-js--is-left.slide-opened .slideout-overlay button.slideout-exit{
        pointer-events: all;
        left: unset!important;
        right: calc(0px + 24px);
        top: calc(0px + 24px);
        padding: 0;
    }
    .slideout-overlay .gp-icon svg{
        fill: var(--text-primary);
    }
    #generate-slideout-menu{
        padding: 16px;
    }
    .inside-header{
        padding: 24px 16px!important;
    }
    .inside-navigation .navigation-branding{
        margin-left: 16px;
    }
    .main-navigation .menu-toggle{
        padding:4px 8px;
    }
    .is_stuck .menu-toggle .gp-icon svg{
        fill: var(--white);
    }
    .current-language-button.mobile{
        margin: 0 auto;
    }
    .current-language-button.mobile > span{
        display: flex;
        align-items: center;
        gap: 8px;
    }
    .current-language-button + .language-switcher-options {
        box-shadow: none!important;
        width: 100%;
    }

    .current-language-button + .language-switcher-options li.current-language {
        font-size: 16px;
        font-weight: 500!important;
    }

    .current-language-button + .language-switcher-options li:not(.current-language) a {
        color: var(--body-color);
        font-weight: 500;
    }
    .current-language-button + .language-switcher-options {
        box-shadow: none!important;
        width: 100%;
    }

    .current-language-button + .language-switcher-options li.current-language {
        font-size: 16px;
        font-weight: 600!important;
        padding: 10px 22px!important;
        justify-content: center;
    }

    .current-language-button + .language-switcher-options li:not(.current-language) a {
        color: var(--body-color);
        font-weight: 500;
    }
    .language-switcher-options li {
        padding: 10px 46px !important;
    }
    .slideout-navigation .main-nav li.menu-item a {
        padding: 0;
        font-size: 16px;
        display: flex!important;
        justify-content: center;
        gap: 8px;
    }

    .slideout-navigation .inside-navigation ul.slideout-menu {
        padding: 24px 16px;
    }
    .slideout-navigation .gp-icon svg {
        width: 20px;
        height: 20px;
    }

    .slideout-navigation .inside-navigation .main-nav {
        margin-bottom: 0;
        margin-top: 65px;
    }
    ul.toggled-on li.menu-item.menu-item-type-custom.menu-item-object-custom {
        padding: 8px 0;
    }

    .sub-menu.toggled-on {
        box-shadow: none;
        display: flex!important;
        flex-direction: column;
        gap: 8px;
    }
    .slideout-navigation.do-overlay .slideout-exit{
        position: fixed!important;
        padding: 16px;
        top: 4px!important;
        right: 6px!important;
    }
    .main-navigation.navigation-stick.has-sticky-branding .inside-navigation.grid-container{
        padding-top: 25px;
        padding-bottom: 25px;
    }
}
