/* #4 site footer (scripts/site-footer.mjs). Logo top left, labelled link columns, copyright row. Follows the site
   theme variables (dark by default). Class-scoped so the older bare `footer` rules in theme.css / home/style.css never leak in. */
footer.gc-footer{display:block;box-sizing:border-box;width:100%;max-width:none;margin:48px 0 0;padding:48px 0 32px;border-top:1px solid var(--bd,#2f3336);background:var(--bg,#000);color:var(--mut,#8b8f94);text-align:left;font-size:14px;line-height:1.5}
footer.gc-footer .gcf-in{box-sizing:border-box;max-width:1160px;margin:0 auto;padding:0 28px;display:grid;grid-template-columns:1fr;gap:32px}
footer.gc-footer a{margin:0;color:var(--mut,#8b8f94);text-decoration:none;border-radius:4px;min-width:44px}
footer.gc-footer a:hover{color:var(--fg,#e7e9ea);text-decoration:underline}
footer.gc-footer a:focus-visible{outline:2px solid var(--fg,#e7e9ea);outline-offset:3px;color:var(--fg,#e7e9ea)}
footer.gc-footer .gcf-logo{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px}
footer.gc-footer .gcf-logo span{display:block;width:36px;height:36px;background:transparent var(--mark) center/100% no-repeat}
footer.gc-footer .gcf-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 24px}
footer.gc-footer h2{margin:0 0 12px;font-size:14px;font-weight:600;letter-spacing:0;color:var(--fg,#e7e9ea)}
footer.gc-footer ul{list-style:none;margin:0;padding:0}
footer.gc-footer li{margin:0}
footer.gc-footer li a{display:inline-flex;align-items:center;min-height:44px}
footer.gc-footer .gcf-note{font-size:12px;color:var(--mut);margin-left:4px}
footer.gc-footer .gcf-handle{color:var(--mut,#8b8f94);margin-left:4px;white-space:nowrap}
@media (max-width:860px){
  footer.gc-footer li a{flex-wrap:wrap;align-items:flex-start;column-gap:4px}
  footer.gc-footer .gcf-label,footer.gc-footer .gcf-note{white-space:nowrap}
}
footer.gc-footer .gcf-bottom{border-top:1px solid var(--bd,#2f3336);padding-top:20px}
footer.gc-footer .gcf-copy{margin:0;font-size:var(--fs-12,12px);color:var(--mut,#8b8f94)}
@media (min-width:861px){
  footer.gc-footer .gcf-in{grid-template-columns:minmax(120px,1fr) 4fr;gap:40px}
  footer.gc-footer .gcf-cols{grid-template-columns:repeat(4,minmax(0,1fr))}
  footer.gc-footer .gcf-bottom{grid-column:1/-1}
  footer.gc-footer .gcf-label{white-space:nowrap}
}
@media (max-width:420px){footer.gc-footer .gcf-in{padding:0 16px}}
