/* En-tête et pied de page communs aux pages IA.
   Classes préfixées « mca- » et déclarations forcées : chaque page IA possède son propre style
   pour les balises nav, header et footer, qui s'appliquerait sinon à ce cadre commun. */
.mca-top, .mca-head, .mca-foot, .mca-nav, .mca-head .mca-wrap, .mca-top .mca-wrap, .mca-foot .mca-wrap {
  position: static !important; top: auto !important; left: auto !important; right: auto !important; bottom: auto !important;
  transform: none !important; backdrop-filter: none !important; box-shadow: none !important;
  width: auto !important; max-width: none !important; min-height: 0 !important; height: auto !important;
  text-align: left !important; border-radius: 0 !important; overflow: visible !important;
  font-family: "Inter", "Segoe UI", system-ui, -apple-system, Arial, sans-serif !important;
  font-size: 16px; line-height: 1.6; letter-spacing: normal; text-transform: none;
}
.mca-top *, .mca-head *, .mca-foot * { box-sizing: border-box; }
.mca-wrap { max-width: 1180px !important; margin: 0 auto !important; padding: 0 22px !important; }

.mca-top { background: #141A21 !important; color: #AEB7C1 !important; font-size: .9rem !important; padding: 0 !important; margin: 0 !important; border: 0 !important; }
.mca-top .mca-wrap { display: flex !important; justify-content: space-between; gap: 16px; flex-wrap: wrap; padding-top: 7px !important; padding-bottom: 7px !important; }
.mca-top a { color: #fff !important; text-decoration: none !important; margin-left: 18px; font-size: .9rem; }

.mca-head { background: #fff !important; border-bottom: 1px solid #DDE2E8 !important; padding: 0 !important; margin: 0 !important; }
.mca-head .mca-wrap { display: flex !important; align-items: center; justify-content: space-between; gap: 20px; padding-top: 10px !important; padding-bottom: 10px !important; }
.mca-head a { text-decoration: none !important; }
.mca-head img { width: 118px !important; height: auto !important; display: block !important; margin: 0 !important; filter: none !important; opacity: 1 !important; }
.mca-nav { display: flex !important; align-items: center; gap: 2px; flex-wrap: wrap; background: none !important; padding: 0 !important; border: 0 !important; }
.mca-nav a { font-weight: 600 !important; font-size: .95rem !important; color: #141A21 !important; padding: 9px 10px !important; background: none !important; border: 0 !important; display: inline-block !important; }
.mca-nav a:hover { color: #B4232C !important; }
.mca-nav .mca-cta { background: #B4232C !important; color: #fff !important; padding: 9px 20px 9px 14px !important; margin-left: 6px; clip-path: polygon(0 0, 100% 0, calc(100% - 10px) 100%, 0 100%); }
.mca-nav .mca-cta:hover { background: #141A21 !important; color: #fff !important; }
.mca-burger { display: none; font: 600 1rem/1 "Inter", sans-serif; background: #141A21; color: #fff; border: 0; padding: 11px 18px; cursor: pointer; }

.mca-foot { background: #141A21 !important; color: #AEB7C1 !important; padding: 44px 0 0 !important; margin: 0 !important; border: 0 !important; }
.mca-foot-grid { display: grid !important; grid-template-columns: 1.1fr 1.2fr 1fr; gap: 32px; }
.mca-foot h2 { color: #fff !important; font-size: 1.05rem !important; letter-spacing: .04em !important; text-transform: uppercase !important; margin: 0 0 10px !important; font-weight: 700 !important; }
.mca-foot p { margin: 0 0 10px !important; color: #AEB7C1 !important; font-size: .98rem !important; }
.mca-foot a { color: #fff !important; text-decoration: none !important; }
.mca-foot a:hover { text-decoration: underline !important; }
.mca-foot ul { list-style: none !important; margin: 0 !important; padding: 0 !important; }
.mca-foot li { margin-bottom: 6px !important; font-size: .98rem; }
.mca-foot img { background: #fff !important; padding: 9px !important; width: 132px !important; margin-bottom: 12px !important; display: block !important; }
.mca-foot-bottom { border-top: 1px solid #2C353F !important; margin-top: 34px !important; padding: 15px 0 20px !important; font-size: .88rem !important; }

@media (max-width: 980px) {
  .mca-burger { display: block !important; }
  .mca-head { position: relative !important; }
  .mca-nav { display: none !important; position: absolute !important; left: 0 !important; right: 0 !important; top: 100% !important; background: #fff !important; flex-direction: column !important; align-items: stretch; padding: 6px 22px 16px !important; border-bottom: 1px solid #DDE2E8 !important; z-index: 60; }
  .mca-nav.open { display: flex !important; }
  .mca-nav a { padding: 13px 0 !important; border-bottom: 1px solid #EEF1F4 !important; }
  .mca-nav .mca-cta { margin: 12px 0 0; text-align: center !important; }
  .mca-foot-grid { grid-template-columns: 1fr; }
}
@media (max-width: 640px) { .mca-top .mca-wrap > span:first-child { display: none; } }
