#masthead {
    padding: 5px 0;
    border: 0;
    box-shadow: 3px 2px 6px rgb(0 0 0 / 16%);
}

body.overlap-enabled:not(.page) #masthead {
    position: relative !important;
}

#masthead .polestar-container {
    max-width: 119rem;
}

#masthead .site-header-inner {
    display: flex;
    position: relative;
}
    
#masthead .site-branding {
    max-width: 24rem;
}

#site-navigation {
    flex: 1;
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
}

#mobile-menu-button {
    display: block;
    top: 0;
    right: 0;
    width: fit-content;
    margin-left: 1rem;
    height: auto;
    text-align: center;
    font-size: .8rem;
}

svg#menu line.cls-1 {
    transition: all .3s ease;
    transform-origin: center center;
}

#mobile-menu-button:hover line.cls-1:nth-child(2),
#mobile-menu-button:hover line.cls-1:nth-child(3) {
    transform: scaleX(.9);
}

#side-menu .to-close line.cls-1:nth-child(1),
#side-menu .to-close line.cls-1:nth-child(4) {
    opacity: 0;
}

#side-menu .to-close line.cls-1:nth-child(2) {
    transform: rotate(45deg) translate(1px, 1px);
}

#side-menu .to-close line.cls-1:nth-child(3) {
    transform: rotate(-45deg) translate(.4px, -.35px);
}

#header-content .right-col > .vc_column-inner > .wpb_wrapper {
    display: flex;
    justify-content: flex-end;
    align-items: stretch;
}

#header-content .right-col .vc_row .vc_column-inner > .wpb_wrapper {
    display: flex;
    flex-direction: column;
}

#header-content .right-col .vc_row .vc_column-inner > .wpb_wrapper .vc_btn3-container {
    display: flex;
}

#header-content .right-col img {
    max-height: 6.067rem;
    width: auto;
}
    
#header-content .right-col .vc_btn3 {
    font-size: 1.2rem;
    padding: .333rem 1rem;
}

#header-content .right-col .vc_btn3:after {
    content: attr(data-count);
    position: absolute;
    right: 0;
    top: 0;
    transform: translateX(50%);
    width: 1.333rem;
    height: 1.333rem;
    background: #fff;
    border-radius: 50%;
    border: 1px solid var(--accent-color);
    font-size: 1rem;
    color: var(--accent-color);
    display: flex
;
    justify-content: center;
    align-items: center;
}

#header-content .right-col .vc_row,
#header-content .right-col .section-img-1 {
    margin-right: 1.333rem;
}

#header_anime_1 {
    font-size: 1.2rem;
    width: 8rem;
    background: #1398D6;
    padding: .667rem .4rem;
    transition: all .5s ease;
}

#header_anime_1:hover {
    background: #003384;
}

#header_anime_1 a {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

#header_anime_1 dotlottie-player {
    width: 5rem;
    float: right;
    height: auto;
}

#header_anime_1 p {
    text-align: left;
    color: #fff;
    font-weight: bold;
    line-height: normal;
    margin-left: 5px;
    margin-bottom: 0;
}

/*@media screen and (min-width: 992px) and (max-width: 1920px) {
    
    #masthead .site-branding {
        max-width: 15.75vw;
    }
}*/

/*
@media screen and (max-width: 1920px) {

    #header-content .flex-grow-1.wpb_column h1.vc_custom_heading {
        font-size: 1.3vw !important;
    }

    #header-content .flex-grow-1.wpb_column h2.vc_custom_heading {
        font-size: 1.0416vw !important;
    }
    
    #header-content .right-col img {
        max-height: 4.73958vw;
    }
    
    #header-content .right-col .vc_btn3 {
        font-size: .9vw;
    }
    
    #header-content .right-col .vc_row,
    #header-content .right-col .section-img-1 {
        margin-right: 1.0416vw;
    }
}
*/


@media screen and (max-width: 991px) {
    
    #masthead .site-header-inner:before {
        content: '';
        position: absolute;
        left: 0;
        top: 50%;
        width: calc( 100% - 55px );
        height: 95%;
        transform: translateY(-50%);
        background-image: url(/wp-content/uploads/2023/11/GIP-EAM-logos-mobile.jpg.webp);
        background-repeat: no-repeat;
        background-size: contain;
        background-position: left center;
    }
    
    #masthead .site-branding {
        visibility: hidden;
        /*max-width: 26vw;
        padding-right: 1.042vw;*/
    }
    
    #header-content .right-col img {
        max-height: 19.2rem;
    }
    
    #header-content .right-col .section-img-1 + .vc_row {
        min-width: fit-content;
    }

    #header-content .right-col .section-img-1 + .vc_row .vc_column-inner {
        padding-left: .333rem;
        padding-right: .333rem;
    }

    #header-content .right-col .vc_btn3 {
        font-size: 3.2rem;
        padding: .2rem .667rem;
    }
    
    #header-content .right-col .vc_btn3:after {
        width: 1rem;
        height: 1rem;
        font-size: .667rem;
    }
}

/*sidemenu*/
#side-menu {
    position: fixed;
    right: 0;
    top: 0;
    bottom: 0;
    transform: translateX(calc(100% + 13.333rem));
    width: 90vw;
    /*max-width: fit-content;*/
    max-width: 53.333rem;
    margin: 0;
    background-color: var(--accent-color);
    z-index: 1000;
    /*transition: all .4s ease;*/
    transition: transform 0.5s ease-out;
    box-sizing: border-box;
    /*box-shadow: -25px 0px 60px 80px rgb(0 0 0 / 15%);*/
    box-shadow: 0 0 .667rem rgb(0 0 0 / 15%);
    overflow-y: scroll;
}

#side-menu > .wpb_column {
    position: unset;
}

#side-menu  .sub-menu {
    padding-left: 1rem;
    margin-top: .667rem;
}

#side-menu .menu-item.menu-item-has-children {
    margin-bottom: .667rem;
}

/*#side-menu .sub-menu .menu-item {
    line-height: .64;
}*/

#side-menu .menu-item {
    opacity: 0;
    transform: translateY(-2.667rem);
    transition-delay: .5s;
    list-style-position: outside;
    line-height: normal;
    margin-bottom: .667rem;
}

#side-menu .menu-item a,
#side-menu .menu-item span {
    line-height: normal !important;
    display: flex !important;
    flex-wrap: wrap;
    max-width: fit-content;
}

#side-menu .sub-menu .menu-item a {
    font-size: 90%;
    line-height: 1;
}

html.menu-opened {
    pointer-events: none;
}

.menu-opened #side-menu {
    transform: translateX(1.667rem);
    pointer-events: all;    
}

.menu-opened #side-menu .menu-item {
    opacity: 1;
    transform: translateY(0);
    transition-timing-function: ease-out;
}

.menu-opened #side-menu li:nth-child(1) {
    transition: all 275ms 350ms;
}

.menu-opened #side-menu li:nth-child(2) {
    transition: all 275ms 400ms;
}

.menu-opened #side-menu li:nth-child(3) {
    transition: all 275ms 450ms;
}

.menu-opened #side-menu li:nth-child(4) {
    transition: all 275ms 500ms;
}

.menu-opened #side-menu li:nth-child(5) {
    transition: all 275ms 550ms;
}

.menu-opened #side-menu li:nth-child(6),
.menu-opened #side-menu li:nth-child(6) ~ *{
    transition: all 275ms 600ms;
}

#side-menu-close {
    position: absolute;
    top: .8rem;
    right: 2.667rem;
    z-index: 10;
}

.firefox #side-menu-close {
    right: 3.333rem;
}

#side-menu-close svg {
    width: 1.6rem;
    display: block;
}

#side-menu-close line {
    stroke: var(--header-color) !important;
}

#side-menu-close svg:hover line {
    stroke: var(--header-hover-color) !important;
}

#side-menu .social-profiles svg path#Path_992 {
    fill: unset;
}

@media (hover: none) {

    #side-menu .menu-item svg {
        display: none;
    }    
}

@media (hover: hover) {
    
    html:nt(.firefox) #side-menu {        
        right: -1.2rem;
    }

    #side-menu .menu-item svg {
        position: absolute;
        right: 0;
        top: 0;
        width: 2.333rem;
        height: 2.333rem;
        animation: menustarloop 2s infinite both linear paused;
        opacity: 0;
        transition: opacity .3s linear;
    }

    #side-menu .menu-item a {
        position: relative;
        padding-right: 3rem;
    }

    #side-menu .menu-item a:hover svg {
        opacity: 1;
        animation-play-state: running;
    }
}

@media screen and (min-width: 992px) {    

    #side-menu {
        padding: 5.76rem;    
    }
}

/*@media screen and (min-width: 992px) and (max-width: 1920px) {
    
    #side-menu {
        max-width: 41.667vw;
    }
    
    #side-menu  .sub-menu {
        padding-left: 1.302vw;       
        margin-bottom: .521vw;
    }

    #side-menu .menu-item {
        font-size: 1.171875vw;        
        margin-bottom: .521vw;
    }
    
    #side-menu .menu-item a {
        padding-right: 2.34375vw;
    }

    #side-menu .menu-item svg {
        width: 1.8229vw;
        height: 1.8229vw;
    }
}*/

@media screen and (min-width: 1921px) {
    
    #side-menu  .sub-menu {
        padding-left: 25px;
    }

    #side-menu .menu-item {
        font-size: 1.5rem;
    }
}

@keyframes menustarloop {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

@-webkit-keyframes menustarloop {
    0 {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}
/*sidemenu*/