/* Shared footer appearance for the new pages.
 * Section animations live in site-reveal.css.
 * Requires .footer-bottom-banner immediately before footer.wf-footer.
 */
.footer-bottom-banner .bottom-banner-content {
  container-type: inline-size;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 80px 50px;
  background: #000 url("../images/home/faq-banner-bg.png") center / cover no-repeat;
  text-align: center;
}
.footer-bottom-banner .bottom-banner-content h3 {
  width: 100%;
  max-width: 1100px;
  margin: 0 auto;
  color: #fff;
  font-size: clamp(16px, 3vw, 40px); /* Fallback for browsers without container units. */
  font-size: min(40px, 5.4cqw);
  white-space: nowrap;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0;
  text-align: center;
}
.bottom-banner.footer-bottom-banner { width: 100%; max-width: none; margin: 0; padding: 0; }
.bottom-banner.footer-bottom-banner,
.footer-bottom-banner + footer.wf-footer,
.footer-bottom-banner + footer.wf-footer .wf-footer-container,
.footer-bottom-banner + footer.wf-footer .wf-footer-top,
.footer-bottom-banner + footer.wf-footer .wf-footer-main { border: 0; }
.footer-bottom-banner + footer.wf-footer .wf-footer-bottom { border: 0; border-top: 1px solid rgba(255, 255, 255, .16); }
.footer-bottom-banner + footer.wf-footer .wf-footer-container { padding-top: 60px; }
.footer-bottom-banner + footer.wf-footer .wf-footer-top { padding-top: 0; }


@media (max-width: 680px) {
  .footer-bottom-banner .bottom-banner-content { padding: 60px 20px; }
}
