/*Feuille de Style | Générale*/

/**Version Desktop**/

.generalBody.active    {overflow-x: hidden; overflow-y: hidden;}

.generalBody.disable    {overflow: scroll;}

body    {scroll-behavior: smooth;}

/***Barre de navigation***/

.mainNavbar {
    height: 100vh;
    width: 100vw;
    position: absolute;
    top: -100vh;
    left: 0; 
    z-index: 5000;
    display: flex;
    justify-content: space-around;
    align-items: center;
    transition: 0.4s;
    transition-timing-function: ease-out;
    background-color: #00141D;
}

.mainNavbar ul  {height: 70%;}

.mainNavbar ul li  {
    margin-bottom: 2.5vh;
    font-family: "Nexa-Bold", sans-serif;
    cursor: default;
}

.mainNavbar ul li a {
    font-size: 1.5em;
    color: #FFF;  
    letter-spacing: 3px;
    text-decoration: none;
    position: relative;
    cursor: pointer;
    z-index: 5050;
}

.navBarSectionMeuble li a::after {
    content: '';
    height: 3px;
    width: 0%;
    position: absolute;
    bottom: 0;
    left: 0;
    background: #05668D;
    transition: width 0.5s;
}

.navBarSectionMeuble li a:hover::after {width: 100%;}

.navBarSectionCar li a::after {
    content: '';
    height: 3px;
    width: 0%;
    position: absolute;
    bottom: 0;
    left: 0;
    background: #D12532;
    transition: width 0.5s;
}

.navBarSectionCar li a:hover::after {width: 100%;}
 

.RedDecoration   {/*color: #D12532;*/     font-family: "Space-Age", sans-serif;}
.BlueDecoration   {/*color: #05668D;*/     font-family: "Space-Age", sans-serif;}


.NavbarTitreSection {
    color: #FFF; 
    font-size: 2.5em;
    margin-bottom: 5.5vh;

}

.lite-text  {
    color: #999;
    font-size: 200px;
    letter-spacing: 100px;
    opacity: 0.1;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-family: "Nexa-Black", sans-serif;
    font-weight: 400;
    z-index: 4999;
}

.close-btn  {
    width: 30px;
    position: absolute;
    right: 80px;
    top: 50px;
    z-index: 5000;
    cursor: pointer;
    transition: transform 400ms;
}
.open-btn   {
    width: 55px;
    position: absolute;
    right: 60px;
    top: 50px;
    z-index: 5000;
    cursor: pointer;
    transition: transform 300ms;
}

.open-btn:hover {transform:rotate(-90deg); filter: invert(30%); transition: transform 400ms;}
.close-btn:hover    {transform: scale(1.3, 1.2); transition: transform 400ms;}

/***Contenu général***/

*   {
    margin: 0;
}

ul  {list-style-type: none; padding: 0px;}

a   {text-decoration: none; color: #1D1D1F;}

h3  {font-size: 1.5em;}

p   {font-size: 1.4em; line-height: 30px;}

.aButton    {
    color: #05668D;
}

.aButton:hover    {
    color: #3E3F3F;
}

button  {
    font-size: 0.6em;
    font-family: "Nexa-Bold", sans-serif;
    background-color: #1D1D1F;
    color: #FFF;
    border-radius: 3px;
    border: none;
    text-transform: uppercase;
}

.UnavailableContent {display: none;}

/***Txt1***/

.Txt1   {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 10vh;
}

#Texte-Central  {
    width: 65vw;
    text-align: justify;
}

#Texte-Central h3    {
    font-family: "Nexa-Black", sans-serif;
    margin-bottom: 3vh;
}

#Texte-Central p {
    font-family: "Nexa-Regular", sans-serif;
    align-content: center;
}

/***Txt4***/

.TxtX4  {
    display: grid;
    grid-template-columns: 1fr 35vw 35vw 1fr;
    grid-template-rows: 1fr auto auto;
    grid-gap: 20px;
}

.TxtX4 h3   {
    grid-area: 1 / 2;
    font-family: "Nexa-Black", sans-serif;
}

.TxtX4 p    {
    font-family: "Nexa-Regular", sans-serif;
}

.TxtX4-Description1   {grid-area: 2 / 2;}

.TxtX4-Description2   {grid-area: 3 / 2;}

.TxtX4-Description3   {grid-area: 2 / 3;}

.TxtX4-Description4   {grid-area: 3 / 3;}

/***Footer***/

.mainFooter {
    height: 40vh;
    display: block;
    padding: 2vw 4vw;
    background-color: #1D1D1F;
    color: #FFF;
}

.Footer-Content {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-around;
    align-items: flex-start;
    color: #FFF;
}

.Footer-titre   {
    height: 70px;
    width: 100%;
}

.Footer-titre h2    {
    font-size: 2.5em;
    font-family: "Space-Age", sans-serif;
}

.Footer-credit  {line-height: 1.5; display: flex; flex-direction: column;}

.Footer-credit a    {margin-top: 7px;}

.Footer-colomnItems  {
    width: 23%;
    height: 100%;
}

.Footer-Content h3   {
    font-family: "Nexa-Heavy", sans-serif;
    font-size: 1.1em;
}

.Footer-Content h4  {
    font-family:  "Nexa-Heavy", sans-serif;
    font-size: 1em;
}

.Footer-Content a   {
    font-family:  "Nexa-Light", sans-serif;
    font-size: 1em;
    line-height: 1.4;
    color: #FFF;
}

.Footer-Content p {
    font-size: 1em;
    font-family: "Nexa-Light", sans-serif;
}

.Footer-space   {margin-top: 14px;}

.Footer-Content h3  {margin-bottom: 5px;}

/***CAR***/

/***Header***/

.CAR-Header  {
    height: 90vh;
    width: 100vw;
}

.CAR-HeaderBottomObject  {object-position: bottom;}

.CAR-IMGheader  {
    height: 100%;
    width: 100%;
    object-fit: cover;
}

/***Texte introductif***/

.CAR-Txt   {
    height: 35vh;
    width: 100vw;
    display: flex;
    justify-content: center;
    align-items: center;
}

.CAR-TxtX4   {
    height: 70vh;
    margin: 5vh 0;
}

.CAR-item   {
    width: 80vw;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
}

.CAR-item h2    {font-size: 1.9em; font-family: "Nexa-Black", sans-serif; margin-bottom: 20px;}

.CAR-item p    {font-size: 1.4em; line-height: 30px; font-family: "Nexa-Regular", sans-serif;}

.CAR-TitreGalerie   {height: auto; width: 80vw;}

.CAR-TitreGalerie h2   {
    text-align: left;
    font-size: 1.9em; 
    font-family: "Nexa-Black", sans-serif; 
    margin-bottom: 3vh;
}

/***Image en largeur***/

.CAR-MarginSide {
    height: auto;
    width: 100vw;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    flex-wrap: nowrap;
}

.CAR-ImgFullWidth   { 
    display: block;
    height: 80vh;
    width: 80vw;
    object-fit: cover;
    margin-bottom: 3vh;
}

.CAR-ImgFullWidthThin   {
    display: block;
    height: 40vh;
    width: 80vw;
    object-fit: cover;
    margin: 3vh 0;
}

/***GRID***/

.CAR-Grid   {height: auto; width: 80vw; display: grid; grid-gap: 3vh;}

.CAR-Grid img  {object-fit: cover; height: 100%; width: 100%;}

.CAR-grid1  {

    grid-template-columns: 1fr 1fr;
    grid-template-rows: 26vh 12vh 46vh;
    margin-bottom: 3vh;
}

.CAR-grid2  {

    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr 1fr;
    margin: 3vh 0;
}

.CAR-grid2 img  {height: 30vw;}

.CAR-grid3  {

    grid-template-columns: 1fr 1fr 1fr 1fr;
    grid-template-rows: 1fr;
    margin: 3vh 0;
}

.CAR-grid4  {

    grid-template-columns: 0.3fr 0.3fr 0.4fr;
    grid-template-rows: 1fr;
    margin-bottom: 3vh;
}

.CAR-grid4Slim   {

    grid-template-columns: 0.33333fr 0.33333fr 0.33333fr;
    grid-template-rows: 1fr;
    margin-bottom: 3vh;
}

.CAR-grid4Bis  {

    grid-template-columns: 0.5fr 0.5fr 1fr;
    grid-template-rows: 1fr;
    margin-bottom: 3vh;
}

.CAR-grid5  {

    grid-template-columns: 0.7fr 0.3fr;
    grid-template-rows: 1fr;
    margin-bottom: 3vh;
}

.CAR-grid5Height    {

    grid-template-columns: 0.7fr 0.3fr;
    grid-template-rows: 1fr;
    margin-bottom: 3vh;
}

.CAR-grid5Revers    {

    grid-template-columns: 0.3fr 0.7fr;
    grid-template-rows: 1fr;
    margin-bottom: 3vh;
}

.CAR-grid5Equal   {

    grid-template-columns: 0.5fr 0.5fr;
    grid-template-rows: 1fr;
    margin-bottom: 3vh;
}

.CAR-grid6  {

    grid-template-columns: 0.25fr 0.5fr 0.25fr;
    grid-template-rows: 1fr;
    margin-bottom: 3vh;
}

.CAR-grid7  {
 
    grid-template-columns: 0.4fr 0.6fr;
    grid-template-rows: 0.5fr 0.5fr;
    margin-bottom: 3vh;
}

@media not all and (min-resolution:.001dpcm) { @media {

.CAR-grid1  {height: 90vh;}

.CAR-grid2  {height: 61.8vw;}

.CAR-grid2 img  {height: 30vw;}

.CAR-grid3  {height: 25vw;}

.CAR-grid4  {height: 25vw;}

.CAR-grid4Slim   {height: 15vw;}

.CAR-grid4Bis  {height: 15vw;}

.CAR-grid5  {height: 25vw;}

.CAR-grid5Height    {height: 35vw;}

.CAR-grid5Revers    {height: 25vw;}

.CAR-grid5Equal   {height: 25vw;}

.CAR-grid6  {height: 25vw;}

.CAR-grid7  {height: 50vh;}
    
.CAR-MarginSide   {min-height: 100%;}
    
}}

@media screen and (max-width: 720px) and (min-width: 320px)   {
    
    /***General***/
    
    h3  {font-size: 1.6em;}

    p   {font-size: 1em; line-height: 25px;}
    
    button  {
    font-size: 0.7em;
    border-radius: 10px;
    }
    
    /***NavBar***/
    
    .mainNavbar {
        flex-direction: column;
        justify-content: flex-end;
        align-items: flex-start;
    }
    
    .mainNavbar ul li  {
        margin-bottom: 2vh;
        margin-left: 2vh;
    }
    
    .mainNavbar ul li a {font-size: 1.1em;}
    
    .mainNavbar ul  {margin: 5vh;}
    
    .NavbarTitreSection {font-size: 1.7em;}
    
    .open-btn   {
        right: 5px;
        top: 40px;
    }
    .close-btn  {
        right: 40px;
        top: 40px;
    }
    .open-btn:hover  {
        transition: none;
        transform: none;
        filter: none;
    }
    .close-btn:hover {
        transition: none;
        transform: none;
    }
    
    .lite-text  {
        display: none;
    }
    
    /***TxtX4***/
    .CAR-TxtX4   {height: 120vh;}
    
    .TxtX4  {
        grid-template-columns: 1fr 37vw 37vw 1fr;
        grid-template-rows: 7vw auto auto auto auto;
    }

    .TxtX4 h3   {
        grid-column: 2 / span 2;
        grid-row: 1;
        font-family: "Nexa-Black", sans-serif;
    }

    .TxtX4 p    {
        font-family: "Nexa-Regular", sans-serif;
    }

    .TxtX4-Description1   {
        grid-column: 2 / span 2; 
        grid-row: 2;
    }

    .TxtX4-Description2   {
        grid-column: 2 / span 2; 
        grid-row: 3;
    }

    .TxtX4-Description3   {
        grid-column: 2 / span 2; 
        grid-row: 4;
    }

    .TxtX4-Description4   {
        grid-column: 2 / span 2; 
        grid-row: 5;
    }
        
    /***footer***/
    
    .Footer-Content {
        flex-direction: column;
        width: 80vw;
    }
    
    .Footer-titre   {
        margin: 10px 0px;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    
    .mainFooter {
        height: 100vh;
        display: flex;
        flex-direction: column;
        align-items: center;
    }
    
    .Footer-colomnItems  {
        width: 100%;
        margin-bottom: 20px;

    }
    
    .CAR-Txt   {
        height: 100vh;
    }
    
    .CAR-TxtHigh    {
        height: 150vh;
    }
    
    .CAR-MarginSide {
        
    }
}

@media screen and (max-height: 500px) and (min-height: 200px)   {
    .CAR-TxtX4   {
    height: 100vh;

}
}

/**Version mobile paysage**/

@media (orientation: landscape) and (max-device-width : 812px) {
    
    .CAR-Txt   {
        height: 100vh;
    }
    
    /***Barre de navigation***/
    .NavbarTitreSection {font-size: 1.5em;}
    .mainNavbar {justify-content: flex-start; flex-direction: row;}
    .mainNavbar ul  {height: 85vh; margin-left: 7vw;}
    .mainNavbar ul li a {font-size: 0.9em;}
    .lite-text  {display: none;}
    
    /***Footer***/
    .mainFooter {
        height: 100vh;
        width: 92vw;
    }
    .Footer-Content {
        flex-direction: row;
    }
    
}

/* Version 2.5 
By l-ct.fr
0x b0 29 12 52 e0 cb 0c b3 0f 1c */