* {
    margin: 0;
    padding: 0;
    -webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
    -moz-box-sizing: border-box;    /* Firefox, other Gecko */
    box-sizing: border-box;
}

@font-face {
    font-family: 'roboto';
    src: url('polices/Roboto-Regular.ttf');
}	

:root {
    --text-bg-color: #414141;
    --text-bg-color-green: #6E8E2F;
    --couleur-bordure-bouton: #62646A;
    --couleur-clair-bordure: #CCCCCC;
    --couleur-bleu-logo: #022AEB;
}

html {
    width: 100vw;
    font-family: Verdana;
}

h1, h2, h3, p, a {
    color: var(--text-bg-color);
}

p, a {
    font-size: 20px;
}

a {
    text-decoration: none;
}

body {
    width: 100%;
    height: auto;
    justify-content: center;
    align-content: center;
    background-color: white;
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    flex-direction: column;
    overflow-x: hidden;
}

body main {
    min-height: 350px;
}

body header {
    margin-left: auto;
    margin-right: auto;
    height: auto;
    width: 100vw;
    z-index: 999;
    top: 0;
}

#messageprincinew {
    width: 100%;
    background-color:#c6ffcc;
    text-align: center;
    height: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: row;
    padding-top: 5px;
    padding-bottom: 5px;
    display: none;
}

#messageprincinew .texteterms {
    width: calc(100% - 48px);
    margin-left: 9px;
    font-size: 14px;
}

#messageprincinew .texteterms a {
    font-size: 14px;
    font-weight: 500;
    text-decoration: underline;
}

#messageprincinew .quitterms {
    cursor: pointer;
    width: 30px;
    height: auto;
    margin-right: 19px;
    margin-top: -3px;
}

body header>nav {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    flex-direction: column;
}

.bordersepmenumob {
    border-bottom: 1px solid#cccccc;
}

#messagenteteheader {
    background: linear-gradient(to right, #022AEB, #6FCEFD);
    text-align: center;
    width: 100vw;
    padding-top: 15px;
    padding-bottom: 15px;
}

#messagenteteheadercontenu {
    width: 1175px;
    margin-left: auto;
    margin-right: auto;
    overflow: hidden;
}

#divmessagenteteheaderp {
    width: calc(100% - 15px);
    text-align: center;
    float: left;
}

#messagenteteheaderp {
    font-size: 16px;
    font-weight: bold;
    font-family: Arial, Helvetica, sans-serif;
    color: white;
    text-align: center;
}

#divmessagenteteheaderclose {
    width: 15px;
    float: left;
    text-align: right;
}

#messagenteteheaderclose {
    width: 11px;
    height: 11px;
    margin-left: auto;
    cursor: pointer;
}

body header {
    display: block;
}

body header .navprincipal {
    width: 100vw;  
    height: 105px;
}

body header nav .ulnavprincipal {
    display: flex;
    flex-direction: row;
    align-items: center;
    width: 1175px;
    margin-left: auto;
    margin-right: auto;
}

li {
    list-style: none;
}

.header-principal-li {
    cursor: pointer;
}

.header-principal-li:nth-child(1) {
    list-style:none;
    margin-right: auto;
}

.header-principal-li:nth-child(2) {
    margin-left: auto;
    margin-right: auto;
    display: flex;
    flex-direction: row;
    align-items: center;
}

#headerrechercheformation {
    width: 389px;
    height: 37px;
    border-radius: 25px;
    padding-left: 17px;
    padding-right: 15px;
    border:1px solid var(--couleur-bordure-bouton);
    background-position : 96% 50%;
    background-repeat : no-repeat;
    background-image : url(/images/headerlouperechercher.svg);
    background-size: 21px;
    font-size: 15px;
}

#headerrechercheformation:focus {
    outline: none !important;
    border:1px solid var(--couleur-bleu-logo);
}

#headerpanier, #headernotif {
    position: relative;
    width: 35px;
    height: auto;
    margin-top: 4px;
    margin-left: 25px;
}

#headerpanier img {
    width: 23px;
    height: 23px;
}

#headernotif {
    margin-top: 7px;
    margin-left: 19px;
}

#headernotif img {
    width: 21px;
    height: 25px;
}

#headerpanier div, #headernotif div {
    text-align: center;
    position: absolute;
    right: 0px;
    top: -8px;
    border-radius: 50%;
    font-size: 11px;
    font-weight: 500;
    width: 17px;
    height: 17px;
    line-height: 16px;
    background-color: var(--couleur-bleu-logo);
    color: white;
}

#headernotif div {
    right: 5px;
    top: -7px;
}

.btn {
    font-size: 16px;
    border-radius: 25px;
    padding-top: 11px;
    padding-bottom: 11px;
    padding-left: 17px;
    padding-right: 17px;
    border:1px solid var(--couleur-bleu-logo);
}

.btn.enseigner {
    font-size: 14px;
    border: none;;
}

.btn.enseigner:hover {
    color: var(--couleur-bleu-logo);
}

.btn.connexion {
    color: var(--couleur-bleu-logo);
}

.btn.inscription {
    background-color: var(--couleur-bleu-logo);
    color: white;
}

.classphotouserheader, #photouserheader {
    width: 45px;
    height: 45px;
    border-radius: 50%;
    object-fit: cover;
    margin-left: 17px;
}

.classphotouserheader {
    margin-left: 0px;
}

#headerconnect a:nth-child(2) {
    margin-left: 0px;
    margin-right: 7px;
}

.header-principal-li:nth-child(3) {
    margin-left: auto;
    display: flex;
    flex-direction: row;
    align-items: center;
    user-select: none;
}

#header-bouton-menu-id:hover nav, #header-bouton-menu-id:hover {
    display: flex;
}

.header-principal-li:nth-child(3) p {
    margin-left: 5px;
}

.header-principal-li a p {
    margin: 5px;
}

.header-principal-li:nth-child(1) a {
    display: flex;
    flex-direction: column;
}

.header-principal-li:nth-child(1) a p {
    margin-top: 5px;
}

.header-principal-li:nth-child(2) a {
    display: flex;
    flex-direction: row;
    align-items: center;
}

.header-principal-li a {
    text-decoration: none;
    text-align: center;
}

.header-logo-site {
    width: 183px;
    height: 58.8px;
    margin-right: 13px;
}

#listecategories {
    width: 100vw;
    height: 40px;
    background-color: #F2F2F2;
    text-align: center;
}

#cadragelistecategories {
    width: 1175px;
    display: flex;
    flex-direction: row;
    align-items: center;
    margin-left: auto;
    margin-right: auto;
}

#listecategories .navsecondaire {
    width: 1109px;
    height: 40px;
    position: relative;
    text-align: center;
    overflow: hidden;
}

#listecategories .navsecondaire ul {
    position: relative;
    top: 10px;
    left: 25px;
    right: 0px;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
}

#flechedroitecat {
    margin-left: 35px;
    width: 24px;
    height: 15px;
    cursor: pointer;
}

#flechegauchecat {
    margin-right: 35px;
    width: 24px;
    height: 15px;
    cursor: pointer;
}

.header-secondaire-li {
    margin-right: 23px;
}
.header-secondaire-li a {
    font-size: 14px;
    white-space: nowrap;
}
.header-secondaire-li a:hover {
    color:var(--couleur-bleu-logo);
}

.header-menu-site {
    height: 30px;
    width: auto;
}

#liphotomenusecondaire {
    position: relative;
    width: auto;
    height: auto;
}

.header-menu-secondaire {
    position: absolute;
    z-index: 3;
    background-color: white;
    width: 213px;
    height: auto;
    top: 63px;
    left: -65px;
}

.header-menu-secondaire ul {
    width: 100%;
    height: auto;
    padding: 7px 19px 7px 19px;
    display: flex;
    flex-direction: column;
    align-items: center;
    box-shadow: 0px 0px 19px #c6c6c6;
}

.header-menu-secondaire ul li {
    width: 100%;
    text-align: center;
    padding-top: 15px;
    padding-bottom: 15px;
    padding-left: 5px;
}

.header-menu-secondaire ul li a {
    text-align: center;
    font-size: 14px;
}

.header-menu-secondaire ul li:nth-child(1) {
    border-bottom: 1px solid var(--couleur-clair-bordure);
    cursor: default;
}

.header-menu-secondaire ul li:last-child {
    border-top: 1px solid var(--couleur-clair-bordure);
}

.header-menu-secondaire ul li:nth-child(1) p {
    font-size: 16px;
}

.header-menu-secondaire ul li:nth-child(1) p .email {
    font-size: 14px;
}

.header-menu-secondaire ul li:hover:nth-child(n+2) {
    background-color: #ebebeb;
}


#headerlinotif {
    position: relative;
}

#header-menu-notif-ul li:nth-child(n+2) a {
    display: flex;
    flex-direction: row;
    align-items: center;
    flex-wrap: nowrap;
}

#header-menu-notif-ul li:nth-child(n+2) a p {
    text-align: left;
    margin-left: 19px;
}

.header-menu-secondaire-notif {
    position: absolute;
    z-index: 3;
    background-color: white;
    width: 273px;
    height: auto;
    top: 63px;
    left: -104px;
}

.header-menu-secondaire-notif ul {
    width: 100%;
    height: 283px;
    overflow-y: scroll;
    padding: 7px 19px 7px 19px;
    display: flex;
    flex-direction: column;
    align-items: center;
    box-shadow: 0px 0px 19px #c6c6c6;
}

.header-menu-secondaire-notif ul li {
    width: 100%;
    text-align: center;
    padding-top: 15px;
    padding-bottom: 15px;
    padding-left: 5px;
}

.header-menu-secondaire-notif ul li a p {
    text-align: center;
    font-size: 14px;
}

.header-menu-secondaire-notif ul li:nth-child(1) {
    border-bottom: 1px solid var(--couleur-clair-bordure);
}

.header-menu-secondaire-notif ul li:nth-child(1) a p {
    font-size: 16px;
}

.header-menu-secondaire-notif ul li:hover {
    background-color: #ebebeb;
}

#headermobileprincipal {
    display: none;
}

/* body main */
.contenu-principal-du-site {
    margin-left: auto;
    margin-right: auto;
    width: 1001px;
    height: auto;
    background-color: rgba(0, 0, 0, 0.25);
}

.accueil-image-principale {
    z-index: -1;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 1001px;
    background-position: top;
    background-image: url("images/mosquee3.jpg");
    background-repeat: no-repeat;
    background-size: cover;
}

.contenu-principal-du-site section {
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: column;
    align-content: center;
}


@media screen and (min-width: 1189px) and (max-width:1357px) {
    html {
        width: 100vw;
    }
    p {
        font-size: 14px;
    }
    
    body header {
        width: 100%;
    }
    .header-menu-secondaire {
        left: -149px;
    }
}

@media screen and (min-width: 0px) and (max-width:1189px) {
    #messagenteteheaderp {
        font-size: 12px;
        margin-top: 3px;
    }
    #messagenteteheadercontenu {
        width: 100%;
    }
    #divmessagenteteheaderclose {
        margin-right: 15px;
    }
    #divmessagenteteheaderp {
        width: calc(100% - 52px);
    }
    #headermobileprincipal {
        display: block;
        width: 100vw;
    }
    #headermobile {
        display: block;
        width: 100vw;
        height: 100px;
        border-bottom: 1px solid var(--couleur-clair-bordure);
        border-top: 1px solid var(--couleur-clair-bordure);
    }
    
    #headermobile ul {
        display: flex;
        align-items: center;
        justify-content: center;
        flex-direction: row;
        flex-wrap: nowrap;
        width: 100%;
        height: 100px;
        margin: 0 0 0 0;
        padding: 0 0 0 0;
    }

    #headermobile ul li:nth-child(1) {
        margin-left: 19px;
        display: flex;
        flex-direction: column;
        align-self: center;
    }
    #headermobile ul li:nth-child(2) {
        margin-left: auto;
        margin-right: auto;
    }
    #headermobile ul li:nth-child(2) a img {
        width: 144px;
        height: 47px;
    }
    #headermobile ul li:nth-child(3) {
        margin-right: 19px;
        display: flex;
        align-items: center;
        justify-content: center;
        flex-direction: column;
    }
    /* La loupe */
    #headermobile ul li:nth-child(3)>img {
        width: 22px;
        margin-right: 11px;
        margin-bottom: 9px;
        height: 22px;
    }

    #headermenuhamburger {
        width: 25px;
        height: 21px;
    }


    #headernotifmobile {
        position: relative;
        margin-top: 23px;
        margin-left: 1px;
        cursor: pointer;
    }
    
    #headernotifmobile img {
        width: 21px;
        height: 25px;
    }
    
    #headernotifmobile div {
        text-align: center;
        position: absolute;
        right: -3px;
        top: -8px;
        border-radius: 50%;
        font-size: 11px;
        font-weight: 500;
        width: 17px;
        height: 17px;
        line-height: 16px;
        background-color: var(--couleur-bleu-logo);
        color: white;
    }
    

    #headerpaniermobile {
        position: relative;
        width: 35px;
        height: 29px;
        margin-top: 19px;
    }
    
    #headerpaniermobile div {
        text-align: center;
        position: absolute;
        right: 0px;
        top: -8px;
        border-radius: 50%;
        font-size: 11px;
        font-weight: 500;
        width: 17px;
        height: 17px;
        line-height: 17px;
        background-color: var(--couleur-bleu-logo);
        color: white;
    }
    #headerpaniermobile img {
        width: 20px;
        height: 18px;
    }

    #headerrechercheformationmobile {
        width: 100vw;
        height: auto;
        padding: 6px 6px 6px 6px;
        border-bottom: 1px solid var(--couleur-clair-bordure);
        display: none;
        align-items: center;
        justify-content: center;
        flex-direction: row;
        flex-wrap: nowrap;
    }
    #headerrechercheformationmobile form {
        width: calc(100% - 51px);
    }
    #headerrechercheformationmobile form input {
        width: calc(100% - 51px);
        height: 37px;
        border-radius: 25px;
        padding-left: 17px;
        padding-right: 15px;
        border:1px solid var(--couleur-bordure-bouton);
        background-position : 96% 50%;
        background-repeat : no-repeat;
        background-image : url(/images/headerlouperechercher.svg);
        background-size: 21px;
        font-size: 15px;
    }

    #headerrechercheformationmobile img {
        width: 9px;
        height: 9px;
        margin-left: 23px;
        margin-right: auto;
    }
    
    #headerrechercheformationmobile form input:focus {
        outline: none !important;
        border:1px solid var(--couleur-bleu-logo);
    }

    #menumobile {
        width: 100vw;
        height: auto;
        display: none;
        box-shadow: 0px 0px 9px #c7c7c7;
    }

    #menumobile ul {
        display: flex;
        align-items: center;
        justify-content: center;
        flex-direction: column;
        flex-wrap: nowrap;
    }

    #menumobile ul li {
        padding: 15px 37px 15px 19px;
        width: 100%;
    }

    #menumobile ul li a, #menumobile ul li p {
        font-size: 14px;
        color: var(--couleur-bordure-bouton);
    }

    #menumobile ul li:nth-child(1) {
        display: flex;
        align-items: center;
        justify-content: center;
        flex-direction: row;
        flex-wrap: nowrap;
    }

    #menumobile ul li:nth-child(1) p {
        text-align: center;
        width: 100px;
        padding: 12px 12px 12px 12px;
        margin-left: auto;
        margin-right: auto;
        border-bottom: 1px solid var(--couleur-clair-bordure);
        font-size: 16px;
    }
    #menumobile ul li:nth-child(1) img {
        width: 9px;
        height: 9px;
        margin-right: 0;
    }

    #menumobile .enseignerzetraining {
        border-bottom: 1px solid var(--couleur-clair-bordure);
        border-top: 1px solid var(--couleur-clair-bordure);
    }

    #menumobile .infoprofil {
        display: flex;
        align-items: center;
        justify-content: flex-start;
        flex-direction: row;
        flex-wrap: nowrap;
        border-bottom: 1px solid var(--couleur-clair-bordure);
    }

    #menumobile .infoprofil p {
        margin-left: 15px;
        font-size: 17px;
    }
    #menumobile .infoprofil p span {
        font-size: 13px;
    }
    
}