/* ==========================================================
   MIMO footer — shared by all pages (option A: light / cream)
   Selectors are prefixed with footer.site-footer so they win
   over each page's older generic `footer{}` rule.
   ========================================================== */
footer.site-footer{
  background:#F5F1EC; color:#303030;
  padding:80px 0 0; border-top:1px solid rgba(48,48,48,0.14);
  font-family:'Montserrat', 'Helvetica Neue', Arial, sans-serif; font-weight:300; line-height:1.7;
  overflow:hidden;
}
footer.site-footer .wrap{ display:block; max-width:1180px; margin:0 auto; padding:0 32px; }
@media (max-width:640px){ footer.site-footer .wrap{ padding:0 22px; } }
footer.site-footer a{ color:inherit; text-decoration:none; }
footer.site-footer .sf-top{ display:grid; grid-template-columns:minmax(0,1fr) auto; gap:48px; align-items:start; }

/* MIMO-only wordmark, cropped from "logo black.png" (the word sits at x 202-1793, y 840-1188 of 2000x2000) */
footer.site-footer .sf-logo{
  display:block; width:150px; aspect-ratio:1591/348; margin-bottom:30px; background:#303030;
  -webkit-mask:url("MIMO%20logos/logo%20black.png") 49.4% 50.8% / 125.7% auto no-repeat;
          mask:url("MIMO%20logos/logo%20black.png") 49.4% 50.8% / 125.7% auto no-repeat;
}
footer.site-footer .sf-label,
footer.site-footer .sf-col h4{ color:#AD8B52; }
footer.site-footer .sf-label{ font-size:0.78rem; font-weight:500; letter-spacing:0.06em; margin:0 0 6px; }
footer.site-footer .sf-mail{ font-size:0.92rem; text-decoration:underline; text-underline-offset:4px; text-decoration-color:#CBA968; }
footer.site-footer .sf-social{ display:flex; gap:14px; margin-top:22px; }
footer.site-footer .sf-social a{
  width:38px; height:38px; border-radius:50%; border:1px solid #303030;
  display:flex; align-items:center; justify-content:center;
  transition:background-color .2s ease, color .2s ease;
}
footer.site-footer .sf-social a:hover{ background:#303030; color:#F5F1EC; }
footer.site-footer .sf-social svg{ width:17px; height:17px; }

footer.site-footer .sf-cols{ display:grid; grid-template-columns:repeat(3, minmax(150px, auto)); gap:0 56px; }
footer.site-footer .sf-col h4 a{ display:inline; padding:0; font-size:inherit; opacity:1; color:inherit; }
footer.site-footer .sf-col h4{ font-size:0.74rem; font-weight:500; letter-spacing:0.12em; text-transform:uppercase; margin:0 0 14px; }
footer.site-footer .sf-col a{ display:block; font-size:0.92rem; padding:5px 0; opacity:0.85; transition:opacity .2s ease; }
footer.site-footer .sf-col a:hover{ opacity:1; }

footer.site-footer .sf-word{
  margin:64px 0 0; white-space:nowrap; text-align:center; line-height:1;
  font-size:min(7.5vw, 96px); font-weight:200; letter-spacing:0.14em; margin-right:-0.14em;
  text-transform:uppercase; color:#303030;
}
footer.site-footer .sf-rule{ height:1px; background:#303030; opacity:0.85; margin-top:40px; }
footer.site-footer .sf-bottom{
  display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:10px 24px;
  padding:22px 0 30px; font-size:0.78rem; color:#3F3F3F;
}
footer.site-footer .sf-bottom p{ margin:0; }
footer.site-footer .sf-bottom nav{ display:flex; gap:22px; }
footer.site-footer .sf-bottom nav a{ text-decoration:underline; text-underline-offset:3px; }
footer.site-footer a:focus-visible{ outline:2px solid #AD8B52; outline-offset:3px; }

@media (max-width:760px){
  footer.site-footer{ padding-top:64px; }
  footer.site-footer .sf-top{ grid-template-columns:1fr; gap:40px; }
  footer.site-footer .sf-cols{ grid-template-columns:1fr 1fr; gap:28px 24px; }
  footer.site-footer .sf-bottom{ flex-direction:column; align-items:flex-start; }
}
