/* ============================================================
   Paulista Invest — rodapé
   ============================================================ */
.footer { background: var(--ink); color: var(--tx-on-ink); padding-block: clamp(48px, 6vw, 72px) 34px; position: relative; }
.footer::before { content: ""; position: absolute; inset: 0; pointer-events: none; background: radial-gradient(120% 90% at 85% -20%, rgba(202,166,82,.07), transparent 55%); }
.footer .wrap { position: relative; z-index: 1; }

/* faixa de CTA — cartão macio no topo do rodapé (dá vida, tira o "quadradão") */
.footer__cta {
  display: grid; grid-template-columns: 1.3fr auto; align-items: center; gap: clamp(20px, 4vw, 48px);
  background: rgba(255,255,255,.05); border: 1px solid var(--line-ink-2); border-radius: 20px;
  border-top: 2px solid var(--gold);
  padding: clamp(24px, 3vw, 38px) clamp(24px, 3.5vw, 44px);
  margin-bottom: clamp(40px, 6vw, 64px);
}
.footer__cta-k { font-family: var(--f-mono); font-size: .72rem; letter-spacing: .14em; text-transform: uppercase; color: var(--gold-soft); margin: 0 0 8px; }
.footer__cta-h { font-family: var(--f-disp); font-weight: 700; color: #fff; font-size: clamp(1.3rem, 2.4vw, 1.8rem); letter-spacing: -.02em; line-height: 1.12; margin: 0; max-width: 22ch; }
.footer__cta-btns { display: flex; gap: 12px; flex-wrap: wrap; }
.footer__cta .btn { border-radius: 999px; }
@media (max-width: 720px) { .footer__cta { grid-template-columns: 1fr; } }
.footer__top { display: grid; grid-template-columns: 1.4fr 1fr 1fr; gap: clamp(32px, 5vw, 72px); }
@media (max-width: 820px){ .footer__top { grid-template-columns: 1fr; gap: 38px; } }

.footer__brand { display: inline-flex; align-items: center; gap: 12px; margin-bottom: 20px; }
.footer__brand img { width: 42px; height: 42px; border-radius: var(--r); }
.footer__brand b { font-family: var(--f-disp); font-weight: 700; font-size: 1.16rem; letter-spacing: -.02em; }
.footer__brand b span { color: var(--gold-soft); font-weight: 500; }
.footer__desc { color: var(--tx-on-ink-mut); font-size: .92rem; max-width: 38ch; }

.footer h4 { font-family: var(--f-mono); font-size: .72rem; letter-spacing: .14em; text-transform: uppercase; color: var(--gold-soft); margin: 0 0 18px; font-weight: 500; }
.footer__col a, .footer__col p { display: block; color: var(--tx-on-ink-mut); font-size: .94rem; margin: 0 0 12px; transition: color .18s ease; }
.footer__col a:hover { color: #fff; }

.footer__contact a { display: flex; align-items: center; gap: 10px; }
.footer__contact svg { width: 16px; height: 16px; flex-shrink: 0; opacity: .8; }

.footer__legal {
  margin-top: clamp(40px, 6vw, 64px); padding-top: 26px; border-top: 1px solid var(--line-ink);
}
.footer__disc { color: var(--tx-on-ink-mut); font-size: .78rem; line-height: 1.6; max-width: 90ch; margin: 0 0 20px; }
.footer__bar { display: flex; justify-content: space-between; align-items: center; gap: 16px; flex-wrap: wrap; }
.footer__bar small { color: var(--tx-on-ink-mut); font-size: .8rem; font-family: var(--f-mono); }
.footer__bar nav { display: flex; gap: 20px; flex-wrap: wrap; }
.footer__bar a { color: var(--tx-on-ink-mut); font-size: .8rem; }
.footer__bar a:hover { color: #fff; }
