/* -------------------------- DÉBUT HEADER -------------------------- */

#header{
    background-color: var(--purpleDark);
    position: relative;
    background-repeat: repeat;
    /* background-image: url('/wp-content/themes/saxv/img/headerPixels.png'); */
    z-index: 3;
}

#header > .container{
    display: flex;
    flex-direction: column;
    gap: 25px;
    position: relative;
    max-width: 1800px !important;
}

#header .logo{
    position: absolute;
    left: 80px;
    top: 50%;
    transform: translateY(-50%);
}

#header .logo,
#header .logo img{
    width: 110px;
    max-width: 110px;
    display: block;
    z-index: 2;
}

@media (max-width: 1600px) {
    #header .logo,
    #header .logo img{
        width: 80px;
        max-width: 80px;
    }
}

@media (max-width: 1300px) {
    #header .logo{
        left: 36px;
        top: 12px;
        transform: none;
    }
    #header .logo,
    #header .logo img{
        width: 50px;
        max-width: 50px;
    }
    #header > .container{
        padding-inline: 36px;
    }
}

@media (max-width: 1200px) {
    #header{
        padding-block: 15px;
    }
    #header > .container{
        padding-inline: 20px;
        position: initial;
    }
}

/* -------------------------- FIN GÉNÉRAL -------------------------- */

/* -------------------------- DÉBUT TOP -------------------------- */

#header .top{
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    gap: 0px 50px;
    padding-block: 30px;
    position: relative;
}

#header .top::after{
    content: '';
    position: absolute;
    right: 0;
    bottom: 0;
    width: calc(100% - 110px - 25px);
    height: 1px;
    background-color: var(--goldMedium);
}

#header .top .links{
    grid-column: 2/3;
}

#header .top .links{
    display: flex;
    align-items: center;
    gap: 30px;
}

#header .top .links li,
#header .top .links li a{
    font-family: 'Schabo';
    font-size: 1.375rem;
    line-height: 1.625rem;
    color: #fff;
    text-transform: uppercase;
    display: block;
}

#header .top .socialNetworks{
    display: flex;
    justify-content: end;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 12px;
    grid-column: 3/4;
}

#header .top .socialNetworks li a, 
#header .top .socialNetworks li a svg{
    display: block;
    height: auto;
    max-height: 20px;
    max-width: 20px;
}

@media (max-width: 1600px) {
    #header .top::after{
        width: calc(100% - 80px - 25px);
    }
}

@media (max-width: 1300px) {
    #header .top::after{
        width: 100%;
    }
}

@media (min-width: 993px) {
    #header .top .socialNetworks li a svg:hover path{
        fill: var(--goldMedium);
    }
    #header .top .links a:hover{
        color: var(--goldMedium);
    }
}

@media (max-width: 992px) {

}

/* -------------------------- FIN TOP -------------------------- */

/* -------------------------- DÉBUT BOTTOM -------------------------- */

#header .bottom{
    position: relative;
}

#header .bottom .menu{
    display: flex;
    justify-content: center;
}

#header .bottom .menu > li{
    position: relative;
}

#header .bottom .menu > li.mobile{
    display: none;
}

#header .bottom .menu > li > a{
    color: #fff;
    font-size: 1.125rem;
    line-height: 1.625rem;
    text-transform: uppercase;
    padding-inline: 30px;
    padding-bottom: 30px;
    display: flex;
    align-items: center;
    gap: 8px;
    font-family: "Field_Gothic_No_54_Demi_Compact";
}

.menu > li.menu-item-has-children > a,
.menu > li > .sub-menu > li.menu-item-has-children > a{
    pointer-events: none;
}

#header .bottom .menu > li.menu-item-has-children > a::after{
    content: "";
    height: 5px;
    width: 8px;
    display: block;
    transition: 300ms ease;
    transform: rotate(0deg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='7.156' height='4.14' viewBox='0 0 7.156 4.14'%3E%3Cpath id='Icon_ion-ios-arrow-down' data-name='Icon ion-ios-arrow-down' d='M9.767,14.139l2.706-2.74a.505.505,0,0,1,.722,0,.526.526,0,0,1,0,.733l-3.066,3.1a.506.506,0,0,1-.705.015L6.337,12.134a.525.525,0,0,1,0-.733.505.505,0,0,1,.722,0Z' transform='translate(-6.188 -11.246)' fill='%23fafbfa'/%3E%3C/svg%3E%0A");
}

#header .bottom .menu > li > .sub-menu{
    position: absolute;
    left: 30px;
    bottom: 4px;
    transform: translateY(100%);
    background-color: var(--purpleLight);
    padding: 20px;
    border-radius: 4px 4px 10px 10px;
    border-top: solid 4px var(--goldMedium);
    flex-direction: column;
    gap: 20px;
    display: none;
    z-index: 1;
}

#header .bottom .menu > li > .sub-menu > li,
#header .bottom .menu > li > .sub-menu > li > a,
#header .bottom .menu > li > .sub-menu > li > .sub-menu > li,
#header .bottom .menu > li > .sub-menu > li > .sub-menu > li > a{
    color: #fff;
    font-size: 1.375rem;
    line-height: 1.625rem;
    display: block;
    white-space: nowrap;
    font-family: "Field_Gothic_No_44_Demi_Cond";
}


#header .bottom .btnSearch{
    width: fit-content;
    position: absolute;
    right: 0;
    top: 0;
    cursor: pointer;
}

#header .bottom .btnSearch svg{
    width: 20px;
    aspect-ratio: 1;
    height: auto;
}

#header .bottom .menu > li > .sub-menu > li > .sub-menu{
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding-left: 30px;
    padding-top: 10px;
}

@media (max-width: 1600px) {
    #header .bottom .menu > li > a{
        font-size: .9375rem;
        line-height: 1.125rem;
        padding-inline: 20px;
    }
    #header .bottom .menu > li > .sub-menu{
        left: 20px;
    }
}

@media (max-width: 1400px) {
    #header > .container{
        padding-inline: 20px;
    }
    #header .logo{
        left: 30px;
    }
}

@media (min-width: 993px) {
    #header .bottom .menu > li:hover > a,
    #header .bottom .menu > li > .sub-menu > li:not(.menu-item-has-children):hover > a,
    #header .bottom .menu > li > .sub-menu > li > .sub-menu > li > a:hover{
        color: var(--goldMedium);
    }
    #header .bottom .menu > li:hover > .sub-menu{
        display: flex;
    }
    #header .bottom .menu > li.menu-item-has-children:hover > a::after{
        transition: transform 300ms ease;
        transform: rotate(180deg);
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='7.075' height='4.045' viewBox='0 0 7.075 4.045'%3E%3Cpath id='Icon_ion-ios-arrow-down' data-name='Icon ion-ios-arrow-down' d='M9.726,14.072,12.4,11.395a.5.5,0,0,1,.714,0,.51.51,0,0,1,0,.716l-3.031,3.033a.5.5,0,0,1-.7.015L6.335,12.113a.506.506,0,1,1,.714-.716Z' transform='translate(-6.188 -11.246)' fill='%23e1b77f'/%3E%3C/svg%3E%0A");
    }
}

@media (max-width: 1200px) {
    #header .bottom{
        display: grid;
        grid-template-columns: 1fr auto 1fr;
        gap: 30px;
        align-items: center;
        position: initial;
    }
    #header .bottom > .menu{
        background-color: var(--purpleDark);
        display: flex;
        position: absolute;
        top: 98px;
        left: 0;
        width: 100vw;
        min-height: calc(100vh - 98px);
        z-index: 2;
        padding-inline: 20px;
        transform: translateX(-100%);
    }
    body.menuOpen  #header .bottom > .menu{
        transform: translateX(0%);
    }
    #header .bottom .menu{
        flex-direction: column;
        justify-content: start;
    }
    #header .logo{
        position: initial;
        left: 0;
        top: 0;
        grid-column: 2/3;
    }
    #header .logo, 
    #header .logo img{
        width: 65px;
        max-width: 65px;
    }
    #header .bottom .btnSearch{
        position: initial;
        grid-column: 3/4;
        margin-left: auto;
    }
    #header .bottom .burger{
        grid-column: 1/2;
        display: flex;
        flex-direction: column;
        gap: 10px;
        height: fit-content;
        width: fit-content;
        cursor: pointer;
    }
    #header .bottom .burger .barre{
        background-color: #fff;
        height: 3px;
        width: 40px;
        transition: 300ms ease;
        opacity: 1;
        transform: translate(0px, 0px) rotate(0deg);
    }
    body.menuOpen #header .bottom .burger .barre2{
        transition: 300ms ease;
        opacity: 0;
    }
    body.menuOpen #header .bottom .burger .barre1{
        transition: 300ms ease;
        transform: translate(0px, 13px) rotate(45deg);
    }
    body.menuOpen #header .bottom .burger .barre3{
        transition: 300ms ease;
        transform: translate(0px, -13px) rotate(-45deg);
    }
    #header .bottom .menu > li > a{
        font-size: 1.3125rem;
        line-height: 1.375rem;
        padding-inline: 0px;
        padding-block: 12px;
        justify-content: space-between;
    }
    #header .bottom .menu > li.menu-item-has-children > a::after{
        height: 12px;
        width: 7px;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6.66' height='11.648' viewBox='0 0 6.66 11.648'%3E%3Cpath id='Icon_ion-ios-arrow-down' data-name='Icon ion-ios-arrow-down' d='M5.826,4.652,10.23.244a.829.829,0,0,1,1.176,0,.839.839,0,0,1,0,1.179L6.416,6.417a.831.831,0,0,1-1.148.024L.243,1.427A.833.833,0,0,1,1.418.248Z' transform='translate(0 11.648) rotate(-90)' fill='%23fafbfa'/%3E%3C/svg%3E%0A");
    }
    #header .bottom .menu > li.active > a{
        color: var(--goldMedium);
    }
    #header .bottom .menu > li.menu-item-has-children.active > a::after{
        transition: transform 300ms ease;
        transform: rotate(180deg);
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='7.156' height='4.14' viewBox='0 0 7.156 4.14'%3E%3Cpath id='Icon_ion-ios-arrow-down' data-name='Icon ion-ios-arrow-down' d='M9.767,14.139l2.706-2.74a.505.505,0,0,1,.722,0,.526.526,0,0,1,0,.733l-3.066,3.1a.506.506,0,0,1-.705.015L6.337,12.134a.525.525,0,0,1,0-.733.505.505,0,0,1,.722,0Z' transform='translate(-6.188 -11.246)' fill='%23f69908'/%3E%3C/svg%3E%0A");
    }
    #header .bottom .menu > li > .sub-menu{
        display: flex;
        flex-direction: column;
        gap: 0px;
        position: initial;
        background-color: var(--purpleDark);
        transform: translate(-100%, 0px);
        border-radius: 0px;
        border: none;
        padding: 15px 20px 0px 20px;
        width: 100vw;
        min-height: calc(100vh - 98px);
        position: absolute;
        top: 0px;
        left: 0px;
        transition: transform 300ms ease;
        overflow-y: scroll;
        padding-bottom: 200px;
    }
    #header .bottom .menu > li.open > .sub-menu{
        transform: translate(0%, 0px);
        transition: transform 300ms ease;
    }
    #header .bottom .menu > li > .sub-menu > li{
        font-size: 1.25rem;
        line-height: 1.5625rem;
        margin-top: 10px;
    }
    #header .bottom .menu > li > .sub-menu > li > .sub-menu{
        gap: 0px;
    }
    #header .bottom .menu > li{
        position: initial;
    }
    #header .bottom .menu > li > .sub-menu > li > .sub-menu > li > a,
    #header .bottom .menu > li > .sub-menu > li > a{
        font-size: 1.5625rem;
        line-height: 1.5625rem;
        padding-block: 10px;
    }
    #header .bottom .menu > li > .sub-menu > .retour{
        margin-bottom: 30px;
        font-size: 1.125rem;
        line-height: 1.25rem;
        color: #fff;
        display: flex;
        align-items: center;
        gap: 8px;
        text-transform: uppercase;
        font-family: "Field_Gothic_No_52_Reg_Compact";
    }
    #header .bottom .menu > li > .sub-menu > .retour::before{
        content: "";
        background-repeat: no-repeat;
        background-size: contain;
        background-position: center;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6.66' height='11.648' viewBox='0 0 6.66 11.648'%3E%3Cpath id='Icon_ion-ios-arrow-down' data-name='Icon ion-ios-arrow-down' d='M5.826,4.652,10.23.244a.829.829,0,0,1,1.176,0,.839.839,0,0,1,0,1.179L6.416,6.417a.831.831,0,0,1-1.148.024L.243,1.427A.833.833,0,0,1,1.418.248Z' transform='translate(6.66) rotate(90)' fill='%23fafbfa'/%3E%3C/svg%3E%0A");
        display: block;
        height: 12px;
        width: 7px;
    }
    #header .bottom .menu > li > .sub-menu > .titre{
        font-family: "Field_Gothic_No_54_Demi_Compact";
        font-size: 1.6875rem;
        line-height: 1.8125rem;
        text-transform: uppercase;
        color: #fff;
    }
    #header .bottom .menu > li > .sub-menu > li > a{
        display: block;
    }
    #header .bottom .menu > li.mobile{
        display: block;
    }
    #header .bottom .menu > li.mobile a{
        font-family: "Schabo";
        text-transform: uppercase;
        font-size: 1.5rem;
        line-height: 1.5rem;
    }
    #header .bottom .menu > li.mobile:has(+ .mobile){
        border-top: 1px solid var(--goldMedium) !important;
        padding-top: 15px;
        margin-top: 15px;
    }
    #header .bottom .menu > li.mobile + li.mobile{
        border: none !important;
        padding-top: 0px;
        margin-top: 0px;
    }
}

/* -------------------------- FIN BOTTOM -------------------------- */

/* -------------------------- DÉBUT MODALE RECHERCHE -------------------------- */

#wpSearchModal{
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100lvh;
    z-index: 999;
    background-color: #450e33c6;
    align-items: center;
    justify-content: center;
    padding: 10vh 20vw;
}

#wpSearchModal .container{
    position: relative;
    margin-top: -10%;
}

#wpSearchModal .title{
    font-family: 'Field_Gothic_No_55_Bold_Compact';
    font-size: 4.0625rem;
    line-height: 4.375rem;
    margin-bottom: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 30px;
    text-align: center;
    color: #fff;
    text-transform: uppercase;
}

#wpSearchModal .closeSearch{
    position: absolute;
    top: 0;
    right: 0;
    cursor: pointer;
}

#wpSearchModal form{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 40px;
}

#wpSearchModal form input{
    outline: none;
    background-color: #fff;
    border: solid 5px var(--goldMedium);
    padding: 35px 80px;
    border-radius: 20px;
    width: 100%;
    max-width: 1000px;
}

#wpSearchModal form input,
#wpSearchModal form input::placeholder{
    color: var(--purpleLight);
    font-size: 1.875rem;
    line-height: 2rem;
    font-family: "Field_Gothic_No_43_Med_Cond";
}

#wpSearchModal form button{
    background-color: var(--goldMedium);
    padding: 12px 30px;
    color: var(--purpleDark);
    font-size: 1.25rem;
    line-height: 1.75rem;
    text-transform: uppercase;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 22px;
    width: fit-content;
    border-radius: 10px;
    border: none;
    outline: none;
    font-weight: bold;
    cursor: pointer;
    font-weight: bold;
    font-family: "Field_Gothic_No_44_Demi_Cond";
    color: var(--purpleDark);
}

@media (max-width: 1700px) {
    #wpSearchModal{
        padding: 5vh 10vw;
    }
    #wpSearchModal .title{
        font-size: 3.125rem;
        line-height: 3.4375rem;
        margin-bottom: 30px;
    }
    #wpSearchModal form input{
        padding: 25px 50px;
        border-radius: 30px;
    }
    #wpSearchModal form input,
    #wpSearchModal form input::placeholder{
        font-size: 1.5625rem;
        line-height: 1.875rem;
    }
}

@media (max-width: 1200px) {
    #wpSearchModal{
        padding: 80px;
    }
    #wpSearchModal .container{
        padding-inline: 0px;
    }
    #wpSearchModal .title{
        font-size: 2.5rem;
        line-height: 2.8125rem;
        margin-bottom: 25px;
    }
    #wpSearchModal form input{
        padding: 18px 45px;
        border-width: 4px;
    }
    #wpSearchModal form input,
    #wpSearchModal form input::placeholder{
        font-size: 1.25rem;
        line-height: 1.5625rem;
    }
    #wpSearchModal .closeSearch{
        top: -50px;
    }
}

@media (min-width: 993px) {
    #wpSearchModal form button:hover{
        background-color: var(--purpleDark);
        color: #fff;
    }
    #wpSearchModal form button:hover svg path{
        fill: #fff;
    }
}

@media (max-width: 992px) {
    #wpSearchModal{
        padding-inline: 36px;
    }
    #wpSearchModal .closeSearch{
        top: 30px;
        right: 30px;
        position: fixed;
    }
}

@media (max-width: 700px) {
    #wpSearchModal{
        padding-inline: 20px;
    }
      #wpSearchModal .title{
        font-size: 1.875rem;
        line-height: 2.1875rem;
        margin-bottom: 20px;
    }
    #wpSearchModal form input{
        padding: 15px 40px;
        border-width: 3px;
    }
    #wpSearchModal form input,
    #wpSearchModal form input::placeholder{
        font-size: 1.125rem;
        line-height: 1.375rem;
    }
}

/* -------------------------- FIN MODALE RECHERCHE -------------------------- */
