/* 15-rodape: EXATAMENTE igual ao rodapé publicado (v5.7, L583-612 e L687).
   Bloco de cor fixa: fundo, cores, fontes e tokens locais (os de lá), certo em qualquer tom.
   O <footer> interno do v5.7 virou <div class="footer-main"> (footer dentro de footer é inválido);
   o resto do markup é idêntico. */

#rodape {
  /* tokens do v5.7, locais */
  --teal: #00c8b4;
  --navy: #070d15;
  --white: #ffffff;
  --w60: rgba(255,255,255,0.60);
  --w50: rgba(255,255,255,0.50);
  --w40: rgba(255,255,255,0.40);
  --w15: rgba(255,255,255,0.08);
  --line: rgba(255,255,255,0.06);

  position: relative;
  background: var(--navy);
  color: var(--white);
  font-family: 'Instrument Sans', sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
}
#rodape *, #rodape *::before, #rodape *::after { margin: 0; padding: 0; box-sizing: border-box; }
#rodape a { text-decoration: none; color: inherit; }
#rodape svg.fa-solid { width: 1em; height: 1em; fill: currentColor; vertical-align: -0.125em; display: inline-block; }

#rodape .seg-bar { background: rgba(255,255,255,.02); border-top: 1px solid rgba(255,255,255,.04); padding: 16px 40px; }
#rodape .seg-inner { max-width: 1600px; margin: 0 auto; display: flex; align-items: flex-start; justify-content: center; gap: 12px; font-size: 12px; color: var(--w40); line-height: 1.55; }
#rodape .seg-inner i { font-size: 17px; color: var(--w40); flex-shrink: 0; margin-top: 1px; }
#rodape .seg-inner strong { color: var(--w60); }
@media (min-width: 1320px) { #rodape .seg-inner { white-space: nowrap; align-items: center; } #rodape .seg-inner i { margin-top: 0; } }

#rodape .footer-main { border-top: 1px solid rgba(255,255,255,.04); padding: 26px 40px; display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 18px 32px; position: relative; z-index: 1; }
#rodape .footer-col { display: flex; flex-direction: column; }
#rodape .footer-col-left { gap: 4px; }
#rodape .footer-col-center { align-items: center; gap: 5px; text-align: center; }
#rodape .footer-col-right { flex-direction: row; align-items: center; gap: 12px; }
#rodape .footer-logo { display: flex; align-items: center; gap: 8px; }
#rodape .footer-logo svg { width: 22px; height: 22px; }
#rodape .footer-logo-txt { font-family: 'Syne', sans-serif; font-size: 15px; font-weight: 800; color: var(--w50); letter-spacing: -.3px; }
#rodape .footer-tagline { font-size: 11px; color: var(--w50); padding-left: 30px; }
#rodape .footer-brand-line { display: flex; align-items: center; gap: 10px; }
#rodape .footer-brand-name { font-family: 'Syne', sans-serif; font-size: 12px; font-weight: 700; color: var(--w50); letter-spacing: -.2px; }
#rodape .footer-social { display: flex; align-items: center; gap: 10px; }
#rodape .footer-social a { color: var(--w40); display: flex; transition: color .2s; }
#rodape .footer-social a svg { width: 14px; height: 14px; }
#rodape .footer-social a:hover { color: var(--teal); }
#rodape .footer-sub-line { font-size: 10.5px; color: var(--w50); line-height: 1.5; }
#rodape .footer-legal { display: flex; align-items: center; gap: 8px; font-size: 10.5px; color: var(--w50); }
#rodape .footer-legal a { color: var(--w50); transition: color .2s; }
#rodape .footer-legal a:hover { color: var(--teal); }
#rodape .footer-legal span { color: var(--w15); }
#rodape .footer-form-logo { width: 36px; height: 34px; display: flex; align-items: center; justify-content: center; opacity: .45; background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.1); border-radius: 8px; overflow: hidden; flex-shrink: 0; }
#rodape .footer-form-logo img { width: 100%; height: 100%; object-fit: contain; filter: invert(1); }
#rodape .footer-by-pre { font-size: 10px; color: var(--w50); letter-spacing: .5px; text-transform: uppercase; }
#rodape .footer-by-name { font-family: 'Syne', sans-serif; font-size: 13px; font-weight: 700; color: var(--w60); letter-spacing: -.3px; }

/* Única adição ao publicado: área de toque invisível de 44 px nos links pequenos, só em tela de toque.
   Não muda tamanho, posição nem aparência de nada. */
@media (pointer: coarse) {
  #rodape .footer-legal a, #rodape .footer-social a { position: relative; }
  #rodape .footer-legal a::after { content: ""; position: absolute; inset: -14px -6px; }
  #rodape .footer-social a::after { content: ""; position: absolute; inset: -15px -5px; }
}

@media (max-width: 900px) {
  #rodape .footer-main { flex-direction: column; text-align: center; padding: 24px 20px; }
  #rodape .footer-col-left { align-items: center; }
  #rodape .footer-tagline { padding-left: 0; }
  /* L687 do v5.7 (bloco max-width:900px, vem depois e vence) */
  #rodape .footer-main { padding: 22px 20px; }
  #rodape .seg-bar { padding: 16px 20px; }
  #rodape .seg-inner { white-space: normal; text-align: left; }
}
