/* BP_ADAPTIVE_FOOTER_V1
   FLOW: natural document scroll when footer cannot fit.
   Original desktop reveal remains unchanged when content fits.
*/

html.bp-footer-flow main {
  margin-bottom: 0 !important;
}

html.bp-footer-flow .site-footer {
  position: relative !important;
  inset: auto !important;
  height: auto !important;
  min-height: 0 !important;
  overflow: visible !important;
  display: grid !important;
  grid-template-rows: auto auto auto !important;
  z-index: 1;
}

html.bp-footer-flow .site-footer__inner--main {
  min-height: auto !important;
  grid-template-rows: auto 1px auto !important;
  align-content: start !important;
  row-gap: clamp(24px, 3vw, 40px);
  padding-top: clamp(42px, 5vh, 70px) !important;
  padding-bottom: clamp(34px, 4vh, 58px) !important;
}

html.bp-footer-flow .site-footer__grid {
  align-self: start !important;
  margin-top: 0 !important;
}

html.bp-footer-flow .site-footer__marquee {
  position: relative;
  overflow: hidden;
}

html.bp-footer-flow .site-footer__bottom {
  margin-top: 0 !important;
}

/* Keep the original mobile and coarse-pointer layout. */
@media (max-width: 1000px), (pointer: coarse) {
  html.bp-footer-flow .site-footer__inner--main {
    display: block !important;
  }

  html.bp-footer-flow .site-footer__grid {
    margin-top: 50px !important;
  }
}
