/* 3.7.3 (2026-10-27) — pied de page V3 (footer.pied) et en-tête principal, pour les pages canoniques qui ne chargent
   pas v3.css (articles, SSK, Vie de Muntu, Rosette, fiches, Ikemba, Lectures, Contact). Valeurs reprises de v3.css ;
   portée limitée à .pied et .qm3-entete, priorité renforcée contre les règles génériques des pages d'origine
   (footer{…}, nav a{…}, h2{…}). */
footer.pied, .qm3-entete {
  --or: #d5aa42; --or-clair: #e8c66c; --vert-pied: #0d3b30; --marge: max(16px, min(1.8vw, 26px));
  --f-titre: Georgia, "Times New Roman", serif; --f-texte: Arial, Helvetica, sans-serif;
  box-sizing: border-box; font-family: var(--f-texte); -webkit-text-size-adjust: 100%;
}
footer.pied *, footer.pied *::before, footer.pied *::after, .qm3-entete *, .qm3-entete *::before, .qm3-entete *::after { box-sizing: border-box; }
html body footer.pied {
  display: block !important; position: static !important; width: auto !important; height: auto !important; min-height: 0 !important;
  margin: 0 !important; padding: 0 0 env(safe-area-inset-bottom, 0px) !important; border: 0 !important; flex: none !important;
  background: var(--vert-pied) !important; color: #fff !important; text-align: left !important; font-size: 16px; line-height: 1.5;
}
footer.pied .cadre { width: 100%; max-width: calc(1628px + 2 * var(--marge)); margin: 0 auto; padding: 0 var(--marge); }
footer.pied .pied__grille { display: grid; gap: 24px; padding-block: 26px 18px; height: auto; }
footer.pied a.pied__marque { display: flex; align-items: center; gap: 18px; width: fit-content; color: #fff !important; text-decoration: none !important; }
footer.pied .pied__logo { width: 60px !important; height: 60px !important; max-width: none; object-fit: contain; flex: none; display: block; }
footer.pied .titre--pied { margin: 0; font: 700 1.625rem/1.1 var(--f-titre); color: #fff; letter-spacing: 0; text-transform: none; }
footer.pied a.pied__marque:hover .titre--pied, footer.pied a.pied__marque:focus-visible .titre--pied { color: var(--or); text-decoration: underline; text-underline-offset: 4px; }
footer.pied a.pied__marque:focus-visible { outline: 3px solid var(--or); outline-offset: 4px; }
footer.pied h2.etiquette { display: block; margin: 0 0 8px; padding: 0; font: 800 0.875rem/1.3 var(--f-texte); letter-spacing: 0.16em; text-transform: uppercase; color: var(--or-clair); border: 0; background: none; }
footer.pied .pied__contact { margin: 0; font-size: 1rem; line-height: 1.6; color: rgba(255,255,255,.88); }
footer.pied .pied__contact a { color: inherit !important; text-decoration: none; }
footer.pied .pied__contact a:hover, footer.pied .pied__liens a:hover { color: var(--or) !important; text-decoration: underline; }
footer.pied .reseaux { list-style: none; margin: 0 0 8px; padding: 0; display: flex; gap: 10px; }
footer.pied .reseaux li { margin: 0; padding: 0; }
footer.pied .reseaux a { display: grid; place-items: center; width: 44px; height: 44px; }
footer.pied .reseaux img { width: 38px; height: 38px; max-width: none; object-fit: cover; display: block; }
footer.pied .pied__mention { margin: 0; font-size: 0.9375rem; color: rgba(255,255,255,.8); }
footer.pied .pied__bas { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 4px 24px; padding-block: 8px 12px; border-top: 1px solid rgba(255,255,255,.14); font-size: 0.9375rem; color: rgba(255,255,255,.82); }
footer.pied .pied__bas p { margin: 0; }
footer.pied nav { display: block !important; position: static !important; width: auto !important; height: auto !important; background: none !important; border: 0 !important; margin: 0 !important; padding: 0 !important; }
footer.pied .pied__liens { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 4px 20px; }
footer.pied .pied__liens li { margin: 0; padding: 0; }
footer.pied .pied__liens a { display: inline-block !important; padding: 6px 0 !important; margin: 0 !important; font: 700 0.9375rem/1.4 var(--f-texte) !important; letter-spacing: 0 !important; text-transform: none !important; text-decoration: none; color: #fff !important; border: 0 !important; }
footer.pied a:focus-visible { outline: 3px solid var(--or); outline-offset: 3px; }
footer.pied .sr { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
@media (min-width: 48rem) { footer.pied .pied__grille { grid-template-columns: 1.6fr 1fr 1fr; align-items: center; } }
@media print { footer.pied, .qm3-entete { display: none !important; } }

/* En-tête principal (page Contact) : même composition que l'en-tête V3 (header.php). */
html body header.qm3-entete {
  display: block !important; position: sticky; top: 0; z-index: 100; height: auto !important; margin: 0 !important;
  background: #0c0d0c !important; color: #fff; border-bottom: 1px solid #302a21; padding: env(safe-area-inset-top, 0px) 0 0 !important;
}
.qm3-entete__barre { max-width: calc(1628px + 2 * var(--marge)); margin: 0 auto; padding: 0 var(--marge); min-height: 72px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.qm3-entete a { color: #fff; text-decoration: none; }
.qm3-entete__marque { display: inline-flex; align-items: center; gap: 11px; flex-shrink: 0; }
.qm3-entete__logo { width: 42px !important; height: 42px !important; max-width: none; object-fit: contain; display: block; }
.qm3-entete__nom { display: flex; flex-direction: column; font: 800 0.9375rem/1.05 var(--f-texte); letter-spacing: 0.08em; text-transform: uppercase; color: #fff; }
.qm3-entete__nav, .qm3-entete__don { display: none; }
.qm3-entete__liste { list-style: none; margin: 0; padding: 0; }
.qm3-entete__liste li { margin: 0; padding: 0; }
.qm3-entete__menu { display: inline-flex; align-items: center; gap: 10px; min-height: 44px; padding: 0 14px; background: none; border: 1px solid #6b624f; border-radius: 4px; color: #fff; font: 800 0.9375rem/1 var(--f-texte); letter-spacing: 0.12em; text-transform: uppercase; cursor: pointer; }
.qm3-entete__menu-icone { display: block; width: 18px; height: 2px; background: currentColor; box-shadow: 0 -6px 0 currentColor, 0 6px 0 currentColor; }
.qm3-entete__sr { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.qm3-entete a:focus-visible, .qm3-entete button:focus-visible { outline: 3px solid var(--or); outline-offset: 3px; }
@media (min-width: 75rem) {
  .qm3-entete__menu { display: none; }
  .qm3-entete__nav { display: flex; flex: 1; justify-content: center; }
  .qm3-entete__liste { display: flex; flex-wrap: nowrap; justify-content: center; gap: clamp(14px, calc((100vw - 1060px) / 8), 34px); }
  .qm3-entete__liste a { display: block; padding: 6px 0; font: 800 0.9375rem/1 var(--f-texte); letter-spacing: 0.05em; text-transform: uppercase; white-space: nowrap; border-bottom: 1px solid transparent; }
  .qm3-entete__liste a:hover, .qm3-entete__liste a[aria-current="page"] { color: var(--or); border-bottom-color: var(--or); }
  .qm3-entete__don { display: inline-flex; align-items: center; flex-shrink: 0; white-space: nowrap; min-height: 38px; padding: 12px 18px; background: var(--or); color: #16130e !important; font: 800 0.9375rem/1 var(--f-texte); letter-spacing: 0.06em; text-transform: uppercase; }
  .qm3-entete__don:hover { background: var(--or-clair); }
}
@media (min-width: 75rem) and (max-width: 82.99rem) {
  .qm3-entete__nom { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
}
@media (min-width: 83rem) { .qm3-entete__liste { gap: clamp(16px, calc((100vw - 1190px) / 8), 34px); } }

/* 3.7.4 — Boutiques MUNTU et NKENTO : bande « repères » (colonnes de l'ancien pied de boutique) au-dessus du pied commun. */
.qm3-boutique-reperes { box-sizing: border-box; background: #f4ede2; color: #1f302a; border-top: 1px solid #b48a3166; font-family: Arial, Helvetica, sans-serif; padding: 30px max(16px, min(3vw, 36px)) 26px; }
.qm3-boutique-reperes *, .qm3-boutique-reperes *::before, .qm3-boutique-reperes *::after { box-sizing: border-box; }
.qm3-boutique-reperes__in { max-width: 1450px; margin: 0 auto; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr)); gap: 22px clamp(24px, 4vw, 64px); }
.qm3-boutique-reperes__in > div { display: flex; flex-direction: column; align-items: flex-start; min-width: 0; }
.qm3-boutique-reperes h4 { margin: 0 0 12px; padding: 0; font: 800 .8125rem/1.3 Arial, Helvetica, sans-serif; letter-spacing: .16em; text-transform: uppercase; color: #7a5a12; }
.qm3-boutique-reperes p { margin: 0 0 8px; font-size: .9375rem; line-height: 1.6; color: #1f302a; overflow-wrap: anywhere; }
.qm3-boutique-reperes a { display: inline-block; margin: 0 0 8px; font-size: .9375rem; line-height: 1.5; font-weight: 700; color: #0a2e27; text-decoration: none; border-bottom: 1px solid #0a2e2733; }
.qm3-boutique-reperes p a { margin: 0; }
.qm3-boutique-reperes a:hover { border-bottom-color: #b48a31; }
.qm3-boutique-reperes a:focus-visible { outline: 3px solid #b48a31; outline-offset: 3px; }
.qm3-boutique-reperes__note { max-width: 1450px; margin: 14px auto 0 !important; padding-top: 12px; border-top: 1px solid #b48a3140; font-size: .875rem !important; color: #4a433b !important; }
