/* Rodapé comum APF: grelha sem sobreposições. */
footer { background: var(--ink); }
footer .footer-grid {
  display: grid;
  grid-template-columns: minmax(0,1.35fr) minmax(0,.9fr) minmax(0,1.2fr) minmax(0,1fr);
  gap: 24px 32px;
  align-items: start;
}
footer .footer-grid > div { min-width: 0; }
footer .footer-grid > div:nth-child(1) { grid-column: 1; grid-row: 1 / 3; }
footer .footer-grid > div:nth-child(2) { grid-column: 2; grid-row: 1 / 3; }
footer .footer-grid > div:nth-child(3) { grid-column: 3; grid-row: 1; }
footer .footer-grid > div:nth-child(4) { grid-column: 4; grid-row: 1; }
footer .footer-grid > .footer-newsletter {
  grid-column: 3 / 5; grid-row: 2;
  width: 100%; min-width: 0; margin: 0;
  transform: none; position: static; background: transparent;
}
footer .footer-newsletter::before { content: none; }
footer .brevo-newsletter-frame {
  display: block; width: 100%; max-width: 100%;
  height: 520px; margin: 0; border: 0; background: var(--ink);
}
footer .footer-grid > div:nth-child(3) span { overflow-wrap: anywhere; }
footer .socials { flex-direction: column; align-items: flex-start; gap: 8px; }
@media (max-width: 980px) {
  footer .footer-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 28px; }
  footer .footer-grid > div:nth-child(n) { grid-column: auto; grid-row: auto; }
  footer .footer-grid > .footer-newsletter { grid-column: 1 / -1; }
  footer .brevo-newsletter-frame { max-width: 640px; height: 560px; }
}
@media (max-width: 620px) {
  footer .footer-grid { grid-template-columns: minmax(0,1fr); }
  footer .footer-grid > .footer-newsletter { grid-column: 1; }
  footer .brevo-newsletter-frame { max-width: 100%; height: 680px; }
}
