html body .ftr.ftr--minimal { background:#121212!important; color:#e8e8e8!important; padding:70px clamp(24px,5vw,88px) 36px; min-height:0; overflow:visible; }
html body .ftr--minimal .ftr__frame { display:block; width:100%; max-width:1440px; margin:auto; padding:0; min-height:0!important; border:0!important; background:none!important; border-radius:0; box-shadow:none; }
html body .ftr--minimal .ftr__frame::before,html body .ftr--minimal::before,html body .ftr--minimal::after { display:none!important; }
.footer-columns { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:48px; }
html body .ftr--minimal h2 { font:500 12px/1.5 inherit; font-size:12px; line-height:1.5; letter-spacing:.15em; text-transform:uppercase; color:#929292!important; margin:0 0 22px; }
html body .ftr--minimal a { color:#e8e8e8!important; font-size:14px; line-height:1.6; text-decoration:none; transition:color .2s; }
.footer-columns a { display:block; width:fit-content; margin-bottom:12px; overflow-wrap:anywhere; }
html body .ftr--minimal a:hover { color:#63b9dc!important; }
html body .ftr--minimal a:focus-visible { outline:2px solid #63b9dc; outline-offset:5px; }
html body .ftr--minimal address { font-style:normal; color:#b7b7b7; font-size:14px; line-height:1.8; margin-bottom:20px; }
.footer-bas { margin-top:70px; padding-top:26px; border-top:1px solid #303030; display:flex; align-items:center; flex-wrap:wrap; gap:20px 40px; }
.footer-bas p { margin:0; color:#a4a4a4; font-size:12px; }
.footer-bas nav { display:flex; flex-wrap:wrap; gap:16px 28px; }
html body .footer-bas a { font-size:12px; color:#b7b7b7!important; }
.footer-bas>a { margin-left:auto; }
@media(max-width:850px) { .footer-columns { grid-template-columns:repeat(2,minmax(0,1fr)); gap:36px; } .footer-bas { margin-top:45px; } }
@media(max-width:480px) { html body .ftr.ftr--minimal { padding:42px 24px 28px; } .footer-columns { gap:30px 20px; } .footer-bas { align-items:flex-start; flex-direction:column; gap:18px; } .footer-bas>a { margin-left:0; } }

.footer-word { position:relative; margin:70px auto 0; width:100%; overflow:hidden; line-height:1.05; padding:10px 0 0; text-align:center; user-select:none; }
.footer-word__base,.footer-word__light { display:block; font-size:clamp(34px,11.6vw,190px); font-weight:900; letter-spacing:-.065em; line-height:1.05; white-space:nowrap; }
.footer-word__base { color:#242424; }
.footer-word__light { position:absolute; left:0; right:0; top:10px; color:#e5e5e5; pointer-events:none; opacity:0; -webkit-mask-image:radial-gradient(circle 180px at var(--light-x,50%) var(--light-y,50%),black 0%,rgba(0,0,0,.85) 25%,transparent 100%); mask-image:radial-gradient(circle 180px at var(--light-x,50%) var(--light-y,50%),black 0%,rgba(0,0,0,.85) 25%,transparent 100%); transition:opacity .5s ease; }
.footer-word.is-lit .footer-word__light { opacity:1; }
@media(hover:none) { .footer-word__base { color:#454545; } }
@media(prefers-reduced-motion:reduce) { .footer-word__light { transition:none; } }

/* Lettres invisibles au repos, révélées uniquement par le pointeur. */
html body .ftr.ftr--minimal { background:#111111!important; }
.footer-word { background:#111111; }
.footer-word__base { color:#111111!important; }
.footer-word__light { color:transparent!important; -webkit-text-fill-color:transparent; -webkit-mask-image:none; mask-image:none; background-image:radial-gradient(circle 220px at var(--light-x,-500px) var(--light-y,-500px),#d5d5d5 0%,#858585 25%,#333333 55%,#111111 100%); background-repeat:no-repeat; background-size:100% 100%; background-clip:text; -webkit-background-clip:text; opacity:0; }
.footer-word.is-lit .footer-word__light { opacity:1; }

/* Priorité sur les anciennes règles globales du pied de page. */
html body .ftr.ftr--minimal .footer-word .footer-word__base { color:#111111!important; -webkit-text-fill-color:#111111!important; text-shadow:none!important; }
html body .ftr.ftr--minimal .footer-word .footer-word__light { color:transparent!important; -webkit-text-fill-color:transparent!important; text-shadow:none!important; opacity:0!important; background-clip:text!important; -webkit-background-clip:text!important; }
html body .ftr.ftr--minimal .footer-word.is-lit .footer-word__light { opacity:1!important; }

/* Signature pleine largeur, à la manière de la référence. */
html body .ftr--minimal .footer-word { width:calc(100vw - 32px); max-width:none; left:50%; transform:translateX(-50%); margin-top:80px; padding-top:12px; }
html body .ftr--minimal .footer-word__base,html body .ftr--minimal .footer-word__light { font-size:14vw; font-weight:900; letter-spacing:-.075em; line-height:1; transform:scaleY(1.3); transform-origin:center top; }
html body .ftr--minimal .footer-word { padding-bottom:4.5vw; }
html body .ftr--minimal .footer-word__light { top:12px; }
@media(max-width:480px) { html body .ftr--minimal .footer-word { margin-top:45px; width:calc(100vw - 16px); } }
html body .ftr--minimal .footer-word { width:100%; left:auto; transform:none; margin:70px 0 0; padding:0; overflow:visible; }
.footer-word__svg { display:block; width:100%; height:auto; overflow:visible; }
.footer-word__letters { font-size:250px; font-weight:900; letter-spacing:-10px; opacity:0; transition:opacity .3s; }
.footer-word.is-lit .footer-word__letters { opacity:1; }
@media(prefers-reduced-motion:reduce) { .footer-word__letters { transition:none; } }
