:root {
    --small-margin: 40px;
    --medium-margin: 70px;
    --ltspace: 70px;
    --mdspace: 130px;
    --bigspace: 180px;
    --side-base: 7vw;
    --hauteurSwiper: 30vw;
    --Blanc: #FFFFFF;
    --Rouge: #D41528;
    --Gris-Fonce: #1D1D1B;
}


::selection {
    background-color: var(--Rouge);
    color: white;
}

/* Firefox */
::-moz-selection {
    background-color: var(--Rouge);
    color: white;
}

/* width */
::-webkit-scrollbar {
    width: 2px;
}

/* Track */
::-webkit-scrollbar-track {
    background: var(--Blanc);
}

/* Handle */
::-webkit-scrollbar-thumb {
    background: var(--Rouge);
    border-radius: 10px;
}

/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
    background: var(--Rouge);
    width: 2px;
}
body{
    background: white;
}
#container{
    background: white;
    padding-left: 0;
    padding-right: 0;
    padding-top: 180px;
}
* {
    font-family: "tenon", sans-serif;
    font-weight: 300;
    color: var(--Gris-Fonce);
}


/* Texte principaux */

h1, h2, h3{
    color: var(--Rouge, #D41528);
    font-style: normal;
    font-weight: 700;
    text-transform: uppercase;
}

h1{
    font-size: 156px;
    line-height: 98%; /* 152.88px */
    letter-spacing: -1.56px;
    margin-bottom: 10px;
}

h2{
    font-size: 62px;
    line-height: 108%; /* 66.96px */
    margin: 0;
}

h3{
    font-size: 22px;
    line-height: 108%; /* 23.76px */
    margin: 42px 0 21px;
}

p, li{
    font-size: 22px;
    font-style: normal;
    font-weight: 300;
    line-height: 123%; /* 27.06px */
    margin: 4px 0 14px 0;
}

.avec_ul ul{
    list-style: square;
}

.avec_ul ul li::marker {
    color: var(--Rouge); /* puce rouge */
}

.avec_ul ul li{
    margin: 0 0 8px 30px;
}


/*
    base composants
*/

/* section général */

section{
    padding: 0px var(--side-base);
}

.section_simple{
    padding-top: 110px;
}

.section_simple h2{
    max-width: 500px;
    margin-bottom: 16px;
}

.section_simple>p{
    max-width: 65%;
}

.no_marge{
    padding: 0px;
}

/* titre a cote du contenu */
.titre_cote{
    padding: 70px var(--side-base);
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 10px 39px;
    align-items: start;
}

.titre_cote h2{
    margin-bottom: 29px;
}

.titre_cote>div:last-of-type{
    grid-area: 1 span / 2 span;
}


/****************************/


/* Header */

#header {
    padding: 57px var(--side-base);
    z-index: 9999;
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: fit-content;
    background-color: var(--Blanc);
    transition: transform 0.3s ease;
}

#header.hide {
    transform: translateY(-102%);
}

.txt_logo{
    fill: var(--Gris-Fonce);
}

.icon_logo{
    fill: var(--Rouge);
}

.nav-open .txt_logo, .nav-open .icon_logo{
    fill: var(--Blanc);
}

#site-title{
    height: 35px;
}

#site-title a {
    height: fit-content;
    font-size: 0;
}

#menu .menu>li>a{
    color: var(--Rouge);
    font-size: 25px;
    font-style: normal;
    font-weight: 500;
    line-height: 123%; /* 30.75px */
    text-transform: uppercase;
    margin-left: 40px;
}

#menu .menu>li.current_page_item>a{
    color:var(--Rouge);
}

#menu.toggled .menu>li.current_page_item>a{
    color:var(--Blanc);
}


#main-menu-underline {
    position: absolute;
    top: 0;
    height: 22px;
    background-color: var(--Rouge);
    transition: all 0.3s ease;
    transform-origin: left;
    pointer-events: none;
    box-sizing: border-box;
    border-left: solid 40px var(--Blanc);
}

/* bougie */

.bougies{
    display: none;
    margin: auto auto 0;
}

.bougies>div{
    display: flex;
    flex-direction: column;
    align-items: center;
}

.bougies div{
    color: var(--Blanc);
    font-weight: 700;
    font-size: 80px;
}

.flame {
    height: 40px;
    width: 20px;
    background: var(--Blanc);
    border-radius: 50% 50% 40% 40% / 60% 60% 40% 40%;

    /* centrer l’animation */
    transform-origin: bottom center;

    /* animation de vacillement */
    animation: flame-skew 2s ease-in-out infinite;
}

@keyframes flame-skew {
    0%   { transform: skewX(0deg) scaleY(1); }
    25%  { transform: skewX(10deg) scaleY(1.05); }
    50%  { transform: skewX(-8deg) scaleY(0.95); }
    75%  { transform: skewX(6deg) scaleY(1.03); }
    100% { transform: skewX(0deg) scaleY(1); }
}


/* Accueil */

.slider-img{
    pointer-events: none;
}

.swiper-slide{
    background-color: var(--Gris-Fonce);
}

.swiper-slide img{
    aspect-ratio: 7 / 5;
    width: 100%;
    max-width: 100vw;
}

.swiper-slide a, .swiper-slide picture{
    display: flex;
}

.swiper_historique .swiper-slide a{
    display: inline;
    color: var(--Rouge);
}

.landing{
    margin-top: 65px;
}

.landing>div{
    display: flex;
}

.landing>div svg{
    min-width: 114px;
    animation: animFleche 3s infinite ; /* durée totale 3s */
    margin: auto 0 0 5vw;
}
/* Animation en 3 étapes */
@keyframes animFleche {
    0%, 100% {
        transform: translateY(-70%);
    }
    70% {
        transform: translateY(0%);
    }
}

.landing video{
    width: 100%;
    margin-top: 100px;
}

.liens_accueil{
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 10px 39px;
    margin-top: 140px;
}

.liens_accueil a{
    display: block;
    color: var(--Blanc, #FFF);
    font-size: 43px;
    font-style: normal;
    font-weight: 700;
    line-height: 108%; /* 46.44px */
    text-transform: uppercase;
    background-color: var(--Rouge);
    padding: 35px 40px 40px;
}

@media (min-width: 1100px) {
    .liens_accueil a:hover {
        transform: translateY(-10px);
    }
}

/* Historique */

.historique{
    display: flex;
    flex-direction: column;
    gap: 90px;
    margin-top: 60px;
}

.card{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    position: relative;
    gap: 0 82px;
}

.card > div {
    flex: 1;          /* prend tout l'espace disponible également */
    min-width: 0;     /* pour éviter que le contenu ne casse le flex */
    height: fit-content;
    max-width: 100%;
}

.card h2{
    font-size: 46px;
    margin-bottom: 55px;
}

.card h3{
    color: var(--Gris-Fonce);
    margin: 7px 0 22px;
    text-transform: none;
}

.small_carrousel{
    display: flex;       /* pour que le swiper prenne toute la hauteur */
    align-items: stretch;
    grid-area: 2 / 1;
}

.swiper_complexe .swiper-wrapper{
    width: 100%;
    aspect-ratio: 7 / 5;
    height: 100%;
    max-height: var(--hauteurSwiper);
}

.swiper_complexe .swiper-slide{
    width: 100%;
    aspect-ratio: 7 / 5;
    height: var(--hauteurSwiper);
    max-height: var(--hauteurSwiper);
    overflow: hidden;
}

.swiper_complexe .swiper-slide img {
    width: 100%;
    height: 100%;
    display: block;
}

.swiper_complexe .swiper-slide video {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
}

.swiper_complexe .legende{
    background-color: var(--Rouge);
    position: relative;
    padding: 20px 22px 22px 32px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.swiper_complexe .bull{
    background-color: var(--Rouge);
    height: 32px;
    width: 32px;
    transform: rotate(45deg);
    position: absolute;
    z-index: 10;
    top: -15px;
    left: 32px;
}

.swiper_complexe .legende p{
    color: var(--Blanc, #FFF);
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: 123%; /* 22.14px */
    margin: 0;
}

.projets .legende p a{
    color: var(--Blanc);
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 2px;
}

.fleche_swp{
    display: flex;
}

.fleche_swp .swiper-button-prev, .fleche_swp .swiper-button-next  {
    position: static;
    margin: 0 !important;
}

.fleche_swp .swiper-button-prev svg path, .fleche_swp .swiper-button-next svg path{
    background-color: var(--Rouge);
    color: var(--Rouge);
    position: static;
}

.fleche_swp .swiper-button-prev:hover svg{
    transform: translateX(-10%);
}

.fleche_swp .swiper-button-next:hover svg{
    transform: translateX(10%);
}

.historique .swiper_complexe .swiper-button-prev, .historique .swiper_complexe .swiper-button-next  {
    height: 30px;
    width: 36px;
}


.swiper.swiper_historique{
    display: flex;
    position: relative;
    padding-left: 100px;
}

.swiper_historique .fleche_swp{
    position: absolute;
    left: 0;
    height: 100%;
    width: 100%;
}

.swiper_historique .fleche_swp div:first-child::after{
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 66px;
    z-index: -1;
    background-color: var(--Blanc);
}

.swiper_historique.swiper_complexe .fleche_swp>div{
    width: 33px;
    height: 35px;
    background-color: var(--Blanc);
}

.swiper_historique .fleche_swp .swiper-button-prev svg path, .swiper_historique .fleche_swp .swiper-button-next svg path {
     color: var(--Blanc);
    position: static;
}

.swiper_historique .swiper-wrapper{
    aspect-ratio: unset;
    height: unset;
    max-height: unset;
}

.swiper_historique .swiper-slide{
    aspect-ratio:unset;
    height: unset;
    max-height: unset;
}

.iv-description{
    background-color: var(--Rouge);

}
.iv-total{
    margin-right: 30px;
}
.iv-total, .iv-img-alt{
    color: var(--Blanc);
}

.invisible {
    display: none;
}


.galerie_grill_9{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 19px;
    margin-top: 4px;
    grid-area: 2 span / 1 span;
}

.galerie_grill_9 img{
    object-fit: cover;
    object-position: center;
    width: 100%;
    aspect-ratio: 9 / 7;
    max-height: 334px;
    max-width:430px !important;
    cursor: pointer;
}

.galerie_grill_9 a{
    height: fit-content;
}

.galerie_total{
    font-weight: 700;
    color: var(--Rouge);
    padding: 3px 5px;
    margin-bottom: 10px;
}


/* Retrospective 2025 */

.autre_post {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    margin: 60px 0 30px 0;
    gap: 40px;
}

.nouveaute_item img{
    aspect-ratio: 1 / 1;
}

.nouveaute_item:hover img{
    transform: rotate(3deg);
}

.nouveaute_item h3{
    color: var(--Rouge, #D41528);
    font-size: 46px;
    font-style: normal;
    font-weight: 700;
    line-height: 104%; /* 47.84px */
    text-transform: uppercase;
    margin: 37px 0 0 0;
}

/*.nouveaute_item:hover h3{*/
/*    transform-origin: top right;*/
/*    transform: rotate(-3deg);*/
/*}*/


/*slider*/

.projets{
    --hauteurSwiper: 45vw;
    max-width: 2000px;
    margin-top: 50px;
}

.projets{
    position: relative;
    width: 100%;
    padding-bottom: 200px;
}

.projets .legende{
    box-sizing: border-box;
    background-color: var(--Rouge);
    position: absolute;
    padding: 40px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    right: 0;
    z-index: 10;
    top: 60px;
    width: 42vw;
    max-width: 500px;
    min-height: 70%;
}

.projets .swiper_projets{
    width: calc((var(--hauteurSwiper) * 7) / 5);
    margin-left: unset;
    background-color: var(--Gris-Fonce);
}


.projets .bull{
    background-color: var(--Rouge);
    height: 32px;
    width: 32px;
    transform: rotate(45deg);
    position: absolute;
    z-index: 10;
    top: 32px;
    left: -15px;
}

.projets .legende h3{
    color: var(--Blanc);
    font-size: 26px;
    line-height: 104%; /* 27.04px */
    margin: 0 0 10px 0;
}

.projets .legende p{
    color: var(--Blanc, #FFF);
    font-size: 20px;
    font-style: normal;
    font-weight: 300;
    line-height: 123%; /* 24.6px */
}

.projets .legende .action{
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    width: 100%;
}

.projets .fleche_swp .swiper-button-prev, .projets .fleche_swp .swiper-button-next{
    height: 35px;
    width: 35px;
}

.projets .action a:hover svg{
    transform: translate(14% , -14%);
}

@media (min-width: 1950px) {
    .projets{
        --hauteurSwiper: 750px;
    }

    .projets .swiper_projets{
        margin-left: auto;
    }
}


    /* 2026 */

.galerie_cote{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}

.galerie_cote img{
    object-fit: cover;
    object-position: center;
    width: 100%;
    aspect-ratio: 7 / 5;
}

.swiper_historique .swiper-slide{
    background-color: var(--Blanc);
}


/* Page Nouveaute */

.titre_retour{
    display: flex;
}

.titre_retour>h1{
    margin-bottom: 54px;
}

.titre_retour a{
    padding: 22px 54px 20px 0;
}

.swiper_nouveaute{
    --hauteurSwiper: 50vw;
}

.swiper_nouveaute .bull, .swiper_nouveaute .legende, .swiper_nouveaute .fleche_swp .swiper-button-prev svg path, .swiper_nouveaute .fleche_swp .swiper-button-next svg path{
    background-color: var(--Gris-Fonce);
    color: var(--Gris-Fonce);
}

.galerie_grill{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    padding: 60px var(--side-base);
}

.galerie_grill img{
    aspect-ratio: 7 / 5;
}

.galerie_grill video{
    aspect-ratio: 7 / 5;
    object-fit: cover;
    object-position: center;
    width: 100%;
}

/* Si tu utilises le plein écran natif du navigateur */
.galerie_grill video:-webkit-full-screen {
    object-fit: contain;
}
.galerie_grill video:-moz-full-screen {
    object-fit: contain;
}
.galerie_grill video:-ms-fullscreen {
    object-fit: contain;
}
.galerie_grill video:fullscreen {
    object-fit: contain;
}

.privacy-policy .content-page{
    padding: 20px var(--side-base) 0;
}

.textes_nouveaute{
    margin: 0 calc((100vw - (var(--side-base) * 2) - 80px) / 3) 0 106px;
}

.textes_nouveaute h2{
    margin-bottom: 16px;
}

strong a{
    font-weight: bold;
    text-decoration: underline;
}

/* Cookie */

.cookie-popup {
    position: fixed;
    inset: auto auto 0 0;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 9999;
    visibility: hidden;
    opacity: 0;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}
.cookie-popup.show {
    visibility: visible;
    opacity: 1;
}
.cookie-popup-content {
    background: var(--Rouge);
    padding: 2rem;
    width: 100%;
    max-width: 600px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.2);
}
.cookie-popup-content h3 {
    margin-top: 0;
    color: var(--Blanc);
}
.cookie-popup-content p {
    color: var(--Blanc);
    margin: 1rem 0;
    font-size: 0.95rem;
}
.cookie-popup-content button {
    background: var(--Blanc);
    color: var(--Rouge);
    border: none;
    font-family: "tenon", sans-serif;
    font-weight: 500;
    padding: 0.7rem 1.5rem;
    cursor: pointer;
    font-size: 1rem;
}
.cookie-popup-content button:hover {
    transform: translateY(-5px);
}


/* Footer */

#footer{
    background-color: var(--Gris-Fonce);
    color: var(--Blanc);
    padding: 64px var(--side-base);
}

#footer .contact_footer{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 40px 100px;
    margin-bottom: 75px;
}

#footer .contact_footer svg{
    min-width: 250px;
    width: 30vw;
    max-width: 318px;
    margin-top: 5px;
}

#footer .contact_footer>div{
    display: flex;
    flex-direction: column;
    margin: auto 0px auto auto;
}

#footer .contact_footer>div a{
    color: var(--Blanc);
    text-align: right;
    font-size: 44px;
    font-style: normal;
    font-weight: 300;
    line-height: 116%; /* 51.04px */
    text-transform: uppercase;
}

#footer .contact_footer > div a:hover {
    transform: translateX(-5px);
}


#footer #copyright{
    font-size: 13px;
    font-style: normal;
    font-weight: 300;
    line-height: normal;
    color: var(--Blanc);
}

#footer #copyright a:visited, #footer #copyright a, #footer #copyright .lien_footer, #footer #copyright span{
    color: var(--Blanc);
}

#footer #copyright .realisation-break a{
    display: inline-flex;
}

#footer #copyright .realisation-break a>svg{
    transform: translateY(3px);
    fill: var(--Blanc);
}


/******** test light box **************************/

/* Overlay général */
.lightbox_overlay {
    position: fixed;
    top:0; left:0;
    width:100%; height:100%;
    background: rgba(0,0,0,0.9);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 9999;
}

/* Conteneur du slider */
.lightbox_slider {
    width: fit-content;
    margin: auto;
    max-width: 1000px;
    position: relative;
    text-align: center;
}

/* Slide */
.slide {
    display: none;
    width: fit-content;
    margin: auto;
}
.slide.active {
    display: block;
    animation: fade 0.4s ease;
}

/* Image */
.slide img {
    max-width: 100%;
    max-height: 80vh;
    margin: auto;
}

.slide video {
    max-width: 100%;
    max-height: 80vh;
    margin: auto;
}

.lightbox_overlay {
    position: fixed;
    top:0; left:0; right:0; bottom:0;
    background: rgba(0,0,0,0.9);
    z-index: 9999;
    display:flex;
    align-items:center;
    justify-content:center;
}

.lightbox_slider {
    position: relative;
    z-index: 1;
}

.lightbox_overlay video {
    max-width: 90%;
    max-height: 90%;
    pointer-events: auto; /* permet les controls */
}

/* Caption */
.caption {
    color: #fff;
    font-size: 0.95em;
    margin: 6px auto auto;
    padding: 10px 20px;
    opacity: 0.9;
    width: fit-content;
    background-color: var(--Rouge);
}

/* Navigation */
.lightbox_nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    font-size: 2em;
    color: white;
    cursor: pointer;
    user-select: none;
    padding: 10px;
    z-index: 5;
}

.lightbox_prev { left: 15px; }
.lightbox_next { right: 15px; }

/* Croix de fermeture */
.lightbox_close {
    position: absolute;
    top: 15px;
    right: 20px;
    font-size: 2.2em;
    color: white;
    cursor: pointer;
    z-index: 10000;
    line-height: 1;
}

/* Animation */
@keyframes fade {
    from {opacity: 0;}
    to {opacity: 1;}
}

/****
******************************************
 */


/* Responsive */


@media (max-width: 1300px) {
    h1{
        font-size: 120px;
    }

    .titre_retour>a{
        height: 90px;
        box-sizing: unset;
        padding: 11px 30px 8px 0;
    }

    .titre_retour>a svg{
        height: 90px;
        width: 80px;
    }

    .textes_nouveaute{
        margin: 0 calc((100vw - (var(--side-base) * 2) - 80px) / 3) 0 110px;
    }

    .projets{
        padding-bottom: 350px;
        --hauteurSwiper: 38vw;
    }

}

@media (min-width: 1100px){
    .titre_cote .paragraphe{
        width: 80%;
        max-width: 850px;
    }
}

@media (max-width: 1100px) {
    h1{
        font-size: 90px;
    }

    .titre_retour>a{
        height: 60px;
        padding: 11px 30px 8px 0;
    }

    .titre_retour>a svg{
        height: 60px;
        width: 40px;
    }

    /* titre a cote du contenu */
    .titre_cote{
        grid-template-columns: 1fr;
    }

    .titre_cote h2{
        margin-bottom: 25px;
    }

    .titre_cote>div{
        grid-area: 1 span / 1 span;
    }

    /* 2025 */

    .autre_post, .galerie_grill {
        grid-template-columns: repeat(2, 1fr);
    }

    .projets{
        padding-bottom: 0;
    }

    .projets .legende{
        width: 30vw;
    }

    /* Accueil */

    .liens_accueil{
        grid-template-columns: 1fr 1fr;
        column-gap: 10px;
    }

    .liens_accueil a:last-of-type{
        grid-area: 1 span / 2 span;
    }

    /* nouveaute */

    .swiper_nouveaute{
        --hauteurSwiper: calc((86vw * 5) / 7);
    }


    .textes_nouveaute{
        margin: 0 0 0 70px;
    }

    /* projet slider */

    .projets{
        --hauteurSwiper: calc((var(--hauteurSwiper) * 5) / 7);
    }

    .projets{
        position: relative;
        width: 100%;
    }

    .projets .legende{
        position: relative;
        box-sizing: border-box;
        background-color: var(--Rouge);
        padding: 40px 29px 20px;
        display: flex;
        flex-direction: row;
        gap: 25px;
        justify-content: space-between;
        align-items: stretch;
        right: 0;
        z-index: 10;
        top: 80%;
        width: 100%;
        max-width: unset;
        min-height: 200px;
        height: fit-content;
    }

    .projets .bull{
        top: -15px;
        left: unset;
        right:32px;
    }

    .projets .legende>.action{
        flex-direction: column;
        width: auto;
        align-items: center;
    }

    .projets .legende .fleche_swp>div{
        height: 20px;
        width: 20px;
        display: flex;
    }

    .projets .legende .fleche_swp>.swiper-button-prev svg{
        margin: 0 auto 0 0;
        width: 12px;
    }

    .projets .legende .fleche_swp>.swiper-button-next svg{
        margin: 0 0 0 auto;
        width: 12px;
    }

    .projets .legende .btn-lien{
        margin: 0 3px 22px auto;
    }

    .projets .legende .btn-lien{
        height: 19px;
        width: 19px;
    }

}

@media (max-width: 980px) {
    #header {
        padding: 42px var(--side-base);
    }

    #branding{
        height: 22px;
    }

    #site-title svg{
        height: 28px;
        width: 148px;
    }

    #menu #main-menu-underline {
        display: none;
    }

    #menu #main-menu-container{
        background-color: var(--Rouge);
        max-height: 100svh;
    }

    .menu-menu-1-container{
        margin: auto auto 15svh var(--side-base);
    }

    #menu .menu{
        align-items: flex-start;
        gap: 20px;
    }

    #menu .menu>li{
        width: 100%;
    }

    #menu .menu>li>a {
        color: var(--Blanc);
        margin: 0;
        width: 100%;
    }

    #close-bar1, #close-bar2, #close-bar3 {
        background-color: var(--Rouge);
    }

    .toggled #close-bar1, .toggled #close-bar2, .toggled #close-bar3 {
        background-color: var(--Blanc);
    }

    .bougies{
        display: flex;
        margin: auto auto 0;
    }

    #container {
        padding-top: 106px;
    }

    /* slider */
    .titre_classique{
        margin-top: 10px;
    }

    .historique{
        --hauteurSwiper: calc((86vw * 5) / 7);
        gap: 25px;
    }

    .historique>.card {
        grid-template-columns: 1fr;
        gap: 20px;
        margin: 0 0 20px !important;
    }

    .galerie_grill_9{
        grid-area: 2  / 1 ;
    }

    .card > div:first-child {
    }

    .h2_invisible{
        display: block;
    }

    .small_carrousel {
        width: 100%; /* plein écran sur mobile */
        flex: 0 0 calc((var(--hauteurSwiper) * 5) / 7);
        grid-area: 3  / 1 ;
    }


    /* slider */

    .projets .legende h3{
        font-size: 22px;
    }

    .projets .legende p{
        font-size: 18px;
    }
}


@media (max-width: 850px) {

    h1{
        font-size: 70px;
    }

    .titre_retour>a{
        height: 48px;
        padding: 8px 30px 8px 0;
    }

    .titre_retour>a svg{
        height: 48px;
        width: 30px;
    }

    /* Accueil */

    .liens_accueil{
        grid-template-columns: 1fr;
    }

    .liens_accueil a{
        font-size: 30px;
        padding: 35px 40px 35px;
    }

    .liens_accueil a:last-of-type{
        grid-area: 1 span / 1 span;
    }

    .textes_nouveaute{
        margin: 0 0 0 60px;
    }
}

@media (max-width: 750px) {

    h2{
        font-size: 40px;
    }

    p, li, h3{
        font-size: 20px;
    }

    /* 2025 */

    .section_simple p{
        max-width: 100%;
    }

    .autre_post {
        grid-template-columns: repeat(1, 1fr);
        margin: 30px 0 20px 0;
        gap: 40px;
    }

    .galerie_grill {
        grid-template-columns: repeat(1, 1fr);
        margin: 30px 0 50px 0;
        gap: 8px;
    }

    .nouveaute_item h3{
        font-size: 40px;
        margin: 20px 0 0 0;
    }

    /* 2026 */

    .galerie_cote{
        grid-template-columns: 1fr;
    }

    /* Footer */

    #footer .contact_footer>div{
        margin: 0;
    }

    #footer .contact_footer>div a{
        text-align: left;
    }

    #footer .contact_footer > div a:hover {
        transform: translateX(5px);
    }

}


@media (max-width: 480px) {

    #container{
        padding-bottom: 45px;
    }

    .titre_cote, .section_simple{
        padding: 30px var(--side-base);
    }

    .liens_accueil{
        margin-top: 40px;
    }

    .historique .card h2{
        font-size: 34px;
    }

    h1{
        font-size: 40px;
    }

    h2{
        font-size: 26px;
    }

    p, li, h3{
        font-size: 18px;
    }

    .titre_retour>a{
        padding: 4px 15px 4px 0;
    }

    .titre_retour>a svg{
        height: 60px;
    }

    .landing svg, .titre_retour>a{
        display: none;
    }

    .landing div h1{
        max-width: 80%;
    }

    .landing video{
        margin-top: 40px;
    }

    .projets .legende{
        padding: 30px 30px 10px 24px;
        gap: 10px;
    }

    .card h2{
        margin-bottom: 30px;
    }

    .card h3{
        margin: 10px 0 22px 80px;
    }

    .swiper.swiper_historique {
        padding-left: 0px;
    }

    .swiper_historique .fleche_swp div:first-child::after{
        display: none;
    }

    .galerie_grill_9 {
        grid-template-columns: repeat(2, 1fr);
        margin-bottom: 25px;
    }

    .galerie_grill_9 picture:nth-child(8){
        display: none;
    }


    .textes_nouveaute{
        margin: 0;
    }

    .titre_retour>h1{
        margin-bottom: 24px;
    }


    /* Footer */

    #footer .contact_footer>div{
        gap: 8px;
    }

    #footer .contact_footer>div a{
        font-size: 28px;
    }

}







