/* ===== HEADER – desktop + mobile burger (palette claire) ===== */
.site-header{position:sticky;top:0;z-index:9999;background:var(--top);color:var(--text-top)}
.header-bar{max-width:1280px;margin:0 auto;padding:16px 20px;display:flex;align-items:center;gap:16px}

/* Logo + espace avant le menu */
.site-logo{margin-right:clamp(24px,3vw,56px)}
.site-logo a{display:flex;align-items:center;text-decoration:none;color:var(--text-top);font-weight:800;letter-spacing:.06em}
.site-logo img{max-height:36px;height:auto}

/* Burger */
.nav-toggle{margin-left:auto;background:none;border:0;cursor:pointer;display:none}
.nav-toggle span{display:block;width:24px;height:2px;background:var(--text-top);margin:5px 0}

/* Nav primary */
.nav-primary{display:flex;align-items:center;gap:24px;flex:1}
.nav-primary .level-1{display:flex;align-items:center;gap:32px;margin:0;padding:0;list-style:none}
.nav-primary .level-1 > li > a{
  color:var(--text-top);text-decoration:none;text-transform:uppercase;
  letter-spacing:.12em;font-weight:800;font-size:13px;padding:8px 0;
  display:inline-flex;align-items:center;gap:10px;white-space:nowrap;line-height:1.1;position:relative;
}

/* Flèche pour items avec sous-menu (grosse & centrée) */
:root{ --caret-size:18px; --caret-gap:10px; }
.nav-primary .menu-item-has-children > a{ gap:var(--caret-gap); }
.nav-primary .menu-item-has-children > a::after{
  content:"▾"; font-size:var(--caret-size); line-height:1; display:inline-block;
  transform-origin:center; transform:translateY(1px) rotate(0deg);
  transition:transform .2s ease; color:currentColor;
}
.nav-primary .menu-item-has-children:hover > a::after,
.nav-primary .menu-item-has-children:focus-within > a::after{ transform:translateY(1px) rotate(180deg); }

/* Bouton à droite */
.header-actions{margin-left:auto;display:flex;gap:12px}
.btn-contact{padding:8px 14px;border:1px solid rgba(0,0,0,.25);border-radius:8px;color:var(--text-top);text-decoration:none;font-weight:800;letter-spacing:.12em;background:transparent}
.btn-contact:hover{background:rgba(0,0,0,.06)}

/* Bande claire (sous le menu) */
.sub-band{background:var(--band);border-bottom:1px solid #e6e6e7}
.band-inner{max-width:1280px;margin:0 auto;padding:12px 20px;display:flex;gap:44px}
.band-link{background:none;border:0;cursor:pointer;padding:12px 0;font-weight:900;letter-spacing:.12em;color:#111;text-transform:uppercase}
.band-link.is-active{border-bottom:2px solid #111}

/* Mega panels */
.mega-wrap{max-width:1100px;margin:12px auto 20px auto;padding:0 20px}
.mega-panel{display:none;background:var(--panel);border:1px solid var(--panel_border, #E7DFD4);border-radius:var(--radius);box-shadow:var(--shadow);padding:24px;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.mega-panel.is-open{display:grid}
.card{border:1px solid #e6e6e6;border-radius:var(--radius);padding:16px;display:flex;flex-direction:column;gap:8px}
.card h3{margin:0;font-size:18px;color:#111}
.card p{margin:0;color:#555}
.card a{margin-top:auto;color:#111;font-weight:700;text-decoration:underline}
.mega-cta{grid-column:1/-1;background:var(--accent);border-radius:var(--radius);padding:14px 16px;text-align:center;color:#0a1a1a;font-weight:800;text-decoration:none}

/* Sous-menus (cartes claires) */
.nav-primary .level-1>li{position:relative}
.nav-primary .level-1 .sub-menu{
  list-style:none; position:absolute; left:0; top:100%; display:none;
  background:var(--panel); color:#111; border:1px solid var(--panel_border, #E7DFD4);
  border-radius:10px; box-shadow:0 10px 24px rgba(0,0,0,.12); padding:6px 0; min-width:220px; z-index:2000;
}
.nav-primary .level-1 .sub-menu li{margin:0}
.nav-primary .level-1 .sub-menu a{display:block;padding:10px 14px;color:#111;text-decoration:none;border-radius:6px;font-weight:600}
.nav-primary .level-1 .sub-menu a:hover{background:#f4f4f4}
.nav-primary .level-1>li:hover>.sub-menu,
.nav-primary .level-1>li:focus-within>.sub-menu{display:block}

/* Dropdown (si utilisé) */
.dropdown{position:relative}
.dropdown-panel{display:none;position:absolute;left:0;top:100%;transform:translateY(12px);background:#fff;border-radius:12px;box-shadow:var(--shadow);padding:14px;min-width:260px}
.dropdown-panel a{display:block;padding:10px 12px;color:#111;text-decoration:none;border-radius:8px}
.dropdown-panel a:hover{background:#f6f6f6}

/* ===== Mobile ===== */
@media (max-width:1024px){
  .nav-toggle{display:block}
  .nav-primary{position:fixed;inset:64px 0 0 0;background:var(--top);transform:translateY(-100%);transition:transform .25s ease;flex-direction:column;align-items:stretch;padding:16px}
  body.menu-open .nav-primary{transform:translateY(0)}
  .nav-primary .level-1{flex-direction:column;align-items:flex-start;gap:14px}
  .sub-band{display:none}
  body.menu-open + .sub-band, body.menu-open .sub-band{display:block}
  .mega-wrap{padding:0 16px}
  .mega-panel{grid-template-columns:1fr 1fr}

  /* Sous-menus empilés (ouverture au clic via .open) */
  .nav-primary .level-1 .sub-menu{position:static;background:transparent;border:0;box-shadow:none;padding:0 0 0 12px;display:none}
  .nav-primary .level-1>li.open>.sub-menu{display:block}

  /* Flèche tourne quand .open */
  .nav-primary .menu-item-has-children.open > a::after{ transform:translateY(1px) rotate(180deg); }
}
@media (max-width:640px){
  .mega-panel{grid-template-columns:1fr}
}

/* Force 100% largeur dans le Theme Builder */
.et-l--header .et_pb_section,
.et-l--header .et_pb_row{width:100%!important;max-width:100%!important;padding:0!important}
.et-l--header .et_pb_column,
.et-l--header .et_pb_module{padding:0!important;margin:0!important}
