.site-footer { --f-text:#fff; --f-muted:#aaa; --f-border:#2b2b2b; --f-panel:#151515; margin-top:88px; padding:72px 0 32px; border-top:1px solid #000; background:#090909; color:var(--f-text); text-align:left; }
.site-footer * { box-sizing:border-box; }
.footer-inner { width:min(calc(100% - 40px),1280px); margin:0 auto; }
.footer-grid { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:14px; align-items:start; }
.footer-card { grid-column:span 3; min-width:0; padding:24px; border:1px solid var(--f-border); border-radius:12px; background:var(--f-panel); }
.footer-card--nav{grid-column:span 4}.footer-card--bancas{grid-column:span 8}.footer-card--palpites{grid-column:span 7}.footer-card--capitais{grid-column:span 5}.footer-card--legal{grid-column:1/-1}
.footer-card::before { content:""; display:block; width:32px; height:2px; margin-bottom:18px; background:#fff; }
.footer-title { margin:0 0 16px; display:flex; align-items:center; justify-content:space-between; gap:12px; color:#fff; font-size:.76rem; font-weight:900; letter-spacing:.1em; text-transform:uppercase; }
.footer-text { margin:0 0 18px; color:var(--f-muted); font-size:.86rem; line-height:1.7; }
.footer-divider { height:1px; margin:18px 0; background:var(--f-border); }
.footer-links { margin:0; padding:0; display:grid; gap:3px; list-style:none; }
.footer-link,.banca-item { min-height:34px; padding:7px 9px; display:flex; align-items:center; border-radius:6px; color:#b9b9b9; font-size:.81rem; line-height:1.3; text-decoration:none; overflow-wrap:anywhere; transition:color .18s ease,background-color .18s ease; }
.footer-link:hover,.banca-item:hover { background:#fff; color:#000; }
.bancas-scroll { display:grid; grid-template-columns:repeat(auto-fit,minmax(190px,1fr)); gap:3px 7px; }
.footer-subsection{margin-top:22px}.footer-subsection:first-of-type{margin-top:0}
.footer-subtitle { margin-bottom:10px; display:flex; align-items:center; justify-content:space-between; color:#fff; font-size:.67rem; font-weight:850; letter-spacing:.09em; text-transform:uppercase; }
.footer-badge { padding:3px 7px; border:1px solid #444; border-radius:999px; color:#fff; font-size:.61rem; }
.legal-links { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:8px; }
.legal-pill { min-height:38px; padding:8px 11px; display:flex; align-items:center; border:1px solid #353535; border-radius:7px; color:#bbb; font-size:.79rem; text-decoration:none; }
.legal-pill:hover { border-color:#fff; background:#fff; color:#000; }
.footer-disclaimer { margin-top:42px; padding-top:28px; border-top:1px solid #292929; text-align:center; }
.footer-disclaimer p { max-width:820px; margin:0 auto; color:#999; font-size:.75rem; line-height:1.75; }
.footer-bottom { margin-top:27px; color:#929292; font-size:.67rem; letter-spacing:.08em; text-align:center; text-transform:uppercase; }
@media(max-width:1024px){.footer-card,.footer-card--nav,.footer-card--bancas,.footer-card--capitais{grid-column:span 6}.footer-card--palpites,.footer-card--legal{grid-column:1/-1}}
@media(max-width:720px){.site-footer{margin-top:58px;padding:50px 0 28px}.footer-inner{width:min(calc(100% - 20px),100%)}.footer-grid{grid-template-columns:1fr;gap:10px}.footer-card,.footer-card--nav,.footer-card--bancas,.footer-card--palpites,.footer-card--capitais,.footer-card--legal{grid-column:1/-1;padding:19px;border-radius:10px}.bancas-scroll{grid-template-columns:1fr}}
