/* footer.css — footer v5 (2026-08-15), shared across all pages.
   Source of truth extracted from the prod home. Loaded AFTER each page's
   inline styles so its rules win over legacy footer CSS left in place. */
.footer{background:var(--bg-alt);padding:4.5rem 0 0;border-top:1px solid rgba(27,38,59,.1)}
.footer__grid{display:grid;grid-template-columns:1.55fr 1fr 1.2fr 1fr 1fr;gap:2.75rem 2.25rem;padding-bottom:3rem;border-bottom:1px solid rgba(27,38,59,.08)}
.footer__brand-name{font:400 1.55rem/1 var(--ft);color:var(--ink);margin-bottom:.25rem}
.footer__brand-name span{color:var(--cta)}
.footer__brand-sub{font:300 .58rem/1 var(--fb);letter-spacing:.22em;text-transform:uppercase;color:var(--muted);margin-bottom:1.1rem;display:block}
.footer__brand-desc{font:300 .82rem/1.7 var(--fb);color:var(--ink-light);max-width:270px;margin-bottom:1.4rem}
.footer__social{display:flex;gap:.55rem;margin-bottom:1.6rem}
.footer__social a{width:34px;height:34px;border-radius:50%;border:1px solid rgba(27,38,59,.15);display:flex;align-items:center;justify-content:center;transition:border-color var(--r),background var(--r)}
.footer__social a:hover{border-color:var(--cta);background:var(--cta)}
.footer__social svg{width:15px;height:15px;fill:var(--muted);transition:fill var(--r)}
.footer__social a:hover svg{fill:var(--white)}
.footer__langs-title{font:300 .6rem/1 var(--fb);letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-bottom:.6rem;display:block}
.footer__langs{display:flex;flex-wrap:wrap;gap:.35rem .55rem}
.footer__lang{font:300 .75rem/1 var(--fb);color:var(--muted);text-decoration:none;transition:color var(--r)}
.footer__lang:hover{color:var(--sea-dark)}
.footer__lang--active{color:var(--sea-dark);font-weight:500}
.footer__col-title{font:600 .64rem/1 var(--fb);letter-spacing:.24em;text-transform:uppercase;color:var(--ink);margin-bottom:1.1rem;padding-bottom:.6rem;position:relative;display:block;border-bottom:0}
.footer__col-title::after{content:"";position:absolute;left:0;bottom:0;width:22px;height:2px;background:var(--cta)}
.footer__links{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.45rem}
.footer__links li{line-height:1}
.footer__links a{display:block;font:300 .8rem/1.35 var(--fb);color:var(--ink-light);transition:color var(--r)}
.footer__links a:hover{color:var(--cta)}
.footer__links a.footer__link--cta{color:var(--cta);font-weight:500}
.footer__links a.footer__link--cta:hover{color:var(--cta-hover)}
.footer__group + .footer__group{margin-top:2rem}
.footer__contact p{font:300 .8rem/1.6 var(--fb);color:var(--ink-light);margin:0 0 .55rem}
.footer__contact strong{font-weight:500;color:var(--ink)}
.footer__contact a{color:var(--sea-dark);text-decoration:underline;text-underline-offset:2px;transition:color var(--r)}
.footer__contact a:hover{color:var(--cta)}
.footer__contact-note{margin-top:.9rem;font:300 .74rem/1.6 var(--fb);color:var(--muted)}
/* Barre bottom */
.footer__bottom{display:flex;align-items:center;justify-content:space-between;padding:1.1rem 0;flex-wrap:wrap;gap:.75rem;border-top:0}
.footer__copy{font:300 .73rem/1 var(--fb);color:var(--muted)}
.footer__bottom-right{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}
.footer__legal{display:flex;gap:1.1rem;flex-wrap:wrap}
.footer__legal a{font:300 .73rem/1 var(--fb);color:var(--muted);transition:color var(--r)}
.footer__legal a:hover{color:var(--ink)}
.footer__pay-cards{display:flex;gap:.35rem;align-items:center}
.footer__pay-card{width:40px;height:26px;border-radius:3px;background:var(--white);display:flex;align-items:center;justify-content:center;border:1px solid rgba(27,38,59,.1)}
@media(max-width:1100px){.footer__grid{grid-template-columns:1fr 1fr}.footer__brandcol{grid-column:1/-1;max-width:520px}}
@media(max-width:540px){.footer__grid{grid-template-columns:1fr;gap:2.25rem}.footer__bottom{flex-direction:column;text-align:center}.footer__bottom-right{justify-content:center}}
