@import url(https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap);
/**
 * COLORS
*/
body {
  padding: 0;
  margin: 0;
  font-family: "Montserrat", sans-serif;
}

.grecaptcha-badge {
  visibility: hidden;
}

a {
  text-decoration: underline;
  transition: all 0.3s linear;
}
a svg {
  transition: all 0.3s linear;
}
a:hover, a:focus {
  transition: all 0.3s linear;
}
a:hover svg, a:focus svg {
  transition: all 0.3s linear;
}

.elementor-divider-separator {
  border-radius: 100px;
}

.btn-contact .elementor-button-content-wrapper {
  align-items: center;
  gap: 10px;
}
.btn-contact .elementor-button-icon svg {
  width: 1.5625rem;
}

.elementor-widget-text-editor .elementor-widget-container ul {
  list-style: none outside none;
  padding: 0;
}
.elementor-widget-text-editor .elementor-widget-container ul li:before {
  content: "";
  width: 10px;
  height: 1px;
  display: inline-block;
  vertical-align: 5px;
  margin-right: 7px;
  background-color: #000000;
}
.elementor-widget-text-editor .elementor-widget-container ol {
  list-style-position: inside;
}
.elementor-widget-text-editor .elementor-widget-container ol li::marker {
  color: #000000;
}
.elementor-widget-text-editor .elementor-widget-container a strong {
  color: #000000;
}

.elementor-button:hover, .elementor-button:focus {
  text-decoration: none !important;
}

.elementor-image-carousel img {
  display: block;
}

.elementor-element .swiper .swiper-pagination-bullets.swiper-pagination-horizontal {
  bottom: 15px;
}

.elementor-accordion .elementor-accordion-item {
  border-top: 1px solid #000000 !important;
}
.elementor-accordion .elementor-accordion-item:last-child, .elementor-accordion .elementor-accordion-item:last-of-type {
  border-bottom: 1px solid #000000 !important;
}
.elementor-accordion .elementor-accordion-item .elementor-tab-title {
  line-height: 1.7rem;
}
.elementor-accordion .elementor-accordion-item .elementor-tab-title .elementor-accordion-title {
  text-decoration: none;
}
.elementor-accordion .elementor-accordion-item .elementor-tab-title .elementor-accordion-title:hover {
  color: #d1a959;
}
.elementor-accordion .elementor-accordion-item .elementor-tab-title .elementor-accordion-icon svg {
  width: 1.3em;
  height: 1.3em;
}
.elementor-accordion .elementor-accordion-item .elementor-tab-content p:first-child {
  margin-top: 0;
}

.cky-notice-btn-wrapper .cky-btn,
.cky-prefrence-btn-wrapper .cky-btn {
  padding: 10px 20px;
}

.elementor-heading-title span {
  margin: 0 5px;
  color: #d1a959;
}

#back-to-top {
  border: 1px solid #d1a959;
  display: none;
  position: fixed;
  z-index: 25;
  bottom: 10px;
  right: 10px;
  width: 40px;
  height: 40px;
  line-height: 40px;
  font-size: 1.125rem;
  text-align: center;
  background-color: #d1a959;
  color: #fff;
  cursor: pointer;
  border-radius: 50%;
  text-decoration: none;
  transition: all 0.3s linear;
}
@media (min-width: 768px) {
  #back-to-top {
    bottom: 20px;
    right: 20px;
    width: 60px;
    height: 60px;
    line-height: 60px;
    font-size: 1.5rem;
  }
}
#back-to-top:hover, #back-to-top:focus {
  border: 1px solid #000000;
  background-color: #000000;
  transition: all 0.3s linear;
}

.wpcf7 .wpcf7-submit:disabled {
  opacity: 0.3;
}

.wpcf7-form p {
  margin: 0;
}
.wpcf7-form .title {
  font-size: 2.1875rem;
  line-height: 2.8125rem;
  font-weight: 700;
}
.wpcf7-form .required-field-instruction p {
  font-weight: 300;
  font-size: large;
}
.wpcf7-form label {
  font-weight: 400;
  font-size: large;
}
.wpcf7-form .form-line {
  margin-bottom: 30px;
}
.wpcf7-form .form-line label {
  display: block;
  font-weight: 400;
  margin-bottom: 10px;
  min-height: 24px;
  font-size: large;
}
.wpcf7-form .form-line label span {
  font-size: 14px;
}
.wpcf7-form .form-line label sup {
  color: #ff0000;
  margin-left: 3px;
}
.wpcf7-form .form-line.form-line-3 {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 30px 30px;
}
.wpcf7-form .form-line.form-line-3.form-line-adresse {
  grid-template-columns: 1.5fr 0.5fr 1fr;
}
.wpcf7-form .form-line.form-line-2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 30px 30px;
  align-items: end;
}
.wpcf7-form .form-line.form-line-center {
  text-align: center;
}
.wpcf7-form .form-line.form-line-center .title:after {
  margin-left: auto;
  margin-right: auto;
}
.wpcf7-form .form-line.form-line-center .sujet-group {
  margin: 0 auto 50px;
}
.wpcf7-form .form-line.form-line-case {
  margin-bottom: 30px;
}
.wpcf7-form .form-line.form-line-case .wpcf7-radio {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 30px 30px;
}
.wpcf7-form .form-line.form-line-case .wpcf7-radio span.wpcf7-list-item {
  position: relative;
  margin: 0;
}
.wpcf7-form .form-line.form-line-case .wpcf7-radio span.wpcf7-list-item label {
  min-height: inherit;
  margin: 0;
}
.wpcf7-form .form-line.form-line-case .wpcf7-radio span.wpcf7-list-item input[type=checkbox],
.wpcf7-form .form-line.form-line-case .wpcf7-radio span.wpcf7-list-item input[type=radio] {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  opacity: 0;
  height: 100%;
  width: 100%;
  cursor: pointer;
  margin: 0;
}
.wpcf7-form .form-line.form-line-case .wpcf7-radio span.wpcf7-list-item .wpcf7-list-item-label {
  width: 100%;
  background: #7b7e81;
  border-radius: 4px;
  cursor: pointer;
  text-align: center;
  position: relative;
  padding-left: 30px;
  padding: 16px 20px;
  transition: 0.3s;
  min-height: 60px;
  color: white;
  display: block;
  line-height: 28px;
  border: 3px solid #7b7e81;
}
.wpcf7-form .form-line.form-line-case .wpcf7-radio span.wpcf7-list-item.active .wpcf7-list-item-label {
  background-color: #009f98;
  border: 3px solid #addddb;
}
.wpcf7-form .form-line a {
  color: black;
  text-decoration: underline;
}
.wpcf7-form .form-line a:hover, .wpcf7-form .form-line a:focus {
  text-decoration: none;
}
.wpcf7-form .form-line .piece-jointe-group small {
  font-size: small;
  font-weight: 300;
}
.wpcf7-form input[type=text],
.wpcf7-form input[type=email],
.wpcf7-form input[type=tel],
.wpcf7-form input[type=file],
.wpcf7-form input[type=date],
.wpcf7-form select,
.wpcf7-form textarea {
  background-color: #f5f5f5;
  border-radius: 4px;
  min-height: 60px;
  color: #1d1d1b;
  font-size: 16px;
  line-height: 28px;
  border: 0;
  outline: 0;
  padding: 16px 20px;
  font-family: "ITC Avant Garde Gothic", sans-serif;
  font-weight: 500;
  width: 100%;
  box-sizing: border-box;
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
}
.wpcf7-form input[type=text]::placeholder,
.wpcf7-form input[type=email]::placeholder,
.wpcf7-form input[type=tel]::placeholder,
.wpcf7-form input[type=file]::placeholder,
.wpcf7-form input[type=date]::placeholder,
.wpcf7-form select::placeholder,
.wpcf7-form textarea::placeholder {
  font-family: "ITC Avant Garde Gothic", sans-serif;
  color: #1d1d1b;
  font-weight: 500;
}
.wpcf7-form select {
  cursor: pointer;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27 fill=%27none%27 stroke=%27currentColor%27 stroke-width=%272%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27%3e%3cpolyline points=%276 9 12 15 18 9%27%3e%3c/polyline%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right 1rem center;
  background-size: 1.5em;
}
.wpcf7-form .btn-submit {
  border: 0;
  transition: all 0.3s linear;
  cursor: pointer;
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  margin-top: 30px;
}
.wpcf7-form .btn-submit:hover, .wpcf7-form .btn-submit:focus {
  transition: all 0.3s linear;
}
.wpcf7-form .btn-center {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.wpcf7-form .btn-center .btn-submit {
  display: inline-block;
}

@media (max-width: 1024px) {
  .wpcf7-form .form-line.form-line-case .wpcf7-radio {
    grid-template-columns: 1fr 1fr;
  }
  .wpcf7-form .form-line.form-line-3 {
    grid-template-columns: 1fr;
  }
  .wpcf7-form .form-line.form-line-3.form-line-adresse {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 767px) {
  .wpcf7-form .title {
    font-size: 20px;
  }
  .wpcf7-form .form-line.form-line-case .wpcf7-radio {
    grid-template-columns: 1fr;
  }
  .wpcf7-form .form-line.form-line-2 {
    grid-template-columns: 1fr;
  }
}
.error404 #page {
  text-align: center;
}
@font-face {
  font-family: "icomoon";
  src: url(.././fonts/3020bd6a4c59eceafb71.eot);
  src: url(.././fonts/3020bd6a4c59eceafb71.eot#iefix) format("embedded-opentype"), url(.././fonts/e1340aeeb090ca9ffd6f.ttf) format("truetype"), url(.././fonts/667f045a7f642c5a1f27.woff) format("woff"), url(../images/icomoon.cca71abda1a9739b2a46.svg#icomoon) format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: block;
}
[class^=icon-],
[class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: "icomoon" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-youtube:before {
  content: "\e90e";
}

.icon-arrow-up:before {
  content: "\e900";
}

.icon-bars:before {
  content: "\e901";
}

.icon-check:before {
  content: "\e902";
}

.icon-chevron-down:before {
  content: "\e903";
}

.icon-chevron-left:before {
  content: "\e904";
}

.icon-chevron-right:before {
  content: "\e905";
}

.icon-chevron-up:before {
  content: "\e906";
}

.icon-envelope:before {
  content: "\e907";
}

.icon-facebook:before {
  content: "\e908";
}

.icon-linkedin:before {
  content: "\e909";
}

.icon-map-marker-alt:before {
  content: "\e90a";
}

.icon-phone:before {
  content: "\e90b";
}

.icon-play:before {
  content: "\e90c";
}

.icon-times:before {
  content: "\e90d";
}
