@charset "UTF-8";
/* line 4, ../scss/main.scss */
*, *::before, *::after {
  margin: 0;
  padding: 0;
  border: none;
  box-sizing: border-box;
  list-style: none;
  transition: .3s;
}

/* line 21, ../scss/main.scss */
html {
  -webkit-font-smoothing: subpixel-antialiased;
  text-rendering: optimizeLegibility;
  -webkit-user-select: none;
  -webkit-touch-callout: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  /*
      -webkit-font-smoothing: none;
      -webkit-font-smoothing: antialiased;
      -webkit-font-smoothing: subpixel-antialiased;
  */
  /*
      text-rendering: optimizeLegibility;
      text-rendering: geometricPrecision;
  */
}

/* line 41, ../scss/main.scss */
article, aside, details, figcaption, figure,
footer, header, main, menu, nav, section, summary {
  /* Add correct display for IE 9- and some newer browsers */
  display: block;
}

/* line 57, ../scss/main.scss */
* {
  scrollbar-width: none;
  /* Firefox */
  -ms-overflow-style: none;
  /* Internet Explorer 10+ */
}

/* Masque les barres de défilement pour les navigateurs Webkit (Chrome, Edge, Safari) */
/* line 63, ../scss/main.scss */
*::-webkit-scrollbar {
  display: none;
}

/* line 67, ../scss/main.scss */
img {
  max-width: 100%;
}

/* line 71, ../scss/main.scss */
a {
  text-decoration: none;
}

/* -------------------------------------------------------- Typo */
@font-face {
  font-family: 'Amour';
  src: url("fonts/AmourModern-Regular.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'Inter';
  src: url("fonts/inter.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'Inter';
  src: url("fonts/inter_italic.ttf") format("truetype");
  font-weight: normal;
  font-style: italic;
}
@font-face {
  font-family: 'RedRose';
  src: url("fonts/RedRose-Bold.ttf") format("truetype");
  font-weight: bold;
  font-style: normal;
}
@font-face {
  font-family: 'RedRose';
  src: url("fonts/RedRose-SemiBold.ttf") format("truetype");
  font-weight: bold;
  font-style: oblique;
}
@font-face {
  font-family: 'RedRose';
  src: url("fonts/RedRose-Light.ttf") format("truetype");
  font-weight: 300;
  font-style: normal;
}
@font-face {
  font-family: 'RedRose';
  src: url("fonts/RedRose-Medium.ttf") format("truetype");
  font-weight: 600;
  font-style: normal;
}
@font-face {
  font-family: 'RedRose';
  src: url("fonts/RedRose-Regular.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}
/* Définir la police avec @font-face */
@font-face {
  font-family: 'AmsterdamFour';
  src: url("fonts/Amsterdam Four_ttf 400.ttf") format("truetype");
  font-weight: 400;
  /* Correspond au poids de la police */
  font-style: normal;
  /* Style normal (pas italic) */
}
/* Définir la police avec @font-face */
@font-face {
  font-family: 'TanPearl';
  src: url("fonts/tan-pearl.ttf") format("truetype");
  font-weight: normal;
  /* Définir le poids (par défaut : normal) */
  font-style: normal;
  /* Style (normal ou italic) */
}
/* -------------------------------------------------------- ANIMATION */
/* line 146, ../scss/main.scss */
main {
  opacity: 0;
  -moz-transition: opacity 250ms linear;
  -o-transition: opacity 250ms linear;
  -webkit-transition: opacity 250ms linear;
  transition: opacity 250ms linear;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

/* line 154, ../scss/main.scss */
main.layoutComplete {
  opacity: 1;
}

/* -------------------------------------------------------- Common */
/* line 159, ../scss/main.scss */
body {
  margin: 0;
  font-size: 100%;
  line-height: 1.5;
  -webkit-user-select: none;
  -webkit-touch-callout: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  overflow-x: hidden;
  background-color: #EAEAE9;
}

/* line 173, ../scss/main.scss */
h1 {
  font-family: 'TanPearl';
  color: #AA8043;
  font-size: 3em;
  margin: -.07em 0 0 0;
  margin-bottom: 2vh;
  line-height: 1;
  letter-spacing: .05em;
  -webkit-user-select: none;
  -webkit-touch-callout: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

/* line 194, ../scss/main.scss */
h2 {
  font-family: 'TanPearl';
  text-transform: uppercase;
  font-size: 1.3em;
  color: #AA8043;
  margin-bottom: 4vh;
  line-height: 1.2;
  padding-bottom: .4em;
  -webkit-user-select: none;
  -webkit-touch-callout: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

/* line 208, ../scss/main.scss */
span {
  font-family: "Amour";
  -webkit-user-select: none;
  -webkit-touch-callout: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

/* line 218, ../scss/main.scss */
a {
  color: #AA8043;
  text-decoration: none;
  font-family: 'Inter';
}

/* line 227, ../scss/main.scss */
p {
  font-size: 1em;
  font-weight: 300;
  font-family: 'Inter';
  color: #AA8043;
}

/* -------------------------------------------------------- Nav */
/* line 236, ../scss/main.scss */
.sticky-header__header {
  /* Stick to the top */
  position: fixed;
  background-color: #EAEAE9;
  z-index: 3;
  width: 100vw;
  height: 80px;
  top: 0;
  margin-right: 0;
  margin-left: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: row;
}
/* line 250, ../scss/main.scss */
.sticky-header__header ul {
  height: 80px;
  width: 95%;
  padding-top: 15px;
  border-bottom: 1px solid #AA8043;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-around;
  padding: 5px;
}
/* line 260, ../scss/main.scss */
.sticky-header__header ul li a {
  color: #AA8043;
  font-family: 'TanPearl';
  font-size: 1.4em;
}
/* line 264, ../scss/main.scss */
.sticky-header__header ul li a:hover {
  font-weight: bold;
}
/* line 269, ../scss/main.scss */
.sticky-header__header ul .menu-item {
  text-decoration: none;
  text-transform: uppercase;
}

/* line 278, ../scss/main.scss */
.isActive a {
  text-decoration: underline;
  font-weight: 600;
}

/* -------------------------------------------------------- Content */
/* line 287, ../scss/main.scss */
.simple-grid {
  display: flex;
  margin-left: -0.25rem;
  margin-right: -0.25rem;
}

/* line 293, ../scss/main.scss */
.simple-grid__cell--fill {
  flex: 1;
}

/* Cell with given width */
/* line 298, ../scss/main.scss */
.simple-grid__cell--1\/2 {
  flex: 0 0 50%;
}

/* line 301, ../scss/main.scss */
.simple-grid__cell--1\/3 {
  flex: 0 0 33.3333333%;
}

/* line 304, ../scss/main.scss */
.simple-grid__cell--1\/4 {
  flex: 0 0 25%;
}

/* line 307, ../scss/main.scss */
.simple-grid__cell--3\/4 {
  flex: 0 0 75%;
}

/* line 310, ../scss/main.scss */
.simple-grid__cell--4\/4 {
  flex: 0 0 75%;
}

/* line 313, ../scss/main.scss */
.simple-grid__cell--2\/3 {
  flex: 0 0 66.66%;
}

/* line 316, ../scss/main.scss */
.simple-grid__cell--3\/8 {
  flex: 0 0 37.5%;
}

/* -------------------------------------------------------- FOOTER */
/* line 322, ../scss/main.scss */
footer {
  margin-top: 5vh;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
/* line 328, ../scss/main.scss */
footer .footer {
  width: 95%;
  padding-top: 40px;
  padding-bottom: 40px;
  border-top: 1px solid #AA8043;
  display: flex;
  flex-direction: row;
  align-items: start;
  justify-content: space-around;
}
/* line 337, ../scss/main.scss */
footer .footer li {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  width: 15%;
}
/* line 341, ../scss/main.scss */
footer .footer li h2, footer .footer li p, footer .footer li a {
  padding: 0;
  font-size: 12pt;
  margin-bottom: 5px;
  color: #AA8043;
}
/* line 347, ../scss/main.scss */
footer .footer li a:hover {
  font-weight: bold;
}
/* line 351, ../scss/main.scss */
footer .footer li .footerLogo {
  display: flex;
  flex-direction: row;
  justify-content: start;
  align-items: center;
}
/* line 356, ../scss/main.scss */
footer .footer li .footerLogo img {
  width: 30px;
  max-height: 30px;
}
/* line 359, ../scss/main.scss */
footer .footer li .footerLogo img:first-child {
  margin-right: 10px;
}

/* -------------------------------------------------------- HOME VIDEO */
/* Conteneur de la bannière */
/* line 373, ../scss/main.scss */
.video-banner {
  position: relative;
  width: 100%;
  height: 100vh;
  /* Hauteur : 100% de la fenêtre */
  overflow: hidden;
}

/* Vidéo */
/* line 381, ../scss/main.scss */
.background-video {
  position: relative;
  width: 100vw;
  object-fit: cover;
  z-index: 1;
}

/* Contenu superposé */
/* line 389, ../scss/main.scss */
.overlay-content {
  position: absolute;
  width: 100vw;
  height: calc(100vh - 80px);
  top: 80px;
  left: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  color: white;
  text-align: center;
  z-index: 2;
  background-color: rgba(0, 0, 0, 0.2);
}

/* line 405, ../scss/main.scss */
.overlay-content h1 {
  font-size: 10rem;
  margin-bottom: 1rem;
  text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.7);
  font-family: "AmsterdamFour";
}

/* line 412, ../scss/main.scss */
.overlay-content p {
  font-size: 1.5rem;
  margin-bottom: 1.5rem;
  text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.7);
}

/* line 418, ../scss/main.scss */
.cta-button {
  display: inline-block;
  padding: 10px 20px;
  font-size: 1.2rem;
  color: white;
  font-family: 'Inter';
  background-color: #AA8043;
  text-decoration: none;
  transition: background-color 0.3s;
  box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.7);
}

/* line 430, ../scss/main.scss */
.cta-button:hover {
  background-color: #836232;
}

/* -------------------------------------------------------- HOME CONTENT */
/* line 436, ../scss/main.scss */
.mainContent {
  margin-top: 15vh;
  width: 95%;
  padding-bottom: 40px;
  border-bottom: 1px solid #AA8043;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: start;
}
/* line 445, ../scss/main.scss */
.mainContent article {
  width: 45%;
  margin-right: 2.5%;
}
/* line 448, ../scss/main.scss */
.mainContent article img {
  width: 65%;
}
/* line 451, ../scss/main.scss */
.mainContent article:first-child {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
/* line 458, ../scss/main.scss */
.mainContent:last-child {
  width: 75%;
  display: flex;
  flex-direction: column;
  align-items: start;
  justify-content: flex-start;
  border-bottom: none;
}
/* line 465, ../scss/main.scss */
.mainContent:last-child article {
  margin-top: 7.5vh;
  display: flex;
  width: 100%;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
}
/* line 472, ../scss/main.scss */
.mainContent:last-child article div {
  width: 27.5%;
}
/* line 475, ../scss/main.scss */
.mainContent:last-child article h1 {
  font-size: 1.8em;
  margin-top: 30px;
}
/* line 479, ../scss/main.scss */
.mainContent:last-child article img {
  width: 100%;
}
/* line 483, ../scss/main.scss */
.mainContent:last-child p {
  margin-top: 30px;
  font-size: 1.2em;
}

/* line 491, ../scss/main.scss */
#horraire {
  margin-top: 5vh;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
/* line 493, ../scss/main.scss */
#horraire h1 {
  font-size: 2em;
  margin-bottom: 4vh;
}
/* line 502, ../scss/main.scss */
#horraire div {
  display: flex;
  padding-bottom: 25px;
  margin-bottom: 25px;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  width: 50%;
  border-bottom: 1px solid #AA8043;
}
/* line 511, ../scss/main.scss */
#horraire div:last-child {
  border-bottom: none;
}
/* line 514, ../scss/main.scss */
#horraire div:first-child {
  padding-top: 25px;
  margin-top: 25px;
}
/* line 518, ../scss/main.scss */
#horraire div h2 {
  margin: 0;
  padding: 0;
}
/* line 522, ../scss/main.scss */
#horraire div h2, #horraire div p {
  font-size: 1em;
}

/* -------------------------------------------------------- REALISATIONS CONTENT */
/* line 531, ../scss/main.scss */
.mainRealisation {
  margin-top: 150px;
  margin-left: 10%;
  margin-right: 10%;
  width: 80%;
  display: flex;
  flex-direction: column;
  align-items: start;
  justify-content: center;
}
/* line 540, ../scss/main.scss */
.mainRealisation h1 {
  margin-bottom: 50px;
}
/* line 545, ../scss/main.scss */
.mainRealisation .realisation h1 {
  font-size: 2em;
}
/* line 548, ../scss/main.scss */
.mainRealisation .realisation a {
  margin-top: 2.5vh;
  margin-bottom: 5vh;
}
/* line 552, ../scss/main.scss */
.mainRealisation .realisation .prix {
  margin-top: 10px;
  font-weight: bold;
}
/* line 556, ../scss/main.scss */
.mainRealisation .realisation article {
  margin-bottom: 15vh;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  /* Espacement entre les vignettes */
  /* Conteneur des vignettes */
  /* Images à l'intérieur des vignettes */
}
/* line 563, ../scss/main.scss */
.mainRealisation .realisation article .thumbnail {
  width: 25vw;
  /* Largeur fixe */
  height: 25vw;
  /* Hauteur fixe pour garder les vignettes carrées */
  overflow: hidden;
  /* Coupe les parties dépassantes de l'image */
}
/* line 570, ../scss/main.scss */
.mainRealisation .realisation article .thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  /* Ajuste l'image pour remplir la vignette sans déformation */
  display: block;
  /* Évite les marges indésirables sur les images inline */
}

/* -------------------------------------------------------- MODAL IMG */
/* line 583, ../scss/main.scss */
.modal {
  z-index: 99;
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.85);
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

/* line 597, ../scss/main.scss */
.modal-content {
  max-width: 85%;
  max-height: 85%;
}

/* line 601, ../scss/main.scss */
.modal-title {
  color: #EAEAE9;
  transform: translateY(20px);
  font-size: 10pt;
  padding-top: 1%;
  padding-left: 5%;
  margin-top: 10px;
  display: block;
  font-style: italic;
  text-align: left;
  width: 100%;
}

/* line 613, ../scss/main.scss */
.close {
  position: absolute;
  top: 20px;
  right: 20px;
  cursor: pointer;
  color: #fff;
  font-size: 60px;
}

/* -------------------------------------------------------- MODAL IMG */
/* line 625, ../scss/main.scss */
.grid-image {
  display: flex;
  flex-wrap: wrap;
  position: relative;
  width: 100%;
}
/* line 630, ../scss/main.scss */
.grid-image .item {
  margin-left: 20px;
  margin-bottom: 50px;
  height: 50vh;
}
/* line 634, ../scss/main.scss */
.grid-image .item img {
  height: 100%;
  display: block;
}
/* line 638, ../scss/main.scss */
.grid-image .item p {
  margin-top: 10px;
  font-style: italic;
}

/* -------------------------------------------------------- MENTIONS LEGALES */
/* line 647, ../scss/main.scss */
.mentions {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}
/* line 652, ../scss/main.scss */
.mentions section {
  margin-top: 150px;
  width: 80%;
}
