.elementor-14741 .elementor-element.elementor-element-4325355{--display:flex;--min-height:417px;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--justify-content:center;--background-transition:0.3s;--overlay-opacity:0.26;}.elementor-14741 .elementor-element.elementor-element-4325355:not(.elementor-motion-effects-element-type-background), .elementor-14741 .elementor-element.elementor-element-4325355 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://www.campdudomaine.com/app/uploads/2023/09/famille-petit-dejeuner-hebergement-camp-du-domaine.jpg");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-14741 .elementor-element.elementor-element-4325355::before, .elementor-14741 .elementor-element.elementor-element-4325355 > .elementor-background-video-container::before, .elementor-14741 .elementor-element.elementor-element-4325355 > .e-con-inner > .elementor-background-video-container::before, .elementor-14741 .elementor-element.elementor-element-4325355 > .elementor-background-slideshow::before, .elementor-14741 .elementor-element.elementor-element-4325355 > .e-con-inner > .elementor-background-slideshow::before, .elementor-14741 .elementor-element.elementor-element-4325355 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';background-color:transparent;background-image:linear-gradient(0deg, #2E49C7 12%, var( --e-global-color-3e386dd ) 58%);}.elementor-14741 .elementor-element.elementor-element-4325355::before{filter:brightness( 100% ) contrast( 100% ) saturate( 100% ) blur( 0px ) hue-rotate( 0deg );}.elementor-14741 .elementor-element.elementor-element-4325355, .elementor-14741 .elementor-element.elementor-element-4325355::before{--border-transition:0.3s;}.elementor-14741 .elementor-element.elementor-element-e94f2fa .elementor-heading-title{color:#FFFFFF;font-family:"Work Sans", Sans-serif;font-size:78px;font-weight:600;letter-spacing:-1.6px;}.elementor-14741 .elementor-element.elementor-element-e94f2fa > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-14741 .elementor-element.elementor-element-e94f2fa.elementor-element{--align-self:flex-start;}.elementor-14741 .elementor-element.elementor-element-74233b6{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--background-transition:0.3s;}.elementor-14741 .elementor-element.elementor-element-a03dc28{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--align-items:center;--background-transition:0.3s;--margin-top:0px;--margin-right:0px;--margin-bottom:0px;--margin-left:0px;--padding-top:60px;--padding-right:60px;--padding-bottom:60px;--padding-left:60px;}.elementor-14741 .elementor-element.elementor-element-c3977b3{text-align:center;color:var( --e-global-color-text );font-family:"Poppins", Sans-serif;font-size:16px;font-weight:400;width:var( --container-widget-width, 85% );max-width:85%;--container-widget-width:85%;--container-widget-flex-grow:0;}.elementor-14741 .elementor-element.elementor-element-66043bb{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--background-transition:0.3s;}.elementor-14741 .elementor-element.elementor-element-9c23fc8{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--background-transition:0.3s;}.elementor-14741 .elementor-element.elementor-element-1d5afc1{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--background-transition:0.3s;}.elementor-14741 .elementor-element.elementor-element-c3e5999{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--background-transition:0.3s;}.elementor-14741 .elementor-element.elementor-element-8fe1d56{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--background-transition:0.3s;}@media(max-width:767px){.elementor-14741 .elementor-element.elementor-element-4325355{--min-height:156px;}.elementor-14741 .elementor-element.elementor-element-e94f2fa .elementor-heading-title{font-size:35px;line-height:35px;}.elementor-14741 .elementor-element.elementor-element-a03dc28{--padding-top:16px;--padding-right:16px;--padding-bottom:16px;--padding-left:16px;}.elementor-14741 .elementor-element.elementor-element-c3977b3{width:100%;max-width:100%;}}@media(min-width:768px){.elementor-14741 .elementor-element.elementor-element-4325355{--content-width:1249px;}.elementor-14741 .elementor-element.elementor-element-a03dc28{--content-width:1440px;}}/* Start custom CSS for html, class: .elementor-element-1e2a36a */:root{
  --cd-blue: #004f95;
  --cd-ink: #1b1f24;
  --cd-muted: #5b6572;
  --cd-line: rgba(27,31,36,.12);
  --cd-soft: #f6f7f9;
  --cd-radius: 18px;
  --cd-shadow: 0 10px 30px rgba(0,0,0,.08);
  --cd-yellow: #fecc00;
}

.cdWrap{ width:min(1120px, calc(100% - 40px)); margin:0 auto; }

.cdSkipLink{
  position:absolute; left:-9999px; top:auto; width:1px; height:1px; overflow:hidden;
}
.cdSkipLink:focus{
  left:16px; top:16px; width:auto; height:auto; padding:10px 12px;
  background:#fff; border:1px solid var(--cd-line); border-radius:12px; box-shadow:var(--cd-shadow);
}

/* Focus visible (clavier) */
.cdTopbar__cta:focus-visible,
.cdTopbarMobileCta__a:focus-visible,
.cdBtn:focus-visible,
.cdProof__item:focus-visible{
  outline:3px solid rgba(0,79,149,.35);
  outline-offset:3px;
}

.cdTopbar{ background:var(--cd-yellow); color:var(--cd-ink); }
.cdTopbar__inner{
  display:flex; gap:14px; align-items:center; justify-content:space-between;
  padding:10px 0; flex-wrap:wrap;
}
.cdTopbar__badge{
  display:inline-flex; align-items:center;
  background:rgba(0,0,0,.12);
  padding:6px 10px; border-radius:999px;
  font-weight:800; font-size:13px;
  color:var(--cd-ink);
}
.cdTopbar__text{ opacity:.95; font-size:14px; color:var(--cd-ink); }
.cdTopbar__cta{
  display:inline-flex; align-items:center; justify-content:center;
  padding:8px 12px; border-radius:999px;
  background:#fff;
  color:var(--cd-ink) !important;
  font-weight:800; font-size:14px;
  text-decoration:none;
  border:1px solid rgba(0,0,0,.15);
}
.cdTopbar__cta:visited{ color:var(--cd-ink) !important; }
.cdTopbar__cta *{ color:var(--cd-ink) !important; }

.cdTopbarMobileCta{ display:none; }

.cdHero{ padding:34px 0 22px; border-bottom:1px solid var(--cd-line); }
.cdHero__grid{
  display:grid; grid-template-columns:1.2fr .8fr;
  gap:28px; align-items:center;
}
.cdHero__lead{
  margin:10px 0 16px;
  color:var(--cd-ink);
  font-size:18px;
  max-width:none;
  text-align:justify;
  hyphens:auto;
}

.cdHero__bullets{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:0 0 18px;
  padding:0;
  list-style:none;
}

.cdChip{
  border:1px solid var(--cd-line);
  background:#fff;
  border-radius:999px;
  padding:8px 10px;
  font-size:13px;
  color:var(--cd-ink);
}

.cdHero__actions{ display:flex; gap:12px; flex-wrap:wrap; }

.cdBtn{
  display:inline-flex; align-items:center; justify-content:center;
  padding:12px 16px;
  border-radius:999px;
  border:1px solid var(--cd-line);
  font-weight:850;
  font-size:14px;
  text-decoration:none;
}
.cdBtn--primary{
  background:var(--cd-blue);
  color:#fff !important;
  border-color:transparent;
}
.cdBtn--primary:visited{ color:#fff !important; }
.cdBtn--primary *{ color:#fff !important; }

.cdBtn--ghost{ background:#fff; color:var(--cd-blue); }
.cdBtn--ghost:hover{ background:var(--cd-soft); }

.cdHero__img{
  width:100%;
  aspect-ratio: 16 / 9; /* réserve l’espace => réduit le CLS sans deviner width/height */
  height:auto;
  object-fit:cover;
  border-radius:var(--cd-radius);
  border:1px solid var(--cd-line);
  box-shadow:var(--cd-shadow);
  display:block;
}

.cdProof{ padding:18px 0; background:var(--cd-soft); border-bottom:1px solid var(--cd-line); }

.cdProof__grid{
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:14px;
}

.cdProof__toggle{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  margin:0 !important;
  padding:0 !important;
  opacity:0 !important;
  pointer-events:none !important;
  appearance:none !important;
  -webkit-appearance:none !important;
  border:0 !important;
  outline:0 !important;
  clip:rect(0 0 0 0) !important;
  clip-path:inset(50%) !important;
  overflow:hidden !important;
}

.cdProof__item{
  background:#fff;
  border:1px solid var(--cd-line);
  border-radius:var(--cd-radius);
  padding:12px 12px;
  display:flex; gap:10px; align-items:flex-start;
  cursor:pointer;
}
.cdProof__icon{ font-size:18px; line-height:1; }
.cdProof__item p{ margin:0; color:var(--cd-ink); font-size:14px; }

@media (max-width: 980px){
  .cdHero__grid{ grid-template-columns:1fr; }
  .cdProof__grid{ grid-template-columns:repeat(2, 1fr); }
  .cdHero__lead{ text-align:left; }
}

@media (max-width: 520px){
  .cdWrap{ width:calc(100% - 28px); }
  .cdHero, .cdTopbar, .cdProof{ overflow-x:hidden; }
  img, svg{ max-width:100%; height:auto; }

  .cdTopbar__inner{ padding:10px 0; gap:8px; align-items:stretch; }
  .cdTopbar__badge{
    width:100%;
    justify-content:center;
    padding:8px 12px;
    border-radius:14px;
    background:rgba(255,255,255,.35);
    border:2px dashed rgba(0,0,0,.22);
    font-size:12.5px;
    font-weight:900;
  }
  .cdTopbar__text{
    width:100%;
    font-size:12.5px;
    line-height:1.25;
    margin:0;
  }
  .cdTopbar__cta{ display:none; }

  .cdTopbarMobileCta{ display:block; padding:10px 0 0; }
  .cdTopbarMobileCta__a{
    display:block;
    width:100%;
    text-align:center;
    padding:10px 12px;
    border-radius:14px;
    background:#fff;
    color:var(--cd-ink) !important;
    font-weight:850;
    font-size:13px;
    text-decoration:none;
    border:1px solid rgba(0,0,0,.18);
  }
  .cdTopbarMobileCta__a:visited{ color:var(--cd-ink) !important; }

  .cdHero{ border-bottom:0; }
  .cdHero__media{ display:none; }

  .cdHero__copy h2{ overflow-wrap:anywhere; margin-bottom:10px; }
  .cdHero__copy h2::after{
    content:"";
    display:block;
    width:100%;
    height:220px;
    margin:10px 0 10px;
    border-radius:var(--cd-radius);
    border:1px solid var(--cd-line);
    box-shadow:var(--cd-shadow);
    background-image:url("https://www.campdudomaine.com/app/uploads/2026/01/vacances-famille-camping-avril-printemps-paques-bormes-lavandou-camp-du-domaine.png");
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;
  }

  .cdHero__lead{
    font-size:14.5px;
    line-height:1.45;
    text-align:justify;
    margin:0 0 12px;
  }

  .cdHero__bullets{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
    margin:0 0 14px;
  }
  .cdHero__bullets .cdChip--code{ display:none; }

  .cdChip{
    padding:8px 10px;
    font-size:12px;
    line-height:1.25;
    text-align:center;
    border-radius:14px;
    white-space:normal;
    word-break:break-word;
    min-width:0;
  }

  .cdHero__actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
  }
  .cdHero__actions .cdBtn{
    padding:10px 10px;
    font-size:13px;
    border-radius:14px;
    white-space:normal;
    min-width:0;
    text-align:center;
  }

  .cdProof{
    background:#fff;
    border:0;
    padding:16px 0 10px;
  }

  /* Deck */
  .cdProof__grid--stack{
    position:relative;
    display:block;
    height:260px;
    overflow:visible;
    touch-action:pan-x;
    user-select:none;
    -webkit-user-select:none;
  }

  .cdProof__grid--stack .cdProof__item{
    position:absolute;
    left:0; right:0; top:0;
    min-height:118px;
    padding:18px 16px;

    box-shadow:0 14px 34px rgba(0,0,0,.14);
    transition:transform .18s ease, box-shadow .18s ease;
    will-change:transform;

    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;
    gap:8px;
  }

  .cdProof__icon{ font-size:20px; }
  .cdProof__item p{ font-size:14.5px; line-height:1.35; }

  .cdProof__item.is-active{
    transform:translateY(0) scale(1);
    z-index:10;
    box-shadow:0 18px 44px rgba(0,0,0,.18);
  }
  .cdProof__item.is-next1{ transform:translateY(34px)  scale(.985); z-index:6; }
  .cdProof__item.is-next2{ transform:translateY(68px)  scale(.97);  z-index:5; }
  .cdProof__item.is-next3{ transform:translateY(102px) scale(.955); z-index:4; }

  .cdProof__grid--stack .cdProof__item:active{
    transform:translateY(0) scale(.99);
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-f5d586f *//* SECTION 3 — DANS LE CAMPING (styles isolés) */

.cdSection{ padding:34px 0; }

.cdSection--alt{
  background: var(--cd-soft2);
  border-top:1px solid var(--cd-line);
  border-bottom:1px solid var(--cd-line);
}

/* Intro pleine largeur + justifiée */
#activites-camping .cdSection__intro{
  color:var(--cd-muted);
  margin-top:10px;
  max-width:none;
  text-align:justify;
  hyphens:auto;
}

/* Override H3 local (règle d’override) */
#activites-camping .cdH3{
  font-size:14.5px !important;
  line-height:1.3 !important;
  margin:0 0 6px !important;
  font-weight:700 !important;
  color:var(--cd-ink);

  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

#activites-camping .cdH3--plain{
  -webkit-line-clamp: unset;
  display:block;
  overflow:visible;
}

/* Highlight box */
.cdHighlight{
  margin-top:16px;
  background:#fff;
  border:1px solid var(--cd-line);
  border-radius: var(--cd-radius);
  box-shadow: var(--cd-shadow);
  padding:14px;
}

.cdHighlight__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
}

.cdHighlight__sub{
  margin:0;
  color:var(--cd-muted);
  font-size:13px;
  max-width:70ch;
}

/* Pills (vraie liste) */
.cdPills{
  margin-top:12px;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  padding:0;
  list-style:none;
}

.cdPill{
  display:inline-flex;
  align-items:center;
  border:1px solid var(--cd-line);
  background:#fff;
  border-radius:999px;
  padding:8px 10px;
  font-size:13px;
  color:var(--cd-ink);
}

.cdPill--accent{
  border-color: rgba(0,79,149,.35);
  background: rgba(0,79,149,.06);
  font-weight:750;
}

/* Cards */
.cdGridCards{
  display:grid;
  grid-template-columns: repeat(4, 1fr);
  gap:14px;
  margin-top:16px;
}

.cdGridCards--3{ grid-template-columns: repeat(3, 1fr); }

.cdCard{
  background:#fff;
  border:1px solid var(--cd-line);
  border-radius:var(--cd-radius);
  padding:16px;
  box-shadow: var(--cd-shadow);
}

#activites-camping .cdCard p{
  margin:0;
  color:var(--cd-muted);
  font-size:14px;
}

/* Mini note */
.cdMiniNote{
  margin-top:12px;
  background: var(--cd-soft);
  border:1px solid var(--cd-line);
  border-radius: var(--cd-radius);
  padding:12px 14px;
}

.cdMiniNote p{
  margin:0;
  color:var(--cd-ink);
  font-size:13.5px;
}

/* Focus visible (clavier) */
#activites-camping .cdPill:focus-visible,
#activites-camping .cdCard:focus-visible{
  outline:3px solid rgba(0,79,149,.35);
  outline-offset:3px;
}

@media (max-width: 980px){
  .cdGridCards--3{ grid-template-columns: repeat(2, 1fr); }
  .cdHighlight__head{ flex-direction:column; }
}

@media (max-width: 520px){
  .cdGridCards--3{ grid-template-columns: 1fr; }

  /* Pills mobile-friendly : carrousel horizontal (swipe) */
  #activites-camping .cdPills{
    display:flex;
    flex-wrap:nowrap;
    overflow-x:auto;
    gap:10px;
    padding:4px 4px 10px;
    margin-left:-4px;
    margin-right:-4px;

    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-x: contain;
  }

  #activites-camping .cdPills::-webkit-scrollbar{ height:8px; }

  #activites-camping .cdPills::-webkit-scrollbar-thumb{
    background: rgba(27,31,36,.18);
    border-radius: 999px;
  }

  #activites-camping .cdPills::-webkit-scrollbar-track{ background: transparent; }

  #activites-camping .cdPill{
    flex: 0 0 auto;
    white-space: nowrap;
    scroll-snap-align: start;
    padding:9px 12px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-058bd56 *//* SECTION 4 — LE BON PLAN D’AVRIL */

#offre{
  background:#fff;
  border-top:1px solid var(--cd-line);
  border-bottom:1px solid var(--cd-line);
  padding:34px 0;
}

#offre .cdWrap{ width:min(1120px, calc(100% - 40px)); margin:0 auto; }

#offre .cdOffer__layout{
  display:grid;
  grid-template-columns: 1.2fr .8fr;
  gap:20px;
  align-items:start;
}

#offre h2{ margin:0 0 10px; }

#offre .cdOffer__lead{
  font-size:16px;
  color:var(--cd-ink);
  margin:0 0 14px;
  text-align:justify;
  hyphens:auto;
}

#offre .cdCoupon{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  border:1px dashed rgba(27,31,36,.28);
  background:#fff;
  border-radius:14px;
  padding:12px;
  margin:10px 0;
  justify-content:center;
  text-align:center;
}

#offre .cdCoupon__label{
  font-weight:850;
  color:var(--cd-ink);
}

#offre .cdCoupon__code{
  font-weight:950;
  font-size:20px;
  letter-spacing:.5px;
  color:var(--cd-ink);
}

#offre .cdCoupon__hint{
  flex-basis:100%;
  color:var(--cd-muted);
  font-size:13px;
}

#offre .cdOffer__right{ align-self:start; }

#offre .cdOffer__box{
  background:#fff;
  border:1px solid var(--cd-line);
  border-radius: var(--cd-radius);
  padding:18px;
  box-shadow: var(--cd-shadow);
}

/* Override H3 local */
#offre .cdH3{
  font-size:14.5px !important;
  line-height:1.3 !important;
  margin:0 0 8px !important;
  font-weight:700 !important;
  color:var(--cd-ink);
}

#offre .cdList{ margin:10px 0 0; padding-left:18px; }
#offre .cdList--compact li{ margin:6px 0; color:var(--cd-ink); }

#offre .cdSmall{
  font-size:13px;
  color:var(--cd-muted);
  margin:10px 0 0;
  text-align:justify;
  hyphens:auto;
}

#offre .cdBtn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:12px 16px;
  border-radius:999px;
  border:1px solid var(--cd-line);
  font-weight:850;
  font-size:14px;
  text-decoration:none;
  margin-top:12px;
  -webkit-appearance:none;
  appearance:none;
}

#offre .cdBtn--primary{
  background:var(--cd-blue);
  color:#fff !important;
  border-color:transparent;
}

#offre .cdBtn--primary:visited{ color:#fff !important; }

/* Focus clavier propre */
#offre .cdBtn:focus-visible{
  outline:3px solid rgba(0,79,149,.35);
  outline-offset:3px;
}

/* Mention légale */
#offre .cdOffer__legal{
  margin:6px 0 0;
  font-size:12px;
  color:rgba(27,31,36,.55);
  font-style:italic;
}

@media (max-width: 980px){
  #offre .cdOffer__layout{ grid-template-columns: 1fr; }
}

@media (max-width: 520px){
  #offre .cdWrap{ width: calc(100% - 28px); }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-277d734 *//* ================================================= */
/* SECTION 5 BIS — SEMAINE TYPE */
/* ================================================= */

#semaine-type{
  padding:34px 0;
  border-top:1px solid var(--cd-line);
  border-bottom:1px solid var(--cd-line);
  background:#fff;
}

#semaine-type .cdSection__intro{
  color:var(--cd-muted);
  margin-top:10px;
  max-width:none;
  text-align:justify;
  hyphens:auto;
}

#semaine-type .cdWeekNote{
  display:inline-block;
  margin-left:6px;
  font-size:13px;
  color:rgba(27,31,36,.60);
  font-style:italic;
}

/* Override H3 local */
#semaine-type .cdH3{
  font-size:14.5px !important;
  line-height:1.3 !important;
  margin:0 0 6px !important;
  font-weight:700 !important;
  color:var(--cd-ink);
}

/* ================================================= */
/* DESKTOP */
/* ================================================= */

#semaine-type .cdWeekDesktop{ display:block; }
#semaine-type .cdWeekMobile{ display:none; }

#semaine-type .cdWeekScroller{
  margin-top:16px;
  border:1px solid var(--cd-line);
  border-radius: var(--cd-radius);
  padding:14px;
  overflow:auto;
  -webkit-overflow-scrolling: touch;
  background: linear-gradient(180deg, rgba(0,79,149,.06), #fff);
  box-shadow: 0 10px 28px rgba(0,0,0,.06);
}

#semaine-type .cdWeekGrid{
  display:grid;
  grid-template-columns:120px repeat(7, minmax(175px, 1fr));
  gap:12px;
  min-width:1220px;
}

/* En-têtes jours */
#semaine-type .cdWeekHead{
  position:relative;
  background:#fff;
  border:1px solid var(--cd-line);
  border-radius:16px;
  padding:10px;
  text-align:center;
  font-weight:900;
  font-size:13px;
  box-shadow:0 10px 26px rgba(0,0,0,.06);
  overflow:hidden;
}

#semaine-type .cdWeekHead::before{
  content:"";
  position:absolute;
  top:0; left:0;
  width:100%; height:6px;
}

#semaine-type .cdWeekHead--corner{
  background:transparent;
  border:0;
  box-shadow:none;
}
#semaine-type .cdWeekHead--corner::before{ display:none; }

/* Labels Matin / Après-midi */
#semaine-type .cdWeekLabel{
  position:sticky;
  left:0;
  z-index:2;
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(0,79,149,.06);
  border:1px solid rgba(0,79,149,.18);
  color:var(--cd-blue);
  font-weight:950;
  border-radius:16px;
  padding:10px;
}

/* Cellules */
#semaine-type .cdWeekCell{
  position:relative;
  background:#fff;
  border:1px solid var(--cd-line);
  border-radius:var(--cd-radius);
  padding:12px;
  box-shadow:var(--cd-shadow);
}

#semaine-type .cdWeekCell::before{
  content:"";
  position:absolute;
  top:0; left:0;
  width:100%; height:6px;
}

#semaine-type .cdWeekMeta{
  font-size:12.5px;
  color:rgba(27,31,36,.70);
}

#semaine-type .cdWeekMeta--bonus{
  margin-top:8px;
  padding-top:8px;
  border-top:1px dashed rgba(27,31,36,.16);
}

/* Accent îles */
#semaine-type .cdWeekCell--accent{
  border-color:rgba(0,79,149,.28);
  background:linear-gradient(180deg, rgba(0,79,149,.07), #fff);
}
#semaine-type .cdWeekCell--accent::before{ background:rgba(0,79,149,.48); }

/* Couleurs jours */
#semaine-type .cdWeekHead--lun::before,
#semaine-type .cdWeekCell--lun::before{ background:#004F95; }

#semaine-type .cdWeekHead--mar::before,
#semaine-type .cdWeekCell--mar::before{ background:#7DD0F5; }

#semaine-type .cdWeekHead--mer::before,
#semaine-type .cdWeekCell--mer::before{ background:#FECC00; }

#semaine-type .cdWeekHead--jeu::before,
#semaine-type .cdWeekCell--jeu::before{ background:#F6A11A; }

#semaine-type .cdWeekHead--ven::before,
#semaine-type .cdWeekCell--ven::before{ background:#A7C800; }

#semaine-type .cdWeekHead--sam::before,
#semaine-type .cdWeekCell--sam::before{ background:#3F9B2E; }

#semaine-type .cdWeekHead--dim::before,
#semaine-type .cdWeekCell--dim::before{ background:#0B6B8C; }

/* ================================================= */
/* MOBILE */
/* ================================================= */

@media (max-width:520px){

  #semaine-type .cdWeekDesktop{ display:none; }
  #semaine-type .cdWeekMobile{ display:block; }

  #semaine-type .cdWeekTableWrap{
    margin-top:16px;
    border:1px solid var(--cd-line);
    border-radius:var(--cd-radius);
    overflow-x:auto;
    overflow-y:hidden;
    -webkit-overflow-scrolling: touch;
    background:#fff;
    box-shadow:0 10px 28px rgba(0,0,0,.06);
    scrollbar-width:none;
    overscroll-behavior-x:contain;
  }
  #semaine-type .cdWeekTableWrap::-webkit-scrollbar{ display:none; }

  #semaine-type .cdWeekTable{
    border-collapse:separate;
    border-spacing:10px;
    min-width:980px;
    padding:8px;
  }

  /* En-têtes */
  #semaine-type .cdWeekTh{
    position:sticky;
    top:0;
    z-index:6;
    background:#fff;
    border:1px solid var(--cd-line);
    border-radius:14px;
    padding:10px;
    font-weight:950;
    font-size:13px;
    text-align:center;
    box-shadow:0 8px 18px rgba(0,0,0,.06);
  }

  /* Colonne Moment */
  #semaine-type .cdWeekTh--moment,
  #semaine-type .cdWeekRowHead{
    position:sticky;
    left:0;
    z-index:7;
    background:#fff;
    min-width:56px;
    width:56px;
    writing-mode:vertical-rl;
    transform:rotate(180deg);
    display:grid;
    place-items:center;
    font-weight:950;
    box-shadow:12px 0 18px rgba(0,0,0,.10);
    border-right:1px solid rgba(27,31,36,.18);
  }

  #semaine-type .cdWeekRowHead{
    border:1px solid rgba(0,79,149,.22);
    color:var(--cd-blue);
    border-radius:14px;
  }

  /* Cellules mobile */
  #semaine-type .cdWeekTd{
    position:relative;
    background:#fff;
    border:1px solid var(--cd-line);
    border-radius:14px;
    padding:12px;
    min-width:160px;
    font-size:13.5px;
    line-height:1.35;
    box-shadow:0 8px 18px rgba(0,0,0,.05);
  }

  #semaine-type .cdWeekTd::before{
    content:"";
    position:absolute;
    top:0; left:0;
    width:100%; height:6px;
    border-radius:14px 14px 0 0;
  }

  #semaine-type .cdWeekTd__meta{
    display:block;
    margin-top:6px;
    font-size:12.5px;
    color:rgba(27,31,36,.70);
  }

  /* Couleurs mobile */
  #semaine-type .cdWeekTd--lun::before{ background:#004F95; }
  #semaine-type .cdWeekTd--mar::before{ background:#7DD0F5; }
  #semaine-type .cdWeekTd--mer::before{ background:#FECC00; }
  #semaine-type .cdWeekTd--jeu::before{ background:#F6A11A; }
  #semaine-type .cdWeekTd--ven::before{ background:#A7C800; }
  #semaine-type .cdWeekTd--sam::before{ background:#3F9B2E; }
  #semaine-type .cdWeekTd--dim::before{ background:#0B6B8C; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-2b75ed2 *//* SECTION 5 — LE JEU DU LAPIN (styles complets) */

#jeu{
  position: relative;
  overflow: hidden;
  padding:34px 0 95px;
}

#jeu .cdWrap{
  width:min(1120px, calc(100% - 40px));
  margin:0 auto;
  position: relative;
  z-index:1;
}

#jeu .cdSection__intro{
  color:var(--cd-muted);
  margin-top:10px;
  max-width:none;
  text-align:justify;
  hyphens:auto;
}

/* Étapes (ol/li) */
#jeu .cdSteps{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap:14px;
  margin-top:16px;
  padding:0;
  list-style:none;
}

#jeu .cdStep{
  background:#fff;
  border:1px solid var(--cd-line);
  border-radius: var(--cd-radius);
  padding:16px;
  box-shadow: 0 8px 22px rgba(0,0,0,.06);
  display:flex;
  gap:12px;
  align-items:flex-start;
}

/* Numéro */
#jeu .cdStep__num{
  width:34px;
  height:34px;
  border-radius:999px;
  display:grid;
  place-items:center;
  background: rgba(0,79,149,.10);
  border:1px solid rgba(0,79,149,.25);
  color: var(--cd-blue);
  font-weight:950;
  flex-shrink:0;
}

/* H3 cohérents */
#jeu .cdH3{
  font-size:14.5px !important;
  line-height:1.3 !important;
  margin:0 0 6px !important;
  font-weight:700 !important;
  color:var(--cd-ink);

  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

#jeu .cdStep__content p{
  margin:0;
  color:var(--cd-muted);
  font-size:14px;
}

/* Décor Pâques */
#jeu::after{
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:100%;
  height:190px;
  background-image: url("https://www.campdudomaine.com/app/uploads/2026/01/oeufs-paques.png");
  background-repeat:no-repeat;
  background-size:contain;
  background-position:bottom left;
  opacity:0.22;
  pointer-events:none;
  z-index:0;
}

/* Lien règlement */
#jeu .cdRuleLink{
  margin-top:14px;
  display:flex;
  justify-content:flex-end;
  position:relative;
  z-index:2;
  margin-bottom:-58px;
  padding-right:6px;
}

#jeu .cdRuleLink__a{
  font-size:12.5px;
  font-weight:400;
  color:rgba(27,31,36,.65);
  text-decoration:underline;
  text-underline-offset:3px;
  background: rgba(255,255,255,.78);
  padding:4px 6px;
  border-radius:6px;
}

#jeu .cdRuleLink__a:hover{
  color:var(--cd-blue);
}

#jeu .cdRuleLink__a:focus-visible{
  outline:3px solid rgba(0,79,149,.35);
  outline-offset:3px;
}

/* Responsive */
@media (max-width: 980px){
  #jeu .cdSteps{ grid-template-columns:1fr; }
  #jeu{ padding-bottom:100px; }
  #jeu::after{ height:175px; opacity:0.20; background-position:bottom left; }
  #jeu .cdRuleLink{ margin-bottom:-52px; }
}

@media (max-width: 520px){
  #jeu .cdWrap{ width: calc(100% - 28px); }
  #jeu{ padding-bottom:105px; }
  #jeu::after{
    height:165px;
    background-position:bottom center;
    opacity:0.18;
  }
  #jeu .cdRuleLink{
    justify-content:center;
    margin-bottom:-50px;
    padding-right:0;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-8d618ca *//* SECTION 6 — CTA FINAL (styles isolés) */

#reserver{
  padding:34px 0;
}

#reserver.cdSection--alt{
  background: var(--cd-soft2);
  border-top:1px solid var(--cd-line);
  border-bottom:1px solid var(--cd-line);
}

#reserver .cdWrap{
  width:min(1120px, calc(100% - 40px));
  margin:0 auto;
}

#reserver .cdCTA{
  text-align:center;
}

#reserver .cdCTA__text{
  max-width:80ch;
  margin:10px auto 16px;
  color:var(--cd-muted);
}

#reserver .cdCTA__actions{
  display:flex;
  justify-content:center;
  gap:12px;
  flex-wrap:wrap;
}

/* Boutons (verrouillés localement) */
#reserver .cdBtn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:12px 16px;
  border-radius:999px;
  border:1px solid var(--cd-line);
  font-weight:850;
  font-size:14px;
  text-decoration:none;
  -webkit-appearance:none;
  appearance:none;
}

#reserver .cdBtn--primary{
  background: var(--cd-blue);
  color:#fff !important;
  border-color:transparent;
}

#reserver .cdBtn--primary:visited{
  color:#fff !important;
}

/* Focus clavier propre */
#reserver .cdBtn:focus-visible{
  outline:3px solid rgba(0,79,149,.35);
  outline-offset:3px;
}

#reserver .cdSmall{
  font-size:13px;
  color:var(--cd-muted);
  margin:12px 0 0;
}

@media (max-width: 520px){
  #reserver .cdWrap{
    width: calc(100% - 28px);
  }
}/* End custom CSS */