:root {
    --noir: #262626;
    --orange: #EF7D00;
    --rouge_bordeau: #902539;
    --marron_clair: #c3a366;
    --vert-drapeau: #3FA535;
    --vert: #0f7705;
    --vert-fonce:#143c3b;
    --blanc: #FFF;
}


body{
    margin: 0;
    padding: 0;
    font-family: Arial, Helvetica, sans-serif;
    background: linear-gradient(45deg, #143c3b, rgba(221, 255, 221, 0.9), #c3a366);
}
#navBar.container-fluid{
    position: relative;
    margin: 0 !important;
    padding: 0 !important;
    z-index: 150;
    transition: all 0.3s ease-in;
}
#navBar.container-fluid > .row{
    margin: 0 !important;
    padding: 0 !important;
}

#navBar.container-fluid .wrapper{
    position: relative;
    width: 1480px;
    margin: auto;
}

#navBar.container-fluid .head{
    position: relative;
    width: 100%;
    background-color: var(--marron_clair);
    padding-top: 5px !important;
    padding-bottom: 5px !important;
    transition: all 0.3s ease-in;
    opacity: 1;
}

#navBar.container-fluid .head .items{
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
#navBar.container-fluid .head .items .infos{
    position: relative;
    padding: 10px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 20px;
    font-weight: 600;
    color: var(--blanc);
}
#navBar.container-fluid .head .items .infos span.icon{
    position: relative;
    display: inline-block;
    margin-left: -20px;
    margin-right: 15px;
}
#navBar.container-fluid .head .items span.icon img{
    position: relative;
    width: 50px;
}

#navBar.container-fluid .head .items .reseaux{
    position: relative;
    display: flex;
    justify-content: flex-end;
    align-items: center;
}
#navBar.container-fluid .head .items .reseaux a{
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 30px;
    height: 30px;
    background-color: rgb(24, 24, 24);
    border-radius: 5px;
    color: #fff;
    margin-left: 8px;
    font-size: 16px;
}




#navBar.container-fluid .logo{
    position: relative;
    width: 100%;
    background-color: var(--blanc);
    transition: all 0.3s ease-in;
    opacity: 1;
}
#navBar.container-fluid .logo .items{
    position: relative;
    width: 100%;

    display: flex;
    justify-content: space-between;
    align-items: center;
    /* border: 1px solid red; */
    padding: 8px 0 !important;
}
#navBar.container-fluid .logo .items .logo1 a{
    position: relative;
    display: flex;
    justify-content: flex-start;
}
#navBar.container-fluid .logo .items .logo2 a{
    position: relative;
    display: flex;
    justify-content: flex-end;
}

/**** tailles des logos **/
#navBar.container-fluid .logo .items .logo1 a img{
    position: relative;
    width: 170px !important;
}
#navBar.container-fluid .logo .items .logo2 a img{
    position: relative;
    width: 210px;
}
#navBar.container-fluid .logo .items .logo3 a img{
    position: relative;
    width: 110px;
}
#navBar.container-fluid .logo .items .logo4 img{
    position: relative;
    width: 180px;
}



#navBar.container-fluid .logo .items .texte{
    position: relative;
    /*width: 550px;*/
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
}
#navBar.container-fluid .logo .items .texte h1{
    position: relative;
    width: 100%;
    font-size: 28px;
    text-transform: uppercase;
    font-weight: 650;
    color: var(--noir);
    text-align: center;
}
#navBar.container-fluid .logo .items .texte p{
    position: relative;
    width: 100%;
    font-size: 13px;
    font-weight: 500;
    margin-top: 15px;
    font-style: italic;
    color: rgb(46, 46, 46);
    text-align: center;
}





#navBar.container-fluid .navigation{
    position: relative;
    width: 100%;
    background-color: var(--vert-fonce);
}
#navBar.container-fluid .navigation .menu{
    position: relative;
    width: 100%;
    padding: 25px 0 !important;
}

#navBar.container-fluid .navigation .sidebar_btns { /**   Sidebar icon **/
    position: relative;
    display: none;
}

#navBar.container-fluid .navigation .menu ul{
    display: inline-flex;
    position: relative;
    width: 100%;
    
    margin: 0;
    padding: 0;
}
#navBar.container-fluid .navigation .menu ul li{
    list-style: none;
}
#navBar.container-fluid .navigation .menu ul li a{
    color: #fff;
    text-decoration: none;
    font-size: 17px;
    font-weight: 550;
    padding: 0px 14px !important;
    display: block;
    text-transform: uppercase;
    transition: all 0.3s ease;
    border-right: 1px solid var(--blanc);
}
#navBar.container-fluid .navigation .menu ul li a span.home{
    position: relative;
    display: inline-block;
    margin-left: -10px;
    margin-top: -10px;
    font-size: 25px;
}
#navBar.container-fluid .navigation .menu ul li a:hover{
    color: #fff;
}
#navBar.container-fluid .navigation .menu ul > li:hover > a{
    color: var(--marron_clair);
}

#navBar.container-fluid .navigation .menu .toggle{
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;

    display: flex;
    justify-content: flex-end;
    align-items: center;
    
}
#navBar.container-fluid .navigation .menu .toggle .icon{
    position: absolute;
    right: 0;
    top: 0px;
    bottom: 0px;
    width: 150px;
    cursor: pointer;
    transition: all 0.3s ease;
    color: #fff;

    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 30px;
    background-color: var(--rouge_bordeau);
    border: 1px solid var(--rouge_bordeau);
}
#navBar.container-fluid .navigation .menu .toggle .icon a{
    position: relative;
    width: 100%;
    text-align: center;
    font-size: 18px;
    color: var(--blanc);
    font-weight: 550;
}
#navBar.container-fluid .navigation .menu .toggle .icon:hover{
    background-color: var(--orange);
    border: 1px solid var(--orange);
}

#navBar.container-fluid .navigation .menu ul .drop-menu{ /** drop-menu**/
    background-color: #ffffff;
    width: auto;
    position: absolute;
    top: 45px;
    width: 270px;
    line-height: 45px;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
    padding-top: 0px;
    z-index: 100;

    display: flex;
    flex-direction: column;
}
#navBar.container-fluid .navigation .menu ul .drop-menu li a{
    display: block;
    width: 100%;
    font-weight: 500;
    color: rgb(65, 65, 65);
    font-size: 13px;
    border-top: 1px solid rgba(230, 230, 230, 0.5);
    transition: ease all 0.3s;
    cursor: pointer;
    text-transform: capitalize;
}
#navBar.container-fluid .navigation .menu ul .drop-menu li a:hover{
    background-color:  green;
    color: #fff;
}
#navBar.container-fluid .navigation .menu ul .drop-menu li a:nth-child(1){
    border-top: 1px solid rgba(194, 212, 224, 0.2);
}
#navBar.container-fluid .navigation .menu ul li:hover .drop-menu{
    top: 40;
    opacity: 1;
    visibility: visible;
}
#navBar.container-fluid .navigation .menu ul .drop-menu li a span{
    display: inline-block;
    margin-right: 6px;
    font-size: 20px;
    transition: ease all 0.3s;
}




#navBar.container-fluid .navigation .menu ul .drop-menu .second-drop-menu{ /** drop-menu**/
    background-color: #74c37f;
    position:static;
    top: 10px;
    left: 250px;
    width: 270px;
    line-height: 40px;
    height: 0;
    overflow: hidden;
    opacity: 0;
    visibility: hidden;
    transition: all 0.6s ease;
    padding-top: 0px;
    z-index: 99;

    display: none;
    flex-direction: column;
}
#navBar.container-fluid .navigation .menu ul .drop-menu .second-drop-menu li a{
    display: block;
    width: 100%;
    padding: 15px;
    padding-left: 30px !important;
    font-weight: 500;
    color: rgb(65, 65, 65);
    font-size: 16px;
    border-top: 1px solid rgba(230, 230, 230, 0.5);
    transition: ease all 0.3s;
}
#navBar.container-fluid .navigation .menu ul .drop-menu .second-drop-menu li a:hover{
    background-color:  var(--orange);
    color: #fff;
}
#navBar.container-fluid .navigation .menu ul .drop-menu .second-drop-menu li a:nth-child(1){
    border-top: 1px solid rgba(194, 212, 224, 0.2);
}
#navBar.container-fluid .navigation .menu ul .drop-menu li.active .second-drop-menu{
    left: 250px;
    opacity: 1;
    display: flex;
    visibility: visible;
    height: auto;
}

#navBar.container-fluid .navigation .menu ul .drop-menu li.active > a{
    background-color:  green;
    color: #fff;
}
#navBar.container-fluid .navigation .menu ul .drop-menu li.active > a span{
    transform: rotate(2deg);
}






/******************************   Sidebar      ***********************************/
.sidebar{
    position: fixed;
    visibility: hidden;
    top: 0;
    left: -600px;
    background-color: var(--vert-fonce);
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: .2s;
    z-index: 152 !important;
    font-family: Nunito, Geneva, Tahoma, sans-serif, Roboto, sans-serif;
    /* overflow: scroll; */
    overflow-x: hidden;
    padding: 0px;
}

.sidebar.active{  /* Au clic **/
    left: 0;
    visibility: visible;
    opacity: 1;
}



.sidebar .btns{
    position: relative;
    display: flex;
}
.sidebar .btns a{
    position: relative;
    display: flex;
    margin-left: 10px;
    padding: 8px 40px;
    border-radius: 20px;
    text-decoration: none;
    font-size: 16px;
    font-weight: 600;
    color: var(--noir);
    border: 1px solid var(--noir);
    transition: all 0.2s ease-in;
    margin-top: 0px;
}
.sidebar.active .btns{
    animation: animLinks 1s;
}


.sidebar .content{
    position: relative;
    display: flex;
    /* border: 1px solid green; */
}

.sidebar .content .logo{
    position: relative;
    width: 100%;
    height: 200px;
    background-color: var(--blanc);
    padding: 10px;

    display: flex;
    justify-content: flex-start;
    align-items: center;
    overflow: hidden;
}
.sidebar .content .logo img{
    position: relative;
    width: 200px !important;
}


.sidebar .links{
    position: relative;
    width: 100%;
    height: auto;
    z-index: 100;
    margin-bottom: 25px;
}

.sidebar .links .menu{
    position: relative;
    width: 100%;
    margin: 0;
    padding: 0;
    list-style: none;
}

.sidebar .links .menu > li{
    border-bottom: 1px solid rgba(214, 211, 211, 0.2);
    margin-bottom: 10px;
}


.sidebar .links .menu li > a{
    position: relative;
    color: var(--blanc);
    text-decoration: none;
    display: block;
    width: 100%;
    padding-left: 15px;
    font-weight: 550;
    transition: 0.3s ease-in all;
    cursor: pointer;
    line-height: 40px;
    font-size: 18px;
}
.sidebar .links .menu li > a:hover{
    color: var(--rouge);
}
.sidebar .links .menu li a span{
    position: absolute;
    right: 20px;
    transform: translate(-50%);
    font-size: 16px;
    transition: transform 0.3s;
}
.sidebar .links .menu .submenu-show{
    background-color: var(--marron_clair);
}
.sidebar .links .menu .submenu-show span{
    transform:  rotate(-180deg) !important;
}



.sidebar .links .menu .submenu{
    position: static;
    display: none;
}
.sidebar .links .menu .submenu-show .submenu{
    display: block;
    background-color: rgb(245, 245, 245);
    margin: 0px;
    padding: 0px;
}

.sidebar .links .menu .submenu li{
    border-bottom: none;
    list-style: none;
    position: relative;
    padding-top: 5px;
    padding-bottom: 5px;
    padding-left: 12px;
    width: 100%;
    display: flex;
    justify-content: flex-start;
    border-bottom: 1px solid rgba(197, 111, 13, 0.3);
    flex-wrap: wrap;
}
.sidebar .links .menu .submenu li a:hover{
    background-color: rgba(247, 192, 128, 0.2);
}

.sidebar .links .menu .submenu li a{
    display: inline-block !important;
    width: 100% !important;
    font-size: 17px;
    transition: 0.2s ease-in all !important;
    color: #333333 !important;
    line-height: 25px;
    text-transform: capitalize;
    font-weight: 450;
}
.sidebar .links .menu .submenu li a:hover{
    color: var(--rouge) !important;
}

.screen{
    position: fixed;
    display: none;
    top: 0;
    right: 0;
    width: 40px;
    height: 40px;
    opacity: 0;
    z-index: 153;
    transition: ease-in all 0.3s;

    display: flex;
    justify-content: center;
    align-items: center;
}
.screen.active{
    display: flex;
    opacity: 1;
}
.screen .screenBtn{
    position: relative;
    background-color: var(--marron_clair);
    width: 50px;
    height: 50px;

    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
}
.screen .screenBtn img{
    position: relative;
    width: 15px;
}






/** *****************************Scroll fixed navbar *******************************/
/* 
#navBar.container-fluid .navigation{
    position: relative;
    width: 100%;
    background-color: var(--vert-fonce);
} */

#navBar.fixed {
    position: fixed;
    width: 100%;
    padding: top;
    background-color: rgb(255, 255, 255);
    box-shadow: 0 10px 30px rgba(190, 190, 190, 0.1);
    z-index: 150 !important;
}

#navBar.fixed .logo,
#navBar.fixed .head{
    display: none;
    opacity: 0;
}




.searchForm{
    position: absolute;
    bottom: -75px;
    width: 100%;
    z-index: 1000;
    background-color: var(--orange);
    padding: 15px;
    transition: ease-in 0.3s all;
    z-index: 99;

    display: none;
}
.searchForm.active{
    display: block;
    animation: searchBarAnim ease-in-out .3s;
}
@keyframes searchBarAnim {
    0% {
        opacity: .5;
        bottom: -55px;
        z-index: 0;
    
    }
    100% {
        opacity: 1;
        bottom: -75px;
    }
    100% {
        opacity: 1;
        z-index: 99;
    }
}
.searchForm .search {
    width: 100%;
    position: relative;
    display: flex;
}

.searchForm .searchTerm {
    width: 100%;
    border: 3px solid var(--blanc);
    border-right: none;
    padding: 10px;
    height: 45px;
    border-radius: 5px 0 0 5px;
    outline: none;
    color: #9DBFAF;
}

.searchForm .searchTerm:focus{
    color: var(--noir);
}

.searchForm .searchButton {
    width: auto;
    padding-right: 25px;
    padding-left: 25px;
    height: 45px;
    border: 1px solid var(--noir);
    background: var(--noir);
    text-align: center;
    color: #fff;
    border-radius: 0 5px 5px 0;
    cursor: pointer;
    font-size: 18px;
    display: flex;
    justify-content: center;
    align-items: center;
}













/*** **** **** ******** *** *** **** *** *** *** ****       La partie responsive        ***/
@media (max-width: 1680px) {

}
@media (max-width: 1550px) {

    #navBar.container-fluid .wrapper{
        position: relative;
        width: 1350px;
    }

    #navBar.container-fluid .navigation .menu ul li a{
        font-size: 14px;
        font-weight: 550;
        padding: 0px 10px !important;
    }
}
@media (max-width: 1480px) {

    #navBar.container-fluid .wrapper{
        position: relative;
        width: 1150px;
    }
    #navBar.container-fluid .head .items .infos{
        position: relative;
        padding: 10px;
        font-size: 18px;
    }
    #navBar.container-fluid .head .items span.icon img{
        position: relative;
        width: 35px;
    }
    #navBar.container-fluid .navigation .menu ul li a{
        font-size: 14px;
        font-weight: 550;
        padding: 0px 10px !important;
    }

}

@media (max-width: 1350px) {

    #navBar.container-fluid .logo .items .texte h1{
        font-size: 22px;
        font-weight: 650;
    }
}
@media (max-width: 1250px) {
    #navBar.container-fluid .wrapper{
        position: relative;
        width: 100%;
    }
    #navBar.container-fluid .head{
        padding-left: 25px !important;
        padding-right: 25px !important;
    }

    #navBar.container-fluid .logo{
        position: relative;
        width: 100%;
        background-color: var(--blanc);
        transition: all 0.3s ease-in;
        opacity: 1;
    }
    #navBar.container-fluid .logo .items{
        position: relative;
        width: 100%;
    
        display: flex;
        justify-content: space-between;
        align-items: center;
        /* border: 1px solid red; */
        padding: 8px 25px !important;
    }





    #navBar.container-fluid .logo .items .logo1 a img{
        position: relative;
        width: 150px !important;
    }
    #navBar.container-fluid .logo .items .logo4 img{
        position: relative;
        width: 170px;
    }


    #navBar.container-fluid .navigation .menu{
        padding: 15px 0 !important;
    }
    #navBar.container-fluid .navigation .menu ul li a{
        font-size: 12px;
        font-weight: 550;
        padding: 5px 10px !important;
    }
   
}


@media (max-width: 1080px) {
    #navBar.container-fluid .navigation .menu ul li a{
        font-size: 11px;
        font-weight: 500;
        padding: 5px 10px !important;
    }
}
@media (max-width: 1050px) {
    #navBar.container-fluid .navigation .menu ul li a{
        font-size: 11px;
        font-weight: 450;
        padding: 5px 5px !important;
    }
}
@media (max-width: 992px) {           /*******************************         992         *********************************/
    
    #navBar.container-fluid .head .items .infos{
        position: relative;
        padding: 10px;
        font-size: 16px;
        font-weight: 550;
    }
    #navBar.container-fluid .head .items .reseaux a{
        position: relative;
        width: 25px;
        height: 25px;
        font-size: 12px;
    }


    #navBar.container-fluid .logo .items{
        position: relative;
        width: 100%;
    
        display: flex;
        justify-content: space-between;
        align-items: center;
        /* border: 1px solid red; */
        padding: 8px 10px !important;
    }

    #navBar.container-fluid .navigation .menu{
        padding: 15px !important;
    }
    #navBar.container-fluid .navigation .menu ul li a{
        font-size: 11px;
        font-weight: 500;
        padding: 0px 7px !important;
    }




    


.searchForm{
    position: absolute;
    bottom: -60px;
    background-color: var(--orange);
    padding: 10px;
    transition: ease-in 0.3s all;
    z-index: 99;

    display: none;
    left: -0px;
}
.searchForm.active{
    display: block;
    animation: searchBarAnim ease-in-out .3s;
}
@keyframes searchBarAnim {
    0% {
        opacity: .5;
        bottom: -40px;
        z-index: 0;
    
    }
    100% {
        opacity: 1;
        bottom: -60px;
    }
    100% {
        opacity: 1;
        z-index: 99;
    }
}


.searchForm .searchTerm {
    width: 100%;
    border: 3px solid var(--blanc);
    border-right: none;
    padding: 8px;
    height: 40px;
}

.searchForm .searchTerm:focus{
    color: var(--noir);
}

.searchForm .searchButton {
    width: auto;
    padding-right: 15px;
    padding-left: 15px;
    height: 40px;
    border: 1px solid var(--noir);
    background: var(--noir);
    text-align: center;
    color: #fff;
    border-radius: 0 5px 5px 0;
    cursor: pointer;
    font-size: 16px;
    display: flex;
    justify-content: center;
    align-items: center;
}


}
@media (max-width: 768px) {
    #navBar.container-fluid .logo .items .logo3 img{
        position: relative;
        width: 90px !important;
    }
    #navBar.container-fluid .logo .items .logo4 img{
        position: relative;
        width: 115px;
    }


    #navBar.container-fluid .logo .items .texte{
        position: relative;
        width: 450px;
    }
    #navBar.container-fluid .logo .items .texte h1{
        font-size: 18px;
        font-weight: 600;
    }
    #navBar.container-fluid .logo .items .texte p{
        font-size: 14px;
        font-weight: 450;
        margin-top: 8px;
    }
    
    #navBar.container-fluid .navigation .sidebar_btns { /**   Sidebar icon **/
        position: relative;
        display: flex;
        justify-content: center;
        align-items: center;
        border: 1px solid var(--blanc);
        border-radius: 4px;
        margin-top: -3px;
        width: 35px;
        height: 35px;
        color: var(--blanc);
        cursor: pointer;
    }
    #navBar.container-fluid .navigation .menu ul li{
        display: none !important;
    }
    #navBar.container-fluid .navigation{ /**   Sidebar icon **/
        /* border: 1px solid yellow; */
        height: 60px !important;
    }


    #navBar.container-fluid .navigation .menu .toggle .icon{
        bottom: 0;
        height: 60px;
    }
    #navBar.container-fluid .navigation .menu .toggle .icon span{
        display: inline-block;
    }

    
.searchForm{
    position: absolute;
    bottom: -22px;
    background-color: var(--orange);
    padding: 7px;
    transition: ease-in 0.3s all;
    z-index: 99;

    display: none;
    left: -0px;
}
.searchForm.active{
    display: block;
    animation: searchBarAnim ease-in-out .3s;
}
@keyframes searchBarAnim {
    0% {
        opacity: .5;
        bottom: -20px;
        z-index: 0;
    
    }
    100% {
        opacity: 1;
        bottom: -22px;
    }
    100% {
        opacity: 1;
        z-index: 99;
    }
    
}

.searchForm .searchTerm {
    width: 100%;
    border: 3px solid var(--blanc);
    border-right: none;
    padding: 8px;
    height: 35px;
}

.searchForm .searchTerm:focus{
    color: var(--noir);
}

.searchForm .searchButton {
    width: auto;
    height: 35px;
    padding-right: 12px;
    padding-left: 12px;
    font-size: 14px;
}

    
}
@media (max-width: 640px) {
    #navBar.container-fluid .head .items span.icon img{
        position: relative;
        width: 27px;
    }
    #navBar.container-fluid .head .items .infos:nth-child(2){
        position: relative;
        display: none !important;
    }
    #navBar.container-fluid .head .items .infos span.icon{
        position: relative;
        display: inline-block;
        margin-left: -15px;
        margin-right: 5px;
    }

    #navBar.container-fluid .logo .items .logo1 a img{
        position: relative;
        width: 100px !important;
    }
    #navBar.container-fluid .logo .items .logo2 a img{
        position: relative;
        width: 115px !important;
    }
    #navBar.container-fluid .logo .items .logo3 a img{
        position: relative;
        width: 75px !important;
    }
    #navBar.container-fluid .logo .items .logo4 a img{
        position: relative;
        width: 100px !important;
    }
    #navBar.container-fluid .head .items .reseaux{
        position: relative;
    }
}
@media (max-width: 480px) {
    #navBar.container-fluid .logo .items .logo1 a img{
        position: relative;
        width: 80px !important;
    }
    #navBar.container-fluid .logo .items .logo2 a img{
        position: relative;
        width: 90px !important;
    }
    #navBar.container-fluid .logo .items .logo3 a img{
        position: relative;
        width: 60px !important;
    }
    #navBar.container-fluid .logo .items .logo4 a img{
        position: relative;
        width: 90px !important;
    }
    
}

@media (max-width: 390px) {
    #navBar.container-fluid .head .items .infos span.icon{
        position: relative;
        display: inline-block;
        margin-left: -20px;
        margin-right: -10px;
    }
    #navBar.container-fluid .head .items .reseaux a{
        position: relative;
        width: auto;
        height: auto;
        font-size: 14px;
        margin-left: 3px;
        background-color: rgba(194, 212, 224, 0);
    }
    .sidebar .content .logo img{
        position: relative;
        width: 150px !important;
    }
}
@media (max-width: 360px) {

    
    #navBar.container-fluid .logo .items .texte p{
        width: 95%;
        font-size: 15px;
        font-weight: 500;
        margin: auto;
        margin-top: 0px;
    }

}