/* Footer Michelis inspiré d'une composition institutionnelle claire et aérée. */
@font-face {
  font-family: MichelisFooter;
  src: url('../fonts/lato-400-normal.woff2') format('woff2');
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}
@font-face {
  font-family: MichelisFooter;
  src: url('../fonts/lato-700-normal.woff2') format('woff2');
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}
.mh-footer {
  --footer-ink: #17333d;
  --footer-muted: #71808a;
  --footer-pink: #cc0049;
  display: block;
  clear: both;
  width: 100%;
  margin: 0;
  padding: 48px 0 20px;
  border: 0;
  background: #fff;
  color: var(--footer-ink);
  font: 400 14px/1.5 MichelisFooter, Arial, sans-serif;
  text-align: center;
  letter-spacing: normal;
  text-transform: none;
  overflow-wrap: break-word;
}
.mh-footer, .mh-footer *, .mh-footer *::before, .mh-footer *::after { box-sizing: border-box; }
.mh-footer p, .mh-footer address, .mh-footer figure { margin: 0; padding: 0; border: 0; background: transparent; color: inherit; font: inherit; }
.mh-footer a { border: 0; background: transparent; color: inherit; font: inherit; text-decoration: none; }
.mh-footer a:hover { color: var(--footer-pink); }
.mh-footer a:focus-visible { outline: 3px solid #e78bab; outline-offset: 5px; }
.mh-footer img { display: block; float: none; max-width: 100%; margin: 0; padding: 0; border: 0; }
.mh-footer > .mh-container { width: min(var(--mh-frame-max,1400px),calc(100% - var(--mh-frame-gutter,128px))); margin-inline: auto; padding: 0; }
.mh-footer-heading { display: flex; flex-direction: column; align-items: center; }
.mh-footer-mark { display: block; width: 170px; }
.mh-footer-mark img { width: 170px; height: 92px; object-fit: contain; }
.mh-footer-contact { width: min(330px,100%); margin-top: 15px; padding: 0 0 8px; display: grid; grid-template-columns:1fr auto; align-items: end; column-gap: 16px; border-bottom: 1px solid #b7c0c4!important; text-align: left; }
.mh-footer-contact span:first-child { grid-column: 1/-1; color: var(--footer-muted); font-size: 9px; letter-spacing: 1.3px; text-transform: uppercase; }
.mh-footer-contact strong { font-size: 13px; font-weight: 400; letter-spacing: .5px; text-transform: uppercase; }
.mh-footer-contact span:last-child { color: var(--footer-pink); font-size: 19px; line-height: 1; transition: transform .2s; }
.mh-footer-contact:hover span:last-child { transform: translateX(4px); }
.mh-footer-nav { margin-top: 21px; display: flex; flex-wrap: wrap; justify-content: center; gap: 10px 30px; color: var(--footer-muted); font-size: 10px; font-weight: 400; letter-spacing: .45px; text-transform: uppercase; }
.mh-footer-nav a { position: relative; }
.mh-footer-nav a::after { content: ''; position: absolute; left: 0; right: 100%; bottom: -4px; height: 1px; background: var(--footer-pink); transition: right .2s; }
.mh-footer-nav a:hover::after { right: 0; }
.mh-footer-labels { width: min(980px,100%); margin: 45px auto 18px; display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); align-items: center; gap: 34px 54px; }
.mh-footer-labels > a { min-width: 0; min-height: 108px; display: flex; align-items: center; justify-content: center; }
.mh-footer-labels img { width: auto; max-width: 160px; max-height: 78px; object-fit: contain; filter: grayscale(1) sepia(.22) saturate(1.45) hue-rotate(286deg) brightness(.78); opacity: .52; transition: opacity .2s,filter .2s,transform .2s; }
.mh-footer-labels > a:nth-child(1) img { max-height: 92px; }
.mh-footer-labels > a:nth-child(2) img { max-height: 88px; }
.mh-footer-labels > a:nth-child(4) img { max-height: 86px; }
.mh-footer-labels > a:nth-child(8) img { max-height: 88px; }
.mh-footer-labels > a:nth-child(9) { grid-column: 2; }
.mh-footer-labels > a:nth-child(10) { grid-column: 3; }
.mh-footer-labels > a:nth-child(9) img,.mh-footer-labels > a:nth-child(10) img { max-width: 190px; }
.mh-footer-labels > a:hover img { filter: grayscale(1) sepia(.38) saturate(1.8) hue-rotate(286deg) brightness(.74); opacity: .72; transform: translateY(-2px); }
body.page_login { margin: 0; padding: 0; }
.page_login #minipres { margin: 5% auto; }
@media (max-width: 1100px) {
  .mh-footer > .mh-container { width: min(var(--mh-frame-max,1400px),calc(100% - var(--mh-frame-gutter-tablet,64px))); }
  .mh-footer-labels { width: min(820px,100%); gap: 28px 36px; }
}
@media (max-width: 760px) {
  .mh-footer { padding: 38px 0 18px; }
  .mh-footer > .mh-container { width: calc(100% - var(--mh-frame-gutter-mobile,32px)); }
  .mh-footer-mark, .mh-footer-mark img { width: 145px; }
  .mh-footer-nav { gap: 9px 18px; }
  .mh-footer-labels { margin: 34px auto 10px; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px 28px; }
  .mh-footer-labels > a { min-height: 82px; }
  .mh-footer-labels > a:nth-child(9),.mh-footer-labels > a:nth-child(10) { grid-column: auto; }
  .mh-footer-labels img { max-width: 140px; max-height: 70px; }
}
@media (max-width: 640px) { .page_login #minipres { margin: 5% 1%; } }
