
/* sr-only — masque visuellement, reste accessible */
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
/* Reset minimal */

    *, *::before, *::after {

      box-sizing: border-box;

      margin: 0;

      padding: 0;

    }



    .footer-logo-1-01 {

  flex: 1 1 0;

  height: 388.26px;

  max-width: 400px;

  min-width: 250px;

  max-height: 388.26px;

  min-height: 242.66px;

  object-fit: cover;

  object-position: center;

}



.mentions-legales-01-1f9b {

  font-size: clamp(22px, 1.2503rem + 0.532vw, 30.22px);

  font-family: "ballers-delight";

  font-weight: 400;

  word-wrap: break-word;

  color: #B95128;

}



.mentions-legales-01 {

  align-self: stretch;

}



.politique-de-ef3d-1857 {

  font-size: clamp(22px, 1.2503rem + 0.532vw, 30.22px);

  font-family: "ballers-delight";

  font-weight: 400;

  word-wrap: break-word;

  color: #B95128;

}



.politique-de-ef3d {

  align-self: stretch;

}



.contact-contact-4d18 {

  font-size: clamp(25.87px, 1.43rem + 0.7974vw, 38.19px);

  font-family: "ballers-delight";

  font-weight: 400;

  word-wrap: break-word;

  color: #B95128;

}



.contact-contact-4d19 {

  font-size: clamp(25.87px, 1.5796rem + 0.1592vw, 28.33px);

  font-family: Montserrat;

  font-weight: 400;

  word-wrap: break-word;

  color: #B95128;

}



.contact-contact-ea73 {

  align-self: stretch;

  height: 83.10px;

  text-align: right;

}



.instagram-01-span {

  font-size: clamp(32px, 1.9061rem + 0.4006vw, 38.19px);

  font-family: "ballers-delight";

  font-weight: 400;

  word-wrap: break-word;

  color: #B95128;

}



.instagram-01 {

  width: 363.57px;

  height: 43.44px;

  text-align: right;

}



.instagram-logo-1-01 {

  width: 96.32px;

  height: 95.75px;

  object-fit: cover;

  object-position: center;

}



.instagram-logo-57b9 {

  width: 227px;

  height: 226px;

  object-fit: cover;

  object-position: center;

}



.suivez-nous-sur-0fc1 {

  font-size: clamp(32px, 1.6505rem + 1.4913vw, 55.04px);

  font-family: "ballers-delight";

  font-weight: 400;

  word-wrap: break-word;

  color: white;

}



.suivez-nous-sur-0eee {

  width: 1353px;

  height: 112px;

  justify-content: center;

  display: flex;

  flex-direction: column;

}



.photo-5-2-01 {

  align-self: stretch;

  align-self: stretch;

  flex-grow: 1;

  object-fit: cover;

  object-position: center;

}



.photo-2-2-01 {

  align-self: stretch;

  align-self: stretch;

  flex-grow: 1;

  object-fit: cover;

  object-position: center;

}



.photo-3-2-01 {

  align-self: stretch;

  align-self: stretch;

  flex-grow: 1;

  object-fit: cover;

  object-position: center;

}



.photo-6-2-01 {

  align-self: stretch;

  align-self: stretch;

  flex-grow: 1;

  object-fit: cover;

  object-position: center;

}



.photo-4-2-01 {

  align-self: stretch;

  align-self: stretch;

  flex-grow: 1;

  object-fit: cover;

  object-position: center;

}



.photo-12-2-01 {

  align-self: stretch;

  align-self: stretch;

  flex-grow: 1;

  object-fit: cover;

  object-position: center;

}



.photo-7-2-01 {

  align-self: stretch;

  align-self: stretch;

  flex-grow: 1;

  object-fit: cover;

  object-position: center;

}



.photo-8-2-01 {

  align-self: stretch;

  align-self: stretch;

  flex-grow: 1;

  object-fit: cover;

  object-position: center;

}



.photo-9-2-01 {

  align-self: stretch;

  align-self: stretch;

  flex-grow: 1;

  object-fit: cover;

  object-position: center;

}



.photo-10-2-01 {

  align-self: stretch;

  align-self: stretch;

  flex-grow: 1;

  object-fit: cover;

  object-position: center;

}



.photo-12-3-01 {

  align-self: stretch;

  align-self: stretch;

  flex-grow: 1;

  transform: rotate(180deg);

  transform-origin: top left;

  object-fit: cover;

  object-position: center;

}



.photo-13-1-01 {

  align-self: stretch;

  align-self: stretch;

  flex-grow: 1;

  transform: rotate(180deg);

  transform-origin: top left;

  object-fit: cover;

  object-position: center;

}



.photo-14-1-01 {

  align-self: stretch;

  align-self: stretch;

  flex-grow: 1;

  transform: rotate(180deg);

  transform-origin: top left;

  object-fit: cover;

  object-position: center;

}



.photo-15-1-01 {

  align-self: stretch;

  align-self: stretch;

  flex-grow: 1;

  transform: rotate(180deg);

  transform-origin: top left;

  object-fit: cover;

  object-position: center;

}



.photo-16-1-01 {

  align-self: stretch;

  align-self: stretch;

  flex-grow: 1;

  transform: rotate(180deg);

  transform-origin: top left;

  object-fit: cover;

  object-position: center;

}



.photo-17-1-01 {

  align-self: stretch;

  align-self: stretch;

  flex-grow: 1;

  transform: rotate(180deg);

  transform-origin: top left;

  object-fit: cover;

  object-position: center;

}



.photo-18-1-01 {

  align-self: stretch;

  align-self: stretch;

  flex-grow: 1;

  transform: rotate(180deg);

  transform-origin: top left;

  object-fit: cover;

  object-position: center;

}



.photo-19-1-01 {

  align-self: stretch;

  align-self: stretch;

  flex-grow: 1;

  transform: rotate(180deg);

  transform-origin: top left;

  object-fit: cover;

  object-position: center;

}



.photo-20-1-01 {

  align-self: stretch;

  align-self: stretch;

  flex-grow: 1;

  transform: rotate(180deg);

  transform-origin: top left;

  object-fit: cover;

  object-position: center;

}



.photo-21-1-01 {

  align-self: stretch;

  align-self: stretch;

  flex-grow: 1;

  transform: rotate(180deg);

  transform-origin: top left;

  object-fit: cover;

  object-position: center;

}



.photo-30-1-01 {

  align-self: stretch;

  align-self: stretch;

  flex-grow: 1;

  transform: rotate(180deg);

  transform-origin: top left;

  object-fit: cover;

  object-position: center;

}



.photo-29-1-01 {

  align-self: stretch;

  align-self: stretch;

  flex-grow: 1;

  transform: rotate(180deg);

  transform-origin: top left;

  object-fit: cover;

  object-position: center;

}



.photo-28-1-01 {

  align-self: stretch;

  align-self: stretch;

  flex-grow: 1;

  transform: rotate(180deg);

  transform-origin: top left;

  object-fit: cover;

  object-position: center;

}



.photo-27-1-01 {

  align-self: stretch;

  align-self: stretch;

  flex-grow: 1;

  transform: rotate(180deg);

  transform-origin: top left;

  object-fit: cover;

  object-position: center;

}



.photo-26-1-01 {

  align-self: stretch;

  align-self: stretch;

  flex-grow: 1;

  transform: rotate(180deg);

  transform-origin: top left;

  object-fit: cover;

  object-position: center;

}



.photo-25-1-01 {

  align-self: stretch;

  align-self: stretch;

  flex-grow: 1;

  transform: rotate(180deg);

  transform-origin: top left;

  object-fit: cover;

  object-position: center;

}



.photo-24-1-01 {

  align-self: stretch;

  align-self: stretch;

  flex-grow: 1;

  transform: rotate(180deg);

  transform-origin: top left;

  object-fit: cover;

  object-position: center;

}



.photo-23-1-01 {

  align-self: stretch;

  align-self: stretch;

  flex-grow: 1;

  transform: rotate(180deg);

  transform-origin: top left;

  object-fit: cover;

  object-position: center;

}



.photo-22-1-01 {

  align-self: stretch;

  align-self: stretch;

  flex-grow: 1;

  transform: rotate(180deg);

  transform-origin: top left;

  object-fit: cover;

  object-position: center;

}



.photo-11-2-01 {

  align-self: stretch;

  align-self: stretch;

  flex-grow: 1;

  object-fit: cover;

  object-position: center;

}



.photo-1-2-01 {

  align-self: stretch;

  align-self: stretch;

  flex-grow: 1;

  object-fit: cover;

  object-position: center;

}



.accueil-span {

  font-size: 34.67px;

  font-family: "ballers-delight";

  font-weight: 400;

  word-wrap: break-word;

  color: #EFEDE5;

}



.accueil {

  text-align: center;

}



.menu-03-span {

  font-size: 34.67px;

  font-family: "ballers-delight";

  font-weight: 400;

  word-wrap: break-word;

  color: #EFEDE5;

}



.menu-03 {

  opacity: 0.60;

  text-align: center;

}



.photos-span {

  font-size: 34.67px;

  font-family: "ballers-delight";

  font-weight: 400;

  word-wrap: break-word;

  color: #EFEDE5;

}



.photos {

  opacity: 0.60;

  text-align: center;

}



.contact-span {

  font-size: 34.67px;

  font-family: "ballers-delight";

  font-weight: 400;

  word-wrap: break-word;

  color: #EFEDE5;

}



.contact {

  opacity: 0.60;

  text-align: center;

}



.logo-1-devor-1-02 {

  width: 118.33px;

  height: 41px;

  object-fit: cover;

  object-position: center;

}



.texte-gauche-01 {

  flex: 1 1 0;

  display: inline-flex;

  flex-direction: column;

  justify-content: center;

  align-items: center;

  gap: 43.44px;

}



.menu-droite-03 {

  width: 654px;

  height: 55px;

  padding-left: 10px;

  padding-right: 10px;

  padding-top: 30px;

  padding-bottom: 30px;

  box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.50);

  border-bottom-right-radius: 25px;

  border-bottom-left-radius: 25px;

  display: flex;

  justify-content: flex-end;

  align-items: center;

  gap: 63px;

}



.insta-01 {

  width: 100%;

  align-self: stretch;

  display: inline-flex;

  justify-content: flex-end;

  align-items: center;

}



.texte-04 {

  width: 100%;

  display: flex;

  justify-content: center;

  align-items: center;

  gap: 60px;

}



.bloc-photo-01 {

  width: 100%;

  height: 1395px;

  padding-left: 49px;

  padding-right: 49px;

  overflow: hidden;

  display: inline-flex;

  flex-direction: column;

  justify-content: flex-start;

  align-items: flex-start;

}



.bloc-gauche-01 {

  flex: 1 1 0;

  align-self: stretch;

  padding-left: 40px;

  padding-right: 40px;

  display: flex;

  justify-content: flex-start;

  align-items: center;

  gap: 40px;

}



.menu-droite-01 {

  width: 36px;

  height: 44px;

  display: inline-flex;

  justify-content: flex-end;

  align-items: center;

  gap: 28px;

}



.texte-01 {

  flex: 1 1 0;

  display: inline-flex;

  flex-direction: column;

  justify-content: center;

  align-items: flex-end;

}



.container-2-vh-75 {

  width: 100%;

  height: 22.2222%;

  left: 0;

  right: 0;

  margin-left: auto;

  margin-right: auto;

  top: 62.3620%;

  position: absolute;

  z-index: 1;

  background-size: cover;

  background-position: center;

  background-repeat: no-repeat;

  background-image: url(./assets/img/image-43.png);

  display: inline-flex;

  justify-content: center;

  align-items: center;

  gap: 60px;

}



.portefolio-vh-100 {

  width: 100%;

  height: 61.3319%;

  left: 0.1042%;

  top: 1.8396%;

  position: absolute;

  z-index: 2;

  background-size: cover;

  background-position: center;

  background-repeat: no-repeat;

  background-image: url(./assets/img/image-45.png);

  display: inline-flex;

  flex-direction: column;

  justify-content: center;

  align-items: center;

  gap: 8.94px;

}



.texte-07 {

  width: 100%;

  height: 52px;

  padding-left: 10px;

  padding-right: 10px;

  flex-grow: 1;

  display: inline-flex;

  flex-direction: column;

  justify-content: flex-start;

  align-items: flex-start;

}



.bloc-droit-01 {

  flex: 1 1 0;

  padding-left: 41.55px;

  padding-right: 41.55px;

  display: flex;

  justify-content: flex-end;

  align-items: center;

}



.menu-active-accueil-c9a4 {

  width: 100%;

  height: 52px;

  align-self: stretch;

  background: #B95128;

  box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.50);

  overflow: hidden;

  border-bottom: 1px black solid;

  display: inline-flex;

  justify-content: flex-start;

  align-items: flex-start;

}



.footer-vh-25 {

  width: 100%;

  height: 16.9242%;

  left: 0;

  right: 0;

  margin-left: auto;

  margin-right: auto;

  bottom: 0.0000%;

  position: absolute;

  background-size: cover;

  background-position: center;

  background-repeat: no-repeat;

  background-image: url(./assets/img/image-40.png);

  display: inline-flex;

  justify-content: center;

  align-items: center;

  gap: 10px;

}



.menu-01 {

  width: 100%;

  height: 1.9132%;

  left: 0;

  right: 0;

  margin-left: auto;

  margin-right: auto;

  top: 0.0000%;

  position: absolute;

  z-index: 3;

  display: inline-flex;

  flex-direction: column;

  justify-content: center;

  align-items: flex-end;

}



.desktop {

  width: 100%;

  height: 2718px;

  position: relative;

  background: white;

  overflow: hidden;

}





    @media (max-width: 1024px) {

  .desktop {

    height: 2452px;

    overflow: hidden;

  }

  .footer-logo-1-01 {

    height: 133.47px;

    min-width: 100px;

    min-height: 97.07px;

  }

  .contact-contact-ea73 {

    width: 312px;

    height: 57px;

  }

  .instagram-01 {

    width: 246.22px;

    height: 29.42px;

  }

  .instagram-logo-1-01 {

    width: 65.23px;

    height: 64.84px;

  }

  .suivez-nous-sur-0eee {

    align-self: stretch;

    text-align: center;

    width: auto;

    height: auto;

  }

  .photo-5-2-01 {

    width: 126px;

    height: 223px;

  }

  .photo-2-2-01 {

    width: 125px;

    height: 223px;

  }

  .photo-3-2-01 {

    width: 126px;

    height: 223px;

  }

  .photo-6-2-01 {

    width: 125px;

    height: 223px;

  }

  .photo-4-2-01 {

    width: 126px;

    height: 224px;

  }

  .photo-12-2-01 {

    width: 125px;

    height: 224px;

  }

  .photo-7-2-01 {

    width: 126px;

    height: 224px;

  }

  .photo-8-2-01 {

    width: 126px;

    height: 224px;

  }

  .photo-9-2-01 {

    width: 126px;

    height: 224px;

  }

  .photo-10-2-01 {

    width: 125px;

    height: 224px;

  }

  .photo-12-3-01 {

    width: 126px;

    height: 224px;

  }

  .photo-13-1-01 {

    width: 125px;

    height: 224px;

  }

  .photo-14-1-01 {

    width: 126px;

    height: 223px;

  }

  .photo-15-1-01 {

    width: 125px;

    height: 223px;

  }

  .photo-16-1-01 {

    width: 126px;

    height: 223px;

  }

  .photo-17-1-01 {

    width: 126px;

    height: 223px;

  }

  .photo-18-1-01 {

    width: 126px;

    height: 223px;

  }

  .photo-19-1-01 {

    width: 125px;

    height: 223px;

  }

  .photo-20-1-01 {

    width: 126px;

    height: 223px;

  }

  .photo-21-1-01 {

    width: 125px;

    height: 223px;

  }

  .photo-30-1-01 {

    width: 126px;

    height: 224px;

  }

  .photo-29-1-01 {

    width: 125px;

    height: 224px;

  }

  .photo-28-1-01 {

    width: 126px;

    height: 224px;

  }

  .photo-27-1-01 {

    width: 126px;

    height: 224px;

  }

  .photo-26-1-01 {

    width: 126px;

    height: 224px;

  }

  .photo-25-1-01 {

    width: 125px;

    height: 224px;

  }

  .photo-24-1-01 {

    width: 126px;

    height: 224px;

  }

  .photo-23-1-01 {

    width: 125px;

    height: 224px;

  }

  .photo-22-1-01 {

    width: 126px;

    height: 223px;

  }

  .photo-11-2-01 {

    width: 125px;

    height: 223px;

  }

  .photo-1-2-01 {

    width: 126px;

    height: 223px;

  }

  .menu-03-span {

    width: 100%;

    height: 2.1207%;

    left: 0;

    right: 0;

    margin-left: auto;

    margin-right: auto;

    top: 0.0000%;

    position: absolute;

    z-index: 3;

    display: inline-flex;

    flex-direction: column;

    justify-content: center;

    align-items: flex-end;

    font-size: inherit;

    font-weight: normal;

    color: inherit;

  }

  .texte-gauche-01 {

    gap: 35px;

  }

  .insta-01 {

    height: 58px;

    padding-top: 24px;

    padding-bottom: 24px;

  }

  .texte-04 {

    flex: 1 1 0;

    display: inline-flex;

    flex-direction: column;

    align-items: flex-end;

    gap: 35px;

    width: auto;

  }

  .bloc-photo-01 {

    height: 1467px;

    column-gap: 17.42px;

    row-gap: 22px;

    flex-wrap: wrap;

    align-content: flex-start;

    flex-direction: column;

  }

  .texte-01 {

    width: 100%;

    padding-left: 20px;

    padding-right: 20px;

    flex-grow: 1;

    align-items: center;

    gap: 60px;

  }

  .container-2-vh-75 {

    height: 20.8809%;

    top: 69.1272%;

    background-image: url(./assets/img/image-82.png);

  }

  .portefolio-vh-100 {

    height: 67.9853%;

    left: 0;

    right: 0;

    margin-left: auto;

    margin-right: auto;

    top: 2.0392%;

    background-image: url(./assets/img/image-84.png);

  }

  .footer-vh-25 {

    height: 10.1958%;

    background-image: url(./assets/img/image-79.png);

  }

}



@media (max-width: 370px) {

  .desktop {

    height: 2875px;

    overflow: hidden;

  }

  .footer-logo-1-01 {

    width: 100%;

    height: 286.34px;

    min-width: 100px;

    min-height: 97.07px;

    align-self: stretch;

  }

  .mentions-legales-01 {

    text-align: center;

  }

  .politique-de-ef3d {

    text-align: center;

  }

  .contact-contact-ea73 {

    width: 312px;

    height: 57px;

    text-align: center;

  }

  .instagram-01 {

    width: 246.22px;

    height: 29.42px;

    text-align: center;

  }

  .instagram-logo-1-01 {

    width: 235px;

    height: 234px;

  }

  .instagram-logo-57b9 {

    width: 275px;

    height: 273px;

  }

  .suivez-nous-sur-0eee {

    width: 325px;

    text-align: center;

    height: auto;

    justify-content: flex-start;

    display: block;

    flex-direction: column;

  }

  .photo-5-2-01 {

    width: 66.6667%;

    height: 48.9407%;

    left: 0;

    right: 0;

    margin-left: auto;

    margin-right: auto;

    top: 0;

    bottom: 0;

    margin-top: auto;

    margin-bottom: auto;

    position: absolute;

  }

  .photo-2-2-01 {

    width: 87.4667%;

    height: 48.0589%;

    left: 0;

    right: 0;

    margin-left: auto;

    margin-right: auto;

    top: 0;

    bottom: 0;

    margin-top: auto;

    margin-bottom: auto;

    position: absolute;

    z-index: 1;

  }

  .photo-3-2-01 {

    width: 66.6667%;

    height: 48.8305%;

    left: 0;

    right: 0;

    margin-left: auto;

    margin-right: auto;

    top: 0;

    bottom: 0;

    margin-top: auto;

    margin-bottom: auto;

    position: absolute;

    z-index: 2;

  }

  .photo-6-2-01 {

    width: 66.6667%;

    height: 48.8305%;

    left: 0;

    right: 0;

    margin-left: auto;

    margin-right: auto;

    top: 0;

    bottom: 0;

    margin-top: auto;

    margin-bottom: auto;

    position: absolute;

    z-index: 3;

  }

  .photo-4-2-01 {

    width: 88.5333%;

    height: 48.8305%;

    left: 0;

    right: 0;

    margin-left: auto;

    margin-right: auto;

    top: 0;

    bottom: 0;

    margin-top: auto;

    margin-bottom: auto;

    position: absolute;

    z-index: 4;

  }

  .photo-12-2-01 {

    width: 66.6667%;

    height: 48.8305%;

    left: 0;

    right: 0;

    margin-left: auto;

    margin-right: auto;

    top: 0;

    bottom: 0;

    margin-top: auto;

    margin-bottom: auto;

    position: absolute;

    z-index: 5;

  }

  .photo-7-2-01 {

    width: 66.6667%;

    height: 48.8305%;

    left: 0;

    right: 0;

    margin-left: auto;

    margin-right: auto;

    top: 0;

    bottom: 0;

    margin-top: auto;

    margin-bottom: auto;

    position: absolute;

    z-index: 6;

  }

  .photo-8-2-01 {

    width: 66.6667%;

    height: 48.8305%;

    left: 0;

    right: 0;

    margin-left: auto;

    margin-right: auto;

    top: 0;

    bottom: 0;

    margin-top: auto;

    margin-bottom: auto;

    position: absolute;

    z-index: 7;

  }

  .photo-9-2-01 {

    width: 87.4667%;

    height: 48.0589%;

    left: 0;

    right: 0;

    margin-left: auto;

    margin-right: auto;

    top: 0;

    bottom: 0;

    margin-top: auto;

    margin-bottom: auto;

    position: absolute;

    z-index: 8;

  }

  .photo-10-2-01 {

    width: 87.4667%;

    height: 48.0589%;

    left: 0;

    right: 0;

    margin-left: auto;

    margin-right: auto;

    top: 0;

    bottom: 0;

    margin-top: auto;

    margin-bottom: auto;

    position: absolute;

    z-index: 9;

  }

  .photo-12-3-01 {

    width: 66.9333%;

    height: 49.0509%;

    left: 0;

    right: 0;

    margin-left: auto;

    margin-right: auto;

    top: 0;

    bottom: 0;

    margin-top: auto;

    margin-bottom: auto;

    position: absolute;

    z-index: 10;

  }

  .photo-13-1-01 {

    width: 65.6000%;

    height: 48.0589%;

    left: 0;

    right: 0;

    margin-left: auto;

    margin-right: auto;

    top: 0;

    bottom: 0;

    margin-top: auto;

    margin-bottom: auto;

    position: absolute;

    z-index: 11;

  }

  .photo-14-1-01 {

    width: 66.9333%;

    height: 49.0509%;

    left: 0;

    right: 0;

    margin-left: auto;

    margin-right: auto;

    top: 0;

    bottom: 0;

    margin-top: auto;

    margin-bottom: auto;

    position: absolute;

    z-index: 12;

  }

  .photo-15-1-01 {

    width: 66.6667%;

    height: 48.9407%;

    left: 0;

    right: 0;

    margin-left: auto;

    margin-right: auto;

    top: 0;

    bottom: 0;

    margin-top: auto;

    margin-bottom: auto;

    position: absolute;

    z-index: 13;

  }

  .photo-16-1-01 {

    width: 88.5333%;

    height: 48.8305%;

    left: 0;

    right: 0;

    margin-left: auto;

    margin-right: auto;

    top: 0;

    bottom: 0;

    margin-top: auto;

    margin-bottom: auto;

    position: absolute;

    z-index: 14;

  }

  .photo-17-1-01 {

    width: 66.4507%;

    height: 48.8305%;

    left: 0;

    right: 0;

    margin-left: auto;

    margin-right: auto;

    top: 0;

    bottom: 0;

    margin-top: auto;

    margin-bottom: auto;

    position: absolute;

    z-index: 15;

  }

  .photo-18-1-01 {

    width: 88.5333%;

    height: 48.8305%;

    left: 0;

    right: 0;

    margin-left: auto;

    margin-right: auto;

    top: 0;

    bottom: 0;

    margin-top: auto;

    margin-bottom: auto;

    position: absolute;

    z-index: 16;

  }

  .photo-19-1-01 {

    width: 88.5333%;

    height: 48.8305%;

    left: 0;

    right: 0;

    margin-left: auto;

    margin-right: auto;

    top: 0;

    bottom: 0;

    margin-top: auto;

    margin-bottom: auto;

    position: absolute;

    z-index: 17;

  }

  .photo-20-1-01 {

    width: 88.8000%;

    height: 49.0509%;

    left: 0;

    right: 0;

    margin-left: auto;

    margin-right: auto;

    top: 0;

    bottom: 0;

    margin-top: auto;

    margin-bottom: auto;

    position: absolute;

    z-index: 18;

  }

  .photo-21-1-01 {

    width: 88.5333%;

    height: 48.8305%;

    left: 0;

    right: 0;

    margin-left: auto;

    margin-right: auto;

    top: 0;

    bottom: 0;

    margin-top: auto;

    margin-bottom: auto;

    position: absolute;

    z-index: 19;

  }

  .photo-30-1-01 {

    width: 87.2000%;

    height: 48.0589%;

    left: 0;

    right: 0;

    margin-left: auto;

    margin-right: auto;

    top: 0;

    bottom: 0;

    margin-top: auto;

    margin-bottom: auto;

    position: absolute;

    z-index: 20;

  }

  .photo-29-1-01 {

    width: 88.5333%;

    height: 48.8305%;

    left: 0;

    right: 0;

    margin-left: auto;

    margin-right: auto;

    top: 0;

    bottom: 0;

    margin-top: auto;

    margin-bottom: auto;

    position: absolute;

    z-index: 21;

  }

  .photo-28-1-01 {

    width: 66.9333%;

    height: 49.0509%;

    left: 0;

    right: 0;

    margin-left: auto;

    margin-right: auto;

    top: 0;

    bottom: 0;

    margin-top: auto;

    margin-bottom: auto;

    position: absolute;

    z-index: 22;

  }

  .photo-27-1-01 {

    width: 66.6667%;

    height: 48.9407%;

    left: 0;

    right: 0;

    margin-left: auto;

    margin-right: auto;

    top: 0;

    bottom: 0;

    margin-top: auto;

    margin-bottom: auto;

    position: absolute;

    z-index: 23;

  }

  .photo-26-1-01 {

    width: 88.5333%;

    height: 48.8305%;

    left: 0;

    right: 0;

    margin-left: auto;

    margin-right: auto;

    top: 0;

    bottom: 0;

    margin-top: auto;

    margin-bottom: auto;

    position: absolute;

    z-index: 24;

  }

  .photo-25-1-01 {

    width: 66.9333%;

    height: 49.0509%;

    left: 0;

    right: 0;

    margin-left: auto;

    margin-right: auto;

    top: 0;

    bottom: 0;

    margin-top: auto;

    margin-bottom: auto;

    position: absolute;

    z-index: 25;

  }

  .photo-24-1-01 {

    width: 88.5333%;

    height: 48.8305%;

    left: 0;

    right: 0;

    margin-left: auto;

    margin-right: auto;

    top: 0;

    bottom: 0;

    margin-top: auto;

    margin-bottom: auto;

    position: absolute;

    z-index: 26;

  }

  .photo-23-1-01 {

    width: 88.8000%;

    height: 48.9407%;

    left: 0;

    right: 0;

    margin-left: auto;

    margin-right: auto;

    top: 0;

    bottom: 0;

    margin-top: auto;

    margin-bottom: auto;

    position: absolute;

    z-index: 27;

  }

  .photo-22-1-01 {

    width: 88.8000%;

    height: 48.9407%;

    left: 0;

    right: 0;

    margin-left: auto;

    margin-right: auto;

    top: 0;

    bottom: 0;

    margin-top: auto;

    margin-bottom: auto;

    position: absolute;

    z-index: 28;

  }

  .photo-11-2-01 {

    width: 66.6667%;

    height: 48.8305%;

    left: 0;

    right: 0;

    margin-left: auto;

    margin-right: auto;

    top: 0;

    bottom: 0;

    margin-top: auto;

    margin-bottom: auto;

    position: absolute;

    z-index: 29;

  }

  .photo-1-2-01 {

    width: 88.5333%;

    height: 48.8305%;

    left: 0;

    right: 0;

    margin-left: auto;

    margin-right: auto;

    top: 0;

    bottom: 0;

    margin-top: auto;

    margin-bottom: auto;

    position: absolute;

    z-index: 30;

  }

  .menu-03-span {

    width: 100%;

    height: 1.8087%;

    left: 0;

    right: 0;

    margin-left: auto;

    margin-right: auto;

    top: 0.0000%;

    position: absolute;

    z-index: 3;

    display: inline-flex;

    flex-direction: column;

    justify-content: center;

    align-items: center;

    font-size: inherit;

    font-weight: normal;

    color: inherit;

  }

  .texte-gauche-01 {

    align-self: stretch;

    display: flex;

    gap: 50px;

  }

  .insta-01 {

    height: 337px;

    padding-top: 24px;

    padding-bottom: 24px;

    display: flex;

    flex-direction: column;

    justify-content: center;

  }

  .texte-04 {

    flex-direction: column;

    justify-content: flex-start;

    gap: 70px;

    width: auto;

  }

  .bloc-photo-01 {

    height: 907.22px;

    align-self: stretch;

    position: relative;

    padding-left: 0;

    padding-right: 0;

    display: block;

    flex-direction: column;

    justify-content: flex-start;

    align-items: stretch;

  }

  .bloc-gauche-01 {

    width: 100%;

    flex-direction: column;

    justify-content: center;

    align-items: flex-start;

  }

  .texte-01 {

    align-self: stretch;

    display: flex;

    gap: 50px;

  }

  .container-2-vh-75 {

    height: 29.2174%;

    padding-top: 37px;

    padding-bottom: 17px;

    padding-left: 25px;

    padding-right: 25px;

    left: 0.0000%;

    top: 38.5416%;

    background-image: url(./assets/img/image-4.png);

    flex-direction: column;

    gap: 70px;

    right: auto;

  }

  .portefolio-vh-100 {

    height: 36.8024%;

    left: 0.0000%;

    top: 1.7391%;

    overflow: hidden;

    background-image: url(./assets/img/image-6.png);

    gap: 0;

  }

  .bloc-droit-01 {

    width: 100%;

    align-self: stretch;

    flex-direction: column;

    justify-content: center;

    align-items: flex-end;

  }

  .footer-vh-25 {

    height: 34.7826%;

    background-image: url(./assets/img/image-1.png);

    flex-direction: column;

  }

}



    @media (max-width: 1024px) {

      body {

        max-width: 800px;

        overflow-x: hidden;

        margin: 0 auto;

      }

    }



    @media (max-width: 370px) {

      body {

        max-width: 375px;

        overflow-x: hidden;

        margin: 0 auto;

      }

    }

  

/* DOMINATION ABSOLUE DE LA GRILLE PHOTOS */

.page__bloc-photo-01 {

    display: grid !important;

    grid-template-columns: repeat(4, 1fr) !important;

    gap: 20px !important;

    padding: 60px 40px !important;

    width: 100% !important;

    max-width: 1200px !important; /* Centrage */

    margin: 0 auto !important;    /* Centrage */

    box-sizing: border-box !important;

    height: auto !important;

    overflow: visible !important;

}



@media (max-width: 1024px) {

    .page__bloc-photo-01 {

        grid-template-columns: repeat(3, 1fr) !important;

        padding: 40px 20px !important;

    }

}



@media (max-width: 767px) {

    .page__bloc-photo-01 {

        grid-template-columns: repeat(2, 1fr) !important; /* 2 colonnes sur mobile c'est mieux que 1 immense */

        padding: 20px 10px !important;

        gap: 10px !important;

    }

}



.page__bloc-photo-01 picture {

    display: block !important;

    position: relative !important;

    width: 100% !important;

    height: auto !important;

    aspect-ratio: 213 / 333 !important; /* Format vertical du Figma original */

    overflow: visible !important; /* Pour que le scale() sorte ! */

}



.page__bloc-photo-01 picture img {

    position: absolute !important; 

    top: 0 !important;

    left: 0 !important;

    right: 0 !important;

    bottom: 0 !important;

    width: 100% !important;

    height: 100% !important;

    object-fit: cover !important;

    margin: 0 !important;

    transform: none ;

    transition: transform 0.3s ease, box-shadow 0.3s ease !important;

}



@media (hover: hover) {

    .page__bloc-photo-01 picture img:hover {

        transform: scale(1.05) !important;

        box-shadow: 0 10px 20px rgba(0,0,0,0.3) !important;

        z-index: 10 !important;

    }

}



/* FIX BACKGROUND PORTEFOLIO */

.page__portefolio-vh-100 {

    position: relative !important;

    left: auto !important;

    top: auto !important;

    height: auto !important;

    background-size: cover !important;

    background-position: center !important;

    background-repeat: no-repeat !important;

    padding-bottom: 40px !important;

    z-index: 1 !important;

}



/* FIX LE FONT OVERLAP DU MENU A CAUSE DES HAUTEURS ABSOLUES */

.page__desktop {

    display: flex !important;

    flex-direction: column !important;

    overflow: visible !important;

    height: auto !important;

}



/* PATCH 3: FIX DESKTOP WIDTH & SECTION OVERLAP */

.page__desktop {

    width: 100% !important;

    max-width: 100vw !important;

    overflow-x: hidden !important;

    display: flex !important;

    flex-direction: column !important;

}



.page__container-2-vh-75, .page__footer-vh-25, .page__menu-01, .page__portefolio-vh-100 {

    position: relative !important;

    left: auto !important;

    top: auto !important;

    right: auto !important;

    bottom: auto !important;

    width: 100% !important;

    margin: 0 !important;

    transform: none !important;

    box-sizing: border-box !important;

}



/* ======= SECTION INSTAGRAM ======= */
/* Fond marron, logo centré, texte blanc — fidèle au design Figma */

.page__container-2-vh-75 {
  width: 100%;
  background: #B95128;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 60px 20px;
}

.page__texte-04 {
  width: 100%;
  max-width: 800px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 60px;
  padding: 20px;
}

.page__img-3 {
  width: 227px;
  height: 226px;
  object-fit: cover;
  object-position: center;
}

.page__suivez-nous-sur-0eee {
  align-self: stretch;
  text-align: center;
}

.page__suivez-nous-sur-0fc1 {
  font-size: 24px;
  font-family: "ballers-delight";
  font-weight: 400;
  word-wrap: break-word;
  color: white;
}

/* ======= FOOTER STANDARD COMPONENT ======= */
/* Copié depuis devor (source de vérité) */

.page__footer-vh-25 {
  width: 100%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-image: url(../devor/assets/img/image-37.png);
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  background: #EFEDE5;
  padding: 40px 10%;
}

.page__bloc-gauche-01 {
  flex: 1 1 0;
  align-self: stretch;
  padding-left: 40px;
  padding-right: 40px;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 40px;
}

.page__texte-gauche-01 {
  flex: 1 1 0;
  display: inline-flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 43.44px;
}

.page__mentions-legales-01 {
  align-self: stretch;
}

.page__mentions-legales-01-1f9b {
  font-size: clamp(22px, 1.2503rem + 0.532vw, 30.22px);
  font-family: "ballers-delight";
  font-weight: 400;
  word-wrap: break-word;
  color: #B95128;
}

.page__politique-de-eb81 {
  align-self: stretch;
}

.page__politique-de-eb81-dc85 {
  font-size: clamp(22px, 1.2503rem + 0.532vw, 30.22px);
  font-family: "ballers-delight";
  font-weight: 400;
  word-wrap: break-word;
  color: #B95128;
}

.page__bloc-droit-01 {
  flex: 1 1 0;
  padding-left: 41.55px;
  padding-right: 41.55px;
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

.page__texte-01 {
  flex: 1 1 0;
  display: inline-flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-end;
  gap: 35px;
}

.page__contact-contact-ffbc {
  font-size: clamp(25.87px, 1.43rem + 0.7974vw, 38.19px);
  font-family: "ballers-delight";
  font-weight: 400;
  word-wrap: break-word;
  color: #B95128;
}

.page__contact-contact-ffbd {
  font-size: clamp(25.87px, 1.5796rem + 0.1592vw, 28.33px);
  font-family: Montserrat;
  font-weight: 400;
  word-wrap: break-word;
  color: #B95128;
}

.page__contact-contact-e6b7 {
  align-self: stretch;
  height: 83.10px;
  text-align: right;
}

.page__insta-01 {
  width: 100%;
  align-self: stretch;
  display: inline-flex;
  justify-content: flex-end;
  align-items: center;
}

.page__instagram-01-span {
  font-size: clamp(32px, 1.9061rem + 0.4006vw, 38.19px);
  font-family: "ballers-delight";
  font-weight: 400;
  word-wrap: break-word;
  color: #B95128;
}

.page__instagram-01 {
  width: 363.57px;
  height: 43.44px;
  text-align: right;
}

.page__img-2 {
  width: 96.32px;
  height: 95.75px;
  object-fit: cover;
  object-position: center;
}

/* Footer responsive mobile */
@media (max-width: 900px) {
  .page__footer-vh-25 {
    flex-direction: column;
    text-align: center;
    gap: 40px;
  }
  .page__bloc-gauche-01, .page__bloc-droit-01 {
    flex-direction: column;
    gap: 20px;
    width: 100%;
    padding: 0;
  }
  .page__texte-01 {
    align-items: center;
  }
  .page__contact-contact-e6b7 {
    text-align: center;
    height: auto;
  }
  .page__instagram-01 {
    text-align: center;
  }
  .page__insta-01 {
    justify-content: center;
    flex-direction: column;
    align-items: center;
  }
}

/* LIGHTBOX EXPERIMENTALE & HOVER EFFECTS */

#lightbox { position: fixed; z-index: 9999; left: 0; top: 0; width: 100vw; height: 100vh; background-color: rgba(0, 0, 0, 0.9); display: flex !important; justify-content: center; align-items: center; opacity: 0; visibility: hidden; transition: opacity 0.3s ease, visibility 0.3s ease; backdrop-filter: blur(10px); }

#lightbox.active { opacity: 1; visibility: visible; }

#lightbox-img { max-width: 90vw; max-height: 85vh; object-fit: contain; transform: scale(0.9); transition: transform 0.3s ease; box-shadow: 0 0 30px rgba(0,0,0,0.5); border-radius: 10px; }

#lightbox.active #lightbox-img { transform: scale(1); }

#lightbox-close { position: absolute; top: 30px; right: 40px; color: white; font-size: 50px; font-weight: bold; cursor: pointer; z-index: 10000; text-shadow: 0 0 10px rgba(0,0,0,0.5); }

#lightbox-prev, #lightbox-next { position: absolute; top: 50%; transform: translateY(-50%); color: white; font-size: 60px; cursor: pointer; padding: 20px; user-select: none; z-index: 10000; transition: color 0.2s; text-shadow: 0 0 10px rgba(0,0,0,0.5); }

#lightbox-prev:hover, #lightbox-next:hover { color: #ccc; }

#lightbox-prev { left: 5vw; }

#lightbox-next { right: 5vw; }

.page__img { transition: transform 0.3s ease, box-shadow 0.3s ease !important; cursor: pointer; }

.page__img:hover { transform: scale(1.05) !important; box-shadow: 0 15px 30px rgba(0,0,0,0.4) !important; z-index: 5 !important; position: relative !important; }

/* === PHOTOS PAGE CUSTOM STYLES === */
/* v2.19.0 — 2026-04-06             */

/* -- Forcer un layout correct pour la page photos (header non-absolu) -- */
/* Le header de devor est en position:absolute (pour chevaucher le hero)  */
/* Sur photos il n'y a pas de hero, donc on le force à relative.          */
/* Déjà géré inline dans le HTML injecté — backup CSS:                    */
.page__desktop > .menu-active-accueil-e82f {
  position: relative !important;
}

/* Grille galerie photos */
.page__portefolio-vh-100 {
  position: static !important;
  width: 100% !important;
  height: auto !important;
  left: auto !important;
  top: auto !important;
  transform: none !important;
}

.page__bloc-photo-01 {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 16px !important;
  padding: 48px 40px !important;
  width: 100% !important;
  max-width: 1400px !important;
  margin: 0 auto !important;
  box-sizing: border-box !important;
  height: auto !important;
  position: static !important;
  left: auto !important;
  top: auto !important;
}

.page__bloc-photo-01 picture {
  display: block !important;
  position: relative !important;
  width: 100% !important;
  aspect-ratio: 213 / 333 !important;
  overflow: hidden !important;
  height: auto !important;
}

.page__bloc-photo-01 picture img {
  position: absolute !important;
  top: 0 !important; left: 0 !important;
  width: 100% !important; height: 100% !important;
  object-fit: cover !important;
  margin: 0 !important;
  transition: transform 0.35s ease, box-shadow 0.35s ease !important;
}

.page__bloc-photo-01 picture:hover img {
  transform: scale(1.06) !important;
  box-shadow: 0 12px 28px rgba(0,0,0,0.35) !important;
}

/* Section Instagram sous la grille */
.page__container-2-vh-75 {
  position: static !important;
  width: 100% !important;
  height: auto !important;
  left: auto !important; top: auto !important;
}

/* Lightbox */
#ph-lightbox {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 9999;
  background: rgba(0,0,0,0.92);
  justify-content: center;
  align-items: center;
  backdrop-filter: blur(8px);
}
#ph-lightbox.ph-open { display: flex; }
#ph-lb-img {
  max-width: 100vw;
  max-height: 100vh;
  width: 100vw;
  height: 100vh;
  object-fit: contain;
  border-radius: 0;
  box-shadow: none;
}
#ph-lb-close, #ph-lb-prev, #ph-lb-next {
  position: absolute;
  background: none;
  border: none;
  color: rgba(255,255,255,0.85);
  cursor: pointer;
  font-size: 3rem;
  line-height: 1;
  padding: 12px;
  transition: color 0.2s, transform 0.15s;
  z-index: 10000;
  font-family: sans-serif;
}
#ph-lb-close:hover, #ph-lb-prev:hover, #ph-lb-next:hover { color: #fff; }
#ph-lb-close { top: 20px; right: 28px; font-size: 2.5rem; }
#ph-lb-prev  { left: 4vw;  top: 50%; transform: translateY(-50%); }
#ph-lb-next  { right: 4vw; top: 50%; transform: translateY(-50%); }

/* Responsive galerie */
@media (max-width: 1024px) {
  .page__bloc-photo-01 {
    grid-template-columns: repeat(3, 1fr) !important;
    padding: 36px 24px !important;
  }
}
@media (max-width: 767px) {
  .page__bloc-photo-01 {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 10px !important;
    padding: 20px 12px !important;
  }
}

/* ======= HEADER STANDARD COMPONENT ======= */
/* Copié depuis menu-traiteur (source de vérité) */

.menu-bg {
  width: 100%;
  height: 107.5269%;
  left: 0.0000%;
  top: 0;
  bottom: 0;
  margin-top: auto;
  margin-bottom: auto;
  position: absolute;
  object-fit: cover;
  object-position: center;
}

.logo-1-devor-1 {
  width: 181px;
  height: 64px;
  object-fit: cover;
  object-position: center;
}

.accueil-span {
  font-size: 40.44px;
  font-family: "ballers-delight";
  font-weight: 400;
  word-wrap: break-word;
  color: #EFEDE5;
}

.accueil {
  width: 147.78px;
  text-align: center;
}

.menu-span {
  font-size: 40.44px;
  font-family: "ballers-delight";
  font-weight: 400;
  word-wrap: break-word;
  color: #EFEDE5;
}

.menu {
  width: 216.22px;
  opacity: 0.60;
  text-align: center;
}

.photos-span {
  font-size: 40.44px;
  font-family: "ballers-delight";
  font-weight: 400;
  word-wrap: break-word;
  color: #EFEDE5;
}

.photos {
  width: 216.22px;
  opacity: 0.60;
  text-align: center;
}

.contact-span {
  font-size: 40.44px;
  font-family: "ballers-delight";
  font-weight: 400;
  word-wrap: break-word;
  color: #EFEDE5;
}

.contact {
  width: 216.22px;
  opacity: 0.60;
  text-align: center;
}

.menu-droite {
  width: 849px;
  height: 93px;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 17.50px;
}

.logo {
  width: 100%;
  height: 93px;
  padding-top: 10px;
  padding-bottom: 10px;
  padding-left: 10px;
  padding-right: 10px;
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.menu-active-accueil-e82f {
  width: 100%;
  align-self: stretch;
  position: relative;
  display: inline-flex;
  justify-content: flex-start;
  align-items: flex-start;
}

.burger-menu-btn {
  display: none;
  cursor: pointer;
  z-index: 5;
}

@media (max-width: 767px) {
  .menu-bg {
    height: 100%;
    top: 0;
    z-index: 2;
    bottom: auto;
  }
  .logo-1-devor-1 {
    width: 147px;
    height: 52px;
  }
  
  .burger-menu-btn {
    display: block;
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
  }

  .logo {
    padding-top: 19px;
    padding-bottom: 19px;
    align-self: stretch;
    z-index: 5;
    flex-direction: row;
    justify-content: center;
    padding-left: 0;
    padding-right: 0;
    background: #B95128;
  }

  .menu-active-accueil-e82f {
    display: flex;
    flex-direction: column;
    z-index: 1000;
  }

  /* Dropdown styling */
  .menu-droite {
    width: 280px;
    height: auto;
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translate(-50%, -10px);
    background: #B95128;
    padding-top: 30px;
    padding-bottom: 40px;
    flex-direction: column;
    justify-content: flex-start;
    gap: 30px;
    border-bottom-left-radius: 25px;
    border-bottom-right-radius: 25px;
    box-shadow: 0px 8px 15px rgba(0,0,0,0.3);
    border: 2px solid #EFEDE5; 
    border-top: none;
    z-index: 1;
    
    /* Animation states */
    opacity: 0;
    visibility: hidden;
    transition: all 0.4s ease-in-out;
  }

  .menu-droite.active {
    opacity: 1;
    visibility: visible;
    transform: translate(-50%, -2px);
  }
}

/* ── Menu actif : page photos ── */
.accueil { opacity: 0.60 !important; }
.photos  { opacity: 1    !important; }
