.elementor-14139 .elementor-element.elementor-element-f397007{--display:flex;--min-height:600px;--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-14139 .elementor-element.elementor-element-f397007:not(.elementor-motion-effects-element-type-background), .elementor-14139 .elementor-element.elementor-element-f397007 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://www.campdudomaine.com/app/uploads/2025/12/plage-pramousquier-le-lavandou.jpg");background-position:bottom center;background-repeat:no-repeat;background-size:cover;}.elementor-14139 .elementor-element.elementor-element-f397007::before, .elementor-14139 .elementor-element.elementor-element-f397007 > .elementor-background-video-container::before, .elementor-14139 .elementor-element.elementor-element-f397007 > .e-con-inner > .elementor-background-video-container::before, .elementor-14139 .elementor-element.elementor-element-f397007 > .elementor-background-slideshow::before, .elementor-14139 .elementor-element.elementor-element-f397007 > .e-con-inner > .elementor-background-slideshow::before, .elementor-14139 .elementor-element.elementor-element-f397007 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';background-color:transparent;background-image:linear-gradient(0deg, var( --e-global-color-cba83dc ) 50%, var( --e-global-color-3e386dd ) 100%);}.elementor-14139 .elementor-element.elementor-element-f397007, .elementor-14139 .elementor-element.elementor-element-f397007::before{--border-transition:0.3s;}.elementor-14139 .elementor-element.elementor-element-47d08f1 .elementor-heading-title{color:#E0E3CE;font-family:"Qwitcher Grypen", Sans-serif;font-size:115px;font-weight:400;letter-spacing:-2.3px;}.elementor-14139 .elementor-element.elementor-element-47d08f1 > .elementor-widget-container{margin:80px 0px 0px 0px;}.elementor-14139 .elementor-element.elementor-element-5338a0d .elementor-heading-title{color:#FFFFFF;font-family:"Work Sans", Sans-serif;font-size:78px;font-weight:600;letter-spacing:-1.6px;}.elementor-14139 .elementor-element.elementor-element-2ff3a30{--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;border-style:solid;--border-style:solid;border-width:0px 0px 1px 0px;--border-width-top:0px;--border-width-right:0px;--border-width-bottom:1px;--border-width-left:0px;border-color:#D3D3D3;--border-color:#D3D3D3;--padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px;}.elementor-14139 .elementor-element.elementor-element-2ff3a30, .elementor-14139 .elementor-element.elementor-element-2ff3a30::before{--border-transition:0.3s;}.elementor-14139 .elementor-element.elementor-element-4ba2a83 .elementor-nav-menu .elementor-item{font-family:"Poppins", Sans-serif;font-size:15px;font-weight:400;}.elementor-14139 .elementor-element.elementor-element-4ba2a83 .elementor-nav-menu--main .elementor-item{color:#005296;fill:#005296;padding-left:0px;padding-right:0px;padding-top:15px;padding-bottom:15px;}.elementor-14139 .elementor-element.elementor-element-4ba2a83 .elementor-nav-menu--main .elementor-item:hover,
					.elementor-14139 .elementor-element.elementor-element-4ba2a83 .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-14139 .elementor-element.elementor-element-4ba2a83 .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-14139 .elementor-element.elementor-element-4ba2a83 .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-primary );fill:var( --e-global-color-primary );}.elementor-14139 .elementor-element.elementor-element-4ba2a83 .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-14139 .elementor-element.elementor-element-4ba2a83 .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:#84D0F0;}.elementor-14139 .elementor-element.elementor-element-4ba2a83 .e--pointer-framed .elementor-item:before,
					.elementor-14139 .elementor-element.elementor-element-4ba2a83 .e--pointer-framed .elementor-item:after{border-color:#84D0F0;}.elementor-14139 .elementor-element.elementor-element-4ba2a83 .elementor-nav-menu--main .elementor-item.elementor-item-active{color:var( --e-global-color-primary );}.elementor-14139 .elementor-element.elementor-element-4ba2a83 .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item.elementor-item-active:before,
					.elementor-14139 .elementor-element.elementor-element-4ba2a83 .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item.elementor-item-active:after{background-color:var( --e-global-color-accent );}.elementor-14139 .elementor-element.elementor-element-4ba2a83 .e--pointer-framed .elementor-item.elementor-item-active:before,
					.elementor-14139 .elementor-element.elementor-element-4ba2a83 .e--pointer-framed .elementor-item.elementor-item-active:after{border-color:var( --e-global-color-accent );}.elementor-14139 .elementor-element.elementor-element-4ba2a83{--e-nav-menu-divider-content:"";--e-nav-menu-divider-style:solid;--e-nav-menu-divider-width:6px;--e-nav-menu-divider-height:6px;--e-nav-menu-divider-color:var( --e-global-color-accent );--e-nav-menu-horizontal-menu-item-margin:calc( 150px / 2 );}.elementor-14139 .elementor-element.elementor-element-4ba2a83 .elementor-nav-menu--main:not(.elementor-nav-menu--layout-horizontal) .elementor-nav-menu > li:not(:last-child){margin-bottom:150px;}.elementor-14139 .elementor-element.elementor-element-4ba2a83 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-14139 .elementor-element.elementor-element-001eda3{--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-14139 .elementor-element.elementor-element-7372d2e{text-align:center;}.elementor-14139 .elementor-element.elementor-element-7372d2e .elementor-heading-title{font-family:"Work Sans", Sans-serif;font-size:33px;font-weight:700;line-height:46px;letter-spacing:0px;}.elementor-14139 .elementor-element.elementor-element-24db46a{text-align:justify;font-family:"Poppins", Sans-serif;font-weight:400;}.elementor-14139 .elementor-element.elementor-element-cd891d5{--display:flex;--background-transition:0.3s;}@media(max-width:767px){.elementor-14139 .elementor-element.elementor-element-f397007{--min-height:250px;}.elementor-14139 .elementor-element.elementor-element-47d08f1 .elementor-heading-title{font-size:60px;line-height:1.2em;}.elementor-14139 .elementor-element.elementor-element-47d08f1 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-14139 .elementor-element.elementor-element-5338a0d .elementor-heading-title{font-size:35px;line-height:35px;}.elementor-14139 .elementor-element.elementor-element-4ba2a83 .elementor-nav-menu--main .elementor-item{padding-top:10px;padding-bottom:10px;}.elementor-14139 .elementor-element.elementor-element-4ba2a83{--e-nav-menu-horizontal-menu-item-margin:calc( 30px / 2 );}.elementor-14139 .elementor-element.elementor-element-4ba2a83 .elementor-nav-menu--main:not(.elementor-nav-menu--layout-horizontal) .elementor-nav-menu > li:not(:last-child){margin-bottom:30px;}.elementor-14139 .elementor-element.elementor-element-001eda3{--padding-top:16px;--padding-right:16px;--padding-bottom:16px;--padding-left:16px;}.elementor-14139 .elementor-element.elementor-element-7372d2e{text-align:center;}.elementor-14139 .elementor-element.elementor-element-7372d2e .elementor-heading-title{font-size:20px;line-height:35px;}.elementor-14139 .elementor-element.elementor-element-24db46a{text-align:justify;font-size:15px;}}@media(min-width:768px){.elementor-14139 .elementor-element.elementor-element-f397007{--content-width:1240px;}.elementor-14139 .elementor-element.elementor-element-2ff3a30{--content-width:1380px;}.elementor-14139 .elementor-element.elementor-element-001eda3{--content-width:1440px;}}/* Start custom CSS for html, class: .elementor-element-ff47605 */:root{
  --bg: #ffffff;
  --ink: #0b1220;
  --muted: #556070;
  --line: rgba(11,18,32,.10);
  --card: #ffffff;
  --soft: #f6f8fb;

  /* Bleu officiel réservation */
  --brand: #004f95;
  --brand2: #004f95;

  --radius: 18px;
  --shadow: 0 18px 40px rgba(11,18,32,.10);
  --shadow2: 0 10px 24px rgba(11,18,32,.10);
  --max: 1180px;
}

*{ box-sizing: border-box; }
html, body{ height: 100%; }
body{
  margin: 0;
  font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji","Segoe UI Emoji";
  color: var(--ink);
  background: var(--bg);
  line-height: 1.55;
}

a{ color: inherit; text-decoration: none; }
a:hover{ text-decoration: underline; }

.wrap{
  width: min(var(--max), calc(100% - 40px));
  margin: 0 auto;
}

.btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 11px 14px;
  border-radius: 999px;
  border: 1px solid var(--line);
  background: #fff;
  box-shadow: 0 6px 16px rgba(11,18,32,.06);
  font-weight: 650;
  font-size: 14px;
  cursor: pointer;
  user-select: none;
  transition: transform .15s ease, box-shadow .15s ease, background .15s ease, border-color .15s ease;
}
.btn:hover{
  transform: translateY(-1px);
  box-shadow: 0 10px 22px rgba(11,18,32,.10);
  text-decoration: none;
}

/* ✅ CTA principal : bleu officiel + texte blanc, même si le thème surcharge les liens */
.btn--primary{
  background: #004f95;
  border-color: transparent;
  color: #fff !important;
}
.btn--primary:hover,
.btn--primary:focus,
.btn--primary:active,
.btn--primary:visited{
  color: #fff !important;
  text-decoration: none;
}

/* =========================
   Hero (sans dégradé de fond)
========================== */
.hero{
  padding: 26px 0 14px;
  background: #fff;
}

.heroGrid{
  display: grid;
  grid-template-columns: 1.15fr .85fr;
  gap: 22px;
  align-items: stretch;
}

.heroCard{
  border-radius: calc(var(--radius) + 8px);
  overflow: hidden;
  box-shadow: var(--shadow);
  background: #fff;
  border: 1px solid var(--line);
}

.heroMedia{
  min-height: 320px;
  background:
    linear-gradient(180deg, rgba(11,18,32,.30), rgba(11,18,32,.10)),
    url("https://images.unsplash.com/photo-1500375592092-40eb2168fd21?auto=format&fit=crop&w=1800&q=70");
  background-size: cover;
  background-position: center;
  display: flex;
  align-items: flex-end;
}

.heroMedia__content{
  padding: 22px 22px 18px;
  color: #fff;
}

/* (Si tu utilises un H2 sur la photo) */
.heroTitle{
  margin: 0;
  color: #fff !important;
  font-size: clamp(26px, 3.2vw, 42px);
  line-height: 1.08;
  letter-spacing: -.6px;
  text-shadow: 0 2px 14px rgba(0,0,0,.18);
}

/* Texte sous la photo */
.heroBelow{
  padding: 16px 18px 18px;
  background: #fff;
}
.heroLead{
  margin: 0;
  max-width: 70ch;
  font-size: 16px;
  color: #172235;
}

.heroAside{
  padding: 18px;
  display: grid;
  gap: 14px;
}

.asideBox{
  padding: 16px;
  border-radius: var(--radius);
  border: 1px solid var(--line);
  background: var(--soft);
}

.asideTitle{
  margin: 0 0 8px;
  font-size: 14px;
  font-weight: 800;
  letter-spacing: .2px;
  color: #1a2335;
}

.quickFacts{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.fact{
  padding: 12px;
  border-radius: 14px;
  background: #fff;
  border: 1px solid var(--line);
}

.fact b{ display: block; font-size: 13px; }
.fact span{ display: block; color: var(--muted); font-size: 13px; }

.chips{
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.chip{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  border-radius: 999px;
  background: #fff;
  border: 1px solid var(--line);
  font-size: 13px;
  color: #243048;
  box-shadow: 0 6px 14px rgba(11,18,32,.06);
}

/* =========================
   Layout main
========================== */
.main{
  padding: 14px 0 60px;
  background: #fff;
}

.mainGrid{
  display: grid;
  grid-template-columns: 300px 1fr;
  gap: 24px;
  align-items: start;
  margin-top: 22px;
}

/* TOC */
.toc{
  position: sticky;
  top: 16px;
  padding: 14px;
  border-radius: var(--radius);
  border: 1px solid var(--line);
  background: #fff;
  box-shadow: var(--shadow2);
}

.toc__head{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 10px;
}

.toc__title{
  margin: 0;
  font-size: 14px;
  font-weight: 900;
  letter-spacing: .2px;
}

.toc__toggle{
  display: none;
  padding: 8px 10px;
  border-radius: 999px;
  border: 1px solid var(--line);
  background: #fff;
  cursor: pointer;
  font-weight: 750;
  font-size: 13px;
}

.toc a{
  display: block;
  padding: 10px 10px;
  border-radius: 12px;
  font-size: 14px;
  color: #1a2335;
  border: 1px solid transparent;
}

.toc a:hover{
  background: rgba(0,79,149,.08);
  border-color: rgba(0,79,149,.18);
  text-decoration: none;
}

.toc a.is-active{
  background: rgba(0,79,149,.12);
  border-color: rgba(0,79,149,.22);
  color: #003a6e;
  font-weight: 800;
}

/* Content */
.content{
  display: grid;
  gap: 18px;
}

.section{
  padding: 18px 18px;
  border: 1px solid var(--line);
  border-radius: calc(var(--radius) + 4px);
  background: #fff;
  box-shadow: 0 10px 28px rgba(11,18,32,.06);
}

.section h2{
  margin: 0 0 10px;
  font-size: clamp(18px, 2.1vw, 26px);
  line-height: 1.2;
  letter-spacing: -.3px;
}

.section p{
  margin: 0 0 12px;
  color: #172235;
}
.section p:last-child{ margin-bottom: 0; }

.gridCards{
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-top: 12px;
}

.card{
  border: 1px solid var(--line);
  border-radius: var(--radius);
  overflow: hidden;
  background: var(--card);
  box-shadow: 0 10px 22px rgba(11,18,32,.06);
}

.card__media{
  height: 140px;
  background:
    linear-gradient(180deg, rgba(11,18,32,.10), rgba(11,18,32,.00)),
    url("https://images.unsplash.com/photo-1507525428034-b723cf961d3e?auto=format&fit=crop&w=1400&q=70");
  background-size: cover;
  background-position: center;
}

.card__body{ padding: 14px; }

.card__title{
  margin: 0 0 6px;
  font-size: 15px;
  font-weight: 900;
  letter-spacing: -.2px;
}

.card__text{
  margin: 0;
  font-size: 14px;
  color: var(--muted);
}

.split{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  align-items: stretch;
  margin-top: 12px;
}

.panel{
  padding: 14px;
  border-radius: var(--radius);
  background: var(--soft);
  border: 1px solid var(--line);
}

.panel h3{
  margin: 0 0 8px;
  font-size: 15px;
  font-weight: 900;
}

.list{
  margin: 0;
  padding-left: 18px;
  color: #243048;
}

.list li{ margin: 8px 0; }

/* CTA */
.cta{
  padding: 18px;
  border-radius: calc(var(--radius) + 8px);
  border: 1px solid rgba(0,79,149,.18);
  background: #fff;
  box-shadow: var(--shadow);
  display: grid;
  gap: 12px;
}

.cta__row{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  flex-wrap: wrap;
}

.cta h2{ margin: 0; }
.cta p{ margin: 0; color: var(--muted); max-width: 68ch; }

.ctaBadges{
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 10px;
  margin-top: 8px;
}

.badge{
  padding: 12px;
  border-radius: 16px;
  border: 1px solid var(--line);
  background: #fff;
}

.badge b{ display:block; font-size: 14px; }
.badge span{ display:block; font-size: 13px; color: var(--muted); margin-top: 4px; }

/* Small polish */
.muted{ color: var(--muted); }
.small{ font-size: 13px; }
.hr{ height: 1px; background: var(--line); margin: 14px 0; border: 0; }

/* =========================
   Mobile ergonomie
========================== */
@media (max-width: 980px){
  .wrap{ width: min(var(--max), calc(100% - 28px)); }
  .heroGrid{ grid-template-columns: 1fr; }
  .mainGrid{ grid-template-columns: 1fr; }

  .toc{ position: relative; top: 0; }
  .toc__toggle{ display: inline-flex; }
  .toc__links{ display: none; }
  .toc.is-open .toc__links{ display: block; }

  .gridCards{ grid-template-columns: 1fr; }
  .split{ grid-template-columns: 1fr; }
  .ctaBadges{ grid-template-columns: 1fr; }

  .heroMedia{ min-height: 280px; }
  .heroMedia__content{ padding: 18px 16px 14px; }
  .heroBelow{ padding: 14px 16px 16px; }

  /* UX: boutons plus faciles à taper */
  .btn{ padding: 12px 16px; font-size: 15px; }

  /* Evite les blocs trop tassés */
  .section{ padding: 16px; }
}

@media (max-width: 420px){
  .heroTitle{ font-size: 28px; }
}/* End custom CSS */