
.cder-packages{display:grid;grid-template-columns:repeat(var(--cols,3),minmax(0,1fr));gap:22px}
.cder-package{overflow:hidden;border:1px solid rgba(131,149,87,.35);border-radius:26px;background:#F5EDE2;transition:.4s cubic-bezier(.2,.8,.2,1)}
.cder-package:hover{transform:translateY(-8px);box-shadow:0 24px 60px rgba(131,149,87,.12)}
.cder-package-image{aspect-ratio:4/3;overflow:hidden}.cder-package-image img{width:100%;height:100%;object-fit:cover;transition:.7s}.cder-package:hover img{transform:scale(1.04)}
.cder-package-content{padding:24px}.cder-package h3{font:400 34px/1.05 Georgia,serif;margin:0 0 8px;color:#839557}.cder-package p{color:#839557;opacity:.72}
.cder-package strong{display:block;font:400 40px/1 Georgia,serif;color:#C3613C;margin:18px 0}
.cder-select-package,.cder-booking button{border:0;border-radius:999px;background:#C3613C;color:#F5EDE2;padding:13px 20px;cursor:pointer;transition:.3s}
.cder-select-package:hover,.cder-booking button:hover{background:#839557}
.cder-gallery{display:grid;grid-template-columns:repeat(var(--gcols,4),minmax(0,1fr));gap:12px}
.cder-gallery-item{margin:0;position:relative;overflow:hidden;border-radius:18px;min-height:230px}.cder-gallery-item img{width:100%;height:100%;object-fit:cover;transition:.6s}.cder-gallery-item:hover img{transform:scale(1.04)}
.cder-gallery-item figcaption{position:absolute;left:12px;bottom:12px;background:rgba(245,237,226,.92);padding:6px 10px;border-radius:999px;font-size:11px;color:#839557}
.cder-booking{background:#F5EDE2;border-radius:26px;padding:28px;box-shadow:0 22px 60px rgba(131,149,87,.08)}
.cder-booking form{display:grid;grid-template-columns:1fr 1fr;gap:16px}.cder-booking label{display:flex;flex-direction:column;gap:6px}.cder-booking label span{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:#839557}
.cder-booking input,.cder-booking select,.cder-booking textarea{width:100%;min-width:0;border:1px solid rgba(131,149,87,.22);border-radius:13px;padding:13px 14px;background:#F5EDE2;color:#839557}
.cder-wide{grid-column:1/-1}.cder-actions{display:flex;gap:10px;flex-wrap:wrap}.cder-whatsapp{background:#839557!important}.cder-success{padding:12px 14px;background:rgba(131,149,87,.18);border-radius:10px;margin-bottom:16px;color:#839557}
.cder-hero .elementor-heading-title{font-family:Georgia,serif;font-size:clamp(52px,8vw,120px)!important;line-height:.95!important;color:#F5EDE2!important;max-width:1050px}
.cder-hero .elementor-widget-text-editor{color:#F5EDE2;font-size:20px;max-width:720px}
.cder-hero .elementor-widget-image img{width:min(270px,55vw)}
body.lang-ar .cder-booking{text-align:right}
@media(max-width:1024px){.cder-packages{grid-template-columns:repeat(2,minmax(0,1fr))}.cder-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:767px){
 .cder-packages,.cder-gallery{grid-template-columns:1fr!important}
 .cder-package{border-radius:18px}.cder-package-content{padding:18px}.cder-package h3{font-size:28px}.cder-package strong{font-size:32px}
 .cder-booking{padding:16px;border-radius:18px}.cder-booking form{grid-template-columns:1fr}.cder-wide{grid-column:auto}.cder-actions{flex-direction:column}.cder-actions button{width:100%}
 .cder-hero .elementor-heading-title{font-size:clamp(46px,14vw,70px)!important}.cder-hero .elementor-widget-text-editor{font-size:17px}
}
@media(hover:none){.cder-package:hover{transform:none}.cder-package:hover img,.cder-gallery-item:hover img{transform:none}}


/* Elementor Motion widget classes */
.chami-fade-up{transform:translateY(48px)}
.chami-left{transform:translateX(-60px)}
.chami-right{transform:translateX(60px)}
.chami-scale{transform:scale(.9)}
.chami-clip{clip-path:inset(0 100% 0 0);opacity:1!important;transform:none!important}
.chami-anim.is-visible{opacity:1!important;transform:none!important;clip-path:inset(0 0 0 0)!important}


/* V11 responsive polish — locked palette */
.cder-package,.cder-booking,.cder-gallery-item{will-change:transform}
.cder-package,.cder-gallery-item{transition:transform .55s cubic-bezier(.16,1,.3,1),box-shadow .55s cubic-bezier(.16,1,.3,1)}
@media(max-width:560px){
 .cder-package-content{padding:16px}
 .cder-gallery-item{min-height:260px}
 .cder-booking input,.cder-booking select,.cder-booking textarea{font-size:16px}
}


/* V12 strict Chami palette — also overrides Elementor's default blue */
:root,
body.elementor-page{
 --e-global-color-primary:#C3613C;
 --e-global-color-secondary:#839557;
 --e-global-color-text:#839557;
 --e-global-color-accent:#C3613C;
}
.elementor-widget-heading .elementor-heading-title{color:#C3613C}
.programme-v12-elementor .elementor-widget-image img{
 border-radius:32px;
 box-shadow:0 32px 80px rgba(131,149,87,.22);
}

/* V13 palette lock */
:root, body, body.elementor-page{
 --e-global-color-primary:#C3613C!important;
 --e-global-color-secondary:#839557!important;
 --e-global-color-text:#839557!important;
 --e-global-color-accent:#C3613C!important;
}
.elementor a,.elementor-button-link{color:#C3613C}
.elementor a:hover{color:#839557}
.elementor-button{background:#C3613C;color:#F5EDE2}


/* V14 final custom Elementor sections */
.chami-v14-products{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.chami-v14-product-card{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:center;border:1px solid rgba(131,149,87,.32);border-radius:30px;padding:18px;background:#F5EDE2}
.chami-v14-product-card>img,.chami-v14-product-pair{min-height:340px}
.chami-v14-product-card img{width:100%;height:100%;object-fit:cover;border-radius:22px}
.chami-v14-product-pair{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.chami-v14-product-card h3{color:#C3613C;font-size:clamp(32px,3vw,50px)}
.chami-v14-professionals{display:grid;grid-template-columns:1.05fr .95fr;gap:34px;align-items:center;background:#839557;color:#F5EDE2;border-radius:34px;padding:40px}
.chami-v14-professionals h3,.chami-v14-professionals p,.chami-v14-professionals .eyebrow{color:#F5EDE2}
.chami-v14-professionals img{width:100%;height:500px;object-fit:cover;border-radius:28px}
@media(max-width:760px){.chami-v14-products,.chami-v14-product-card,.chami-v14-professionals{grid-template-columns:1fr}.chami-v14-professionals{padding:22px}.chami-v14-professionals img{height:340px}}
:root,body.elementor-page{
 --e-global-color-primary:#C3613C!important;
 --e-global-color-secondary:#839557!important;
 --e-global-color-text:#839557!important;
 --e-global-color-accent:#C3613C!important;
}


/* V15 primary CTA and Elementor layout harmonization */
.cder-booking button[type="submit"],.cder-package .button,.elementor .elementor-button{
 background:#839557!important;border-color:#839557!important;color:#F5EDE2!important
}
.cder-booking button[type="submit"]:hover,.cder-package .button:hover,.elementor .elementor-button:hover{
 background:#C3613C!important;border-color:#C3613C!important;color:#F5EDE2!important
}
.elementor .lamp-contact-v15{display:grid!important;grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr)!important;gap:48px!important;align-items:center!important}
.elementor .lamp-contact-v15>.e-con-inner{display:contents}
.elementor .table-v15-elementor .food-slider-stage{min-height:560px}
@media(max-width:1024px){.elementor .lamp-contact-v15{grid-template-columns:1fr!important}}


/* =========================================================
   RETRAITE YOGA UPDATE 01 — scoped to this page only
   Keeps the V19 site untouched elsewhere.
   ========================================================= */
.retreat-u1-section{
  position:relative;
  isolation:isolate;
  overflow:clip;
}
.retreat-u1-section::before{
  content:"";
  position:absolute;
  top:0;
  left:clamp(24px,6vw,90px);
  right:clamp(24px,6vw,90px);
  height:2px;
  background:
    linear-gradient(90deg,
      rgba(195,97,60,.10) 0%,
      rgba(195,97,60,.22) 32%,
      #C3613C 48%,
      #F5EDE2 50%,
      #C3613C 52%,
      rgba(195,97,60,.22) 68%,
      rgba(195,97,60,.10) 100%);
  background-size:220% 100%;
  animation:retreatU1Line 4.8s linear infinite;
  box-shadow:0 0 12px rgba(195,97,60,.18);
  pointer-events:none;
}
@keyframes retreatU1Line{
  from{background-position:100% 0}
  to{background-position:-120% 0}
}

.retreat-u1-kicker{
  display:inline-flex;
  align-items:center;
  min-height:32px;
  padding:6px 12px;
  border:1px solid rgba(195,97,60,.34);
  border-radius:999px;
  color:#C3613C;
  font-size:11px;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
  margin-bottom:16px;
}
.retreat-u1-professional{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);
  gap:clamp(28px,5vw,72px);
  align-items:center;
}
.retreat-u1-professional-copy h3,
.retreat-u1-media-copy h3{
  margin:0 0 18px;
  color:#C3613C;
  font-size:clamp(38px,5vw,72px);
  line-height:.98;
}
.retreat-u1-professional-copy p,
.retreat-u1-media-copy p{
  color:#839557;
  font-size:clamp(16px,1.5vw,19px);
  line-height:1.75;
}
.retreat-u1-professional-visual{
  min-height:480px;
  border-radius:30px;
  overflow:hidden;
  box-shadow:0 24px 70px rgba(131,149,87,.17);
}
.retreat-u1-professional-visual img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.retreat-u1-cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:0 22px;
  margin-top:12px;
  border-radius:999px;
  background:#839557;
  color:#F5EDE2!important;
  text-decoration:none!important;
  font-weight:800;
  box-shadow:0 12px 30px rgba(131,149,87,.18);
  transition:transform .22s cubic-bezier(.16,1,.3,1),box-shadow .22s cubic-bezier(.16,1,.3,1);
}
.retreat-u1-cta:hover{
  transform:translateY(-2px);
  box-shadow:0 18px 36px rgba(131,149,87,.22);
}

.retreat-u1-formats{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.retreat-u1-format{
  position:relative;
  overflow:hidden;
  display:grid;
  grid-template-columns:auto 1fr;
  gap:18px;
  align-items:start;
  padding:26px;
  border:1px solid rgba(131,149,87,.28);
  border-radius:28px;
  background:#F5EDE2;
  box-shadow:0 18px 48px rgba(131,149,87,.10);
}
.retreat-u1-format::after,
.retreat-u1-activity::after,
.retreat-u1-package-item::after{
  content:"";
  position:absolute;
  inset:-1px;
  border-radius:inherit;
  pointer-events:none;
  background:
    linear-gradient(105deg,
      transparent 0 42%,
      rgba(195,97,60,.16) 46%,
      rgba(195,97,60,.78) 50%,
      rgba(245,237,226,.72) 52%,
      rgba(195,97,60,.16) 56%,
      transparent 60% 100%);
  background-size:260% 100%;
  animation:retreatU1Border 5.2s linear infinite;
  opacity:.62;
}
@keyframes retreatU1Border{
  from{background-position:140% 0}
  to{background-position:-140% 0}
}
.retreat-u1-format-number{
  min-width:64px;
  min-height:64px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#839557;
  color:#F5EDE2;
  font-weight:900;
  font-size:20px;
}
.retreat-u1-format h3{
  margin:4px 0 8px;
  color:#C3613C;
  font-size:28px;
}
.retreat-u1-format p{margin:0;color:#839557}

.retreat-u1-activity-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
}
.retreat-u1-activity{
  position:relative;
  overflow:hidden;
  min-height:210px;
  display:grid;
  align-content:start;
  gap:16px;
  padding:24px;
  border:1px solid rgba(131,149,87,.28);
  border-radius:26px;
  background:#F5EDE2;
  box-shadow:0 18px 44px rgba(131,149,87,.08);
}
.retreat-u1-icon{
  width:52px;
  height:52px;
  display:grid;
  place-items:center;
  border-radius:18px;
  background:#839557;
  color:#F5EDE2;
  box-shadow:0 10px 24px rgba(131,149,87,.16);
}
.retreat-u1-icon svg{
  width:28px;
  height:28px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.retreat-u1-activity h3{
  margin:0 0 8px;
  color:#C3613C;
  font-size:25px;
  line-height:1.05;
}
.retreat-u1-activity p{
  margin:0;
  color:#839557;
  line-height:1.6;
}
.retreat-u1-note{
  margin:24px 0 0;
  padding:18px 22px;
  border-inline-start:3px solid #C3613C;
  background:rgba(131,149,87,.06);
  border-radius:0 18px 18px 0;
  color:#839557;
  font-weight:700;
}

.retreat-u1-media{
  display:grid;
  grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);
  gap:clamp(30px,5vw,70px);
  align-items:center;
}
.retreat-u1-mantra{
  display:inline-flex;
  margin:12px 0 18px;
  color:#C3613C;
  font-weight:900;
  font-size:12px;
  letter-spacing:.26em;
}
.retreat-u1-media-grid{
  display:grid;
  grid-template-columns:1.15fr .85fr;
  grid-template-rows:260px 240px;
  gap:12px;
}
.retreat-u1-media-grid figure{
  margin:0;
  overflow:hidden;
  border-radius:26px;
  box-shadow:0 20px 56px rgba(131,149,87,.12);
  background:#839557;
}
.retreat-u1-media-grid figure:first-child{grid-row:1/3}
.retreat-u1-media-grid img,
.retreat-u1-media-grid video{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.retreat-u1-video{position:relative}
.retreat-u1-video::after{
  content:"";
  position:absolute;
  inset:0;
  border:1px solid rgba(195,97,60,.38);
  border-radius:inherit;
  pointer-events:none;
}

.retreat-u1-package{
  display:grid;
  grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);
  gap:clamp(28px,5vw,70px);
  align-items:start;
}
.retreat-u1-price{
  position:sticky;
  top:110px;
  padding:32px;
  border-radius:30px;
  background:#839557;
  color:#F5EDE2;
  box-shadow:0 24px 64px rgba(131,149,87,.16);
}
.retreat-u1-price span,
.retreat-u1-price small{
  display:block;
}
.retreat-u1-price strong{
  display:block;
  margin:10px 0 8px;
  font-size:clamp(42px,5vw,72px);
  line-height:.95;
  color:#F5EDE2;
}
.retreat-u1-package-list{
  display:grid;
  gap:14px;
}
.retreat-u1-package-item{
  position:relative;
  overflow:hidden;
  display:grid;
  grid-template-columns:auto 1fr;
  gap:16px;
  align-items:center;
  min-height:96px;
  padding:18px 20px;
  border:1px solid rgba(131,149,87,.28);
  border-radius:24px;
  background:#F5EDE2;
}
.retreat-u1-package-item p{
  margin:0;
  color:#839557;
  font-weight:700;
  line-height:1.55;
}

.retreat-u1-reveal{
  opacity:0;
  transform:translateY(18px);
  transition:opacity .58s cubic-bezier(.16,1,.3,1),transform .58s cubic-bezier(.16,1,.3,1);
}
.retreat-u1-reveal.is-visible{
  opacity:1;
  transform:none;
}

@media(hover:hover) and (pointer:fine){
  .retreat-u1-format,
  .retreat-u1-activity,
  .retreat-u1-package-item{
    transition:transform .24s cubic-bezier(.16,1,.3,1),box-shadow .24s cubic-bezier(.16,1,.3,1);
  }
  .retreat-u1-format:hover,
  .retreat-u1-activity:hover,
  .retreat-u1-package-item:hover{
    transform:translateY(-3px);
    box-shadow:0 24px 56px rgba(131,149,87,.14);
  }
}
@media(max-width:1024px){
  .retreat-u1-professional,
  .retreat-u1-media,
  .retreat-u1-package{
    grid-template-columns:1fr;
  }
  .retreat-u1-formats{grid-template-columns:1fr}
  .retreat-u1-activity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .retreat-u1-professional-visual{min-height:400px}
  .retreat-u1-price{position:relative;top:auto}
}
@media(max-width:620px){
  .retreat-u1-section::before{
    left:18px;right:18px;
    animation-duration:6s;
  }
  .retreat-u1-professional-visual{min-height:320px}
  .retreat-u1-activity-grid{grid-template-columns:1fr}
  .retreat-u1-activity{min-height:0}
  .retreat-u1-media-grid{
    display:flex;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    padding-bottom:8px;
  }
  .retreat-u1-media-grid figure,
  .retreat-u1-media-grid figure:first-child{
    min-width:84vw;
    height:420px;
    scroll-snap-align:center;
  }
  .retreat-u1-format{
    grid-template-columns:54px 1fr;
    padding:20px;
  }
  .retreat-u1-format-number{
    min-width:54px;
    min-height:54px;
  }
  .retreat-u1-price{padding:26px}
  .retreat-u1-note{border-radius:0 14px 14px 0}
}
@media(prefers-reduced-motion:reduce){
  .retreat-u1-section::before,
  .retreat-u1-format::after,
  .retreat-u1-activity::after,
  .retreat-u1-package-item::after{
    animation:none!important;
  }
  .retreat-u1-reveal{
    opacity:1!important;
    transform:none!important;
    transition:none!important;
  }
}


/* =========================================================
   RETRAITE YOGA V19.2 — corrected visual layer
   Scoped to the Retraite Yoga classes only.
   ========================================================= */
@property --retreat-v192-angle{
  syntax:'<angle>';
  initial-value:0deg;
  inherits:false;
}
@keyframes retreatV192Edge{to{--retreat-v192-angle:360deg}}

/* Hero: client image + no centered logo */
.retreat-v192-hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
}
.retreat-v192-hero::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:0;
  background:
    linear-gradient(90deg,rgba(131,149,87,.66) 0%,rgba(131,149,87,.32) 45%,rgba(131,149,87,.08) 75%),
    linear-gradient(180deg,rgba(245,237,226,.02),rgba(131,149,87,.18));
}
.retreat-v192-hero>.elementor-element{
  position:relative;
  z-index:1;
}
.retreat-v192-hero .elementor-widget-image{
  display:none!important;
}
.retreat-v192-hero .elementor-heading-title{
  max-width:980px;
  text-wrap:balance;
}
.retreat-v192-hero-copy{
  max-width:760px;
}
.retreat-v192-hero-copy p{
  text-wrap:pretty;
}

/* FIX: orange motion stays ONLY on borders.
   It no longer sweeps across card interiors/content. */
.retreat-u1-format::after,
.retreat-u1-activity::after,
.retreat-u1-package-item::after{
  content:""!important;
  position:absolute!important;
  inset:-1px!important;
  z-index:6!important;
  pointer-events:none!important;
  border-radius:inherit!important;
  padding:1.4px!important;
  background:
    conic-gradient(
      from var(--retreat-v192-angle),
      rgba(195,97,60,.06) 0deg,
      rgba(195,97,60,.12) 250deg,
      rgba(195,97,60,.96) 300deg,
      rgba(245,237,226,.90) 315deg,
      rgba(195,97,60,.16) 335deg,
      rgba(195,97,60,.06) 360deg
    )!important;
  -webkit-mask:
    linear-gradient(#F5EDE2 0 0) content-box,
    linear-gradient(#F5EDE2 0 0)!important;
  -webkit-mask-composite:xor!important;
  mask-composite:exclude!important;
  filter:drop-shadow(0 0 5px rgba(195,97,60,.18));
  opacity:.82!important;
  animation:retreatV192Edge 4.9s linear infinite!important;
}

/* 3D photo/video deck */
.retreat-v192-media{
  display:grid;
  grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);
  align-items:center;
  gap:clamp(34px,5vw,76px);
  width:100%;
}
.retreat-v192-media-copy h3{
  margin:10px 0 18px;
  color:#C3613C;
  font-size:clamp(42px,5vw,74px);
  line-height:.98;
  text-wrap:balance;
}
.retreat-v192-media-copy p{
  margin:0;
  color:#839557;
  font-size:clamp(16px,1.5vw,19px);
  line-height:1.75;
}
.retreat-v192-stage-wrap{
  min-width:0;
}
.retreat-v192-stage{
  position:relative;
  min-height:clamp(500px,48vw,660px);
  perspective:1500px;
  transform-style:preserve-3d;
  overflow:visible;
}
.retreat-v192-card{
  --rvx:0px;
  --rvz:-260px;
  --rvry:0deg;
  --rvs:.78;
  --rvo:0;
  position:absolute;
  inset:4% 10%;
  margin:0;
  overflow:hidden;
  border-radius:30px;
  background:#839557;
  border:1px solid rgba(195,97,60,.28);
  opacity:var(--rvo);
  transform:
    translate3d(var(--rvx),0,var(--rvz))
    rotateY(var(--rvry))
    scale(var(--rvs));
  transition:
    transform .62s cubic-bezier(.16,1,.3,1),
    opacity .42s ease,
    box-shadow .42s ease;
  pointer-events:none;
  backface-visibility:hidden;
  box-shadow:0 28px 70px rgba(131,149,87,.18),0 10px 26px rgba(195,97,60,.08);
}
.retreat-v192-card::after{
  content:"";
  position:absolute;
  inset:-1px;
  z-index:5;
  pointer-events:none;
  border-radius:inherit;
  padding:1.5px;
  background:
    conic-gradient(
      from var(--retreat-v192-angle),
      rgba(195,97,60,.05),
      rgba(195,97,60,.12) 74%,
      rgba(195,97,60,.96) 83%,
      rgba(245,237,226,.92) 87%,
      rgba(195,97,60,.12) 94%,
      rgba(195,97,60,.05)
    );
  -webkit-mask:
    linear-gradient(#F5EDE2 0 0) content-box,
    linear-gradient(#F5EDE2 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  animation:retreatV192Edge 5.2s linear infinite;
}
.retreat-v192-card img,
.retreat-v192-card video{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.retreat-v192-card.is-center{
  --rvx:0px;
  --rvz:0px;
  --rvry:0deg;
  --rvs:1;
  --rvo:1;
  z-index:10;
  pointer-events:auto;
  box-shadow:0 42px 100px rgba(131,149,87,.24),0 14px 36px rgba(195,97,60,.14);
}
.retreat-v192-card.is-prev{
  --rvx:-34%;
  --rvz:-190px;
  --rvry:9deg;
  --rvs:.88;
  --rvo:.68;
  z-index:5;
}
.retreat-v192-card.is-next{
  --rvx:34%;
  --rvz:-190px;
  --rvry:-9deg;
  --rvs:.88;
  --rvo:.68;
  z-index:5;
}
.retreat-v192-card.is-far-prev{
  --rvx:-55%;
  --rvz:-320px;
  --rvry:13deg;
  --rvs:.75;
  --rvo:.18;
  z-index:1;
}
.retreat-v192-card.is-far-next{
  --rvx:55%;
  --rvz:-320px;
  --rvry:-13deg;
  --rvs:.75;
  --rvo:.18;
  z-index:1;
}
.retreat-v192-card.is-hidden{
  --rvo:0;
  visibility:hidden;
}
.retreat-v192-video-mark{
  position:absolute;
  right:18px;
  bottom:18px;
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:rgba(245,237,226,.92);
  color:#C3613C;
  box-shadow:0 12px 28px rgba(131,149,87,.16);
}
.retreat-v192-controls{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:16px;
  margin-top:18px;
}
.retreat-v192-controls button{
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border-radius:50%;
  border:1px solid rgba(131,149,87,.32);
  background:#F5EDE2;
  color:#839557;
  font-size:20px;
  cursor:pointer;
  box-shadow:0 10px 24px rgba(131,149,87,.10);
  transition:transform .22s cubic-bezier(.16,1,.3,1),box-shadow .22s cubic-bezier(.16,1,.3,1);
}
.retreat-v192-controls button:hover{
  transform:translateY(-2px);
  box-shadow:0 16px 30px rgba(131,149,87,.15);
}
.retreat-v192-controls button:focus-visible{
  outline:2px solid #C3613C;
  outline-offset:3px;
}
.retreat-v192-counter{
  min-width:82px;
  display:flex;
  justify-content:center;
  gap:7px;
  color:#839557;
  font-variant-numeric:tabular-nums;
}
.retreat-v192-counter strong{
  color:#C3613C;
}

/* Tablet */
@media(max-width:1024px){
  .retreat-v192-media{
    grid-template-columns:1fr;
  }
  .retreat-v192-stage{
    min-height:clamp(460px,68vw,620px);
  }
}

/* Phones */
@media(max-width:640px){
  .retreat-v192-hero{
    min-height:82svh!important;
  }
  .retreat-v192-hero .elementor-heading-title{
    font-size:clamp(40px,10vw,58px)!important;
    line-height:.98!important;
  }
  .retreat-v192-media-copy h3{
    font-size:clamp(36px,10vw,50px);
  }
  .retreat-v192-stage{
    min-height:470px;
  }
  .retreat-v192-card{
    inset:4% 4%;
    border-radius:24px;
  }
  .retreat-v192-card.is-prev{
    --rvx:-18%;
    --rvz:-160px;
    --rvry:5deg;
    --rvs:.91;
    --rvo:.34;
  }
  .retreat-v192-card.is-next{
    --rvx:18%;
    --rvz:-160px;
    --rvry:-5deg;
    --rvs:.91;
    --rvo:.34;
  }
  .retreat-v192-card.is-far-prev,
  .retreat-v192-card.is-far-next{
    --rvo:0;
  }
}

/* Arabic / RTL */
html[dir="rtl"] .retreat-v192-media-copy{
  text-align:right;
}

/* Motion accessibility */
@media(prefers-reduced-motion:reduce){
  .retreat-u1-format::after,
  .retreat-u1-activity::after,
  .retreat-u1-package-item::after,
  .retreat-v192-card::after{
    animation:none!important;
  }
  .retreat-v192-card{
    transition:none!important;
  }
}


/* =========================================================
   EXPÉRIENCES / AU PROGRAMME V19.3
   Scoped to the Experiences page only.
   ========================================================= */
.experiences-v193-section{
  position:relative;
  isolation:isolate;
  overflow:clip;
}
.experiences-v193-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
}
.experiences-v193-card{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:230px;
  display:grid;
  align-content:start;
  gap:18px;
  padding:26px;
  border:1px solid rgba(131,149,87,.28);
  border-radius:28px;
  background:#F5EDE2;
  box-shadow:0 18px 48px rgba(131,149,87,.10);
  transition:
    transform .24s cubic-bezier(.16,1,.3,1),
    box-shadow .24s cubic-bezier(.16,1,.3,1);
}
.experiences-v193-card::after{
  content:"";
  position:absolute;
  inset:-1px;
  z-index:5;
  pointer-events:none;
  border-radius:inherit;
  padding:1.4px;
  background:
    conic-gradient(
      from var(--exp-v193-angle,0deg),
      rgba(195,97,60,.06) 0deg,
      rgba(195,97,60,.12) 250deg,
      rgba(195,97,60,.96) 300deg,
      rgba(245,237,226,.90) 315deg,
      rgba(195,97,60,.16) 335deg,
      rgba(195,97,60,.06) 360deg
    );
  -webkit-mask:
    linear-gradient(#F5EDE2 0 0) content-box,
    linear-gradient(#F5EDE2 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  filter:drop-shadow(0 0 5px rgba(195,97,60,.18));
  animation:experiencesV193Edge 5s linear infinite;
}
@property --exp-v193-angle{
  syntax:'<angle>';
  initial-value:0deg;
  inherits:false;
}
@keyframes experiencesV193Edge{
  to{--exp-v193-angle:360deg}
}
.experiences-v193-icon{
  width:58px;
  height:58px;
  display:grid;
  place-items:center;
  border-radius:19px;
  background:#839557;
  color:#F5EDE2;
  box-shadow:0 12px 28px rgba(131,149,87,.18);
}
.experiences-v193-icon svg{
  width:30px;
  height:30px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.experiences-v193-copy h3{
  margin:0 0 10px;
  color:#C3613C;
  font-size:clamp(23px,2vw,30px);
  line-height:1.05;
}
.experiences-v193-copy p{
  margin:0;
  color:#839557;
  line-height:1.68;
}
.experiences-v193-note{
  position:relative;
  display:grid;
  grid-template-columns:auto 1fr;
  gap:18px;
  align-items:center;
  margin-top:28px;
  padding:22px 24px;
  border-radius:22px;
  background:rgba(131,149,87,.07);
  color:#839557;
}
.experiences-v193-note-line{
  width:4px;
  height:100%;
  min-height:48px;
  border-radius:999px;
  background:#C3613C;
  box-shadow:0 0 12px rgba(195,97,60,.24);
}
.experiences-v193-note p{
  margin:0;
  font-weight:700;
  line-height:1.65;
}
.experiences-v193-cta-section{
  padding-top:0!important;
}
@media(hover:hover) and (pointer:fine){
  .experiences-v193-card:hover{
    transform:translateY(-4px);
    box-shadow:0 26px 60px rgba(131,149,87,.15);
  }
}
@media(max-width:1024px){
  .experiences-v193-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:620px){
  .experiences-v193-grid{
    grid-template-columns:1fr;
  }
  .experiences-v193-card{
    min-height:0;
    padding:22px;
  }
  .experiences-v193-note{
    grid-template-columns:1fr;
  }
  .experiences-v193-note-line{
    width:100%;
    height:3px;
    min-height:0;
  }
}
@media(prefers-reduced-motion:reduce){
  .experiences-v193-card::after{
    animation:none!important;
  }
  .experiences-v193-card{
    transition:none!important;
  }
}


/* =========================================================
   EXPÉRIENCES / AU PROGRAMME V19.4
   Media-rich cards + 3D gallery
   ========================================================= */
.exp-v194-hero-section{
  position:relative;
  overflow:clip;
}
.exp-v194-hero-section::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 20% 20%, rgba(245,237,226,.12), transparent 34%),
    linear-gradient(180deg, rgba(0,0,0,.08) 0%, rgba(0,0,0,.20) 100%);
}
.exp-v194-hero-section .elementor-heading-title{
  max-width:10ch;
  text-wrap:balance;
  text-shadow:0 10px 24px rgba(0,0,0,.18);
}
.exp-v194-hero-copy p{
  max-width:760px;
  margin:0;
  color:#F5EDE2;
  text-shadow:0 4px 18px rgba(0,0,0,.18);
}

.exp-v194-main-section{
  overflow:clip;
}
.exp-v194-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:22px;
}
.exp-v194-card{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  display:grid;
  align-content:start;
  gap:16px;
  min-height:100%;
  border-radius:28px;
  background:#F5EDE2;
  border:1px solid rgba(131,149,87,.25);
  box-shadow:0 18px 52px rgba(131,149,87,.10);
  transition:transform .26s cubic-bezier(.16,1,.3,1), box-shadow .26s cubic-bezier(.16,1,.3,1);
}
.exp-v194-card::after{
  content:"";
  position:absolute;
  inset:-1px;
  z-index:4;
  pointer-events:none;
  border-radius:inherit;
  padding:1.25px;
  background:
    conic-gradient(from var(--exp-v194-angle,0deg),
      rgba(195,97,60,.04) 0deg,
      rgba(195,97,60,.10) 255deg,
      rgba(195,97,60,.96) 298deg,
      rgba(245,237,226,.90) 314deg,
      rgba(195,97,60,.18) 336deg,
      rgba(195,97,60,.04) 360deg);
  -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  animation:expV194Edge 5s linear infinite;
  filter:drop-shadow(0 0 5px rgba(195,97,60,.16));
}
@property --exp-v194-angle{
  syntax:'<angle>';
  initial-value:0deg;
  inherits:false;
}
@keyframes expV194Edge{
  to{--exp-v194-angle:360deg}
}
.exp-v194-card-media{
  position:relative;
  margin:0;
  aspect-ratio:4/3;
  overflow:hidden;
  border-radius:28px 28px 0 0;
}
.exp-v194-card-media img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transform:scale(1.01);
  transition:transform .45s ease;
}
.exp-v194-card-body{
  padding:0 22px 24px;
}
.exp-v194-card-icon{
  width:56px;
  height:56px;
  display:grid;
  place-items:center;
  margin:-28px 0 14px;
  border-radius:18px;
  background:#839557;
  color:#F5EDE2;
  box-shadow:0 14px 26px rgba(131,149,87,.22);
}
.exp-v194-card-icon svg{
  width:28px;
  height:28px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.exp-v194-card h3{
  margin:0 0 10px;
  color:#C3613C;
  font-size:clamp(20px,2vw,28px);
  line-height:1.06;
}
.exp-v194-card p{
  margin:0;
  color:#6f7f4a;
  line-height:1.72;
}
.exp-v194-note{
  position:relative;
  display:grid;
  grid-template-columns:auto 1fr;
  align-items:center;
  gap:18px;
  margin-top:28px;
  padding:22px 24px;
  border-radius:22px;
  background:rgba(131,149,87,.07);
}
.exp-v194-note-line{
  width:4px;
  min-height:52px;
  border-radius:999px;
  background:#C3613C;
  box-shadow:0 0 12px rgba(195,97,60,.24);
}
.exp-v194-note p{
  margin:0;
  color:#839557;
  font-weight:700;
  line-height:1.65;
}

.exp-v194-gallery-wrap{
  margin-top:34px;
}
.exp-v194-gallery-head h3{
  margin:0 0 16px;
  color:#C3613C;
  font-size:clamp(22px,2vw,30px);
  line-height:1.08;
}
.exp-v194-gallery-grid{
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  grid-auto-rows:108px;
  gap:18px;
  perspective:1400px;
}
.exp-v194-gallery-card{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  min-height:0;
  border-radius:28px;
  background:#F5EDE2;
  border:1px solid rgba(131,149,87,.22);
  box-shadow:0 20px 56px rgba(131,149,87,.10);
  transform-style:preserve-3d;
  transition:transform .28s cubic-bezier(.16,1,.3,1), box-shadow .28s cubic-bezier(.16,1,.3,1);
}
.exp-v194-gallery-card::after{
  content:"";
  position:absolute;
  inset:-1px;
  z-index:4;
  pointer-events:none;
  border-radius:inherit;
  padding:1.25px;
  background:
    conic-gradient(from var(--exp-v194-angle,0deg),
      rgba(195,97,60,.03) 0deg,
      rgba(195,97,60,.10) 250deg,
      rgba(195,97,60,.86) 300deg,
      rgba(245,237,226,.92) 315deg,
      rgba(195,97,60,.16) 338deg,
      rgba(195,97,60,.03) 360deg);
  -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  animation:expV194Edge 5.4s linear infinite;
}
.exp-v194-gallery-card.is-wide{ grid-column:span 6; grid-row:span 3; }
.exp-v194-gallery-card.is-tall{ grid-column:span 3; grid-row:span 4; }
.exp-v194-gallery-card.is-square{ grid-column:span 3; grid-row:span 3; }
.exp-v194-gallery-media,
.exp-v194-gallery-media img,
.exp-v194-gallery-media video{
  width:100%;
  height:100%;
}
.exp-v194-gallery-media{
  position:absolute;
  inset:0;
}
.exp-v194-gallery-media img,
.exp-v194-gallery-media video{
  display:block;
  object-fit:cover;
}
.exp-v194-gallery-media::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(0,0,0,0) 28%, rgba(0,0,0,.44) 100%);
}
.exp-v194-gallery-caption{
  position:relative;
  z-index:3;
  padding:18px 18px 16px;
  color:#F5EDE2;
  font-weight:700;
  line-height:1.3;
  text-shadow:0 6px 20px rgba(0,0,0,.22);
  transform:translateZ(22px);
}
.exp-v194-cta-section{
  padding-top:4px !important;
}
@media(hover:hover) and (pointer:fine){
  .exp-v194-card:hover,
  .exp-v194-gallery-card:hover{
    transform:translateY(-5px) rotateX(3deg) rotateY(-3deg);
    box-shadow:0 28px 70px rgba(131,149,87,.15);
  }
  .exp-v194-card:hover .exp-v194-card-media img{
    transform:scale(1.06);
  }
}
@media(max-width:1180px){
  .exp-v194-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .exp-v194-gallery-grid{
    grid-template-columns:repeat(6,minmax(0,1fr));
    grid-auto-rows:110px;
  }
  .exp-v194-gallery-card.is-wide{ grid-column:span 6; }
  .exp-v194-gallery-card.is-tall{ grid-column:span 3; }
  .exp-v194-gallery-card.is-square{ grid-column:span 3; }
}
@media(max-width:720px){
  .exp-v194-grid{
    grid-template-columns:1fr;
    gap:18px;
  }
  .exp-v194-card-body{
    padding:0 18px 20px;
  }
  .exp-v194-note{
    grid-template-columns:1fr;
  }
  .exp-v194-note-line{
    width:100%;
    min-height:3px;
    height:3px;
  }
  .exp-v194-gallery-grid{
    display:grid;
    grid-template-columns:repeat(1,minmax(0,1fr));
    grid-auto-rows:auto;
    gap:16px;
  }
  .exp-v194-gallery-card.is-wide,
  .exp-v194-gallery-card.is-tall,
  .exp-v194-gallery-card.is-square{
    grid-column:auto;
    grid-row:auto;
    min-height:260px;
  }
  .exp-v194-hero-section{
    min-height:72vh;
  }
}
@media(prefers-reduced-motion:reduce){
  .exp-v194-card,
  .exp-v194-gallery-card,
  .exp-v194-card-media img{
    transition:none !important;
  }
  .exp-v194-card::after,
  .exp-v194-gallery-card::after{
    animation:none !important;
  }
}


/* =========================================================
   EXPÉRIENCES V19.6 — icon-only 3D programme cards
   + unlabeled photo/video gallery at page end
   ========================================================= */
.exp-v196-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:22px;
  perspective:1400px;
}
.exp-v196-card{
  --rx:0deg;
  --ry:0deg;
  position:relative;
  isolation:isolate;
  min-height:250px;
  padding:30px 26px 28px;
  border-radius:28px;
  border:1px solid rgba(131,149,87,.28);
  background:
    radial-gradient(circle at 16% 10%,rgba(245,237,226,.94),rgba(245,237,226,.78) 48%,rgba(131,149,87,.06) 100%);
  box-shadow:
    0 24px 60px rgba(131,149,87,.13),
    0 8px 22px rgba(195,97,60,.06),
    inset 0 1px 0 rgba(245,237,226,.98);
  transform:
    perspective(1100px)
    rotateX(var(--rx))
    rotateY(var(--ry))
    translateZ(0);
  transform-style:preserve-3d;
  transition:
    transform .34s cubic-bezier(.16,1,.3,1),
    box-shadow .34s cubic-bezier(.16,1,.3,1),
    border-color .34s ease;
  overflow:hidden;
}
.exp-v196-card.tilt-a{--rx:1.4deg;--ry:-1.8deg}
.exp-v196-card.tilt-b{--rx:-1.2deg;--ry:1.8deg}
.exp-v196-card.tilt-c{--rx:.8deg;--ry:2deg}
.exp-v196-card.tilt-d{--rx:-1deg;--ry:-1.6deg}
.exp-v196-card::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  border-radius:inherit;
  background:
    linear-gradient(135deg,rgba(245,237,226,.20),rgba(131,149,87,.05)),
    radial-gradient(circle at 100% 100%,rgba(195,97,60,.08),transparent 38%);
}
.exp-v196-card::after{
  content:"";
  position:absolute;
  inset:-1px;
  z-index:4;
  pointer-events:none;
  border-radius:inherit;
  padding:1.3px;
  background:
    conic-gradient(
      from var(--exp-v196-angle,0deg),
      rgba(195,97,60,.04) 0deg,
      rgba(195,97,60,.09) 258deg,
      rgba(195,97,60,.96) 302deg,
      rgba(245,237,226,.92) 317deg,
      rgba(195,97,60,.16) 338deg,
      rgba(195,97,60,.04) 360deg
    );
  -webkit-mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  filter:drop-shadow(0 0 5px rgba(195,97,60,.16));
  animation:expV196Edge 5.2s linear infinite;
}
@property --exp-v196-angle{
  syntax:'<angle>';
  initial-value:0deg;
  inherits:false;
}
@keyframes expV196Edge{to{--exp-v196-angle:360deg}}
.exp-v196-icon{
  width:66px;
  height:66px;
  display:grid;
  place-items:center;
  margin:0 0 24px;
  border-radius:21px;
  background:#839557;
  color:#F5EDE2;
  box-shadow:
    0 16px 34px rgba(131,149,87,.24),
    inset 0 1px 0 rgba(245,237,226,.28);
  transform:translateZ(34px);
}
.exp-v196-icon svg{
  width:32px;
  height:32px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.exp-v196-content{
  transform:translateZ(20px);
}
.exp-v196-content h3{
  margin:0 0 12px;
  color:#C3613C;
  font-size:clamp(22px,2vw,30px);
  line-height:1.06;
  text-wrap:balance;
}
.exp-v196-content p{
  margin:0;
  color:#6f7f4a;
  line-height:1.72;
}
.exp-v196-depth{
  position:absolute;
  right:18px;
  bottom:18px;
  width:72px;
  height:72px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(195,97,60,.12),transparent 70%);
  filter:blur(2px);
  pointer-events:none;
}
.exp-v196-note{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:18px;
  align-items:center;
  margin-top:28px;
  padding:22px 24px;
  border-radius:22px;
  background:rgba(131,149,87,.07);
}
.exp-v196-note-line{
  width:4px;
  min-height:52px;
  border-radius:999px;
  background:#C3613C;
  box-shadow:0 0 12px rgba(195,97,60,.24);
}
.exp-v196-note p{
  margin:0;
  color:#839557;
  font-weight:700;
  line-height:1.65;
}

.exp-v196-gallery{
  margin-top:42px;
}
.exp-v196-gallery-grid{
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  grid-auto-rows:108px;
  gap:18px;
  perspective:1500px;
}
.exp-v196-gallery-card{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  border-radius:28px;
  border:1px solid rgba(131,149,87,.22);
  background:#839557;
  box-shadow:0 20px 56px rgba(131,149,87,.12);
  transform-style:preserve-3d;
  transition:transform .30s cubic-bezier(.16,1,.3,1),box-shadow .30s cubic-bezier(.16,1,.3,1);
}
.exp-v196-gallery-card.is-wide{grid-column:span 6;grid-row:span 3}
.exp-v196-gallery-card.is-tall{grid-column:span 3;grid-row:span 4}
.exp-v196-gallery-card.is-square{grid-column:span 3;grid-row:span 3}
.exp-v196-gallery-card img,
.exp-v196-gallery-card video{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .55s ease;
}
.exp-v196-gallery-card::after{
  content:"";
  position:absolute;
  inset:-1px;
  z-index:3;
  pointer-events:none;
  border-radius:inherit;
  padding:1.25px;
  background:
    conic-gradient(
      from var(--exp-v196-angle,0deg),
      rgba(195,97,60,.03) 0deg,
      rgba(195,97,60,.08) 255deg,
      rgba(195,97,60,.88) 301deg,
      rgba(245,237,226,.90) 316deg,
      rgba(195,97,60,.14) 338deg,
      rgba(195,97,60,.03) 360deg
    );
  -webkit-mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  animation:expV196Edge 5.7s linear infinite;
}
@media(hover:hover) and (pointer:fine){
  .exp-v196-card:hover{
    transform:
      perspective(1100px)
      rotateX(3deg)
      rotateY(-4deg)
      translateY(-6px)
      scale(1.01);
    box-shadow:
      0 34px 78px rgba(131,149,87,.18),
      0 12px 32px rgba(195,97,60,.09);
  }
  .exp-v196-gallery-card:hover{
    transform:translateY(-5px) rotateX(2.8deg) rotateY(-2.8deg) scale(1.01);
    box-shadow:0 30px 74px rgba(131,149,87,.17);
  }
  .exp-v196-gallery-card:hover img,
  .exp-v196-gallery-card:hover video{
    transform:scale(1.045);
  }
}
@media(max-width:1180px){
  .exp-v196-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .exp-v196-gallery-grid{
    grid-template-columns:repeat(6,minmax(0,1fr));
  }
  .exp-v196-gallery-card.is-wide{grid-column:span 6}
  .exp-v196-gallery-card.is-tall{grid-column:span 3}
  .exp-v196-gallery-card.is-square{grid-column:span 3}
}
@media(max-width:720px){
  .exp-v196-grid{
    grid-template-columns:1fr;
    gap:18px;
  }
  .exp-v196-card{
    min-height:0;
    padding:24px 22px;
    --rx:0deg!important;
    --ry:0deg!important;
  }
  .exp-v196-icon{
    width:58px;
    height:58px;
    margin-bottom:18px;
  }
  .exp-v196-note{
    grid-template-columns:1fr;
  }
  .exp-v196-note-line{
    width:100%;
    min-height:3px;
    height:3px;
  }
  .exp-v196-gallery-grid{
    grid-template-columns:1fr;
    grid-auto-rows:auto;
    gap:16px;
  }
  .exp-v196-gallery-card.is-wide,
  .exp-v196-gallery-card.is-tall,
  .exp-v196-gallery-card.is-square{
    grid-column:auto;
    grid-row:auto;
    min-height:270px;
  }
}
@media(prefers-reduced-motion:reduce){
  .exp-v196-card,
  .exp-v196-gallery-card,
  .exp-v196-gallery-card img,
  .exp-v196-gallery-card video{
    transition:none!important;
    transform:none!important;
  }
  .exp-v196-card::after,
  .exp-v196-gallery-card::after{
    animation:none!important;
  }
}


/* =========================================================
   PRODUCTS / PRODUITS DU TERROIR V19.9
   Products-only visual layer.
   ========================================================= */
.prod-v199-hero{
  position:relative;
  overflow:hidden;
  isolation:isolate;
}
.prod-v199-hero::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 18% 22%,rgba(245,237,226,.16),transparent 32%),
    linear-gradient(180deg,rgba(28,21,14,.05),rgba(28,21,14,.32));
}
.prod-v199-hero>.elementor-element{position:relative;z-index:1}
.prod-v199-hero .elementor-heading-title{
  max-width:10ch;
  text-wrap:balance;
  text-shadow:0 10px 28px rgba(0,0,0,.20);
}
.prod-v199-hero-copy{
  max-width:760px;
}
.prod-v199-hero-copy p{
  margin:0;
  color:#F5EDE2;
  font-size:clamp(17px,1.7vw,22px);
  line-height:1.7;
  text-shadow:0 5px 20px rgba(0,0,0,.20);
}

.prod-v199-showcase{
  position:relative;
  overflow:clip;
}
.prod-v199-showcase .elementor-heading-title{
  color:#C3613C;
  max-width:12ch;
  text-wrap:balance;
}
.prod-v199-stage{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:clamp(24px,4vw,54px);
  perspective:1600px;
  align-items:stretch;
}
.prod-v199-card{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  display:grid;
  grid-template-rows:minmax(320px,46vw) auto;
  max-height:760px;
  min-height:650px;
  border-radius:34px;
  background:#F5EDE2;
  transform-style:preserve-3d;
  transition:
    transform .35s cubic-bezier(.16,1,.3,1),
    box-shadow .35s cubic-bezier(.16,1,.3,1);
  box-shadow:
    0 30px 76px rgba(64,49,31,.14),
    0 8px 24px rgba(64,49,31,.08);
}
.prod-v199-card::before{
  content:"";
  position:absolute;
  inset:-1px;
  z-index:8;
  border-radius:inherit;
  padding:2px;
  pointer-events:none;
  -webkit-mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
}
.prod-v199-oil::before{
  background:
    conic-gradient(
      from var(--prod-v199-angle,0deg),
      rgba(82,111,58,.14) 0deg,
      rgba(82,111,58,.22) 250deg,
      rgba(131,149,87,1) 300deg,
      rgba(207,223,164,.94) 318deg,
      rgba(82,111,58,.18) 342deg,
      rgba(82,111,58,.14) 360deg
    );
  filter:drop-shadow(0 0 8px rgba(131,149,87,.42));
  animation:prodV199Edge 5.4s linear infinite;
}
.prod-v199-honey::before{
  background:
    conic-gradient(
      from var(--prod-v199-angle,0deg),
      rgba(195,97,60,.10) 0deg,
      rgba(220,132,52,.22) 245deg,
      rgba(232,157,65,1) 298deg,
      rgba(255,220,147,.98) 316deg,
      rgba(195,97,60,.20) 340deg,
      rgba(195,97,60,.10) 360deg
    );
  filter:drop-shadow(0 0 9px rgba(224,137,48,.44));
  animation:prodV199Edge 5s linear infinite;
}
@property --prod-v199-angle{
  syntax:'<angle>';
  initial-value:0deg;
  inherits:false;
}
@keyframes prodV199Edge{to{--prod-v199-angle:360deg}}

.prod-v199-media{
  position:relative;
  overflow:hidden;
  min-height:0;
}
.prod-v199-media::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(180deg,rgba(245,237,226,0) 62%,rgba(245,237,226,.96) 100%);
}
.prod-v199-media img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  transform:scale(1.02);
  transition:transform .65s cubic-bezier(.16,1,.3,1);
}
.prod-v199-copy{
  position:relative;
  z-index:4;
  padding:26px 28px 30px;
  transform:translateZ(28px);
}
.prod-v199-eyebrow{
  display:block;
  margin-bottom:10px;
  font-size:12px;
  letter-spacing:.20em;
  font-weight:900;
}
.prod-v199-oil .prod-v199-eyebrow{color:#687D48}
.prod-v199-honey .prod-v199-eyebrow{color:#C3613C}
.prod-v199-copy h3{
  margin:0 0 12px;
  color:#3F4F2D;
  font-size:clamp(28px,2.6vw,42px);
  line-height:1.02;
  text-wrap:balance;
}
.prod-v199-honey .prod-v199-copy h3{color:#A85431}
.prod-v199-copy p{
  margin:0 0 20px;
  color:#60664f;
  line-height:1.72;
}
.prod-v199-price{
  display:inline-flex;
  align-items:center;
  min-height:44px;
  padding:10px 15px;
  border-radius:999px;
  background:rgba(131,149,87,.10);
  color:#4f6534;
  font-weight:900;
  letter-spacing:.01em;
}
.prod-v199-honey .prod-v199-price{
  background:rgba(195,97,60,.10);
  color:#A85431;
}

.prod-v199-olive-fall,
.prod-v199-bee-field{
  position:absolute;
  inset:0;
  z-index:6;
  overflow:hidden;
  pointer-events:none;
}
.prod-v199-fall{
  position:absolute;
  left:var(--x);
  top:-44px;
  animation:prodV199Fall var(--dur) linear infinite;
  animation-delay:var(--delay);
  opacity:0;
}
.prod-v199-fall.leaf{
  width:18px;
  height:34px;
  border-radius:90% 10% 90% 10%;
  background:
    linear-gradient(135deg,#a6b77c 0%,#6f8550 55%,#465d32 100%);
  box-shadow:inset 1px 0 rgba(245,237,226,.28);
}
.prod-v199-fall.leaf::after{
  content:"";
  position:absolute;
  left:50%;
  top:3px;
  bottom:3px;
  width:1px;
  background:rgba(245,237,226,.38);
}
.prod-v199-fall.olive{
  width:18px;
  height:23px;
  border-radius:50% 50% 56% 56%;
  background:
    radial-gradient(circle at 35% 30%,#a8b870 0 10%,#667a42 35%,#33472a 100%);
  box-shadow:0 4px 10px rgba(38,55,27,.18);
}
@keyframes prodV199Fall{
  0%{transform:translate3d(0,-42px,0) rotate(0deg);opacity:0}
  8%{opacity:.82}
  55%{transform:translate3d(var(--drift),380px,0) rotate(240deg);opacity:.82}
  100%{transform:translate3d(calc(var(--drift) * -.55),760px,0) rotate(540deg);opacity:0}
}

/* Bee illustration: deliberately vector-based so it remains crisp at all sizes. */
.prod-v199-bee{
  position:absolute;
  width:58px;
  height:36px;
  filter:drop-shadow(0 8px 10px rgba(74,48,21,.20));
}
.prod-v199-bee svg{width:100%;height:100%;overflow:visible}
.prod-v199-bee-wings{
  fill:rgba(245,237,226,.72);
  stroke:rgba(118,88,48,.30);
  stroke-width:1.5;
  transform-origin:36px 18px;
  animation:prodV199Wing .11s ease-in-out infinite alternate;
}
.prod-v199-bee-body{
  fill:#E2A62F;
  stroke:#68461F;
  stroke-width:3;
  stroke-linecap:round;
}
.prod-v199-bee-body path{
  fill:none;
  stroke:#68461F;
}
@keyframes prodV199Wing{
  from{transform:scaleY(.58) rotate(-8deg)}
  to{transform:scaleY(1.08) rotate(8deg)}
}
.prod-v199-bee.bee-1{animation:prodV199Bee1 9.2s ease-in-out infinite}
.prod-v199-bee.bee-2{animation:prodV199Bee2 11.4s ease-in-out infinite .8s}
.prod-v199-bee.bee-3{animation:prodV199Bee3 8.8s ease-in-out infinite 1.5s}
.prod-v199-bee.bee-4{animation:prodV199Bee4 12.2s ease-in-out infinite 2.1s}
@keyframes prodV199Bee1{
  0%,100%{transform:translate3d(4vw,70px,0) rotate(-10deg) scale(.82)}
  25%{transform:translate3d(26vw,138px,0) rotate(8deg) scale(1)}
  50%{transform:translate3d(17vw,330px,0) rotate(-16deg) scale(.88)}
  75%{transform:translate3d(33vw,510px,0) rotate(12deg) scale(.95)}
}
@keyframes prodV199Bee2{
  0%,100%{transform:translate3d(31vw,120px,0) rotate(14deg) scale(.72)}
  28%{transform:translate3d(10vw,220px,0) rotate(-14deg) scale(.92)}
  58%{transform:translate3d(28vw,390px,0) rotate(5deg) scale(.80)}
  80%{transform:translate3d(8vw,540px,0) rotate(-8deg) scale(.88)}
}
@keyframes prodV199Bee3{
  0%,100%{transform:translate3d(8vw,500px,0) rotate(6deg) scale(.68)}
  34%{transform:translate3d(25vw,420px,0) rotate(-12deg) scale(.86)}
  66%{transform:translate3d(15vw,180px,0) rotate(10deg) scale(.74)}
}
@keyframes prodV199Bee4{
  0%,100%{transform:translate3d(23vw,560px,0) rotate(-8deg) scale(.62)}
  30%{transform:translate3d(5vw,400px,0) rotate(12deg) scale(.78)}
  62%{transform:translate3d(30vw,260px,0) rotate(-10deg) scale(.72)}
  84%{transform:translate3d(16vw,90px,0) rotate(7deg) scale(.68)}
}

@media(hover:hover) and (pointer:fine){
  .prod-v199-card:hover{
    box-shadow:
      0 42px 95px rgba(64,49,31,.19),
      0 12px 30px rgba(64,49,31,.10);
  }
  .prod-v199-card:hover .prod-v199-media img{
    transform:scale(1.075);
  }
}
@media(max-width:980px){
  .prod-v199-stage{
    grid-template-columns:1fr;
  }
  .prod-v199-card{
    min-height:620px;
    max-height:none;
    grid-template-rows:380px auto;
  }
}
@media(max-width:640px){
  .prod-v199-card{
    min-height:0;
    grid-template-rows:300px auto;
    border-radius:26px;
  }
  .prod-v199-copy{
    padding:22px 20px 24px;
  }
  .prod-v199-copy h3{
    font-size:clamp(28px,8vw,36px);
  }
  .prod-v199-bee{
    width:48px;
    height:30px;
  }
}
@media(prefers-reduced-motion:reduce){
  .prod-v199-oil::before,
  .prod-v199-honey::before,
  .prod-v199-fall,
  .prod-v199-bee,
  .prod-v199-bee-wings{
    animation:none!important;
  }
  .prod-v199-card,
  .prod-v199-media img{
    transition:none!important;
  }
}


/* =========================================================
   PRODUCTS / PRODUITS DU TERROIR V20.0
   Corrected product mapping + dedicated related-media 3D gallery
   ========================================================= */
.prod-v200-hero{
  position:relative;
  overflow:hidden;
  isolation:isolate;
}
.prod-v200-hero::before{
  content:"";
  position:absolute; inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 20% 18%,rgba(255,221,168,.16),transparent 30%),
    radial-gradient(circle at 76% 24%,rgba(127,149,86,.14),transparent 28%),
    linear-gradient(180deg,rgba(24,18,13,.04),rgba(24,18,13,.30));
}
.prod-v200-hero > .elementor-element{position:relative;z-index:1}
.prod-v200-hero .elementor-heading-title{
  max-width:10ch;
  text-wrap:balance;
  text-shadow:0 10px 28px rgba(0,0,0,.22);
}
.prod-v200-hero-copy{max-width:780px}
.prod-v200-hero-copy p{
  margin:0;
  color:#F7F1E8;
  font-size:clamp(17px,1.7vw,22px);
  line-height:1.72;
  text-shadow:0 5px 22px rgba(0,0,0,.22);
}

.prod-v200-showcase{position:relative;overflow:clip}
.prod-v200-showcase .elementor-heading-title{
  color:#C3613C;
  max-width:12ch;
  text-wrap:balance;
}
.prod-v200-section-lead{
  max-width:880px;
}
.prod-v200-section-lead p{
  margin:0;
  color:#60664f;
  line-height:1.76;
}

/* Main cards */
.prod-v200-stage{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:clamp(24px,4vw,48px);
  margin-top:clamp(24px,3vw,38px);
  perspective:1800px;
  align-items:stretch;
}
.prod-v200-card{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  display:grid;
  grid-template-rows:minmax(320px,44vw) auto;
  max-height:760px;
  min-height:680px;
  border-radius:34px;
  background:#F5EDE2;
  transform-style:preserve-3d;
  transition:transform .35s cubic-bezier(.16,1,.3,1), box-shadow .35s cubic-bezier(.16,1,.3,1);
  box-shadow:0 30px 76px rgba(64,49,31,.14), 0 10px 26px rgba(64,49,31,.08);
}
.prod-v200-card::before{
  content:"";
  position:absolute; inset:-1px; z-index:8; border-radius:inherit; padding:2px;
  pointer-events:none;
  -webkit-mask:linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor; mask-composite:exclude;
}
@property --prod-v200-angle{
  syntax:'<angle>';
  initial-value:0deg;
  inherits:false;
}
@keyframes prodV200Edge{to{--prod-v200-angle:360deg}}
.prod-v200-oil::before{
  background:conic-gradient(from var(--prod-v200-angle,0deg),
    rgba(90,116,58,.14) 0deg,
    rgba(90,116,58,.22) 250deg,
    rgba(135,158,88,1) 300deg,
    rgba(207,223,164,.95) 320deg,
    rgba(90,116,58,.18) 344deg,
    rgba(90,116,58,.14) 360deg);
  filter:drop-shadow(0 0 10px rgba(122,151,75,.44));
  animation:prodV200Edge 5.2s linear infinite;
}
.prod-v200-honey::before{
  background:conic-gradient(from var(--prod-v200-angle,0deg),
    rgba(195,97,60,.12) 0deg,
    rgba(223,135,55,.22) 244deg,
    rgba(232,157,65,1) 298deg,
    rgba(255,224,150,.98) 318deg,
    rgba(195,97,60,.20) 340deg,
    rgba(195,97,60,.12) 360deg);
  filter:drop-shadow(0 0 10px rgba(224,137,48,.44));
  animation:prodV200Edge 4.9s linear infinite;
}
.prod-v200-media{position:relative;overflow:hidden;min-height:0}
.prod-v200-media::after{
  content:""; position:absolute; inset:0; pointer-events:none;
  background:linear-gradient(180deg,rgba(245,237,226,0) 58%,rgba(245,237,226,.98) 100%);
}
.prod-v200-media img{
  width:100%; height:100%; display:block; object-fit:cover;
  transform:scale(1.02);
  transition:transform .7s cubic-bezier(.16,1,.3,1);
}
.prod-v200-copy{
  position:relative; z-index:4; padding:26px 28px 30px;
  transform:translateZ(28px);
}
.prod-v200-eyebrow{
  display:block; margin-bottom:10px; font-size:12px; letter-spacing:.20em; font-weight:900;
}
.prod-v200-oil .prod-v200-eyebrow{color:#687D48}
.prod-v200-honey .prod-v200-eyebrow{color:#C3613C}
.prod-v200-copy h3{
  margin:0 0 12px;
  font-size:clamp(28px,2.6vw,44px);
  line-height:1.03;
  text-wrap:balance;
}
.prod-v200-oil .prod-v200-copy h3{color:#3F4F2D}
.prod-v200-honey .prod-v200-copy h3{color:#A85431}
.prod-v200-copy p{
  margin:0 0 20px;
  color:#60664f;
  line-height:1.72;
}
.prod-v200-price{
  display:inline-flex; align-items:center; min-height:44px;
  padding:10px 16px; border-radius:999px;
  font-weight:900; letter-spacing:.01em;
}
.prod-v200-oil .prod-v200-price{background:rgba(131,149,87,.10); color:#4f6534}
.prod-v200-honey .prod-v200-price{background:rgba(195,97,60,.10); color:#A85431}

/* Olive falling only on oil */
.prod-v200-olive-fall,
.prod-v200-bee-field{
  position:absolute; inset:0; z-index:6; overflow:hidden; pointer-events:none;
}
.prod-v200-fall{
  position:absolute; left:var(--x); top:-44px;
  animation:prodV200Fall var(--dur) linear infinite;
  animation-delay:var(--delay);
  opacity:0;
}
.prod-v200-fall.leaf{
  width:18px; height:34px; border-radius:90% 10% 90% 10%;
  background:linear-gradient(135deg,#a6b77c 0%,#6f8550 55%,#465d32 100%);
  box-shadow:inset 1px 0 rgba(245,237,226,.28);
}
.prod-v200-fall.leaf::after{
  content:""; position:absolute; left:50%; top:3px; bottom:3px; width:1px; background:rgba(245,237,226,.40);
}
.prod-v200-fall.olive{
  width:18px; height:23px; border-radius:50% 50% 56% 56%;
  background:radial-gradient(circle at 35% 30%,#a8b870 0 10%,#667a42 35%,#33472a 100%);
  box-shadow:0 4px 10px rgba(38,55,27,.18);
}
@keyframes prodV200Fall{
  0%{transform:translate3d(0,-42px,0) rotate(0deg);opacity:0}
  9%{opacity:.84}
  55%{transform:translate3d(var(--drift),380px,0) rotate(240deg);opacity:.84}
  100%{transform:translate3d(calc(var(--drift) * -.55),760px,0) rotate(540deg);opacity:0}
}

/* Bees only on honey */
.prod-v200-bee{
  position:absolute; width:58px; height:36px;
  filter:drop-shadow(0 8px 10px rgba(74,48,21,.22));
}
.prod-v200-bee svg{width:100%;height:100%;overflow:visible}
.prod-v200-bee-wings{
  fill:rgba(245,237,226,.76);
  stroke:rgba(118,88,48,.30);
  stroke-width:1.5;
  transform-origin:36px 18px;
  animation:prodV200Wing .11s ease-in-out infinite alternate;
}
.prod-v200-bee-body{
  fill:#E2A62F; stroke:#68461F; stroke-width:3; stroke-linecap:round;
}
.prod-v200-bee-body path{fill:none; stroke:#68461F}
@keyframes prodV200Wing{
  from{transform:scaleY(.58) rotate(-8deg)}
  to{transform:scaleY(1.08) rotate(8deg)}
}
.prod-v200-bee.bee-1{animation:prodV200Bee1 9.2s ease-in-out infinite}
.prod-v200-bee.bee-2{animation:prodV200Bee2 11.4s ease-in-out infinite .8s}
.prod-v200-bee.bee-3{animation:prodV200Bee3 8.8s ease-in-out infinite 1.5s}
.prod-v200-bee.bee-4{animation:prodV200Bee4 12.2s ease-in-out infinite 2.1s}
.prod-v200-bee.bee-5{animation:prodV200Bee5 10.1s ease-in-out infinite 1.2s}
@keyframes prodV200Bee1{
  0%,100%{transform:translate3d(6vw,76px,0) rotate(-8deg) scale(.82)}
  25%{transform:translate3d(24vw,146px,0) rotate(8deg) scale(1)}
  50%{transform:translate3d(16vw,330px,0) rotate(-16deg) scale(.88)}
  75%{transform:translate3d(30vw,500px,0) rotate(12deg) scale(.95)}
}
@keyframes prodV200Bee2{
  0%,100%{transform:translate3d(28vw,124px,0) rotate(14deg) scale(.72)}
  28%{transform:translate3d(10vw,220px,0) rotate(-14deg) scale(.92)}
  58%{transform:translate3d(30vw,390px,0) rotate(5deg) scale(.80)}
  80%{transform:translate3d(8vw,530px,0) rotate(-8deg) scale(.88)}
}
@keyframes prodV200Bee3{
  0%,100%{transform:translate3d(8vw,490px,0) rotate(6deg) scale(.68)}
  34%{transform:translate3d(25vw,418px,0) rotate(-12deg) scale(.86)}
  66%{transform:translate3d(15vw,180px,0) rotate(10deg) scale(.74)}
}
@keyframes prodV200Bee4{
  0%,100%{transform:translate3d(24vw,560px,0) rotate(-8deg) scale(.62)}
  30%{transform:translate3d(5vw,400px,0) rotate(12deg) scale(.78)}
  62%{transform:translate3d(28vw,258px,0) rotate(-10deg) scale(.72)}
  84%{transform:translate3d(16vw,90px,0) rotate(7deg) scale(.68)}
}
@keyframes prodV200Bee5{
  0%,100%{transform:translate3d(18vw,300px,0) rotate(2deg) scale(.76)}
  35%{transform:translate3d(32vw,205px,0) rotate(-10deg) scale(.92)}
  70%{transform:translate3d(10vw,420px,0) rotate(12deg) scale(.82)}
}

/* Related media clusters */
.prod-v200-related{
  margin-top:clamp(32px,4vw,52px);
}
.prod-v200-related-intro p{
  margin:0 0 clamp(18px,2vw,22px);
  color:#60664f;
  line-height:1.74;
}
.prod-v200-clusters{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:clamp(24px,3vw,36px);
  perspective:1600px;
}
.prod-v200-cluster{
  position:relative;
  border-radius:30px;
  padding:22px;
  background:rgba(255,255,255,.46);
  box-shadow:0 24px 70px rgba(64,49,31,.10), inset 0 1px 0 rgba(255,255,255,.50);
}
.prod-v200-cluster-oil{
  border:1px solid rgba(122,151,75,.28);
  box-shadow:0 24px 70px rgba(64,49,31,.10), 0 0 0 1px rgba(122,151,75,.12), 0 0 24px rgba(122,151,75,.12);
}
.prod-v200-cluster-honey{
  border:1px solid rgba(224,137,48,.30);
  box-shadow:0 24px 70px rgba(64,49,31,.10), 0 0 0 1px rgba(224,137,48,.14), 0 0 24px rgba(224,137,48,.12);
}
.prod-v200-cluster-head{
  display:flex; align-items:center; justify-content:space-between;
  margin-bottom:16px;
}
.prod-v200-cluster-head span{
  display:inline-flex; align-items:center;
  min-height:36px; padding:8px 14px;
  border-radius:999px; font-size:13px; font-weight:900; letter-spacing:.08em;
}
.prod-v200-cluster-oil .prod-v200-cluster-head span{background:rgba(122,151,75,.12); color:#5A743A}
.prod-v200-cluster-honey .prod-v200-cluster-head span{background:rgba(224,137,48,.12); color:#B5622F}
.prod-v200-media-grid{
  display:grid;
  grid-template-columns:1.03fr .97fr;
  grid-template-areas:
    "tall wide"
    "tall small";
  gap:16px;
}
.prod-v200-media-card{
  position:relative;
  overflow:hidden;
  border-radius:24px;
  transform-style:preserve-3d;
  transition:transform .35s cubic-bezier(.16,1,.3,1), box-shadow .35s cubic-bezier(.16,1,.3,1);
  box-shadow:0 24px 55px rgba(34,26,18,.16), 0 8px 18px rgba(34,26,18,.08);
  min-height:220px;
  background:#DDD4C7;
}
.prod-v200-media-card::after{
  content:"";
  position:absolute; inset:0; pointer-events:none;
  background:linear-gradient(180deg,rgba(0,0,0,0) 50%,rgba(18,14,11,.18) 100%);
}
.prod-v200-cluster-oil .prod-v200-media-card{
  border:1px solid rgba(122,151,75,.18);
  box-shadow:0 24px 55px rgba(34,26,18,.16), 0 0 0 1px rgba(122,151,75,.14), 0 0 18px rgba(122,151,75,.08);
}
.prod-v200-cluster-honey .prod-v200-media-card{
  border:1px solid rgba(224,137,48,.20);
  box-shadow:0 24px 55px rgba(34,26,18,.16), 0 0 0 1px rgba(224,137,48,.14), 0 0 18px rgba(224,137,48,.08);
}
.prod-v200-media-card.tall{grid-area:tall; min-height:480px}
.prod-v200-media-card.wide{grid-area:wide; min-height:230px}
.prod-v200-media-card.small{grid-area:small; min-height:230px}
.prod-v200-media-card img,
.prod-v200-media-card video{
  width:100%; height:100%; display:block; object-fit:cover;
}
.prod-v200-media-card video{background:#000}

@media(hover:hover) and (pointer:fine){
  .prod-v200-card:hover,
  .prod-v200-media-card:hover{
    box-shadow:0 42px 95px rgba(64,49,31,.18), 0 14px 36px rgba(64,49,31,.10);
  }
  .prod-v200-card:hover .prod-v200-media img{
    transform:scale(1.075);
  }
}
@media(max-width:1100px){
  .prod-v200-stage,
  .prod-v200-clusters{
    grid-template-columns:1fr;
  }
}
@media(max-width:980px){
  .prod-v200-card{
    min-height:620px;
    max-height:none;
    grid-template-rows:380px auto;
  }
}
@media(max-width:767px){
  .prod-v200-media-grid{
    grid-template-columns:1fr;
    grid-template-areas:
      "tall"
      "wide"
      "small";
  }
  .prod-v200-media-card.tall,
  .prod-v200-media-card.wide,
  .prod-v200-media-card.small{
    min-height:260px;
  }
}
@media(max-width:640px){
  .prod-v200-card{
    min-height:0;
    grid-template-rows:300px auto;
    border-radius:26px;
  }
  .prod-v200-copy{
    padding:22px 20px 24px;
  }
  .prod-v200-copy h3{
    font-size:clamp(28px,8vw,36px);
  }
  .prod-v200-bee{
    width:48px; height:30px;
  }
  .prod-v200-cluster{
    padding:16px;
    border-radius:24px;
  }
  .prod-v200-media-card{
    border-radius:20px;
  }
}
@media(prefers-reduced-motion:reduce){
  .prod-v200-oil::before,
  .prod-v200-honey::before,
  .prod-v200-fall,
  .prod-v200-bee,
  .prod-v200-bee-wings{
    animation:none!important;
  }
  .prod-v200-card,
  .prod-v200-media-card,
  .prod-v200-media img{
    transition:none!important;
  }
}


/* =========================================================
   PRODUCTS / PRODUITS DU TERROIR V20.1
   Responsive intro + product CTAs + unlabeled mixed 3D gallery
   ========================================================= */
.prod-v201-hero{
  position:relative;
  overflow:hidden;
  isolation:isolate;
}
.prod-v201-hero::before{
  content:"";
  position:absolute; inset:0; pointer-events:none;
  background:
    radial-gradient(circle at 18% 18%,rgba(255,221,168,.16),transparent 30%),
    radial-gradient(circle at 78% 26%,rgba(127,149,86,.12),transparent 28%),
    linear-gradient(180deg,rgba(24,18,13,.03),rgba(24,18,13,.28));
}
.prod-v201-hero > .elementor-element{position:relative;z-index:1}
.prod-v201-hero .elementor-heading-title{
  max-width:11ch;
  font-size:clamp(42px,7vw,94px)!important;
  line-height:.92;
  text-wrap:balance;
  text-shadow:0 12px 30px rgba(0,0,0,.22);
}
.prod-v201-hero-copy{
  max-width:900px;
}
.prod-v201-hero-copy p{
  margin:0;
  color:#F8F2E8;
  font-size:clamp(17px,1.75vw,22px);
  line-height:1.72;
  text-wrap:pretty;
  text-shadow:0 5px 20px rgba(0,0,0,.22);
}

.prod-v201-showcase{overflow:clip}
.prod-v201-intro{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(250px,.95fr);
  gap:clamp(20px,5vw,76px);
  align-items:end;
  margin-bottom:clamp(30px,5vw,56px);
}
.prod-v201-intro-copy{
  max-width:840px;
}
.prod-v201-kicker{
  display:inline-flex;
  margin-bottom:12px;
  padding:9px 14px;
  border-radius:999px;
  background:rgba(131,149,87,.10);
  color:#6C7D48;
  font-size:12px;
  font-weight:900;
  letter-spacing:.16em;
}
.prod-v201-intro h2{
  margin:0 0 16px;
  color:#C3613C;
  font-size:clamp(34px,5.7vw,76px);
  line-height:.96;
  text-wrap:balance;
  max-width:10ch;
}
.prod-v201-intro p{
  margin:0 0 14px;
  color:#5A604C;
  font-size:clamp(16px,1.45vw,20px);
  line-height:1.82;
  text-wrap:pretty;
}
.prod-v201-intro-orb{
  position:relative;
  min-height:240px;
  perspective:1400px;
}
.prod-v201-intro-orb span{
  position:absolute;
  border-radius:50%;
  filter:blur(2px);
  box-shadow:0 30px 70px rgba(64,49,31,.10);
}
.prod-v201-intro-orb span:nth-child(1){
  width:190px;height:190px;right:16%;bottom:18%;
  background:radial-gradient(circle at 35% 35%,rgba(255,230,189,.95),rgba(230,161,74,.22) 55%,rgba(230,161,74,0) 70%);
  animation:prodV201Float 8s ease-in-out infinite;
}
.prod-v201-intro-orb span:nth-child(2){
  width:126px;height:126px;right:0;top:12%;
  background:radial-gradient(circle at 35% 35%,rgba(226,239,194,.96),rgba(119,145,77,.24) 55%,rgba(119,145,77,0) 72%);
  animation:prodV201Float 9.5s ease-in-out infinite reverse;
}
.prod-v201-intro-orb span:nth-child(3){
  width:74px;height:74px;left:8%;top:26%;
  background:radial-gradient(circle at 40% 40%,rgba(245,237,226,.96),rgba(195,97,60,.14) 55%,rgba(195,97,60,0) 76%);
  animation:prodV201Float 7s ease-in-out infinite;
}
@keyframes prodV201Float{
  0%,100%{transform:translate3d(0,0,0)}
  50%{transform:translate3d(0,-16px,0)}
}

.prod-v201-stage{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:clamp(24px,4vw,42px);
  perspective:1800px;
}
.prod-v201-card{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  display:grid;
  grid-template-rows:minmax(320px,44vw) auto;
  min-height:690px;
  border-radius:34px;
  background:#F5EDE2;
  transform-style:preserve-3d;
  transition:transform .35s cubic-bezier(.16,1,.3,1), box-shadow .35s cubic-bezier(.16,1,.3,1);
  box-shadow:0 30px 76px rgba(64,49,31,.14), 0 10px 26px rgba(64,49,31,.08);
}
.prod-v201-card::before{
  content:"";
  position:absolute; inset:-1px; z-index:8; border-radius:inherit; padding:2px;
  pointer-events:none;
  -webkit-mask:linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor; mask-composite:exclude;
}
@property --prod-v201-angle{
  syntax:'<angle>';
  initial-value:0deg;
  inherits:false;
}
@keyframes prodV201Edge{to{--prod-v201-angle:360deg}}
.prod-v201-oil::before{
  background:conic-gradient(from var(--prod-v201-angle,0deg),
    rgba(90,116,58,.14) 0deg,
    rgba(90,116,58,.22) 250deg,
    rgba(135,158,88,1) 300deg,
    rgba(207,223,164,.95) 320deg,
    rgba(90,116,58,.18) 344deg,
    rgba(90,116,58,.14) 360deg);
  filter:drop-shadow(0 0 10px rgba(122,151,75,.44));
  animation:prodV201Edge 5.2s linear infinite;
}
.prod-v201-honey::before{
  background:conic-gradient(from var(--prod-v201-angle,0deg),
    rgba(195,97,60,.12) 0deg,
    rgba(223,135,55,.22) 244deg,
    rgba(232,157,65,1) 298deg,
    rgba(255,224,150,.98) 318deg,
    rgba(195,97,60,.20) 340deg,
    rgba(195,97,60,.12) 360deg);
  filter:drop-shadow(0 0 10px rgba(224,137,48,.44));
  animation:prodV201Edge 4.9s linear infinite;
}
.prod-v201-media{position:relative;overflow:hidden}
.prod-v201-media::after{
  content:""; position:absolute; inset:0; pointer-events:none;
  background:linear-gradient(180deg,rgba(245,237,226,0) 54%,rgba(245,237,226,.98) 100%);
}
.prod-v201-media img{
  width:100%; height:100%; display:block; object-fit:cover;
  transform:scale(1.025);
  transition:transform .7s cubic-bezier(.16,1,.3,1);
}
.prod-v201-copy{
  position:relative; z-index:4; padding:26px 28px 30px;
  transform:translateZ(28px);
}
.prod-v201-eyebrow{
  display:block; margin-bottom:10px; font-size:12px; letter-spacing:.20em; font-weight:900;
}
.prod-v201-oil .prod-v201-eyebrow{color:#687D48}
.prod-v201-honey .prod-v201-eyebrow{color:#C3613C}
.prod-v201-copy h3{
  margin:0 0 12px;
  font-size:clamp(28px,2.6vw,44px);
  line-height:1.03;
  text-wrap:balance;
}
.prod-v201-oil .prod-v201-copy h3{color:#3F4F2D}
.prod-v201-honey .prod-v201-copy h3{color:#A85431}
.prod-v201-copy p{
  margin:0 0 22px;
  color:#60664f;
  line-height:1.72;
}
.prod-v201-actions{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  align-items:center;
}
.prod-v201-price{
  display:inline-flex; align-items:center; min-height:46px;
  padding:10px 16px; border-radius:999px;
  font-weight:900; letter-spacing:.01em;
}
.prod-v201-oil .prod-v201-price{background:rgba(131,149,87,.10); color:#4f6534}
.prod-v201-honey .prod-v201-price{background:rgba(195,97,60,.10); color:#A85431}
.prod-v201-cta{
  display:inline-flex; align-items:center; justify-content:center;
  min-height:48px;
  padding:12px 18px;
  border-radius:999px;
  text-decoration:none!important;
  font-weight:900;
  letter-spacing:.01em;
  box-shadow:0 12px 24px rgba(64,49,31,.08);
  transition:transform .28s ease, box-shadow .28s ease, background-color .28s ease;
}
.prod-v201-cta::before{
  content:"";
  width:10px;height:10px;border-radius:50%;
  margin-right:10px;
  background:currentColor;
  opacity:.7;
}
.prod-v201-cta-oil{
  background:#6E844B;
  color:#F6F0E6!important;
}
.prod-v201-cta-honey{
  background:#C3613C;
  color:#F8F0E7!important;
}
.prod-v201-cta:hover{
  transform:translateY(-2px);
  box-shadow:0 18px 30px rgba(64,49,31,.12);
}

.prod-v201-olive-fall,
.prod-v201-bee-field{
  position:absolute; inset:0; z-index:6; overflow:hidden; pointer-events:none;
}
.prod-v201-fall{
  position:absolute; left:var(--x); top:-44px;
  animation:prodV201Fall var(--dur) linear infinite;
  animation-delay:var(--delay);
  opacity:0;
}
.prod-v201-fall.leaf{
  width:18px; height:34px; border-radius:90% 10% 90% 10%;
  background:linear-gradient(135deg,#a6b77c 0%,#6f8550 55%,#465d32 100%);
  box-shadow:inset 1px 0 rgba(245,237,226,.28);
}
.prod-v201-fall.leaf::after{
  content:""; position:absolute; left:50%; top:3px; bottom:3px; width:1px; background:rgba(245,237,226,.40);
}
.prod-v201-fall.olive{
  width:18px; height:23px; border-radius:50% 50% 56% 56%;
  background:radial-gradient(circle at 35% 30%,#a8b870 0 10%,#667a42 35%,#33472a 100%);
  box-shadow:0 4px 10px rgba(38,55,27,.18);
}
@keyframes prodV201Fall{
  0%{transform:translate3d(0,-42px,0) rotate(0deg);opacity:0}
  9%{opacity:.84}
  55%{transform:translate3d(var(--drift),380px,0) rotate(240deg);opacity:.84}
  100%{transform:translate3d(calc(var(--drift) * -.55),760px,0) rotate(540deg);opacity:0}
}

.prod-v201-bee{
  position:absolute; width:58px; height:36px;
  filter:drop-shadow(0 8px 10px rgba(74,48,21,.22));
}
.prod-v201-bee svg{width:100%;height:100%;overflow:visible}
.prod-v201-bee-wings{
  fill:rgba(245,237,226,.76);
  stroke:rgba(118,88,48,.30);
  stroke-width:1.5;
  transform-origin:36px 18px;
  animation:prodV201Wing .11s ease-in-out infinite alternate;
}
.prod-v201-bee-body{
  fill:#E2A62F; stroke:#68461F; stroke-width:3; stroke-linecap:round;
}
.prod-v201-bee-body path{fill:none; stroke:#68461F}
@keyframes prodV201Wing{
  from{transform:scaleY(.58) rotate(-8deg)}
  to{transform:scaleY(1.08) rotate(8deg)}
}
.prod-v201-bee.bee-1{animation:prodV201Bee1 9.2s ease-in-out infinite}
.prod-v201-bee.bee-2{animation:prodV201Bee2 11.4s ease-in-out infinite .8s}
.prod-v201-bee.bee-3{animation:prodV201Bee3 8.8s ease-in-out infinite 1.5s}
.prod-v201-bee.bee-4{animation:prodV201Bee4 12.2s ease-in-out infinite 2.1s}
.prod-v201-bee.bee-5{animation:prodV201Bee5 10.1s ease-in-out infinite 1.2s}
@keyframes prodV201Bee1{
  0%,100%{transform:translate3d(6vw,76px,0) rotate(-8deg) scale(.82)}
  25%{transform:translate3d(24vw,146px,0) rotate(8deg) scale(1)}
  50%{transform:translate3d(16vw,330px,0) rotate(-16deg) scale(.88)}
  75%{transform:translate3d(30vw,500px,0) rotate(12deg) scale(.95)}
}
@keyframes prodV201Bee2{
  0%,100%{transform:translate3d(28vw,124px,0) rotate(14deg) scale(.72)}
  28%{transform:translate3d(10vw,220px,0) rotate(-14deg) scale(.92)}
  58%{transform:translate3d(30vw,390px,0) rotate(5deg) scale(.80)}
  80%{transform:translate3d(8vw,530px,0) rotate(-8deg) scale(.88)}
}
@keyframes prodV201Bee3{
  0%,100%{transform:translate3d(8vw,490px,0) rotate(6deg) scale(.68)}
  34%{transform:translate3d(25vw,418px,0) rotate(-12deg) scale(.86)}
  66%{transform:translate3d(15vw,180px,0) rotate(10deg) scale(.74)}
}
@keyframes prodV201Bee4{
  0%,100%{transform:translate3d(24vw,560px,0) rotate(-8deg) scale(.62)}
  30%{transform:translate3d(5vw,400px,0) rotate(12deg) scale(.78)}
  62%{transform:translate3d(28vw,258px,0) rotate(-10deg) scale(.72)}
  84%{transform:translate3d(16vw,90px,0) rotate(7deg) scale(.68)}
}
@keyframes prodV201Bee5{
  0%,100%{transform:translate3d(18vw,300px,0) rotate(2deg) scale(.76)}
  35%{transform:translate3d(32vw,205px,0) rotate(-10deg) scale(.92)}
  70%{transform:translate3d(10vw,420px,0) rotate(12deg) scale(.82)}
}

.prod-v201-gallery{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
  margin-top:clamp(28px,4vw,44px);
  perspective:1800px;
}
.prod-v201-gallery-item{
  position:relative;
  overflow:hidden;
  min-height:230px;
  border-radius:26px;
  background:#ddd4c7;
  box-shadow:0 24px 60px rgba(34,26,18,.15), 0 8px 18px rgba(34,26,18,.08);
  transition:transform .35s cubic-bezier(.16,1,.3,1), box-shadow .35s cubic-bezier(.16,1,.3,1);
}
.prod-v201-gallery-item::before{
  content:"";
  position:absolute; inset:0; z-index:2; pointer-events:none;
  background:linear-gradient(180deg,rgba(255,255,255,.08) 0%,rgba(255,255,255,0) 35%,rgba(18,14,11,.18) 100%);
}
.prod-v201-gallery-item::after{
  content:"";
  position:absolute; inset:-1px; z-index:3; border-radius:inherit; padding:1.5px; pointer-events:none;
  background:linear-gradient(135deg,rgba(255,255,255,.55),rgba(255,255,255,0),rgba(195,97,60,.18),rgba(131,149,87,.18));
  -webkit-mask:linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor; mask-composite:exclude;
}
.prod-v201-gallery-item img,
.prod-v201-gallery-item video{
  width:100%; height:100%; object-fit:cover; display:block;
}
.prod-v201-gallery-item.large{grid-column:span 2; min-height:320px}
.prod-v201-gallery-item.tall{grid-row:span 2; min-height:500px}
.prod-v201-gallery-item.wide{grid-column:span 2; min-height:250px}
.prod-v201-gallery-item.small{min-height:240px}
.prod-v201-gallery-item video{background:#000}

@media(hover:hover) and (pointer:fine){
  .prod-v201-card:hover,
  .prod-v201-gallery-item:hover{
    box-shadow:0 42px 95px rgba(64,49,31,.18), 0 14px 36px rgba(64,49,31,.10);
  }
  .prod-v201-card:hover .prod-v201-media img{
    transform:scale(1.075);
  }
  .prod-v201-cta:hover{
    filter:saturate(1.06);
  }
}

@media(max-width:1180px){
  .prod-v201-stage{
    grid-template-columns:1fr;
  }
  .prod-v201-gallery{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:980px){
  .prod-v201-intro{
    grid-template-columns:1fr;
  }
  .prod-v201-intro h2{
    max-width:12ch;
  }
  .prod-v201-intro-orb{
    min-height:150px;
  }
  .prod-v201-card{
    min-height:620px;
    grid-template-rows:380px auto;
  }
}
@media(max-width:767px){
  .prod-v201-hero .elementor-heading-title{
    font-size:clamp(38px,13vw,64px)!important;
  }
  .prod-v201-gallery-item.large,
  .prod-v201-gallery-item.wide{
    grid-column:span 2;
  }
}
@media(max-width:640px){
  .prod-v201-intro{
    margin-bottom:28px;
  }
  .prod-v201-intro h2{
    font-size:clamp(32px,10vw,46px);
    max-width:none;
  }
  .prod-v201-intro p{
    font-size:16px;
  }
  .prod-v201-card{
    min-height:0;
    grid-template-rows:300px auto;
    border-radius:26px;
  }
  .prod-v201-copy{
    padding:22px 20px 24px;
  }
  .prod-v201-copy h3{
    font-size:clamp(28px,8vw,36px);
  }
  .prod-v201-bee{
    width:48px; height:30px;
  }
  .prod-v201-gallery{
    grid-template-columns:1fr;
    gap:14px;
  }
  .prod-v201-gallery-item.large,
  .prod-v201-gallery-item.wide,
  .prod-v201-gallery-item.tall{
    grid-column:auto;
    grid-row:auto;
    min-height:240px;
  }
}
@media(prefers-reduced-motion:reduce){
  .prod-v201-oil::before,
  .prod-v201-honey::before,
  .prod-v201-fall,
  .prod-v201-bee,
  .prod-v201-bee-wings,
  .prod-v201-intro-orb span{
    animation:none!important;
  }
  .prod-v201-card,
  .prod-v201-gallery-item,
  .prod-v201-media img,
  .prod-v201-cta{
    transition:none!important;
  }
}


/* =========================================================
   PRODUCTS V20.2
   WhatsApp buttons upgraded + hero slide responsiveness
   ========================================================= */
.prod-v201-hero{
  background-position:center center!important;
  background-size:cover!important;
  background-repeat:no-repeat!important;
}
.prod-v201-hero::after{
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:min(18vh,140px);
  pointer-events:none;
  background:linear-gradient(180deg,rgba(240,235,225,0),rgba(240,235,225,.92));
  z-index:0;
}
.prod-v201-hero .elementor-widget-heading,
.prod-v201-hero .elementor-widget-text-editor{
  max-width:min(100%,960px);
}
.prod-v201-hero .elementor-heading-title{
  max-width:12ch;
}
.prod-v201-cta{
  position:relative;
  overflow:hidden;
  gap:12px;
  min-width:min(100%, 345px);
  padding:13px 22px 13px 16px;
}
.prod-v201-cta::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(115deg,transparent 0%,rgba(255,255,255,.18) 35%,rgba(255,255,255,0) 52%);
  transform:translateX(-130%);
  transition:transform .7s cubic-bezier(.16,1,.3,1);
}
.prod-v201-cta:hover::after{
  transform:translateX(130%);
}
.prod-v202-wa-icon{
  position:relative;
  flex:0 0 42px;
  width:42px;
  height:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:rgba(255,255,255,.14);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16), 0 10px 20px rgba(0,0,0,.10);
  animation:prodV202IconPulse 2.6s ease-in-out infinite;
}
.prod-v202-wa-icon svg{
  width:22px;
  height:22px;
  overflow:visible;
}
.prod-v202-wa-icon .wa-ring{
  fill:none;
  stroke:currentColor;
  stroke-width:2.5;
  opacity:.24;
}
.prod-v202-wa-icon .wa-bubble{
  fill:currentColor;
  opacity:.98;
}
.prod-v202-wa-icon .wa-phone{
  fill:#fff7ef;
}
.prod-v202-cta-label{
  flex:1 1 auto;
}
.prod-v202-cta-arrow{
  flex:0 0 auto;
  font-size:24px;
  line-height:1;
  transform:translateX(0);
  transition:transform .28s ease;
}
.prod-v201-cta:hover .prod-v202-cta-arrow{
  transform:translateX(4px);
}
.prod-v201-cta:hover .prod-v202-wa-icon{
  transform:scale(1.06);
}
.prod-v201-cta-oil{
  background:linear-gradient(135deg,#738e4a 0%,#5d7639 100%);
}
.prod-v201-cta-honey{
  background:linear-gradient(135deg,#cc6e3f 0%,#b85b2b 100%);
}
@keyframes prodV202IconPulse{
  0%,100%{transform:translateZ(0) scale(1);box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 10px 20px rgba(0,0,0,.10)}
  50%{transform:translateZ(0) scale(1.06);box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 14px 24px rgba(0,0,0,.14)}
}

@media(max-width:1180px){
  .prod-v201-hero{
    background-position:center center!important;
  }
}
@media(max-width:980px){
  .prod-v201-hero{
    min-height:72vh!important;
    background-position:60% center!important;
  }
  .prod-v201-hero .elementor-heading-title{
    max-width:10ch;
  }
}
@media(max-width:767px){
  .prod-v201-hero{
    min-height:68vh!important;
    background-position:62% center!important;
  }
  .prod-v201-hero::before{
    background:
      radial-gradient(circle at 18% 18%,rgba(255,221,168,.10),transparent 26%),
      linear-gradient(180deg,rgba(24,18,13,.14),rgba(24,18,13,.44));
  }
  .prod-v201-hero .elementor-heading-title{
    max-width:8.5ch;
  }
  .prod-v201-hero-copy p{
    max-width:34ch;
  }
  .prod-v201-cta{
    width:100%;
    min-width:0;
  }
}
@media(max-width:540px){
  .prod-v201-hero{
    min-height:64vh!important;
    background-position:64% center!important;
  }
  .prod-v202-wa-icon{
    width:38px;
    height:38px;
    flex-basis:38px;
  }
  .prod-v201-cta{
    padding:12px 16px 12px 14px;
    gap:10px;
  }
  .prod-v202-cta-arrow{
    font-size:21px;
  }
}
@media(prefers-reduced-motion:reduce){
  .prod-v202-wa-icon,
  .prod-v201-cta::after{
    animation:none!important;
    transition:none!important;
  }
}


/* =========================================================
   STAYS / SÉJOURS & HÉBERGEMENTS V20.3
   3D galleries + MAD rates + WhatsApp CTA
   ========================================================= */
.stays-v203-intro-copy{max-width:900px}
.stays-v203-section{overflow:clip}
.stays-v203-stay{
  display:grid;
  grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);
  gap:clamp(24px,4vw,56px);
  align-items:center;
}
.stays-v203-lead{
  min-height:520px;
  border-radius:34px;
  overflow:hidden;
  transform-style:preserve-3d;
  box-shadow:0 28px 72px rgba(45,35,22,.16);
  transition:transform .35s cubic-bezier(.16,1,.3,1),box-shadow .35s cubic-bezier(.16,1,.3,1);
}
.stays-v203-lead img{
  width:100%;height:100%;display:block;object-fit:cover;
  transition:transform .7s cubic-bezier(.16,1,.3,1);
}
.stays-v203-copy h3{
  margin:0 0 14px;
  color:#C3613C;
  font-size:clamp(34px,4.7vw,68px);
  line-height:.98;
  text-wrap:balance;
}
.stays-v203-copy p{
  margin:0 0 22px;
  color:#5f654f;
  line-height:1.78;
  font-size:clamp(16px,1.35vw,19px);
}
.stays-v203-kicker{
  display:inline-flex;
  margin-bottom:12px;
  padding:8px 13px;
  border-radius:999px;
  background:rgba(131,149,87,.10);
  color:#687D48;
  font-size:12px;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.stays-v203-facts{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  align-items:stretch;
  margin-bottom:22px;
}
.stays-v203-price{
  position:relative;
  min-width:210px;
  padding:18px 20px;
  border-radius:22px;
  background:#F5EDE2;
  transform-style:preserve-3d;
  box-shadow:0 18px 40px rgba(64,49,31,.10);
  overflow:hidden;
}
.stays-v203-price::after{
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:2px;
  background:linear-gradient(90deg,transparent,#C3613C,#f1a36f,transparent);
  background-size:180% 100%;
  animation:staysV203PriceLine 2.8s linear infinite;
  box-shadow:0 0 12px rgba(195,97,60,.55);
}
@keyframes staysV203PriceLine{to{background-position:180% 0}}
.stays-v203-price strong{
  display:block;
  color:#C3613C;
  font-size:clamp(26px,2.5vw,38px);
  line-height:1;
}
.stays-v203-price span,
.stays-v203-cap span{
  display:block;
  margin-top:7px;
  color:#6e765d;
  font-size:13px;
}
.stays-v203-cap{
  min-width:130px;
  padding:18px 20px;
  border-radius:22px;
  background:rgba(131,149,87,.08);
}
.stays-v203-cap strong{
  display:block;
  color:#687D48;
  font-size:28px;
  line-height:1;
}
.stays-v203-chip{
  display:inline-flex;
  align-items:center;
  min-height:44px;
  padding:10px 14px;
  border-radius:999px;
  background:rgba(131,149,87,.08);
  color:#5b6c3f;
  font-weight:800;
  font-size:13px;
}
.stays-v203-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}
.stays-v203-wa{
  position:relative;
  overflow:hidden;
  display:inline-flex;
  align-items:center;
  gap:11px;
  min-height:52px;
  padding:11px 18px 11px 12px;
  border-radius:999px;
  text-decoration:none!important;
  color:#F7F3EA!important;
  font-weight:900;
  background:linear-gradient(135deg,#76964d 0%,#567336 100%);
  transform-style:preserve-3d;
  box-shadow:
    0 16px 28px rgba(74,109,48,.24),
    inset 0 1px 0 rgba(255,255,255,.16);
  border:1px solid rgba(218,255,190,.32);
  transition:transform .3s ease,box-shadow .3s ease;
}
.stays-v203-wa::before{
  content:"";
  position:absolute;
  inset:-1px;
  border-radius:inherit;
  padding:1.5px;
  pointer-events:none;
  background:linear-gradient(115deg,transparent 10%,rgba(201,255,165,.92) 45%,transparent 62%);
  background-size:220% 100%;
  animation:staysV203GreenEdge 2.7s linear infinite;
  -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  filter:drop-shadow(0 0 8px rgba(148,207,99,.55));
}
.stays-v203-wa::after{
  content:"";
  position:absolute;
  top:0;left:-130%;
  width:70%;height:100%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.20),transparent);
  transform:skewX(-24deg);
  animation:staysV203Sweep 3.4s ease-in-out infinite;
}
@keyframes staysV203GreenEdge{to{background-position:220% 0}}
@keyframes staysV203Sweep{0%,30%{left:-130%}70%,100%{left:145%}}
.stays-v203-wa b{font-size:22px;line-height:1}
.stays-v203-wa-icon{
  position:relative;
  z-index:2;
  width:40px;height:40px;
  flex:0 0 40px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:rgba(255,255,255,.12);
  animation:staysV203Pulse 2.6s ease-in-out infinite;
}
.stays-v203-wa-icon svg{width:24px;height:24px}
.stays-v203-wa-icon .wa-ring{fill:none;stroke:currentColor;stroke-width:2.5;opacity:.25}
.stays-v203-wa-icon .wa-bubble{fill:currentColor}
.stays-v203-wa-icon .wa-phone{fill:#fff}
@keyframes staysV203Pulse{50%{transform:scale(1.07)}}
.stays-v203-detail{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:52px;
  padding:12px 18px;
  border-radius:999px;
  border:1px solid rgba(131,149,87,.28);
  color:#687D48!important;
  text-decoration:none!important;
  font-weight:900;
  background:rgba(245,237,226,.48);
}
.stays-v203-gallery-wrap{
  grid-column:1/-1;
  margin-top:clamp(6px,2vw,18px);
}
.stays-v203-gallery{
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  grid-auto-rows:105px;
  gap:16px;
  perspective:1600px;
}
.stays-v203-gallery-item{
  position:relative;
  overflow:hidden;
  border-radius:26px;
  transform-style:preserve-3d;
  background:#ded6c9;
  box-shadow:0 20px 50px rgba(43,34,23,.14);
  transition:transform .35s cubic-bezier(.16,1,.3,1),box-shadow .35s cubic-bezier(.16,1,.3,1);
}
.stays-v203-gallery-item::after{
  content:"";
  position:absolute;
  inset:-1px;
  border-radius:inherit;
  pointer-events:none;
  padding:1px;
  background:linear-gradient(135deg,rgba(255,255,255,.60),rgba(195,97,60,.16),rgba(131,149,87,.18));
  -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
}
.stays-v203-gallery-item img,
.stays-v203-gallery-item video{
  width:100%;height:100%;display:block;object-fit:cover;
  transition:transform .65s cubic-bezier(.16,1,.3,1);
}
.stays-v203-gallery-item.wide{grid-column:span 6;grid-row:span 3}
.stays-v203-gallery-item.tall{grid-column:span 3;grid-row:span 4}
.stays-v203-gallery-item.small{grid-column:span 3;grid-row:span 3}

.stays-v203-rates-section{overflow:clip}
.stays-v203-rates{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
  margin:24px 0 28px;
  perspective:1500px;
}
.stays-v203-rate{
  position:relative;
  overflow:hidden;
  min-height:190px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  gap:9px;
  padding:22px;
  border-radius:28px;
  background:linear-gradient(180deg,rgba(245,237,226,.96),rgba(238,229,216,.90));
  border:1px solid rgba(195,97,60,.18);
  box-shadow:0 24px 60px rgba(64,49,31,.10);
  transform-style:preserve-3d;
  transition:transform .35s cubic-bezier(.16,1,.3,1),box-shadow .35s cubic-bezier(.16,1,.3,1);
}
.stays-v203-rate::before{
  content:"";
  position:absolute;
  inset:-1px;
  border-radius:inherit;
  padding:1.5px;
  pointer-events:none;
  background:conic-gradient(from var(--stays-v203-angle,0deg),rgba(195,97,60,.06),rgba(195,97,60,.14) 70%,rgba(195,97,60,.92) 82%,rgba(255,202,163,.95) 86%,rgba(195,97,60,.06) 100%);
  -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  animation:staysV203Edge 5s linear infinite;
  filter:drop-shadow(0 0 7px rgba(195,97,60,.28));
}
@property --stays-v203-angle{syntax:'<angle>';initial-value:0deg;inherits:false}
@keyframes staysV203Edge{to{--stays-v203-angle:360deg}}
.stays-v203-rate span{color:#687D48;font-weight:900}
.stays-v203-rate strong{color:#C3613C;font-size:clamp(28px,2.4vw,38px);line-height:1}
.stays-v203-rate small{color:#6f735f;line-height:1.4}
.stays-v203-rate-private{
  background:linear-gradient(180deg,rgba(131,149,87,.12),rgba(245,237,226,.95));
}

@media(hover:hover) and (pointer:fine){
  .stays-v203-lead:hover,
  .stays-v203-gallery-item:hover,
  .stays-v203-rate:hover{
    box-shadow:0 34px 78px rgba(43,34,23,.18);
  }
  .stays-v203-lead:hover img,
  .stays-v203-gallery-item:hover img,
  .stays-v203-gallery-item:hover video{transform:scale(1.055)}
  .stays-v203-wa:hover{transform:translateY(-3px) rotateX(4deg);box-shadow:0 22px 34px rgba(74,109,48,.30)}
}
@media(max-width:1100px){
  .stays-v203-stay{grid-template-columns:1fr}
  .stays-v203-gallery{grid-template-columns:repeat(6,minmax(0,1fr))}
  .stays-v203-gallery-item.wide{grid-column:span 6}
  .stays-v203-gallery-item.tall,.stays-v203-gallery-item.small{grid-column:span 3}
  .stays-v203-rates{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:720px){
  .stays-v203-lead{min-height:380px;border-radius:26px}
  .stays-v203-copy h3{font-size:clamp(34px,10vw,48px)}
  .stays-v203-price,.stays-v203-cap{width:100%;min-width:0}
  .stays-v203-actions{display:grid;grid-template-columns:1fr}
  .stays-v203-wa,.stays-v203-detail{width:100%}
  .stays-v203-gallery{
    grid-template-columns:1fr;
    grid-auto-rows:auto;
  }
  .stays-v203-gallery-item.wide,
  .stays-v203-gallery-item.tall,
  .stays-v203-gallery-item.small{
    grid-column:auto;
    grid-row:auto;
    min-height:260px;
  }
  .stays-v203-rates{grid-template-columns:1fr}
  .stays-v203-rate{min-height:170px}
}
@media(max-width:480px){
  .stays-v203-lead{min-height:320px}
  .stays-v203-gallery-item.wide,
  .stays-v203-gallery-item.tall,
  .stays-v203-gallery-item.small{min-height:220px}
}
@media(prefers-reduced-motion:reduce){
  .stays-v203-price::after,
  .stays-v203-wa::before,
  .stays-v203-wa::after,
  .stays-v203-wa-icon,
  .stays-v203-rate::before{animation:none!important}
  .stays-v203-lead,
  .stays-v203-gallery-item,
  .stays-v203-rate,
  .stays-v203-wa,
  .stays-v203-lead img,
  .stays-v203-gallery-item img,
  .stays-v203-gallery-item video{transition:none!important}
}


/* =========================================================
   STAYS V20.4
   3D amenity icons + booking CTA + contact form anchor
   ========================================================= */
.stays-v204-meta{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin:0 0 18px;
}
.stays-v204-feature{
  position:relative;
  display:flex;
  align-items:center;
  gap:12px;
  min-height:92px;
  padding:14px;
  border-radius:22px;
  background:linear-gradient(180deg,rgba(248,243,234,.95),rgba(239,232,220,.90));
  border:1px solid rgba(131,149,87,.16);
  box-shadow:0 16px 34px rgba(58,47,32,.08);
  transform-style:preserve-3d;
  transition:transform .3s ease,box-shadow .3s ease;
}
.stays-v204-feature-icon{
  position:relative;
  width:48px;height:48px;flex:0 0 48px;
  display:grid;place-items:center;
  border-radius:16px;
  background:linear-gradient(145deg,#8aa05d,#6e8748);
  color:#fff;
  box-shadow:
    0 12px 20px rgba(90,119,58,.22),
    inset 0 1px 0 rgba(255,255,255,.30),
    inset 0 -2px 0 rgba(0,0,0,.10);
  animation:staysV204IconFloat 4.8s ease-in-out infinite;
}
.stays-v204-feature:nth-child(2) .stays-v204-feature-icon{animation-delay:.5s}
.stays-v204-feature:nth-child(3) .stays-v204-feature-icon{animation-delay:1s}
.stays-v204-feature-icon::after{
  content:"";
  position:absolute; inset:-1px;
  border-radius:inherit;
  padding:1px;
  background:linear-gradient(135deg,rgba(255,255,255,.65),rgba(255,255,255,0),rgba(193,223,145,.72));
  -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor; mask-composite:exclude;
}
.stays-v204-feature-icon svg{
  width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round
}
.stays-v204-feature div strong{
  display:block;color:#4f6137;font-size:15px;line-height:1.25
}
.stays-v204-feature div span{
  display:block;margin-top:4px;color:#747966;font-size:12px;line-height:1.3
}
@keyframes staysV204IconFloat{
  0%,100%{transform:translateY(0) rotateX(0) rotateY(0)}
  50%{transform:translateY(-4px) rotateX(5deg) rotateY(-5deg)}
}

.stays-v204-price{margin-bottom:18px;width:max-content;max-width:100%}
.stays-v204-actions{align-items:stretch}
.stays-v204-book{
  position:relative;
  overflow:hidden;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  min-height:52px;
  padding:12px 18px;
  border-radius:999px;
  text-decoration:none!important;
  color:#fff!important;
  font-weight:900;
  background:linear-gradient(135deg,#C76A42,#A95331);
  box-shadow:0 16px 30px rgba(169,83,49,.22),inset 0 1px 0 rgba(255,255,255,.18);
  transition:transform .3s ease,box-shadow .3s ease;
}
.stays-v204-book::after{
  content:"";
  position:absolute;
  top:0;left:-130%;
  width:70%;height:100%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.18),transparent);
  transform:skewX(-22deg);
  animation:staysV204BookSweep 3.3s ease-in-out infinite;
}
.stays-v204-book b{font-size:20px}
@keyframes staysV204BookSweep{
  0%,30%{left:-130%}
  70%,100%{left:145%}
}
.stays-v204-contact-section{
  position:relative;
  overflow:clip;
  border-radius:32px;
  background:
    radial-gradient(circle at 90% 10%,rgba(195,97,60,.08),transparent 30%),
    radial-gradient(circle at 10% 90%,rgba(131,149,87,.10),transparent 28%);
}
.stays-v204-contact-copy{max-width:900px}
#stays-contact{scroll-margin-top:110px}

@media(hover:hover) and (pointer:fine){
  .stays-v204-feature:hover{
    transform:translateY(-4px) rotateX(3deg);
    box-shadow:0 22px 44px rgba(58,47,32,.12)
  }
  .stays-v204-book:hover{
    transform:translateY(-3px) rotateX(4deg);
    box-shadow:0 22px 38px rgba(169,83,49,.28)
  }
}
@media(max-width:900px){
  .stays-v204-meta{grid-template-columns:1fr}
}
@media(max-width:720px){
  .stays-v204-actions{display:grid;grid-template-columns:1fr}
  .stays-v204-book,.stays-v203-wa{width:100%}
  .stays-v204-price{width:100%}
}
@media(prefers-reduced-motion:reduce){
  .stays-v204-feature-icon,
  .stays-v204-book::after{animation:none!important}
  .stays-v204-feature,
  .stays-v204-book{transition:none!important}
}


/* =========================================================
   STAYS V20.5
   Quiet motion: borders/lines only, compact content, responsive hero
   ========================================================= */
.stays-v205-hero{
  position:relative;
  overflow:hidden;
  background-size:cover!important;
  background-repeat:no-repeat!important;
  background-position:center center!important;
}
.stays-v205-hero::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(20,18,14,.08),rgba(20,18,14,.38));
  z-index:0;
}
.stays-v205-hero>.elementor-element{position:relative;z-index:1}
.stays-v205-hero .elementor-heading-title{
  max-width:12ch;
  font-size:clamp(40px,6.8vw,88px)!important;
  line-height:.96;
  text-wrap:balance;
  text-shadow:0 10px 28px rgba(0,0,0,.22);
}
.stays-v205-hero-copy{max-width:820px}
.stays-v205-hero-copy p{
  margin:0;
  color:#fff;
  font-size:clamp(17px,1.5vw,21px);
  line-height:1.7;
  text-shadow:0 4px 20px rgba(0,0,0,.28);
}
.stays-v205-compact{padding-top:54px!important;padding-bottom:40px!important}
.stays-v205-section{padding-top:46px!important;padding-bottom:46px!important}

.stays-v205-stay{row-gap:24px}
.stays-v205-stay .stays-v203-copy p{max-width:62ch}
.stays-v205-stay .stays-v204-meta{
  gap:10px;
  margin-bottom:14px;
}
.stays-v205-stay .stays-v204-feature{
  min-height:78px;
  padding:12px;
  border-radius:18px;
}
.stays-v205-stay .stays-v204-feature-icon{
  width:42px;height:42px;flex-basis:42px;
  border-radius:14px;
  animation:none!important;
  transform:none!important;
}
.stays-v205-stay .stays-v204-feature-icon svg{width:24px;height:24px}
.stays-v205-stay .stays-v204-price{margin-bottom:14px}
.stays-v205-actions{display:flex;align-items:center}
.stays-v205-wa{min-width:250px}
.stays-v205-wa::after{display:none!important}
.stays-v205-wa .stays-v203-wa-icon{animation:none!important}
.stays-v205-wa:hover{transform:none!important}

/* 3D depth stays visual; cards themselves do not constantly move. */
.stays-v205-gallery .stays-v203-gallery-item{
  transition:box-shadow .28s ease;
  transform:none!important;
}
.stays-v205-gallery .stays-v203-gallery-item:hover{
  transform:none!important;
  box-shadow:0 30px 72px rgba(43,34,23,.18);
}
.stays-v205-gallery .stays-v203-gallery-item img,
.stays-v205-gallery .stays-v203-gallery-item video{
  transform:none!important;
  transition:none!important;
}

/* Rates retain only the animated orange edge. */
.stays-v205-rate{
  transform:none!important;
  transition:box-shadow .28s ease;
}
.stays-v205-rate:hover{
  transform:none!important;
  box-shadow:0 30px 72px rgba(64,49,31,.14);
}
.stays-v205-rates-section{
  padding-top:50px!important;
  padding-bottom:50px!important;
}
.stays-v205-contact-section{margin-top:10px}

/* Remove only a potential central hero logo on this page. */
.stays-v205-hero .elementor-widget-image,
.stays-v205-hero [class*="logo-"]{
  display:none!important;
}

@media(max-width:1024px){
  .stays-v205-hero{
    min-height:72vh!important;
    background-position:58% center!important;
  }
  .stays-v205-section{padding-top:40px!important;padding-bottom:40px!important}
}
@media(max-width:767px){
  .stays-v205-hero{
    min-height:66vh!important;
    background-position:62% center!important;
  }
  .stays-v205-hero .elementor-heading-title{
    font-size:clamp(38px,12.5vw,58px)!important;
    max-width:9ch;
  }
  .stays-v205-hero-copy p{
    max-width:34ch;
    font-size:16px;
  }
  .stays-v205-compact{padding-top:36px!important;padding-bottom:28px!important}
  .stays-v205-section{padding-top:34px!important;padding-bottom:34px!important}
  .stays-v205-stay .stays-v204-meta{grid-template-columns:1fr}
  .stays-v205-wa{width:100%;min-width:0}
}
@media(max-width:480px){
  .stays-v205-hero{
    min-height:62vh!important;
    background-position:65% center!important;
  }
  .stays-v205-stay .stays-v203-copy h3{
    font-size:clamp(32px,10vw,44px);
  }
}
@media(prefers-reduced-motion:reduce){
  .stays-v205-rate::before,
  .stays-v205-stay .stays-v203-price::after,
  .stays-v205-wa::before{
    animation:none!important;
  }
}


/* =========================================================
   PRODUCTS V20.6
   Responsive hero slide + clearer "from 120 DH" honey price
   ========================================================= */
.prod-v206-hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:#3F4F2D;
}
.prod-v206-hero-media-widget{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  z-index:0!important;
}
.prod-v206-hero-media-widget .elementor-widget-container,
.prod-v206-hero-picture{
  display:block;
  width:100%;
  height:100%;
}
.prod-v206-hero-picture img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center center;
}
.prod-v206-hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:
    linear-gradient(180deg,rgba(18,16,12,.04) 20%,rgba(18,16,12,.18) 56%,rgba(18,16,12,.58) 100%),
    linear-gradient(90deg,rgba(28,24,18,.20),rgba(28,24,18,0) 55%);
}
.prod-v206-hero > .elementor-element:not(.prod-v206-hero-media-widget){
  position:relative;
  z-index:2;
}
.prod-v206-hero .elementor-heading-title{
  max-width:11ch;
  color:#fff;
  font-size:clamp(42px,7vw,92px)!important;
  line-height:.94;
  text-wrap:balance;
  text-shadow:0 12px 32px rgba(0,0,0,.28);
}
.prod-v206-hero-copy{
  max-width:820px;
}
.prod-v206-hero-copy p{
  margin:0;
  color:#fff;
  font-size:clamp(17px,1.7vw,22px);
  line-height:1.68;
  text-shadow:0 5px 22px rgba(0,0,0,.34);
}

/* Make the honey starting price unmistakable without changing the product card structure. */
.prod-v206-showcase .prod-v201-honey .prod-v201-price{
  position:relative;
  min-height:50px;
  padding:12px 18px;
  font-size:clamp(16px,1.4vw,19px);
  background:linear-gradient(135deg,rgba(195,97,60,.14),rgba(232,157,65,.18));
  color:#A85431;
  border:1px solid rgba(220,132,52,.28);
  box-shadow:0 10px 22px rgba(195,97,60,.10),0 0 18px rgba(232,157,65,.08);
}
.prod-v206-showcase .prod-v201-honey .prod-v201-price::after{
  content:"";
  position:absolute;
  inset:auto 14px 6px 14px;
  height:2px;
  border-radius:999px;
  background:linear-gradient(90deg,transparent,#e39a45,#ffd390,transparent);
  background-size:180% 100%;
  animation:prodV206HoneyPrice 3s linear infinite;
}
@keyframes prodV206HoneyPrice{
  to{background-position:180% 0}
}

@media(max-width:1024px){
  .prod-v206-hero{
    min-height:72vh!important;
  }
  .prod-v206-hero-picture img{
    object-position:center center;
  }
}
@media(max-width:767px){
  .prod-v206-hero{
    min-height:70vh!important;
  }
  .prod-v206-hero::before{
    background:linear-gradient(180deg,rgba(18,16,12,.08) 10%,rgba(18,16,12,.18) 46%,rgba(18,16,12,.64) 100%);
  }
  .prod-v206-hero .elementor-heading-title{
    max-width:8.5ch;
    font-size:clamp(38px,13vw,62px)!important;
  }
  .prod-v206-hero-copy{
    max-width:34ch;
  }
  .prod-v206-hero-copy p{
    font-size:16px;
    line-height:1.62;
  }
}
@media(max-width:480px){
  .prod-v206-hero{
    min-height:66vh!important;
  }
  .prod-v206-showcase .prod-v201-honey .prod-v201-price{
    width:100%;
    justify-content:center;
    text-align:center;
  }
}
@media(prefers-reduced-motion:reduce){
  .prod-v206-showcase .prod-v201-honey .prod-v201-price::after{
    animation:none!important;
  }
}


/* =========================================================
   GLOBAL FOOTER V20.7
   Organized, responsive, high-clarity footer with 3D contact icons
   ========================================================= */

/* Hide the theme footer only; the V20.7 footer is injected by the plugin. */
body .site-footer{display:none!important}

.cder-v207-footer{
  position:relative;
  overflow:hidden;
  margin:0;
  background:
    radial-gradient(circle at 12% 8%,rgba(195,97,60,.16),transparent 28%),
    radial-gradient(circle at 88% 18%,rgba(131,149,87,.18),transparent 32%),
    linear-gradient(180deg,#26351f 0%,#1e2a19 100%);
  color:#F5EDE2;
  border-top:1px solid rgba(238,170,122,.20);
}
.cder-v207-footer::before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:2px;
  background:linear-gradient(90deg,transparent,#C3613C,#f0a06f,transparent);
  background-size:220% 100%;
  animation:cderV207TopLine 5s linear infinite;
  box-shadow:0 0 14px rgba(195,97,60,.38);
}
@keyframes cderV207TopLine{to{background-position:220% 0}}
.cder-v207-footer-glow{
  position:absolute;
  width:380px;
  height:380px;
  border-radius:50%;
  right:-120px;
  bottom:-180px;
  background:radial-gradient(circle,rgba(131,149,87,.16),rgba(131,149,87,0) 70%);
  pointer-events:none;
}
.cder-v207-footer-shell{
  position:relative;
  z-index:1;
  width:min(1380px,calc(100% - 48px));
  margin:0 auto;
  padding:58px 0 24px;
  display:grid;
  grid-template-columns:minmax(260px,1.2fr) minmax(150px,.7fr) minmax(150px,.7fr) minmax(280px,1.2fr);
  gap:clamp(28px,4vw,64px);
  align-items:start;
}
.cder-v207-brand{
  min-width:0;
}
.cder-v207-logo{
  display:inline-flex;
  align-items:center;
  justify-content:flex-start;
  max-width:100%;
  margin-bottom:18px;
  text-decoration:none!important;
}
.cder-v207-logo img{
  display:block;
  width:min(260px,100%);
  height:auto;
  max-height:116px;
  object-fit:contain;
  object-position:left center;
  filter:drop-shadow(0 10px 24px rgba(0,0,0,.18));
}
[dir="rtl"] .cder-v207-logo img{
  object-position:right center;
}
.cder-v207-logo-fallback{
  font-size:26px;
  font-weight:900;
  letter-spacing:.08em;
  color:#F5EDE2;
}
.cder-v207-brand p{
  max-width:36ch;
  margin:0;
  color:rgba(245,237,226,.78);
  font-size:15px;
  line-height:1.75;
}
.cder-v207-col h3{
  margin:0 0 18px;
  color:#F5EDE2;
  font-size:15px;
  line-height:1.2;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.cder-v207-links{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:11px;
}
.cder-v207-links a{
  position:relative;
  color:rgba(245,237,226,.78)!important;
  text-decoration:none!important;
  font-size:14px;
  line-height:1.45;
  transition:color .24s ease,transform .24s ease;
}
.cder-v207-links a::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-3px;
  width:0;
  height:1px;
  background:#C3613C;
  transition:width .24s ease;
}
[dir="rtl"] .cder-v207-links a::after{
  left:auto;
  right:0;
}
.cder-v207-links a:hover{
  color:#fff!important;
  transform:translateX(3px);
}
[dir="rtl"] .cder-v207-links a:hover{
  transform:translateX(-3px);
}
.cder-v207-links a:hover::after{width:100%}

.cder-v207-contact{
  display:flex;
  flex-direction:column;
  gap:12px;
}
.cder-v207-contact-row{
  display:grid;
  grid-template-columns:46px minmax(0,1fr);
  gap:12px;
  align-items:center;
  min-width:0;
  color:rgba(245,237,226,.86)!important;
  text-decoration:none!important;
  line-height:1.45;
  font-size:14px;
}
.cder-v207-contact-row>span:last-child{
  min-width:0;
  overflow-wrap:anywhere;
}
.cder-v207-contact-icon{
  position:relative;
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  border-radius:15px;
  color:#fff;
  background:linear-gradient(145deg,#8BA05E 0%,#627A3E 100%);
  box-shadow:
    0 12px 22px rgba(0,0,0,.18),
    inset 0 1px 0 rgba(255,255,255,.28),
    inset 0 -2px 0 rgba(0,0,0,.14);
  transform-style:preserve-3d;
  transition:transform .28s ease,box-shadow .28s ease;
}
.cder-v207-contact-icon::after{
  content:"";
  position:absolute;
  inset:-1px;
  border-radius:inherit;
  padding:1px;
  background:linear-gradient(135deg,rgba(255,255,255,.55),rgba(255,255,255,0),rgba(190,230,142,.72));
  -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
}
.cder-v207-contact-icon svg{
  width:24px;
  height:24px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.cder-v207-contact-row:nth-of-type(3) .cder-v207-contact-icon{
  background:linear-gradient(145deg,#74A850,#507733);
}
.cder-v207-contact-row:hover .cder-v207-contact-icon{
  transform:translateY(-2px) rotateX(5deg) rotateY(-5deg);
  box-shadow:
    0 16px 28px rgba(0,0,0,.22),
    inset 0 1px 0 rgba(255,255,255,.28),
    inset 0 -2px 0 rgba(0,0,0,.14);
}
.cder-v207-address{
  cursor:default;
}
.cder-v207-bottom{
  grid-column:1/-1;
  margin-top:16px;
  padding-top:20px;
  border-top:1px solid rgba(245,237,226,.12);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  color:rgba(245,237,226,.56);
  font-size:12px;
  letter-spacing:.04em;
}

@media(max-width:1100px){
  .cder-v207-footer-shell{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .cder-v207-brand,
  .cder-v207-contact{
    min-width:0;
  }
}
@media(max-width:720px){
  .cder-v207-footer-shell{
    width:min(100% - 32px,680px);
    padding-top:44px;
    grid-template-columns:1fr;
    gap:28px;
  }
  .cder-v207-brand{
    text-align:center;
  }
  .cder-v207-logo{
    display:flex;
    justify-content:center;
  }
  .cder-v207-logo img{
    width:min(240px,86vw);
    max-height:102px;
    object-position:center center;
  }
  .cder-v207-brand p{
    margin-inline:auto;
  }
  .cder-v207-links{
    align-items:center;
    text-align:center;
  }
  .cder-v207-col h3{
    text-align:center;
  }
  .cder-v207-contact{
    align-items:stretch;
  }
  .cder-v207-contact-row{
    grid-template-columns:44px minmax(0,1fr);
    max-width:420px;
    width:100%;
    margin-inline:auto;
  }
  .cder-v207-contact-icon{
    width:44px;
    height:44px;
  }
  .cder-v207-bottom{
    flex-direction:column;
    text-align:center;
    gap:8px;
  }
}
@media(max-width:420px){
  .cder-v207-footer-shell{
    width:min(100% - 24px,680px);
  }
  .cder-v207-logo img{
    width:min(220px,84vw);
  }
  .cder-v207-contact-row{
    font-size:13px;
  }
}
@media(prefers-reduced-motion:reduce){
  .cder-v207-footer::before{
    animation:none!important;
  }
  .cder-v207-links a,
  .cder-v207-links a::after,
  .cder-v207-contact-icon{
    transition:none!important;
  }
}


/* =========================================================
   GLOBAL FOOTER V20.8
   Exact original green + supplied transparent SVG logo
   ========================================================= */
.cder-v207-footer{
  background:#839557!important;
  color:#F8F3EA!important;
  border-top:1px solid rgba(255,255,255,.18)!important;
}
.cder-v207-footer-glow{
  display:none!important;
}
.cder-v207-footer::before{
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.24),#F2B27D,rgba(255,255,255,.24),transparent)!important;
  opacity:.7;
  box-shadow:0 0 12px rgba(255,255,255,.16)!important;
}
.cder-v207-logo{
  width:min(300px,100%);
  min-height:116px;
  display:flex!important;
  align-items:center;
}
.cder-v207-logo img{
  width:min(290px,100%)!important;
  max-height:132px!important;
  object-fit:contain!important;
  object-position:left center!important;
  filter:brightness(0) invert(1) drop-shadow(0 8px 20px rgba(45,58,30,.18))!important;
  opacity:.98;
}
[dir="rtl"] .cder-v207-logo img{
  object-position:right center!important;
}
.cder-v207-brand p,
.cder-v207-links a,
.cder-v207-contact-row{
  color:rgba(255,255,255,.90)!important;
}
.cder-v207-col h3{
  color:#fff!important;
}
.cder-v207-links a::after{
  background:#F1B17A!important;
}
.cder-v207-contact-icon{
  color:#fff!important;
  background:linear-gradient(145deg,#94A968 0%,#70834B 100%)!important;
  box-shadow:
    0 12px 24px rgba(49,66,31,.22),
    inset 0 1px 0 rgba(255,255,255,.30),
    inset 0 -2px 0 rgba(58,72,38,.18)!important;
}
.cder-v207-contact-row:nth-of-type(3) .cder-v207-contact-icon{
  background:linear-gradient(145deg,#7FA45A 0%,#5F7D3F 100%)!important;
}
.cder-v207-bottom{
  color:rgba(255,255,255,.68)!important;
  border-top-color:rgba(255,255,255,.18)!important;
}

@media(max-width:720px){
  .cder-v207-logo{
    width:100%;
    min-height:104px;
    justify-content:center!important;
  }
  .cder-v207-logo img{
    width:min(260px,82vw)!important;
    max-height:116px!important;
    object-position:center center!important;
  }
}
@media(max-width:420px){
  .cder-v207-logo img{
    width:min(238px,80vw)!important;
    max-height:108px!important;
  }
}


/* =========================================================
   TABLE D'HÔTES V20.9
   New responsive hero + scattered 3D gallery + glowing edges
   ========================================================= */
.table-v209-hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:#839557;
}
.table-v209-hero-media-widget{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  z-index:0!important;
}
.table-v209-hero-media-widget .elementor-widget-container,
.table-v209-hero-picture{
  display:block;
  width:100%;
  height:100%;
}
.table-v209-hero-picture img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center center;
}
.table-v209-hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:
    linear-gradient(180deg,rgba(17,14,10,.06) 18%,rgba(17,14,10,.14) 50%,rgba(17,14,10,.60) 100%),
    linear-gradient(90deg,rgba(24,20,14,.28),rgba(24,20,14,.05) 55%,rgba(24,20,14,.02));
}
.table-v209-hero > .elementor-element:not(.table-v209-hero-media-widget){
  position:relative;
  z-index:2;
}
.table-v209-hero .elementor-heading-title{
  max-width:12ch;
  color:#fff;
  font-size:clamp(42px,6.6vw,88px)!important;
  line-height:.96;
  text-wrap:balance;
  text-shadow:0 12px 30px rgba(0,0,0,.30);
}
.table-v209-hero-copy{
  max-width:780px;
}
.table-v209-hero-copy p{
  margin:0;
  color:#fff;
  font-size:clamp(17px,1.55vw,21px);
  line-height:1.7;
  text-shadow:0 4px 20px rgba(0,0,0,.32);
}
.table-v209-intro-copy{
  max-width:820px;
}
.table-v209-gallery-section{
  overflow:clip;
}
.table-v209-gallery{
  position:relative;
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  grid-auto-rows:110px;
  gap:clamp(14px,1.8vw,24px);
  padding:clamp(10px,1vw,18px) 0;
  perspective:1800px;
}
.table-v209-card{
  --table-v209-angle:0deg;
  position:relative;
  overflow:hidden;
  border-radius:28px;
  background:#e6ddcf;
  transform-style:preserve-3d;
  box-shadow:
    0 28px 66px rgba(55,42,27,.15),
    0 8px 20px rgba(55,42,27,.08);
  transition:
    transform .34s cubic-bezier(.16,1,.3,1),
    box-shadow .34s cubic-bezier(.16,1,.3,1);
}
.table-v209-card::after{
  content:"";
  position:absolute;
  inset:-1px;
  z-index:2;
  border-radius:inherit;
  padding:1.5px;
  pointer-events:none;
  background:
    conic-gradient(
      from var(--table-v209-angle),
      rgba(195,97,60,.10) 0deg,
      rgba(195,97,60,.16) 245deg,
      rgba(235,149,84,.94) 300deg,
      rgba(255,218,175,.96) 319deg,
      rgba(195,97,60,.13) 344deg,
      rgba(195,97,60,.10) 360deg
    );
  -webkit-mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  filter:drop-shadow(0 0 8px rgba(220,126,70,.34));
  animation:tableV209Edge 5.4s linear infinite;
}
@property --table-v209-angle{
  syntax:'<angle>';
  initial-value:0deg;
  inherits:false;
}
@keyframes tableV209Edge{
  to{--table-v209-angle:360deg}
}
.table-v209-card::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,0) 48%,rgba(22,16,10,.12) 100%);
}
.table-v209-card img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  transform:scale(1.02);
  transition:transform .65s cubic-bezier(.16,1,.3,1);
}
.table-v209-feature{grid-column:span 7;grid-row:span 5}
.table-v209-tall{grid-column:span 3;grid-row:span 5}
.table-v209-medium{grid-column:span 4;grid-row:span 4}
.table-v209-wide{grid-column:span 8;grid-row:span 4}

/* Slightly scattered composition for a natural editorial feel. */
.table-v209-card:nth-child(1){transform:rotate(-1.4deg) translateY(8px)}
.table-v209-card:nth-child(2){transform:rotate(1.5deg) translateY(-4px)}
.table-v209-card:nth-child(3){transform:rotate(-1deg) translateY(12px)}
.table-v209-card:nth-child(4){transform:rotate(1.2deg) translateY(2px)}
.table-v209-card:nth-child(5){transform:rotate(-1.3deg) translateY(-5px)}
.table-v209-card:nth-child(6){transform:rotate(.8deg) translateY(9px)}
.table-v209-card:nth-child(7){transform:rotate(-.7deg)}
.table-v209-card:nth-child(8){transform:rotate(1.1deg) translateY(-6px)}

@media(hover:hover) and (pointer:fine){
  .table-v209-card:hover{
    box-shadow:
      0 40px 92px rgba(55,42,27,.20),
      0 12px 30px rgba(55,42,27,.10);
  }
  .table-v209-card:hover img{
    transform:scale(1.06);
  }
}
@media(max-width:1100px){
  .table-v209-gallery{
    grid-template-columns:repeat(6,minmax(0,1fr));
    grid-auto-rows:105px;
  }
  .table-v209-feature{grid-column:span 6;grid-row:span 5}
  .table-v209-tall{grid-column:span 3;grid-row:span 4}
  .table-v209-medium{grid-column:span 3;grid-row:span 4}
  .table-v209-wide{grid-column:span 6;grid-row:span 4}
}
@media(max-width:767px){
  .table-v209-hero{
    min-height:70vh!important;
  }
  .table-v209-hero::before{
    background:linear-gradient(180deg,rgba(17,14,10,.08) 12%,rgba(17,14,10,.16) 48%,rgba(17,14,10,.66) 100%);
  }
  .table-v209-hero .elementor-heading-title{
    max-width:9ch;
    font-size:clamp(38px,12.5vw,58px)!important;
  }
  .table-v209-hero-copy{
    max-width:34ch;
  }
  .table-v209-hero-copy p{
    font-size:16px;
    line-height:1.62;
  }
  .table-v209-gallery{
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-auto-rows:180px;
    gap:14px;
  }
  .table-v209-feature,
  .table-v209-wide{
    grid-column:span 2;
    grid-row:span 2;
  }
  .table-v209-tall,
  .table-v209-medium{
    grid-column:span 1;
    grid-row:span 2;
  }
  .table-v209-card{
    border-radius:22px;
  }
  .table-v209-card:nth-child(n){
    transform:none;
  }
}
@media(max-width:480px){
  .table-v209-hero{
    min-height:66vh!important;
  }
  .table-v209-gallery{
    grid-template-columns:1fr;
    grid-auto-rows:auto;
  }
  .table-v209-feature,
  .table-v209-wide,
  .table-v209-tall,
  .table-v209-medium{
    grid-column:auto;
    grid-row:auto;
    min-height:280px;
  }
}
@media(prefers-reduced-motion:reduce){
  .table-v209-card::after{
    animation:none!important;
  }
  .table-v209-card,
  .table-v209-card img{
    transition:none!important;
  }
}


/* =========================================================
   TABLE D'HÔTES V20.10
   Coverflow-style gallery + contact form at end
   ========================================================= */
.table-v210-gallery-copy,
.table-v210-contact-copy,
.table-v210-intro-copy{
  max-width: 820px;
}
.table-v210-slider{
  position:relative;
  padding: 28px 0 12px;
  overflow:hidden;
  user-select:none;
}
.table-v210-stage{
  position:relative;
  width:min(1220px,100%);
  height:clamp(300px,46vw,520px);
  margin:0 auto;
  perspective:2200px;
  transform-style:preserve-3d;
}
.table-v210-slide{
  position:absolute;
  left:50%;
  top:50%;
  width:min(28vw, 340px);
  aspect-ratio: 4 / 5;
  margin:0;
  transform-style:preserve-3d;
  transition:
    transform .9s cubic-bezier(.22,1,.36,1),
    opacity .9s ease,
    filter .9s ease;
  opacity:0;
  pointer-events:none;
}
.table-v210-frame{
  position:relative;
  width:100%;
  height:100%;
  border-radius:28px;
  overflow:hidden;
  background:#ece5da;
  box-shadow:
    0 26px 62px rgba(20,18,14,.22),
    0 12px 28px rgba(20,18,14,.10);
}
.table-v210-frame::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:2;
  background:linear-gradient(180deg, rgba(255,255,255,.12), rgba(255,255,255,0) 28%, rgba(23,18,13,.18) 100%);
}
.table-v210-frame::after{
  content:"";
  position:absolute;
  inset:-1px;
  padding:1.6px;
  border-radius:inherit;
  pointer-events:none;
  background:linear-gradient(135deg, rgba(255,248,237,.95), rgba(245,179,112,.92), rgba(187,90,49,.95));
  -webkit-mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  filter:drop-shadow(0 0 10px rgba(245,172,103,.38));
}
.table-v210-slide img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
}
.table-v210-slide.is-active{
  opacity:1;
  z-index:6;
  pointer-events:auto;
}
.table-v210-slide.is-left-1,
.table-v210-slide.is-right-1,
.table-v210-slide.is-left-2,
.table-v210-slide.is-right-2{
  opacity:1;
  pointer-events:auto;
}
.table-v210-slide.is-active{
  transform:translate3d(-50%,-50%,0) scale(1) rotateY(0deg);
  filter:none;
}
.table-v210-slide.is-left-1{
  transform:translate3d(calc(-50% - 290px),-49%,-120px) scale(.88) rotateY(22deg);
  z-index:5;
  filter:saturate(.95) brightness(.95);
}
.table-v210-slide.is-right-1{
  transform:translate3d(calc(-50% + 290px),-49%,-120px) scale(.88) rotateY(-22deg);
  z-index:5;
  filter:saturate(.95) brightness(.95);
}
.table-v210-slide.is-left-2{
  transform:translate3d(calc(-50% - 505px),-48%,-240px) scale(.74) rotateY(31deg);
  z-index:4;
  filter:saturate(.85) brightness(.82);
}
.table-v210-slide.is-right-2{
  transform:translate3d(calc(-50% + 505px),-48%,-240px) scale(.74) rotateY(-31deg);
  z-index:4;
  filter:saturate(.85) brightness(.82);
}
.table-v210-slide.is-hidden{
  transform:translate3d(-50%,-50%,-360px) scale(.56);
  opacity:0;
  z-index:1;
  filter:blur(2px);
}
.table-v210-nav{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  z-index:8;
  width:56px;
  height:56px;
  border:0;
  border-radius:999px;
  background:rgba(255,250,244,.92);
  color:#6f7f46;
  box-shadow:0 16px 34px rgba(33,29,22,.16);
  display:grid;
  place-items:center;
  cursor:pointer;
  transition:transform .25s ease, box-shadow .25s ease, background .25s ease;
}
.table-v210-nav:hover{
  transform:translateY(-50%) scale(1.05);
  box-shadow:0 20px 40px rgba(33,29,22,.22);
  background:#fff;
}
.table-v210-nav span{
  font-size:32px;
  line-height:1;
  margin-top:-2px;
}
.table-v210-prev{left:max(6px,1vw)}
.table-v210-next{right:max(6px,1vw)}
.table-v210-dots{
  display:flex;
  justify-content:center;
  gap:10px;
  margin-top:18px;
}
.table-v210-dot{
  width:10px;
  height:10px;
  border-radius:999px;
  border:0;
  background:rgba(131,149,87,.28);
  transition:transform .25s ease, background .25s ease, width .25s ease;
  padding:0;
}
.table-v210-dot.is-active{
  width:28px;
  background:#839557;
}
.table-v210-contact .cder-booking{
  margin-top: 12px;
}
.table-v210-contact .cder-booking,
.table-v210-contact .cder-booking form{
  max-width: none;
}
.table-v210-contact .cder-booking{
  border-radius:32px;
}
@media(max-width:1200px){
  .table-v210-slide{
    width:min(30vw,320px);
  }
  .table-v210-slide.is-left-1{transform:translate3d(calc(-50% - 235px),-49%,-120px) scale(.86) rotateY(20deg)}
  .table-v210-slide.is-right-1{transform:translate3d(calc(-50% + 235px),-49%,-120px) scale(.86) rotateY(-20deg)}
  .table-v210-slide.is-left-2{transform:translate3d(calc(-50% - 400px),-48%,-230px) scale(.72) rotateY(28deg)}
  .table-v210-slide.is-right-2{transform:translate3d(calc(-50% + 400px),-48%,-230px) scale(.72) rotateY(-28deg)}
}
@media(max-width:900px){
  .table-v210-stage{
    height: clamp(280px, 68vw, 500px);
  }
  .table-v210-slide{
    width:min(44vw,320px);
    aspect-ratio: 4 / 5;
  }
  .table-v210-slide.is-left-2,
  .table-v210-slide.is-right-2{
    opacity:.65;
  }
  .table-v210-slide.is-left-1{transform:translate3d(calc(-50% - 165px),-49%,-110px) scale(.82) rotateY(18deg)}
  .table-v210-slide.is-right-1{transform:translate3d(calc(-50% + 165px),-49%,-110px) scale(.82) rotateY(-18deg)}
  .table-v210-slide.is-left-2{transform:translate3d(calc(-50% - 280px),-48%,-180px) scale(.64) rotateY(22deg)}
  .table-v210-slide.is-right-2{transform:translate3d(calc(-50% + 280px),-48%,-180px) scale(.64) rotateY(-22deg)}
}
@media(max-width:640px){
  .table-v210-slider{
    padding-top: 18px;
  }
  .table-v210-stage{
    width:100%;
    height: clamp(340px, 92vw, 480px);
    perspective:none;
  }
  .table-v210-slide{
    width:min(74vw, 340px);
    aspect-ratio: 4 / 5;
  }
  .table-v210-slide.is-left-2,
  .table-v210-slide.is-right-2{
    opacity:0;
  }
  .table-v210-slide.is-left-1{transform:translate3d(calc(-50% - 82px),-50%,0) scale(.86)}
  .table-v210-slide.is-right-1{transform:translate3d(calc(-50% + 82px),-50%,0) scale(.86)}
  .table-v210-slide.is-left-1,
  .table-v210-slide.is-right-1{
    filter:brightness(.88);
  }
  .table-v210-nav{
    width:48px;
    height:48px;
  }
  .table-v210-prev{left:2px}
  .table-v210-next{right:2px}
}
@media(prefers-reduced-motion:reduce){
  .table-v210-slide,
  .table-v210-nav,
  .table-v210-dot{
    transition:none!important;
  }
}


/* =========================================================
   GLOBAL MOBILE/TABLET MENU V20.11
   Mirrors desktop nav + booking + languages
   ========================================================= */
@media(max-width:1180px){
  .mobile-menu{
    background:
      radial-gradient(circle at 18% 10%,rgba(195,97,60,.13),transparent 30%),
      radial-gradient(circle at 82% 18%,rgba(245,237,226,.08),transparent 32%),
      #839557!important;
    padding:106px 18px 28px!important;
    overflow:auto!important;
  }

  .mobile-menu-inner{
    width:min(760px,100%)!important;
    max-width:760px!important;
    margin:0 auto!important;
    display:block!important;
  }

  .cder-v211-mobile-nav{
    display:grid;
    gap:12px;
    width:100%;
    perspective:1400px;
  }

  .cder-v211-mobile-link{
    position:relative;
    overflow:hidden;
    display:flex!important;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    min-height:60px;
    padding:14px 18px!important;
    border-radius:18px;
    color:#fff!important;
    text-decoration:none!important;
    font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
    font-size:clamp(16px,2.8vw,20px)!important;
    font-weight:750!important;
    line-height:1.2!important;
    letter-spacing:.01em!important;
    background:
      linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.045));
    border:1px solid rgba(255,255,255,.16);
    box-shadow:
      0 14px 28px rgba(45,56,31,.16),
      inset 0 1px 0 rgba(255,255,255,.12);
    transform:translateZ(0);
    transition:transform .28s ease,box-shadow .28s ease,background .28s ease;
  }

  .cder-v211-mobile-link::before{
    content:"";
    position:absolute;
    inset:-1px;
    border-radius:inherit;
    padding:1.4px;
    pointer-events:none;
    background:
      linear-gradient(115deg,
        transparent 8%,
        rgba(245,237,226,.18) 34%,
        rgba(242,173,116,.96) 50%,
        rgba(245,237,226,.18) 66%,
        transparent 92%);
    background-size:220% 100%;
    animation:cderV211MenuEdge 3.8s linear infinite;
    -webkit-mask:
      linear-gradient(#fff 0 0) content-box,
      linear-gradient(#fff 0 0);
    -webkit-mask-composite:xor;
    mask-composite:exclude;
    filter:drop-shadow(0 0 8px rgba(195,97,60,.34));
  }

  .cder-v211-mobile-link::after{
    content:"→";
    flex:0 0 auto;
    color:#F5EDE2;
    font-size:18px;
    opacity:.82;
    transition:transform .28s ease;
  }

  [dir="rtl"] .cder-v211-mobile-link::after{
    content:"←";
  }

  .cder-v211-mobile-link:hover,
  .cder-v211-mobile-link:focus-visible{
    transform:translateY(-2px) rotateX(2deg);
    background:
      linear-gradient(180deg,rgba(255,255,255,.15),rgba(255,255,255,.07));
    box-shadow:
      0 20px 38px rgba(45,56,31,.22),
      inset 0 1px 0 rgba(255,255,255,.14);
    outline:none;
  }

  .cder-v211-mobile-link:hover::after,
  .cder-v211-mobile-link:focus-visible::after{
    transform:translateX(4px);
  }

  [dir="rtl"] .cder-v211-mobile-link:hover::after,
  [dir="rtl"] .cder-v211-mobile-link:focus-visible::after{
    transform:translateX(-4px);
  }

  .cder-v211-book{
    position:relative;
    overflow:hidden;
    display:flex!important;
    align-items:center;
    justify-content:center;
    min-height:56px;
    margin-top:16px;
    padding:13px 20px;
    border-radius:999px;
    color:#fff!important;
    text-decoration:none!important;
    font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
    font-size:16px!important;
    font-weight:850!important;
    letter-spacing:.01em!important;
    background:linear-gradient(135deg,#C3613C,#A95131);
    box-shadow:
      0 16px 32px rgba(134,67,40,.24),
      inset 0 1px 0 rgba(255,255,255,.18);
    border:1px solid rgba(255,237,222,.22);
  }

  .cder-v211-book::before{
    content:"";
    position:absolute;
    inset:-1px;
    border-radius:inherit;
    padding:1.4px;
    pointer-events:none;
    background:linear-gradient(100deg,transparent 15%,rgba(255,230,205,.88) 48%,transparent 72%);
    background-size:220% 100%;
    animation:cderV211MenuEdge 3.2s linear infinite;
    -webkit-mask:
      linear-gradient(#fff 0 0) content-box,
      linear-gradient(#fff 0 0);
    -webkit-mask-composite:xor;
    mask-composite:exclude;
  }

  .cder-v211-language-block{
    margin-top:18px;
    padding:14px;
    border-radius:20px;
    background:rgba(245,237,226,.08);
    border:1px solid rgba(245,237,226,.14);
    box-shadow:0 14px 32px rgba(45,56,31,.12);
  }

  .cder-v211-language-label{
    display:block;
    margin:0 0 10px;
    color:rgba(255,255,255,.78);
    font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
    font-size:11px;
    font-weight:800;
    letter-spacing:.16em;
    text-transform:uppercase;
  }

  .cder-v211-lang-switch{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:8px;
  }

  .cder-v211-lang-switch a{
    position:relative;
    display:flex!important;
    align-items:center;
    justify-content:center;
    min-height:42px;
    padding:9px 10px!important;
    border-radius:14px;
    color:#fff!important;
    text-decoration:none!important;
    font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
    font-size:12px!important;
    font-weight:850!important;
    letter-spacing:.04em!important;
    background:rgba(255,255,255,.07);
    border:1px solid rgba(255,255,255,.13);
    transition:transform .22s ease,background .22s ease,color .22s ease;
  }

  .cder-v211-lang-switch a.active{
    background:#F5EDE2!important;
    color:#6D7E49!important;
    border-color:#F5EDE2!important;
    box-shadow:0 10px 20px rgba(44,53,31,.16);
  }

  .cder-v211-lang-switch a:hover,
  .cder-v211-lang-switch a:focus-visible{
    transform:translateY(-2px);
    outline:none;
  }

  .menu-toggle{
    position:relative;
    z-index:70;
    min-height:44px;
    min-width:72px;
    justify-content:center;
    padding:8px 10px;
    border-radius:14px!important;
    background:rgba(245,237,226,.74)!important;
    border:1px solid rgba(131,149,87,.18)!important;
    box-shadow:0 10px 24px rgba(52,64,35,.10);
    backdrop-filter:blur(10px);
  }

  .menu-toggle em{
    font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
    font-size:12px;
    font-weight:800;
    letter-spacing:.03em;
  }

  .mobile-menu.open .cder-v211-mobile-link{
    animation:cderV211In .48s cubic-bezier(.16,1,.3,1) both;
  }
  .mobile-menu.open .cder-v211-mobile-link:nth-child(2){animation-delay:.03s}
  .mobile-menu.open .cder-v211-mobile-link:nth-child(3){animation-delay:.06s}
  .mobile-menu.open .cder-v211-mobile-link:nth-child(4){animation-delay:.09s}
  .mobile-menu.open .cder-v211-mobile-link:nth-child(5){animation-delay:.12s}
  .mobile-menu.open .cder-v211-mobile-link:nth-child(6){animation-delay:.15s}
  .mobile-menu.open .cder-v211-mobile-link:nth-child(7){animation-delay:.18s}

  @keyframes cderV211MenuEdge{
    to{background-position:220% 0}
  }
  @keyframes cderV211In{
    from{opacity:0;transform:translateY(12px) rotateX(-3deg)}
    to{opacity:1;transform:translateY(0) rotateX(0)}
  }
}

@media(max-width:560px){
  .cder-v211-mobile-link{
    min-height:56px;
    padding:13px 15px!important;
    border-radius:16px;
    font-size:16px!important;
  }

  .cder-v211-language-block{
    padding:12px;
  }

  .cder-v211-lang-switch a{
    min-height:40px;
    padding:8px 6px!important;
  }
}

@media(prefers-reduced-motion:reduce){
  .cder-v211-mobile-link::before,
  .cder-v211-book::before{
    animation:none!important;
  }
  .mobile-menu.open .cder-v211-mobile-link{
    animation:none!important;
  }
  .cder-v211-mobile-link,
  .cder-v211-book,
  .cder-v211-lang-switch a{
    transition:none!important;
  }
}


/* =========================================================
   GLOBAL MENU + AUDIO V20.12
   One booking CTA, glass logo, falling leaves/oranges, audio control
   ========================================================= */
@media(max-width:1180px){
  .cder-v212-menu-logo{
    position:relative;
    z-index:3;
    width:min(250px,72vw);
    min-height:102px;
    margin:0 auto 18px;
    padding:12px 18px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:28px;
    background:
      linear-gradient(145deg,rgba(255,255,255,.16),rgba(255,255,255,.055));
    border:1px solid rgba(255,255,255,.20);
    box-shadow:
      0 22px 46px rgba(46,58,31,.20),
      inset 0 1px 0 rgba(255,255,255,.26),
      inset 0 -1px 0 rgba(255,255,255,.08);
    backdrop-filter:blur(14px) saturate(1.08);
    -webkit-backdrop-filter:blur(14px) saturate(1.08);
    transform:perspective(900px) rotateX(1.5deg);
    overflow:hidden;
  }

  .cder-v212-menu-logo::before{
    content:"";
    position:absolute;
    inset:-2px;
    border-radius:inherit;
    padding:1.4px;
    pointer-events:none;
    background:
      linear-gradient(115deg,
        rgba(255,255,255,.06) 4%,
        rgba(255,255,255,.72) 36%,
        rgba(244,178,120,.68) 50%,
        rgba(255,255,255,.62) 64%,
        rgba(255,255,255,.06) 96%);
    background-size:240% 100%;
    animation:cderV212GlassEdge 4.2s linear infinite;
    -webkit-mask:
      linear-gradient(#fff 0 0) content-box,
      linear-gradient(#fff 0 0);
    -webkit-mask-composite:xor;
    mask-composite:exclude;
  }

  .cder-v212-menu-logo::after{
    content:"";
    position:absolute;
    top:-35%;
    left:-55%;
    width:38%;
    height:170%;
    transform:rotate(19deg);
    background:linear-gradient(90deg,transparent,rgba(255,255,255,.26),transparent);
    animation:cderV212GlassSweep 5.6s ease-in-out infinite;
    pointer-events:none;
  }

  .cder-v212-menu-logo img{
    display:block;
    width:min(210px,64vw);
    max-height:90px;
    object-fit:contain;
    filter:
      brightness(0) invert(1)
      drop-shadow(0 12px 22px rgba(49,60,33,.17));
    opacity:.98;
  }

  .cder-v211-book{
    margin-top:16px!important;
    animation:cderV212BookReminder 7s cubic-bezier(.36,.07,.19,.97) infinite;
    transform-origin:center;
  }

  .cder-v211-book::after{
    content:"";
    position:absolute;
    inset:7px;
    border-radius:999px;
    pointer-events:none;
    box-shadow:0 0 0 rgba(255,211,174,0);
    animation:cderV212BookGlow 3.8s ease-in-out infinite;
  }

  .cder-v212-menu-decor{
    position:fixed;
    inset:0;
    z-index:0;
    overflow:hidden;
    pointer-events:none;
    opacity:0;
    transition:opacity .35s ease;
  }

  .mobile-menu.open .cder-v212-menu-decor{
    opacity:1;
  }

  .cder-v212-fall{
    --x:50%;
    --delay:0s;
    --dur:11s;
    --drift:36px;
    position:absolute;
    top:-14vh;
    left:var(--x);
    width:22px;
    height:22px;
    opacity:.36;
    filter:drop-shadow(0 8px 8px rgba(36,48,25,.16));
    animation:cderV212Fall var(--dur) linear var(--delay) infinite;
    will-change:transform;
  }

  .cder-v212-fall.leaf{
    width:18px;
    height:30px;
    border-radius:92% 12% 88% 18% / 78% 18% 82% 22%;
    background:
      linear-gradient(135deg,#9fb870 0%,#6f894a 52%,#506934 100%);
    transform-origin:50% 20%;
  }

  .cder-v212-fall.leaf::after{
    content:"";
    position:absolute;
    left:50%;
    top:12%;
    width:1px;
    height:76%;
    background:rgba(239,245,222,.36);
    transform:rotate(18deg);
    transform-origin:top;
  }

  .cder-v212-fall.orange{
    width:22px;
    height:22px;
    border-radius:50%;
    background:
      radial-gradient(circle at 35% 28%,rgba(255,237,197,.92) 0 7%,transparent 8%),
      radial-gradient(circle at 45% 42%,#f7a33f 0 54%,#d87a25 72%,#b75d1a 100%);
    box-shadow:
      inset -3px -4px 7px rgba(130,57,15,.20),
      0 8px 12px rgba(64,52,30,.14);
  }

  .cder-v212-fall.orange::before{
    content:"";
    position:absolute;
    width:8px;
    height:5px;
    border-radius:80% 10% 80% 10%;
    background:#668449;
    left:8px;
    top:-4px;
    transform:rotate(-24deg);
  }

  .cder-v211-mobile-nav,
  .cder-v211-book,
  .cder-v211-language-block,
  .cder-v212-menu-logo{
    position:relative;
    z-index:2;
  }

  @keyframes cderV212GlassEdge{
    to{background-position:240% 0}
  }

  @keyframes cderV212GlassSweep{
    0%,18%{left:-55%}
    52%,100%{left:128%}
  }

  @keyframes cderV212BookReminder{
    0%,76%,100%{transform:translateX(0) scale(1)}
    79%{transform:translateX(-2px) rotate(-.5deg) scale(1.008)}
    81%{transform:translateX(2px) rotate(.5deg) scale(1.012)}
    83%{transform:translateX(-1.5px) rotate(-.35deg) scale(1.008)}
    85%{transform:translateX(1.5px) rotate(.35deg) scale(1.01)}
    88%{transform:translateX(0) scale(1)}
  }

  @keyframes cderV212BookGlow{
    0%,100%{box-shadow:0 0 0 rgba(255,211,174,0)}
    50%{box-shadow:0 0 22px rgba(255,211,174,.32)}
  }

  @keyframes cderV212Fall{
    0%{
      transform:translate3d(0,-12vh,0) rotate(0deg) rotateY(0deg);
      opacity:0;
    }
    10%{opacity:.36}
    50%{
      transform:translate3d(var(--drift),52vh,0) rotate(190deg) rotateY(120deg);
    }
    90%{opacity:.30}
    100%{
      transform:translate3d(var(--drift),118vh,0) rotate(380deg) rotateY(240deg);
      opacity:0;
    }
  }
}

/* Floating ambient audio control */
.cder-v212-audio{
  position:fixed;
  z-index:84;
  right:18px;
  bottom:max(18px,env(safe-area-inset-bottom));
  width:58px;
  height:58px;
  border:1px solid rgba(255,255,255,.36);
  border-radius:20px;
  padding:0;
  display:grid;
  place-items:center;
  cursor:pointer;
  color:#fff;
  background:
    linear-gradient(145deg,rgba(131,149,87,.94),rgba(92,116,61,.94));
  box-shadow:
    0 18px 42px rgba(53,67,36,.26),
    inset 0 1px 0 rgba(255,255,255,.30),
    inset 0 -2px 0 rgba(40,54,28,.14);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  transform-style:preserve-3d;
  transition:transform .28s ease,box-shadow .28s ease;
}

.cder-v212-audio::before{
  content:"";
  position:absolute;
  inset:-2px;
  border-radius:22px;
  padding:1.5px;
  pointer-events:none;
  background:
    conic-gradient(
      from var(--cder-v212-audio-angle,0deg),
      rgba(255,255,255,.08),
      rgba(245,179,117,.90) 24%,
      rgba(255,255,255,.18) 42%,
      rgba(245,179,117,.92) 68%,
      rgba(255,255,255,.08)
    );
  -webkit-mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  animation:cderV212AudioEdge 4.4s linear infinite;
  filter:drop-shadow(0 0 10px rgba(237,163,102,.34));
}

.cder-v212-audio::after{
  content:"";
  position:absolute;
  inset:-9px;
  border-radius:28px;
  border:1px solid rgba(245,179,117,.24);
  opacity:.45;
  animation:cderV212AudioPing 2.9s ease-out infinite;
  pointer-events:none;
}

.cder-v212-audio:hover,
.cder-v212-audio:focus-visible{
  transform:translateY(-3px) rotateX(3deg) rotateY(-3deg);
  box-shadow:
    0 24px 48px rgba(53,67,36,.32),
    inset 0 1px 0 rgba(255,255,255,.30),
    inset 0 -2px 0 rgba(40,54,28,.14);
  outline:none;
}

.cder-v212-audio svg{
  width:28px;
  height:28px;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
  position:relative;
  z-index:2;
}

.cder-v212-audio .cder-v212-play{display:block}
.cder-v212-audio .cder-v212-pause{display:none}
.cder-v212-audio.is-playing .cder-v212-play{display:none}
.cder-v212-audio.is-playing .cder-v212-pause{display:block}

@property --cder-v212-audio-angle{
  syntax:'<angle>';
  initial-value:0deg;
  inherits:false;
}
@keyframes cderV212AudioEdge{
  to{--cder-v212-audio-angle:360deg}
}
@keyframes cderV212AudioPing{
  0%{transform:scale(.86);opacity:.45}
  72%,100%{transform:scale(1.25);opacity:0}
}

@media(max-width:720px){
  .cder-v212-audio{
    width:54px;
    height:54px;
    right:12px;
    bottom:max(12px,env(safe-area-inset-bottom));
    border-radius:18px;
  }
}

@media(prefers-reduced-motion:reduce){
  .cder-v212-menu-logo::before,
  .cder-v212-menu-logo::after,
  .cder-v211-book,
  .cder-v211-book::after,
  .cder-v212-fall,
  .cder-v212-audio::before,
  .cder-v212-audio::after{
    animation:none!important;
  }
}


/* =========================================================
   V20.13 FINAL MENU / AUDIO CLEANUP
   Remove menu logo + sticky duplicate booking, clarify music control
   ========================================================= */

/* #1 from user screenshot: remove the extra logo panel inside mobile menu. */
.cder-v212-menu-logo{
  display:none!important;
}

/* #2 from user screenshot: remove the old theme sticky booking CTA.
   The animated booking CTA inside the menu remains. */
.mobile-booking-cta{
  display:none!important;
}
@media(max-width:760px){
  body{
    padding-bottom:0!important;
  }
}

/* Clear music control — immediately understandable as music + ON/OFF. */
.cder-v212-audio{
  width:auto!important;
  min-width:148px!important;
  height:58px!important;
  padding:7px 10px 7px 8px!important;
  border-radius:999px!important;
  grid-template-columns:40px minmax(55px,1fr) 30px!important;
  column-gap:8px!important;
  justify-content:stretch!important;
  align-items:center!important;
}

.cder-v212-audio::before{
  border-radius:999px!important;
}
.cder-v212-audio::after{
  border-radius:999px!important;
}

.cder-v213-music-mark{
  position:relative;
  z-index:2;
  width:40px;
  height:40px;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:#fff;
  background:rgba(255,255,255,.14);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.24),
    0 8px 16px rgba(47,61,31,.12);
}

.cder-v213-music-mark svg{
  width:23px!important;
  height:23px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:2!important;
}

.cder-v213-audio-copy{
  position:relative;
  z-index:2;
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  gap:1px;
  text-align:left;
  color:#fff;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}

.cder-v213-audio-copy strong{
  display:block;
  font-size:13px;
  line-height:1.05;
  font-weight:850;
  letter-spacing:.01em;
  white-space:nowrap;
}

.cder-v213-audio-copy small{
  display:inline-flex;
  align-items:center;
  gap:5px;
  font-size:9px;
  line-height:1;
  font-weight:900;
  letter-spacing:.14em;
  color:rgba(255,255,255,.72);
}

.cder-v213-audio-copy small::before{
  content:"";
  width:6px;
  height:6px;
  border-radius:50%;
  background:rgba(255,255,255,.45);
  box-shadow:0 0 0 rgba(255,255,255,0);
  transition:background .25s ease,box-shadow .25s ease;
}

.cder-v212-audio.is-playing .cder-v213-audio-copy small::before{
  background:#F4C08D;
  box-shadow:0 0 10px rgba(244,192,141,.72);
}

.cder-v213-audio-action{
  position:relative;
  z-index:2;
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:rgba(255,255,255,.12);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18);
}

.cder-v213-audio-action svg{
  grid-area:1/1!important;
  width:18px!important;
  height:18px!important;
  stroke-width:2.2!important;
}

.cder-v213-audio-action .cder-v212-play{
  display:block!important;
}
.cder-v213-audio-action .cder-v212-pause{
  display:none!important;
}
.cder-v212-audio.is-playing .cder-v213-audio-action .cder-v212-play{
  display:none!important;
}
.cder-v212-audio.is-playing .cder-v213-audio-action .cder-v212-pause{
  display:block!important;
}

/* Keep the cue refined rather than distracting. */
.cder-v212-audio.is-playing::after{
  animation-duration:3.8s!important;
}
.cder-v212-audio:not(.is-playing)::after{
  animation-duration:2.4s!important;
}

@media(max-width:720px){
  .cder-v212-audio{
    min-width:136px!important;
    height:54px!important;
    padding:6px 9px 6px 7px!important;
    grid-template-columns:38px minmax(51px,1fr) 28px!important;
    column-gap:7px!important;
    right:10px!important;
    bottom:max(12px,env(safe-area-inset-bottom))!important;
  }
  .cder-v213-music-mark{
    width:38px;
    height:38px;
  }
  .cder-v213-music-mark svg{
    width:21px!important;
    height:21px!important;
  }
  .cder-v213-audio-copy strong{
    font-size:12px;
  }
  .cder-v213-audio-copy small{
    font-size:8.5px;
  }
  .cder-v213-audio-action{
    width:28px;
    height:28px;
  }
}

@media(max-width:380px){
  .cder-v212-audio{
    min-width:128px!important;
    grid-template-columns:36px minmax(48px,1fr) 26px!important;
  }
  .cder-v213-music-mark{
    width:36px;
    height:36px;
  }
}

@media(prefers-reduced-motion:reduce){
  .cder-v212-audio::after{
    animation:none!important;
  }
}


/* =========================================================
   HOME SLIDER + SINGLE GREEN AUDIO CONTROL V20.14
   ========================================================= */

/* Keep only the custom green music control; hide the old theme MUTED/Sound pill. */
.chami-sound-toggle{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}

/* ===== World-class responsive home slider ===== */
.home-v214-slider{
  min-height:100svh!important;
  background:#28321f!important;
}

.home-v214-slider .home-slider-track,
.home-v214-slider .home-slide,
.home-v214-slider .home-slide-media,
.home-v214-slider .home-slide-wash{
  position:absolute;
  inset:0;
}

.home-v214-slider .home-v214-media picture{
  display:block;
  width:100%;
  height:100%;
}

.home-v214-slider .home-v214-media img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center center;
  transform:scale(1.085);
  filter:saturate(.98) contrast(1.02);
  transition:
    transform 8.5s cubic-bezier(.18,.8,.18,1),
    filter 1.1s ease;
  will-change:transform;
}

.home-v214-slider .home-v214-slide{
  opacity:0;
  visibility:hidden;
  clip-path:inset(0 0 0 100%);
  transform:scale(1.018);
  transition:
    opacity .95s cubic-bezier(.22,1,.36,1),
    visibility .95s cubic-bezier(.22,1,.36,1),
    clip-path 1.15s cubic-bezier(.22,1,.36,1),
    transform 1.25s cubic-bezier(.22,1,.36,1);
}

.home-v214-slider .home-v214-slide.is-active{
  opacity:1;
  visibility:visible;
  clip-path:inset(0 0 0 0);
  transform:none;
  z-index:2;
}

.home-v214-slider .home-v214-slide.is-active .home-v214-media img{
  transform:scale(1.015);
  filter:saturate(1.04) contrast(1.04);
}

.home-v214-slider .home-v214-wash{
  background:
    linear-gradient(90deg,
      rgba(43,55,31,.86) 0%,
      rgba(55,69,39,.60) 34%,
      rgba(56,62,40,.20) 64%,
      rgba(23,24,16,.06) 100%),
    linear-gradient(180deg,
      rgba(10,12,7,.06) 0%,
      rgba(10,12,7,.10) 55%,
      rgba(18,22,13,.50) 100%);
}

.home-v214-slider .home-v214-copy{
  position:absolute;
  z-index:3;
  left:clamp(22px,6vw,104px);
  bottom:clamp(118px,13vh,158px);
  width:min(850px,72vw);
  color:#fff;
}

.home-v214-slider .home-slide-kicker{
  min-height:34px;
  padding:7px 14px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.30);
  background:rgba(245,237,226,.10);
  color:#fff;
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16);
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:11px;
  font-weight:800;
  letter-spacing:.18em;
}

.home-v214-slider .home-v214-copy h1{
  max-width:920px;
  margin:18px 0 18px;
  color:#fff!important;
  font-size:clamp(48px,7.2vw,112px)!important;
  line-height:.94!important;
  text-shadow:0 10px 34px rgba(0,0,0,.22);
  text-wrap:balance;
}

.home-v214-slider .home-v214-copy p{
  max-width:720px;
  margin:0;
  color:rgba(255,255,255,.92)!important;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:clamp(16px,1.55vw,21px)!important;
  line-height:1.68!important;
  text-shadow:0 4px 18px rgba(0,0,0,.24);
}

/* Staggered editorial reveal */
.home-v214-slider .home-v214-copy .home-slide-kicker,
.home-v214-slider .home-v214-copy h1,
.home-v214-slider .home-v214-copy p,
.home-v214-slider .home-v214-actions{
  opacity:0;
  transform:translate3d(0,28px,0);
  filter:blur(5px);
  transition:
    opacity .78s cubic-bezier(.22,1,.36,1),
    transform .92s cubic-bezier(.22,1,.36,1),
    filter .78s ease;
}

.home-v214-slider .home-v214-copy .home-slide-kicker{transition-delay:.16s}
.home-v214-slider .home-v214-copy h1{transition-delay:.24s}
.home-v214-slider .home-v214-copy p{transition-delay:.34s}
.home-v214-slider .home-v214-actions{transition-delay:.44s}

.home-v214-slider .home-v214-slide.is-active .home-slide-kicker,
.home-v214-slider .home-v214-slide.is-active .home-v214-copy h1,
.home-v214-slider .home-v214-slide.is-active .home-v214-copy p,
.home-v214-slider .home-v214-slide.is-active .home-v214-actions{
  opacity:1;
  transform:none;
  filter:none;
}

/* CTA pair */
.home-v214-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:26px;
}

.home-v214-btn{
  position:relative;
  overflow:hidden;
  min-height:54px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:12px 20px;
  border-radius:999px;
  text-decoration:none!important;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:14px;
  font-weight:850;
  letter-spacing:.01em;
  transition:
    transform .28s ease,
    box-shadow .28s ease,
    background .28s ease;
  isolation:isolate;
}

.home-v214-btn::before{
  content:"";
  position:absolute;
  inset:-1px;
  z-index:-1;
  border-radius:inherit;
  padding:1.4px;
  background:linear-gradient(105deg,transparent 12%,rgba(255,255,255,.78) 48%,transparent 72%);
  background-size:220% 100%;
  animation:homeV214Edge 4s linear infinite;
  -webkit-mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  pointer-events:none;
}

.home-v214-form{
  background:linear-gradient(135deg,#C3613C,#A75032);
  color:#fff!important;
  box-shadow:
    0 16px 34px rgba(117,56,33,.26),
    inset 0 1px 0 rgba(255,255,255,.16);
}

.home-v214-wa{
  background:linear-gradient(135deg,#78964E,#5A7539);
  color:#fff!important;
  box-shadow:
    0 16px 34px rgba(60,88,40,.24),
    inset 0 1px 0 rgba(255,255,255,.16);
}

.home-v214-btn-icon{
  width:25px;
  height:25px;
  flex:0 0 25px;
  display:grid;
  place-items:center;
}

.home-v214-btn-icon svg{
  width:23px;
  height:23px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.home-v214-wa .home-v214-btn-icon svg{
  stroke-width:1.65;
}

@keyframes homeV214Edge{
  to{background-position:220% 0}
}

@media(hover:hover) and (pointer:fine){
  .home-v214-btn:hover,
  .home-v214-btn:focus-visible{
    transform:translateY(-3px);
    outline:none;
  }
  .home-v214-form:hover{
    box-shadow:
      0 22px 44px rgba(117,56,33,.34),
      inset 0 1px 0 rgba(255,255,255,.16);
  }
  .home-v214-wa:hover{
    box-shadow:
      0 22px 44px rgba(60,88,40,.32),
      inset 0 1px 0 rgba(255,255,255,.16);
  }
}

/* Navigation upgraded but remains familiar */
.home-v214-slider .home-v214-nav{
  z-index:6;
}

.home-v214-slider .home-slider-arrows button{
  background:rgba(255,255,255,.10)!important;
  border-color:rgba(255,255,255,.34)!important;
  color:#fff!important;
  box-shadow:0 10px 26px rgba(0,0,0,.10);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}

.home-v214-slider .home-slider-arrows button:hover{
  background:#fff!important;
  color:#72864A!important;
}

.home-v214-slider .home-slider-dot{
  background:rgba(255,255,255,.34)!important;
}

.home-v214-slider .home-slider-dot.is-active{
  background:#fff!important;
}

.home-v214-slider .home-v214-thumbs{
  z-index:6;
}

.home-v214-slider .home-v214-thumbs .home-slider-thumb{
  border-color:rgba(255,255,255,.26);
  background:rgba(255,255,255,.10);
  box-shadow:0 12px 30px rgba(0,0,0,.12);
}

.home-v214-slider .home-v214-thumbs .home-slider-thumb.is-active{
  border-color:#fff;
  box-shadow:
    0 16px 34px rgba(0,0,0,.16),
    0 0 0 4px rgba(255,255,255,.08);
}

/* RTL */
[dir="rtl"] .home-v214-slider .home-v214-copy{
  left:auto;
  right:clamp(22px,6vw,104px);
  text-align:right;
}
[dir="rtl"] .home-v214-actions{
  justify-content:flex-start;
}

/* Tablet */
@media(max-width:1024px){
  .home-v214-slider{
    min-height:92svh!important;
  }
  .home-v214-slider .home-v214-copy{
    width:min(760px,80vw);
    bottom:130px;
  }
  .home-v214-slider .home-v214-copy h1{
    font-size:clamp(46px,8.8vw,86px)!important;
  }
  .home-v214-slider .home-v214-thumbs{
    right:18px;
  }
  [dir="rtl"] .home-v214-slider .home-v214-thumbs{
    right:auto;
    left:18px;
  }
}

/* Mobile */
@media(max-width:767px){
  .home-v214-slider{
    min-height:100svh!important;
  }

  .home-v214-slider .home-v214-media img{
    object-position:center center;
  }

  .home-v214-slider .home-v214-wash{
    background:
      linear-gradient(180deg,
        rgba(20,24,14,.08) 0%,
        rgba(31,39,23,.18) 38%,
        rgba(35,46,25,.84) 100%);
  }

  .home-v214-slider .home-v214-copy,
  [dir="rtl"] .home-v214-slider .home-v214-copy{
    left:18px;
    right:18px;
    bottom:118px;
    width:auto;
    text-align:start;
  }

  .home-v214-slider .home-v214-copy h1{
    font-size:clamp(38px,11.8vw,60px)!important;
    max-width:10ch;
    margin:14px 0 14px;
  }

  .home-v214-slider .home-v214-copy p{
    max-width:35ch;
    font-size:15px!important;
    line-height:1.58!important;
  }

  .home-v214-actions{
    display:grid;
    grid-template-columns:1fr;
    gap:9px;
    margin-top:18px;
  }

  .home-v214-btn{
    width:100%;
    min-height:50px;
    padding:11px 16px;
    font-size:13px;
  }

  .home-v214-slider .home-slider-nav{
    left:18px;
    right:18px;
    bottom:24px;
    grid-template-columns:auto 1fr auto;
    gap:12px;
  }

  .home-v214-slider .home-slider-count strong{
    font-size:26px;
  }

  .home-v214-slider .home-slider-dot{
    width:20px!important;
    height:3px!important;
  }

  .home-v214-slider .home-slider-dot.is-active{
    width:48px!important;
  }

  .home-v214-slider .home-slider-arrows button{
    width:42px;
    height:42px;
  }

  .home-v214-slider .home-v214-thumbs{
    display:none!important;
  }
}

@media(max-width:390px){
  .home-v214-slider .home-v214-copy,
  [dir="rtl"] .home-v214-slider .home-v214-copy{
    bottom:112px;
  }

  .home-v214-slider .home-v214-copy h1{
    font-size:clamp(35px,11vw,48px)!important;
  }

  .home-v214-slider .home-v214-copy p{
    font-size:14px!important;
  }

  .home-v214-btn{
    min-height:47px;
  }
}

@media(prefers-reduced-motion:reduce){
  .home-v214-slider .home-v214-slide,
  .home-v214-slider .home-v214-media img,
  .home-v214-slider .home-v214-copy .home-slide-kicker,
  .home-v214-slider .home-v214-copy h1,
  .home-v214-slider .home-v214-copy p,
  .home-v214-slider .home-v214-actions,
  .home-v214-btn{
    transition:none!important;
  }

  .home-v214-btn::before{
    animation:none!important;
  }
}


/* =========================================================
   V20.15 — 6-slide home upgrade + clearer WhatsApp
   ========================================================= */

/* Slightly richer hero contrast while preserving the same green palette */
.home-v214-slider .home-v214-wash{
  background:
    linear-gradient(90deg,
      rgba(43,55,31,.84) 0%,
      rgba(55,69,39,.56) 32%,
      rgba(56,62,40,.18) 64%,
      rgba(23,24,16,.05) 100%),
    linear-gradient(180deg,
      rgba(10,12,7,.06) 0%,
      rgba(10,12,7,.10) 54%,
      rgba(18,22,13,.52) 100%);
}

.home-v214-slider .home-v214-copy{
  width:min(880px,72vw);
}

.home-v214-slider .home-v214-copy h1{
  max-width:10.5ch;
}

.home-v214-slider .home-v214-thumbs{
  gap:12px;
}
.home-v214-slider .home-slider-thumb{
  width:98px;
  height:92px;
}
.home-v214-slider .home-slider-thumb img{
  object-position:center center;
}

/* Clearer WhatsApp icon inside CTA */
.home-v214-wa .home-v214-btn-icon{
  width:30px;
  height:30px;
  flex:0 0 30px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:rgba(255,255,255,.18);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.24),
    0 8px 18px rgba(0,0,0,.14);
}
.home-v214-wa .home-v214-btn-icon svg{
  width:19px;
  height:19px;
  stroke-width:1.95;
}

/* Global WhatsApp emphasis without changing the green brand color */
.home-v214-wa,
.cder-actions a[href*="wa.me/212661081557"],
.elementor-button-wrapper a[href*="wa.me/212661081557"],
a[href*="wa.me/212661081557"].elementor-button,
a[href*="api.whatsapp.com"][class*="button"],
a[href*="api.whatsapp.com"][class*="whatsapp"],
a[href*="wa.me/212661081557"][class*="button"],
a[href*="wa.me/212661081557"][class*="whatsapp"]{
  position:relative;
  overflow:visible;
}

.home-v214-wa::after,
.cder-actions a[href*="wa.me/212661081557"]::after,
.elementor-button-wrapper a[href*="wa.me/212661081557"]::after,
a[href*="wa.me/212661081557"].elementor-button::after,
a[href*="api.whatsapp.com"][class*="button"]::after,
a[href*="api.whatsapp.com"][class*="whatsapp"]::after,
a[href*="wa.me/212661081557"][class*="button"]::after,
a[href*="wa.me/212661081557"][class*="whatsapp"]::after{
  content:"";
  position:absolute;
  inset:-8px;
  border-radius:999px;
  background:radial-gradient(circle, rgba(120,150,78,.26), rgba(120,150,78,0) 70%);
  z-index:-1;
  pointer-events:none;
  animation:cderWaGlow 2.7s ease-in-out infinite;
}

.home-v214-wa,
.cder-actions a[href*="wa.me/212661081557"],
.elementor-button-wrapper a[href*="wa.me/212661081557"],
a[href*="wa.me/212661081557"].elementor-button,
a[href*="api.whatsapp.com"][class*="button"],
a[href*="api.whatsapp.com"][class*="whatsapp"],
a[href*="wa.me/212661081557"][class*="button"],
a[href*="wa.me/212661081557"][class*="whatsapp"]{
  animation:cderWaFloat 2.9s ease-in-out infinite;
}

@keyframes cderWaFloat{
  0%,100%{transform:translateY(0)}
  20%{transform:translateY(-2px)}
  40%{transform:translateY(0)}
  60%{transform:translateY(-6px)}
  80%{transform:translateY(0)}
}

@keyframes cderWaGlow{
  0%,100%{opacity:.44; transform:scale(.95)}
  50%{opacity:.9; transform:scale(1.08)}
}

@media(max-width:1024px){
  .home-v214-slider .home-v214-copy{
    width:min(760px,82vw);
  }
  .home-v214-slider .home-slider-thumb{
    width:84px;
    height:80px;
  }
}

@media(max-width:767px){
  .home-v214-slider .home-v214-copy,
  [dir="rtl"] .home-v214-slider .home-v214-copy{
    left:18px;
    right:18px;
    width:auto;
  }
  .home-v214-slider .home-v214-copy h1{
    max-width:11ch;
    font-size:clamp(36px,11.2vw,58px)!important;
  }
  .home-v214-slider .home-slider-nav{
    bottom:20px;
  }
}

@media(prefers-reduced-motion:reduce){
  .home-v214-wa,
  .cder-actions a[href*="wa.me/212661081557"],
  .elementor-button-wrapper a[href*="wa.me/212661081557"],
  a[href*="wa.me/212661081557"].elementor-button,
  a[href*="api.whatsapp.com"][class*="button"],
  a[href*="api.whatsapp.com"][class*="whatsapp"],
  a[href*="wa.me/212661081557"][class*="button"],
  a[href*="wa.me/212661081557"][class*="whatsapp"],
  .home-v214-wa::after,
  .cder-actions a[href*="wa.me/212661081557"]::after,
  .elementor-button-wrapper a[href*="wa.me/212661081557"]::after,
  a[href*="wa.me/212661081557"].elementor-button::after,
  a[href*="api.whatsapp.com"][class*="button"]::after,
  a[href*="api.whatsapp.com"][class*="whatsapp"]::after,
  a[href*="wa.me/212661081557"][class*="button"]::after,
  a[href*="wa.me/212661081557"][class*="whatsapp"]::after{
    animation:none!important;
  }
}


/* =========================================================
   V20.16 — icon clarity + premium slider motion refinements
   ========================================================= */

/* ---------- 1) Home slider: smoother and more premium motion ---------- */
.home-v214-slider .home-slider-track{
  isolation:isolate;
}

.home-v214-slider .home-slide{
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  z-index:1!important;
  transform:none!important;
  transition:
    opacity .88s cubic-bezier(.22,.61,.36,1),
    visibility .88s cubic-bezier(.22,.61,.36,1)!important;
}

.home-v214-slider .home-slide.is-active{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  z-index:3!important;
}

.home-v214-slider .home-slide.is-left-1,
.home-v214-slider .home-slide.is-right-1,
.home-v214-slider .home-slide.is-left-2,
.home-v214-slider .home-slide.is-right-2,
.home-v214-slider .home-slide.is-hidden{
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  z-index:1!important;
  transform:none!important;
}

.home-v214-slider .home-v214-media img{
  transform:scale(1.065);
  transition:
    transform 6.4s cubic-bezier(.22,.61,.36,1),
    opacity .88s cubic-bezier(.22,.61,.36,1)!important;
  will-change:transform, opacity;
}

.home-v214-slider .home-slide.is-active .home-v214-media img{
  transform:scale(1);
}

.home-v214-slider .home-v214-copy > *{
  opacity:0;
  transform:translateY(22px);
  transition:
    opacity .62s cubic-bezier(.22,.61,.36,1),
    transform .62s cubic-bezier(.22,.61,.36,1);
}

.home-v214-slider .home-slide.is-active .home-slide-kicker{
  opacity:1;
  transform:none;
  transition-delay:.12s;
}
.home-v214-slider .home-slide.is-active .home-v214-copy h1{
  opacity:1;
  transform:none;
  transition-delay:.20s;
}
.home-v214-slider .home-slide.is-active .home-v214-copy p{
  opacity:1;
  transform:none;
  transition-delay:.30s;
}
.home-v214-slider .home-slide.is-active .home-v214-actions{
  opacity:1;
  transform:none;
  transition-delay:.40s;
}

.home-v214-slider .home-slider-thumb{
  overflow:hidden;
  transition:
    transform .35s ease,
    box-shadow .35s ease,
    border-color .35s ease,
    opacity .35s ease!important;
}
.home-v214-slider .home-slider-thumb img{
  transition:transform .7s ease;
}
.home-v214-slider .home-slider-thumb:hover img,
.home-v214-slider .home-slider-thumb.is-active img{
  transform:scale(1.06);
}
.home-v214-slider .home-slider-thumb:hover{
  transform:translateY(-2px);
}

@media(prefers-reduced-motion:reduce){
  .home-v214-slider .home-slide,
  .home-v214-slider .home-v214-media img,
  .home-v214-slider .home-v214-copy > *,
  .home-v214-slider .home-slider-thumb,
  .home-v214-slider .home-slider-thumb img{
    transition:none!important;
    animation:none!important;
    transform:none!important;
  }
}

/* ---------- 2) WhatsApp: clearer icon + more elegant emphasis ---------- */
.home-v214-slider .home-v214-actions{
  gap:16px;
  flex-wrap:wrap;
}

.home-v214-slider .home-v214-wa{
  background:linear-gradient(135deg,#78964E 0%,#5A7539 100%)!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.22)!important;
  box-shadow:
    0 16px 36px rgba(40,50,31,.28),
    inset 0 1px 0 rgba(255,255,255,.22)!important;
}

.home-v214-slider .home-v214-wa .home-v214-btn-icon{
  width:34px;
  height:34px;
  flex:0 0 34px;
  border-radius:999px;
  background:#fff!important;
  color:#5A7539!important;
  box-shadow:
    0 10px 20px rgba(39,50,28,.18),
    inset 0 1px 0 rgba(255,255,255,.88)!important;
}

.home-v214-slider .home-v214-wa .home-v214-btn-icon svg{
  width:20px!important;
  height:20px!important;
  stroke:#5A7539!important;
  fill:none!important;
  stroke-width:1.95!important;
}

.home-v214-slider .home-v214-wa:hover,
.home-v214-slider .home-v214-wa:focus-visible{
  transform:translateY(-2px);
}

.home-v214-wa,
.cder-actions a[href*="wa.me/212661081557"],
.elementor-button-wrapper a[href*="wa.me/212661081557"],
a[href*="wa.me/212661081557"].elementor-button,
a[href*="api.whatsapp.com"][class*="button"],
a[href*="api.whatsapp.com"][class*="whatsapp"],
a[href*="wa.me/212661081557"][class*="button"],
a[href*="wa.me/212661081557"][class*="whatsapp"]{
  animation:cderWaPremiumPulse 3.2s ease-in-out infinite!important;
}

.home-v214-wa::after,
.cder-actions a[href*="wa.me/212661081557"]::after,
.elementor-button-wrapper a[href*="wa.me/212661081557"]::after,
a[href*="wa.me/212661081557"].elementor-button::after,
a[href*="api.whatsapp.com"][class*="button"]::after,
a[href*="api.whatsapp.com"][class*="whatsapp"]::after,
a[href*="wa.me/212661081557"][class*="button"]::after,
a[href*="wa.me/212661081557"][class*="whatsapp"]::after{
  animation:cderWaHalo 3.2s ease-in-out infinite!important;
}

@keyframes cderWaPremiumPulse{
  0%,100%{transform:translateY(0) scale(1)}
  35%{transform:translateY(-2px) scale(1.01)}
  55%{transform:translateY(-5px) scale(1.02)}
  75%{transform:translateY(-1px) scale(1.008)}
}

@keyframes cderWaHalo{
  0%,100%{opacity:.34; transform:scale(.96)}
  50%{opacity:.78; transform:scale(1.08)}
}

/* ---------- 3) Music control: larger, clearer, better aligned ---------- */
.cder-v212-audio{
  min-width:220px!important;
  padding:10px 14px 10px 10px!important;
  gap:12px!important;
  grid-template-columns:46px minmax(88px,1fr) 40px!important;
  border-radius:999px!important;
  border:1px solid rgba(255,255,255,.24)!important;
  background:linear-gradient(135deg,rgba(121,149,78,.98) 0%,rgba(90,117,57,.98) 100%)!important;
  box-shadow:
    0 20px 45px rgba(28,36,18,.24),
    inset 0 1px 0 rgba(255,255,255,.24)!important;
  backdrop-filter:blur(14px)!important;
  -webkit-backdrop-filter:blur(14px)!important;
  right:22px!important;
  bottom:max(18px,env(safe-area-inset-bottom))!important;
}

.cder-v212-audio::before{
  opacity:.68!important;
  filter:blur(0)!important;
}

.cder-v213-music-mark{
  width:46px!important;
  height:46px!important;
  background:rgba(255,255,255,.98)!important;
  color:#5A7539!important;
  box-shadow:
    0 12px 24px rgba(34,43,22,.18),
    inset 0 1px 0 rgba(255,255,255,.95)!important;
}
.cder-v213-music-mark svg{
  width:24px!important;
  height:24px!important;
  stroke:#5A7539!important;
  stroke-width:2.15!important;
}
.cder-v213-music-mark::after{
  width:8px!important;
  height:8px!important;
  right:1px!important;
  top:2px!important;
  background:#F4C08D!important;
  box-shadow:0 0 0 4px rgba(244,192,141,.17), 0 0 14px rgba(244,192,141,.72)!important;
}

.cder-v213-audio-copy{
  min-width:0!important;
  text-align:left!important;
  line-height:1.05!important;
}
.cder-v213-audio-copy strong{
  display:block!important;
  color:#fff!important;
  font-size:17px!important;
  font-weight:900!important;
  letter-spacing:.01em!important;
  text-shadow:0 1px 0 rgba(35,46,24,.18)!important;
}
.cder-v213-audio-copy small{
  display:block!important;
  margin-top:2px!important;
  color:rgba(255,255,255,.92)!important;
  font-size:10px!important;
  font-weight:800!important;
  letter-spacing:.20em!important;
}

.cder-v213-audio-action{
  width:38px!important;
  height:38px!important;
  background:rgba(255,255,255,.18)!important;
  border:1px solid rgba(255,255,255,.22)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.22),
    0 10px 18px rgba(36,45,24,.16)!important;
}
.cder-v213-audio-action svg{
  width:20px!important;
  height:20px!important;
  stroke:#fff!important;
  stroke-width:2.3!important;
}

.cder-v212-audio.is-playing{
  box-shadow:
    0 22px 48px rgba(28,36,18,.28),
    0 0 0 7px rgba(120,150,78,.14),
    inset 0 1px 0 rgba(255,255,255,.24)!important;
}
.cder-v212-audio.is-playing .cder-v213-music-mark{
  animation:cderMusicBadge 2.2s ease-in-out infinite;
}
.cder-v212-audio.is-playing .cder-v213-audio-action{
  animation:cderMusicPulse 2.2s ease-in-out infinite;
}

@keyframes cderMusicBadge{
  0%,100%{transform:scale(1)}
  50%{transform:scale(1.06)}
}
@keyframes cderMusicPulse{
  0%,100%{transform:scale(1)}
  50%{transform:scale(1.05)}
}

@media(max-width:767px){
  .cder-v212-audio{
    min-width:198px!important;
    grid-template-columns:42px minmax(78px,1fr) 36px!important;
    padding:9px 12px 9px 9px!important;
    right:12px!important;
    bottom:max(12px,env(safe-area-inset-bottom))!important;
  }
  .cder-v213-music-mark{
    width:42px!important;
    height:42px!important;
  }
  .cder-v213-music-mark svg{
    width:22px!important;
    height:22px!important;
  }
  .cder-v213-audio-copy strong{
    font-size:15px!important;
  }
  .cder-v213-audio-action{
    width:34px!important;
    height:34px!important;
  }
}

@media(prefers-reduced-motion:reduce){
  .cder-v212-audio,
  .cder-v213-music-mark,
  .cder-v213-audio-action,
  .cder-v212-audio.is-playing .cder-v213-music-mark,
  .cder-v212-audio.is-playing .cder-v213-audio-action{
    animation:none!important;
    transition:none!important;
  }
}


/* =========================================================
   ABOUT V20.17 — professional responsive story page
   ========================================================= */
.about-v217-hero-container{
  padding:0!important;
}
.about-v217-hero{
  position:relative;
  min-height:86svh;
  overflow:hidden;
  background:#39482a;
  isolation:isolate;
}
.about-v217-hero-media,
.about-v217-hero-media img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  display:block;
}
.about-v217-hero-media img{
  object-fit:cover;
  object-position:center 52%;
  transform:scale(1.035);
  animation:aboutV217HeroDrift 14s ease-out both;
}
.about-v217-hero-overlay{
  position:absolute;
  inset:0;
  z-index:1;
  background:
    linear-gradient(90deg,rgba(41,53,29,.83) 0%,rgba(46,59,32,.62) 34%,rgba(34,42,25,.20) 72%,rgba(20,24,15,.08) 100%),
    linear-gradient(180deg,rgba(17,20,12,.08) 0%,rgba(17,20,12,.08) 54%,rgba(17,20,12,.42) 100%);
}
.about-v217-hero-copy{
  position:absolute;
  z-index:2;
  left:clamp(24px,6vw,108px);
  bottom:clamp(64px,10vh,112px);
  width:min(900px,74vw);
  color:#fff;
}
.about-v217-eyebrow{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:7px 14px;
  border-radius:999px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.25);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  color:#fff;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:11px;
  font-weight:850;
  letter-spacing:.16em;
  text-transform:uppercase;
  opacity:0;
  transform:translateY(18px);
  animation:aboutV217HeroIn .7s .18s cubic-bezier(.22,1,.36,1) forwards;
}
.about-v217-hero-copy h1{
  max-width:10.5ch;
  margin:18px 0 18px;
  color:#fff;
  font-size:clamp(48px,7.2vw,112px);
  line-height:.94;
  text-wrap:balance;
  text-shadow:0 14px 38px rgba(0,0,0,.26);
  opacity:0;
  transform:translateY(26px);
  animation:aboutV217HeroIn .82s .28s cubic-bezier(.22,1,.36,1) forwards;
}
.about-v217-hero-copy p{
  max-width:760px;
  margin:0;
  color:rgba(255,255,255,.93);
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:clamp(16px,1.4vw,20px);
  line-height:1.7;
  text-shadow:0 4px 16px rgba(0,0,0,.22);
  opacity:0;
  transform:translateY(22px);
  animation:aboutV217HeroIn .78s .38s cubic-bezier(.22,1,.36,1) forwards;
}
.about-v217-hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:26px;
  opacity:0;
  transform:translateY(18px);
  animation:aboutV217HeroIn .76s .48s cubic-bezier(.22,1,.36,1) forwards;
}
.about-v217-btn{
  min-height:52px;
  padding:12px 20px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none!important;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:14px;
  font-weight:850;
  transition:transform .28s ease,box-shadow .28s ease,background .28s ease;
}
.about-v217-btn-primary{
  color:#fff!important;
  background:linear-gradient(135deg,#78964e,#5a7539);
  border:1px solid rgba(255,255,255,.18);
  box-shadow:0 15px 34px rgba(40,53,28,.28),inset 0 1px 0 rgba(255,255,255,.22);
}
.about-v217-btn-glass{
  color:#fff!important;
  background:rgba(255,255,255,.11);
  border:1px solid rgba(255,255,255,.30);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16);
}
.about-v217-btn:hover,
.about-v217-btn:focus-visible{
  transform:translateY(-2px);
  outline:none;
}
.about-v217-btn-primary:hover{
  box-shadow:0 21px 42px rgba(40,53,28,.34),inset 0 1px 0 rgba(255,255,255,.22);
}
.about-v217-btn-glass:hover{
  background:rgba(255,255,255,.17);
}

@keyframes aboutV217HeroIn{
  to{opacity:1;transform:none}
}
@keyframes aboutV217HeroDrift{
  from{transform:scale(1.075)}
  to{transform:scale(1.015)}
}

/* About story */
.about-v217-section{
  overflow:clip;
}
.about-v217-story{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(380px,.95fr);
  gap:clamp(36px,6vw,84px);
  align-items:center;
}
.about-v217-story-copy{
  max-width:760px;
}
.about-v217-section-tag{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:6px 11px;
  border-radius:999px;
  color:#6d7f48;
  background:rgba(131,149,87,.10);
  border:1px solid rgba(131,149,87,.18);
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:10px;
  font-weight:850;
  letter-spacing:.15em;
  text-transform:uppercase;
}
.about-v217-story h2{
  margin:16px 0 20px;
  max-width:13ch;
  color:#26361f;
  font-size:clamp(40px,5vw,72px);
  line-height:1.02;
  text-wrap:balance;
}
.about-v217-story p{
  margin:0 0 16px;
  color:#5f665a;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:16px;
  line-height:1.78;
}
.about-v217-badges{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:24px;
}
.about-v217-badges span{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:8px 13px;
  border-radius:999px;
  color:#4f5d3f;
  background:#fff;
  border:1px solid rgba(111,129,78,.22);
  box-shadow:0 9px 20px rgba(56,67,42,.06);
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:13px;
  font-weight:700;
}
.about-v217-story-media,
.about-v217-feature-media{
  position:relative;
  margin:0;
  overflow:hidden;
  border-radius:32px;
  background:#e8eadf;
  box-shadow:
    0 30px 70px rgba(55,65,42,.16),
    0 10px 24px rgba(55,65,42,.08);
  transform-style:preserve-3d;
}
.about-v217-story-media{
  aspect-ratio:4/5;
  transform:perspective(1200px) rotateY(-4deg) rotateX(1deg);
}
.about-v217-story-media::after,
.about-v217-feature-media::after{
  content:"";
  position:absolute;
  inset:-1px;
  border-radius:inherit;
  padding:1.5px;
  pointer-events:none;
  background:linear-gradient(135deg,rgba(255,255,255,.72),rgba(131,149,87,.56),rgba(195,97,60,.42));
  -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
}
.about-v217-story-media img,
.about-v217-feature-media img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  transition:transform .8s cubic-bezier(.22,1,.36,1);
}
.about-v217-story-media:hover img,
.about-v217-feature:hover .about-v217-feature-media img{
  transform:scale(1.045);
}

/* Feature blocks */
.about-v217-features{
  display:grid;
  gap:clamp(34px,6vw,78px);
}
.about-v217-feature{
  display:grid;
  grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);
  align-items:center;
  gap:clamp(30px,5vw,74px);
}
.about-v217-feature:nth-child(even) .about-v217-feature-copy{
  order:2;
}
.about-v217-feature:nth-child(even) .about-v217-feature-media{
  order:1;
}
.about-v217-feature-copy{
  position:relative;
  padding:clamp(26px,3vw,42px);
  border-radius:28px;
  background:
    linear-gradient(145deg,rgba(255,255,255,.97),rgba(246,246,240,.94));
  border:1px solid rgba(131,149,87,.14);
  box-shadow:
    0 24px 56px rgba(57,70,42,.10),
    inset 0 1px 0 rgba(255,255,255,.95);
}
.about-v217-leaf{
  width:46px;
  height:46px;
  border-radius:15px;
  display:grid;
  place-items:center;
  color:#78964e;
  background:rgba(131,149,87,.11);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.80);
}
.about-v217-leaf svg{
  width:26px;
  height:26px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.about-v217-feature h3{
  margin:16px 0 12px;
  color:#26361f;
  font-size:clamp(30px,3vw,46px);
  line-height:1.07;
  text-wrap:balance;
}
.about-v217-feature p{
  margin:0;
  color:#60675b;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:16px;
  line-height:1.78;
}
.about-v217-feature-media{
  aspect-ratio:16/11;
}

/* reveal animation */
[data-about-v217-reveal]{
  opacity:0;
  transform:translateY(30px);
  transition:
    opacity .8s cubic-bezier(.22,1,.36,1),
    transform .9s cubic-bezier(.22,1,.36,1);
}
[data-about-v217-reveal].is-inview{
  opacity:1;
  transform:none;
}

/* RTL */
[dir="rtl"] .about-v217-hero-copy{
  left:auto;
  right:clamp(24px,6vw,108px);
  text-align:right;
}
[dir="rtl"] .about-v217-story,
[dir="rtl"] .about-v217-feature{
  direction:rtl;
}
[dir="rtl"] .about-v217-story-copy,
[dir="rtl"] .about-v217-feature-copy{
  text-align:right;
}

/* Tablet */
@media(max-width:1024px){
  .about-v217-hero{
    min-height:78svh;
  }
  .about-v217-hero-copy{
    width:min(760px,82vw);
  }
  .about-v217-hero-copy h1{
    font-size:clamp(46px,8vw,80px);
  }
  .about-v217-story{
    grid-template-columns:1fr 1fr;
    gap:34px;
  }
  .about-v217-feature{
    gap:30px;
  }
}

/* Mobile */
@media(max-width:767px){
  .about-v217-hero{
    min-height:88svh;
  }
  .about-v217-hero-media img{
    object-position:center center;
  }
  .about-v217-hero-overlay{
    background:
      linear-gradient(180deg,rgba(20,25,14,.08) 0%,rgba(29,37,21,.18) 42%,rgba(31,42,22,.84) 100%);
  }
  .about-v217-hero-copy,
  [dir="rtl"] .about-v217-hero-copy{
    left:18px;
    right:18px;
    bottom:38px;
    width:auto;
  }
  .about-v217-hero-copy h1{
    max-width:11ch;
    margin:14px 0 14px;
    font-size:clamp(38px,11.5vw,58px);
  }
  .about-v217-hero-copy p{
    max-width:35ch;
    font-size:15px;
    line-height:1.6;
  }
  .about-v217-hero-actions{
    display:grid;
    grid-template-columns:1fr;
    gap:9px;
    margin-top:18px;
  }
  .about-v217-btn{
    width:100%;
    min-height:48px;
  }
  .about-v217-story,
  .about-v217-feature{
    grid-template-columns:1fr;
    gap:24px;
  }
  .about-v217-story-copy{
    max-width:none;
  }
  .about-v217-story h2{
    max-width:11ch;
    font-size:clamp(36px,10vw,52px);
  }
  .about-v217-story-media{
    aspect-ratio:4/3;
    transform:none;
  }
  .about-v217-feature:nth-child(even) .about-v217-feature-copy,
  .about-v217-feature:nth-child(even) .about-v217-feature-media{
    order:initial;
  }
  .about-v217-feature-copy{
    padding:24px;
  }
  .about-v217-feature h3{
    font-size:clamp(30px,8vw,40px);
  }
  .about-v217-story p,
  .about-v217-feature p{
    font-size:15px;
    line-height:1.72;
  }
  .about-v217-feature-media{
    aspect-ratio:4/3;
  }
}

@media(prefers-reduced-motion:reduce){
  .about-v217-hero-media img,
  .about-v217-eyebrow,
  .about-v217-hero-copy h1,
  .about-v217-hero-copy p,
  .about-v217-hero-actions,
  [data-about-v217-reveal],
  .about-v217-story-media img,
  .about-v217-feature-media img{
    animation:none!important;
    transition:none!important;
    transform:none!important;
    opacity:1!important;
  }
}


/* =========================================================
   ABOUT V20.18 — contextual icons, image facts, full contact form
   ========================================================= */
.about-v217-section-tag{
  gap:8px;
}
.about-v218-tag-icon{
  width:18px;
  height:18px;
  display:inline-grid;
  place-items:center;
  color:#6d7f48;
}
.about-v218-tag-icon svg{
  width:16px;
  height:16px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

/* Four visual facts: each fact has its own image + contextual icon */
.about-v218-facts-section{
  padding-top:28px!important;
}
.about-v218-facts{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:clamp(14px,1.8vw,24px);
}
.about-v218-fact{
  position:relative;
  overflow:hidden;
  min-height:330px;
  border-radius:28px;
  background:#dfe5d3;
  box-shadow:
    0 24px 58px rgba(48,61,35,.14),
    0 9px 22px rgba(48,61,35,.07);
  transform:translateZ(0);
  transition:transform .35s cubic-bezier(.22,1,.36,1),box-shadow .35s ease;
}
.about-v218-fact::after{
  content:"";
  position:absolute;
  inset:-1px;
  border-radius:inherit;
  padding:1.4px;
  pointer-events:none;
  background:linear-gradient(135deg,rgba(255,255,255,.80),rgba(131,149,87,.54),rgba(195,97,60,.34));
  -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
}
.about-v218-fact-media{
  position:absolute;
  inset:0;
  margin:0;
}
.about-v218-fact-media::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(27,34,21,.04) 32%,rgba(29,39,22,.76) 100%);
}
.about-v218-fact-media img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  transition:transform .7s cubic-bezier(.22,1,.36,1),filter .5s ease;
}
.about-v218-fact-label{
  position:absolute;
  z-index:2;
  left:16px;
  right:16px;
  bottom:16px;
  min-height:62px;
  padding:10px 12px;
  border-radius:18px;
  display:flex;
  align-items:center;
  gap:11px;
  color:#fff;
  background:rgba(51,66,36,.58);
  border:1px solid rgba(255,255,255,.20);
  backdrop-filter:blur(13px);
  -webkit-backdrop-filter:blur(13px);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14);
}
.about-v218-fact-icon{
  width:40px;
  height:40px;
  flex:0 0 40px;
  border-radius:13px;
  display:grid;
  place-items:center;
  color:#657d42;
  background:rgba(255,255,255,.96);
  box-shadow:
    0 10px 22px rgba(28,35,20,.17),
    inset 0 1px 0 rgba(255,255,255,.92);
}
.about-v218-fact-icon svg{
  width:23px;
  height:23px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.about-v218-fact-label strong{
  color:#fff;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:14px;
  line-height:1.25;
  font-weight:850;
  text-shadow:0 2px 10px rgba(0,0,0,.18);
}
@media(hover:hover) and (pointer:fine){
  .about-v218-fact:hover{
    transform:translateY(-5px);
    box-shadow:
      0 34px 70px rgba(48,61,35,.18),
      0 12px 28px rgba(48,61,35,.08);
  }
  .about-v218-fact:hover img{
    transform:scale(1.055);
    filter:saturate(1.05);
  }
}

/* Contextual icons in Yoga / Nature description cards */
.about-v217-leaf{
  color:#6f874b!important;
  background:rgba(131,149,87,.12)!important;
}
.about-v217-leaf svg{
  width:27px!important;
  height:27px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.8!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}

/* Original full contact form at the bottom */
.about-v218-contact-section{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 12% 6%,rgba(131,149,87,.10),transparent 28%),
    linear-gradient(180deg,#f8f7f2 0%,#f2f4ec 100%);
}
.about-v218-contact-section::before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:2px;
  background:linear-gradient(90deg,transparent,#839557,#c3613c,#839557,transparent);
  opacity:.62;
}
.about-v218-contact-section .elementor-heading-title{
  max-width:12ch;
  color:#26361f;
  font-size:clamp(38px,4.8vw,68px)!important;
  line-height:1.02;
}
.about-v218-contact-copy{
  max-width:760px;
}
.about-v218-contact-copy p{
  color:#60675b;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:16px;
  line-height:1.75;
}

/* Enhance the native full form without changing its fields */
.about-v218-contact-section .cder-booking{
  margin-top:18px;
  border-radius:30px;
  border:1px solid rgba(131,149,87,.16);
  background:rgba(255,255,255,.88);
  box-shadow:
    0 28px 66px rgba(49,61,36,.12),
    inset 0 1px 0 rgba(255,255,255,.94);
}
.about-v218-contact-section .cder-booking input,
.about-v218-contact-section .cder-booking select,
.about-v218-contact-section .cder-booking textarea{
  border-radius:14px!important;
}
.about-v218-contact-section .cder-booking button,
.about-v218-contact-section .cder-booking .button{
  border-radius:999px!important;
}

@media(max-width:1100px){
  .about-v218-facts{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .about-v218-fact{
    min-height:300px;
  }
}
@media(max-width:640px){
  .about-v218-facts{
    grid-template-columns:1fr;
    gap:14px;
  }
  .about-v218-fact{
    min-height:250px;
    border-radius:22px;
  }
  .about-v218-fact-label{
    left:12px;
    right:12px;
    bottom:12px;
    border-radius:16px;
  }
  .about-v218-contact-section .elementor-heading-title{
    font-size:clamp(34px,10vw,48px)!important;
  }
}
@media(prefers-reduced-motion:reduce){
  .about-v218-fact,
  .about-v218-fact-media img{
    transition:none!important;
    transform:none!important;
  }
}


/* =========================================================
   ABOUT V20.19 — icon-only facts + corrected nature image
   ========================================================= */

/* Remove visual-photo treatment from the four facts: icons only */
.about-v219-icon-facts{
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:clamp(14px,1.8vw,24px);
}

.about-v219-icon-fact{
  min-height:150px!important;
  padding:24px 20px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:14px!important;
  text-align:center!important;
  border-radius:26px!important;
  background:
    linear-gradient(145deg,rgba(255,255,255,.98),rgba(243,246,237,.96))!important;
  border:1px solid rgba(131,149,87,.18)!important;
  box-shadow:
    0 20px 50px rgba(51,66,36,.10),
    inset 0 1px 0 rgba(255,255,255,.92)!important;
  overflow:visible!important;
}

.about-v219-icon-fact::after{
  content:""!important;
  position:absolute!important;
  inset:-1px!important;
  border-radius:inherit!important;
  padding:1.3px!important;
  pointer-events:none!important;
  background:linear-gradient(135deg,rgba(255,255,255,.72),rgba(131,149,87,.50),rgba(195,97,60,.24))!important;
  -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0)!important;
  -webkit-mask-composite:xor!important;
  mask-composite:exclude!important;
}

.about-v219-icon-fact .about-v218-fact-icon{
  width:58px!important;
  height:58px!important;
  flex:0 0 58px!important;
  border-radius:18px!important;
  color:#657d42!important;
  background:linear-gradient(145deg,#fff,#f4f6ef)!important;
  border:1px solid rgba(131,149,87,.15)!important;
  box-shadow:
    0 12px 26px rgba(54,68,38,.12),
    inset 0 1px 0 rgba(255,255,255,.95)!important;
}

.about-v219-icon-fact .about-v218-fact-icon svg{
  width:29px!important;
  height:29px!important;
  stroke-width:1.75!important;
}

.about-v219-icon-fact strong{
  color:#334129!important;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-size:15px!important;
  line-height:1.28!important;
  font-weight:850!important;
  text-shadow:none!important;
}

@media(hover:hover) and (pointer:fine){
  .about-v219-icon-fact:hover{
    transform:translateY(-4px)!important;
    box-shadow:
      0 28px 60px rgba(51,66,36,.14),
      inset 0 1px 0 rgba(255,255,255,.92)!important;
  }
  .about-v219-icon-fact:hover .about-v218-fact-icon{
    transform:translateY(-2px) scale(1.035);
  }
}

@media(max-width:1100px){
  .about-v219-icon-facts{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:640px){
  .about-v219-icon-facts{
    grid-template-columns:1fr 1fr;
    gap:12px;
  }
  .about-v219-icon-fact{
    min-height:140px!important;
    padding:20px 12px!important;
  }
  .about-v219-icon-fact .about-v218-fact-icon{
    width:52px!important;
    height:52px!important;
    flex-basis:52px!important;
  }
  .about-v219-icon-fact .about-v218-fact-icon svg{
    width:26px!important;
    height:26px!important;
  }
  .about-v219-icon-fact strong{
    font-size:13px!important;
  }
}

@media(max-width:390px){
  .about-v219-icon-facts{
    grid-template-columns:1fr;
  }
}

@media(prefers-reduced-motion:reduce){
  .about-v219-icon-fact,
  .about-v219-icon-fact .about-v218-fact-icon{
    transition:none!important;
    transform:none!important;
  }
}


/* =========================================================
   ABOUT HERO SLIDER V20.22
   Only À propos hero changes: supplied images + orange text accent
   ========================================================= */
.about-v222-hero-container{
  padding:0!important;
}
.about-v222-slider{
  position:relative;
  min-height:86svh;
  overflow:hidden;
  isolation:isolate;
  background:#364329;
}
.about-v222-track,
.about-v222-slide,
.about-v222-slide picture,
.about-v222-slide img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
}
.about-v222-slide{
  margin:0;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  z-index:1;
  transition:
    opacity 1.15s cubic-bezier(.22,.61,.36,1),
    visibility 1.15s cubic-bezier(.22,.61,.36,1);
}
.about-v222-slide.is-active{
  opacity:1;
  visibility:visible;
  z-index:2;
}
.about-v222-slide picture{
  display:block;
}
.about-v222-slide img{
  display:block;
  object-fit:cover;
  object-position:center center;
  transform:scale(1.075);
  transition:transform 7.2s cubic-bezier(.22,.61,.36,1);
  filter:saturate(1.02) contrast(1.03);
}
.about-v222-slide.is-active img{
  transform:scale(1.015);
}
.about-v222-overlay{
  position:absolute;
  inset:0;
  z-index:3;
  pointer-events:none;
  background:
    linear-gradient(90deg,
      rgba(37,51,29,.84) 0%,
      rgba(52,66,38,.58) 36%,
      rgba(37,46,28,.24) 66%,
      rgba(20,24,15,.06) 100%),
    linear-gradient(180deg,
      rgba(14,17,10,.04) 0%,
      rgba(14,17,10,.10) 56%,
      rgba(18,23,13,.46) 100%);
}
.about-v222-copy{
  position:absolute;
  z-index:4;
  left:clamp(24px,6vw,108px);
  bottom:clamp(70px,10vh,116px);
  width:min(900px,74vw);
}
.about-v222-eyebrow{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:7px 14px;
  border-radius:999px;
  color:#F3A46E;
  background:rgba(38,50,29,.36);
  border:1px solid rgba(243,164,110,.45);
  box-shadow:0 10px 28px rgba(0,0,0,.12);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:11px;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.about-v222-copy h1{
  max-width:10.5ch;
  margin:18px 0 18px;
  color:#D86A35!important;
  font-size:clamp(48px,7.1vw,110px)!important;
  line-height:.94!important;
  text-wrap:balance;
  text-shadow:
    0 3px 0 rgba(255,214,179,.14),
    0 14px 38px rgba(0,0,0,.28);
}
.about-v222-copy p{
  max-width:760px;
  margin:0;
  color:#fff!important;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:clamp(16px,1.4vw,20px)!important;
  line-height:1.7!important;
  text-shadow:0 4px 18px rgba(0,0,0,.26);
}
.about-v222-controls{
  position:absolute;
  z-index:5;
  right:clamp(20px,4vw,70px);
  bottom:clamp(28px,5vh,58px);
  display:flex;
  align-items:center;
  gap:10px;
}
.about-v222-dot{
  width:28px;
  height:4px;
  padding:0;
  border:0;
  border-radius:999px;
  cursor:pointer;
  background:rgba(255,255,255,.36);
  box-shadow:0 4px 16px rgba(0,0,0,.14);
  transition:width .32s ease,background .32s ease,transform .32s ease;
}
.about-v222-dot.is-active{
  width:54px;
  background:#D86A35;
}
.about-v222-dot:hover,
.about-v222-dot:focus-visible{
  transform:translateY(-2px);
  outline:none;
  background:#F3A46E;
}
[dir="rtl"] .about-v222-copy{
  left:auto;
  right:clamp(24px,6vw,108px);
  text-align:right;
}
[dir="rtl"] .about-v222-controls{
  right:auto;
  left:clamp(20px,4vw,70px);
}

@media(max-width:1024px){
  .about-v222-slider{
    min-height:78svh;
  }
  .about-v222-copy{
    width:min(760px,82vw);
  }
  .about-v222-copy h1{
    font-size:clamp(46px,8.5vw,80px)!important;
  }
}
@media(max-width:767px){
  .about-v222-slider{
    min-height:88svh;
  }
  .about-v222-slide img{
    object-position:center center;
  }
  .about-v222-overlay{
    background:
      linear-gradient(180deg,
        rgba(20,26,15,.06) 0%,
        rgba(35,46,26,.16) 42%,
        rgba(34,45,25,.86) 100%);
  }
  .about-v222-copy,
  [dir="rtl"] .about-v222-copy{
    left:18px;
    right:18px;
    bottom:78px;
    width:auto;
    text-align:start;
  }
  .about-v222-copy h1{
    max-width:11ch;
    margin:14px 0 14px;
    font-size:clamp(38px,11.5vw,58px)!important;
  }
  .about-v222-copy p{
    max-width:35ch;
    font-size:15px!important;
    line-height:1.6!important;
  }
  .about-v222-controls,
  [dir="rtl"] .about-v222-controls{
    left:18px;
    right:18px;
    bottom:28px;
    justify-content:flex-start;
  }
  .about-v222-dot{
    width:22px;
  }
  .about-v222-dot.is-active{
    width:44px;
  }
}
@media(max-width:390px){
  .about-v222-copy h1{
    font-size:clamp(35px,10.7vw,48px)!important;
  }
}
@media(prefers-reduced-motion:reduce){
  .about-v222-slide,
  .about-v222-slide img,
  .about-v222-dot{
    transition:none!important;
    transform:none!important;
  }
}


/* =========================================================
   ABOUT HERO SLIDER V20.23
   Per-slide text paired with suitable image, white text, autoplay
   ========================================================= */
.about-v223-hero-container{padding:0!important}
.about-v223-slider{
  position:relative;
  min-height:86svh;
  overflow:hidden;
  isolation:isolate;
  background:#25331d;
}
.about-v223-track,
.about-v223-slide,
.about-v223-slide picture,
.about-v223-slide img{
  position:absolute; inset:0; width:100%; height:100%;
}
.about-v223-slide{
  margin:0;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity 1.15s cubic-bezier(.22,.61,.36,1), visibility 1.15s cubic-bezier(.22,.61,.36,1);
}
.about-v223-slide.is-active{
  opacity:1;
  visibility:visible;
  z-index:2;
  pointer-events:auto;
}
.about-v223-slide img{
  display:block;
  object-fit:cover;
  object-position:center center;
  transform:scale(1.07);
  transition:transform 7.2s cubic-bezier(.22,.61,.36,1);
  filter:saturate(1.02) contrast(1.03);
}
.about-v223-slide.is-active img{transform:scale(1.015)}
.about-v223-overlay{
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg, rgba(21,28,16,.82) 0%, rgba(31,43,23,.56) 34%, rgba(27,35,20,.20) 66%, rgba(20,24,15,.05) 100%),
    linear-gradient(180deg, rgba(16,21,12,.05) 0%, rgba(16,21,12,.10) 55%, rgba(19,24,13,.48) 100%);
}
.about-v223-copy{
  position:absolute;
  left:clamp(24px,6vw,108px);
  bottom:clamp(70px,10vh,116px);
  width:min(920px,74vw);
  z-index:3;
}
.about-v223-eyebrow{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:8px 14px;
  border-radius:999px;
  color:#fff;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.28);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:11px;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.about-v223-copy h1{
  max-width:11ch;
  margin:18px 0 18px;
  color:#fff!important;
  font-size:clamp(48px,7vw,108px)!important;
  line-height:.94!important;
  text-wrap:balance;
  text-shadow:0 10px 32px rgba(0,0,0,.34);
}
.about-v223-copy p{
  max-width:760px;
  margin:0;
  color:#fff!important;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:clamp(16px,1.35vw,20px)!important;
  line-height:1.72!important;
  text-shadow:0 4px 18px rgba(0,0,0,.28);
}
.about-v223-controls{
  position:absolute;
  z-index:5;
  right:clamp(20px,4vw,70px);
  bottom:clamp(28px,5vh,58px);
  display:flex;
  align-items:center;
  gap:10px;
}
.about-v223-dot{
  width:28px;height:4px;padding:0;border:0;border-radius:999px;cursor:pointer;
  background:rgba(255,255,255,.38);
  box-shadow:0 4px 16px rgba(0,0,0,.14);
  transition:width .32s ease,background .32s ease,transform .32s ease;
}
.about-v223-dot.is-active{width:54px;background:#ffffff}
.about-v223-dot:hover,.about-v223-dot:focus-visible{transform:translateY(-2px);outline:none;background:#fff}
[dir="rtl"] .about-v223-copy{left:auto;right:clamp(24px,6vw,108px);text-align:right}
[dir="rtl"] .about-v223-controls{right:auto;left:clamp(20px,4vw,70px)}
@media(max-width:1024px){
  .about-v223-slider{min-height:78svh}
  .about-v223-copy{width:min(760px,82vw)}
  .about-v223-copy h1{font-size:clamp(44px,8.2vw,78px)!important}
}
@media(max-width:767px){
  .about-v223-slider{min-height:88svh}
  .about-v223-overlay{
    background:linear-gradient(180deg, rgba(18,24,13,.06) 0%, rgba(28,37,20,.18) 42%, rgba(29,38,20,.88) 100%);
  }
  .about-v223-copy,[dir="rtl"] .about-v223-copy{
    left:18px; right:18px; bottom:78px; width:auto; text-align:start;
  }
  .about-v223-copy h1{
    max-width:11ch; margin:14px 0; font-size:clamp(36px,11.2vw,56px)!important;
  }
  .about-v223-copy p{
    max-width:35ch; font-size:15px!important; line-height:1.6!important;
  }
  .about-v223-controls,[dir="rtl"] .about-v223-controls{
    left:18px; right:18px; bottom:28px; justify-content:flex-start;
  }
  .about-v223-dot{width:22px}
  .about-v223-dot.is-active{width:44px}
}
@media(prefers-reduced-motion:reduce){
  .about-v223-slide,.about-v223-slide img,.about-v223-dot{transition:none!important;transform:none!important}
}



/* Products v20.26: honey image swap + MAD pricing polish */
.prod-v226-media-swap{position:relative}
.prod-v226-media-swap .prod-v226-img{
  position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block;
  transition:opacity .45s ease, transform .7s cubic-bezier(.16,1,.3,1);
}
.prod-v226-media-swap .prod-v226-img-main{position:relative; opacity:1; z-index:1;}
.prod-v226-media-swap .prod-v226-img-hover{opacity:0; z-index:2;}
@media (hover:hover) and (pointer:fine){
  .prod-v226-honey:hover .prod-v226-img-main{opacity:0;}
  .prod-v226-honey:hover .prod-v226-img-hover{opacity:1;}
}


/* =========================================================
   HOME V20.27 — 3-image hero + immersive 3D video carousel
   ========================================================= */

/* Hero: only the new three-image slider, no centred logo inside it */
.home-v227-slider{
  min-height:92svh!important;
}
.home-v227-slider [class*="hero-logo"],
.home-v227-slider [class*="slider-logo"],
.home-v227-slider .chami-hero-logo{
  display:none!important;
}
.home-v227-slider .home-v214-media img{
  object-position:center center;
}
.home-v227-slider .home-v214-wash{
  background:
    linear-gradient(90deg,rgba(34,45,25,.82) 0%,rgba(44,57,31,.58) 36%,rgba(27,35,20,.18) 72%,rgba(18,22,13,.05) 100%),
    linear-gradient(180deg,rgba(10,14,8,.03) 0%,rgba(10,14,8,.08) 55%,rgba(19,25,14,.50) 100%);
}
.home-v227-slider .home-v214-copy h1{
  color:#fff!important;
  max-width:10.5ch;
}
.home-v227-slider .home-v214-copy p{
  max-width:700px;
}

/* Video experience section */
.home-v227-videos-section{
  overflow:clip;
  background:
    radial-gradient(circle at 50% 28%,rgba(131,149,87,.10),transparent 34%),
    linear-gradient(180deg,#f7f5ef 0%,#f0f2e9 100%);
}
.home-v227-videos-section > .e-con-inner,
.home-v227-videos-section > .elementor-container{
  position:relative;
}
.home-v227-videos-section .elementor-heading-title{
  color:#26361f!important;
  font-size:clamp(38px,5vw,72px)!important;
  line-height:1.02!important;
  max-width:12ch;
}
.home-v227-videos-intro{
  max-width:760px;
  color:#5e6657;
}
.home-v227-video-experience{
  --card-w:min(52vw,620px);
  position:relative;
  width:100%;
  margin-top:24px;
  padding:10px 0 14px;
}
.home-v227-video-stage{
  position:relative;
  min-height:clamp(470px,58vw,760px);
  width:100%;
  perspective:1500px;
  perspective-origin:50% 48%;
  touch-action:pan-y;
  user-select:none;
  outline:none;
  overflow:visible;
}
.home-v227-video-ring{
  position:absolute;
  inset:0;
  transform-style:preserve-3d;
}
.home-v227-video-card{
  position:absolute;
  left:50%;
  top:48%;
  width:var(--card-w);
  aspect-ratio:16/10;
  transform:
    translate(-50%,-50%)
    translateX(calc(var(--offset) * clamp(150px,18vw,300px)))
    translateZ(calc(var(--depth) * -145px))
    rotateY(calc(var(--offset) * -15deg))
    scale(calc(1 - var(--depth) * .055));
  transform-origin:center;
  opacity:1;
  z-index:calc(30 - var(--depth));
  transition:
    transform .72s cubic-bezier(.22,1,.36,1),
    opacity .48s ease,
    filter .48s ease;
  filter:saturate(calc(1 - var(--depth) * .08)) brightness(calc(1 - var(--depth) * .05));
  pointer-events:auto;
  will-change:transform;
}
.home-v227-video-card[data-distance="2"]{opacity:.72}
.home-v227-video-card[data-distance="3"]{opacity:.42}
.home-v227-video-card[data-distance="4"]{opacity:.18}
.home-v227-video-card[data-distance="5"],
.home-v227-video-card[data-distance="6"],
.home-v227-video-card[data-distance="7"],
.home-v227-video-card[data-distance="8"],
.home-v227-video-card[data-distance="9"],
.home-v227-video-card[data-distance="10"],
.home-v227-video-card[data-distance="11"]{
  opacity:0;
  pointer-events:none;
}
.home-v227-video-card.is-active{
  filter:none;
  z-index:40;
}
.home-v227-video-shell{
  position:absolute;
  inset:0;
  overflow:hidden;
  border-radius:30px;
  background:#1f2b19;
  border:1px solid rgba(255,255,255,.34);
  box-shadow:
    0 34px 80px rgba(40,51,29,.22),
    0 12px 30px rgba(40,51,29,.12),
    inset 0 1px 0 rgba(255,255,255,.22);
  transform-style:preserve-3d;
}
.home-v227-video-shell::before{
  content:"";
  position:absolute;
  inset:-1px;
  z-index:5;
  border-radius:inherit;
  padding:1.5px;
  pointer-events:none;
  background:linear-gradient(115deg,rgba(255,255,255,.60),rgba(131,149,87,.72),rgba(195,97,60,.54),rgba(255,255,255,.18));
  background-size:220% 100%;
  animation:homeV227VideoEdge 5.8s linear infinite;
  -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
}
.home-v227-video-shell::after{
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:36%;
  z-index:2;
  pointer-events:none;
  background:linear-gradient(180deg,transparent,rgba(19,27,15,.40));
}
.home-v227-video-card video{
  width:100%;
  height:100%;
  display:block;
  object-fit:contain;
  background:#1d2818;
}
.home-v227-video-card:not(.is-active) video{
  pointer-events:none;
}
.home-v227-video-play{
  position:absolute;
  z-index:7;
  left:50%;
  top:50%;
  width:68px;
  height:68px;
  margin:-34px 0 0 -34px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.44);
  display:grid;
  place-items:center;
  color:#fff;
  background:rgba(74,94,51,.66);
  box-shadow:
    0 15px 36px rgba(18,25,14,.28),
    inset 0 1px 0 rgba(255,255,255,.30),
    0 0 0 8px rgba(255,255,255,.07);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  cursor:pointer;
  transition:transform .28s ease,background .28s ease,opacity .28s ease;
}
.home-v227-video-play span{
  transform:translateX(2px);
  font-size:22px;
}
.home-v227-video-card:not(.is-active) .home-v227-video-play{
  width:54px;
  height:54px;
  margin:-27px 0 0 -27px;
  opacity:.78;
}
.home-v227-video-card.is-playing .home-v227-video-play{
  opacity:0;
  pointer-events:none;
}
.home-v227-video-play:hover,
.home-v227-video-play:focus-visible{
  transform:scale(1.08);
  background:rgba(91,117,57,.86);
  outline:none;
}
.home-v227-video-number{
  position:absolute;
  z-index:7;
  left:16px;
  top:16px;
  min-width:42px;
  height:30px;
  padding:0 10px;
  display:grid;
  place-items:center;
  border-radius:999px;
  color:#fff;
  background:rgba(28,38,21,.52);
  border:1px solid rgba(255,255,255,.20);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:11px;
  font-weight:900;
  letter-spacing:.12em;
}
.home-v227-video-nav{
  position:absolute;
  z-index:60;
  top:48%;
  width:52px;
  height:52px;
  margin-top:-26px;
  border-radius:50%;
  border:1px solid rgba(85,105,62,.24);
  display:grid;
  place-items:center;
  color:#536b3b;
  background:rgba(255,255,255,.80);
  box-shadow:0 14px 34px rgba(45,58,34,.14),inset 0 1px 0 rgba(255,255,255,.96);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  cursor:pointer;
  transition:transform .25s ease,background .25s ease;
}
.home-v227-video-prev{left:clamp(2px,2vw,26px)}
.home-v227-video-next{right:clamp(2px,2vw,26px)}
.home-v227-video-nav:hover,
.home-v227-video-nav:focus-visible{
  transform:scale(1.08);
  background:#fff;
  outline:none;
}
.home-v227-video-caption{
  position:relative;
  z-index:70;
  max-width:780px;
  margin:-16px auto 0;
  padding:22px 26px 24px;
  text-align:center;
  border-radius:26px;
  background:rgba(255,255,255,.82);
  border:1px solid rgba(131,149,87,.16);
  box-shadow:0 24px 52px rgba(46,60,33,.10),inset 0 1px 0 rgba(255,255,255,.95);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}
.home-v227-video-kicker{
  display:block;
  margin-bottom:8px;
  color:#78964e;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:10px;
  font-weight:900;
  letter-spacing:.18em;
}
.home-v227-video-caption h3{
  margin:0 0 8px;
  color:#2d3d24;
  font-size:clamp(26px,3vw,42px);
  line-height:1.05;
  text-wrap:balance;
}
.home-v227-video-caption p{
  margin:0 auto;
  max-width:660px;
  color:#60685a;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:15px;
  line-height:1.68;
}
.home-v227-video-progress{
  margin-top:13px;
  display:inline-flex;
  align-items:baseline;
  gap:5px;
  color:#819065;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
.home-v227-video-progress strong{
  color:#536b3b;
  font-size:22px;
}
.home-v227-video-progress span{
  font-size:12px;
  font-weight:800;
}
@keyframes homeV227VideoEdge{
  to{background-position:220% 0}
}

/* Drag hint / interaction polish */
.home-v227-video-stage.is-dragging .home-v227-video-card{
  transition-duration:.18s;
}
.home-v227-video-stage:focus-visible{
  outline:2px solid rgba(120,150,78,.46);
  outline-offset:8px;
  border-radius:30px;
}

@media(max-width:1024px){
  .home-v227-video-experience{--card-w:min(66vw,580px)}
  .home-v227-video-stage{min-height:610px}
  .home-v227-video-card{
    transform:
      translate(-50%,-50%)
      translateX(calc(var(--offset) * clamp(120px,20vw,220px)))
      translateZ(calc(var(--depth) * -125px))
      rotateY(calc(var(--offset) * -13deg))
      scale(calc(1 - var(--depth) * .06));
  }
}

@media(max-width:767px){
  .home-v227-slider{
    min-height:100svh!important;
  }
  .home-v227-video-experience{--card-w:min(78vw,430px)}
  .home-v227-video-stage{
    min-height:520px;
    perspective:1100px;
  }
  .home-v227-video-card{
    top:46%;
    aspect-ratio:10/13;
    transform:
      translate(-50%,-50%)
      translateX(calc(var(--offset) * 72px))
      translateZ(calc(var(--depth) * -110px))
      rotateY(calc(var(--offset) * -18deg))
      scale(calc(1 - var(--depth) * .075));
  }
  .home-v227-video-card[data-distance="3"],
  .home-v227-video-card[data-distance="4"]{
    opacity:0;
    pointer-events:none;
  }
  .home-v227-video-shell{
    border-radius:24px;
  }
  .home-v227-video-nav{
    top:46%;
    width:44px;
    height:44px;
    margin-top:-22px;
  }
  .home-v227-video-prev{left:2px}
  .home-v227-video-next{right:2px}
  .home-v227-video-play{
    width:60px;height:60px;margin:-30px 0 0 -30px;
  }
  .home-v227-video-caption{
    margin:-12px 8px 0;
    padding:20px 18px 22px;
    border-radius:22px;
  }
  .home-v227-video-caption h3{
    font-size:clamp(25px,8vw,34px);
  }
  .home-v227-video-caption p{
    font-size:14px;
  }
}

@media(max-width:390px){
  .home-v227-video-experience{--card-w:80vw}
  .home-v227-video-stage{min-height:490px}
  .home-v227-video-card{
    transform:
      translate(-50%,-50%)
      translateX(calc(var(--offset) * 62px))
      translateZ(calc(var(--depth) * -105px))
      rotateY(calc(var(--offset) * -18deg))
      scale(calc(1 - var(--depth) * .08));
  }
}

@media(prefers-reduced-motion:reduce){
  .home-v227-video-card,
  .home-v227-video-shell::before,
  .home-v227-video-play{
    transition:none!important;
    animation:none!important;
  }
}


/* =========================================================
   HOME V20.30 — cinematic editorial homepage
   Scoped to homepage-only classes.
   ========================================================= */
.home-v230-section{
  position:relative;
  overflow:clip;
}
.home-v230-section .elementor-heading-title{
  color:#26361f;
  font-size:clamp(38px,5.3vw,74px)!important;
  line-height:1.02!important;
  letter-spacing:-.03em;
  text-wrap:balance;
}
.home-v230-section-intro{
  max-width:780px;
  color:#66705f;
  font-size:16px;
  line-height:1.75;
}
.home-v230-eyebrow{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:6px 11px;
  border-radius:999px;
  color:#6f854d;
  background:rgba(126,148,87,.10);
  border:1px solid rgba(126,148,87,.18);
  font:900 10px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  letter-spacing:.17em;
}

/* Hero */
.home-v230-slider{
  min-height:94svh!important;
  background:#25321e;
}
.home-v230-slider .home-v214-media img{
  object-fit:cover;
  object-position:center center;
  transform:scale(1.055);
  transition:transform 7s cubic-bezier(.22,.61,.36,1);
}
.home-v230-slider .home-slide.is-active .home-v214-media img{
  transform:scale(1.01);
}
.home-v230-slider .home-v214-wash{
  background:
    linear-gradient(90deg,rgba(25,35,19,.84) 0%,rgba(37,50,27,.60) 34%,rgba(26,34,20,.21) 68%,rgba(13,17,10,.05) 100%),
    linear-gradient(180deg,rgba(11,15,9,.05) 0%,rgba(11,15,9,.08) 50%,rgba(18,24,13,.50) 100%)!important;
}
.home-v230-slider .home-v214-copy{
  max-width:min(900px,78vw);
}
.home-v230-slider .home-v214-copy h1{
  max-width:11ch;
  color:#fff!important;
  font-size:clamp(52px,7.7vw,118px)!important;
  line-height:.92!important;
  letter-spacing:-.045em;
  text-shadow:0 14px 40px rgba(0,0,0,.30);
}
.home-v230-slider .home-v214-copy p{
  max-width:700px;
  color:rgba(255,255,255,.92)!important;
  font-size:clamp(16px,1.45vw,20px)!important;
  line-height:1.68!important;
}
.home-v230-slider .home-slide-kicker{
  color:#fff!important;
  border-color:rgba(255,255,255,.28)!important;
  background:rgba(255,255,255,.10)!important;
}
.home-v230-slider .home-slider-thumb{
  overflow:hidden;
}
.home-v230-slider .home-slider-thumb img{
  transition:transform .55s ease;
}
.home-v230-slider .home-slider-thumb:hover img{
  transform:scale(1.07);
}

/* Overview */
.home-v230-overview-section{
  background:
    radial-gradient(circle at 7% 0%,rgba(131,149,87,.10),transparent 28%),
    #f7f6f1;
}
.home-v230-overview{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:clamp(12px,1.5vw,22px);
  margin-top:28px;
}
.home-v230-overview-card{
  position:relative;
  min-height:420px;
  overflow:hidden;
  border-radius:28px;
  box-shadow:0 24px 60px rgba(45,57,34,.12);
  transform:translateZ(0);
  transition:transform .5s cubic-bezier(.22,1,.36,1),box-shadow .5s ease;
}
.home-v230-overview-card::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  border:1px solid rgba(255,255,255,.25);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16);
}
.home-v230-overview-card img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .75s cubic-bezier(.22,1,.36,1),filter .5s ease;
}
.home-v230-overview-wash{
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(26,34,20,.06) 25%,rgba(26,34,20,.80) 100%);
}
.home-v230-overview-copy{
  position:absolute;
  z-index:2;
  left:18px;
  right:18px;
  bottom:18px;
  display:grid;
  gap:9px;
  color:#fff;
}
.home-v230-overview-copy small{
  font:900 10px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  letter-spacing:.17em;
  text-transform:uppercase;
  opacity:.82;
}
.home-v230-overview-copy strong{
  max-width:20ch;
  font-size:clamp(20px,2vw,28px);
  line-height:1.08;
  color:#fff;
  text-wrap:balance;
}
.home-v230-overview-copy em{
  width:40px;
  height:40px;
  margin-top:5px;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:#fff;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.25);
  font-style:normal;
  backdrop-filter:blur(9px);
  -webkit-backdrop-filter:blur(9px);
}
@media(hover:hover){
  .home-v230-overview-card:hover{
    transform:translateY(-7px);
    box-shadow:0 32px 74px rgba(45,57,34,.16);
  }
  .home-v230-overview-card:hover img{
    transform:scale(1.055);
    filter:saturate(1.05);
  }
}

/* Estate story */
.home-v230-story-section{
  background:#26351f;
}
.home-v230-story{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);
  gap:clamp(40px,6vw,90px);
  align-items:center;
}
.home-v230-story-media{
  position:relative;
  min-height:660px;
}
.home-v230-story-main{
  position:absolute;
  inset:0 12% 8% 0;
  width:88%;
  height:92%;
  object-fit:cover;
  border-radius:34px;
  box-shadow:0 34px 80px rgba(0,0,0,.24);
}
.home-v230-story-float{
  position:absolute;
  z-index:2;
  right:0;
  bottom:0;
  width:42%;
  aspect-ratio:4/5;
  object-fit:cover;
  border-radius:24px;
  border:8px solid #26351f;
  box-shadow:0 20px 48px rgba(0,0,0,.28);
  transform:rotate(2deg);
}
.home-v230-story-copy{
  color:#fff;
}
.home-v230-story-copy .home-v230-eyebrow{
  color:#c7d7a2;
  background:rgba(255,255,255,.06);
  border-color:rgba(255,255,255,.10);
}
.home-v230-story-copy h2{
  margin:18px 0 20px;
  color:#fff;
  font-size:clamp(42px,5vw,72px);
  line-height:1;
  letter-spacing:-.035em;
  text-wrap:balance;
}
.home-v230-story-copy p{
  color:rgba(255,255,255,.80);
  font:400 16px/1.8 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
.home-v230-facts{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
  margin:28px 0 24px;
}
.home-v230-facts span{
  padding:16px 14px;
  border-radius:18px;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.09);
}
.home-v230-facts strong{
  display:block;
  color:#fff;
  font-size:24px;
  line-height:1;
}
.home-v230-facts small{
  display:block;
  margin-top:7px;
  color:rgba(255,255,255,.65);
  font:700 11px/1.2 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
.home-v230-text-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:#fff!important;
  font-weight:800;
  text-decoration:none!important;
}
.home-v230-text-link span{
  transition:transform .25s ease;
}
.home-v230-text-link:hover span{
  transform:translate(3px,-3px);
}

/* Retreat */
.home-v230-retreat-section{
  background:
    linear-gradient(180deg,#f7f5ef 0%,#f1f4e9 100%);
}
.home-v230-retreat-bridge{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:32px;
  align-items:end;
  padding:clamp(28px,4vw,54px);
  margin-bottom:28px;
  border-radius:32px;
  background:#fff;
  border:1px solid rgba(131,149,87,.14);
  box-shadow:0 24px 60px rgba(55,68,42,.08);
}
.home-v230-retreat-bridge h2{
  max-width:12ch;
  margin:16px 0 16px;
  color:#2b3a23;
  font-size:clamp(38px,4.5vw,66px);
  line-height:1;
  letter-spacing:-.035em;
  text-wrap:balance;
}
.home-v230-retreat-bridge p{
  max-width:780px;
  margin:0;
  color:#66705f;
  font:400 16px/1.75 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
.home-v230-retreat-actions{
  display:flex;
  flex-direction:column;
  gap:10px;
  min-width:210px;
}
.home-v230-primary,
.home-v230-secondary{
  display:flex;
  min-height:52px;
  align-items:center;
  justify-content:center;
  padding:12px 18px;
  border-radius:999px;
  text-decoration:none!important;
  font:850 13px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  transition:transform .25s ease,box-shadow .25s ease,background .25s ease;
}
.home-v230-primary{
  color:#fff!important;
  background:#5e7742;
  box-shadow:0 12px 24px rgba(80,101,55,.18);
}
.home-v230-secondary{
  color:#506238!important;
  border:1px solid rgba(94,119,66,.22);
  background:#f6f8f1;
}
.home-v230-primary:hover,
.home-v230-secondary:hover{
  transform:translateY(-2px);
}

/* Stays */
.home-v230-stays-section{
  background:#fff;
}
.home-v230-stays-section .chami-stay-grid{
  margin-top:24px;
}
.home-v230-stays-section .chami-stay-card{
  border-radius:28px;
  overflow:hidden;
  box-shadow:0 24px 60px rgba(43,55,32,.10);
}
.home-v230-stays-section .chami-stay-card-media{
  min-height:320px;
}
.home-v230-stays-section .chami-stay-card-media img{
  transition:transform .7s cubic-bezier(.22,1,.36,1);
}
.home-v230-stays-section .chami-stay-card:hover .chami-stay-card-media img{
  transform:scale(1.045);
}

/* Table + Products */
.home-v230-dual-section{
  background:#25321e;
}
.home-v230-dual{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:18px;
}
.home-v230-dual-card{
  position:relative;
  min-height:620px;
  overflow:hidden;
  border-radius:32px;
  box-shadow:0 30px 70px rgba(0,0,0,.18);
  transform:translateZ(0);
}
.home-v230-dual-card img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .8s cubic-bezier(.22,1,.36,1);
}
.home-v230-dual-wash{
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(20,26,15,.03) 22%,rgba(21,29,16,.82) 100%);
}
.home-v230-dual-copy{
  position:absolute;
  z-index:2;
  left:clamp(22px,3vw,40px);
  right:clamp(22px,3vw,40px);
  bottom:clamp(22px,3vw,38px);
  color:#fff;
}
.home-v230-dual-copy small{
  display:block;
  margin-bottom:12px;
  color:rgba(255,255,255,.72);
  font:900 10px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  letter-spacing:.16em;
}
.home-v230-dual-copy strong{
  display:block;
  max-width:12ch;
  color:#fff;
  font-size:clamp(34px,4vw,58px);
  line-height:1;
  text-wrap:balance;
}
.home-v230-dual-copy em{
  display:inline-flex;
  margin-top:18px;
  color:#fff;
  font-style:normal;
  font-weight:850;
}
.home-v230-dual-card:hover img{
  transform:scale(1.045);
}

/* Gallery */
.home-v230-gallery-section{
  background:#f6f4ee;
}
.home-v230-gallery-strip{
  position:relative;
  min-height:720px;
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  gap:16px;
  align-items:center;
  text-decoration:none!important;
}
.home-v230-gallery-copy{
  position:absolute;
  z-index:5;
  left:50%;
  top:50%;
  width:min(540px,68vw);
  padding:28px 30px;
  transform:translate(-50%,-50%);
  border-radius:28px;
  text-align:center;
  background:rgba(32,43,24,.74);
  border:1px solid rgba(255,255,255,.18);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  box-shadow:0 26px 60px rgba(36,48,27,.18);
}
.home-v230-gallery-copy small{
  display:block;
  color:#c7d7a2;
  font:900 10px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  letter-spacing:.18em;
}
.home-v230-gallery-copy strong{
  display:block;
  max-width:12ch;
  margin:14px auto 0;
  color:#fff;
  font-size:clamp(38px,4.7vw,68px);
  line-height:1;
  text-wrap:balance;
}
.home-v230-gallery-copy em{
  display:inline-flex;
  margin-top:16px;
  color:#fff;
  font-style:normal;
  font-weight:850;
}
.home-v230-gallery-frame{
  position:relative;
  overflow:hidden;
  border-radius:30px;
  box-shadow:0 26px 60px rgba(46,57,35,.12);
}
.home-v230-gallery-frame img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .75s cubic-bezier(.22,1,.36,1);
}
.home-v230-gallery-frame.frame-1{height:520px;transform:translateY(44px) rotate(-1.8deg)}
.home-v230-gallery-frame.frame-2{height:680px;transform:rotate(.8deg)}
.home-v230-gallery-frame.frame-3{height:540px;transform:translateY(-36px) rotate(1.8deg)}
.home-v230-gallery-strip:hover img{
  transform:scale(1.04);
}

/* Booking */
.home-v230-booking-section{
  background:
    radial-gradient(circle at 8% 8%,rgba(131,149,87,.11),transparent 28%),
    linear-gradient(180deg,#f7f6f1 0%,#eef2e6 100%);
}
.home-v230-booking-section .cder-booking{
  margin-top:24px;
  border-radius:30px;
  border:1px solid rgba(131,149,87,.14);
  background:rgba(255,255,255,.90);
  box-shadow:0 28px 70px rgba(48,61,35,.10),inset 0 1px 0 rgba(255,255,255,.94);
}

/* Cinematic reveal */
[data-home-v230-reveal]{
  opacity:0;
  transform:translateY(34px);
  transition:opacity .8s cubic-bezier(.22,1,.36,1),transform .8s cubic-bezier(.22,1,.36,1);
}
[data-home-v230-reveal].is-visible{
  opacity:1;
  transform:none;
}

@media(max-width:1100px){
  .home-v230-overview{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .home-v230-story{
    grid-template-columns:1fr;
  }
  .home-v230-story-media{
    min-height:590px;
  }
  .home-v230-retreat-bridge{
    grid-template-columns:1fr;
  }
  .home-v230-retreat-actions{
    flex-direction:row;
    min-width:0;
  }
}

@media(max-width:767px){
  .home-v230-slider{
    min-height:100svh!important;
  }
  .home-v230-slider .home-v214-copy{
    max-width:none;
  }
  .home-v230-slider .home-v214-copy h1{
    font-size:clamp(42px,12vw,62px)!important;
    max-width:10ch;
  }
  .home-v230-overview{
    grid-template-columns:1fr;
  }
  .home-v230-overview-card{
    min-height:340px;
  }
  .home-v230-story-media{
    min-height:470px;
  }
  .home-v230-story-main{
    inset:0 8% 10% 0;
    width:92%;
    height:90%;
    border-radius:26px;
  }
  .home-v230-story-float{
    width:46%;
    border-width:6px;
    border-radius:20px;
  }
  .home-v230-facts{
    grid-template-columns:1fr;
  }
  .home-v230-retreat-bridge{
    padding:24px 20px;
    border-radius:26px;
  }
  .home-v230-retreat-actions{
    flex-direction:column;
  }
  .home-v230-dual{
    grid-template-columns:1fr;
  }
  .home-v230-dual-card{
    min-height:470px;
    border-radius:26px;
  }
  .home-v230-gallery-strip{
    min-height:760px;
    grid-template-columns:1fr 1fr;
    gap:12px;
  }
  .home-v230-gallery-frame.frame-1{
    height:390px;
    transform:translateY(34px) rotate(-1.5deg);
  }
  .home-v230-gallery-frame.frame-2{
    height:500px;
    transform:translateY(-30px) rotate(1deg);
  }
  .home-v230-gallery-frame.frame-3{
    grid-column:1 / -1;
    width:72%;
    height:300px;
    justify-self:center;
    transform:translateY(-50px) rotate(-.8deg);
  }
  .home-v230-gallery-copy{
    width:calc(100% - 36px);
    padding:22px 18px;
  }
  .home-v230-gallery-copy strong{
    font-size:clamp(34px,10vw,50px);
  }
}

@media(prefers-reduced-motion:reduce){
  [data-home-v230-reveal]{
    opacity:1!important;
    transform:none!important;
    transition:none!important;
  }
  .home-v230-slider .home-v214-media img,
  .home-v230-overview-card,
  .home-v230-overview-card img,
  .home-v230-dual-card img,
  .home-v230-gallery-frame img{
    transition:none!important;
    transform:none!important;
  }
}


/* =========================================================
   HOME V20.31 — responsive clarity, icon polish, stays motion,
   illustrative testimonials and FAQ. Home-only.
   ========================================================= */

/* --- Hero clarity on every viewport --- */
.home-v230-slider{
  min-height:100svh!important;
  height:auto!important;
}
.home-v230-slider .home-v214-copy{
  left:clamp(20px,5.5vw,92px)!important;
  right:auto!important;
  bottom:clamp(132px,15vh,180px)!important;
  width:min(820px,66vw)!important;
  max-height:calc(100svh - 190px);
}
.home-v230-slider .home-v214-copy h1{
  max-width:9.5ch!important;
  margin:14px 0 14px!important;
  font-size:clamp(46px,6.6vw,96px)!important;
  line-height:.95!important;
}
.home-v230-slider .home-v214-copy p{
  max-width:650px!important;
  font-size:clamp(15px,1.25vw,19px)!important;
  line-height:1.6!important;
}
.home-v230-slider .home-v214-actions{
  margin-top:20px!important;
}
.home-v230-slider .home-v214-btn{
  min-height:50px!important;
}
.home-v230-slider .home-v214-wash{
  background:
    linear-gradient(90deg,rgba(28,38,21,.88) 0%,rgba(39,52,29,.64) 34%,rgba(34,45,25,.20) 69%,rgba(18,23,14,.05) 100%),
    linear-gradient(180deg,rgba(18,23,14,.02) 0%,rgba(18,23,14,.08) 52%,rgba(22,29,16,.58) 100%)!important;
}
.home-v230-slider .home-v214-slide:nth-child(1) .home-v214-media img{object-position:52% center}
.home-v230-slider .home-v214-slide:nth-child(2) .home-v214-media img{object-position:50% center}
.home-v230-slider .home-v214-slide:nth-child(3) .home-v214-media img{object-position:54% center}
.home-v230-slider .home-v214-slide:nth-child(4) .home-v214-media img{object-position:50% center}

[dir="rtl"] .home-v230-slider .home-v214-copy{
  left:auto!important;
  right:clamp(20px,5.5vw,92px)!important;
  text-align:right!important;
}

/* Supplied clear WhatsApp icon */
.home-v230-slider .home-v214-wa .home-v214-btn-icon img{
  width:22px;
  height:22px;
  display:block;
  object-fit:contain;
  filter:none;
}
.home-v231-whatsapp-float{
  position:fixed;
  z-index:9996;
  right:18px;
  bottom:92px;
  width:58px;
  height:58px;
  display:grid;
  place-items:center;
  border-radius:50%;
  text-decoration:none!important;
  background:linear-gradient(145deg,#78964E,#5A7539);
  border:1px solid rgba(255,255,255,.35);
  box-shadow:
    0 18px 42px rgba(45,67,31,.28),
    inset 0 1px 0 rgba(255,255,255,.28),
    0 0 0 8px rgba(120,150,78,.08);
  animation:homeV231WaPulse 3.2s ease-in-out infinite;
}
.home-v231-whatsapp-float img{
  width:31px;
  height:31px;
  object-fit:contain;
}
.home-v231-whatsapp-float::after{
  content:"";
  position:absolute;
  inset:-5px;
  border-radius:inherit;
  border:1px solid rgba(151,183,98,.42);
  animation:homeV231WaRing 3.2s ease-out infinite;
}
@keyframes homeV231WaPulse{
  0%,100%{transform:translateY(0) scale(1)}
  50%{transform:translateY(-3px) scale(1.035)}
}
@keyframes homeV231WaRing{
  0%,35%{opacity:.7;transform:scale(.9)}
  70%,100%{opacity:0;transform:scale(1.22)}
}

/* Supplied clear music icon on homepage only */
body.home-v231-active .cder-v212-audio{
  min-width:154px!important;
  border-color:rgba(255,255,255,.18)!important;
  background:linear-gradient(145deg,rgba(55,72,40,.94),rgba(38,52,29,.96))!important;
  box-shadow:0 18px 40px rgba(35,47,26,.22),inset 0 1px 0 rgba(255,255,255,.18)!important;
}
body.home-v231-active .cder-v213-music-mark{
  background:rgba(255,255,255,.11)!important;
}
body.home-v231-active .cder-v213-music-mark img{
  width:23px;
  height:23px;
  display:block;
  object-fit:contain;
}
body.home-v231-active .cder-v212-audio.is-playing{
  box-shadow:
    0 18px 40px rgba(35,47,26,.22),
    inset 0 1px 0 rgba(255,255,255,.18),
    0 0 0 5px rgba(195,97,60,.10)!important;
}

/* --- Retreat days with icons --- */
.home-v231-formats{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  margin-top:24px;
  perspective:1200px;
}
.home-v231-format{
  position:relative;
  min-height:270px;
  padding:24px;
  border-radius:26px;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(131,149,87,.16);
  box-shadow:0 24px 54px rgba(47,61,35,.08),inset 0 1px 0 rgba(255,255,255,.96);
  transform:translateY(16px) rotateX(2deg);
  opacity:0;
  transition:transform .7s cubic-bezier(.22,1,.36,1) var(--delay),opacity .7s ease var(--delay),box-shadow .35s ease;
}
.home-v231-formats.is-visible .home-v231-format,
.home-v231-format.is-visible{
  opacity:1;
  transform:none;
}
.home-v231-format-icon{
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border-radius:16px;
  color:#6E844C;
  background:rgba(120,150,78,.10);
  border:1px solid rgba(120,150,78,.16);
}
.home-v231-format-icon svg{
  width:29px;
  height:29px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.home-v231-format-day{
  display:flex;
  align-items:baseline;
  gap:8px;
  margin:20px 0 12px;
}
.home-v231-format-day strong{
  color:#C3613C;
  font-size:42px;
  line-height:1;
}
.home-v231-format-day span{
  color:#526045;
  font-size:14px;
  font-weight:800;
}
.home-v231-format p{
  margin:0;
  color:#66705f;
  line-height:1.65;
}
@media(hover:hover){
  .home-v231-format:hover{
    transform:translateY(-5px) rotateX(1deg) rotateY(-1deg);
    box-shadow:0 30px 66px rgba(47,61,35,.13);
  }
}

/* --- Stay cards: correct image pairs + animated 3D swap --- */
.home-v231-stays{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  margin-top:28px;
  perspective:1600px;
}
.home-v231-stay{
  position:relative;
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border-radius:30px;
  text-decoration:none!important;
  background:#fff;
  border:1px solid rgba(131,149,87,.14);
  box-shadow:0 26px 60px rgba(42,55,31,.11);
  transform-style:preserve-3d;
  opacity:0;
  transform:translateY(24px) rotateX(3deg);
  transition:opacity .75s ease var(--delay),transform .75s cubic-bezier(.22,1,.36,1) var(--delay),box-shadow .35s ease;
}
.home-v231-stays.is-visible .home-v231-stay{
  opacity:1;
  transform:none;
}
.home-v231-stay-media{
  position:relative;
  display:block;
  aspect-ratio:4/3;
  overflow:hidden;
  background:#29361f;
}
.home-v231-stay-img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:opacity .75s cubic-bezier(.22,1,.36,1),transform 1s cubic-bezier(.22,1,.36,1);
}
.home-v231-stay .img-a{
  opacity:1;
  animation:homeV231StayA 10s ease-in-out infinite;
}
.home-v231-stay .img-b{
  opacity:0;
  transform:scale(1.055);
  animation:homeV231StayB 10s ease-in-out infinite;
}
.home-v231-stay:nth-child(2) .img-a,
.home-v231-stay:nth-child(2) .img-b{animation-delay:-3.2s}
.home-v231-stay:nth-child(3) .img-a,
.home-v231-stay:nth-child(3) .img-b{animation-delay:-6.4s}
@keyframes homeV231StayA{
  0%,42%,100%{opacity:1;transform:scale(1.02)}
  55%,88%{opacity:0;transform:scale(1.07)}
}
@keyframes homeV231StayB{
  0%,42%,100%{opacity:0;transform:scale(1.07)}
  55%,88%{opacity:1;transform:scale(1.02)}
}
.home-v231-stay-icon{
  position:absolute;
  z-index:4;
  top:16px;
  right:16px;
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  color:#fff;
  border-radius:14px;
  background:rgba(37,50,29,.58);
  border:1px solid rgba(255,255,255,.25);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.home-v231-stay-icon svg{
  width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round
}
.home-v231-stay-body{
  display:block;
  padding:22px 22px 24px;
}
.home-v231-stay-body small{
  display:block;
  color:#7B8F5A;
  font:900 10px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  letter-spacing:.16em;
}
.home-v231-stay-body strong{
  display:block;
  margin:10px 0 12px;
  color:#2D3C24;
  font-size:clamp(28px,2.4vw,38px);
  line-height:1;
}
.home-v231-stay-body p{
  margin:0;
  color:#66705f;
  line-height:1.65;
  font-size:14px;
}
.home-v231-stay-body em{
  display:block;
  margin-top:15px;
  color:#C3613C;
  font-style:normal;
  font-weight:900;
}
@media(hover:hover){
  .home-v231-stay:hover{
    transform:translateY(-7px) rotateX(1deg) rotateY(-1deg);
    box-shadow:0 34px 74px rgba(42,55,31,.16);
  }
  .home-v231-stay:hover .img-a{opacity:0;animation:none;transform:scale(1.07)}
  .home-v231-stay:hover .img-b{opacity:1;animation:none;transform:scale(1.02)}
}

/* --- Illustrative testimonials --- */
.home-v231-testimonials-section{
  background:#26351f;
}
.home-v231-testimonials{
  color:#fff;
}
.home-v231-testimonials-head{
  max-width:820px;
  margin-bottom:28px;
}
.home-v231-testimonials-head .home-v230-eyebrow{
  color:#c7d7a2;
  background:rgba(255,255,255,.07);
  border-color:rgba(255,255,255,.11);
}
.home-v231-testimonials-head h2{
  margin:16px 0 12px;
  color:#fff;
  font-size:clamp(40px,5vw,70px);
  line-height:1;
  text-wrap:balance;
}
.home-v231-testimonials-head p{
  margin:0;
  max-width:760px;
  color:rgba(255,255,255,.68);
  font:400 13px/1.6 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
.home-v231-testimonials-track{
  display:flex;
  gap:16px;
  overflow-x:auto;
  padding:10px 8vw 30px 2px;
  scroll-snap-type:x mandatory;
  scroll-padding-inline:2px;
  scrollbar-width:none;
  perspective:1200px;
}
.home-v231-testimonials-track::-webkit-scrollbar{display:none}
.home-v231-testimonial{
  flex:0 0 min(520px,74vw);
  min-height:300px;
  scroll-snap-align:center;
  padding:28px;
  border-radius:28px;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.10);
  box-shadow:0 24px 60px rgba(0,0,0,.14),inset 0 1px 0 rgba(255,255,255,.06);
  opacity:.56;
  transform:scale(.94) rotateY(3deg);
  transition:opacity .5s ease,transform .6s cubic-bezier(.22,1,.36,1),background .4s ease;
}
.home-v231-testimonial.is-active{
  opacity:1;
  transform:scale(1) rotateY(0);
  background:rgba(255,255,255,.105);
}
.home-v231-quote{
  display:block;
  color:#C3613C;
  font-family:Georgia,serif;
  font-size:72px;
  line-height:.65;
}
.home-v231-testimonial p{
  margin:18px 0 28px;
  color:#fff;
  font:500 clamp(17px,1.7vw,22px)/1.65 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
.home-v231-testimonial strong{
  color:#c7d7a2;
  font-size:14px;
  letter-spacing:.08em;
}
.home-v231-testimonial-controls{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:12px;
}
.home-v231-testimonial-controls button{
  width:46px;height:46px;border-radius:50%;display:grid;place-items:center;
  border:1px solid rgba(255,255,255,.15);color:#fff;background:rgba(255,255,255,.08);
  cursor:pointer;transition:transform .25s ease,background .25s ease
}
.home-v231-testimonial-controls button:hover{transform:translateY(-2px);background:rgba(255,255,255,.13)}
.home-v231-testimonial-controls span{
  color:rgba(255,255,255,.58);
  font:800 12px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif
}
.home-v231-testimonial-controls b{color:#fff;font-size:18px}

/* --- FAQ before form --- */
.home-v231-faq-section{
  background:#F6F4EE;
}
.home-v231-faq{
  display:grid;
  gap:12px;
  max-width:980px;
  margin-top:26px;
}
.home-v231-faq-item{
  border-radius:22px;
  background:#fff;
  border:1px solid rgba(131,149,87,.14);
  box-shadow:0 16px 38px rgba(47,61,35,.06);
  overflow:hidden;
}
.home-v231-faq-item summary{
  list-style:none;
  min-height:78px;
  display:grid;
  grid-template-columns:42px 1fr 34px;
  gap:14px;
  align-items:center;
  padding:16px 18px;
  cursor:pointer;
}
.home-v231-faq-item summary::-webkit-details-marker{display:none}
.home-v231-faq-icon{
  width:42px;height:42px;border-radius:14px;display:grid;place-items:center;
  color:#6E844C;background:rgba(120,150,78,.09);border:1px solid rgba(120,150,78,.15)
}
.home-v231-faq-icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.home-v231-faq-item summary strong{
  color:#2D3C24;
  font-size:17px;
}
.home-v231-faq-item summary em{
  width:34px;height:34px;border-radius:50%;display:grid;place-items:center;
  color:#C3613C;background:rgba(195,97,60,.08);font-style:normal;font-size:22px;
  transition:transform .35s ease
}
.home-v231-faq-item[open] summary em{transform:rotate(45deg)}
.home-v231-faq-item>div{
  display:grid;
  grid-template-rows:0fr;
  transition:grid-template-rows .45s cubic-bezier(.22,1,.36,1)
}
.home-v231-faq-item[open]>div{grid-template-rows:1fr}
.home-v231-faq-item>div>p{
  overflow:hidden;
  margin:0;
  padding:0 74px 0;
  color:#66705f;
  line-height:1.7;
}
.home-v231-faq-item[open]>div>p{padding-bottom:22px}

/* V20.31 reveal */
[data-home-v231-reveal]{
  opacity:0;
  transform:translateY(28px);
  transition:opacity .8s cubic-bezier(.22,1,.36,1),transform .8s cubic-bezier(.22,1,.36,1);
}
[data-home-v231-reveal].is-visible{
  opacity:1;
  transform:none;
}

/* Tablets */
@media(max-width:1024px){
  .home-v230-slider .home-v214-copy{
    width:min(690px,76vw)!important;
    bottom:132px!important;
  }
  .home-v230-slider .home-v214-copy h1{
    font-size:clamp(42px,7.8vw,72px)!important;
  }
  .home-v231-formats,
  .home-v231-stays{
    grid-template-columns:1fr;
  }
  .home-v231-stay{
    display:grid;
    grid-template-columns:minmax(280px,.9fr) 1.1fr;
  }
  .home-v231-stay-media{
    aspect-ratio:auto;
    min-height:330px;
  }
}

/* Phones */
@media(max-width:767px){
  .home-v230-slider{
    min-height:100svh!important;
  }
  .home-v230-slider .home-v214-copy,
  [dir="rtl"] .home-v230-slider .home-v214-copy{
    left:16px!important;
    right:16px!important;
    bottom:calc(78px + env(safe-area-inset-bottom,0px))!important;
    width:auto!important;
    max-height:calc(100svh - 120px);
    text-align:start!important;
  }
  .home-v230-slider .home-slide-kicker{
    min-height:28px!important;
    padding:6px 10px!important;
    font-size:9px!important;
    letter-spacing:.12em!important;
  }
  .home-v230-slider .home-v214-copy h1{
    max-width:11ch!important;
    margin:10px 0 10px!important;
    font-size:clamp(34px,10.6vw,50px)!important;
    line-height:.96!important;
  }
  .home-v230-slider .home-v214-copy p{
    max-width:38ch!important;
    font-size:13.5px!important;
    line-height:1.48!important;
  }
  .home-v230-slider .home-v214-actions{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
    margin-top:13px!important;
  }
  .home-v230-slider .home-v214-btn{
    min-height:44px!important;
    padding:9px 10px!important;
    font-size:11.5px!important;
  }
  .home-v230-slider .home-v214-btn-icon{
    width:22px!important;height:22px!important;flex-basis:22px!important
  }
  .home-v230-slider .home-slider-nav{
    bottom:calc(14px + env(safe-area-inset-bottom,0px))!important;
  }
  .home-v231-stay{
    display:flex;
  }
  .home-v231-stay-media{
    min-height:0;
    aspect-ratio:4/3;
  }
  .home-v231-testimonial{
    flex-basis:86vw;
    min-height:310px;
    padding:24px 20px;
  }
  .home-v231-faq-item summary{
    grid-template-columns:38px 1fr 30px;
    gap:10px;
    min-height:70px;
    padding:14px;
  }
  .home-v231-faq-icon{width:38px;height:38px;border-radius:12px}
  .home-v231-faq-item summary strong{font-size:15px}
  .home-v231-faq-item>div>p{padding:0 16px 0 62px;font-size:14px}
  .home-v231-faq-item[open]>div>p{padding-bottom:18px}
  .home-v231-whatsapp-float{
    width:54px;height:54px;right:14px;bottom:84px
  }
  .home-v231-whatsapp-float img{width:29px;height:29px}
  body.home-v231-active .cder-v212-audio{
    min-width:132px!important;
    height:52px!important;
    transform:scale(.94);
    transform-origin:left bottom;
  }
}

/* Very short phones / landscape */
@media(max-width:767px) and (max-height:740px){
  .home-v230-slider .home-v214-copy,
  [dir="rtl"] .home-v230-slider .home-v214-copy{
    bottom:66px!important;
  }
  .home-v230-slider .home-slide-kicker{display:none!important}
  .home-v230-slider .home-v214-copy h1{
    font-size:clamp(30px,8.8vw,40px)!important;
    margin:0 0 8px!important;
  }
  .home-v230-slider .home-v214-copy p{
    font-size:12.5px!important;
    line-height:1.4!important;
  }
  .home-v230-slider .home-v214-actions{
    margin-top:10px!important;
  }
  .home-v230-slider .home-v214-btn{
    min-height:40px!important;
  }
}
@media(orientation:landscape) and (max-height:560px){
  .home-v230-slider .home-v214-copy,
  [dir="rtl"] .home-v230-slider .home-v214-copy{
    left:24px!important;
    right:auto!important;
    width:62vw!important;
    bottom:52px!important;
  }
  [dir="rtl"] .home-v230-slider .home-v214-copy{
    left:auto!important;
    right:24px!important;
  }
  .home-v230-slider .home-v214-copy h1{
    font-size:clamp(28px,5vw,42px)!important;
    max-width:12ch!important;
  }
  .home-v230-slider .home-v214-copy p{
    font-size:12.5px!important;
    line-height:1.35!important;
  }
  .home-v230-slider .home-v214-actions{
    display:flex!important;
  }
  .home-v230-slider .home-slider-nav{
    bottom:8px!important;
  }
}

/* Reduced motion */
@media(prefers-reduced-motion:reduce){
  .home-v231-whatsapp-float,
  .home-v231-whatsapp-float::after,
  .home-v231-stay-img,
  .home-v231-format,
  .home-v231-stay,
  .home-v231-testimonial,
  [data-home-v231-reveal]{
    animation:none!important;
    transition:none!important;
  }
  .home-v231-stays .img-a{opacity:1!important}
  .home-v231-stays .img-b{opacity:0!important}
  [data-home-v231-reveal]{opacity:1!important;transform:none!important}
}


/* =========================================================
   HOME V20.32 — precise image fill + brand-green WhatsApp polish
   ========================================================= */

/* Ensure homepage visuals use loaded images with cinematic motion */
.home-v230-overview-card{
  transform:translateY(0) translateZ(0);
  will-change:transform, box-shadow;
}
.home-v230-overview-card img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  opacity:1!important;
  transform:scale(1.02);
  transition:transform 1s cubic-bezier(.22,1,.36,1), filter .45s ease;
  animation:homeV232CardDrift 14s ease-in-out infinite alternate;
}
.home-v230-overview-card:nth-child(1) img{object-position:50% 48%}
.home-v230-overview-card:nth-child(2) img{object-position:52% 46%}
.home-v230-overview-card:nth-child(3) img{object-position:50% 48%}
.home-v230-overview-card:nth-child(4) img{object-position:50% 32%}
.home-v230-overview-wash{
  background:
    linear-gradient(180deg,rgba(16,20,14,.02) 0%,rgba(16,20,14,.10) 34%,rgba(17,22,14,.55) 100%),
    linear-gradient(0deg,rgba(36,46,27,.52) 0%,rgba(36,46,27,.10) 58%,rgba(36,46,27,.03) 100%);
}
.home-v230-overview-copy{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  padding:26px 18px 18px;
  z-index:3;
}
.home-v230-overview-copy strong{
  text-shadow:0 10px 28px rgba(0,0,0,.30);
}
@keyframes homeV232CardDrift{
  0%{transform:scale(1.02) translate3d(0,0,0)}
  100%{transform:scale(1.08) translate3d(0,-10px,0)}
}
@media(hover:hover){
  .home-v230-overview-card:hover{
    transform:translateY(-8px) rotateX(1deg);
    box-shadow:0 34px 70px rgba(45,57,34,.18);
  }
  .home-v230-overview-card:hover img{
    transform:scale(1.12);
    filter:saturate(1.04);
  }
}

/* Creative two-image story block */
.home-v232-story .home-v230-story-media{
  position:relative;
  min-height:600px;
  perspective:1600px;
  overflow:visible;
}
.home-v232-story .home-v230-story-main{
  position:relative;
  width:min(100%, 660px);
  aspect-ratio:1.05/1;
  object-fit:cover;
  border-radius:34px;
  box-shadow:0 26px 80px rgba(0,0,0,.18);
  animation:homeV232MainFloat 12s ease-in-out infinite;
}
.home-v232-story .home-v230-story-float{
  position:absolute;
  width:40%;
  max-width:330px;
  right:-6%;
  bottom:-3%;
  aspect-ratio:.82/1;
  object-fit:cover;
  object-position:50% 55%;
  border-radius:28px;
  box-shadow:0 26px 70px rgba(0,0,0,.24);
  transform:rotate(5deg);
  animation:homeV232FloatCard 10s ease-in-out infinite;
}
@keyframes homeV232MainFloat{
  0%,100%{transform:translateY(0) rotate(-1deg) scale(1)}
  50%{transform:translateY(-8px) rotate(.6deg) scale(1.015)}
}
@keyframes homeV232FloatCard{
  0%,100%{transform:translateY(0) rotate(5deg)}
  50%{transform:translateY(-12px) rotate(2.6deg)}
}

/* Stronger guarantee that stay section images display */
.home-v231-stay-media{
  background:#324126;
}
.home-v231-stay-img{
  opacity:1;
}
.home-v231-stay .img-a{object-position:50% 48%}
.home-v231-stay .img-b{object-position:52% 52%}
.home-v231-stay:nth-child(2) .img-a{object-position:50% 46%}
.home-v231-stay:nth-child(2) .img-b{object-position:44% 42%}
.home-v231-stay:nth-child(3) .img-a{object-position:50% 55%}
.home-v231-stay:nth-child(3) .img-b{object-position:62% 58%}

/* Site-green WhatsApp button + clear icon */
.home-v230-slider .home-v214-wa{
  background:linear-gradient(145deg,#859F56,#70884A)!important;
  border-color:rgba(255,255,255,.42)!important;
  box-shadow:
    0 18px 42px rgba(45,67,31,.24),
    inset 0 1px 0 rgba(255,255,255,.22)!important;
}
.home-v230-slider .home-v214-wa:hover{
  transform:translateY(-2px)!important;
}
.home-v230-slider .home-v214-wa .home-v214-btn-icon{
  width:31px!important;
  height:31px!important;
  min-width:31px!important;
  flex-basis:31px!important;
  border-radius:999px!important;
  background:#F8F4EA!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.88), 0 2px 10px rgba(42,55,31,.10);
  display:grid!important;
  place-items:center!important;
  overflow:hidden!important;
}
.home-v230-slider .home-v214-wa .home-v214-btn-icon img{
  width:19px!important;
  height:19px!important;
  object-fit:contain!important;
  background:none!important;
  padding:0!important;
  border-radius:0!important;
}
.home-v231-whatsapp-float{
  right:24px!important;
  bottom:116px!important;
  width:62px!important;
  height:62px!important;
  background:linear-gradient(145deg,#859F56,#70884A)!important;
  border-color:rgba(255,255,255,.36)!important;
  box-shadow:
    0 22px 50px rgba(45,67,31,.26),
    inset 0 1px 0 rgba(255,255,255,.24),
    0 0 0 10px rgba(133,159,86,.08)!important;
}
.home-v231-whatsapp-float img{
  width:34px!important;
  height:34px!important;
  object-fit:contain!important;
  background:#F8F4EA!important;
  border-radius:50%!important;
  padding:6px!important;
  box-sizing:content-box!important;
}
.home-v231-whatsapp-float::after{
  border-color:rgba(133,159,86,.42)!important;
}

/* Responsive adjustments */
@media(max-width:1024px){
  .home-v232-story .home-v230-story-media{
    min-height:540px;
  }
  .home-v232-story .home-v230-story-float{
    right:-2%;
    bottom:-1%;
    width:42%;
  }
}
@media(max-width:767px){
  .home-v232-story .home-v230-story-media{
    min-height:auto;
    padding-bottom:24px;
  }
  .home-v232-story .home-v230-story-main{
    width:100%;
    aspect-ratio:1/1.04;
  }
  .home-v232-story .home-v230-story-float{
    position:relative;
    right:auto;
    bottom:auto;
    width:68%;
    max-width:none;
    margin:-42px 0 0 auto;
    display:block;
  }
  .home-v231-whatsapp-float{
    right:16px!important;
    bottom:104px!important;
    width:58px!important;
    height:58px!important;
  }
  .home-v231-whatsapp-float img{
    width:31px!important;
    height:31px!important;
  }
}
@media(prefers-reduced-motion:reduce){
  .home-v230-overview-card img,
  .home-v232-story .home-v230-story-main,
  .home-v232-story .home-v230-story-float{
    animation:none!important;
  }
}


/* =========================================================
   HOME V20.33 — strict brand palette + real stay imagery + 3D reviews
   Canonical colors only:
   green #839557 | terracotta #C3613C | cream #F5EDE2 | white #FFF
   ========================================================= */

body.home-v231-active{
  --chami-brand-green:#839557;
  --chami-brand-terracotta:#C3613C;
  --chami-brand-cream:#F5EDE2;
  --chami-brand-white:#FFF;
}

/* Strict homepage background palette */
body.home-v231-active .home-v230-story-section,
body.home-v231-active .home-v230-dual-section,
body.home-v231-active .home-v231-testimonials-section{
  background:#839557!important;
}
body.home-v231-active .home-v230-overview-section,
body.home-v231-active .home-v230-retreat-section,
body.home-v231-active .home-v230-stays-section,
body.home-v231-active .home-v230-gallery-section,
body.home-v231-active .home-v231-faq-section,
body.home-v231-active .home-v230-booking-section{
  background:#F5EDE2!important;
}

/* No off-brand greens in the homepage's added UI */
body.home-v231-active .home-v230-section .elementor-heading-title,
body.home-v231-active .home-v230-section-intro,
body.home-v231-active .home-v231-stay-body strong,
body.home-v231-active .home-v231-stay-body p,
body.home-v231-active .home-v231-format-day span,
body.home-v231-active .home-v231-format p,
body.home-v231-active .home-v231-faq-item summary strong,
body.home-v231-active .home-v231-faq-item>div>p{
  color:#839557!important;
}
body.home-v231-active .home-v231-stay-body em,
body.home-v231-active .home-v231-format-day strong,
body.home-v231-active .home-v231-quote,
body.home-v231-active .home-v231-faq-item summary em{
  color:#C3613C!important;
}
body.home-v231-active .home-v230-eyebrow,
body.home-v231-active .home-v231-format-icon,
body.home-v231-active .home-v231-faq-icon{
  color:#839557!important;
  background:#F5EDE2!important;
  border-color:#839557!important;
}

/* Green sections: white + cream only */
body.home-v231-active .home-v230-story-copy,
body.home-v231-active .home-v230-story-copy h2,
body.home-v231-active .home-v230-story-copy p,
body.home-v231-active .home-v230-story-copy .home-v230-eyebrow,
body.home-v231-active .home-v231-testimonials,
body.home-v231-active .home-v231-testimonials-head h2,
body.home-v231-active .home-v231-testimonials-head p{
  color:#FFF!important;
}
body.home-v231-active .home-v230-story-copy .home-v230-eyebrow,
body.home-v231-active .home-v231-testimonials-head .home-v230-eyebrow{
  background:rgba(255,255,255,.10)!important;
  border-color:rgba(255,255,255,.26)!important;
}
body.home-v231-active .home-v230-story-float{
  border-color:#839557!important;
}

/* Retreat/actions follow the same palette */
body.home-v231-active .home-v230-retreat-bridge,
body.home-v231-active .home-v231-format,
body.home-v231-active .home-v231-stay,
body.home-v231-active .home-v231-faq-item,
body.home-v231-active .home-v230-booking-section .cder-booking{
  background:#FFF!important;
  border-color:rgba(131,149,87,.28)!important;
}
body.home-v231-active .home-v230-primary{
  background:#839557!important;
  color:#FFF!important;
  box-shadow:0 14px 30px rgba(131,149,87,.28)!important;
}
body.home-v231-active .home-v230-secondary{
  background:#F5EDE2!important;
  color:#839557!important;
  border-color:#839557!important;
}

/* Image overlays use only brand green/terracotta */
body.home-v231-active .home-v230-overview-wash{
  background:
    linear-gradient(180deg,rgba(131,149,87,.04) 0%,rgba(131,149,87,.16) 42%,rgba(131,149,87,.90) 100%)!important;
}
body.home-v231-active .home-v230-dual-wash{
  background:
    linear-gradient(180deg,rgba(131,149,87,.05) 14%,rgba(131,149,87,.24) 48%,rgba(131,149,87,.92) 100%)!important;
}
body.home-v231-active .home-v230-gallery-copy{
  background:rgba(131,149,87,.88)!important;
  border-color:rgba(255,255,255,.30)!important;
}

/* Real accommodation cards from the Hébergements source assets */
body.home-v231-active .home-v233-stay{
  border:1px solid rgba(131,149,87,.28)!important;
  box-shadow:
    0 26px 60px rgba(131,149,87,.18),
    inset 0 1px 0 rgba(255,255,255,.94)!important;
  transform-style:preserve-3d;
}
body.home-v231-active .home-v233-stay .home-v231-stay-media{
  background:#839557!important;
}
body.home-v231-active .home-v233-stay .home-v231-stay-icon{
  background:#839557!important;
  border-color:#FFF!important;
  color:#FFF!important;
}
body.home-v231-active .home-v233-stay .home-v231-stay-img{
  transition:opacity .7s cubic-bezier(.22,1,.36,1),transform 1s cubic-bezier(.22,1,.36,1),filter .6s ease;
}
@media(hover:hover){
  body.home-v231-active .home-v233-stay:hover{
    transform:translateY(-9px) rotateX(1.2deg) rotateY(-1deg)!important;
    box-shadow:0 34px 72px rgba(131,149,87,.24)!important;
  }
  body.home-v231-active .home-v233-stay:hover .home-v231-stay-img{
    filter:saturate(1.04);
  }
}

/* Correct, clear WhatsApp on every homepage WhatsApp action */
body.home-v231-active a[href*="wa.me"],
body.home-v231-active a[href*="whatsapp.com"]{
  --wa-green:#839557;
}
body.home-v231-active .home-v230-slider .home-v214-wa,
body.home-v231-active .home-v231-whatsapp-float{
  background:#839557!important;
  border-color:#FFF!important;
}
body.home-v231-active .home-v214-wa .home-v214-btn-icon,
body.home-v231-active .home-v233-wa-icon-wrap{
  background:#F5EDE2!important;
  border:1px solid #FFF!important;
}
body.home-v231-active .home-v214-wa .home-v214-btn-icon img,
body.home-v231-active .home-v231-whatsapp-float img,
body.home-v231-active .home-v233-wa-icon{
  width:22px!important;
  height:22px!important;
  object-fit:contain!important;
  filter:none!important;
}
body.home-v231-active .home-v231-whatsapp-float img{
  width:32px!important;
  height:32px!important;
  padding:5px!important;
  background:#F5EDE2!important;
  border-radius:50%!important;
}
body.home-v231-active .home-v233-wa-icon-wrap{
  width:32px;
  height:32px;
  min-width:32px;
  display:inline-grid;
  place-items:center;
  border-radius:50%;
  margin-inline-end:8px;
  vertical-align:middle;
}
body.home-v231-active .home-v233-wa-decorated{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center;
}

/* Music control: original brand green, not custom dark green */
body.home-v231-active .cder-v212-audio{
  background:#839557!important;
  border-color:#FFF!important;
  color:#FFF!important;
  box-shadow:0 16px 36px rgba(131,149,87,.24),inset 0 1px 0 rgba(255,255,255,.24)!important;
}
body.home-v231-active .cder-v213-music-mark{
  background:#F5EDE2!important;
  border:1px solid #FFF!important;
}

/* Testimonials: stronger 3D stage */
body.home-v231-active .home-v231-testimonials{
  perspective:1600px;
  perspective-origin:50% 42%;
}
body.home-v231-active .home-v231-testimonials-track{
  perspective:1600px!important;
  transform-style:preserve-3d;
  padding-top:26px!important;
  padding-bottom:48px!important;
}
body.home-v231-active .home-v231-testimonial{
  position:relative;
  transform-style:preserve-3d;
  background:rgba(255,255,255,.09)!important;
  border:1px solid rgba(255,255,255,.28)!important;
  box-shadow:
    0 30px 80px rgba(131,149,87,.24),
    inset 0 1px 0 rgba(255,255,255,.20)!important;
  opacity:.48!important;
  transform:translateZ(-90px) rotateY(9deg) scale(.90)!important;
  transition:
    transform .75s cubic-bezier(.22,1,.36,1),
    opacity .55s ease,
    box-shadow .55s ease!important;
}
body.home-v231-active .home-v231-testimonial:nth-child(even){
  transform:translateZ(-90px) rotateY(-9deg) scale(.90)!important;
}
body.home-v231-active .home-v231-testimonial.is-active{
  opacity:1!important;
  transform:translateZ(70px) rotateY(0deg) scale(1)!important;
  background:rgba(255,255,255,.14)!important;
  box-shadow:
    0 40px 100px rgba(131,149,87,.34),
    inset 0 1px 0 rgba(255,255,255,.26)!important;
}
body.home-v231-active .home-v231-testimonial::before{
  content:"";
  position:absolute;
  inset:10px;
  border-radius:20px;
  pointer-events:none;
  border:1px solid rgba(245,237,226,.16);
  transform:translateZ(26px);
}
body.home-v231-active .home-v231-testimonial p{
  color:#FFF!important;
}
body.home-v231-active .home-v231-testimonial strong{
  color:#F5EDE2!important;
}
body.home-v231-active .home-v231-testimonial-controls button{
  background:#F5EDE2!important;
  color:#839557!important;
  border-color:#FFF!important;
}
body.home-v231-active .home-v231-testimonial-controls span,
body.home-v231-active .home-v231-testimonial-controls b{
  color:#FFF!important;
}

@media(max-width:767px){
  body.home-v231-active .home-v231-testimonial{
    transform:translateZ(-45px) rotateY(5deg) scale(.94)!important;
  }
  body.home-v231-active .home-v231-testimonial:nth-child(even){
    transform:translateZ(-45px) rotateY(-5deg) scale(.94)!important;
  }
  body.home-v231-active .home-v231-testimonial.is-active{
    transform:translateZ(30px) rotateY(0) scale(1)!important;
  }
}


/* V20.33 final brand lock for hero and primary actions */
body.home-v231-active .home-v230-slider .home-v214-wash{
  background:
    linear-gradient(90deg,rgba(131,149,87,.92) 0%,rgba(131,149,87,.66) 34%,rgba(131,149,87,.22) 70%,rgba(131,149,87,.04) 100%),
    linear-gradient(180deg,rgba(131,149,87,.02) 0%,rgba(131,149,87,.10) 54%,rgba(131,149,87,.62) 100%)!important;
}
body.home-v231-active .home-v230-slider .home-v214-form{
  background:#C3613C!important;
  color:#FFF!important;
  border-color:#FFF!important;
}
body.home-v231-active .home-v230-slider .home-v214-wa{
  background:#839557!important;
  color:#FFF!important;
  border-color:#FFF!important;
}
body.home-v231-active .home-v230-slider .home-slider-dot.is-active,
body.home-v231-active .home-v230-slider .home-slider-count strong{
  color:#F5EDE2!important;
}
body.home-v231-active .home-v230-gallery-frame,
body.home-v231-active .home-v230-overview-card,
body.home-v231-active .home-v231-stay{
  box-shadow:0 26px 62px rgba(131,149,87,.20)!important;
}


/* =========================================================
   V20.34 — footer cleanup + creator credit
   ========================================================= */

/* Explicitly remove the marked floating WhatsApp control. */
.home-v231-whatsapp-float{
  display:none!important;
}

/* Final creator credit, aligned with the existing footer brand palette. */
.cder-v234-credit{
  width:100%;
  display:flex;
  justify-content:center;
  align-items:center;
  padding:14px 0 2px;
  margin-top:8px;
  border-top:1px solid rgba(245,237,226,.18);
}
.cder-v234-credit a{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:36px;
  padding:7px 12px;
  color:#F5EDE2!important;
  text-decoration:none!important;
  font:800 12px/1.2 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  letter-spacing:.055em;
  border-radius:999px;
  border:1px solid rgba(245,237,226,.26);
  background:rgba(245,237,226,.07);
  transition:transform .25s ease,background .25s ease,border-color .25s ease;
}
.cder-v234-credit a svg{
  width:15px;
  height:15px;
  flex:0 0 15px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.cder-v234-credit a:hover,
.cder-v234-credit a:focus-visible{
  transform:translateY(-2px);
  background:rgba(245,237,226,.12);
  border-color:rgba(245,237,226,.45);
  outline:none;
}
@media(max-width:767px){
  .cder-v234-credit{
    padding-top:12px;
  }
  .cder-v234-credit a{
    font-size:11px;
    letter-spacing:.04em;
  }
}
@media(prefers-reduced-motion:reduce){
  .cder-v234-credit a{
    transition:none!important;
  }
}


/* =========================================================
   V20.36 — La Cabane full source text
   Scoped only to the La Cabane block in Séjours & Hébergements
   ========================================================= */
.stays-v205-cabane .stays-v205-cabane-source{
  display:grid;
  gap:18px;
  margin:18px 0 22px;
  color:#33412B;
  max-width:980px;
}
.stays-v205-cabane .stays-v205-cabane-source > p{
  margin:0;
  max-width:72ch;
  font-size:clamp(16px,1.25vw,19px);
  line-height:1.75;
}
.stays-v205-cabane .stays-v205-cabane-lead{
  color:#839557;
  font-weight:800;
  font-size:clamp(18px,1.45vw,22px)!important;
  line-height:1.5!important;
}
.stays-v205-cabane .stays-v205-cabane-story,
.stays-v205-cabane .stays-v205-cabane-inside{
  position:relative;
  padding:24px;
  border-radius:24px;
  background:#F5EDE2;
  border:1px solid rgba(131,149,87,.24);
  box-shadow:
    0 18px 46px rgba(131,149,87,.10),
    inset 0 1px 0 rgba(255,255,255,.78);
}
.stays-v205-cabane .stays-v205-cabane-tag{
  display:inline-flex;
  align-items:center;
  min-height:29px;
  padding:6px 10px;
  border-radius:999px;
  color:#839557;
  background:#FFF;
  border:1px solid rgba(131,149,87,.24);
  font:900 10px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  letter-spacing:.15em;
  text-transform:uppercase;
}
.stays-v205-cabane .stays-v205-cabane-source h4{
  margin:13px 0 10px;
  color:#C3613C;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(24px,2.4vw,36px);
  line-height:1.08;
  font-weight:700;
}
.stays-v205-cabane .stays-v205-cabane-story > p,
.stays-v205-cabane .stays-v205-cabane-inside > p{
  margin:0;
  color:#33412B;
  line-height:1.72;
  max-width:72ch;
}
.stays-v205-cabane .stays-v205-cabane-steps{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin:20px 0 16px;
}
.stays-v205-cabane .stays-v205-cabane-steps > div{
  display:grid;
  grid-template-columns:38px 1fr;
  gap:10px;
  align-items:start;
  padding:16px;
  border-radius:18px;
  background:#FFF;
  border:1px solid rgba(131,149,87,.18);
}
.stays-v205-cabane .stays-v205-cabane-steps b{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:12px;
  color:#FFF;
  background:#839557;
  font-size:15px;
  line-height:1;
}
.stays-v205-cabane .stays-v205-cabane-steps span{
  color:#33412B;
  font-size:14px;
  line-height:1.55;
}
.stays-v205-cabane .stays-v205-cabane-closing{
  color:#839557!important;
  font-weight:800;
}
.stays-v205-cabane .stays-v205-cabane-details{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:18px;
}
.stays-v205-cabane .stays-v205-cabane-details span{
  display:inline-flex;
  min-height:34px;
  align-items:center;
  padding:7px 11px;
  border-radius:999px;
  background:#FFF;
  color:#839557;
  border:1px solid rgba(131,149,87,.22);
  font-size:12px;
  font-weight:750;
}
.stays-v205-cabane .stays-v205-cabane-compact{
  margin:0;
  line-height:1.7;
}
@media(max-width:820px){
  .stays-v205-cabane .stays-v205-cabane-steps{
    grid-template-columns:1fr;
  }
}
@media(max-width:767px){
  .stays-v205-cabane .stays-v205-cabane-story,
  .stays-v205-cabane .stays-v205-cabane-inside{
    padding:18px;
    border-radius:20px;
  }
  .stays-v205-cabane .stays-v205-cabane-source{
    gap:14px;
  }
  .stays-v205-cabane .stays-v205-cabane-source > p{
    font-size:15px;
  }
  .stays-v205-cabane .stays-v205-cabane-details{
    display:grid;
    grid-template-columns:1fr;
  }
  .stays-v205-cabane .stays-v205-cabane-details span{
    border-radius:14px;
  }
}


/* V20.37 compact responsive footer */
.cder-v237-footer{overflow:hidden}
.cder-v237-footer .cder-v237-footer-shell{
  width:min(100% - 32px,1180px);
  margin-inline:auto;
  padding:34px 0 14px!important;
  display:grid!important;
  grid-template-columns:minmax(180px,1.15fr) minmax(140px,.72fr) minmax(140px,.62fr) minmax(260px,1.15fr)!important;
  column-gap:clamp(24px,4vw,54px)!important;
  row-gap:22px!important;
  align-items:start!important;
}
.cder-v237-footer .cder-v237-brand{max-width:245px}
.cder-v237-footer .cder-v207-logo{display:inline-flex;margin-bottom:12px!important}
.cder-v237-footer .cder-v207-logo img{width:132px!important;height:auto!important;max-height:94px!important;object-fit:contain}
.cder-v237-footer .cder-v237-brand p{margin:0!important;max-width:27ch;font-size:14px!important;line-height:1.65!important}
.cder-v237-footer .cder-v207-col h3{margin:1px 0 13px!important;font-size:14px!important;line-height:1.15!important;letter-spacing:.08em!important}
.cder-v237-footer .cder-v237-links{display:flex!important;flex-direction:column!important;gap:7px!important}
.cder-v237-footer .cder-v237-links a{padding:2px 0!important;font-size:14px!important;line-height:1.4!important;transition:transform .2s ease,opacity .2s ease!important}
@media(hover:hover){
  .cder-v237-footer .cder-v237-links a:hover{transform:translateX(3px)}
  [dir="rtl"] .cder-v237-links a:hover{transform:translateX(-3px)}
}
.cder-v237-footer .cder-v237-contact{display:grid!important;gap:8px!important}
.cder-v237-footer .cder-v237-contact .cder-v207-contact-row{min-height:38px!important;gap:10px!important;font-size:13px!important;line-height:1.42!important}
.cder-v237-footer .cder-v237-contact .cder-v207-contact-icon{width:38px!important;height:38px!important;min-width:38px!important;border-radius:13px!important}
.cder-v237-footer .cder-v237-contact .cder-v207-contact-icon svg{width:19px!important;height:19px!important}
.cder-v237-footer .cder-v237-bottom{
  grid-column:1/-1;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  margin-top:5px!important;
  padding:14px 0 0!important;
  min-height:0!important;
  font-size:11px!important;
  line-height:1.4!important;
}
.cder-v237-footer .cder-v237-credit{
  grid-column:1/-1;
  margin:0!important;
  padding:8px 0 0!important;
  min-height:0!important;
}
.cder-v237-footer .cder-v237-credit a{min-height:30px!important;padding:5px 10px!important;font-size:10.5px!important}

@media(max-width:960px){
  .cder-v237-footer .cder-v237-footer-shell{
    grid-template-columns:1.05fr .95fr!important;
    width:min(100% - 36px,760px);
    padding:30px 0 14px!important;
    column-gap:30px!important;
    row-gap:24px!important;
  }
  .cder-v237-footer .cder-v237-brand{max-width:320px}
  .cder-v237-footer .cder-v237-contact{grid-column:2}
}
@media(max-width:620px){
  .cder-v237-footer .cder-v237-footer-shell{
    width:min(100% - 28px,520px);
    grid-template-columns:1fr 1fr!important;
    padding:26px 0 12px!important;
    column-gap:20px!important;
    row-gap:22px!important;
  }
  .cder-v237-footer .cder-v237-brand{
    grid-column:1/-1;
    max-width:none;
    display:grid;
    grid-template-columns:auto 1fr;
    gap:16px;
    align-items:center;
  }
  .cder-v237-footer .cder-v207-logo{margin:0!important}
  .cder-v237-footer .cder-v207-logo img{width:106px!important;max-height:76px!important}
  .cder-v237-footer .cder-v237-brand p{max-width:none;font-size:12.5px!important;line-height:1.55!important}
  .cder-v237-footer .cder-v207-col h3{margin-bottom:10px!important;font-size:12.5px!important}
  .cder-v237-footer .cder-v237-links{gap:5px!important}
  .cder-v237-footer .cder-v237-links a{font-size:12.5px!important}
  .cder-v237-footer .cder-v237-contact{
    grid-column:1/-1;
    grid-template-columns:1fr 1fr!important;
    gap:8px 12px!important;
  }
  .cder-v237-footer .cder-v237-contact h3{grid-column:1/-1;margin-bottom:2px!important}
  .cder-v237-footer .cder-v237-contact .cder-v207-contact-row{
    font-size:12px!important;
    min-width:0;
    overflow-wrap:anywhere;
  }
  .cder-v237-footer .cder-v237-contact .cder-v207-contact-icon{
    width:34px!important;height:34px!important;min-width:34px!important;border-radius:11px!important;
  }
  .cder-v237-footer .cder-v237-bottom{
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:3px!important;
    padding-top:12px!important;
  }
  .cder-v237-footer .cder-v237-credit{justify-content:flex-start!important}
}
@media(max-width:420px){
  .cder-v237-footer .cder-v237-footer-shell{grid-template-columns:1fr!important;row-gap:18px!important}
  .cder-v237-footer .cder-v237-brand,
  .cder-v237-footer .cder-v237-contact,
  .cder-v237-footer .cder-v237-bottom,
  .cder-v237-footer .cder-v237-credit{grid-column:1!important}
  .cder-v237-footer .cder-v237-contact{grid-template-columns:1fr!important}
  .cder-v237-footer .cder-v237-contact h3{grid-column:1!important}
}


/* =========================================================
   V20.38 — global compact music control + subtle orchard fall
   ========================================================= */

/* Same compact music control on every page */
.cder-v212-audio{
  position:fixed!important;
  z-index:9995!important;
  left:18px!important;
  right:auto!important;
  bottom:max(84px,calc(env(safe-area-inset-bottom,0px) + 74px))!important;
  width:132px!important;
  min-width:132px!important;
  height:46px!important;
  display:grid!important;
  grid-template-columns:34px minmax(48px,1fr) 28px!important;
  align-items:center!important;
  column-gap:7px!important;
  padding:6px 8px 6px 6px!important;
  border-radius:999px!important;
  background:#839557!important;
  border:1px solid rgba(255,255,255,.84)!important;
  box-shadow:0 16px 34px rgba(50,65,36,.20),inset 0 1px 0 rgba(255,255,255,.22)!important;
  transform:none!important;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.cder-v212-audio::after{
  inset:-4px!important;
  border-radius:999px!important;
  opacity:.46!important;
}
.cder-v213-music-mark{
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:50%!important;
  background:#F5EDE2!important;
  border:1px solid rgba(255,255,255,.92)!important;
  box-shadow:none!important;
}
.cder-v213-music-mark img{
  width:19px!important;
  height:19px!important;
  display:block!important;
  object-fit:contain!important;
}
.cder-v213-music-mark svg{
  width:18px!important;
  height:18px!important;
}
.cder-v213-audio-copy{
  min-width:0!important;
  text-align:left!important;
  line-height:1!important;
}
.cder-v213-audio-copy strong{
  display:block!important;
  color:#FFF!important;
  font-size:11px!important;
  line-height:1!important;
  font-weight:850!important;
  letter-spacing:.01em!important;
}
.cder-v213-audio-copy small{
  display:block!important;
  margin-top:3px!important;
  color:#F5EDE2!important;
  font-size:7.5px!important;
  line-height:1!important;
  font-weight:850!important;
  letter-spacing:.16em!important;
}
.cder-v213-audio-action{
  width:28px!important;
  height:28px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:50%!important;
  background:rgba(255,255,255,.14)!important;
  border:1px solid rgba(255,255,255,.22)!important;
  box-shadow:none!important;
}
.cder-v213-audio-action svg{
  width:15px!important;
  height:15px!important;
  stroke:#FFF!important;
  stroke-width:2.2!important;
}
.cder-v212-audio.is-playing{
  box-shadow:0 16px 36px rgba(50,65,36,.22),0 0 0 5px rgba(131,149,87,.10),inset 0 1px 0 rgba(255,255,255,.24)!important;
}

@media(max-width:767px){
  .cder-v212-audio{
    left:12px!important;
    right:auto!important;
    bottom:max(72px,calc(env(safe-area-inset-bottom,0px) + 62px))!important;
    width:116px!important;
    min-width:116px!important;
    height:42px!important;
    grid-template-columns:30px minmax(42px,1fr) 25px!important;
    column-gap:6px!important;
    padding:5px 7px 5px 5px!important;
  }
  .cder-v213-music-mark{
    width:30px!important;
    height:30px!important;
    min-width:30px!important;
  }
  .cder-v213-music-mark img{
    width:17px!important;
    height:17px!important;
  }
  .cder-v213-audio-copy strong{font-size:10px!important}
  .cder-v213-audio-copy small{font-size:7px!important}
  .cder-v213-audio-action{
    width:25px!important;
    height:25px!important;
  }
  .cder-v213-audio-action svg{
    width:13px!important;
    height:13px!important;
  }
}

/* Global orchard fall: low opacity and mostly on page edges */
.cder-v238-global-fall{
  position:fixed;
  inset:0;
  z-index:18;
  pointer-events:none;
  overflow:hidden;
  contain:layout paint style;
}
.cder-v238-piece{
  --x:4%;
  --dur:17s;
  --delay:0s;
  --drift:28px;
  --spin:480deg;
  position:absolute;
  top:-9vh;
  left:var(--x);
  opacity:0;
  will-change:transform,opacity;
  animation:cderV238Fall var(--dur) linear var(--delay) infinite;
  filter:drop-shadow(0 5px 7px rgba(55,65,39,.10));
}
.cder-v238-piece.leaf{
  width:12px;
  height:22px;
  border-radius:92% 12% 88% 18% / 78% 18% 82% 22%;
  background:linear-gradient(135deg,#9AAA6C 0%,#839557 52%,#687A46 100%);
  transform-origin:50% 18%;
}
.cder-v238-piece.leaf::after{
  content:"";
  position:absolute;
  left:50%;
  top:11%;
  width:1px;
  height:78%;
  background:rgba(245,237,226,.42);
  transform:rotate(16deg);
  transform-origin:top;
}
.cder-v238-piece.orange{
  width:15px;
  height:15px;
  border-radius:50%;
  background:
    radial-gradient(circle at 34% 28%,rgba(255,244,218,.88) 0 8%,transparent 9%),
    radial-gradient(circle at 45% 42%,#D98A3A 0 58%,#C3613C 78%,#A84E2F 100%);
  box-shadow:inset -2px -3px 5px rgba(113,58,30,.18);
}
.cder-v238-piece.orange::before{
  content:"";
  position:absolute;
  width:6px;
  height:4px;
  left:6px;
  top:-3px;
  border-radius:80% 10% 80% 10%;
  background:#839557;
  transform:rotate(-24deg);
}
.cder-v238-piece.olive{
  width:9px;
  height:14px;
  border-radius:50% 50% 55% 55%;
  background:radial-gradient(circle at 34% 28%,#AAB77A 0 9%,#839557 36%,#59693D 100%);
  box-shadow:inset -1px -2px 3px rgba(38,55,27,.18);
}
.cder-v238-piece.olive::before{
  content:"";
  position:absolute;
  width:5px;
  height:3px;
  left:5px;
  top:-2px;
  border-radius:80% 10% 80% 10%;
  background:#839557;
  transform:rotate(22deg);
}
@keyframes cderV238Fall{
  0%{
    transform:translate3d(0,-10vh,0) rotate(0deg) scale(.88);
    opacity:0;
  }
  8%{opacity:.32}
  52%{
    transform:translate3d(var(--drift),52vh,0) rotate(calc(var(--spin) * .55)) scale(1);
    opacity:.28;
  }
  92%{opacity:.22}
  100%{
    transform:translate3d(calc(var(--drift) * -.6),112vh,0) rotate(var(--spin)) scale(.92);
    opacity:0;
  }
}
@media(max-width:767px){
  .cder-v238-piece:nth-child(n+8){display:none}
}
@media (prefers-reduced-motion: reduce){
  .cder-v238-global-fall{display:none!important}
  .cder-v212-audio,
  .cder-v213-music-mark,
  .cder-v213-audio-action{
    animation:none!important;
    transition:none!important;
  }
}


/* =========================================================
   V20.39 — MOBILE FOOTER ONLY
   Desktop and tablet remain exactly as V20.38.
   ========================================================= */
@media (max-width:600px){
  .cder-v237-footer .cder-v237-footer-shell{
    width:min(100% - 30px,500px)!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    column-gap:18px!important;
    row-gap:20px!important;
    padding:24px 0 14px!important;
  }

  /* Brand becomes a clean centered header for the footer. */
  .cder-v237-footer .cder-v237-brand{
    grid-column:1/-1!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    max-width:none!important;
    text-align:center!important;
    padding-bottom:4px!important;
  }
  .cder-v237-footer .cder-v207-logo{
    margin:0!important;
    display:inline-flex!important;
    justify-content:center!important;
  }
  .cder-v237-footer .cder-v207-logo img{
    width:112px!important;
    max-height:80px!important;
    height:auto!important;
  }
  .cder-v237-footer .cder-v237-brand p{
    max-width:34ch!important;
    margin:0 auto!important;
    font-size:12.5px!important;
    line-height:1.5!important;
    text-align:center!important;
  }

  /* Explorer + Informations: balanced, aligned two-column navigation. */
  .cder-v237-footer .cder-v237-links{
    min-width:0!important;
    display:flex!important;
    flex-direction:column!important;
    gap:6px!important;
    padding:0!important;
  }
  .cder-v237-footer .cder-v237-links h3{
    margin:0 0 8px!important;
    font-size:12px!important;
    line-height:1.2!important;
    letter-spacing:.07em!important;
  }
  .cder-v237-footer .cder-v237-links a{
    display:block!important;
    min-height:28px!important;
    padding:4px 0!important;
    font-size:12.5px!important;
    line-height:1.35!important;
    overflow-wrap:anywhere;
  }

  /* Contact is one clean full-width block, not a cramped two-column grid. */
  .cder-v237-footer .cder-v237-contact{
    grid-column:1/-1!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    min-width:0!important;
    padding-top:2px!important;
  }
  .cder-v237-footer .cder-v237-contact h3{
    grid-column:1!important;
    margin:0 0 4px!important;
    font-size:12px!important;
    line-height:1.2!important;
    letter-spacing:.07em!important;
  }
  .cder-v237-footer .cder-v237-contact .cder-v207-contact-row{
    width:100%!important;
    min-width:0!important;
    min-height:40px!important;
    display:grid!important;
    grid-template-columns:34px minmax(0,1fr)!important;
    align-items:center!important;
    gap:10px!important;
    padding:0!important;
    font-size:12px!important;
    line-height:1.4!important;
    overflow-wrap:anywhere!important;
    word-break:break-word;
  }
  .cder-v237-footer .cder-v237-contact .cder-v207-contact-icon{
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
    border-radius:11px!important;
  }
  .cder-v237-footer .cder-v237-contact .cder-v207-contact-icon svg{
    width:17px!important;
    height:17px!important;
  }

  /* Bottom information is centered and visually compact. */
  .cder-v237-footer .cder-v237-bottom{
    grid-column:1/-1!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:3px!important;
    margin:2px 0 0!important;
    padding:12px 0 0!important;
    text-align:center!important;
    font-size:10.5px!important;
    line-height:1.35!important;
  }
  .cder-v237-footer .cder-v237-credit{
    grid-column:1/-1!important;
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    margin:0!important;
    padding:6px 0 0!important;
    border-top:0!important;
  }
  .cder-v237-footer .cder-v237-credit a{
    min-height:30px!important;
    padding:5px 10px!important;
    font-size:10px!important;
    letter-spacing:.035em!important;
  }
}

/* Very narrow phones keep navigation readable without crowding. */
@media (max-width:360px){
  .cder-v237-footer .cder-v237-footer-shell{
    width:min(100% - 24px,336px)!important;
    column-gap:14px!important;
  }
  .cder-v237-footer .cder-v237-links a{
    font-size:12px!important;
  }
  .cder-v237-footer .cder-v237-contact .cder-v207-contact-row{
    font-size:11.5px!important;
  }
}


/* =========================================================
   V20.40 — CONTACT PAGE REDESIGN
   Scoped to Contact only. Brand palette:
   green #839557 | terracotta #C3613C | cream #F5EDE2 | white #FFF
   ========================================================= */

.contact-v240-hero-container{
  padding:0!important;
}
.contact-v240-hero{
  position:relative;
  min-height:78svh;
  overflow:hidden;
  background:#839557;
  isolation:isolate;
}
.contact-v240-hero-media,
.contact-v240-hero-media img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  display:block;
}
.contact-v240-hero-media img{
  object-fit:cover;
  object-position:center 54%;
  transform:scale(1.035);
  animation:contactV240HeroDrift 13s ease-out both;
}
.contact-v240-hero-wash{
  position:absolute;
  inset:0;
  z-index:1;
  background:
    linear-gradient(90deg,rgba(131,149,87,.92) 0%,rgba(131,149,87,.68) 38%,rgba(131,149,87,.24) 72%,rgba(131,149,87,.08) 100%),
    linear-gradient(180deg,rgba(131,149,87,.03) 0%,rgba(131,149,87,.12) 58%,rgba(131,149,87,.62) 100%);
}
.contact-v240-hero-copy{
  position:absolute;
  z-index:2;
  left:clamp(24px,6vw,106px);
  right:clamp(24px,8vw,130px);
  bottom:clamp(54px,9vh,104px);
  width:min(880px,76vw);
  color:#FFF;
}
[dir="rtl"] .contact-v240-hero-copy{
  left:auto;
  right:clamp(24px,6vw,106px);
}
.contact-v240-eyebrow{
  display:inline-flex;
  min-height:32px;
  align-items:center;
  padding:7px 12px;
  border-radius:999px;
  color:#F5EDE2;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.28);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  font:900 10px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  letter-spacing:.17em;
  opacity:0;
  transform:translateY(16px);
  animation:contactV240In .7s .12s cubic-bezier(.22,1,.36,1) forwards;
}
.contact-v240-hero-copy h1{
  max-width:10.5ch;
  margin:16px 0 18px;
  color:#FFF;
  font-size:clamp(48px,7vw,104px);
  line-height:.94;
  letter-spacing:-.04em;
  text-wrap:balance;
  text-shadow:0 16px 40px rgba(40,52,29,.22);
  opacity:0;
  transform:translateY(24px);
  animation:contactV240In .82s .24s cubic-bezier(.22,1,.36,1) forwards;
}
.contact-v240-hero-copy p{
  max-width:730px;
  margin:0;
  color:rgba(255,255,255,.94);
  font-size:clamp(16px,1.35vw,20px);
  line-height:1.7;
  opacity:0;
  transform:translateY(22px);
  animation:contactV240In .82s .36s cubic-bezier(.22,1,.36,1) forwards;
}
@keyframes contactV240In{
  to{opacity:1;transform:none}
}
@keyframes contactV240HeroDrift{
  from{transform:scale(1.07)}
  to{transform:scale(1.015)}
}

.contact-v240-section{
  position:relative;
  overflow:clip;
}
.contact-v240-contact-section{
  background:#F5EDE2!important;
}
.contact-v240-contact-section .elementor-heading-title,
.contact-v240-form-section .elementor-heading-title{
  color:#839557!important;
  font-size:clamp(38px,5vw,68px)!important;
  line-height:1.02!important;
  letter-spacing:-.035em!important;
  text-wrap:balance;
}
.contact-v240-intro-copy{
  max-width:760px;
  color:#5F6953!important;
  font-size:16px;
  line-height:1.75;
}
.contact-v240-intro-copy p{
  margin:0;
}

.contact-v240-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  margin-top:28px;
  perspective:1400px;
}
.contact-v240-card{
  position:relative;
  min-height:190px;
  display:grid;
  grid-template-columns:54px minmax(0,1fr) 34px;
  gap:16px;
  align-items:start;
  padding:24px;
  border-radius:26px;
  text-decoration:none!important;
  background:#FFF;
  border:1px solid rgba(131,149,87,.22);
  box-shadow:
    0 24px 54px rgba(131,149,87,.10),
    inset 0 1px 0 rgba(255,255,255,.96);
  transform-style:preserve-3d;
  transition:
    transform .55s cubic-bezier(.22,1,.36,1) var(--contact-delay),
    box-shadow .35s ease,
    border-color .35s ease;
}
.contact-v240-card::before{
  content:"";
  position:absolute;
  inset:9px;
  border-radius:19px;
  pointer-events:none;
  border:1px solid rgba(131,149,87,.08);
}
.contact-v240-icon{
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  border-radius:17px;
  color:#839557;
  background:#F5EDE2;
  border:1px solid rgba(131,149,87,.20);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.80);
}
.contact-v240-icon svg{
  width:29px;
  height:29px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.75;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.contact-v240-card:nth-child(3) .contact-v240-icon{
  color:#FFF;
  background:#839557;
  border-color:#839557;
}
.contact-v240-card-copy{
  display:block;
  min-width:0;
}
.contact-v240-card-copy small{
  display:block;
  color:#C3613C;
  font:900 10px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  letter-spacing:.16em;
}
.contact-v240-card-copy strong{
  display:block;
  margin:10px 0 10px;
  color:#839557;
  font-size:clamp(18px,1.8vw,26px);
  line-height:1.15;
  overflow-wrap:anywhere;
}
.contact-v240-card-copy em{
  display:block;
  color:#68705F;
  font-style:normal;
  font-size:14px;
  line-height:1.58;
}
.contact-v240-arrow{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:#839557;
  background:#F5EDE2;
  border:1px solid rgba(131,149,87,.18);
  font-size:16px;
  transition:transform .25s ease,background .25s ease,color .25s ease;
}
@media(hover:hover){
  .contact-v240-card:hover{
    transform:translateY(-7px) rotateX(1deg) rotateY(-1deg);
    box-shadow:0 34px 70px rgba(131,149,87,.16);
    border-color:rgba(131,149,87,.38);
  }
  .contact-v240-card:hover .contact-v240-arrow{
    transform:translate(3px,-3px);
    background:#839557;
    color:#FFF;
  }
  [dir="rtl"] .contact-v240-card:hover .contact-v240-arrow{
    transform:translate(-3px,-3px);
  }
}

.contact-v240-form-section{
  background:
    radial-gradient(circle at 8% 0%,rgba(131,149,87,.11),transparent 28%),
    #FFF!important;
}
.contact-v240-form-section .cder-booking{
  margin-top:24px;
  border-radius:28px!important;
  border:1px solid rgba(131,149,87,.20)!important;
  background:#F5EDE2!important;
  box-shadow:
    0 28px 66px rgba(131,149,87,.11),
    inset 0 1px 0 rgba(255,255,255,.90)!important;
}
.contact-v240-form-section .cder-booking input,
.contact-v240-form-section .cder-booking select,
.contact-v240-form-section .cder-booking textarea{
  background:#FFF!important;
  border-color:rgba(131,149,87,.24)!important;
}
.contact-v240-form-section .cder-booking button{
  background:#839557!important;
  color:#FFF!important;
  border-color:#839557!important;
}

@media(max-width:900px){
  .contact-v240-grid{
    grid-template-columns:1fr;
  }
  .contact-v240-hero{
    min-height:70svh;
  }
  .contact-v240-hero-copy{
    width:min(760px,82vw);
  }
}
@media(max-width:767px){
  .contact-v240-hero{
    min-height:68svh;
  }
  .contact-v240-hero-media img{
    object-position:58% center;
  }
  .contact-v240-hero-copy,
  [dir="rtl"] .contact-v240-hero-copy{
    left:18px;
    right:18px;
    bottom:42px;
    width:auto;
  }
  .contact-v240-hero-copy h1{
    max-width:10ch;
    margin:12px 0 12px;
    font-size:clamp(38px,12vw,58px);
  }
  .contact-v240-hero-copy p{
    font-size:14px;
    line-height:1.58;
  }
  .contact-v240-card{
    min-height:0;
    grid-template-columns:46px minmax(0,1fr) 30px;
    gap:12px;
    padding:18px;
    border-radius:22px;
  }
  .contact-v240-icon{
    width:46px;
    height:46px;
    border-radius:14px;
  }
  .contact-v240-icon svg{
    width:25px;
    height:25px;
  }
  .contact-v240-card-copy strong{
    font-size:18px;
  }
  .contact-v240-card-copy em{
    font-size:13px;
  }
  .contact-v240-arrow{
    width:30px;
    height:30px;
  }
}
@media(max-width:380px){
  .contact-v240-card{
    grid-template-columns:42px minmax(0,1fr);
  }
  .contact-v240-arrow{
    display:none;
  }
}
@media(prefers-reduced-motion:reduce){
  .contact-v240-hero-media img,
  .contact-v240-eyebrow,
  .contact-v240-hero-copy h1,
  .contact-v240-hero-copy p,
  .contact-v240-card{
    animation:none!important;
    transition:none!important;
    transform:none!important;
    opacity:1!important;
  }
}

/* =========================================================
   V20.41 — CONTACT single-page link + social links
   Scope is limited to Contact and the existing Footer Contact heading.
   ========================================================= */
.contact-v241-social{
  margin-top:28px;
  padding-top:22px;
  border-top:1px solid rgba(131,149,87,.20);
}
.contact-v241-social-title{
  display:block;
  margin-bottom:12px;
  color:#68705F;
  font:900 10px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.contact-v241-social-links{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.contact-v241-social-link{
  min-width:0;
  min-height:58px;
  display:grid;
  grid-template-columns:34px minmax(0,1fr) 24px;
  align-items:center;
  gap:10px;
  padding:11px 12px;
  border-radius:18px;
  color:#839557!important;
  background:rgba(255,255,255,.72);
  border:1px solid rgba(131,149,87,.22);
  text-decoration:none!important;
  box-shadow:0 10px 24px rgba(131,149,87,.06);
  transition:transform .28s cubic-bezier(.22,1,.36,1),box-shadow .28s ease,border-color .28s ease,background .28s ease;
}
.contact-v241-social-icon{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:11px;
  background:#F5EDE2;
  border:1px solid rgba(131,149,87,.16);
}
.contact-v241-social-icon svg{
  width:18px;
  height:18px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.contact-v241-social-facebook .contact-v241-social-icon svg{
  fill:currentColor;
  stroke:none;
}
.contact-v241-social-link>span:nth-child(2){
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-weight:750;
  font-size:13px;
}
.contact-v241-social-arrow{
  text-align:center;
  color:#C3613C;
  transition:transform .25s ease;
}
@media(hover:hover){
  .contact-v241-social-link:hover{
    transform:translateY(-3px);
    background:#FFF;
    border-color:rgba(131,149,87,.38);
    box-shadow:0 18px 34px rgba(131,149,87,.10);
  }
  .contact-v241-social-link:hover .contact-v241-social-arrow{
    transform:translate(2px,-2px);
  }
  [dir="rtl"] .contact-v241-social-link:hover .contact-v241-social-arrow{
    transform:translate(-2px,-2px);
  }
}
@media(max-width:767px){
  .contact-v241-social-links{
    grid-template-columns:1fr;
  }
  .contact-v241-social-link{
    min-height:54px;
  }
}
@media(prefers-reduced-motion:reduce){
  .contact-v241-social-link,
  .contact-v241-social-arrow{
    transition:none!important;
    transform:none!important;
  }
}

.cder-v237-footer .cder-v241-footer-contact-link{
  color:inherit!important;
  text-decoration:none!important;
  display:inline-flex;
  align-items:center;
  gap:6px;
}
.cder-v237-footer .cder-v241-footer-contact-link::after{
  content:"↗";
  color:rgba(245,237,226,.72);
  font-size:.82em;
  line-height:1;
  transition:transform .2s ease;
}
@media(hover:hover){
  .cder-v237-footer .cder-v241-footer-contact-link:hover::after{
    transform:translate(2px,-2px);
  }
  [dir="rtl"] .cder-v241-footer-contact-link:hover::after{
    transform:translate(-2px,-2px);
  }
}
@media(prefers-reduced-motion:reduce){
  .cder-v237-footer .cder-v241-footer-contact-link::after{
    transition:none!important;
  }
}

/* =========================================================
   V20.40 — /galerie/ 3D PHOTO CAROUSEL
   Scoped to gallery-v240 only. Existing video carousel unchanged.
   ========================================================= */
.gallery-v240-photos-section{
  overflow:hidden;
}
.gallery-v240-photo-experience{
  --photo-w:min(56vw,720px);
  position:relative;
  width:100%;
  margin-top:12px;
}
.gallery-v240-photo-stage{
  position:relative;
  min-height:clamp(500px,60vw,760px);
  width:100%;
  perspective:1500px;
  perspective-origin:50% 48%;
  touch-action:pan-y;
  user-select:none;
  outline:none;
  overflow:visible;
}
.gallery-v240-photo-ring{
  position:absolute;
  inset:0;
  transform-style:preserve-3d;
}
.gallery-v240-photo-card{
  position:absolute;
  left:50%;
  top:48%;
  width:var(--photo-w);
  aspect-ratio:16/10;
  transform:
    translate(-50%,-50%)
    translateX(calc(var(--offset) * clamp(150px,18vw,300px)))
    translateZ(calc(var(--depth) * -145px))
    rotateY(calc(var(--offset) * -15deg))
    scale(calc(1 - var(--depth) * .055));
  transform-origin:center;
  opacity:1;
  z-index:calc(30 - var(--depth));
  transition:
    transform .72s cubic-bezier(.22,1,.36,1),
    opacity .48s ease,
    filter .48s ease;
  filter:saturate(calc(1 - var(--depth) * .08)) brightness(calc(1 - var(--depth) * .05));
  pointer-events:auto;
  will-change:transform;
}
.gallery-v240-photo-card[data-distance="2"]{opacity:.72}
.gallery-v240-photo-card[data-distance="3"]{opacity:.42}
.gallery-v240-photo-card[data-distance="4"]{opacity:.18}
.gallery-v240-photo-card[data-distance="5"],
.gallery-v240-photo-card[data-distance="6"],
.gallery-v240-photo-card[data-distance="7"],
.gallery-v240-photo-card[data-distance="8"],
.gallery-v240-photo-card[data-distance="9"],
.gallery-v240-photo-card[data-distance="10"],
.gallery-v240-photo-card[data-distance="11"]{
  opacity:0;
  pointer-events:none;
}
.gallery-v240-photo-card.is-active{
  filter:none;
  z-index:40;
}
.gallery-v240-photo-shell{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  padding:0;
  overflow:hidden;
  border-radius:30px;
  background:#1f2b19;
  border:1px solid rgba(255,255,255,.34);
  box-shadow:
    0 34px 80px rgba(40,51,29,.22),
    0 12px 30px rgba(40,51,29,.12),
    inset 0 1px 0 rgba(255,255,255,.22);
  transform-style:preserve-3d;
  cursor:pointer;
  appearance:none;
}
.gallery-v240-photo-shell::before{
  content:"";
  position:absolute;
  inset:-1px;
  z-index:5;
  border-radius:inherit;
  padding:1.5px;
  pointer-events:none;
  background:linear-gradient(115deg,rgba(255,255,255,.60),rgba(131,149,87,.72),rgba(195,97,60,.54),rgba(255,255,255,.18));
  background-size:220% 100%;
  animation:galleryV240Edge 5.8s linear infinite;
  -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
}
.gallery-v240-photo-shell::after{
  content:"";
  position:absolute;
  inset:auto 0 0;
  height:24%;
  z-index:2;
  pointer-events:none;
  background:linear-gradient(180deg,transparent,rgba(19,27,15,.30));
}
.gallery-v240-photo-card img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  background:#1d2818;
  transform:scale(1.01);
  transition:transform 1s cubic-bezier(.22,1,.36,1),filter .45s ease;
}
.gallery-v240-photo-card.is-active img{
  transform:scale(1);
}
.gallery-v240-photo-number{
  position:absolute;
  z-index:7;
  left:16px;
  top:16px;
  min-width:42px;
  height:30px;
  padding:0 10px;
  display:grid;
  place-items:center;
  border-radius:999px;
  color:#fff;
  background:rgba(28,38,21,.52);
  border:1px solid rgba(255,255,255,.20);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:11px;
  font-weight:900;
  letter-spacing:.12em;
}
.gallery-v240-photo-open{
  position:absolute;
  z-index:7;
  right:16px;
  bottom:16px;
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:#fff;
  background:rgba(131,149,87,.72);
  border:1px solid rgba(255,255,255,.30);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  font-size:17px;
  opacity:.9;
  transition:transform .25s ease,background .25s ease;
}
.gallery-v240-photo-card.is-active .gallery-v240-photo-open{
  background:rgba(195,97,60,.82);
}
.gallery-v240-photo-nav{
  position:absolute;
  z-index:60;
  top:48%;
  width:52px;
  height:52px;
  margin-top:-26px;
  border-radius:50%;
  border:1px solid rgba(85,105,62,.24);
  display:grid;
  place-items:center;
  color:#536b3b;
  background:rgba(255,255,255,.82);
  box-shadow:0 14px 34px rgba(45,58,34,.14),inset 0 1px 0 rgba(255,255,255,.96);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  cursor:pointer;
  transition:transform .25s ease,background .25s ease;
}
.gallery-v240-photo-prev{left:clamp(2px,2vw,26px)}
.gallery-v240-photo-next{right:clamp(2px,2vw,26px)}
.gallery-v240-photo-nav:hover,
.gallery-v240-photo-nav:focus-visible{
  transform:scale(1.08);
  background:#fff;
  outline:none;
}
.gallery-v240-photo-caption{
  position:relative;
  z-index:70;
  max-width:780px;
  margin:-16px auto 0;
  padding:22px 26px 24px;
  text-align:center;
  border-radius:26px;
  background:rgba(255,255,255,.84);
  border:1px solid rgba(131,149,87,.16);
  box-shadow:0 24px 52px rgba(46,60,33,.10),inset 0 1px 0 rgba(255,255,255,.95);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}
.gallery-v240-photo-kicker{
  display:block;
  margin-bottom:8px;
  color:#839557;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:10px;
  font-weight:900;
  letter-spacing:.18em;
}
.gallery-v240-photo-caption h3{
  margin:0 0 8px;
  color:#2d3d24;
  font-size:clamp(26px,3vw,42px);
  line-height:1.05;
  text-wrap:balance;
}
.gallery-v240-photo-caption p{
  margin:0 auto;
  max-width:660px;
  color:#60685a;
  font:400 15px/1.68 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
.gallery-v240-photo-progress{
  margin-top:13px;
  display:inline-flex;
  align-items:baseline;
  gap:5px;
  color:#819065;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
.gallery-v240-photo-progress strong{
  color:#536b3b;
  font-size:22px;
}
.gallery-v240-photo-progress span{
  font-size:12px;
  font-weight:800;
}
.gallery-v240-photo-stage.is-dragging .gallery-v240-photo-card{
  transition-duration:.18s;
}
.gallery-v240-photo-stage:focus-visible{
  outline:2px solid rgba(131,149,87,.46);
  outline-offset:8px;
  border-radius:30px;
}
@media(hover:hover){
  .gallery-v240-photo-card.is-active .gallery-v240-photo-shell:hover img{
    transform:scale(1.025);
  }
  .gallery-v240-photo-card.is-active .gallery-v240-photo-shell:hover .gallery-v240-photo-open{
    transform:scale(1.08);
  }
}
@keyframes galleryV240Edge{
  to{background-position:220% 0}
}

/* Full-image lightbox */
.gallery-v240-lightbox{
  position:fixed;
  inset:0;
  z-index:10050;
  display:grid;
  place-items:center;
  padding:clamp(18px,4vw,54px);
  background:rgba(17,23,13,.90);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
}
.gallery-v240-lightbox[hidden]{display:none}
.gallery-v240-lightbox img{
  display:block;
  max-width:min(92vw,1500px);
  max-height:86vh;
  width:auto;
  height:auto;
  object-fit:contain;
  border-radius:22px;
  border:1px solid rgba(255,255,255,.20);
  box-shadow:0 34px 100px rgba(0,0,0,.34);
}
.gallery-v240-lightbox-close,
.gallery-v240-lightbox-prev,
.gallery-v240-lightbox-next{
  position:absolute;
  z-index:2;
  width:50px;
  height:50px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.24);
  display:grid;
  place-items:center;
  color:#fff;
  background:rgba(131,149,87,.72);
  cursor:pointer;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.gallery-v240-lightbox-close{
  top:18px;
  right:18px;
  font-size:28px;
}
.gallery-v240-lightbox-prev{
  left:18px;
  top:50%;
  transform:translateY(-50%);
}
.gallery-v240-lightbox-next{
  right:18px;
  top:50%;
  transform:translateY(-50%);
}

@media(max-width:1024px){
  .gallery-v240-photo-experience{--photo-w:min(68vw,590px)}
  .gallery-v240-photo-stage{min-height:610px}
}
@media(max-width:767px){
  .gallery-v240-photo-experience{--photo-w:min(82vw,470px)}
  .gallery-v240-photo-stage{
    min-height:520px;
    perspective:1200px;
  }
  .gallery-v240-photo-card{
    top:47%;
    transform:
      translate(-50%,-50%)
      translateX(calc(var(--offset) * clamp(108px,27vw,170px)))
      translateZ(calc(var(--depth) * -115px))
      rotateY(calc(var(--offset) * -12deg))
      scale(calc(1 - var(--depth) * .05));
  }
  .gallery-v240-photo-shell{border-radius:24px}
  .gallery-v240-photo-nav{
    width:44px;
    height:44px;
    margin-top:-22px;
  }
  .gallery-v240-photo-caption{
    margin:-18px 12px 0;
    padding:18px 16px 20px;
    border-radius:22px;
  }
  .gallery-v240-photo-caption p{
    font-size:13.5px;
    line-height:1.55;
  }
  .gallery-v240-lightbox-prev,
  .gallery-v240-lightbox-next{
    top:auto;
    bottom:18px;
    transform:none;
  }
}
@media(max-width:420px){
  .gallery-v240-photo-experience{--photo-w:86vw}
  .gallery-v240-photo-stage{min-height:455px}
  .gallery-v240-photo-card{
    transform:
      translate(-50%,-50%)
      translateX(calc(var(--offset) * 100px))
      translateZ(calc(var(--depth) * -98px))
      rotateY(calc(var(--offset) * -10deg))
      scale(calc(1 - var(--depth) * .045));
  }
}
@media(prefers-reduced-motion:reduce){
  .gallery-v240-photo-card,
  .gallery-v240-photo-card img,
  .gallery-v240-photo-shell::before{
    transition:none!important;
    animation:none!important;
  }
}

html.gallery-v240-lightbox-open,html.gallery-v240-lightbox-open body{overflow:hidden!important}

/* =========================================================
   V20.44 — Contact hero mobile refinement only
   Keeps the Contact title, intro and details balanced over the photo.
   ========================================================= */
@media(max-width:767px){
  .contact-v240-hero{
    min-height:clamp(540px,72svh,660px);
  }

  .contact-v240-hero-media img{
    object-position:56% center;
    transform:scale(1.02);
  }

  .contact-v240-hero-wash{
    background:
      linear-gradient(180deg,rgba(50,61,39,.08) 0%,rgba(64,77,47,.24) 38%,rgba(55,67,40,.82) 100%),
      linear-gradient(90deg,rgba(131,149,87,.50) 0%,rgba(131,149,87,.16) 70%,rgba(131,149,87,.05) 100%);
  }

  .contact-v240-hero-copy,
  [dir="rtl"] .contact-v240-hero-copy{
    left:20px;
    right:20px;
    bottom:max(28px,env(safe-area-inset-bottom));
    width:auto;
    max-width:560px;
    margin:0 auto;
  }

  .contact-v240-eyebrow{
    min-height:30px;
    padding:7px 11px;
    font-size:10px;
    letter-spacing:.14em;
  }

  .contact-v240-hero-copy h1{
    max-width:15ch;
    margin:12px 0 12px;
    font-size:clamp(36px,10vw,50px);
    line-height:.98;
    letter-spacing:-.032em;
    text-wrap:balance;
  }

  .contact-v240-hero-copy p{
    max-width:100%;
    margin:0;
    font-size:14px;
    line-height:1.55;
    text-wrap:pretty;
  }

  [dir="rtl"] .contact-v240-hero-copy{
    text-align:right;
  }
}

@media(max-width:380px){
  .contact-v240-hero{
    min-height:clamp(560px,78svh,650px);
  }

  .contact-v240-hero-copy,
  [dir="rtl"] .contact-v240-hero-copy{
    left:16px;
    right:16px;
    bottom:max(22px,env(safe-area-inset-bottom));
  }

  .contact-v240-hero-copy h1{
    font-size:clamp(34px,10vw,44px);
  }

  .contact-v240-hero-copy p{
    font-size:13px;
    line-height:1.5;
  }
}

/* =========================================================
   V20.46 — Galerie iPhone/WebKit stability
   Rendering/memory optimization only; visual design is unchanged.
   ========================================================= */

/* Prevent first-paint GPU allocation for all 51 photo cards. */
.gallery-v240-photo-experience:not(.is-v246-ready)
.gallery-v240-photo-card:not(.is-active){
  display:none!important;
}
.gallery-v240-photo-experience:not(.is-v246-ready)
.gallery-v240-photo-card.is-active{
  --offset:0;
  --depth:0;
}

/* Once initialized, cards beyond distance 5 are already opacity:0 in
   the original design, so removing them from layout/paint changes no
   visible content while dramatically reducing WebKit compositor load. */
.gallery-v240-photo-experience.is-v246-ready
.gallery-v240-photo-card:not(.is-v246-rendered){
  display:none!important;
}

/* will-change is a compositor hint, not a visual effect. Keep it only
   where an animation is actually visible. */
.gallery-v240-photo-card{
  will-change:auto!important;
}
.gallery-v240-photo-card.is-active,
.gallery-v240-photo-card[data-distance="1"]{
  will-change:transform!important;
}

/* Apply the same invisible-card windowing only to the Galerie video
   carousel. Other pages using the shared video component are untouched. */
.gallery-v228-video-experience:not(.is-v246-ready)
.home-v227-video-card:not(.is-active){
  display:none!important;
}
.gallery-v228-video-experience:not(.is-v246-ready)
.home-v227-video-card.is-active{
  --offset:0;
  --depth:0;
}
.gallery-v228-video-experience.is-v246-ready
.home-v227-video-card:not(.is-v246-rendered){
  display:none!important;
}
.gallery-v228-video-experience .home-v227-video-card{
  will-change:auto!important;
}
.gallery-v228-video-experience .home-v227-video-card.is-active,
.gallery-v228-video-experience .home-v227-video-card[data-distance="1"]{
  will-change:transform!important;
}

