/*
 Theme Name:   Eliophot Base Theme Child
 Theme URI:    https://www.eliophot.com
 Description:  Thème enfant de Eliophot Base Theme
 Author:       Eliophot
 Author URI:   https://www.eliophot.com
 Template:     eliophot-base-theme
 Version:      2.5.0
*/

/* FIX accessibilite fenetre modal focus first element */
.menu-top a:focus {
  background-color: transparent !important;
  color: var(--e-global-color-7c401d3) !important;
  border-color: #ffffff4d !important;
}

.menu-top a:focus-visible {
  background-color: var(--e-global-color-secondary) !important;
  color: #fff !important;
  border-color: #fff !important;
}

#close-modal a:focus,
#close-modal a:focus-visible {
  background-color: var(--e-global-color-cbc3c9e) !important;
  color: var(--e-global-color-primary) !important;
  border-color: transparent !important;
}

/* ------- QUICKSEARCH -------*/
.quicksearch .api-error {
  display: none;
}

.quicksearch .eliophot-qs {
  gap: 16px;
}

.quicksearch .eliophot-qs .eliophot-qs-field-container {
  align-items: flex-end;
  flex: auto;
  background: #fff;
  border-radius: 15px;
  padding: 16px 10px !important;
}

.quicksearch .eliophot-qs .eliophot-qs-field-container .eliophot-icon svg {
  width: 20px;
  height: auto;
}

.quicksearch select[name="residents"] {
  text-align: center !important;
  text-align-last: center !important;
  -moz-text-align-last: center !important;
}

/*bouton réserver*/
.quicksearch button[type="submit"] {
  background-image: url("/wp-content/uploads/2025/07/arrow-blue-right.svg") !important;
  background-repeat: no-repeat;
  background-size: 13px;
  background-position: center;
  height: 100%;
  margin: 0;
  border: none;
  max-height: unset !important;
}

@media screen and (min-width: 768px) {
  .quicksearch button[type="submit"] {
    text-indent: -9999px;
    width: 42px !important;
    min-width: 42px;
    color: transparent;
  }
}

/*input people*/
.quicksearch .eliophot-qs-people .eliophot-media-container {
  margin-right: 0;
}

.quicksearch .eliophot-qs-people select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-image: url(/wp-content/uploads/2025/07/arrow-midnight_blue-bottom.svg);
  background-repeat: no-repeat;
  background-position: right bottom;
  background-size: 16px;
  border-left: 15px !important;
  margin-left: -15px !important;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .quicksearch .elementor-hidden-desktop {
    display: none;
  }
}

@media screen and (min-width: 768px) and (max-width: 1024px) {
  .quicksearch .elementor-hidden-tablet {
    display: unset !important;
  }

  .quicksearch .eliophot-qs {
    flex-direction: row;
    align-items: center;
  }
}

@media screen and (max-width: 1366px) {
  .quicksearch .eliophot-qs button[type="submit"] {
    border: 1px solid #fff;
  }

  .quicksearch .eliophot-qs-people .eliophot-media-container {
    margin-right: 15px !important;
  }
}

/*qs version mobile*/
.quicksearch .eliophot-qs-mobile .item-price,
.quicksearch .eliophot-qs-mobile .no-avail,
.quicksearch .eliophot-qs-mobile .api-waiting {
  display: none !important;
}

.quicksearch .eliophot-qs-mobile .form-container {
  min-width: 100% !important;
}

.quicksearch .eliophot-qs-mobile .grid.grid-cols-6.gap-6 {
  display: flex !important;
  flex-direction: column;
  gap: 18px;
}

.quicksearch .eliophot-qs-mobile .input-form {
  margin: 0 !important;
  flex-direction: row-reverse;
  display: flex;
  justify-content: flex-end;
}

/*global champs*/
.quicksearch .eliophot-qs-mobile .input-form .icon-wrapper svg {
  display: none;
}

.quicksearch .eliophot-qs-mobile .col-span-3,
.quicksearch .eliophot-qs-mobile .col-span-3 + .col-span-3 + .col-span-6 {
  background: #fff;
  border-radius: 15px;
  padding: 10px 15px;
}

/*champ date*/
.quicksearch .eliophot-qs-mobile .col-span-3 .input-form .icon-wrapper {
  position: unset;
  content: url("/wp-content/uploads/2025/07/qs-logo-calendar.svg");
  width: 20px;
}

.quicksearch .eliophot-qs-mobile .input-form .qs-mobile-picker {
  padding-right: 0;
  padding-left: 0;
  flex-basis: auto !important;
}

/*champ nombre de personnes*/
.quicksearch
  .eliophot-qs-mobile
  .col-span-3
  + .col-span-3
  + .col-span-6
  .icon-wrapper {
  content: url("/wp-content/uploads/2025/07/arrow-midnight_blue-bottom.svg");
  width: 20px;
}

.quicksearch
  .eliophot-qs-mobile
  .col-span-3
  + .col-span-3
  + .col-span-6
  .input-form:before {
  content: url("/wp-content/uploads/2025/07/qs-logo-people.svg");
  width: 20px;
  bottom: 50%;
  transform: translateY(50%);
  left: 0;
  position: absolute;
  pointer-events: none;
}

.quicksearch .eliophot-qs-mobile input[type="submit"] {
  width: fit-content;
  border: 1px solid #fff;
  border-radius: 40px !important;
  padding: 12px 24px !important;
  background-position: center right 25px;
  margin: auto !important;
  color: #fff;
}

.quicksearch .eliophot-qs-mobile .col-span-6:not(:has(.input-form)) {
  width: fit-content;
  margin: auto;
}

/* ------- GLOBAL ------- */
.line-break {
  word-break: break-word;
}

.decorative-line,
.decorative-line-3 {
  pointer-events: none;
  /* opacity: 0.6; */
}

/* liens textes legaux */
.legal-notice-text a {
  color: var(--e-global-color-secondary);
  font-weight: 600;
  transition: color 0.25s;
}

.legal-notice-text a:hover {
  color: var(--e-global-color-text);
}

/* formulaires */
/* formulaires globaux */
.form-contact .elementor-field-type-submit {
  margin-top: 20px;
}

/* champs */
.form-contact textarea,
.form-contact input,
.form-contact select {
  padding: 15px 28px;
}

.form-contact .elementor-field-type-acceptance label {
  font-size: 14px;
}

/* acceptation, input checkbox */
.formulaire .elementor-field-type-acceptance .elementor-field-option {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  gap: 10px;
}

.form-contact .elementor-field-type-acceptance input[type="checkbox"] {
  accent-color: var(--e-global-color-secondary);
}

/* commun a tous les forms */
/* bouton submit */
.formulaire .elementor-field-type-submit svg {
  width: 13px;
  transform: rotate(-45deg);
  transition: transform 0.25s;
}

.formulaire .elementor-field-type-submit svg path {
  fill: var(--e-global-color-secondary) !important;
}

.formulaire .elementor-field-type-submit button:hover svg {
  transform: rotate(0deg);
}

.formulaire .elementor-field-type-recaptcha_v3 {
  display: none;
}

/* boutons */
.common-button .elementor-button-icon {
  margin-left: -18px;
  opacity: 0;
  max-width: 0px;
  transition: all 0.4s;
}

.common-button:hover .elementor-button-icon {
  margin-left: 0px;
  opacity: 1;
  max-width: 50px;
  transition: all 0.4s;
}

.diagonal-btn .elementor-button-icon svg {
  width: 13px;
}

/* bouton haut droite */
.btn-top-right .elementor-button-icon svg {
  transform: rotate(-45deg);
  transition: all 0.25s;
}

/* bouton hover droite */
.btn-hover-right a:hover .elementor-button-icon svg {
  transform: rotate(0deg);
}

/* bouton haut gauche */
.btn-top-left .elementor-button-icon svg {
  transform: rotate(45deg);
  transition: all 0.25s;
}

/* bouton hover gauche */
.btn-hover-left a:hover .elementor-button-icon svg {
  transform: rotate(0deg);
}

/* Hero Common */
#logo-hero {
  pointer-events: none;
}
#logo-hero svg {
  height: 100dvh;
}

#logo-hero-mobile svg {
  height: 40dvh;
}

#hero-to-bottom svg {
  animation: bounce-custom 2s ease-in-out infinite;
}

@keyframes bounce-custom {
  0%,
  100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-20px);
  }
}

.svg-my-mont-container g {
  opacity: 0;
}

/* ------- HEADER ------- */
#logo-home path {
  fill: #fff;
}

#menu-desktop-open,
#menu-desktop-close {
  width: 56px;
  height: 65px;
  cursor: pointer;
  transition: height 0.3s ease-in-out;
}

#menu-desktop-open:hover {
  height: 74px;
}

#menu-desktop-close:hover {
  height: 45px;
}

#menu-desktop-open .arrow-down,
#menu-desktop-close .arrow-up {
  opacity: 0;
}

#menu-desktop-open:hover .arrow-down,
#menu-desktop-close:hover .arrow-up {
  opacity: 1;
}

#menu-burger-open:hover .icon-burger,
#menu-desktop-close:hover .icon-close {
  opacity: 0;
}

/* ------- MENU BURGER ------- */
/* sous-menu desktop */
.submenu {
  max-height: 0 !important;
  opacity: 0;
  overflow: hidden;
  transition: opacity 0.5s !important;
  z-index: 1;
  transition: max-height 0.9s !important;
}

.submenu.submenu-active {
  max-height: 280px !important;
  opacity: 1;

  z-index: 20;
}

.submenus-container {
  max-height: 0 !important;
  transition: max-height 0.9s !important;
  overflow: hidden !important;
}

.submenus-container.submenu-active {
  max-height: 317px !important;
}

.has-submenu {
  cursor: default;
}

.submenu-item {
  max-width: 146px !important;
}

.submenu-item .elementor-cta {
  min-height: 210px;
  display: flex !important;
  align-items: flex-end;
}

.submenu-item .elementor-cta__content {
  min-height: 54px !important;
  background: rgba(247, 247, 243, 0.8);
  align-content: center !important;
  align-items: center !important;
  padding: 8px 4px;
  transition: all 0.5s;
}

.submenu-item:hover .elementor-cta__content {
  background: transparent;
}

.submenu-item .elementor-cta__content span.elementor-cta__title {
  height: fit-content !important;
  background: transparent !important;
  padding: 0 important;
}

/* menu mobile */
/*menu principal*/
.burger-menu-mobile ul.elementor-nav-menu {
  gap: 19px;
  display: flex;
  flex-direction: column;
}

.burger-menu-mobile ul:not(.sub-menu).elementor-nav-menu li a {
  border-radius: 30px !important;
  justify-content: center;
}

.burger-menu-mobile ul.elementor-nav-menu li a .sub-arrow {
  display: none;
}

/*menu ppal 4 premiers elts*/
.burger-menu-mobile ul.elementor-nav-menu > li:nth-child(-n + 4) > a {
  background: rgba(247, 247, 243, 0.2);
  width: fit-content;
  margin: auto;
  padding-right: 30px !important;
  padding-left: 30px !important;
}

/*menu ppal 4 derniers elts*/
.burger-menu-mobile ul.elementor-nav-menu > li:nth-child(n + 5) > a {
  background: transparent;
  border: 1px solid rgba(255, 255, 255, 0.3);
  padding-top: 4px !important;
  padding-bottom: 4px !important;
}

/*sous-menus*/
.burger-menu-mobile ul.elementor-nav-menu ul.sub-menu {
  margin-top: 1rem;
}

.burger-menu-mobile ul.elementor-nav-menu ul.sub-menu li a {
  background: transparent !important;
  border-radius: 0 !important;
  padding-top: 15px !important;
  padding-bottom: 15px !important;
  border: none !important;

  text-transform: capitalize !important;
}

.burger-menu-mobile ul.elementor-nav-menu ul.sub-menu li:not(:last-child) a {
  border-bottom: 1px solid rgba(255, 255, 255, 0.3) !important;
}

/* ------- FOOTER ------- */
/* formulaire newsletter */
.form-newsletter {
  max-width: 420px !important;
}

@media screen and (min-width: 1367px) {
  .form-newsletter .elementor-form-fields-wrapper {
    justify-content: space-between;
  }

  .form-newsletter .elementor-field-type-acceptance,
  .form-newsletter .elementor-field-type-submit {
    width: fit-content;
  }
}

@media screen and (min-width: 768px) and (max-width: 1024px) {
  .form-newsletter .elementor-form-fields-wrapper {
    justify-content: space-between;
  }

  .form-newsletter .elementor-field-type-acceptance,
  .form-newsletter .elementor-field-type-submit {
    width: fit-content;
  }
}

/*champ email*/
.form-newsletter input:not([type="checkbox"]) {
  padding: 12px 28px;
}

/*champ acceptation texte + lien*/
.form-newsletter .elementor-field-type-acceptance label {
  font-size: 12px !important;
}

.form-newsletter .elementor-field-type-acceptance label a {
  color: var(--e-global-color-primary);
  transition: color 0.25s;
}

.form-newsletter .elementor-field-type-acceptance label a:hover {
  color: var(--e-global-color-7c401d3);
}

/*champ acceptation checkbox*/
.form-newsletter .elementor-field-type-acceptance {
  padding-left: 10px !important;
}

.form-newsletter .elementor-field-type-acceptance input[type="checkbox"] {
  /*accent-color: var(--e-global-color-primary);*/
  width: 16px;
  height: 16px;
  background-color: var(--e-global-color-secondary) !important;
  border-radius: 50% !important;
  aspect-ratio: 1/1;
  vertical-align: middle;
  border: 4px solid #86a0b3 !important;
  appearance: none;
  -webkit-appearance: none;
  outline: none;
  cursor: pointer;
  padding: 4px;
}

.form-newsletter
  .elementor-field-type-acceptance
  input[type="checkbox"]:checked {
  background-color: var(--e-global-color-primary) !important;
}

/* menu footer */
.menu-footer li:after {
  border-radius: 50%;
}

/* -------------- PAGES -------------- */
/* ------- HOMEPAGE ------- */
/* hero - reservation QS + select reservation restaurant */
/*widget onglets*/
.reservation-tabs button[data-tab-index="1"] {
  margin-left: 25px;
}

.reservation-tabs button[data-tab-index="2"] {
  margin-left: -10px;
  background: var(--e-global-color-secondary) !important;
}

.reservation-tabs button[data-tab-index="2"]:not([aria-selected="true"]):hover {
  background-color: var(--e-global-color-d708bba) !important;
}

.reservation-tabs
  button[data-tab-index="2"]:not([aria-selected="true"]):hover
  span {
  color: var(--e-global-color-primary);
}

.reservation-tabs button {
  z-index: 1;
}

.reservation-tabs button[aria-selected="true"] {
  z-index: 2 !important;
}

/*bouton reservation*/
.reservation-tabs .restaurant-booking-button {
  cursor: pointer;
}

.reservation-tabs .restaurant-booking-button .elementor-button-icon svg {
  width: 13px;
  transform: rotate(-45deg);
  transition: all 0.25s;
}

.reservation-tabs
  .restaurant-booking-button
  a:hover
  .elementor-button-icon
  svg {
  transform: rotate(0deg);
}

/*select*/
.reservation-tabs .booking-restaurant {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  gap: 6px;
}

.reservation-tabs .booking-restaurant label {
  font-family: var(--e-global-typography-accent-font-family), Sans-serif;
  font-weight: var(--e-global-typography-accent-font-weight);
  line-height: var(--e-global-typography-accent-line-height);
  color: var(--e-global-color-primary);
}

.reservation-tabs .booking-restaurant select {
  border: none;
  background: transparent;
  padding: 0;
  padding-bottom: 5px;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-image: url("/wp-content/uploads/2025/07/arrow-midnight_blue-bottom.svg");
  background-repeat: no-repeat;
  background-position: right 10px center;
  background-size: 16px;
  font-family: var(--e-global-typography-text-font-family), Sans-serif;
  font-size: 18px;
  font-weight: var(--e-global-typography-text-font-weight);
  line-height: var(--e-global-typography-text-line-height);
}

.reservation-tabs .booking-restaurant select:focus-visible {
  border: 1px solid var(--e-global-color-primary) !important;
  outline-color: var(--e-global-color-primary);
  border-radius: 5px;
}

@media screen and (max-width: 767px) {
  .reservation-tabs .booking-restaurant select {
    white-space: normal;
    padding-right: 20px;
    background-position: right center;
  }
}

/* etablissements */
@media screen and (min-width: 1201px) {
  .slide-etablissement .content {
    max-height: 0px;
    opacity: 0;
    max-width: 285px !important;
    transition: max-height 1s, opacity 0.35s, margin-top 0.35s !important;
  }

  .slide-etablissement:hover .title span {
    color: var(--e-global-color-primary) !important;
  }

  .slide-etablissement:hover .content {
    max-height: 200px;
    opacity: 1;
    margin-top: 16px;
    color: var(--e-global-color-text);
  }

  .slide-etablissement .title span,
  .slide-etablissement .content {
    transition: color 0.35s;
  }

  .slide-etablissement .content-container {
    transition: width 0.35s, margin-bottom 0.35s, background-color 0.35s;
  }

  .slide-etablissement:hover .content-container {
    width: calc(100% - 32px);
    margin-bottom: 16px;
    background-color: var(--e-global-color-d708bba) !important;
  }
}

/* avis clients */
.elfsight-reviews .es-carousel-arrow-control-right > div > div {
  content: url("/wp-content/uploads/2025/07/arrow-right-beige.svg");
}

.elfsight-reviews .es-carousel-arrow-control-left > div > div {
  content: url("/wp-content/uploads/2025/07/arrow-left-beige.svg");
}

.elfsight-reviews .es-carousel-arrow-control-icon svg {
  display: none;
}

/* maillage */
.maillage-card {
  background-size: cover;
  background-position: center;
}

@media screen and (min-width: 768px) {
  .maillage-card .content {
    max-height: 0px;
    opacity: 0;
    max-width: 285px !important;
    transition: max-height 1s, opacity 0.35s, margin-top 0.35s !important;
  }
}

@media screen and (min-width: 1201px) {
  .maillage-card:hover .title .elementor-heading-title {
    color: var(--e-global-color-primary) !important;
  }

  .maillage-card:hover .content,
  .maillage-card:hover .content .elementor-widget-container {
    max-height: 200px;
    opacity: 1;
    margin-top: 16px;
    color: var(--e-global-color-text);
  }

  .maillage-card .title .elementor-heading-title,
  .maillage-card .content,
  .maillage-card .content .elementor-widget-container {
    transition: color 0.35s;
  }

  .maillage-card .content-container {
    transition: width 0.35s, margin-bottom 0.35s, background-color 0.35s;
  }

  .maillage-card:hover .content-container {
    width: calc(100% - 32px);
    margin-bottom: 16px;
    background-color: var(--e-global-color-d708bba) !important;
  }
}

@media screen and (max-width: 767px) {
  .maillage-card .title .elementor-heading-title {
    color: var(--e-global-color-primary) !important;
  }

  .maillage-card .content,
  .maillage-card .content .elementor-widget-container {
    max-height: 200px;
    opacity: 1;
    margin-top: 16px;
    color: var(--e-global-color-text);
  }

  .maillage-card .content-container {
    width: calc(100% - 32px);
    margin-bottom: 16px;
    background-color: var(--e-global-color-d708bba) !important;
  }
}

/* ------- PAGE ETABLISSEMENT N1 ------- */
#les-hotels,
#les-restaurants,
#emporter,
#les-musees {
  scroll-margin-top: 100px;
}

@media screen and (max-width: 767px) {
  #les-hotels,
  #les-restaurants,
  #emporter,
  #les-musees {
    scroll-margin-top: 160px;
  }
}

/* menu sticky */
.menu-sticky-etablissements {
  position: sticky !important;
  top: 0px;
}

.menu-sticky-etablissements li a {
  border-radius: 30px;
  border: 1px solid var(--e-global-color-primary);
}

.menu-sticky-etablissements li a:hover {
  background: var(--e-global-color-primary);
}

.menu-sticky-etablissements li a.elementor-item-active {
  background: var(--e-global-color-secondary);
  border-color: var(--e-global-color-secondary);
}

.menu-sticky-etablissements ul {
  gap: 15px;
}

/* cards etablissement */
@media screen and (min-width: 1367px) {
  .etablissement-card-content {
    height: calc(100% - 350px);
  }
}

@media screen and (min-width: 1201px) and (max-width: 1366px) {
  .etablissement-card-content {
    height: calc(100% - 300px);
  }
}

@media screen and (min-width: 768px) and (max-width: 1200px) {
  .etablissement-card-content {
    height: calc(100% - 250px);
  }
}

/* ------- PAGE ETABLISSEMENT N2 ------- */
.etablissement-slider-chambres .swiper {
  width: 100% !important;
  border-radius: 20px;
}

.etablissement-swiper-images {
  overflow: hidden;
}

@media screen and (max-width: 1024px) {
  .rooms-prestations {
    background: transparent !important;
  }
}

/* ------- PAGE LA DESTINATION ------- */
.slider-partners .elementor-carousel-image {
  background-size: contain !important;
}

.slider-partners .elementor-swiper-button svg {
  display: none;
}

.slider-partners .elementor-swiper-button-prev {
  content: url("/wp-content/uploads/2025/07/arrow-left-beige.svg");
}

.slider-partners .elementor-swiper-button-next {
  content: url("/wp-content/uploads/2025/07/arrow-right-beige.svg");
}

.slider-partners .elementor-swiper-button {
  background: var(--e-global-color-secondary);
  padding: 10px 25px;
  border-radius: 20px;
  transition: background-color 0.35s;
}

.slider-partners .elementor-swiper-button:hover {
  background: var(--e-global-color-primary);
}

@media screen and (min-width: 768px) {
  .slider-partners .swiper {
    margin-right: 5rem;
    margin-left: 5rem;
  }
}

@media screen and (max-width: 767px) {
  .slider-partners .elementor-swiper-button {
    top: unset !important;
    bottom: 0;
  }

  .slider-partners .elementor-swiper-button-prev {
    left: 50% !important;
    transform: translate(-125%, 150%) !important;
  }

  .slider-partners .elementor-swiper-button-next {
    right: 50% !important;
    transform: translate(125%, 150%) !important;
  }

  .slider-partners .swiper {
    margin-right: -25%;
    margin-left: -25%;
  }
}

/* widget meteo */
#widget-meteo .eapp-weather-weather-detail {
  background: transparent !important;
  padding: 0;
}
#widget-meteo .eapp-weather-detail-currentTemp,
#widget-meteo .eapp-weather-detail-weatherName {
  color: #fff;
  font-family: "Montserrat", sans-serif;
  font-weight: 400;
  font-size: 22px;
}

#widget-meteo .eapp-weather-detail-currentTemp:after {
  display: inline-block;
  content: "";
  height: 32px !important;
  width: 1px;
  border-right: 1px white solid;
  margin-left: 1rem;
  position: relative;
  top: 0.35rem;
}

#widget-meteo .eapp-weather-detail-iconBlock circle {
  fill: transparent !important;
  stroke: white !important;
  stroke-width: 1 !important;
}

#widget-meteo .eapp-weather-detail-iconBlock line {
  stroke: white !important;
  stroke-width: 1 !important;
}

#widget-meteo .eapp-weather-detail-iconBlock path {
  fill: transparent;
  stroke: white;
  stroke-width: 1px;
}

#widget-meteo .eapp-weather-detail-iconBlock,
#widget-meteo .eapp-weather-detail-component {
  flex-direction: row !important;
  align-items: center;
}

#widget-meteo .eapp-weather-detail-iconBlock {
  margin-left: 20px;
}

#widget-meteo .eapp-weather-detail-location {
  display: none;
}

#widget-meteo .eapp-weather-detail-weatherName {
  order: -1;
  margin-top: 0 !important;
}
#widget-meteo .eapp-weather-detail-tempBlock {
  margin-top: -8px;
}

/*widget horloge*/
#horloge {
  color: #fff;
  font-family: "Montserrat", sans-serif;
  font-weight: 400;
  font-size: 22px;
}

#horloge .hmclock {
  position: relative;
  top: 3px;
}

/* ------- PAGE GROUPES ET SEMINAIRES ------- */
/* evenements pro - image absolute */
@media screen and (min-width: 1367px) {
  .pro-events-absolute-img {
    position: absolute;
    top: 0;
    left: -17rem;
  }
}

.form-pro .elementor-acceptance-field + label {
  color: var(--e-global-color-7c401d3) !important;
}

.form-pro .elementor-acceptance-field + label a {
  color: var(--e-global-color-7c401d3) !important;
  text-decoration: underline;
}

/*champ acceptation texte + lien*/
.form-brochure .elementor-field-type-acceptance label {
  font-size: 12px !important;
}

.form-brochure .elementor-field-type-acceptance label a {
  color: var(--e-global-color-primary);
  transition: color 0.25s;
}

.form-brochure .elementor-field-type-acceptance label a:hover {
  color: var(--e-global-color-7c34b75);
}

/* checkbox */
.form-brochure .elementor-field-type-acceptance {
  padding-left: 10px !important;
}

.form-brochure .elementor-field-type-acceptance input[type="checkbox"] {
  width: 16px;
  height: 16px;
  background-color: #fff !important;
  border-radius: 5px !important;
  aspect-ratio: 1/1;
  vertical-align: middle;
  border: 4px solid #fff !important;
  appearance: none;
  -webkit-appearance: none;
  outline: none;
  cursor: pointer;
  padding: 4px;
}

.form-brochure .elementor-field-type-acceptance input[type="checkbox"]:checked {
  background-color: var(--e-global-color-7c34b75) !important;
}

/* bouton submit */
.formulaire.form-brochure .elementor-field-type-submit svg path {
  fill: var(--e-global-color-d708bba) !important;
}

/* ------- PAGE ACTUALITES ------- */
/* boutons de filtrage */
#category-filters .filter-button {
  font-family: var(--e-global-typography-48fea2a-font-family), sans-serif;
  font-size: var(--e-global-typography-48fea2a-font-size);
  font-weight: var(--e-global-typography-48fea2a-font-weight);
  text-transform: capitalize;
  font-style: var(--e-global-typography-48fea2a-font-style);
  text-decoration: var(--e-global-typography-48fea2a-text-decoration);
  line-height: var(--e-global-typography-48fea2a-line-height);
  color: var(--e-global-color-primary);
  padding: 13px 36px;
  border-radius: 30px;
  border: 1px solid var(--e-global-color-primary);
  transition: all 0.25s;
  outline-color: transparent;
}

#category-filters .filter-button:not(.active):hover,
#category-filters .filter-button:not(.active):focus {
  background-color: var(--e-global-color-primary);
  color: #fff;
}

#category-filters .filter-button.active {
  background: var(--e-global-color-secondary);
  color: #fff;
  border: 1px solid var(--e-global-color-secondary) !important;
}

/* listing actualites */
/* bouton */
.listing-actualites .elementor-post__read-more {
  border: 1px solid var(--e-global-color-primary);
  padding: 12px 24px;
  border-radius: 40px;
  transition: all 0.25s;
  position: relative;
}

.listing-actualites .elementor-post__read-more:hover {
  background-color: var(--e-global-color-cbc3c9e);
  padding-right: 3rem;
  border-color: var(--e-global-color-cbc3c9e);
  color: var(--e-global-color-primary) !important;
}

.listing-actualites .elementor-post__read-more:hover:after {
  opacity: 1;
}

.listing-actualites .elementor-post__read-more:after {
  position: absolute;
  content: url("/wp-content/uploads/2025/07/arrow-right-blue-btn.svg");
  right: 1rem;
  top: 50%;
  transform: translateY(-50%);
  opacity: 0;
  transition: all 0.25s;
}

/* carte */
.listing-actualites .elementor-post__card img {
  height: 100% !important;
  object-fit: cover;
  object-position: center;
}

.listing-actualites .elementor-post__thumbnail__link {
  margin-bottom: 0;
}

@media screen and (max-width: 767px) {
  .listing-actualites .elementor-post__text {
    padding-top: 2rem !important;
    padding-bottom: 2rem !important;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }

  .listing-actualites .elementor-post__title,
  .listing-actualites .elementor-post__excerpt {
    text-align: center;
  }

  .listing-actualites .elementor-post__read-more {
    align-self: center !important;
  }
}

@media screen and (min-width: 768px) {
  .listing-actualites .elementor-post__text {
    padding-top: 5rem !important;
    padding-bottom: 4rem !important;
  }

  .listing-actualites .elementor-post__card {
    flex-direction: row;
  }

  .listing-actualites .elementor-post__thumbnail {
    min-height: 420px;
    height: 100%;
  }
}

@media screen and (min-width: 1366px) {
  .listing-actualites .elementor-post__thumbnail__link {
    width: 55% !important;
  }

  .listing-actualites .elementor-post__text {
    width: 45% !important;
  }
}

@media screen and (min-width: 1025px) and (max-width: 1365px) {
  .listing-actualites .elementor-post__thumbnail__link {
    width: 40% !important;
  }

  .listing-actualites .elementor-post__text {
    width: 60% !important;
  }
}

/* ------- PAGE ACTUALITES N2 ------- */
/* details articles */
@media screen and (min-width: 1025px) {
  .details-article {
    position: sticky;
    top: 7rem;
  }
}

/* navigation */
.details-article .article-navigation .elementor-post-navigation {
  flex-direction: column;
  gap: 50px;
}

.details-article .article-navigation .elementor-post-navigation__link {
  width: 100%;
}

.details-article .article-navigation .post-navigation__prev--title,
.details-article .article-navigation .post-navigation__prev--label {
  white-space: wrap;
  text-align: center;
}

.details-article .article-navigation .post-navigation__next--title,
.details-article .article-navigation .post-navigation__next--label {
  white-space: wrap;
  text-align: center;
  width: fit-content;
  margin: auto;
}

.details-article .article-navigation .post-navigation__prev--label::before {
  content: url("/wp-content/uploads/2025/07/article-arrow-prev.svg");
  margin-right: 1rem;
}

.details-article .article-navigation .post-navigation__next--label::after {
  content: url("/wp-content/uploads/2025/07/article-arrow-next.svg");
  margin-left: 1rem;
}

.details-article .article-navigation .post-navigation__arrow-wrapper {
  display: none;
}

.details-article .article-navigation .elementor-post-navigation__link__prev,
.details-article .article-navigation .elementor-post-navigation__link__next {
  gap: 10px;
}

/* temps de lecture */
.reading-time .bsf-rt-reading-time {
  font-family: var(--e-global-typography-text-font-family), Sans-serif;
  font-size: var(--e-global-typography-text-font-size);
  font-weight: var(--e-global-typography-text-font-weight);
  line-height: var(--e-global-typography-text-line-height);
  color: var(--e-global-color-text);
}

/* contenu de l'article */
.article-content h2 {
  font-family: var(--e-global-typography-2c0cd5b-font-family), Sans-serif;
  font-size: var(--e-global-typography-2c0cd5b-font-size);
  font-weight: var(--e-global-typography-2c0cd5b-font-weight);
  text-transform: var(--e-global-typography-2c0cd5b-text-transform);
  font-style: var(--e-global-typography-2c0cd5b-font-style);
  text-decoration: var(--e-global-typography-2c0cd5b-text-decoration);
  line-height: var(--e-global-typography-2c0cd5b-line-height);
}

.article-content h3 {
  font-family: var(--e-global-typography-4a2727d-font-family), Sans-serif;
  font-size: var(--e-global-typography-4a2727d-font-size);
  font-weight: var(--e-global-typography-4a2727d-font-weight);
  text-transform: var(--e-global-typography-4a2727d-text-transform);
  line-height: var(--e-global-typography-4a2727d-line-height);
}

.article-content p + h2 {
  margin-top: 3rem;
}

/* ------- PAGE OFFRES SPECIALES ------- */
.offers-listing .eliophot-offer__container {
  border-radius: 20px !important;
  overflow: hidden !important;
}

.offers-listing .eliophot-offer__cta_buttons {
  flex-direction: row-reverse !important;
}

.offers-listing .eliophot-offer__cta_buttons,
.offers-listing .eliophot-offer__cta_container {
  gap: 20px;
  width: 100%;
}

.offers-listing .eliophot-carousel__slider .elementor-carousel-image {
  height: 100%;
  background-size: cover;
  background-position: center;
}

@media screen and (min-width: 1366px) {
  .offers-listing .eliophot-offer__group {
    width: 55%;
  }

  .offers-listing .eliophot-carousel__slider {
    width: 45% !important;
  }
}

@media screen and (min-width: 768px) and (max-width: 1365px) {
  .offers-listing .eliophot-carousel__slider {
    width: 40% !important;
  }

  .offers-listing .eliophot-offer__group {
    width: 60% !important;
  }
}

@media screen and (min-width: 768px) {
  .offers-listing .elementor-image-carousel {
    border-top-left-radius: 20px;
    border-bottom-left-radius: 20px;
    overflow: hidden;
  }

  .offers-listing .eliophot-offer__group {
    padding-top: 5rem !important;
    padding-bottom: 4rem !important;
    padding-right: 2rem !important;
    padding-left: 2rem !important;
  }

  .offers-listing .eliophot-offer__container {
    flex-direction: row !important;
  }

  .offers-listing .eliophot-carousel__slider .elementor-carousel-image {
    min-height: 420px !important;
    height: 100% !important;
  }

  .offers-listing .eliophot-carousel__slider,
  .offers-listing .elementor-main-swiper {
    height: 100% !important;
  }

  .offers-listing .eliophot-offer__cta_container {
    align-items: flex-start !important;
  }
}

@media screen and (max-width: 767px) {
  .offers-listing .eliophot-carousel__slider .elementor-carousel-image {
    height: 230px !important;
    min-height: 230px !important;
  }

  .offers-listing .eliophot-offer__group {
    padding: 2rem !important;
  }

  .offers-listing .elementor-image-carousel {
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
    overflow: hidden;
  }
}

/*BOUTONS*/
/*btn decouvrir*/
.offers-listing .eliophot-offer__cta_button_second {
  transition: all 0.25s;
  position: relative;
}

.offers-listing .eliophot-offer__cta_button_second:hover {
  padding-right: 3rem;
}

.offers-listing .eliophot-offer__cta_button_second:after {
  position: absolute;
  content: url("/wp-content/uploads/2025/07/arrow-right-blue-btn.svg");
  right: 1rem;
  top: 50%;
  transform: translateY(-50%);
  opacity: 0;
  transition: all 0.25s;
}

.offers-listing .eliophot-offer__cta_button_second:hover:after {
  opacity: 1;
}

/*btn book*/
.offers-listing .eliophot-offer__cta_button_main {
  transition: all 0.25s;
  position: relative;
  padding-right: 40px !important;
}

.offers-listing .eliophot-offer__cta_button_main:after {
  position: absolute;
  content: url("/wp-content/uploads/2025/07/arrow-blue-right.svg");
  right: 1rem;
  top: 50%;
  transform: translateY(-50%) rotate(-45deg);
  transition: all 0.25s;
  line-height: 0;
}

.offers-listing .eliophot-offer__cta_button_main:hover:after {
  transform: translateY(-50%) rotate(0);
}

/* ------- OFFRE SPECIALE N2 ------- */
/* bouton de reservation */
.offer-booking .eliophot-offer-button {
  transition: all 0.25s;
  position: relative;
}

.offer-booking .eliophot-offer-button:hover {
  border-color: var(--e-global-color-cbc3c9e);
}

.offer-booking .eliophot-offer-button:after {
  position: absolute;
  content: url("/wp-content/uploads/2025/07/arrow-blue-right.svg");
  right: 1rem;
  top: 50%;
  transform: translateY(-50%) rotate(-45deg);
  transition: all 0.25s;
  line-height: 0;
}

.offer-booking .eliophot-offer-button:hover:after {
  transform: translateY(-50%) rotate(0);
}

/* ------- PAGE GALERIE PHOTOS ------- */
@media screen and (max-width: 767px) {
  .mymont-gallery .elementor-gallery__titles-container {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }
}

@media screen and (max-width: 767px) {
  .mymont-gallery .elementor-item {
    margin-right: 0;
  }
}
