/* Local footer utilities; existing footer-link styling remains authoritative. */
footer.footer .footer-utility{display:flex;align-items:center;flex-wrap:wrap;gap:16px 32px;width:100%;margin:0 0 24px;padding:0}
footer.footer .footer-utility>.footer-link{display:inline-flex;align-items:center;gap:10px;margin:0}
@media(max-width:767px){footer.footer .footer-utility{gap:14px 24px;margin-bottom:24px}}

/* Voice feedback26: shell spacing and semantic variants, shared button motion remains central. */
footer.footer :is(.footer-socials,.footer-legal){list-style:none!important;margin:0;padding:0}
footer.footer :is(.footer-socials,.footer-legal)>li{list-style:none!important;margin:0!important;padding:0!important}
footer.footer :is(.footer-socials,.footer-legal)>li::marker{content:''}
footer.footer :is(.footer-socials,.footer-legal)>li::before,
footer.footer :is(.footer-socials,.footer-legal)>li::after{content:none!important;display:none!important}
footer.footer .footer-main__intro>.section__heading{margin:0 0 clamp(20px,2vw,28px)}
footer.footer .footer-main__intro>p{margin:0 0 24px}
footer.footer .footer-meta-title{margin:0 0 12px}
footer.footer .footer-meta-copy{margin:0}
footer.footer .footer-cta-button{
 --kit-hover-fill:#fff!important;--kit-hover-text:#101117!important;
 --wb-btn-hover-bg:#fff!important;--wb-btn-hover-fg:#101117!important;--wb-btn-hover-border:#fff!important;
}
footer.footer .button--whatsapp{
 --kit-hover-fill:#25d366!important;--kit-hover-text:#fff!important;
 --wb-btn-hover-bg:#25d366!important;--wb-btn-hover-fg:#fff!important;--wb-btn-hover-border:#25d366!important;
}
/* Existing links stay visible without JS; keyboard feedback is immediate. */
footer.footer .footer-link:focus-visible{opacity:1;outline:2px solid var(--wab-blue);outline-offset:3px}

/* Single footer variant contract: only actual NL/EN contact routes are compact.
   Older Studio/case stylesheet hiding rules must not remove full-footer content. */
body footer.footer.footer--full .footer-main,
body footer.footer.footer--full .footer-main__intro,
body footer.footer.footer--full .footer-main__meta,
body footer.footer.footer--full .footer-divider{display:block!important;visibility:visible!important}

/* Latest Ben variant: white content at rest, inverse hover; shared trace/reverse retained. */
body.wab-local-ui-contract footer.footer .footer-cta-button{--wb-btn-bg:#21212d!important;--wb-btn-fg:#fff!important;--wb-btn-border:#fff!important;--kit-hover-fill:#fff!important;--kit-hover-text:#101117!important}
body.wab-local-ui-contract.wab-local-ui-contract.wab-local-ui-contract footer.footer .footer-cta-button{justify-content:flex-start!important;text-align:left!important;gap:12px!important}
body.wab-local-ui-contract.wab-local-ui-contract.wab-local-ui-contract footer.footer .footer-cta-button>i{flex:0 0 20px!important;width:20px!important;text-align:center!important}
body.wab-local-ui-contract footer.footer .footer-cta-button>i,body.wab-local-ui-contract footer.footer .footer-cta-button>i::before{color:inherit!important}
body.wab-local-ui-contract footer.footer .footer-cta-button:hover{--wb-btn-bg:#fff!important;--wb-btn-fg:#101117!important}
/* Social platform colour at rest, white only on hover. */
body.wab-local-ui-contract footer.footer .footer-socials a{--social-bg:var(--social-accent)!important;--social-border:var(--social-accent)!important;--social-fg:#fff!important;--wb-btn-border:#fff!important;--kit-hover-fill:#fff!important}
body.wab-local-ui-contract footer.footer .footer-socials a:hover{--social-bg:#fff!important;--social-border:#fff!important;--social-fg:var(--social-accent)!important}

/* Full-footer needs navigation: intro half, contact quarter, needs quarter. */
body footer.footer.footer--full .footer-main__layout{display:grid;grid-template-columns:minmax(0,1fr);gap:40px}
body footer.footer.footer--full :is(.footer-main__intro,.footer-main__meta,.footer-main__needs){width:100%;min-width:0}
footer.footer .footer-needs-list{list-style:none;margin:0;padding:0}
footer.footer .footer-needs-list>li{list-style:none;margin:0 0 12px;padding:0}
footer.footer .footer-needs-list>li::before,footer.footer .footer-needs-list>li::after{content:none!important;display:none!important}
footer.footer .footer-needs-list a{overflow-wrap:break-word}
@media(min-width:768px){
 body footer.footer.footer--full .footer-main__layout{grid-template-columns:repeat(2,minmax(0,1fr))}
 body footer.footer.footer--full .footer-main__intro{grid-column:1/-1}
}
@media(min-width:1024px){
 body footer.footer.footer--full .footer-main__layout{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(24px,3vw,48px)}
 body footer.footer.footer--full .footer-main__intro{grid-column:span 2}
}

/* Ben21Oct latest: native contact leading stays untouched; only needs mirrors those text links. */
body.wab-local-ui-contract footer.footer .footer-needs-list>li{margin:0;padding:0}
body.wab-local-ui-contract footer.footer .footer-needs-list .footer-link{display:inline-block;width:fit-content;max-width:100%;--wab-text-link-padding:2px;padding-bottom:3px}
