.elementor-542 .elementor-element.elementor-element-761b214{--display:flex;}/* Start custom CSS for html, class: .elementor-element-0092ee4 *//* ====== CGV — Style global (scopé) ====== */
.cgv-page{
  --ml-primary:#014593;   /* Couleur principale */
  --ml-accent:#70C8F2;    /* Couleur accent */
  --ml-ink:#0c1b2a;
  --ml-ink-2:#2a3b50;
  --ml-bg:#ffffff;
  --ml-soft:rgba(112,200,242,.18);
  max-width:1100px;
  margin:24px auto;
  padding:0 16px 28px;
  font-family:Marcellus,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans";
  color:var(--ml-ink);
  background:transparent;
}
/* Debug: encadre ce qui dépasse */
* { box-sizing: border-box; }
html, body { max-width:100%; overflow-x:hidden; }

/* Médias adaptatifs */
.cgv-page img,
.cgv-page video,
.cgv-page iframe { max-width:100%; height:auto; display:block; }

/* Mots/URLs trop longs */
.cgv-page, .cgv-page p, .cgv-page li, .cgv-page a, .cgv-page td, .cgv-page th{
  word-wrap:break-word; overflow-wrap:anywhere;
}

/* Tables largeurs mobiles */
@media (max-width:720px){
  .cgv-page table{ display:block; overflow-x:auto; white-space:nowrap; -webkit-overflow-scrolling:touch; }
  .cgv-page th, .cgv-page td{ min-width:140px; }
}

/* Anti 100vw qui déborde à cause de la barre de scroll */
.cgv-page [style*="100vw"], .cgv-page .w-100vw { width:100%; }


/* Layout principal */
.cgv-page .ml-grid{
  display:grid;
  grid-template-columns:260px 1fr;
  gap:18px;
}

/* Sommaire (statique) */
.cgv-page .ml-aside{
  position:relative;   /* reste fixe dans le flux, ne bouge pas */
  top:auto;
  align-self:start;
  background:#fff;
  border:1.5px solid var(--ml-primary);
  border-radius:14px;
  padding:12px 12px 14px;
}
.cgv-page .ml-aside h2{
  margin:4px 0 10px;
  font-size:1rem;
  color:var(--ml-primary);
}
.cgv-page .ml-toc{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:6px;
}
.cgv-page .ml-toc a{
  display:block;
  padding:8px 10px;
  border-radius:10px;
  text-decoration:none;
  color:var(--ml-ink-2);
  border:1px solid rgba(1,69,147,.15);
  background:linear-gradient(180deg,#fff,#f9fcff);
  transition:.2s;
}
.cgv-page .ml-toc a:hover{
  border-color:var(--ml-primary);
  box-shadow:0 0 0 3px var(--ml-soft) inset;
  color:var(--ml-primary);
}

/* Cartes (articles CGV) */
.cgv-page .ml-card{
  background:var(--ml-bg);
  border:1.5px solid var(--ml-primary);
  border-radius:14px;
  margin-top:18px;
  overflow:hidden;
}
.cgv-page .ml-card__title{
  margin:0;
  padding:14px 16px;
  font-size:1.05rem;
  font-weight:750;
  color:var(--ml-primary);
  background:linear-gradient(180deg,#fff,#f9fcff);
  border-bottom:1px solid rgba(1,69,147,.15);
  position:relative;
}
.cgv-page .ml-card__title::after{
  content:"";
  position:absolute;
  left:0; right:0; bottom:0;
  height:3px;
  background:linear-gradient(90deg,var(--ml-accent),transparent 60%);
}
.cgv-page .ml-card__content{
  padding:14px 16px 18px;
  line-height:1.6;
}

/* Alignement Article 1 avec Sommaire */
.cgv-page .ml-grid > div > .ml-card:first-child {
  margin-top: 0;
}

/* Texte et liens */
.cgv-page p{margin:0 0 10px; color:var(--ml-ink-2);}
.cgv-page a{color:var(--ml-primary); text-decoration:underline;}
.cgv-page a:hover{text-decoration:none; background:linear-gradient(180deg,transparent 60%,var(--ml-soft) 0);}

/* Listes */
.cgv-page ul{margin:8px 0 10px 20px; padding:0;}
.cgv-page li{margin-bottom:6px;}

/* Footer */
.cgv-page .ml-footer{
  text-align:center;
  margin-top:22px;
  font-size:.95rem;
  color:var(--ml-ink-2);
  padding-top:6px;
  border-top:2px solid var(--ml-accent);
}

/* Responsive */
@media (max-width: 920px){
  .cgv-page .ml-grid{grid-template-columns:1fr;}
}
@media (max-width: 640px){
  .cgv-page{padding:0 12px 22px;}
  .cgv-page .ml-card__content{padding:12px 14px 16px;}
}

/* Impression */
@media print{
  .cgv-page{box-shadow:none; margin:0; padding:0;}
  .cgv-page a{color:#000; text-decoration:none;}
}

/* Confort scroll */
html{scroll-behavior:smooth;}

/* Header interne (hero CGV) */
.cgv-page .ml-hero{
  background:linear-gradient(0deg,var(--ml-primary),var(--ml-primary));
  color:#fff;
  padding:24px 20px;
  border-radius:16px;
  position:relative;
  box-shadow:0 10px 30px rgba(1,69,147,.18);
  overflow:hidden;
  margin-bottom:20px;
}
.cgv-page .ml-hero::after{
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:6px;
  background:var(--ml-accent);
}
.cgv-page .ml-hero__title{
  margin:0;
  font-size:clamp(1.4rem,2vw + 1rem,2rem);
  font-weight:800;
  letter-spacing:.2px;
}
.cgv-page .ml-hero__meta{
  margin:.5rem 0 0;
  font-size:.95rem;
  opacity:.95;
  color:#ffffff; 
}/* End custom CSS */