/* ==== HEADER 100Voix — Lot A (v3 corrigé) ==== */
.site-header { background: #001787 !important; z-index: 9999 !important; position: relative !important; }
.header-inner { max-width: 1140px !important; }
.site-header .site-branding img { filter: brightness(0) invert(1) !important; }
.site-header .site-navigation a { color: #ffffff !important; }
.site-header .site-navigation a:hover, .site-header .site-navigation a:focus { color: #f8991d !important; }
.site-header .site-navigation .sub-menu, .site-header .site-navigation-dropdown ul {
  background: #ffffff !important;
  border-radius: 14px !important;
  box-shadow: 0 12px 28px rgba(0,23,135,0.18) !important;
  padding: .5rem 0 !important;
  border: 1px solid rgba(0,23,135,0.12) !important;
  z-index: 10000 !important;
}
.site-header .site-navigation .sub-menu a, .site-header .site-navigation-dropdown ul a {
  color: #001787 !important;
  font-family: Nunito, sans-serif !important;
  font-weight: 600 !important;
  padding: .55rem 1.2rem !important;
}
.site-header .site-navigation .sub-menu a:hover, .site-header .site-navigation-dropdown ul a:hover {
  color: #ff3b2f !important;
  background: #ffe3c9 !important;
}
.site-header .site-navigation .current-menu-item > a { color: #f8991d !important; }
.site-header .site-navigation-dropdown { background: #001787 !important; }
.site-header .site-navigation-dropdown .sub-menu { background: rgba(255,255,255,0.08) !important; }

/* Flèche dropdown: une seule, chevron blanc fin */
.site-header li.menu-item-has-children::after {
  content: none !important;
}
.site-header .menu-item-has-children > a::after {
  content: "❯" !important;
  display: inline-block;
  margin-left: 6px;
  font-size: 0.65em;
  color: #ffffff !important;
  transform: rotate(90deg);
  vertical-align: middle;
  font-weight: 700;
}
.site-header .menu-item-has-children > a:hover::after {
  color: #f8991d !important;
}

/* ==== FOOTER 100Voix — charte graphique ==== */
.site-footer, footer {
  background: #fde6ca !important;
}
.site-footer .site-navigation a, footer .site-navigation a,
.site-footer a, footer a {
  color: #001787 !important;
  font-family: Nunito, sans-serif !important;
  font-weight: 600 !important;
}
.site-footer .site-navigation a:hover, footer .site-navigation a:hover,
.site-footer a:hover, footer a:hover {
  color: #ff3b2f !important;
}
.site-footer .site-info, footer .site-info,
.site-footer p, footer p {
  color: #001787 !important;
}
.site-footer .site-branding img, footer .site-branding img {
  filter: none !important;
}

/* ==== ICON-LISTS pages ateliers — charte carotte ==== */
.elementor-element-114a69d .elementor-icon-list-icon,
.elementor-element-48e640d .elementor-icon-list-icon,
.elementor-element-fb2af41 .elementor-icon-list-icon,
.elementor-element-4d0d6e7 .elementor-icon-list-icon,
.elementor-element-4ac4584 .elementor-icon-list-icon,
.elementor-element-1ef882d .elementor-icon-list-icon {
  color: #ff3b2f !important;
  fill: #ff3b2f !important;
  --e-icon-list-icon-color: #ff3b2f !important;
}
.elementor-element-114a69d .elementor-icon-list-icon svg,
.elementor-element-48e640d .elementor-icon-list-icon svg,
.elementor-element-fb2af41 .elementor-icon-list-icon svg,
.elementor-element-4d0d6e7 .elementor-icon-list-icon svg,
.elementor-element-4ac4584 .elementor-icon-list-icon svg,
.elementor-element-1ef882d .elementor-icon-list-icon svg {
  fill: #ff3b2f !important;
  color: #ff3b2f !important;
}

/* ==== CONTACT V3 (2928) — cartes compactes ==== */
.elementor-element-5d4543f { gap: 0px !important; }
.elementor-element-5d4543f > .e-con-inner { gap: 0px !important; padding-top: 10px !important; padding-bottom: 10px !important; }
.elementor-element-afd0b8b { align-content: start !important; align-items: start !important; }
.elementor-element-afd0b8b > .e-con-inner { align-content: start !important; align-items: start !important; gap: 16px !important; }
.elementor-element-1bab6dd > .e-con-inner,
.elementor-element-a6fc897 > .e-con-inner,
.elementor-element-00a2c94 > .e-con-inner {
  padding: 14px 14px !important;
  gap: 8px !important;
}
.elementor-element-1bab6dd .elementor-widget-heading,
.elementor-element-a6fc897 .elementor-widget-heading,
.elementor-element-00a2c94 .elementor-widget-heading { margin-bottom: 2px !important; }
.elementor-element-1bab6dd .elementor-widget-text-editor,
.elementor-element-a6fc897 .elementor-widget-text-editor,
.elementor-element-00a2c94 .elementor-widget-text-editor { margin-bottom: 4px !important; }
.elementor-element-1bab6dd .elementor-widget-html div,
.elementor-element-a6fc897 .elementor-widget-html div,
.elementor-element-00a2c94 .elementor-widget-html div { margin-bottom: 0 !important; }
/* V4 impact - titres des chiffres cles sur une ligne */
.elementor-element-447ba3e .elementor-counter-title,
.elementor-element-07a5813 .elementor-counter-title,
.elementor-element-2a1f84e .elementor-counter-title,
.elementor-element-675e885 .elementor-counter-title {
  font-size: 15px !important;
  line-height: 1.25 !important;
}

/* V4 impact - libelles chiffres cles : tenir sur 1 ligne (aussi @1024) */
.elementor-element-447ba3e .elementor-counter-title,
.elementor-element-07a5813 .elementor-counter-title,
.elementor-element-2a1f84e .elementor-counter-title,
.elementor-element-675e885 .elementor-counter-title {
  font-size: 14px !important;
  line-height: 1.2 !important;
}
/* V4 impact - image constat terrain pleine largeur */
.elementor-element-3d3c815 { width: 100% !important; max-width: 100% !important; }
.elementor-element-3d3c815 img { width: 100% !important; object-fit: cover !important; }

/* V4 impact - libelles chiffres cles : 13px pour tenir des 1024px */
.elementor-element-447ba3e .elementor-counter-title,
.elementor-element-07a5813 .elementor-counter-title,
.elementor-element-2a1f84e .elementor-counter-title,
.elementor-element-675e885 .elementor-counter-title {
  font-size: 13px !important;
  line-height: 1.15 !important;
}

/* V4 impact - chiffres cles : grille 2x2 sous 1100px pour garder les libelles sur 1 ligne */
@media (max-width: 1100px) {
  .elementor-element-c187274 { grid-template-columns: repeat(2, 1fr) !important; }
}
.elementor-element-447ba3e .elementor-counter-title,
.elementor-element-07a5813 .elementor-counter-title,
.elementor-element-2a1f84e .elementor-counter-title,
.elementor-element-675e885 .elementor-counter-title {
  font-size: 14px !important;
  line-height: 1.2 !important;
}

/* V4 impact - libelles chiffres cles plus grands (16px) */
.elementor-element-447ba3e .elementor-counter-title,
.elementor-element-07a5813 .elementor-counter-title,
.elementor-element-2a1f84e .elementor-counter-title,
.elementor-element-675e885 .elementor-counter-title {
  font-size: 16px !important;
  line-height: 1.25 !important;
}
/* V4 contact - cartes coordonnees : texte centré dans la carte, icone à gauche */
.elementor-element-2343603, .elementor-element-1a4d288, .elementor-element-d072b0d { position: relative !important; }
.elementor-element-2b9fc72, .elementor-element-fcec28c, .elementor-element-0c4362d { width: 100% !important; flex: 1 !important; }

/* V4 contact - texte des cartes coordonnees parfaitement centré */
.elementor-element-2b9fc72, .elementor-element-fcec28c, .elementor-element-0c4362d {
  position: absolute !important;
  inset: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.elementor-element-2343603, .elementor-element-1a4d288, .elementor-element-d072b0d { min-height: 74px !important; }

/* V4 impact - libelles chiffres cles : 20px + grille 2x2 de 801 a 1600px */
.elementor-element-447ba3e .elementor-counter-title,
.elementor-element-07a5813 .elementor-counter-title,
.elementor-element-2a1f84e .elementor-counter-title,
.elementor-element-675e885 .elementor-counter-title {
  font-size: 20px !important;
  line-height: 1.25 !important;
}
@media (min-width: 801px) and (max-width: 1600px) {
  .elementor-element-c187274 { grid-template-columns: repeat(2, 1fr) !important; }
}

/* V4 contact - widgets html cartes coordonnees : pleine largeur */
.elementor-element-e824b54, .elementor-element-455c5d4, .elementor-element-b8fc6f7 { width: 100% !important; }

/* V4 GLOBAL — bouton Faire un don (HelloAsso) header */
.site-header li.menu-item.cta-don > a {
  background: #ff3b2f;
  color: #ffffff !important;
  border-radius: 999px;
  padding: 0.5rem 1.25rem !important;
  font-weight: 700;
  transition: background .2s ease, transform .2s ease;
  box-shadow: 0 4px 12px rgba(255, 59, 47, .35);
}
.site-header li.menu-item.cta-don > a:hover {
  background: #e02b20;
  color: #ffffff !important;
  transform: translateY(-1px);
}

/* V4 GLOBAL fix — header sur une ligne (logo + menu) */
.site-header .header-inner { width: 100% !important; flex-wrap: nowrap !important; }
.site-header .site-navigation ul.menu { flex-wrap: nowrap !important; }
