main {
    background-color: var(--Grey);
    padding: 2vh 2vw 0vh;
    overflow: hidden;
}

.opaZ {
    top: -100vh;
}

.change_BG_color {
    top: 1vh;
}

.hero {
    height: 98vh;
    width: 100%;
    display: grid;
    grid-template-rows: 1fr repeat(2, -webkit-min-content);
    grid-template-rows: 1fr repeat(2, min-content);
    grid-template-columns: 1fr;
    grid-template-areas: 
        "i"
        "h"
        "g";
    gap: 2vh;
    margin-bottom: 40px;
}

.illuCouv {

    --Cover: url(../img/projet/IME/IME_cover.png);

    background-image: var(--Cover);
    background-position: center;
    background-size: cover;
    border-radius: 30px;

    overflow: hidden;

    grid-area: i;

    padding: 20px;
}

.Back {
    padding: 10px 15px;
    background-color: var(--White);
    display: block;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    border-radius: var(--Rad-ext);
    text-decoration: none;
    color: var(--Black);
}

.headHero {
    grid-area: h;
    margin: 0vh 2vh;
}

.titleProj {
    color: var(--Blue);
    font-size: 2rem;
}

.date {
    margin: 0px;
    align-self: center;
    color: var(--Black);
}

.GridHeroRight {
    grid-area: g;

    display: grid;
    grid-template-rows: repeat(2, -webkit-min-content);
    grid-template-rows: repeat(2, min-content);
    grid-template-columns: 1fr;
    gap: 20px;
    margin: 0vh 2vh;
}

.outilDiv {
    display: flex;
    gap: 5px;
    align-items: center;
    margin-bottom: 2vh;
}

.outilDiv p {
    margin: 0px;
}


/* Info sur le projet */

.InfoProj {
    /* border: solid 1px red; */
    padding: 0vh 4vw;
    text-align: center;
}

article {
    margin: 60px auto;
    max-width: 1700px;
    text-align: left;
}

.ArticleTop {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: repeat(3, -webkit-min-content);
    grid-template-rows: repeat(3, min-content);
    grid-template-areas: 
        "i"
        "d"
        "a";
    gap: 20px 0px;

    margin-top: 40px;
}

.ArticleTop > div {
    grid-area: d;
}

.ArticleTop > div > p {
    margin-top: 0px;
}

.ArticleTop .Btn {
    margin-top: 0px;
}

.ArticleTop > a {
    grid-area: a;

    /* background-color: red; */
}

.ArticleTop > .Apercu {
    grid-area: i;

    /* background-color: yellow; */
}

.visuels {
    --nbCol : 2;
    display: grid;
    /* grid-template-rows: repeat(var(--nbCol), 1fr); */
    grid-template-columns: 1fr;
    width: 100%;
    gap: 20px;
}

.Apercu {
    width: 100%;
    border-radius: var(--Rad-ext);
}

.LogoProj {
    width: 50%;
}

.asideL {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
    justify-items: center;
}

.asideL > figure > figcaption, .asideR > figure > figcaption {
    display: none;
}

.asideL .Apercu {
    width: 80%;
}

.asideR {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
    justify-items: center;
}

.asideR .Apercu {
    width: 80%;
}

.role {
    --nbCol : 2;

    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
    text-align: center;
}

.role img {
    width: 150px;
}

.Equipe {
    --BG : var(--Blue);
    --Txt : var(--White);
    
    display: grid;
    grid-template-columns: repeat(8, 32px) 1fr;
    grid-template-rows: repeat(2, fit-content(100%));
    gap: 10px 5px;
    align-items: center;
    width: 100vw;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    margin-bottom: 0px;
    margin-left: -6vw;
    padding: 9px 10px 9px;
    background-color: var(--BG);
}

.Equipe p {
    grid-column: 1 /-1;
    text-transform: uppercase;
    font-family: var(--Barracuda);
    font-weight: 500;
    font-size: 1.4rem;
    color: var(--Txt);
    margin: 6px 0px 0px;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
}

.Copains {
    height: 32px;
    border-radius: 100%;
}

@media (min-width: 350px) {

    .Equipe p {
        font-size: 1.5rem;
    }

}

@media (min-width: 500px) {

    .titleProj {
        font-size: 2.5rem;
    }

}

@media (min-width: 600px) {

    .hero {
        margin-bottom: 50px;
    }

    .ArticleTop {
        margin-top: 60px;
    }

    .GridHeroRight {        
        grid-template-rows: 1fr;
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }
    
    .tagDiv {
        margin-bottom: 2vh;
    }
    
    .outilDiv {
        margin-left: auto;
    }

    .titleProj {
        font-size: 3rem;
    }

    .Equipe {
        grid-template-columns: repeat(8, 60px) 1fr;
        gap: 10px;
    }
    
    .Equipe p {
        font-size: 2rem;
    }

    .Copains {
        height: 60px;
    }

}

@media (min-width: 650px) {

    .asideL {
        grid-template-columns: 2fr 3fr;
        grid-template-rows: 1fr;
        justify-items: inherit;
        align-items: center;
    }
    
    .asideL .Apercu {
        width: 80%;
    }
    
    .asideR {
        grid-template-columns: 3fr 2fr;
        grid-template-rows: 1fr;
        justify-items: inherit;
        align-items: center;
    }
    
    .asideR .Apercu {
        width: 80%;
    }

    .asideL > figure > figcaption, .asideR > figure > figcaption {
        display: inherit;
    }

}

@media (min-width: 800px) {

    .ArticleTop {
        grid-template-columns: 1fr -webkit-max-content;
        grid-template-columns: 1fr max-content;
        grid-template-rows: repeat(2, -webkit-min-content);
        grid-template-rows: repeat(2, min-content);
        grid-template-areas: 
            "d i"
            "a i";
        gap: 0px 40px;
    }

    .ArticleTop > .Apercu {
        max-width: 45vw;
    }

    .ArticleTop > div {
        padding: 20px 0px 0px;
    }

    .ArticleTop .Btn {
        margin-top: 20px;
    }

    .visuels {
        grid-template-columns: repeat(var(--nbCol), 1fr);
        grid-template-rows: 1fr;
    }

    .deuxT {
        grid-column: 1/var(--nbCol);
    }

    .LogoProj {
        width: 88%;
    }

    
    .InfoProj p {
        max-width: 50vw;
    }
    

    article p {
        max-width: 50vw;
    }

    .role {
        grid-template-columns: repeat(var(--nbCol), 1fr);
        grid-template-rows: 1fr;
    }

    .Equipe {
        display: flex;
        gap: 10px;
        height: 50px;
        margin-bottom: 0px;
        margin-left: -6vw;
        padding: 9px 10px 9px;
    }

    .Equipe p {
        max-width: 100vw;
    }

    .Copains {
        height: 100%;
    }
}

@media (min-width: 900px) {

    .titleProj {
        font-size: 5rem;
    }

    .Equipe {
        height: 60px;
    }

}


@media (min-width: 1050px) {

    .hero {
        height: 98vh;
        width: 100%;
        display: grid;
        grid-template-rows: 1fr -webkit-min-content;
        grid-template-rows: 1fr min-content;
        grid-template-columns: 1fr -webkit-max-content;
        grid-template-columns: 1fr max-content;
        grid-template-areas: 
            "i i"
            "h g";
        gap: 2vh;
        margin-bottom: 50px;
    }
    
    .headHero {
        grid-area: h;
        margin: 0vh 0vh 0vh 2vh;
    }

    .date {
        margin: 0vh 0vh 2vh;
    }

    .GridHeroRight {
        grid-template-rows: repeat(2, -webkit-min-content);
        grid-template-rows: repeat(2, min-content);
        grid-template-columns: 1fr;
        gap: 20px;
        margin: 0vh 2vh 0vh 0vh;
    }

    .tagDiv {
        margin-bottom: 0px;
    }

    .outilDiv {
        margin: 0px;
    }

    .Equipe {
        height: 70px;
    }

    .Equipe p {
        font-size: 2.5rem;
}

@media (min-width: 1400px) {

    .Equipe {
        height: 86px;
        gap: 20px;
    }

    .Equipe p {
        font-size: 3.25rem;
        margin: 11px 0px 0px;
        max-width: 100vw;
    }
}

/*   _____     _____
    |  _  |   |  _  |
   -| | | |---| | | |-
    |_____| 7 |_____|  ~B!nro~
*/}