/* ── Header : burger menu mobile ──
   Le header est un template Elementor v4 (boutons atomiques, pas de nav-menu).
   Le burger + le repli mobile sont ajoutés ici (CSS) + vp-header.js (toggle).
   Sélecteurs basés sur les classes stables du template : .e-hdr0001-out (barre),
   .e-hdr0002-wrp (logo+nav), .e-hdr0004-nav (liens + CTA).
   !important nécessaire pour neutraliser le reset.css de hello-elementor
   (styles agressifs sur les <button>). */

/* Bouton burger : masqué en desktop, injecté par JS dans .e-hdr0002-wrp.
   !important pour battre reset.css (button { display:inline-block }). */
.vp-burger { display: none !important; }

@media (max-width: 767px) {
  .e-hdr0001-out { position: relative; }
  .e-hdr0002-wrp { align-items: center; }

  /* Nav repliée par défaut */
  .e-hdr0004-nav { display: none !important; }

  /* Burger visible */
  .vp-burger {
    display: inline-flex !important;
    align-items: center; justify-content: center;
    width: 44px !important; height: 44px; margin-left: auto; padding: 8px;
    background: transparent !important; border: 0 !important; box-shadow: none !important;
    cursor: pointer; color: var(--foreground, #000); transition: color .2s;
  }
  .vp-burger:hover { color: var(--primary, #f1b8a0); }
  .vp-burger svg { width: 24px; height: 24px; }
  .vp-burger__menu  { display: block; }
  .vp-burger__close { display: none; }

  /* État ouvert : la nav devient un panneau déroulant plein largeur sous la barre */
  .e-hdr0001-out.vp-nav-open .e-hdr0004-nav {
    display: flex !important;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    position: absolute; top: 100%; left: 0; right: 0; z-index: 100;
    background: var(--background, #fff);
    border-top: 1px solid rgba(0,0,0,.08);
    box-shadow: 0 20px 40px rgba(0,0,0,.08);
    padding: 4px 24px 16px;
  }

  /* Chaque entrée : pleine largeur, alignée à gauche, séparateur */
  .e-hdr0001-out.vp-nav-open .e-hdr0004-nav > * {
    width: 100%;
    justify-content: flex-start;
    text-align: left;
    padding-top: 14px; padding-bottom: 14px;
    border-bottom: 1px solid rgba(0,0,0,.06);
  }
  .e-hdr0001-out.vp-nav-open .e-hdr0004-nav > *:last-child { border-bottom: 0; padding-bottom: 6px; }

  /* Icône burger ↔ croix selon l'état */
  .e-hdr0001-out.vp-nav-open .vp-burger__menu  { display: none; }
  .e-hdr0001-out.vp-nav-open .vp-burger__close { display: block; }
}
