/* Shared footer — always loaded after tokens.css/base.css, so it draws from
   the shared design tokens instead of carrying its own literal colors. */
footer{background:var(--dark);color:var(--muted-d);padding:60px 0 40px;border-top:1px solid var(--line-d);
  position:relative;overflow:hidden}
.foot-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.6fr repeat(3,1fr);gap:44px;padding:0 30px;max-width:1180px;margin:0 auto}
.foot-brand p{font-size:14px;line-height:1.6;margin-top:16px;max-width:38ch;color:var(--muted-d)}
.foot-cta{margin-top:22px;padding:11px 20px;font-size:14px}
.foot-addr{font-style:normal;line-height:1.7}
.foot-col h5{font-size:11px;font-weight:600;letter-spacing:0.12em;text-transform:uppercase;color:var(--muted-d);margin-bottom:18px}
.foot-col a{display:block;color:#EDEFEE;text-decoration:none;font-size:14px;padding:5px 0}
.foot-col a:hover{color:var(--accent)}
.foot-note{display:block;color:var(--muted-d);font-size:12.5px;padding:9px 0 0}
.foot-bot{position:relative;z-index:2;max-width:1180px;margin:46px auto 0;padding:24px 30px 0;border-top:1px solid var(--line-d);
  display:flex;justify-content:space-between;font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:0.08em;color:var(--muted-d);flex-wrap:wrap;gap:14px}

@media(max-width:900px){.foot-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.foot-grid{grid-template-columns:1fr}}
