/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Sep 01 2026 | 19:04:21 */
/* MREL - Modernisation 2026-09-01. Aucune modification du HTML : sans effet SEO.
   Retour arriere : passer ce bloc en brouillon. Sections independantes. */

/* ===== MREL-00 PALETTE ET POLICE =====
   Origine : bleu #4B97D1 = 3,16:1 sur blanc (WCAG AA demande 4,5:1)
   et vert clair #4BD18C vers #8FEB17 avec texte blanc.
   Nouveau : bleu #1B6FA8 = 5,40:1 et vert #16803C = 5,01:1. */
@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700&display=swap');
:root{
  --mrel-blue-900:#0B3C5D; --mrel-blue-700:#0B5C8C; --mrel-blue-600:#1B6FA8;
  --mrel-blue-050:#EEF5FA; --mrel-green-600:#16803C; --mrel-green-700:#116230;
  --mrel-ink:#14212B;
  --mrel-shadow:0 2px 4px rgba(11,60,93,.05),0 12px 32px rgba(11,60,93,.09);
  --mrel-radius:18px; --mrel-title:'Outfit','Open Sans',sans-serif;
}

/* ===== MREL-01 TYPOGRAPHIE FLUIDE =====
   Origine : Open Sans partout, h1 46px poids 300, aucune taille fluide. */
body,.l-body{color:var(--mrel-ink);font-size:clamp(16px,0.95rem + 0.2vw,17px);line-height:1.65;-webkit-font-smoothing:antialiased;}
h1,h2,h3,h4,h5,h6,.w-btn,.us-btn-style_6,.us-btn-style_7,.us-btn-style_8{font-family:var(--mrel-title);}
h1,.l-section h1{font-size:clamp(2rem,1.35rem + 2.1vw,3.25rem);font-weight:600;line-height:1.12;letter-spacing:-0.02em;}
h2,.l-section h2{font-size:clamp(1.6rem,1.2rem + 1.5vw,2.5rem);font-weight:600;line-height:1.18;letter-spacing:-0.015em;}
h3,.l-section h3{font-size:clamp(1.2rem,1rem + 0.7vw,1.6rem);font-weight:600;line-height:1.25;}

/* ===== MREL-02 CONTRASTE DE LA NAVIGATION =====
   43 noeuds de texte sous le seuil AA, dont tout le menu. */
/* :not(.w-btn) est indispensable : les boutons E-Consultation et Prendre RDV
   du header portent aussi w-nav-anchor level_1. Sans exclusion, cette regle
   (specificite 0,3,0) ecrase le color:#fff des boutons (0,1,0) et donne du
   texte bleu sur fond bleu. */
.l-header .w-nav-anchor.level_1:not(.w-btn),.l-header .w-nav-list .w-nav-anchor:not(.w-btn),.l-subheader a:not(.w-btn){color:var(--mrel-blue-600)!important;font-family:var(--mrel-title);font-weight:500;}
.l-header .w-nav-anchor.level_1:not(.w-btn):hover,.l-header .w-nav-item.current-menu-item .w-nav-anchor.level_1:not(.w-btn){color:var(--mrel-blue-900)!important;}
.l-header .w-nav-item.level_1 .w-nav-anchor.level_1:not(.w-btn)::after{content:'';position:absolute;left:14px;right:14px;bottom:14px;height:2px;border-radius:2px;background:var(--mrel-blue-600);transform:scaleX(0);transition:transform .22s ease;}
.l-header .w-nav-item.level_1 .w-nav-anchor.level_1:hover::after,.l-header .w-nav-item.level_1.current-menu-item .w-nav-anchor.level_1::after{transform:scaleX(1);}
.l-header .w-nav-list.level_2 .w-nav-anchor::after{content:none!important;}
.l-header .w-nav-list.level_2{border-radius:14px;box-shadow:var(--mrel-shadow);overflow:hidden;padding:6px 0;}
.l-header .w-nav-list.level_2 .w-nav-anchor{padding-top:11px;padding-bottom:11px;font-weight:400;}
.l-header .w-nav-list.level_2 .w-nav-anchor:hover{background:var(--mrel-blue-050);color:var(--mrel-blue-900)!important;}

/* ===== MREL-03 BOUTONS =====
   Impreza pose le fond en background-image : un background-color seul ne prend pas. */
.w-btn,.us-btn-style_6,.us-btn-style_7,.us-btn-style_8{border-radius:999px!important;font-weight:600!important;text-transform:none!important;transition:background-color .2s ease,box-shadow .2s ease,transform .2s ease!important;}
.us-btn-style_8,.w-btn.us-btn-style_8{background-image:linear-gradient(135deg,#116230,#16803C)!important;background-color:#16803C!important;border-color:transparent!important;color:#fff!important;box-shadow:0 6px 18px rgba(22,128,60,.28)!important;}
.no-touch .us-btn-style_8:hover{background-image:linear-gradient(135deg,#0D4F27,#116230)!important;transform:translateY(-1px);}
.us-btn-style_7,.w-btn.us-btn-style_7{background-image:linear-gradient(135deg,#0B3C5D,#1B6FA8)!important;background-color:#1B6FA8!important;border-color:transparent!important;color:#fff!important;}
.no-touch .us-btn-style_7:hover{background-image:linear-gradient(135deg,#082D46,#125A8C)!important;transform:translateY(-1px);}
.no-touch .us-btn-style_7::after,.no-touch .us-btn-style_8::after{background:rgba(255,255,255,.14)!important;}
.l-section.with_slider .us-btn-style_6,.l-section.with_overlay .us-btn-style_6{background-color:rgba(11,60,93,.62)!important;border-color:rgba(255,255,255,.92)!important;color:#fff!important;}

/* ===== MREL-04 HERO =====
   Origine : voile plat rgba(75,151,209,.6). Le slider alterne facade et salle
   d'attente ; sur la vue claire le texte blanc devenait illisible. */
.l-section.with_slider .l-section-overlay,.l-section.height_full.with_overlay .l-section-overlay{background-color:transparent!important;background-image:linear-gradient(170deg,rgba(11,60,93,.86) 0%,rgba(11,60,93,.62) 42%,rgba(11,92,140,.58) 72%,rgba(11,60,93,.80) 100%)!important;}
.l-section.height_full .l-section-h{padding-top:clamp(64px,9vh,120px);padding-bottom:clamp(64px,9vh,120px);}
.l-section.height_full h1{text-shadow:0 2px 24px rgba(11,60,93,.45);max-width:24ch;margin-left:auto;margin-right:auto;}
.l-section.height_full .wpb_text_column{text-shadow:0 1px 14px rgba(11,60,93,.5);}
.l-section.height_full .wpb_text_column p{font-size:clamp(1rem,.95rem + .35vw,1.2rem);max-width:46ch;margin-left:auto;margin-right:auto;}

/* ===== MREL-05 SECTIONS BLEUES =====
   Le degrade sature vit sur .l-section-overlay, pas sur la section. */
.l-section .l-section-overlay{background-image:none!important;}
.l-section.color_primary,.l-section.height_medium.width_full.has_text_color.with_overlay{background-image:linear-gradient(160deg,var(--mrel-blue-900) 0%,var(--mrel-blue-700) 55%,#0d6a9f 100%)!important;}
.l-section.height_medium.width_full.has_text_color .l-section-overlay,.l-section.color_primary .l-section-overlay{background-color:rgba(11,60,93,.35)!important;}

/* ===== MREL-06 TITRES DE SECTION - arc de sourire ===== */
.l-section .align_center h2{position:relative;padding-bottom:26px;color:var(--mrel-blue-900);}
.l-section .align_center h2::after{content:'';position:absolute;left:50%;bottom:6px;width:74px;height:14px;transform:translateX(-50%);border-bottom:3px solid var(--mrel-blue-600);border-radius:0 0 60px 60px;opacity:.85;}
.l-section.color_primary .align_center h2,.l-section.has_text_color .align_center h2{color:#fff;}
.l-section.color_primary .align_center h2::after,.l-section.has_text_color .align_center h2::after{border-bottom-color:rgba(255,255,255,.9);}

/* ===== MREL-07 TUILES ULTIMATE ADDONS (.ult-new-ib, pas .w-grid-item) ===== */
.ult-new-ib{border-radius:18px!important;overflow:hidden!important;background:#0B3C5D!important;margin:5px!important;}
.ult-new-ib-img{transition:transform .6s ease!important;}
.ult-new-ib:hover .ult-new-ib-img{transform:scale(1.05)!important;}
.ult-new-ib-title{font-family:var(--mrel-title)!important;font-weight:600!important;text-shadow:0 1px 14px rgba(0,0,0,.7)!important;}
.ult-new-ib-desc{background-image:linear-gradient(0deg,rgba(4,26,41,.92) 0%,rgba(4,26,41,.55) 55%,rgba(4,26,41,0) 100%)!important;}
.w-grid-item{border-radius:var(--mrel-radius);overflow:hidden;}
.w-grid-item img{transition:transform .5s ease;}
.w-grid-item:hover img{transform:scale(1.04);}

/* ===== MREL-08 APPARITION AU DEFILEMENT =====
   Les blocs restaient des aplats de couleur ~1 s : lu comme une image manquante. */
.l-section .w-grid-item,.l-section .wpb_column,.l-section .vc_column-inner{animation-duration:.35s!important;animation-delay:0s!important;transition-delay:0s!important;}

/* ===== MREL-09 ENTETE COLLANTE ET ANCRES =====
   L'entete recouvrait les cibles des ancres et la FAQ Invisalign. */
:target{scroll-margin-top:120px;}
h1[id],h2[id],h3[id],.l-section[id],.wpb_row[id]{scroll-margin-top:120px;}

/* ===== MREL-10 PIED DE PAGE - environ 250 px de blanc en trop ===== */
.l-footer .l-section.height_medium:not(:has(a)):not(:has(img)){display:none!important;}
.l-footer .l-section.height_medium .l-section-h{padding-top:26px!important;padding-bottom:26px!important;}
.l-section.color_footer-bottom{background-image:linear-gradient(160deg,#0B3C5D 0%,#0B5C8C 60%,#0d6a9f 100%)!important;}
.l-section.color_footer-top{background-color:#082D46!important;background-image:none!important;}
.l-section.color_footer-top a,.l-section.color_footer-bottom a{text-decoration:underline;text-underline-offset:3px;}

/* ===== MREL-11 ACCESSIBILITE - aucun anneau de focus a l'origine ===== */
a:focus-visible,button:focus-visible,.w-btn:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--mrel-blue-600);outline-offset:3px;border-radius:6px;}
.l-section.has_text_color a:focus-visible,.l-section.color_primary a:focus-visible{outline-color:#fff;}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important;}}

/* ===== MREL-12 MOBILE =====
   Mesure a 390 px : accueil de 8608 px, h1 sur 4 lignes, sous-titre sur 6,
   barre verte fixe chevauchant le bouton E-Consultation du hero. */
@media (max-width:900px){
  .l-section.height_full{min-height:auto!important;}
  .l-section.height_full .l-section-h{padding-top:56px;padding-bottom:96px;}
  .l-section.height_full h1{font-size:clamp(1.7rem,1.15rem + 2.4vw,2.1rem);line-height:1.14;max-width:20ch;}
  .l-section.height_full .wpb_text_column p{font-size:1rem;line-height:1.5;max-width:32ch;}
  .l-section.height_full .w-btn{width:auto;min-width:0;padding-left:22px;padding-right:22px;font-size:.95rem;}
  .l-section.height_medium .l-section-h,.l-section.height_auto .l-section-h{padding-top:44px;padding-bottom:44px;}
  .w-grid-item{margin-bottom:12px;}
  body{padding-bottom:64px;}
  .bouton-prise-rdv.rendez_vous{background-image:linear-gradient(135deg,#116230,#16803C)!important;font-family:var(--mrel-title)!important;font-weight:600!important;}
}
@media (max-width:600px){
  .l-section.height_full .l-section-h{padding-bottom:104px;}
  .g-cols .wpb_column{margin-bottom:18px;}
}

/* ===== MREL-13 COMPACTAGE MOBILE =====
   L'arc sous les titres coutait 26 px x 9 titres, et les 4 blocs de soins
   s'empilaient sur une colonne pleine hauteur. Mesure a 390 px :
   9380 px avant cette section, 8569 px apres. */
@media (max-width:900px){
  .l-section .align_center h2{padding-bottom:18px;}
  .l-section .align_center h2::after{width:56px;}
  /* flex plutot que float : en float les rangees laissent des trous quand
     les blocs n'ont pas la meme hauteur. Sans :has() la regle est ignoree
     et on retombe sur une colonne, le comportement actuel : repli sur. */
  .l-section .g-cols:has(.vc_col-sm-3){display:flex!important;flex-wrap:wrap!important;align-items:flex-start!important;}
  .l-section .g-cols .vc_col-sm-3{width:50%!important;float:none!important;}
  .l-section .g-cols .vc_col-sm-3 .w-image img{max-width:150px;}
  .l-section .g-cols .vc_col-sm-3 .wpb_column{margin-bottom:8px;}
  .l-section .g-cols .vc_col-sm-3 h3,.l-section .g-cols .vc_col-sm-3 h4{font-size:1.05rem;}
}

/* ===== MREL-14 CORRECTIF BOUTONS DU HEADER (2026-09-01) =====
   Regression corrigee : texte bleu sur fond bleu, ratio 1:1. */
.l-header .w-btn.us-btn-style_7,.l-header .w-btn.us-btn-style_7:hover,
.l-header .w-btn.us-btn-style_8,.l-header .w-btn.us-btn-style_8:hover,
.l-header .w-nav-anchor.w-btn,.l-header .w-nav-anchor.w-btn:hover{color:#fff!important;}

/* ===== MREL-15 LOGO DOCTOLIB SUR LES BOUTONS DE RDV (2026-09-01) =====
   Meme parti pris que Toledano et Fazaiee : le bouton porte le logo du
   service, ce qui rassure sur la destination avant le clic.
   Logo blanc deja en mediatheque (media 6938, 104x32). */
/* Le logo se lit APRES le libelle : "Prendre RDV" puis le service.
   Impreza occupe deja ::after sur us-btn-style_7 et _8 (voile de survol),
   donc on garde ::before et on le renvoie en fin de ligne avec order:2.
   Le bouton du header a href="#" (declencheur, pas lien) : on le cible
   par sa classe en plus du selecteur d'attribut. */
.w-btn[href*="doctolib"],.l-header .w-btn.us-btn-style_8{display:inline-flex!important;align-items:center;justify-content:center;}
.w-btn[href*="doctolib"]::before,.l-header .w-btn.us-btn-style_8::before{
  content:'';order:2;flex:0 0 auto;
  width:74px;height:23px;margin-left:10px;position:relative;top:-1px;
  background:url('/wp-content/uploads/2019/07/Logo-Doctolib-blanc.png') left center/contain no-repeat;
}
@media (max-width:600px){
  .w-btn[href*="doctolib"]::before{width:62px;height:19px;margin-right:7px;}
}

/* ===== MREL-16 PIED DE PAGE : HAUTEUR EN TROP =====
   La derniere section du footer faisait 180 px pour 52 px de contenu,
   et le footer depassait de 32 px la hauteur du document. */
/* le padding de 64px vit sur la SECTION, pas sur .l-section-h : cibler les deux. */
.l-footer .l-section:last-child,.l-footer .l-section:last-child .l-section-h{padding-top:22px!important;padding-bottom:22px!important;}
.l-footer .l-section:last-child{margin-bottom:0!important;}
.l-footer{padding-bottom:0!important;margin-bottom:0!important;}
.l-canvas{overflow:visible;}

/* ===== MREL-17 RETRAIT E-CONSULTATION (2026-09-01) =====
   Demande client. L'entree de menu a ete supprimee ; cette regle neutralise
   les boutons restes dans le contenu des pages, en attendant leur retrait
   dans WPBakery. */
.w-btn[href*="ortho-consult"]{display:none!important;}