/* Rodapé do site (o mesmo do Sobre) para as páginas de ferramenta.
   Valores próprios, sem depender das variáveis de cada página. */
.site-footer-wrap{ padding:0 0.75rem 0.75rem; }
.site-footer{
  --sf-amarelo:#ffc200; --sf-claro:#facc15; --sf-pill:62.5rem;
  background:var(--sf-amarelo); color:#fff; border-radius:2rem;
  margin-top:0.75rem; padding:3.5rem 1.5rem;
  font-family:"Onest", system-ui, sans-serif;
}
@media (min-width:640px){ .site-footer{ padding:4rem 2.5rem; } }
.site-footer a{ color:inherit; text-decoration:none; }
.site-footer ul{ list-style:none; margin:0; padding:0; }
.site-footer h4, .site-footer p{ margin:0; }

.site-footer .eyebrow{ display:inline-flex; align-items:center; gap:0.5rem; font-size:0.75rem; font-weight:500; text-transform:uppercase; letter-spacing:0.22em; color:rgba(255,255,255,0.7); }
.site-footer .eyebrow::before{ content:""; width:0.375rem; height:0.375rem; border-radius:var(--sf-pill); flex:none; background:var(--sf-claro); }

.site-footer .footer-cta{
  border-bottom:1px solid rgba(255,255,255,0.15); padding-bottom:3.5rem;
  display:flex; flex-direction:column; gap:1.5rem;
}
@media (min-width:640px){ .site-footer .footer-cta{ flex-direction:row; justify-content:space-between; align-items:flex-end; } }
.site-footer .footer-cta p{ font-size:3.75rem; font-weight:500; line-height:0.92; letter-spacing:-0.01em; margin-top:1rem; }

.site-footer .pill-btn{
  display:inline-flex; align-items:center; gap:0.5rem;
  border-radius:var(--sf-pill); padding:0.875rem 1.75rem;
  font-size:0.875rem; font-weight:500; text-transform:uppercase; letter-spacing:0.06em;
  flex:none; width:fit-content;
  background:#fff; color:var(--sf-amarelo); transition:background 0.25s, color 0.25s;
}
.site-footer .pill-btn svg{ width:1rem; height:1rem; transition:transform 0.2s; }
.site-footer .pill-btn:hover{ background:var(--sf-claro); }
.site-footer .pill-btn:hover svg{ transform:translateX(5px); }

.site-footer .footer-columns{ display:grid; grid-template-columns:minmax(0,1fr); column-gap:2rem; row-gap:2.5rem; padding:3.5rem 0; }
@media (min-width:768px){ .site-footer .footer-columns{ grid-template-columns:minmax(0,1.7fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr); } }
.site-footer .footer-brand-mark{ display:block; }
.site-footer .footer-brand-mark .brand-mark{ display:block; width:100%; height:auto; max-width:22rem; }
.site-footer .footer-brand p{ font-size:0.875rem; color:rgba(255,255,255,0.65); margin-top:1rem; line-height:1.5; }

.site-footer .footer-nav h4{ font-size:0.75rem; font-weight:500; text-transform:uppercase; letter-spacing:0.2em; color:rgba(255,255,255,0.5); margin-bottom:1rem; }
.site-footer .footer-nav ul{ display:flex; flex-direction:column; gap:0.75rem; font-size:0.875rem; color:rgba(255,255,255,0.8); }
.site-footer .footer-nav a:hover{ color:#fff; text-decoration:underline; }

.site-footer .footer-bottom{
  border-top:1px solid rgba(255,255,255,0.15); padding-top:2rem;
  display:flex; flex-direction:column; gap:1.25rem;
  font-size:0.875rem; color:rgba(255,255,255,0.6);
}
@media (min-width:640px){ .site-footer .footer-bottom{ flex-direction:row; justify-content:space-between; align-items:center; } }
.site-footer .social-nav{ display:flex; gap:1.25rem; font-size:0.875rem; color:rgba(255,255,255,0.7); }
.site-footer .social-nav a{ display:inline-flex; align-items:center; justify-content:center; }
.site-footer .social-nav a:hover{ color:#fff; }
.site-footer .social-nav svg{ width:1.15rem; height:1.15rem; }
