/* ============================= HEADER ============================= */
/*.content-main{
    padding: 0vw 5vw 0vw 5vw;
    width : 100vw;
}*/

header {
    display: flex;
    width: 100%;
    position: fixed;
    transition: all .5s ease-in-out;
    z-index: 999;
}

header .content-web {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 3.1084vw 4.7619vw;
    background: transparent;
    width: 100%;
    transition: all .5s ease-in-out;
}
header.active .content-web {
    padding: 1.1084vw 4.7619vw;
    background: rgb(23 25 47 / 29%);
    backdrop-filter: blur(20px);
    transition: all .5s ease-in-out;
}
header .content-web .logo {
    transition: all .5s ease-in-out;
}
header .content-web .logo img {
    width: 7.14285vw;
    height: 4.5vw;
    /*object-fit: contain;*/
    transition: all .5s ease-in-out;
}
header .content-web .list-link {
    display: flex;
    align-items: center;
    justify-content: center;
    list-style: none;
    gap: 2.324vw;
    color: white;
    padding: 0.882vw 0.8597vw;
    border-radius: 45px;
    background: hwb(196 51% 43% / 0.10);
    border: 1px solid hsla(0, 0%, 100%, 0.37);
    backdrop-filter: blur(40px);
    margin: 0;
    transition: all .5s ease-in-out;
}



header .content-web .list-link li a {
    display: flex;
    font-family: var(--font-name);
    font-size: 15px;
    line-height: 2.3809vw;
    text-decoration: none;
    color: white;
    text-transform: uppercase;
    font-weight: 500;
    padding: 5px 1.5436vw;
    border-radius: 45px;
    width: 100%;
    transition: all .5s ease-in-out;
}
header .content-web .list-link li a.active,
header .content-web .list-link li a:hover {
    background:rgba(5, 35, 74, 1);
    backdrop-filter: blur(40px);
    transition: all .5s ease-in-out;
}

header .content-web .button-list {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 4.2936vw;
}
header .content-web .button-list span.icon-img {
    width: 2.645vw;
    height: 2.645vw;
    cursor: pointer;
}
header .content-web .button-list span.icon-img.trad {
    width: 3.645vw;
    height: 3.645vw;
    padding: .645vw;
    border-radius: 50%;
    background: hsla(0, 0%, 68%, 0.63);
    /* display: flex; */
    display: none;
    justify-content: center;
    align-items: center;
}

header .content-web .button-list span.icon-img img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

header .menu-nav {
    background: rgba(5, 35, 74, 0.81);
    backdrop-filter: blur(40px);
    display: none;
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    height: 100vh;
    flex-direction: column;
    gap: 6.4814vw;
    align-items: center;
    justify-content: center;

    transition: all .5s ease-in-out;
}
header .menu-nav.active {
    display: flex;
    transition: all .5s ease-in-out;
}
header .menu-nav li {
    list-style-type: none;   
    transition: all .5s ease-in-out; 
}
header .menu-nav li a {
    font-size: 20px;
    text-transform: uppercase;
    font-family: var(--font-name);
    font-weight: 500;
    color: white;
    text-decoration: none;
    transition: all .5s ease-in-out;
}
header .menu-nav li a:hover {
    /* text-decoration: underline; */
    transition: all .5s ease-in-out;
}
header .menu-nav .list-social {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4.629vw;
    transition: all .5s ease-in-out;
}
header .menu-nav .list-social a {
    text-decoration: none;
    width: 5.4894vw;
    height: 5.4894vw;
    transition: all .5s ease-in-out;

}
header .menu-nav .list-social a img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: all .5s ease-in-out;
}
header .menu-nav .list-social a:hover img {
    filter: invert(10) contrast(24);
    transition: all .5s ease-in-out;
}

header .menu-nav .close-menu {
    position: absolute;
    top: 5.2910vw;
    right: 5.2910vw;
    width: 4.2910vw;
    height: 4.2910vw;
    transition: all .5s ease-in-out;
}
header .menu-nav .close-menu img {
    cursor: pointer;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: all .5s ease-in-out;
}
header .menu-nav .mobile {
    display: none;
}

/* Conteneur principal du widget Linguise */
#linguise_floating_wrapper {
    position: fixed;
    top: 0px;
    right: 70px;
    z-index: 9999;
    background-color: rgba(0, 0, 0, 0.5);
    padding: 0px;
    border-radius: 8px;
}

#linguise_floating_wrapper div a span.linguise_flags.linguise_flag_fr.linguise_language_icon {
    width: 30px;    /* Ajuste la taille de l'icône */
    height: 20px;   /* Ajuste la hauteur selon tes besoins */
    border-radius: 5px;
    transition: transform 0.3s ease;
}

/* Au survol (hover) pour agrandir légèrement */
#linguise_floating_wrapper div a span.linguise_flags.linguise_flag_fr.linguise_language_icon:hover {
    transform: scale(1.1); /* Agrandir l'icône au survol */
}

/* Personnaliser le lien contenant l'icône */
#linguise_floating_wrapper div a {
    padding: 5px 7px;
    display: flex;
    transition: background-color 0.3sease;
    border-radius: 5px;
}
.linguise_switcher {
    display: flex;
    top: 2vw !important;
    right: 3vw !important;
    z-index: 99999;
}

/* Au survol du lien */
#linguise_floating_wrapper div a:hover {
    background-color: rgba(0, 0, 0, 0.3);  /* Changer la couleur de fond lors du survol */
}

#linguise_floating_wrapper div a span.linguise_lang_name.mr-10{
    font-size: 13px;
}

.linguise_switcher span.linguise_language_icon+.linguise_lang_name {
    margin-left: 10px;
    word-break: keep-all;
    overflow-wrap: normal;
    font-size: 14px !important;
}

#linguise_floating_wrapper div a span.linguise_lang_name.popup_linguise_lang_name{
    color: white !important;
}

#alert-success-fill{
    font-size: 14px;
}

#alert-fail-fill{
    font-size: 14px;
}





/* ============================= STYLE FOR THE FLOATING ACTION BUTTON ============================= */

.floating-button-action {
    position: fixed;
    bottom: 2vw;
    right: 4vw;
    z-index: 100;
    border-radius: 50%;
    box-shadow: inset 0px -4px 4px #9696965c, 0px -3px 11px #96969642;
    /* box-shadow: inset 0px -4px 4px #969696, 0px -3px 11px #969696; */
    cursor: pointer;
    animation: showButton 2s linear;
    transition: all .5s ease-in-out;
}
.floating-button-action a {
    width: 5vw;
    height: 5vw;
    display: block;
    padding: .51vw;
}
.floating-button-action a img {
    /* color: var(--success-color-alt);
    font-size: 2vw; */
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: all .5s ease-in-out;
}
@keyframes showButton {
    0% {
        opacity: 0;
        transform: translateY(-50%);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ============================= FOOTER ============================= */

footer {
    /* padding: 4.365vw 4.828vw; */
    padding: 0;
    display: flex;
    margin-top: 3vw;
    flex-direction: column;
    gap: 2.8439vw;
    transition: all .5s ease-in-out;
    background: var(--primary-color);
}


footer .englober_footer{
    padding: 30px 120px 15px 120px;
}

footer .content-top {
    display: flex;
    /* justify-content: normal; */
    width: 100%;
    /* padding: 2vw 4.828vw 0vw 4.828vw; */
    color: white;
    height: auto;
    align-items: flex-start;
    justify-content: center;
}

footer .content-top .content-left {
    display: flex;
    flex-direction: column;
    gap: 15px;
    width: auto;
    transition: all .5sease-in-out;
    margin-right: 80px;
}
/*footer .content-top .content-left .img-relative {

    /* filter: brightness(34);
    filter: brightness(0) invert(12%) sepia(34%) saturate(2636%) hue-rotate(187deg) brightness(96%);*/
    /*
}*/
footer .content-top .content-left .img-relative img {
    width: 100px;
    /*object-fit: cover;*/
    transition: all .5s ease-in-out;
}
footer .content-top .content-left .description {
    font-family: var(--font-name);
    font-size: 15px;
    line-height: 1.9841vw;
    font-weight: 300;
    margin-bottom: 0;
    transition: all .5s ease-in-out;
}
footer .content-top .content-left .list-social {
    display: flex;
    gap: 0.992vw;
}
footer .content-top .content-left .list-social a {
    text-decoration: none;
    width: 2.645vw;
    height: 2.645vw;
    transition: all .5s ease-in-out;
}
footer .content-top .content-left .list-social a img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: all .5s ease-in-out;
    /*color: white;*/
    filter: invert(10) contrast(24);
    transition: all .5s ease-in-out;
}

footer .content-top .content-right {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 50vw;
    gap: 3vw;
    transition: all .5s ease-in-out;
}
footer .content-top .content-right .top ,
footer .content-top .content-right form {
    display: flex;
    flex-direction: column;
    gap: .5vw;
}
footer .content-top .content-right .top h4,
footer .content-top .content-right form h4 {
    font-family: var(--font-name);
    font-size: 20px;
    font-weight: 600;
    color:white;
    text-transform: uppercase;
    transition: all .5s ease-in-out;
}
footer .content-top .content-right .top .list-link {
    display: flex;
    flex-direction: row;
    gap: 0.75vw 2vw;
    transition: all .5s ease-in-out;
}

footer .content-top .content-right .top .list-link .list-link_child{
    display: flex;
    flex-direction: column;
    color:white;
}

footer .content-top .content-right .top .list-link a {
    color:white;
    font-size: 15px;
    font-weight: 400;
    line-height: 3vw;
    transition: all .5s ease-in-out;
    text-decoration: none;
}
footer .content-top .content-right .top .list-link a:hover {
    color: #0080ff;
    transition: all .5s ease-in-out;
}
footer .content-top .content-right form .form-row {
    display: flex;
    gap: 1.6534vw;
    align-items: center;
    width: 100%;
    transition: all .5s ease-in-out;
}
footer .content-top .content-right form .form-row input {
    border: 1px solid #7996BC;
    outline: none;
    border-radius: 45px;
    padding: 0.9259vw 1.6534vw;
    font-size: 15px;
    font-weight: 500;
    font-family: var(--font-name);
    width: 100%;
    transition: all .5s ease-in-out;
}
footer .content-top .content-right form .form-row button {
    border: 1px solid #7996BC;
    border-radius: 45px;
    outline: none;
    padding: 0.859vw 2.1243vw;
    background: #FFFFFF;
    font-size: 18px;
    font-weight: bold;
    font-family: var(--font-name);
    text-transform: uppercase;
    transition: all .5s ease-in-out;
}
footer .content-top .content-right form .form-row button:hover {
    background: var(--primary-color);
    color: white;
    transition: all .5s ease-in-out;
}

footer .content-bottom {
    background: var(--primary-color);
    color: white;
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 6.5476vw;
    padding: 0;
    /* padding: 1.98412vw 4.828vw; */

    font-family: var(--font-name);
    font-size: 1.6534vw;
    font-weight: 300;
}
footer .content-bottom span ,
footer .content-bottom a {
    font-size: 15px;
}



/*===================== RESPONSIVE OF HEADER__WEBSITE ===========================*/

@media (max-width:1000px) {

    footer .englober_footer{
        padding: 30px 100px 15px 100px;
    }
}

@media (max-width:900px) {
    
header .content-web .list-link li a {
    font-size: 13px;
}

#linguise_popup_container.show_linguise_popup_container #linguise_popup {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1.8) !important;
    opacity: 1;
    transition: transform 0.3s ease, opacity 0.3s ease; /* Ajoute une transition douce */
}

footer .englober_footer{
    padding: 30px 90px 15px 90px;
}

footer .content-top .content-left .description {
    font-size: 13px;
    line-height: 25px;
}

footer .content-top .content-right .top h4,
footer .content-top .content-right form h4 {
    font-size: 18px;
}

footer .content-top .content-right {
    gap : 30px;
}


footer .content-top .content-right .top .list-link a {
    font-size: 13px;
    font-weight: 300;
    line-height: 30px;
}

footer .content-top .content-right form .form-row input {
    font-size: 13px;
}


footer .content-top .content-right form .form-row button {
    font-size: 15px;
}

footer .content-bottom span ,
footer .content-bottom a {
    font-size: 13px;
}


}

@media (max-width:768px) {

    /*  */
    #linguise_floating_wrapper {
        top: 12px;
        right: 64px;
        padding: 0px;
    }

    /* Adapter la taille des icônes */
    #linguise_floating_wrapper > div > a > span.linguise_flags.linguise_flag_fr.linguise_language_icon {
        width: 25px;   /* Réduire la taille de l'icône sur mobile */
        height: 15px;
    }

    header .content-web .logo img{
        padding: 10px;
    }

    header .content-web .logo img{
        width: 100px;
        height: 65px;
    }

    header .menu-nav .close-menu {
        position: absolute;
        top: 8.291vw;
        right: 5.2910vw;
        width: 50px;
        height: 50px;
    }
    header .content-web .list-link {
        display: none;
    }    
    header .content-web .button-list span.icon-img {
        width: 50px;
        height: 50px;
    }
    header .menu-nav .mobile {
        display: flex;
        flex-direction: column;
        gap: 3vw;
        align-items: center;
    }
    header .menu-nav .list-social {
        gap: 7.629vw;
    }
    header .menu-nav .list-social a {
        text-decoration: none;
        width: 10.4894vw;
        height: 10.4894vw;
        filter: invert(10) contrast(24);
    }



    /*  */
    
    footer .content-top {
        flex-direction: column;
        gap: 15px;
    }
    footer .content-top .content-left {
        flex-direction: column;
        gap: 3vw;
        width: 100%;
    }
    footer .content-top .content-left .img-relative {
        width: 18.542vw;
        height: 10.3253vw;
    }
    footer .content-top .content-left .description {
        font-size: 15px;
        line-height: 30px;
        font-weight: 300;
    }
    footer .content-top .content-left .list-social {
        gap: 1.992vw;
    }
    footer .content-top .content-left .list-social a {
        width: 48px;
        height: 48px;
    }
    footer .content-top .content-right {
        width: 100%;
        gap : 30px;
    }
    footer .content-top .content-right .top, footer .content-top .content-right form {
        flex-direction: column;
        gap: 1.5vw;
    }
    footer .content-top .content-right .top h4, footer .content-top .content-right form h4 {
        font-family: var(--font-name);
        font-size: 18px;
    }
    footer .content-top .content-right .top .list-link {
        display: flex;
        flex-direction: column;
        gap: 0vw;
    }
    footer .content-top .content-right .top .list-link a {
        color: white;
        font-size: 15px;
        font-weight: 300;
        line-height: 35px;
    }
    footer .content-top .content-right form .form-row input {
        padding: 1.9259vw 3.6534vw;
        font-size: 15px;
    }
    footer .content-top .content-right form .form-row button {
        padding: 1.859vw 4.1243vw;
        font-size: 18px;
    }
    footer .content-bottom {
        height: auto;
        padding: 3.98412vw 0vw;
        font-size: 15px;
        flex-direction: column;
        align-items: flex-start;
        gap: 3vw;
    }
    footer .content-bottom span, footer .content-bottom a {
        font-size: 15px;
    }

    /*  */

    .floating-button-action a {
        width: 13vw;
        height: 13vw;
        padding: 1.51vw;
    }

    #alert-success-fill-session-recurrent,
    #alert-success-fill-session-recurrent span {
        font-size: 16px !important;
        z-index: 1000;
    }


}

@media (max-width:650px) {

    #linguise_popup_container.show_linguise_popup_container #linguise_popup {
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1.2) !important;
        opacity: 1;
    }

}

@media (max-width:500px) {

    header.active .content-web {
        padding: 5px 15px;
        background: rgb(23 25 47 / 29%);
        backdrop-filter: blur(20px);
        transition: all .5sease-in-out;
    }

    header .content-web .logo img {
        width: 105px;
        height: 70px;
        object-fit: contain;
    }

    footer .englober_footer{
        padding: 15px 16px 10px 16px;
    }

    footer .content-top {
        flex-direction: column;
        gap: 50px;
        padding-left: 27px;
        padding-right: 27px;
        padding-top: 20px;
    }

    footer .content-top .content-left .img-relative a {
        display: flex;
    }

    footer .content-top .content-left .img-relative {
        width: 80px !important;
        height: 45px !important;
    }
    footer .content-top .content-left .img-relative img {
        width: 100%;
        height: 100%;
        /* object-fit: cover; */
        transition: all .5sease-in-out;
    }

    footer .content-top .content-left .list-social a {
        width: 40px;
        height: 40px;
    }

    footer .content-top .content-right form .form-row {
        display: flex;
        gap: 1.6534vw;
        align-items: center;
        width: 100%;
        transition: all .5sease-in-out;
        flex-direction: column;
    }

    footer .content-bottom {
        height: auto;
        padding: 15px 0px;
        font-size: 15px;
        flex-direction: column;
        align-items: flex-start;
        gap: 3vw;
    }

    #alert-success-fill-session-recurrent,
    #alert-success-fill-session-recurrent span {
        font-size: 16px !important;
        z-index: 1000;
    }

    #linguise_popup_container #linguise_popup li .linguise_lang_name {
        vertical-align: middle;
        cursor: pointer;
        font-size: 17px !important;
    }

    #linguise_popup_container.show_linguise_popup_container #linguise_popup {
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1) !important;
        opacity: 1;
    }

}    

@media (max-width:350px) {

    #alert-success-fill-session-recurrent,
    #alert-success-fill-session-recurrent span {
        font-size: 16px !important;
        z-index: 1000;
    }

}