/* ======================================================
   WPZ – Header Global (Iliade Location) — v2
   Corrige: lisibilité topbar, alignements, nowrap menu,
   CTA pastille, dropdowns & responsive
   ====================================================== */

/* ===== Tokens ===== */
:root{
  --ink:#0f172a;
  --muted:#64748b;
  --bg:#ffffff;

  --brand:#5CA174;
  --brand-50:#EAF5EE;
  --accent:#9C1657;

  --radius:18px;
  --radius-lg:22px;
  --shadow:0 10px 28px rgba(0,0,0,.08);
  --shadow-lg:0 18px 36px rgba(0,0,0,.10);

  --container:clamp(100%, 100vw, 100%); /* +large pour éviter les retours */
  --gutter:20px;
}

/* ===== Base & helpers ===== */
.wpz-header *{box-sizing:border-box}
.wpz-header a{color:inherit;text-decoration:none}
.wpz-header .sr-only{position:absolute!important;clip:rect(1px,1px,1px,1px);padding:0;border:0;height:1px;width:1px;overflow:hidden}
.wpz-container{max-width:var(--container); margin:0 auto; padding:0 var(--gutter)}
:is(.wpz-btn, .wpz-search-btn, .wpz-burger, .wpz-offcanvas__close, .wpz-mobile-info__close):focus-visible{
  outline:2px solid var(--accent); outline-offset:2px; border-radius:5px;
}

/* ===== Topbar (bandeau vert) ===== */
.wpz-topbar {
  background: var(--brand);
  color: #fff;
  font-size: 12px;
  line-height: 1.2;
}

.wpz-topbar .wpz-container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 6px var(--gutter); /* juste assez de marge pour contenir les textes */
  min-height: auto;
}

.wpz-topbar-list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 20px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.wpz-topbar-list li {
  display: flex;
  align-items: center;
  gap: 8px;
}

.wpz-topbar-list a {
  color: #fff;
  text-decoration: none;
  font-size: 12px;
  font-weight: 500;
  opacity: 1;
}

.wpz-topbar-list a:hover {
  text-decoration: underline;
}

/* Icônes blanches (même taille que texte) */
[class^="wpz-ico"] {
  --i: #fff;
  width: 14px;
  height: 14px;
  display: inline-block;
  vertical-align: -2px;
  background: var(--i);
  mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center;
}

/* Réseaux sociaux */
.wpz-social {
  display: flex;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.wpz-social a {
  width: 16px;
  height: 16px;
  display: inline-block;
  opacity: 0.9;
  background: #fff;
  mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center;
}

.wpz-social a:hover {
  opacity: 1;
}


/* Icônes via mask */
[class^="wpz-ico"]{--i:#fff; width:18px;height:18px;display:inline-block;vertical-align:-3px;background:var(--i);mask-size:contain;mask-repeat:no-repeat;mask-position:center}
.wpz-ico-phone{mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M6.6 10.8a15.1 15.1 0 006.6 6.6l2.2-2.2c.3-.3.7-.4 1-.3 1.1.4 2.3.7 3.6.7.6 0 1 .4 1 .9v3.5c0 .6-.4 1-1 1C10.6 21 3 13.4 3 4.9c0-.6.4-1 1-1H7.5c.5 0 .9.4 .9 1 0 1.3.2 2.5.6 3.6.1.3 0 .7-.3 1l-2.1 2.3z"/></svg>')}
.wpz-ico-mail{mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 4H4a2 2 0 00-2 2v12a2 2 0 002 2h16a2 2 0 002-2V6a2 2 0 00-2-2zm0 4l-8 5L4 8V6l8 5 8-5v2z"/></svg>')}
.wpz-ico-clock{mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 1a11 11 0 110 22 11 11 0 010-22zm1 6h-2v6l5 3 .9-1.5-3.9-2.3V7z"/></svg>')}
.wpz-ico-pin{mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 2a7 7 0 00-7 7c0 5.3 7 13 7 13s7-7.7 7-13a7 7 0 00-7-7zm0 9.5a2.5 2.5 0 110-5 2.5 2.5 0 010 5z"/></svg>')}
.wpz-ico-book{mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M18 2H8a2 2 0 00-2 2v16a2 2 0 012 2h10a2 2 0 002-2V4a2 2 0 00-2-2zm0 16H9c-.7 0-1.4.1-2 .4V4h11v14z"/></svg>')}
.wpz-ico-facebook{mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M13 3h4V0h-4c-2.8 0-5 2.2-5 5v3H5v4h3v12h4V12h3.1l.9-4H12V5c0-1 .8-2 1-2z"/></svg>')}
.wpz-ico-instagram{mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M7 2h10a5 5 0 015 5v10a5 5 0 01-5 5H7a5 5 0 01-5-5V7a5 5 0 015-5zm5 5a5 5 0 100 10 5 5 0 000-10zm6-1a1 1 0 100 2 1 1 0 000-2z"/></svg>')}
.wpz-ico-pinterest{mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 2a10 10 0 00-3.5 19.4c-.1-.8-.2-2 .1-2.8l2.1-8c-.4-.8-.1-2 .5-2.6 1.1-1.1 3.2-1 4.3.1 1.1 1.2.9 3.3-.3 4.4a2.6 2.6 0 01-1.8.7c-.8 0-1.5-.4-1.7-.9l-.6 2.3c-.3 1.1-1 2.8-.9 3.9v0A10 10 0 1012 2z"/></svg>')}
.wpz-ico-form{mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M4 2h16a2 2 0 012 2v16l-4-4H4a2 2 0 01-2-2V4a2 2 0 012-2zm3 5v2h10V7H7zm0 4v2h7v-2H7z"/></svg>')}


/* ======================================================
   WPZ – Bouton recherche (vert) + icône loupe blanche
   ====================================================== */

/* Bouton vert */
.wpz-actions .wpz-search-btn,
.wpz-search-btn{
  display:flex; align-items:center; justify-content:center;
  width:52px; height:42px;
  border:0; border-radius:5px;
  background:#5CA174 !important;      /* vert Iliade */
  cursor:pointer;
  transition:background-color .25s, transform .2s, box-shadow .2s;
  -webkit-appearance:none; appearance:none;
}
.wpz-actions .wpz-search-btn:hover,
.wpz-search-btn:hover{
  background:#4b8e61 !important;
  transform:translateY(-1px);
  box-shadow:0 4px 12px rgba(92,161,116,.25);
}

/* Loupe blanche SIMPLE (aucun mask) */
.wpz-actions .wpz-ico-search,
.wpz-search-btn .wpz-ico-search{
  display:inline-block;
  width:42px;                       /* taille de la loupe (sans toucher au bouton) */
  height:42px;
  /* neutralise tout ancien style par mask */
  mask:none !important; -webkit-mask:none !important; background-color:transparent !important;

  background-repeat:no-repeat;
  background-position:center;
  background-size:22px 22px;        /* rendu net dans 28px */
  background-image:url("data:image/svg+xml;utf8,\
<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'>\
  <path fill='%23FFFFFF' d='M10 2a8 8 0 1 0 5.3 14l4.6 4.6a1 1 0 0 0 1.4-1.4L16.7 14A8 8 0 0 0 10 2zm0 2a6 6 0 1 1 0 12A6 6 0 0 1 10 4z'/>\
</svg>");
  pointer-events:none;
  transition:transform .2s ease;
}
.wpz-search-btn:hover .wpz-ico-search{ transform:scale(1.08); }

/* Focus (accessibilité) */
.wpz-search-btn:focus-visible{
  outline:2px solid rgba(92,161,116,.45);
  outline-offset:2px;
}







/* ===== Mainbar (logo + nav + actions) ===== */
.wpz-mainbar{background:#fff; box-shadow:var(--shadow); position:relative; z-index:50}
.wpz-mainbar .wpz-container{
  display:grid;
  grid-template-columns:48px 1fr auto; /* burger | centre | actions */
  align-items:center; gap:2px; padding:14px var(--gutter);
}
.wpz-logo img{max-height:44px; max-width:200px; display:block}

/* Burger */
.wpz-burger{display:none; width:30px;height:42px;border:none;background:transparent;padding:0}
.wpz-burger span{display:block;height:4px;background:var(--brand);margin:5px 0;border-radius:2px;transition:.2s}

/* Nav desktop */
.wpz-nav{justify-self:center; min-width:0}
.wpz-menu{display:flex; gap:34px; list-style:none; margin:0; padding:0; white-space:nowrap} /* pas de retour */
.wpz-menu > li{position:relative}
.wpz-menu a{
  color:var(--ink); text-decoration:none; font-weight:400;
  line-height:1; display:inline-flex; align-items:center;
  padding:12px 0; font-size:14px; letter-spacing:.3px;
}
.wpz-menu a:hover{color:#0b132b}

/* Dropdown */
.wpz-menu li.menu-item-has-children > a::after{
  content:"▾"; margin-left:8px; font-size:12px; color:var(--muted)
}
.wpz-menu li:hover > .sub-menu,
.wpz-menu li:focus-within > .sub-menu{opacity:1; visibility:visible; transform:translateY(0)}
.wpz-menu .sub-menu{
  position:absolute; left:0; top:calc(100% + 10px); min-width:240px;
  background:#fff; border-radius:14px; box-shadow:var(--shadow-lg);
  padding:8px; margin:0; list-style:none;
  opacity:0; visibility:hidden; transform:translateY(6px); transition:.18s ease;
  white-space:normal; /* sous-menu autorisé à passer à la ligne */
}
.wpz-menu .sub-menu li a{padding:10px 12px; border-radius:10px; display:block; color:var(--ink); font-size:14px}
.wpz-menu .sub-menu li a:hover{background:var(--brand-50)}
.wpz-menu .sub-menu .sub-menu{left:100%; top:0}

/* États actifs */
.wpz-menu .current-menu-item > a,
.wpz-menu .current-menu-ancestor > a{color:var(--brand)}




/* ===== Sous-menus : accordéon fluide sans bande résiduelle ===== */
.wpz-mobile-menu ul.sub-menu{
  list-style:none; margin:0;
  /* état FERMÉ (zéro empreinte visuelle) */
  max-height:0;
  padding:0;                       /* ✅ plus de bande */
  background:transparent;          /* ✅ plus de fond */
  border-left:0;                   /* ✅ plus de liseré */
  overflow:hidden;
  opacity:0;                       /* petit fondu + évite artefacts */
  transition:
    max-height .25s ease,
    padding .20s ease,
    opacity .20s ease;
  box-sizing:border-box;
  will-change:max-height, padding, opacity;
  pointer-events:none;             /* pas de tap dans un menu fermé */
}

/* état OUVERT */
.wpz-mobile-menu li.is-open > ul.sub-menu{
  max-height:600px;                /* assez grand pour le contenu */
  padding:6px 0 10px 10px;         /* ✅ réactive l’indentation */
  background:#fafafa;              /* ✅ réactive le fond */
  border-left:3px solid var(--brand-50);
  opacity:1;
  pointer-events:auto;
}





/* Actions (CTA + loupe) */
/* ===== Actions (CTA + loupe) ===== */
.wpz-actions, a.wpz-actions {
  display: flex;
  align-items: center;
  gap: 16px;
  justify-self: end;
  color: #fff;
}

/* Bouton principal */
.wpz-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 10px 22px;
  border-radius: 5px;
  font-weight: 700;
  text-decoration: none;
  white-space: nowrap;
  font-size: 14px;
  color: #fff; /* texte blanc */
  background: var(--accent); /* prune */
  transition: filter 0.25s ease;
}

a.wpz-btn.wpz-btn-accent {
  color: #fff !important;
  font-size: 14px !important;
  border-radius: 5px !important;
}

.wpz-btn-accent:hover {
  filter: brightness(0.9);
}

/* Icône dans le bouton (blanche aussi) */
.wpz-btn .wpz-ico {
  --i: #fff; /* icône blanche */
  width: 14px;
  height: 14px;
  mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center;
  background: var(--i);
  color: #fff;
}

/* Bouton loupe (si tu veux aussi en blanc sur fond transparent) */
.wpz-search-btn {
  width: 44px;
  height: 44px;
  border: none;
  background: transparent;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.wpz-search-btn .wpz-ico {
  --i: #fff; /* icône blanche */
  width: 14px;
  height: 14px;
  background: var(--i);
}


/* ===== Barre info mobile ===== */
.wpz-mobile-info{background:var(--brand-50); color:var(--ink)}
.wpz-mobile-info .wpz-container{display:flex; align-items:center; justify-content:space-between; gap:12px; padding:10px var(--gutter)}
.wpz-mobile-info__close{background:transparent;border:none;font-size:22px;line-height:1}

/* ===== Offcanvas mobile ===== */
.wpz-offcanvas{position:fixed; inset:0 auto 0 -340px; width:320px; background:#fff; box-shadow:var(--shadow-lg); z-index:9999; transition:transform .25s ease; transform:translateX(-100%); display:flex; flex-direction:column}
.wpz-offcanvas[aria-hidden="false"]{transform:translateX(0); left:0}
.wpz-offcanvas__header{display:flex; align-items:center; justify-content:space-between; padding:16px}
.wpz-offcanvas__header img{height:44px}
.wpz-offcanvas__close{border:none;background:transparent;font-size:28px;line-height:1}
.wpz-offcanvas__content{padding:8px 16px 20px; overflow:auto}
.wpz-offcanvas-backdrop{position:fixed; inset:0; background:rgba(15,23,42,.45); z-index:9998}

/* ======================================================
   WPZ – Menu mobile (UX doux, accessible, fluide)
   ====================================================== */

.wpz-mobile-menu{
  list-style:none; margin:0; padding:8px 0;
  -webkit-tap-highlight-color: transparent;
}
.wpz-mobile-menu > li{
  border-bottom:1px solid #f0f2f5;
}
.wpz-mobile-menu > li:last-child{
  border-bottom:0;
}

/* Lien de 1er niveau : grand, confortable */
.wpz-mobile-menu > li > a{
  display:block;
  padding:14px 48px 14px 10px; /* place à droite pour le chevron */
  text-decoration:none;
  color:var(--ink);
  font-weight:700;
  font-size:16px;
  line-height:1.2;
  border-radius:10px; /* focus doux */
}
.wpz-mobile-menu > li > a:active{
  background:var(--brand-50);
}

/* État ouvert : fond vert très clair pour repère visuel */
.wpz-mobile-menu > li.is-open > a{
  background:var(--brand-50);
}

/* Bouton chevron (toggle) : hit-area 44x100% aligné à droite */
.wpz-mobile-menu li.menu-item-has-children{
  position:relative;
}
.wpz-mobile-menu li.menu-item-has-children > button.wpz-subtoggle{
  position:absolute; right:0; top:0;
  width:44px; height:100%;
  border:none; background:transparent; padding:0; margin:0;
  display:flex; align-items:center; justify-content:center;
  cursor:pointer;
}
.wpz-mobile-menu li.menu-item-has-children > button.wpz-subtoggle:focus-visible{
  outline:2px solid var(--brand); outline-offset:2px; border-radius:8px;
}

/* Icône chevron (SVG en mask pour netteté retina) */
.wpz-mobile-menu li.menu-item-has-children > button.wpz-subtoggle::before{
  content:"";
  width:18px; height:18px;
  background:var(--ink);
  -webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'><path fill='black' d='M1 1l4 4 4-4'/></svg>") no-repeat center/contain;
          mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'><path fill='black' d='M1 1l4 4 4-4'/></svg>") no-repeat center/contain;
  transition:transform .18s ease, background-color .18s ease;
  opacity:.9;
}
.wpz-mobile-menu li.is-open > button.wpz-subtoggle::before{
  transform:rotate(180deg);
  background:var(--brand);
}

/* Sous-menus : accordéon fluide + indentation + repères */
.wpz-mobile-menu ul.sub-menu{
  list-style:none; margin:0;
  padding:6px 0 10px 10px;              /* indentation gauche */
  background:#fafafa;
  border-left:3px solid var(--brand-50);
  /* Accordéon fluide */
  max-height:0;
  overflow:hidden;
  will-change:max-height;
  transition:max-height .25s ease;
}
.wpz-mobile-menu li.is-open > ul.sub-menu{
  max-height:600px; /* suffisamment grand pour la plupart des cas */
}

/* Liens de sous-menu : lisibles, faciles à toucher */
.wpz-mobile-menu ul.sub-menu li > a{
  display:block;
  padding:10px 12px;
  color:var(--ink);
  font-weight:600;
  font-size:15px;
  line-height:1.25;
  text-decoration:none;
  border-radius:8px;
}
.wpz-mobile-menu ul.sub-menu li > a:hover,
.wpz-mobile-menu ul.sub-menu li > a:active{
  background:var(--brand-50);
}

/* Focus clavier clair sur tous les liens */
.wpz-mobile-menu a:focus-visible{
  outline:2px solid var(--brand);
  outline-offset:2px;
  border-radius:8px;
}

/* Petits raffinements */
.wpz-mobile-menu li.is-open > a{ color:var(--ink); }
.wpz-mobile-menu .current-menu-item > a{ color:var(--brand); }



/* ===== Bouton chevron (toggle) : zone fixe 44px en haut ===== */
.wpz-mobile-menu li.menu-item-has-children{
  position: relative;
}

.wpz-mobile-menu li.menu-item-has-children > button.wpz-subtoggle{
  position: absolute;
  right: 0;
  top: 0;                         /* reste collé en haut, ne suit pas l'ouverture */
  width: 44px;
  height: 44px;                   /* FIXE (au lieu de 100%) */
  border: none;
  background: transparent;
  padding: 0;
  margin: 0;
  cursor: pointer;
  touch-action: manipulation;
  z-index: 1;                     /* au-dessus du lien */
}

/* Chevron : parfaitement centré dans les 44px, juste une rotation */
.wpz-mobile-menu li.menu-item-has-children > button.wpz-subtoggle::before{
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 18px;
  height: 18px;
  transform: translate(-50%, -50%) rotate(0deg); /* centre + angle neutre */
  transform-origin: 50% 50%;
  background: var(--ink);
  opacity: .9;
  transition: transform .18s ease, background-color .18s ease, opacity .18s ease;
  -webkit-mask: url("data:image/svg+xml;utf8,\
<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 6'><path fill='black' d='M1 1l4 4 4-4'/></svg>") no-repeat center / contain;
          mask: url("data:image/svg+xml;utf8,\
<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 6'><path fill='black' d='M1 1l4 4 4-4'/></svg>") no-repeat center / contain;
}

/* État ouvert : on NE fait que tourner, sans translation verticale */
.wpz-mobile-menu li.is-open > button.wpz-subtoggle::before{
  transform: translate(-50%, -50%) rotate(180deg);
  background: var(--brand);
  opacity: 1;
}

/* Lien de 1er niveau : on garde l’espace pour le chevron à droite */
.wpz-mobile-menu > li > a{
  padding: 14px 48px 14px 10px;  /* 48px = 44 de hit + 4 de respiration */
}








/* Bouton full dans off-canvas */
.wpz-btn-full{display:block; width:100%; text-align:center; margin-top:16px; background:var(--accent); color:#fff}
.wpz-phone{display:block; text-align:center; margin-top:10px; font-weight:700; color:var(--brand); text-decoration:none}

/* ===== Sticky (optionnel) ===== */
.wpz-header.is-sticky .wpz-mainbar{position:sticky; top:0;}

/* ===== Responsive ===== */
@media (max-width: 1280px){
  .wpz-menu{gap:28px}
  .wpz-menu a{font-size:17px}
}
@media (max-width: 1160px){
  .wpz-menu{gap:22px}
  .wpz-menu a{font-size:16px}
}
@media (max-width: 1100px){
  .wpz-burger{display:inline-block}
  .wpz-nav{display:none}
  .wpz-mainbar .wpz-container{grid-template-columns:48px 1fr auto}
  .wpz-logo{justify-self:flex-start}
}
@media (max-width: 640px){
  .wpz-topbar{display:none}
  .wpz-logo img{height:38px}
  .wpz-btn-accent{padding:10px 18px; font-size:16px; border-radius: 5px;}
}



/* ===== Sticky intelligent (fixe + hide/show) ===== */

/* Gère la hauteur de la barre d’admin WP */
body{ --wpz-adminbar:0px }
body.admin-bar{ --wpz-adminbar:32px }
@media (max-width:782px){
  body.admin-bar{ --wpz-adminbar:46px }
}

/* Quand la sticky est activée, on compense la hauteur pour éviter le "saut" */
.wpz-head-fixed #wpz-site-main{ margin-top: var(--wpz-mainbar-h, 0px) }

/* Fixe uniquement la mainbar (le bandeau vert peut défiler) */
.wpz-header.is-fixed .wpz-mainbar{
  position: fixed;
  top: var(--wpz-adminbar);
  left: 0; right: 0;
  z-index: 10000;
  transform: translateY(0);
  transition: transform .25s ease, box-shadow .25s ease;
  box-shadow: var(--shadow);
}

/* Masquée pendant le scroll vers le bas */
.wpz-header.is-fixed.is-hidden .wpz-mainbar{
  transform: translateY(calc(-100% - var(--wpz-adminbar)));
}

/* Optionnel : légère ombre quand on a dépassé le hero */
.wpz-header.is-fixed .wpz-mainbar{ box-shadow: var(--shadow-lg) }






/* =========================================================
   WPZ – Fil d’Ariane (vignettes encadrées, fond clair, taille réduite)
   ========================================================= */

/* Wrapper (desktop : pas de scroll) */
.wpz-bc-slot{
  padding: 0;
  overflow: hidden;
}

/* Bloc */
.wpz-breadcrumb{
           /* même fonte que le site */
  font-weight: 500;                     /* lisible sans gras excessif */
  letter-spacing: .005em;
  line-height: 1;
  color: var(--ink, #0f172a);
  margin: .5rem 0;
  max-width: 100%;

  /* Taille unique plus petite partout */
  font-size: clamp(12px, .8vw, 12px);
}

/* Liste reset + flex */
.wpz-breadcrumb__list{
  display: flex;
  align-items: center;
  flex-wrap: wrap;                      /* desktop : retour à la ligne ok */
  gap: 6px;                             /* espace homogène entre vignettes */
  margin: 0;
  padding: 10px;
  list-style: none;
}

/* Anti-puces béton */
.wpz-breadcrumb__list li,
.wpz-breadcrumb__item{ list-style: none !important; }
.wpz-breadcrumb__list li::marker,
.wpz-breadcrumb__item::marker{ content: ''; }

/* Item */
.wpz-breadcrumb__item{
  display: inline-flex;
  align-items: center;
  min-width: 0;                         /* autorise l’ellipsis interne */
  flex: 0 0 auto;                       /* évite le shrink en mode scroll */
}

/* Séparateur compact (petit chevron) */
.wpz-breadcrumb__item:not(:first-child)::before{
  content: "›";
  color: var(--brand, #5CA174);
  margin: 0 4px 0 2px;
  flex: 0 0 auto;
}

/* ========== Style "vignette encadrée" commun ========== */
:root{
  --chip-bg: var(--soft, #f8fafc);      /* fond clair */
  --chip-bd: var(--soft-2, #e5e7eb);    /* bord gris très léger */
  --chip-tx: var(--ink, #0f172a);       /* texte par défaut */
  --chip-tx-brand: var(--brand, #5CA174);
}

.wpz-breadcrumb__link,
.wpz-breadcrumb__current{
  display: inline-block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;

  /* vignettes plus petites et régulières */
  padding: 4px 10px;
  border-radius: 10px;
  border: 1px solid var(--chip-bd);
  background: var(--chip-bg);
  color: var(--chip-tx);
  vertical-align: middle;

  /* largeur maîtrisée + ellipsis */
  max-width: 40vw;

  /* micro relief discret (optionnel) */
  box-shadow: 0 1px 0 rgba(0,0,0,.03);
}
a.wpz-breadcrumb__link {
  /* Taille unique plus petite partout */
  font-size: clamp(12px, .8vw, 12px);
}

/* Lien : léger accent de couleur sur le texte */
.wpz-breadcrumb__link{
  color: var(--chip-tx-brand);
  text-decoration: none;
  transition: background .15s ease, border-color .15s ease, color .15s ease;
}
.wpz-breadcrumb__link:hover{
  background: #ffffff;                  /* hover très léger */
  border-color: color-mix(in oklab, var(--brand, #5CA174) 30%, var(--chip-bd));
}

/* Élément courant : même vignette, texte normal (pas plus gros) */
.wpz-breadcrumb__current{
  color: var(--chip-tx);
  border-color: var(--chip-bd);
}

/* ===== Mobile : scroll horizontal fluide ===== */
@media (max-width: 640px){
  .wpz-breadcrumb{ padding-inline: 10px; }

  /* conteneur scrollable */
  .wpz-bc-slot{
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    touch-action: pan-x;
    scrollbar-width: thin;              /* Firefox */
  }

  /* une seule ligne + largeur = contenu (clé du scroll) */
  .wpz-breadcrumb__list{
    display: inline-flex;
    flex-wrap: nowrap;
    width: max-content;
    gap: 6px;
    padding-left: 0 !important;
  }

  /* vignettes compacts + largeur maîtrisée */
  .wpz-breadcrumb__link,
  .wpz-breadcrumb__current{
    max-width: 78vw;
    padding: 4px 10px;                 /* même taille de police et paddings */
  }

  /* séparateur serré */
  .wpz-breadcrumb__item:not(:first-child)::before{
    margin: 0 4px 0 2px;
  }

  /* (option) barre de scroll discrète sur WebKit */
  .wpz-bc-slot::-webkit-scrollbar{ height: 6px; }
  .wpz-bc-slot::-webkit-scrollbar-thumb{ background: rgba(0,0,0,.12); border-radius: 8px; }
  .wpz-bc-slot::-webkit-scrollbar-track{ background: transparent; }
}

/* Grand écran : confort de lecture (même taille, juste un poil d’air) */
@media (min-width: 1440px){
  .wpz-breadcrumb__list{ gap: 8px; }
}

/* Réduction de mouvement */
@media (prefers-reduced-motion: reduce){
  .wpz-breadcrumb__link{ transition: none; }
}

/* ====== Complément masks réseaux manquants (mêmes styles, mêmes tailles) ====== */
.wpz-ico-tiktok{
  mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="black" d="M21 8.3a7.2 7.2 0 01-4.6-1.6v7.2a6 6 0 11-6-6c.4 0 .7 0 1 .1v3a3 3 0 10-3 3 3 3 0 003-3V2h3a7.2 7.2 0 004.6 4.2z"/></svg>');
}
.wpz-ico-youtube{
  mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="black" d="M23.5 6.2a3 3 0 00-2-2C19.8 3.6 12 3.6 12 3.6s-7.8 0-9.5.6a3 3 0 00-2 2C0 8 0 12 0 12s0 4 .5 5.8a3 3 0 002 2c1.7.6 9.5.6 9.5.6s7.8 0 9.5-.6a3 3 0 002-2C24 16 24 12 24 12s0-4-.5-5.8zM9.6 15.5V8.5L15.8 12l-6.2 3.5z"/></svg>');
}
.wpz-ico-x{
  mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="black" d="M3 3h4.4l5.2 6.8 5.7-6.8H21l-7.2 8.6L21 21h-4.4l-5.6-7.2L5 21H3l7.7-9.2L3 3z"/></svg>');
}
.wpz-ico-linkedin{
  mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="black" d="M4.98 3.5a2.5 2.5 0 102.02 4.5A2.5 2.5 0 004.98 3.5zM3 8.98h4v12H3v-12zM9 8.98h3.8v1.6h.1a4.1 4.1 0 013.7-2c4 0 4.7 2.6 4.7 6v6.4h-4v-5.7c0-1.4 0-3.2-2-3.2s-2.4 1.5-2.4 3.1v5.8H9v-12z"/></svg>');
}
.wpz-ico-reddit{
  mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="black" d="M20 12.3a2 2 0 10-3.4-1.5 9 9 0 00-4.6-1.4l.8-3.7 2.6.6a2 2 0 103.9-.9 2 2 0 00-3 1.6l-3.3-.8-1.1 4.8a9 9 0 00-5.1 1.9 2 2 0 10.3 3.2 5.8 5.8 0 0010.4 0 2 2 0 103.5-1.8zM9.2 13.6a1.3 1.3 0 110-2.6 1.3 1.3 0 010 2.6zm5.6 0a1.3 1.3 0 110-2.6 1.3 1.3 0 010 2.6zM12 18.3c-1.5 0-2.8-.5-3.7-1.3a.7.7 0 01.9-1.1c.6.5 1.6.8 2.8.8s2.2-.3 2.8-.8a.7.7 0 01.9 1.1c-.9.8-2.2 1.3-3.7 1.3z"/></svg>');
}
.wpz-ico-threads{
  mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="black" d="M12 2c5.6 0 10 4.4 10 10s-4.4 10-10 10S2 17.6 2 12 6.4 2 12 2zm4.3 10.7c-.2-1.8-1.6-3.2-3.6-3.5.1-.5.3-1 .6-1.5-1.5.1-2.6.7-3.2 1.6-.5.7-.7 1.6-.5 2.5 1.1-.8 2.3-1.2 3.6-1.2 1.7 0 3 .8 3 .2 0 .7-.7 1.3-2 1.3-1 0-1.9-.3-2.7-.8-.1 2.1 1.1 3.3 3 3.3 1.6 0 2.6-.8 3-1.9-.4.1-.9-.1-1.2-.1z"/></svg>');
}
.wpz-ico-telegram{
  mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="black" d="M9.1 14.3l-.3 4.2c.4 0 .6-.2.9-.4l2.2-2 4.6 3.3c.8.5 1.4.3 1.6-.7l2.9-13.7c.3-1.2-.4-1.7-1.2-1.4L2.8 9c-1.2.5-1.2 1.1-.2 1.4l4.1 1.3L18 6.5c.6-.4 1.1-.2.7.2L9.1 14.3z"/></svg>');
}
.wpz-ico-discord{
  mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="black" d="M19 5.5A16 16 0 0015.6 4l-.4.8a13 13 0 00-6.4 0L8.4 4C7.3 4.2 6.2 4.7 5 5.5 2.7 9 2 12.3 2 15.5c1.7 1.3 3.7 2 5.7 2.3l.7-1.9c-.4-.1-.8-.3-1.2-.5.5.4 1.1.7 1.7.9a12 12 0 005 0c.6-.2 1.2-.5 1.7-.9-.4.2-.8.4-1.2.5l.7 1.9c2-.3 4-1 5.7-2.3 0-3.2-.7-6.5-3-10zM9.3 14.6c-.9 0-1.6-.9-1.6-1.9 0-1 .7-1.9 1.6-1.9s1.6.8 1.6 1.9c0 1-.7 1.9-1.6 1.9zm5.4 0c-.9 0-1.6-.9-1.6-1.9 0-1 .7-1.9 1.6-1.9s1.6.8 1.6 1.9c0 1-.7 1.9-1.6 1.9z"/></svg>');
}
.wpz-ico-vimeo{
  mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="black" d="M22 7.1c-.3 2-2.2 5-5.6 8.8-3.7 4-6.8 6-9.3 6-1.6 0-3-1.5-4.1-4.6l2.2-1.4c.8 1.5 1.5 2.3 2.1 2.3.6 0 1.9-1 3.9-3-1.5-1.4-2.5-2.6-3.1-3.7C7.5 9.7 8 8 9.3 8.1c.9.1 1.5.7 1.7 1.8.3 1.6.5 2.6.8 3 .3.4.7.4 1.1 0 .8-.9 1.7-2.1 2.6-3.6.3-.5.3-1-.2-1.2-.8-.4-1.6-.6-2.4-.6 1.7-1.3 3.2-1.8 4.4-1.7 1.5.2 2.2 1.1 2.7 1.3z"/></svg>');
}
.wpz-ico-twitch{
  mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="black" d="M4 3h16v10.5l-4 4H11l-2.5 2.5H6.5V17H4V3zm14 9.2V5H6v10h3.5v2l2-2H15l3-2.8zM14 7h2v5h-2V7zm-5 0h2v5H9V7z"/></svg>');
}
.wpz-ico-snapchat{
  mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="black" d="M12 2c3.5 0 6 2.7 6 6.2 0 1.3-.3 2.2-.3 2.2s1 .9 2 .9c.7 0 1.3.5 1.3 1.2s-.7 1.3-2 1.6c-.4.1-.7.5-.6.9.3.9 1.5 1.1 2 1.2.4.1.5.7.2 1.1-.5.6-1.6 1-3 .9-1.1-.1-2.1.8-3.1 1.6-1 .7-2 .9-2.5.9s-1.5-.2-2.5-.9c-1-.8-2-1.7-3.1-1.6-1.4.1-2.5-.3-3-.9-.3-.4-.2-1 .2-1.1.5-.1 1.7-.3 2-1.2.1-.4-.2-.8-.6-.9-1.3-.3-2-.9-2-1.6S3 12.3 3.7 12.3c1 0 2-.9 2-.9s-.3-.9-.3-2.2C5.4 4.7 8 2 12 2z"/></svg>');
}
.wpz-ico-whatsapp{
  mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="black" d="M20.5 3.5A11.5 11.5 0 006.3 21.7L2 22l1.3-4.1A11.5 11.5 0 1020.5 3.5zM7.6 17.3c3.5 2.1 6.7 2.6 9.5-1.2.3-.5.6-1.2.1-1.6l-1.6-1.1c-.5-.3-.9-.2-1.3.2l-.6.7c-.3.3-.7.4-1.1.2-1.3-.6-2.9-2.1-3.4-3.4-.2-.4-.1-.8.2-1.1l.7-.6c.4-.4.5-.8.2-1.3L9.2 6.1c-.4-.5-1.1-.2-1.6.1-3.8 2.8-3.3 6-1.2 9.5z"/></svg>');
}
/* Si un lien social contient un SVG inline, on laisse le SVG faire l’icône */
.wpz-social a svg{ display:block; width:16px; height:16px }








/* ======================================================
   WPZ – Z-Layers et gestion du canevas (off-canvas menu)
   ====================================================== */

:root{
  --z-header:     9000;   /* header sticky */
  --z-backdrop:  10010;   /* voile sombre */
  --z-offcanvas: 10020;   /* panneau menu */
}

/* Header sticky un cran plus bas */
.wpz-header.is-fixed .wpz-mainbar{
  z-index: var(--z-header);
}

/* Offcanvas + backdrop toujours au-dessus du header */
.wpz-offcanvas{
  position: fixed;
  inset: 0 auto 0 -340px;
  width: 320px;
  background: #fff;
  box-shadow: var(--shadow-lg);
  z-index: var(--z-offcanvas);
  transition: transform .25s ease;
  transform: translateX(-100%);
  display: flex;
  flex-direction: column;
  will-change: transform;
}
.wpz-offcanvas[aria-hidden="false"]{
  transform: translateX(0);
  left: 0;
  pointer-events: auto;
}

.wpz-offcanvas-backdrop{
  position: fixed;
  inset: 0;
  background: rgba(15,23,42,.45);
  z-index: var(--z-backdrop);
  pointer-events: auto !important; /* ✅ clic possible */
  cursor: pointer;
  will-change: opacity;
}

/* Bloque les clics derrière quand le menu est ouvert
   (mais garde le backdrop cliquable pour fermeture) */
.wpz-offcanvas[aria-hidden="false"] ~ .wpz-header,
.wpz-offcanvas[aria-hidden="false"] ~ #wpz-site-main{
  pointer-events: none;
}

/* Empêche le scroll du body quand ouvert */
html.wpz-off-open,
body.wpz-off-open{
  overflow: hidden;
}