/* Start custom CSS for html, class: .elementor-element-77f987d0 *//* ── Header responsive ─────────────────────────────── */

.afj-header {
  position: sticky;
  top: 0;
  z-index: 100;
  background: #fff;
  border-bottom: 1px solid #e8e2d9;
}

.afj-header-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 64px;
  gap: 1rem;
}

/* Icone chevron sur "Dossiers" */
.afj-has-submenu > a::after {
  content: "";
  display: inline-block;
  width: 0; height: 0;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 4px solid currentColor;
  margin-left: 5px;
  vertical-align: middle;
  opacity: 0.6;
  transition: transform 0.2s;
}
.afj-has-submenu:hover > a::after,
.afj-has-submenu.is-open > a::after {
  transform: rotate(180deg);
}

/* ── Burger button (masqué desktop) ─────────────────── */
.afj-burger {
  display: none;
  flex-direction: column;
  justify-content: center;
  gap: 5px;
  width: 40px; height: 40px;
  background: none;
  border: none;
  cursor: pointer;
  border-radius: 6px;
  padding: 8px;
  flex-shrink: 0;
}
.afj-burger span {
  display: block;
  height: 1.5px;
  background: #2c2c2a;
  border-radius: 2px;
  transition: transform 0.25s, opacity 0.25s;
}
.afj-burger[aria-expanded="true"] span:nth-child(1) { transform: translateY(6.5px) rotate(45deg); }
.afj-burger[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
.afj-burger[aria-expanded="true"] span:nth-child(3) { transform: translateY(-6.5px) rotate(-45deg); }

/* ── Mobile ≤ 768px ─────────────────────────────────── */
@media (max-width: 768px) {
  .afj-burger { display: flex; }

  .afj-nav {
    display: none;
    position: absolute;
    top: 64px; left: 0; right: 0;
    background: #fff;
    border-bottom: 1px solid #e8e2d9;
    box-shadow: 0 8px 24px rgba(0,0,0,0.08);
    padding: 0.75rem 1rem 1rem;
    z-index: 99;
  }
  .afj-nav.is-open { display: block; }

  .afj-menu { flex-direction: column; align-items: stretch; gap: 0; }
  .afj-menu > li > a { padding: 0.75rem 0.5rem; font-size: 0.9375rem; }

  .afj-has-submenu > a::after { float: right; margin-top: 8px; }

  /* Sous-menu mobile : inline, pas de position absolute */
  .afj-submenu {
    display: none;
    position: static;
    box-shadow: none;
    border: none;
    border-radius: 0;
    padding: 0.25rem 0 0.25rem 1rem;
    background: transparent;
  }
  .afj-has-submenu.is-open .afj-submenu { display: block; }
  .afj-submenu li a { font-size: 0.875rem; padding: 0.5rem 0.5rem; color: #5f5e5a; }
  .afj-submenu li:last-child { border-top: 1px solid #e8e2d9; margin-top: 0.375rem; padding-top: 0.375rem; }

  .afj-menu-cta { text-align: center; margin-top: 0.5rem; }
}

/* Regrouper search + burger à droite sur mobile */
.afj-header-actions {
  display: flex;
  align-items: center;
  gap: 4px;
  margin-left: auto; /* pousse vers la droite sur mobile */
}
@media (min-width: 769px) {
  .afj-header-actions { display: contents; } /* désactive le groupe desktop */
}

/* ── Tablet + Mobile ≤ 900px ─────────────────────────── */
@media (max-width: 900px) {
  .afj-burger { display: flex; }

  .afj-header .afj-nav {
    display: none;
    position: absolute;
    top: 64px; left: 0; right: 0;
    background: #fff;
    border-bottom: 1px solid #e8e2d9;
    box-shadow: 0 8px 24px rgba(0,0,0,0.08);
    padding: 0.75rem 1rem 1rem;
    z-index: 99;
  }
  .afj-header .afj-nav.is-open { display: block; }

  .afj-menu { flex-direction: column; align-items: stretch; gap: 0; }
  .afj-menu > li > a { padding: 0.75rem 0.5rem; font-size: 0.9375rem; }

  .afj-has-submenu > a::after { float: right; margin-top: 8px; }

  .afj-submenu {
    display: none;
    position: static;
    box-shadow: none;
    border: none;
    border-radius: 0;
    padding: 0.25rem 0 0.25rem 1rem;
    background: transparent;
  }
  .afj-has-submenu.is-open .afj-submenu { display: block; }
  .afj-submenu li a { font-size: 0.875rem; padding: 0.5rem 0.5rem; color: #5f5e5a; }
  .afj-submenu li:last-child { border-top: 1px solid #e8e2d9; margin-top: 0.375rem; padding-top: 0.375rem; }
  .afj-menu-cta { text-align: center; margin-top: 0.5rem; }
}

/* ── Regrouper search + burger à droite ─────────────── */
.afj-header-actions {
  display: flex;
  align-items: center;
  gap: 4px;
  margin-left: auto;
}

@media (min-width: 901px) {
  .afj-header-actions { display: contents; }
  .afj-burger { display: none !important; }
}/* End custom CSS */