* {
    margin: 0;
    padding: 0;
}


body{
    overflow-x: hidden;
}

ul, li, a{
    list-style: none;
    text-decoration: none;
    color: inherit;
}

body {
    font-family: 'Atyp Display';
    border: var(--blanc);
}

button{
    appearance: none;
    background: none;
    border: none;
}

h2{
    font-size: clamp(40px, 4.16vw, 63px);
    font-weight: 500;
    line-height: 1.05;
}

h2 span{
    opacity: 0.3;
}


h4{
    font-size: 20px;
    line-height: 1.3;
    font-weight: normal;
}

h4 span{
    font-weight: 500;
}

p{
    font-size: 14.5px;
}

.insta{
    cursor: pointer;
}

@font-face {
    font-family: 'Atyp Display';
    src: 
        url('FlaShine_site/fonts/AtypDisplay-Regular.woff2') format('woff2'),
        url('FlaShine_site/fonts/AtypDisplay-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Atyp Display';
    src: 
        url('FlaShine_site/fonts/AtypDisplay-ThinItalic.woff2') format('woff2'),
        url('FlaShine_site/fonts/AtypDisplay-ThinItalic.woff') format('woff');
    font-weight: 100;
    font-style: italic;
}

@font-face {
    font-family: 'Atyp Display';
    src: 
        url('FlaShine_site/fonts/AtypDisplay-Semibold.woff2') format('woff2'),
        url('FlaShine_site/fonts/AtypDisplay-Semibold.woff') format('woff');
    font-weight: 600;
    font-style: normal;
}

@font-face {
    font-family: 'Atyp Display';
    src: 
        url('FlaShine_site/fonts/AtypDisplay-BoldItalic.woff2') format('woff2'),
        url('FlaShine_site/fonts/AtypDisplay-BoldItalic.woff') format('woff');
    font-weight: bold;
    font-style: italic;
}

@font-face {
    font-family: 'Atyp Display';
    src: 
        url('FlaShine_site/fonts/AtypDisplay-Thin.woff2') format('woff2'),
        url('FlaShine_site/fonts/AtypDisplay-Thin.woff') format('woff');
    font-weight: 100;
    font-style: normal;
}

@font-face {
    font-family: 'Atyp Display';
    src: 
        url('FlaShine_site/fonts/AtypDisplay-Italic.woff2') format('woff2'),
        url('FlaShine_site/fonts/AtypDisplay-Italic.woff') format('woff');
    font-weight: normal;
    font-style: italic;
}

@font-face {
    font-family: 'Atyp Display';
    src: 
        url('FlaShine_site/fonts/AtypDisplay-SemiboldItalic.woff2') format('woff2'),
        url('FlaShine_site/fonts/AtypDisplay-SemiboldItalic.woff') format('woff');
    font-weight: 600;
    font-style: italic;
}

@font-face {
    font-family: 'Atyp Display';
    src: 
        url('FlaShine_site/fonts/AtypDisplay-Light.woff2') format('woff2'),
        url('FlaShine_site/fonts/AtypDisplay-Light.woff') format('woff');
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: 'Atyp Display';
    src:
        url('FlaShine_site/fonts/AtypDisplay-Medium.woff2') format('woff2'),
        url('FlaShine_site/fonts/AtypDisplay-Medium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
}

@font-face {
    font-family: 'Atyp Display';
    src: 
        url('FlaShine_site/fonts/AtypDisplay-LightItalic.woff2') format('woff2'),
        url('FlaShine_site/fonts/AtypDisplay-LightItalic.woff') format('woff');
    font-weight: 300;
    font-style: italic;
}

@font-face {
    font-family: 'Atyp Display';
    src: 
        url('FlaShine_site/fonts/AtypDisplay-Bold.woff2') format('woff2'),
        url('FlaShine_site/fonts/AtypDisplay-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
}

@font-face {
    font-family: 'Atyp Display';
    src:
        url('FlaShine_site/fonts/AtypDisplay-MediumItalic.woff2') format('woff2'),
        url('FlaShine_site/fonts/AtypDisplay-MediumItalic.woff') format('woff');
    font-weight: 500;
    font-style: italic;
}

:root {
    --noir-bleu : #282830;
    --noir : #212121;
    --noir-dark : #1B1B1B;
    --noir-light: #2E2E2E;
    --orange: #FF4E2A;
    --gris-dark: #6e6d6d;
    --gris-clair : #EEECEC;
    --gris: #B3B3B3;
    --blanc: #fff;
    --border: #AEAEB2;
    --separator : #60503A;

    --space-xs: 20px;
    --space-s: 35px;
    --space-m: 55px;
    --space-xl: 130px;

    --container-xl :calc(100vw - 130px * 2);
    --container-m : calc(100vw - 235px * 2);

    --bevel-size: 70px;
}

.opacityHidden{
    display: none;
}

.container{
    max-width: 1512px;
}

.white {
    color: var(--gris-clair) !important;
}

.orange {
    color: var(--orange);
}



/*===============================================================================================

            NAVIGATION

===============================================================================================*/

nav {
    position: fixed;
    top: 10px;
    left: 0;
    width: 100vw;
    height: 51px;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;

    font-size: 13px;
    letter-spacing: 0.08em;
}

.navLogo{
    height: 28px;
}

.menuContainer{

    display: flex;
    justify-content: center;
    align-items: center;

    width: calc(100vw - 50px);
    max-width: 460px;
    height: 100%;
}

.menuFirst{

    width: 100%;
    height: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;

    padding: 0 5px 0 10px ;
    color: var(--blanc);
    border-radius: 12px;

    background: rgba(0, 0, 0, 0.1); /* 0.3 d’opacité */
    backdrop-filter: blur(55px);
    -webkit-backdrop-filter: blur(55px); /* Safari */
    box-shadow: 0 0 0 0.3px rgba(141, 141, 141, 0.1);
}

.callNav{
    background-color: var(--orange);
    border: 8px;
    padding: 0 15px;
    cursor: pointer;
    height: calc(100% - 10px);
    border-radius: 5px;   
}

.callNav img{
    margin-top: 90%;
}


/*===============================================================================================

            LOADER

===============================================================================================*/

/* Loader full screen */
#loader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: var(--noir); /* couleur du loader, change si tu veux */
  z-index: 9999;
  animation: slideDown 1.3s ease forwards; /* durée + effet */
}

/* Animation de balayage vertical */
@keyframes slideDown {
  0% {
    transform: translateY(0%);
  }
  100% {
    transform: translateY(-100%);
  }
}



/*===============================================================================================

            HEADER

===============================================================================================*/
.hero {
    position: relative;
    width: 100vw;
    height: 100vh;
    overflow: hidden;
    background-color: lightgray;
    margin-top: -5vh;
}

/* =========================
   TEXTE
========================= */

.hero-text {
    position: absolute;
    z-index: 7;

    top: 48%;
    left: 60%;
    transform: translate(-50%, -50%); /* transform ready pour le parallax */

    display: flex;
    flex-direction: column;
}
.hero-text > :last-child {
    margin-left: -35%;
    margin-top: 10px;
}

.hero-words {
    overflow: hidden;
    height: clamp(55px, 7.8vw, 92px);

    position: relative;
}

.hero-words h1 {
    margin-top: 5px;
    transform: translateY(0);
    opacity: 1;
    transition: margin 1s cubic-bezier(0.77, 0, 0.175, 1), opacity 1s ease;
}

.hero-words.h1-move h1:first-child {
  margin-top: -80px;
}


.hero h1 {
    font-size: clamp(64px, 9.6vw, 106px);
    line-height: 0.8;
    text-transform: uppercase;
    font-style: italic;
    color: var(--blanc);
}

.hero h1 span {
    color: var(--orange);
}

.btn-header{
    position: absolute !important;
    left: 50%;
    transform: translateX(-50%);
    bottom : 50px;
    z-index: 10;
    display: inline-block;
    padding: 12px 30px;
    background: var(--orange);
    color: #fff;
    font-size: 16px;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    overflow: hidden; /* important pour clip-path */
    transition: all 0.3s cubic-bezier(0.22, 1, 0.36, 1);
}

.btn-header:hover {
    background: var(--noir);
}



/* =========================
   IMAGES
========================= */

.hero-img {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%) translateY(0); /* translateY pour parallax */
   /* width: min(1600px, 120vw);*/
    height: auto;
    max-height: 100%;
    object-fit: cover;
    pointer-events: none;
    will-change: transform; /* optimisation GPU */
}

/* =========================
   Z-INDEX / PLANS
========================= */

.hero-back {
    z-index: 5;
}

.hero-middle {
    z-index: 8;
}

.hero-front {
    z-index: 9;
    height: 25%;
}


/*===============================================================================================

            MAIN

===============================================================================================*/

main {
    display: flex;
    flex-direction: column;
    align-items: center;

    width: 100vw;
}

#formules-responsive{
    display: none !important;
    width: 100vw;
    display: flex;
    justify-content: flex-end;
}

#formules{
    display: flex;
    flex-direction: column;
    justify-content: center;
    
    text-align: center;

    margin-top: var(--space-xl);
    margin-bottom: var(--space-m); 

    width: var(--container-xl);
}

#formules article {
    display: flex;
    margin-top: 45px;
    gap: 25px;
    text-align: start;
}

#formules article > :nth-child(1) {
    background: var(--gris-clair);
}

#formules article > :nth-child(2) {
    background: var(--noir);
    background-image: url("FlaShine_site/images/background-motif-xs.svg");
    color: var(--blanc);
}

#formules article > :nth-child(3) {
    background: var(--orange);
    color: var(--blanc);
}


#formules h2 {
    margin-bottom: var(--space-xs);
}

.capsule {
    padding: 5px 16px;
    border-radius: 50px;
    border: 0.8px solid var(--border);

    font-size: 13px;
    text-transform: uppercase;

    margin-bottom: var(--space-s);;
    color: var(--gris-dark);
}

.capsOrange{
    color: var(--orange);
    border: 0.8px solid var(--orange) !important;
}

.formules{
    flex: 1; /* largeur égale */

    display: flex;
    flex-direction: column;
    justify-content: space-between;
    
    background-color: #FF4E2A;
    width: 290px;
    height: 520px;
    padding: 35px;
    border-radius: 12px;

    transition: flex 1s cubic-bezier(0.22, 1, 0.36, 1);

    cursor: pointer;
}


.formules h3{
    font-size: clamp(36px, 4.63vw, 70px);
    letter-spacing: -3px;
    font-weight: normal;
}

.formules h3 sup{
    font-size: clamp(20px, 2.31vw, 35px);
    font-weight: 100;
}

.formules .capsule {
    font-size: 12px !important;
}

.contentText{
    max-width: 250px;
}

.textHover{
    /*height: 0px;*/
    overflow: hidden;
    width: 0px;
    transition: all 0.3s ease-out;

}

.formPcontent{
    width: 100%;
    height: 210px;
    overflow: hidden;
}

.textHover p{
    font-weight: 200;
    margin-top: var(--space-xs);
    color: var(--gris-dark);

}

.textHoverOpen{
    height: auto !important;
    width: 100%;                       /* commence caché */
    overflow: hidden;               /* masque le texte qui dépasse */
    display: block;          /* important pour que la width fonctionne correctement */
    vertical-align: top;
}

.formOpen{
    flex: 2; /* bloc plus large */
}

.chapeau{
    font-size: 13.5px;
}

.contentCaps{
    display: flex;
    justify-content: space-between;
}

/*
.buttonMore{
    color: white;
    border-radius: 8px;
    border: 0.8px solid var(--border);
    padding: 9px 15px 12px 15px;

    font-weight: 100;
    font-size: 15px;

    margin-top: var(--space-xs)
}*/






#services {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;

    padding-bottom: var(--space-xl);
    width: var(--container-m);
}

#services article {
    display: flex;
    flex-direction: row;
    justify-content: space-around;
    align-items: flex-start;
    width: 100%;
}

#services article h4{
    margin-bottom: var(--space-xs);
}

.infoContent{
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 230px;
}

.separator-v{
    height: 1px;
    background-color: var(--separator);

    width: var(--container-xl);

    margin-bottom: var(--space-m);
    opacity: 0.2;
}

.separator-h{
    height: 100px;
    width: 1px;
    background-color: var(--separator);

    /*margin: 0 25px 0 25px;*/
    opacity: 0.2;
}

.pictoText{
    display: flex;
}

.pictoText img {
    margin-right: 15px;
}

.herePoint{
    height: 22px;
}

#avantApres{
    background-color: var(--noir);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;

    width: 100vw;
    height: 760px;
}

#avantApres article{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    width: var(--container-xl);
}

.contentTitle{
    max-width: 530px;
    padding-right: 5%;
    color: var(--gris);
}

.contentTitle h2{
    margin-bottom: var(--space-m);
}

.imgAvant{
    max-width: 610px;
    overflow: hidden;
    border-radius: 15px;

    width: 50%;
    background-color: var(--orange);
}

.imgAvant img{
    height: 100%;
}

.before-after {
    position: relative;
    width: 600px;
    height: 500px;
    overflow: hidden;
    cursor: none;

    border-radius: 15px;
}

.before-after img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.before-after .after {
    clip-path: polygon(50% 0, 100% 0, 100% 100%, 45% 100%);
    transition: clip-path 0.1s ease;
}

#beforeAfter .after {
    transition: clip-path 0.3s cubic-bezier(0.22, 1, 0.36, 1);
  }

#temoignages{
    width: 100vw;

    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    
    text-align: center;

    color: var(--gris);
    background-color: var(--noir-dark);
    background-image: url("FlaShine_site/images/background-motif.svg");
}

#temoignages .capsule{
    color: var(--gris-dark);
}

#temoignages article{
    width: var(--container-xl);
    margin-top: var(--space-xl);

    width: var(--container-xl);

}

.reviewContent{
    display: flex;
    align-items: flex-start;
    justify-content: space-between;

    margin-top: var(--space-m);
}

.review{
    padding: 70px 50px 70px 50px;
    width: calc(100% / 3 - 60px - 50px);

    text-align: start;

    border-radius: 15px;
}

#temoignages .reviewContent > :nth-child(1) {
    background: var(--noir);

    clip-path: polygon(
        var(--bevel-size) 0,
        100% 0,
        100% 100%,
        0 100%,
        0 var(--bevel-size)
    );
}

#temoignages .reviewContent > :nth-child(2) {
    background: var(--noir-light);
    margin-top: var(--space-m);
}

#temoignages .reviewContent > :nth-child(3) {
    background: var(--noir);
    
    clip-path: polygon(
        0 0,
        100% 0,
        100% calc(100% - var(--bevel-size)),
        calc(100% - var(--bevel-size)) 100%,
        0 100%
    );
}

.review h4 {
    margin-bottom: var(--space-xs);
}

#temoignages .separator-v {
    margin-top: var(--space-m);
    margin-bottom: var(--space-m);

    background-color: var(--gris-clair);
}




#realisations {
    width: 100vw;
    display: flex;
    justify-content: flex-end;
    background-color: var(--gris-clair);
  }
  
  /* slider global */
  .slider {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin-top: var(--space-xl);
    margin-bottom: var(--space-xl);
  }
  
  .titleRow{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: end;
    width: var(--container-xl);
    margin-bottom: var(--space-m);
  }
  
   .titleRow{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: end;
    width: var(--container-xl);
    margin-bottom: var(--space-m);
  }

   .titleRow .pictoText{
    flex-direction: row-reverse;
  }

    .titleRow .pictoText img{
        margin-right: 0;
        margin-left: 15px;
  }

  
    .none{
      visibility: hidden;
    }


    .content-slider{
      width: 100vw;
      height: auto;
      background-color: green;
    }

    
    .swiper {
      width: 100%;       /* le container prend toute la largeur */
      margin: 0 auto;    /* centré horizontalement */
      height: 450px;     /* hauteur fixe, tu peux ajuster */
    }

    .swiper-slide {
      width: 400px;      /* largeur fixe de chaque slide */
      height: 100%;
      flex-shrink: 0;    /* ne se compresse pas */
      border-radius: 15px;

    }

    .swiper-slide img {
      width: 100%;
      height: 100%;
      object-fit: cover; /* remplit toute la slide sans déformation */
      border-radius: 15px; /* optionnel */
    }

    .swiper-slide {
      display: flex;
      justify-content: center;
      align-items: center;
      background: #444;
      font-size: 18px;

      width: 350px !important;  /* largeur fixe */
      flex-shrink: 0;           /* empêche la compression */
    }

    /* =========================
       NAVIGATION PERSONNALISÉE
    ========================= */

    .nav-wrapper {
      display: flex;
      justify-content: flex-end;
      align-items: center;
      gap: 10px;
      margin-top: 30px;

      width: var(--container-xl);
    }

    /* =========================
       BOUTONS CUSTOM
    ========================= */

    .btn {
      border: none !important;
      background: var(--noir) !important;
      border-radius: 6px !important;
      padding: 14px !important;
      cursor: pointer !important;
      transition: opacity 0.3s ease !important;
      z-index: 10 !important;
    }

    .btn img {
      width: 20px;
      display: block;
    }

    .btn:hover {
      opacity: 0.7;
    }

    .prev{
      padding: 6px 30px 6px 8px !important;
    }

    .next{
      padding: 6px 8px 6px 30px !important;
    }
    .swiper-button-next svg path, .swiper-button-prev svg path {
      fill: white; /* couleur de la flèche */
    }
    .btn svg {
      width: 19px !important;      /* largeur de la flèche */
      height: 19px !important;     /* hauteur de la flèche */
    }

    /* 🔥 Annuler tout style par défaut swiper */
    .swiper-button-next,
    .swiper-button-prev {
      margin: unset !important;
      position: unset !important;
      width: unset !important;
      height: unset !important;
      display: inline-block;
    }

#contact{
    width: var(--container-xl);
    text-align: center;
}

#contact h2{
    margin-top: var(--space-xl);
    margin-bottom: var(--space-xs);
}
#contact article{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    gap: 15px;
    margin-top: var(--space-s);
    margin-bottom: var(--space-xl);
}

.btn-bevel {
    position: relative;
    display: inline-block;
    padding: 12px 20px;
    background: var(--orange);
    color: #fff;
    font-size: 16px;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    overflow: hidden; /* important pour clip-path */
    transition: all 0.3s cubic-bezier(0.22, 1, 0.36, 1);

  }
  
  /* Pseudo pour le biseau en bas à gauche */
  .btn-bevel::before {
    content: '';
    position: absolute;
    bottom: -8px;
    left: 0;
    width: 24px;       /* largeur du biseau */
    height: 24px;      /* hauteur du biseau */
    background: var(--blanc);  /* couleur biseau */
    clip-path: polygon(0 70%, 70% 70%, 0 0); /* triangle */
    pointer-events: none; /* pour que le texte reste cliquable */
    transition: background 0.3s ease;
  }
  
  /* Hover léger */
  .btn-bevel:hover {
    background: var(--noir);
  }
  
  .btn-bevel:hover::before {
    background: var(--blanc);
  }

  .btn-bevel-right {
    position: relative;
    display: inline-block;
    padding: 12px 40px;
    background: var(--orange);
    color: #fff;
    font-size: 16px;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    overflow: hidden; /* important pour clip-path */
    transition: all 0.3s cubic-bezier(0.22, 1, 0.36, 1);
}

/* Pseudo pour le biseau en bas à droite */
.btn-bevel-right::before {
    content: '';
    position: absolute;
    bottom: 0;
    right: 0;
    width: 24px;       /* largeur du biseau */
    height: 24px;      /* hauteur du biseau */
    background: var(--blanc);  /* couleur biseau */
    clip-path: polygon(130% 130%, 0 130%, 130% 0); /* triangle bas droite */
    pointer-events: none; /* texte toujours cliquable */
    transition: background 0.3s ease;
}

/* Hover léger */
.btn-bevel-right:hover {
    background: var(--noir);
}

.btn-bevel-right:hover::before {
    background: var(--blanc);
}



.btn-bevel-rightB {
    position: relative;
    display: inline-block;
    padding: 12px 24px;
    background: var(--noir-light);
    color: #fff;
    font-size: 16px;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    overflow: hidden; /* important pour clip-path */
    transition: all 0.3s cubic-bezier(0.22, 1, 0.36, 1);
}

/* Pseudo pour le biseau en bas à droite */
.btn-bevel-rightB::before {
    content: '';
    position: absolute;
    bottom: 0;
    right: 0;
    width: 24px;       /* largeur du biseau */
    height: 24px;      /* hauteur du biseau */
    background: var(--noir);  /* couleur biseau */
    clip-path: polygon(130% 130%, 0 130%, 130% 0); /* triangle bas droite */
    pointer-events: none; /* texte toujours cliquable */
    transition: background 0.3s ease;
}

/* Hover léger */
.btn-bevel-rightB:hover {
    background: var(--noir-dark);
}

.btn-bevel-rightB:hover::before {
    background: var(--noir);
}

  
  

/*===============================================================================================

            FOOTER

===============================================================================================*/

footer{
    width: 100vw;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    color: var(--gris);
}

footer article{
    width: calc(100% - 20px * 2);
    display: flex;
    align-items: center;
    justify-content: space-around;
    background-color: var(--noir);
    height: 300px;

    clip-path: polygon(
        0 0,
        100% 0,
        100% calc(100% - var(--bevel-size)),
        calc(100% - var(--bevel-size)) 100%,
        0 100%
    );

    border-radius: 15px;
    background-image: url("FlaShine_site/images/background-motif.svg");
}

.footer-content{
    display: flex;
    justify-content: space-around;
    align-items: flex-start;
}

footer .logo{
    width: 195px;
    margin-bottom: var(--space-xs);

}

footer span, ul{
    font-size: 14px;
}

footer span{
    line-height: 0;
}

footer p{
    font-size: 18px;
}



.logoDescription{
    display: flex;
    flex-direction: column;

    width: 20%;
}

.description{
    line-height: 1;
}
/* Desktop */
@media (max-width: 1440px) {

    .hero-text{
        top: 40%;
    }

    .hero-img{
        max-height: 110%;
    }

    .formules .capsule{
        padding: 5px 10px;
    }

    .formules {
        height: 450px;
    }


    #services{
        width: var(--container-xl);

    }
}


/* Desktop */
@media (max-width: 1280px) {

    .capsOrange{
        display: none;
    }

        .formPcontent{
        height: 270px !important;
    }

        #services article{
        flex-wrap: wrap;
        justify-content: space-between;
    }

        #services .infoContentLast {
            margin-top: -100px;
    }

        #services .infoContent{
        width: 30vw;
    }

        #services .separator-h{
        height: 280px;
    }

    .before-after{
        width: 1080px !important;
    }
}


/* laptop */
@media (max-width: 1080px) {

    .hero-words.h1-move h1:first-child {
        margin-top: -15.5%;
    }

    #formules-responsive{
        display: block !important;
    }
    #formules-responsive .slider{
        margin-top: 0;
    }

    #formules article {
        display: none;
    }

    .textHover p{
        margin-top: 10px;
    }

    .before-after{
        height: 350px !important;
    }

    #avantApres{
        height: 550px;
    }

    .slider-track img{
        max-height: 450px;
    }

    #services{
    width: var(--container-m);
    }

    .review{
        padding: 50px;
    }

    :root{
        --space-xl: 80px !important;
        --container-xl :calc(100vw - 60px * 2) !important;
        --container-m : calc(100vw - 110px * 2) !important;


    }
}

@media (max-width: 800px) {

    h4{
        font-size: 20px;
    }

    .contentTitle{
        width: 70vw;
    }

    .slider-track{
        margin-left: 60px !important;
    }

    #services article{
        flex-wrap: nowrap;
        flex-direction: column;
        align-items: center;
    }

    #services .separator-h{
        display: none;
    }

    #services .infoContentLast{
        margin-top: 0;
    }

    #services .infoContent{
        margin-bottom: var(--space-s);
        width: 70vw !important;
    }

    #services article h4{
        margin-bottom: 0px;
    }

    .herePoint{
        height: 18px;
    }

    #avantApres{
        height: unset;
    }
    #avantApres h2{
        margin-bottom: var(--space-xs);
        margin-top: 80px;
    }
    #avantApres h4{
        font-size: 16px;
    }

    #avantApres article{
        flex-wrap: wrap;
        justify-content: center;
    }
    .before-after{
        height: 350px !important;
        margin-top: var(--space-m);

        width: 80vw !important;
        margin-bottom: 80px;
    }

    .pictoText img{
        margin-right: 8px !important;
    }
        .titleRow .pictoText img{
        margin-right: 0 !important;
        margin-left: 8px !important;

        width: 25px;
  }

    .swiper{
        height: 400px !important;
    }

    .swiper-slide {
        width: 300px !important;
    }

    #temoignages article{
        justify-content: center;
    }

    .reviewContent{
        flex-direction: column;
        align-items: center;
    }

    .review{
        width: 70%;
        margin-bottom: 25px !important;
    }

    #temoignages .reviewContent > :nth-child(2){
        margin-top: unset;
    }

    .titleRow{
        text-align: center;
        flex-direction: column;
        align-items: center;
    }

    .titleRow h2{
        margin-bottom: var(--space-xs);
    }

    .nav-wrapper {
        width: calc(100vw - 25px);
    }

    .footer-content {
        justify-content: center;
        align-items: flex-start;
        flex-direction: column;
        gap: 15px;
    }

    .logoDescription {
        width: 70vw;
    }

    footer .container{
        padding: 50px 0;
    }

    footer div{
        width: 70vw;
    }

    footer .picto{
        width: 25px !important;
  }

}

@media (max-width: 500px) {


    .hero{
        height: 700px !important;
    }

    .hero h1{
        font-size: 55px;
    }

    .hero-text{
        display: flex;
        justify-content: center;
        align-items: center;

        top: 47%;
    }

    .hero-words{
        height: 45px;
    }

      .hero-img {

        max-height: 100%;
        left: 30%;
  }

    .hero-back, .hero-middle{
        min-height: 700px !important;
    }

  .separator-v{
    width: 90vw;
  }

  #services{
    padding: unset;
    margin-bottom:45px;
  }

  #temoignages .separator-v{
    display: none;
  }

.review {
    padding: 30px 50px;
  }

  #temoignages .reviewContent > :nth-child(3) {
    margin-bottom: 60px !important;
  }

  #avantApres article{
    width: calc(100vw - 25px) !important;
  }

  .before-after {
    width: 100% !important;
  }

  footer .container{
    padding: 100px 0 !important;
  }

  footer .logo {
    margin-bottom: 40px;
}

   footer button {
    margin-top: 20px;
}
   

.mobile-break {
    display: none;
  }
}