/* IPA Store Footer Alignment + Payment Icon Balance v1.4.2 */

/* Payment logos: every badge owns the spacing, while the logo is centered in
   both axes. The normalized default assets remove baked-in uneven whitespace. */
.v120-footer-payments .payments-row {
  align-items: center !important;
}
.v120-footer-payments .payment-badge {
  width: auto !important;
  min-width: 0 !important;
  height: 30px !important;
  padding: 5px 8px !important;
  box-sizing: border-box !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 0 !important;
  overflow: hidden !important;
}
.v120-footer-payments .payment-badge img {
  display: block !important;
  width: auto !important;
  height: auto !important;
  max-width: 44px !important;
  max-height: 18px !important;
  margin: auto !important;
  object-fit: contain !important;
  object-position: 50% 50% !important;
}

@media (max-width: 767px) {
  /* Force the SOCIAL ROW ITSELF to occupy the full footer brand width.
     This stylesheet is intentionally loaded after public-contact-v301x, so
     the older width:auto / justify-content:flex-start rules cannot win. */
  .v120-footer-brand #ipaContactIconsV3014,
  #ipaContactIconsV3014.ipa-contact-inline-v3014,
  #ipaContactIconsV3014.ipa-contact-inline-v3014.ipa-contact-placement-v3015 {
    display: flex !important;
    flex: 0 0 100% !important;
    align-self: stretch !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 100% !important;
    justify-content: center !important;
    align-items: center !important;
    align-content: center !important;
    gap: 8px !important;
    margin: 10px auto 0 !important;
    padding: 0 !important;
    text-align: center !important;
    float: none !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
  }

  /* Payment title + row use the same centered visual axis as social icons. */
  .v120-footer-payments {
    width: 100% !important;
    align-items: center !important;
    text-align: center !important;
  }
  .v120-footer-payments > strong {
    width: 100% !important;
    text-align: center !important;
  }
  .v120-footer-payments .payments-row {
    display: flex !important;
    width: 100% !important;
    max-width: 100% !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    direction: ltr !important;
  }

  .v120-footer-payments .payment-badge {
    height: 30px !important;
    padding: 5px 8px !important;
    margin: 0 !important;
  }
}
