body{
    background: #fff;
}
main{
    background-image: linear-gradient(to bottom,rgba(0,0,0,0.9),rgba(0,0,0,0.1)),
                      url(../img/forum/bg.png);
    background-attachment: fixed;
    background-position: top;
    background-repeat: no-repeat;
    background-size: cover;
    background-clip: border-box;
    background-origin: border-box;
    width: 100%;
    height: 100%;
    padding: 90px 0;
}

#recent-posts h4{
    color: white;
    font-family: 'Calibri', sans-serif;
    font-style: italic;
    padding: 15px 10px;
    text-transform: uppercase;
    font-size: small;
}#recent-posts article{
    max-width: 400px;
    min-width: 384.89px;
    transition:  transform .5s ease;
}#recent-posts article:hover{
    transform: scale(.99);
}#recent-posts article:not(:last-child){
    margin-bottom: 20px;
}#recent-posts a{
    text-decoration: none;
    padding: 10px;
    display: block;
    border-radius: 9px;
    background-color: #dfe6e9;
    border-bottom: 5px solid rgba(153,153,153, 0.5);
    color: rgb(51, 51, 51);
}.recent-post h2{
    font-family: 'Nexa Bold';
    font-size: 20px;
    font-style: italic;
    text-align: center;
    margin-bottom: 20px;
    font-weight: bold;
}.recent-post p{
    font-family: 'Poor Richard';
    font-size: 18px;
    margin-bottom: 20px;
}.recent-post .commentaire-et-auteur{
    display: flex;
    justify-content: space-between;
    align-items: center;
}.commentaire-et-auteur span.commentaire{
    font-size: 13px;
    font-style: italic;
}.commentaire-et-auteur span{
    font-family: var(--police-menu);
}.commentaire-et-auteur .auteur{
    font-weight: bold;
}

#titre-et-all-categories{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    padding-top: 32px;
}h1.cd-headline{
    font-size: 20px;
    font-weight: bold;
    color: var(--pistache);
    text-transform: uppercase;
}section.cd-intro{
    width: 500px;
    margin: 0;
    margin-bottom: 20px;
}.grid-all-categories article:not(:last-child){
    margin-right: 20px;
}
.grid-all-categories a{
    text-decoration: none;
    display: flex;
    flex-direction: column;
    align-items: center;
    font-family: var(--police-menu);
}.grid-all-categories .boxImage{
    position: relative;
    width: 278px;
    height: 186.4px;
    margin-bottom: 20px;
    overflow: hidden;
    border-radius: 10px;
}.grid-all-categories img{
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: 2s;
}.grid-all-categories span{
    font-size: 15px;
    color: var(--pistache);
    font-weight: bold;
}.grid-all-categories .details{
    position: absolute;
    top: 10px;
    left: 10px;
    right: 10px;
    bottom: 10px;
    background: rgba(0, 0, 0, 0.8);
    transform: scaleY(0);
    transition: transform .5s;
    /* height: 165px; */
    width: 93.5%;
    padding: 10px;
    text-align: left;
    color: #fff;
    font-weight: 100;
    line-height: 20px;
}.grid-all-categories a:hover .details{
    transform: scaleY(1);
}.grid-all-categories a:hover img{
    transform: scale(1.2);
}.grid-all-categories{
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: 88px;
}
#el-content{
    width: var(--width);
    margin: auto;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}

@media all and (max-width: 1283px){
    #el-content{
        flex-direction: column;
        align-items: center;
    }#recent-posts article {
        width: 800px;
        max-width: 800px;
    }
}@media all and (max-width: 900px){
    #recent-posts article {
        width: var(--width);
        max-width: var(--width);
    }
    .grid-all-categories {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding-top: 10px;
        flex-direction: column;
    }.grid-all-categories article:not(:last-child) {
        margin-right: 0;
        margin-bottom: 20px;
    }.grid-all-categories .boxImage{
        width: 350px;
        height: 258.6px;
    }.grid-all-categories span{
        font-size: 18px;
    }
}@media all and (max-width: 851px){
    .grid-all-categories .boxImage{
        width: 300px;
        height: 208.6px;
    }.grid-all-categories .details{
        height: calc(100% - 20px);
    }.grid-all-categories span{
        font-size: 15px;
    }
}@media all and (max-width: 500px){
    section.cd-intro{
        width: var(--width);
    }
}@media all and (max-width: 416px){
    .commentaire-et-auteur .auteur {
        font-weight: 400;
    }
}@media all and (max-width: 393px){
    #recent-posts article {
        min-width: max-content;
    }
}@media all and (max-width: 360px){
    h1.cd-headline {
        font-size: 16px;
    }
}

/* CATEGORIE */
.explication-et-bouton{
    background: #000;
    padding: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
}.explication h1{
    font-family: 'Vidaloka', serif;
    letter-spacing: 1px;
    font-size: 30px;
    margin-bottom: 20px;
    font-weight: 600;
}.explication-et-bouton h1{
    color: inherit;
}.explication p{
    font-family: 'calibri';
    font-style: italic;
    font-size: 13px;
    color: #dcdde1;
    text-align: justify;
    line-height: 30px;
}.explication-et-bouton button{
    color: #f5f6fa;
    padding: 15px 20px;
    border-radius: 5px;
    font-family: var(--police-details);
    text-decoration: none;
    text-align: center;
    font-weight: 600;
    font-size: 15px;
    border: none;
    outline: none;
    box-shadow: none;
    cursor: pointer;
}.explication-et-bouton aside{
    width: var(--width);
    display: flex;
    align-items: center;
    justify-content: space-between;
}

#corps{
    width: var(--width);
    margin: 40px auto;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}#corps .conseil{
    background: #0097e6;
    color: #fff;
    width: 300px;
    padding: 20px;
    text-align: justify;
    border-radius: 10px;
}.conseil h3{
    color: #fff;
    font-family: 'DM Serif Text', serif;
    text-align: left;
    padding-bottom: 10px;
    font-size: 20px;
    font-weight: 600;
}.conseil h3 .fa{
    margin-right: 10px;
}.conseil p {
    font-style: italic;
    font-size: 13px;
    font-family: var(--police-menu);
    font-weight: 400;
    line-height: 23.4px;
}

.post{
    /* background: #ced6e0; */
    background: var(--gray-150);
    width: 100%;
    color: #2d3436;
    border-radius: 5px;
    transition: .5s;
}.post:hover{
    /* background: linear-gradient(green,#ced6e0); */
    color: #000;
    transform: scale(.99);
}.post:not(:last-child){
    margin-bottom: 20px;
}.post a{
    display: block;
    padding: 20px;
    text-decoration: none;
    color: #2d3436;
}.post p{
    font-size: 20px;
    font-family: var(--police-menu);
    margin-bottom: 40px;
}.post div{
    display: flex;
    justify-content: space-around;
    align-items: center;
}.post h4{
    font-family: var(--police-menu);
    font-size: 13px;
}.post h4:not(:first-child){
    font-style: italic;
}.post h4:first-child{
    font-weight: bold;
}.grid-posts{
    width: 600px;
    height: 200px;
}
.grid-photo .box{
    position: relative;
    width: 200px;
    height: 150px;
}.grid-photo .box:not(:last-child){
    margin-bottom: 20px;
}.grid-photo img{
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 15px;
}.grid-photo{
    display: flex;
    flex-direction: column;
    align-items: center;
    height: 200px;
}

#lightbox button{
    outline: none;
    border: none;
    box-shadow: none;
    color: #fff;
}.group-line button{
    padding: 10px 15px;
    text-transform: uppercase;
    font-family: var(--police-menu);
}.group-line label{
    font-family: var(--police-menu);
}.form input:valid + label,
.form input:focus + label,
.form textarea:valid + label,
.form textarea:focus + label{
    padding: 5px 7px;
}

@media all and (max-width: 1281px){
    .grid-posts {
        width: 504px;
        height: 200px;
    }
}@media all and (max-width: 1110px){
    #corps{

        display: grid;
        grid-template-areas: "conseil conseil"
                             "posts photos";
        grid-auto-flow: dense;
        grid-gap: 20px;
    }#corps .conseil{
        grid-area: conseil;
        width: var(--width);
        padding: 0;
    }.conseil h3{
        padding: 20px 0  0 20px;
    }.conseil p{
        padding: 20px;
    }.grid-posts{
        grid-area: posts;
        width: calc(var(--width) - 250px);
    }.grid-photo{
        grid-area: photos;
    }
}@media all and (max-width: 948px){
    .explication-et-bouton button{
        padding: 15px 19px;
    }
}@media all and (max-width: 945px){
    .explication-et-bouton aside {
        flex-direction: column;
    }.explication-et-bouton button{
        margin-top: 20px;
    }
}@media all and (max-width: 725px){
    .grid-photo .box {
        width: 150px;
        height: 100px;
    }.grid-posts{
        width: calc(var(--width) - 200px);
    }
}@media all and (max-width: 638px){
    .post h4:not(:first-child){
        margin-left: 10px;
    }.post h4{
        white-space: nowrap;
        font-size: 11px;
    }
}@media all and (max-width: 557px){
    #corps{

        display: grid;
        grid-template-areas: "conseil conseil"
                             "posts posts";
        grid-auto-flow: dense;
        grid-gap: 20px;
    }.conseil h3{
        padding: 10px 0  0 10px;
    }.conseil p{
        padding: 10px;
    }.grid-photo{
        display: none;
    }.grid-posts{
        width: var(--width);
    }
}
/* CATEGORIE */

/* SUJET */
#el-content-sujet{
    width: max-content;
    margin: 40px auto;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
}.sujet{
    width: 800px;
    background: var(--gray-100);
    padding: 20px;
    font-family: var(--police-menu);
}.header-sujet{
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}.auteur-et-date span{
    font-size: 12px;
    font-style: italic;
}.auteur-et-date h2{
    color: rgb(45, 52, 54);
    font-size: 30px;
    font-weight: 400;
    font-family: inherit;
    margin-bottom: 10px;
}.auteur-et-date h2 span{
    font-weight: bold;
    font-size: 30px;
}.controle-sujet button,
  .controle-sujet a{
    outline: none;
    border: none;
    box-shadow: none;
    padding: 5px 15px;
    border-radius: 20px;
    font-weight: 600;
    color: #fff;
    box-shadow: 0 0 2px rgba(0, 0, 0, .5);
    cursor: pointer;
    transition: .5s ease;
}.controle-sujet button:hover,
       .controle-sujet a:hover{
    transform: scale(.97);
}.controle-sujet #modifier{
    background: var(--blue-light);
}.controle-sujet #supprimer{
    background: var(--red-light);
}.controle-sujet .modifier{
    background: var(--blue-light);
}.controle-sujet .supprimer{
    background: var(--red-light);
}.sujet p{
    display: none;
}.sujet p.active{
    display: block;
    font-size: 15px;
    line-height: 23.4px;
    color: rgba(0,0,0,.6);
    margin-top: 20px;
}.sujet textarea{
    display: none;
}.sujet textarea.active{
    display: block;
    font-size: 15px;
    line-height: 23.4px;
    color: rgba(0,0,0,.6);
    margin-top: 20px;
    width: 100%;
    resize: none;
}#el-content-sujet h3{
    font-family: var(--police-menu);
    font-size: 20px;
    font-weight: 400;
    align-self: flex-start;
    margin-top: 40px;
}.grid-commentaires{
    margin-top: 20px;
    align-self: flex-end;
}.grid-commentaires .sujet{
    background: #00a7f413;
    width: 700px;
}.grid-commentaires .sujet:not(:last-child){
    margin-bottom: 20px;
}@media all and (max-width: 845px){
    .sujet{
        width: var(--width);
        padding: 0;
    }.grid-commentaires .sujet{
        width: calc(var(--width) - 100px);
    }.auteur-et-date h2,
    .auteur-et-date h2 span,
    #el-content-sujet h3{
        font-size: 20px;
    }.header-sujet{
        padding: 20px;
    }.sujet p{
        margin-top: 0;
        padding: 0 20px 20px;
    }
}@media all and (max-width: 638px){
    .controle-sujet {
        position: absolute;
        top: 11%;
        right: 2%;
    }.header-sujet{
        position: relative;
    }
}@media all and (max-width: 557px){
    .controle-sujet {
        position: absolute;
        top: 52%;
        right: 2%;
    }
}@media all and (max-width: 417px){
    .grid-commentaires .sujet {
        width: var(--width);
    }
}
/* SUJET */
