/* Pied de page commun (chargé sur tout le site). Mesures d'après la maquette : grand nom noir, colonnes à droite, filet, ligne légale. */
@font-face{font-family:"Balivia";src:url("../fonts/Balivia-Black.woff") format("woff");font-weight:900;font-display:swap}
@font-face{font-family:"Inter MP";src:url("../fonts/Inter-latin-ext.woff2") format("woff2");font-weight:100 900;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Inter MP";src:url("../fonts/Inter-latin.woff2") format("woff2");font-weight:100 900;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

.mp-footer{--f-bordeaux:#89023E;--f-muted:#616161;--f-link:#424242;--f-line:rgba(0,0,0,.1);position:relative;background:#fff;color:#000;font-family:"Inter MP",system-ui,-apple-system,"Segoe UI",sans-serif;font-size:16px;line-height:1.5;clear:both}
.mp-footer *{box-sizing:border-box}
.mp-footer p{margin:0}
.mp-footer a{color:inherit;text-decoration:none}
.mp-footer::before{content:"";position:absolute;inset:0 0 auto 0;height:1px;background:var(--f-line)}
.mp-footer__glow{position:absolute;inset:0;z-index:0;overflow:hidden;contain:strict;isolation:isolate;pointer-events:none}
.mp-footer__glow i{position:absolute;top:0;left:0;border-radius:9999px;transform:translateY(-350px) rotate(-45deg);background:radial-gradient(50% 50% at 50% 50%,rgba(137,2,62,.07) 0,rgba(137,2,62,.02) 80%,transparent 100%)}
.mp-footer__glow i:nth-child(1){width:560px;height:1280px;background:radial-gradient(68.54% 68.72% at 55.02% 31.46%,rgba(137,2,62,.1) 0,rgba(137,2,62,.035) 50%,rgba(137,2,62,.01) 80%)}
.mp-footer__glow i:nth-child(2){width:240px;height:1280px;transform:translate(5%,-50%) rotate(-45deg)}
.mp-footer__glow i:nth-child(3){width:240px;height:1280px}
.mp-footer__fixed{position:relative;background:#fff}
.mp-footer__mark,.mp-footer__frame{position:relative;z-index:1}
/* Sticky footer : le pied de page reste fixé en bas et se dévoile quand le contenu défile (activé par footer.js si la hauteur tient dans l'écran) */
.mp-footer.is-curtain{height:var(--mp-footer-h);clip-path:polygon(0 0,100% 0,100% 100%,0 100%)}
.mp-footer.is-curtain .mp-footer__fixed{position:fixed;bottom:0;left:0;width:100%;height:var(--mp-footer-h);z-index:0}

/* Grand nom : deux lignes serrées, centrées, ~73 % de la largeur */
.mp-footer__mark{position:relative;display:flex;flex-direction:column;align-items:center;padding:clamp(40px,5.5vh,96px) 0 clamp(28px,4.5vh,80px);font-family:"Balivia","Times New Roman",serif;font-weight:900;font-size:min(22.7vw,30vh);line-height:.81;letter-spacing:-.028em;text-transform:uppercase;white-space:nowrap;color:#000}
.mp-footer__mark .ln{display:block;padding:.04em .02em 0}
.mp-footer__mark .ln>span{display:block}

.mp-footer__frame{position:relative;max-width:1312px;margin:0 auto;padding:0 clamp(20px,2.8vw,40px) clamp(20px,3vh,56px);border-inline:1px solid var(--f-line)}
.mp-footer__cols{display:flex;justify-content:space-between;gap:48px;padding-top:clamp(12px,2vh,32px);padding-bottom:clamp(20px,3.4vh,56px)}
.mp-footer__brand{display:flex;flex-direction:column;gap:12px;max-width:340px}
.mp-footer__logo{display:inline-flex;align-items:center;gap:10px;font-size:16px;color:#000}
.mp-footer__monogram{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;background:var(--f-bordeaux);color:#fff;font-family:"Balivia","Times New Roman",serif;font-weight:900;font-size:12px;letter-spacing:0}
.mp-footer__tag{color:var(--f-muted);text-wrap:balance}
.mp-footer__social{display:flex;gap:8px;margin-top:6px}
.mp-footer .mp-footer__social a{display:inline-flex;align-items:center;justify-content:center;padding:7px;border:1px solid var(--f-line);border-radius:8px;color:#000;transition:background .2s,color .2s,border-color .2s}
.mp-footer .mp-footer__social a:hover{background:#FFD9DA;border-color:#FFD9DA;color:var(--f-bordeaux)}
.mp-footer__links{display:flex;gap:clamp(32px,4.6vw,72px)}
.mp-footer__links>div{display:flex;flex-direction:column;gap:2px;min-width:90px}
.mp-footer__h{margin-bottom:6px;color:#000}
.mp-footer .mp-footer__links a{width:max-content;padding:4px 0;color:var(--f-link);text-decoration:underline;text-decoration-color:transparent;text-underline-offset:4px;transition:color .2s,text-decoration-color .2s}
.mp-footer .mp-footer__links a:hover{color:var(--f-bordeaux);text-decoration-color:currentColor}
.mp-footer__rule{height:1px;margin:0;border:0;background:var(--f-line);transform-origin:left}
.mp-footer__bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 32px;padding-top:clamp(16px,2.6vh,44px);color:var(--f-muted)}
.mp-footer__legal{display:flex;flex-wrap:wrap;gap:6px 20px}
.mp-footer .mp-footer__legal a{color:var(--f-link);transition:color .2s}
.mp-footer .mp-footer__legal a:hover{color:var(--f-bordeaux);text-decoration:underline}

/* Apparition (composant Sticky Footer) : flou 4px + léger décalage vers le bas → net, une seule fois, avec un délai par bloc */
.mp-footer-js .mp-footer__mark,.mp-footer-js .mp-footer__brand,.mp-footer-js .mp-footer__links>div,.mp-footer-js .mp-footer__bottom{opacity:0;filter:blur(4px);transform:translateY(-8px);transition:opacity .8s ease,filter .8s ease,transform .8s ease;transition-delay:calc(.1s + (var(--i,0) + 1) * .1s)}
.mp-footer-js .mp-footer__rule{opacity:0;transition:opacity .8s ease .5s}
.mp-footer-js .mp-footer.is-in .mp-footer__mark,.mp-footer-js .mp-footer.is-in .mp-footer__brand,.mp-footer-js .mp-footer.is-in .mp-footer__links>div,.mp-footer-js .mp-footer.is-in .mp-footer__bottom{opacity:1;filter:blur(0);transform:none}
.mp-footer-js .mp-footer.is-in .mp-footer__rule{opacity:1}

@media (max-width:900px){
    .mp-footer__frame{border-inline:0}
    .mp-footer__cols{flex-direction:column;gap:36px}
    .mp-footer__links{flex-wrap:wrap;gap:28px 40px}
}
@media (prefers-reduced-motion:reduce){
    .mp-footer *{transition:none!important}
    .mp-footer-js .mp-footer__mark,.mp-footer-js .mp-footer__brand,.mp-footer-js .mp-footer__links>div,.mp-footer-js .mp-footer__bottom,.mp-footer-js .mp-footer__rule{opacity:1;filter:none;transform:none}
}
