.wf-force-outline-none[tabindex="-1"]:focus {
  outline: none;
}

:root {
  --setam-brown: #5C3318;
  --setam-brown-dark: #3A1E0C;
  --setam-amber: #D4922A;
  --setam-amber-light: #E8A534;
  --setam-terracotta: #C8774A;
  --setam-vermillion: #C44828;
  --setam-sand: #D4A070;
  --setam-cream: #FFF8F0;

  --core--colors--primary--100: #3A1E0C;
  --core--colors--primary--200: #E8A534;
  --core--colors--primary--300: #D4A070;
  --core--colors--primary--400: #D4922A;
  --core--colors--secondary--100: #FFF8F0;
  --core--colors--secondary--200: #F5E6D4;
  --core--colors--secondary--300: #2E1A0E;
  --core--colors--secondary--400: #FDEBD4;
  --core--colors--secondary--500: #D4922A;
  --core--colors--secondary--600: #FFF5E0;
  --core--colors--secondary--700: #C8774A;
  --core--colors--secondary--800: #F5E6D4;
  --core--colors--neutral--800: #3A1E0C;
}

.w-webflow-badge {
  display: none !important;
}

.cart-button-wrapper,
.w-commerce-commercecartwrapper {
  display: none !important;
}

.logo-image {
  height: 80px !important;
  width: auto !important;
  object-fit: contain !important;
}

.logo-wrapper._200px {
  max-width: 280px !important;
}

.dropdown-list.dropdown-v1 {
  min-width: 300px !important;
  width: auto !important;
}

.dropdown-list.dropdown-v1 .menu-grid-2-col {
  display: block !important;
}

.dropdown-list.dropdown-v1 .menu-grid-3-col {
  display: block !important;
}

.dropdown-list.dropdown-v1 .dropdown-pd {
  padding: 16px 20px !important;
}

.lang-btn {
  background: none;
  border: none;
  cursor: pointer;
  font-size: 13px;
  font-weight: 600;
  padding: 2px 4px;
  color: rgba(255, 255, 255, 0.7);
  transition: color 0.2s;
}
.lang-btn:hover,
.lang-btn.active {
  color: #fff;
}
.lang-btn.active {
  text-decoration: underline;
}

.picture img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.fit-cover._w-h-100 {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

section[id] {
  scroll-margin-top: 80px;
}

footer .logo-image {
  height: 50px !important;
}

footer a[href^="mailto:"],
footer a[href^="tel:"] {
  transition: opacity 0.2s;
}
footer a[href^="mailto:"]:hover,
footer a[href^="tel:"]:hover {
  opacity: 0.8;
}

.grid-4-columns .picture {
  background: #f0e8df;
}

.grid-3-columns .picture {
  background: #e8ddd1;
}

.w-dyn-items .picture {
  aspect-ratio: 4 / 3;
  overflow: hidden;
}

.w-dyn-items .picture .card-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.footer-nav-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0 24px;
}

@media (max-width: 767px) {
  .grid-4-columns {
    grid-template-columns: 1fr 1fr;
  }
  .grid-3-columns {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 479px) {
  .grid-4-columns {
    grid-template-columns: 1fr;
  }
}

.w-dyn-items .w-dyn-item .grid-1-column {
  text-align: center;
}

.w-dyn-items .w-dyn-item .mg-bottom-default {
  margin-bottom: 0.5rem;
}

.w-dyn-items .w-dyn-item .mg-top-small {
  margin-top: 0.25rem;
}

.accordion-item-wrapper .accordion-heading {
  cursor: pointer;
}

.accordion-item-wrapper .accordion-body {
  overflow: hidden;
  transition: height 0.35s ease, opacity 0.35s ease, transform 0.35s ease;
}

.accordion-item-wrapper.open .accordion-body {
  height: auto !important;
  opacity: 1 !important;
  transform: translate3d(0px, 0px, 0px) scale3d(1, 1, 1) !important;
}

.accordion-item-wrapper.open .card-button-line.vertical {
  transform: translate3d(0px, 0px, 0px) scale3d(1, 1, 1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) skew(0deg, 0deg) !important;
}

.slider-button-left .icon-font-rounded::before {
  content: "\2039";
  font-size: 28px;
}

.slider-button-right .icon-font-rounded::before {
  content: "\203A";
  font-size: 28px;
}

/* Excursions — region grouping + uniform cards (fixes "floating" listing) */
.excursion-region {
  margin-bottom: 4.5rem;
}

.excursion-region:last-child {
  margin-bottom: 0;
}

.excursion-region-header {
  display: flex;
  align-items: center;
  gap: 1.25rem;
  margin-bottom: 2.5rem;
}

.excursion-region-header h3 {
  white-space: nowrap;
  margin: 0;
}

.excursion-region-line {
  flex: 1 1 auto;
  height: 1px;
  background: var(--core--colors--neutral--neutral-300, #e2d8cc);
}

.excursion-picture {
  aspect-ratio: 4 / 3;
  overflow: hidden;
  border-radius: 16px;
}

.excursion-picture img {
  width: 100%;
  height: 100%;
}

.excursion-card {
  transition: transform 0.3s ease;
}

.excursion-card:hover {
  transform: translateY(-4px);
}

.excursion-card:hover .excursion-picture img {
  transform: scale(1.04);
  transition: transform 0.5s ease;
}

/* Vols — integrate the 3 "plus-value" into anchored cards */
.vols-feature-card {
  background: var(--core--colors--neutral--neutral-100, #fff8f0);
  border: 1px solid var(--core--colors--neutral--neutral-300, #ece2d6);
  border-radius: 20px;
  padding: 2.25rem 1.75rem;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.vols-feature-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 40px -24px rgba(58, 30, 12, 0.45);
}

.vols-feature-icon {
  width: 84px;
  height: 84px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--core--colors--primary--primary-200, #f0d9bd);
}

/* Vols — accreditation logos next to the trust text */
.vols-accreditation-logos {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 2.5rem;
  margin: 1.5rem 0 2.5rem;
}

.vols-accreditation-logos img {
  max-height: 64px;
  width: auto;
  object-fit: contain;
}

/* Lodge — explicit TripAdvisor review highlights (no longer a bare link) */
.lodge-reviews {
  margin-top: 1rem;
}

.lodge-review-card {
  background: var(--core--colors--neutral--neutral-100, #fff8f0);
  border: 1px solid var(--core--colors--neutral--neutral-300, #ece2d6);
  border-radius: 20px;
  padding: 2rem 1.75rem;
  height: 100%;
  display: flex;
  flex-direction: column;
  gap: 0.85rem;
}

.lodge-review-stars {
  color: #e8a534;
  letter-spacing: 2px;
  font-size: 1.1rem;
}

.lodge-review-text {
  font-style: italic;
  margin: 0;
}

.lodge-review-source {
  margin-top: auto;
  font-weight: 600;
  color: var(--core--colors--neutral--neutral-600, #8a7866);
  font-size: 0.85rem;
}

/* Fix: Webflow IX2 reveal interactions set elements to opacity:0 as their initial
   keyframe and rely on JS to animate them back to 1. On the static export this
   trigger does not always fire on PC, leaving headings, images, CTA blocks and the
   footer invisible (empty blocks). Force the final visible state.
   Addresses client feedback "certaines mises en page ne s'affichent pas sur PC".
   Form status messages keep their own display:none handling, so excluded. */
[data-w-id]:not(.w-form-done):not(.w-form-fail),
img.bg-image-animation {
  opacity: 1 !important;
}
