/* ==========================================================================
   Site footer. Top gap matches module spacing via .sb-section (padding-top).
   ========================================================================== */
.sb-footer{width:100%}
.sb-footer__top{background:var(--sb-grey)}
.sb-footer__top-inner{display:flex;align-items:center;flex-wrap:wrap;gap:clamp(20px,4vw,44px);padding-block:clamp(26px,4vw,42px)}
.sb-footer__logo{flex:0 0 auto;display:flex;align-items:center}
/* Footer sits on light grey — keep the logo's own blue/charcoal colours. */
.sb-footer__logo img{display:block;width:auto;height:clamp(42px,5vw,54px)}
.sb-footer__address{flex:1 1 320px;font-size:.85rem;color:var(--sb-ink);max-width:60ch;line-height:1.5}
.sb-footer__address p{margin:0}
.sb-footer__actions{margin-left:auto;display:flex;align-items:center;gap:22px}
/* LinkedIn wordmark (artwork, 127px wide at 1920) in the footer bar's colour: the PNG is only a
   mask, so the colour comes from --sb-ink — the "in" letters are cut out of the box. */
.sb-footer__linkedin{display:inline-flex;align-items:center;color:var(--sb-ink);transition:opacity .18s ease}
.sb-footer__linkedin:hover{opacity:.75}
.sb-footer__linkedin-mark{display:block;width:clamp(100px,6.6vw,127px);aspect-ratio:527/129;background:currentColor;
  -webkit-mask:url(../images/linkedin-wordmark-mask.png) center/contain no-repeat;mask:url(../images/linkedin-wordmark-mask.png) center/contain no-repeat}
.sb-footer__bar{background:var(--sb-ink);color:#fff}
.sb-footer__bar-inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;padding-block:14px;font-size:.8rem}
.sb-footer__bar-links a{opacity:.85;margin-left:20px;transition:opacity .18s ease}
.sb-footer__bar-links a:first-child{margin-left:0}
.sb-footer__bar-links a:hover{opacity:1}
@media(max-width:720px){
  .sb-footer__actions{margin-left:0;width:100%;justify-content:space-between}
  .sb-footer__bar-inner{flex-direction:column;align-items:flex-start}
  .sb-footer__bar-links a{margin-left:0;margin-right:18px}
}
