
/* Local replacement for only the Bootstrap layout used by this section. No CDN required. */
.acp-payment-solutions .container{width:100%;max-width:1320px;margin-left:auto;margin-right:auto;padding-left:12px;padding-right:12px;}
.acp-payment-solutions .row{display:flex;flex-wrap:wrap;margin-left:-12px;margin-right:-12px;}
.acp-payment-solutions .row>*{box-sizing:border-box;flex-shrink:0;width:100%;max-width:100%;padding-left:12px;padding-right:12px;}
.acp-payment-solutions .justify-content-center{justify-content:center;}
.acp-payment-solutions .text-center{text-align:center;}
.acp-payment-solutions .mx-auto{margin-left:auto;margin-right:auto;}
.acp-payment-solutions .d-flex{display:flex;}
.acp-payment-solutions .align-items-stretch{align-items:stretch;}
.acp-payment-solutions .g-4{row-gap:24px;}
.acp-payment-solutions .g-0{margin-left:0;margin-right:0;}
.acp-payment-solutions .g-0>*{padding-left:0;padding-right:0;}
.acp-payment-solutions .col-12{flex:0 0 auto;width:100%;}
.acp-payment-solutions .acp-svg-icon{width:52px;height:52px;display:block;fill:none;stroke:currentColor;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;}
.acp-payment-solutions .acp-arrow-svg{width:15px;height:15px;display:block;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s ease;}
.acp-payment-solutions .acp-learn-more .acp-arrow-svg{flex:0 0 15px;}
@media (min-width:576px){.acp-payment-solutions .col-sm-6{flex:0 0 auto;width:50%;}}
@media (min-width:768px){.acp-payment-solutions .col-md-3{flex:0 0 auto;width:25%;}}
@media (min-width:992px){.acp-payment-solutions .col-lg-3{flex:0 0 auto;width:25%;}.acp-payment-solutions .col-lg-10{flex:0 0 auto;width:83.33333333%;}}

/* Allied CardPay - Payment Solutions Section
   Bootstrap-ready section, scoped to prevent conflicts with existing site CSS.
   Single consolidated stylesheet. Font stack matches uploaded ACP ISV CSS: "Montserrat","humanst521_lt_btlight","abadi_mt_condensed_lightRg","Inter","Segoe UI",Arial,Helvetica,sans-serif.
*/

.acp-payment-solutions,
.acp-payment-solutions * {
  box-sizing: border-box;
}

.acp-payment-solutions {
  background: #ffffff;
  padding: 50px 0 44px;
  color: #071642;
  overflow: hidden;
  font-family: "Montserrat","humanst521_lt_btlight","abadi_mt_condensed_lightRg","Inter","Segoe UI",Arial,Helvetica,sans-serif;
}

.acp-payment-solutions .acp-eyebrow {
  color: #0154D6;
  font-family: "Montserrat","humanst521_lt_btlight","abadi_mt_condensed_lightRg","Inter","Segoe UI",Arial,Helvetica,sans-serif;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 3.4px;
  line-height: 1.2;
  margin-bottom: 8px;
  text-transform: uppercase;
}

.acp-payment-solutions .acp-main-title {
  color: #071642;
  font-family: "Montserrat","humanst521_lt_btlight","abadi_mt_condensed_lightRg","Inter","Segoe UI",Arial,Helvetica,sans-serif;
  font-size: clamp(34px, 3.35vw, 48px);
  font-weight: 800;
  letter-spacing: -.4px;
  line-height: 1.04;
  margin: 0 0 16px;
}

.acp-payment-solutions .acp-lead {
  color: #4f5b70;
  font-family: "Montserrat","humanst521_lt_btlight","abadi_mt_condensed_lightRg","Inter","Segoe UI",Arial,Helvetica,sans-serif;
  font-size: clamp(17px, 1.35vw, 20px);
  font-weight: 300;
  line-height: 1.42;
  max-width: 980px;
  margin-bottom: 0;
}

.acp-payment-solutions .acp-card-row {
  margin-top: 18px;
  align-items: stretch;
}

.acp-payment-solutions .acp-card-row > [class*="col-"] {
  display: flex;
}

.acp-payment-solutions .acp-service-card,
.acp-payment-solutions .acp-service-card:hover,
.acp-payment-solutions .acp-service-card:focus {
  text-decoration: none;
}

.acp-payment-solutions .acp-service-card {
  background: linear-gradient(180deg, #ffffff 0%, #f7fbff 52%, #eef6ff 100%);
  border: 1.5px solid rgba(1, 84, 214, .55);
  border-radius: 14px;
  box-shadow: 0 12px 28px rgba(7, 38, 95, .09);
  color: #071642;
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  width: 100%;
  height: 100%;
  min-height: 430px;
  justify-content: flex-start;
  padding: 31px 24px 27px;
  text-align: center;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease, background .22s ease;
  position: relative;
  overflow: hidden;
  isolation: isolate;
}

.acp-payment-solutions .acp-service-card:before {
  background: #0154D6;
  border-radius: 14px 14px 0 0;
  content: '';
  height: 4px;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  transition: height .22s ease, opacity .22s ease;
  z-index: -1;
}

.acp-payment-solutions .acp-hover-glow {
  background: radial-gradient(circle at 50% 0%, rgba(255,255,255,.24), transparent 55%);
  display: block;
  height: 180px;
  left: -20%;
  opacity: 0;
  position: absolute;
  right: -20%;
  top: -90px;
  transform: translateY(-20px);
  transition: opacity .22s ease, transform .22s ease;
  z-index: 0;
}

.acp-payment-solutions .acp-service-card:hover,
.acp-payment-solutions .acp-service-card:focus {
  background: linear-gradient(145deg, #ffffff 0%, #eaf4ff 45%, #d9ebff 100%);
  border-color: rgba(1, 84, 214, .82);
  box-shadow: 0 24px 50px rgba(1, 84, 214, .22);
  color: #071642;
  transform: translateY(-7px);
}

.acp-payment-solutions .acp-service-card:hover:before,
.acp-payment-solutions .acp-service-card:focus:before {
  height: 7px;
  opacity: 1;
}

.acp-payment-solutions .acp-service-card:hover .acp-hover-glow,
.acp-payment-solutions .acp-service-card:focus .acp-hover-glow {
  opacity: 1;
  transform: translateY(0);
}

.acp-payment-solutions .acp-icon-circle {
  align-items: center;
  background: linear-gradient(180deg, #f5faff 0%, #e5f1ff 100%);
  border: 1px solid rgba(1, 84, 214, .08);
  border-radius: 50%;
  color: #0154D6;
  display: inline-flex;
  height: 124px;
  justify-content: center;
  margin: 0 auto 24px;
  position: relative;
  transition: background .22s ease, border-color .22s ease, transform .22s ease;
  width: 124px;
  z-index: 1;
}

.acp-payment-solutions .acp-icon-circle .acp-svg-icon {
  color: #0154D6;
  font-size: 52px;
  line-height: 1;
  transition: color .22s ease, transform .22s ease;
}

.acp-payment-solutions .acp-service-card:hover .acp-icon-circle,
.acp-payment-solutions .acp-service-card:focus .acp-icon-circle {
  background: #ffffff;
  border-color: rgba(255, 255, 255, .8);
  transform: scale(1.04);
}

.acp-payment-solutions .acp-service-card:hover .acp-icon-circle .acp-svg-icon,
.acp-payment-solutions .acp-service-card:focus .acp-icon-circle .acp-svg-icon {
  color: #0154D6;
  transform: scale(1.04);
}

.acp-payment-solutions .acp-service-card h3 {
  color: #071642;
  font-family: "Montserrat","humanst521_lt_btlight","abadi_mt_condensed_lightRg","Inter","Segoe UI",Arial,Helvetica,sans-serif;
  font-size: 21px;
  font-weight: 500;
  line-height: 1.08;
  margin: 0 0 12px;
  position: relative;
  transition: color .22s ease;
  z-index: 1;
}

.acp-payment-solutions .acp-title-line {
  background: #0154D6;
  border-radius: 20px;
  display: block;
  height: 3px;
  margin: 0 auto 20px;
  position: relative;
  transition: background .22s ease, width .22s ease;
  width: 40px;
  z-index: 1;
}

.acp-payment-solutions .acp-service-card p {
  color: #4f5b70;
  font-family: "Montserrat","humanst521_lt_btlight","abadi_mt_condensed_lightRg","Inter","Segoe UI",Arial,Helvetica,sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.38;
  margin: 0 auto 24px;
  max-width: 252px;
  position: relative;
  transition: color .22s ease;
  z-index: 1;
}

.acp-payment-solutions .acp-learn-more {
  align-items: center;
  color: #0154D6;
  display: inline-flex;
  font-family: "Montserrat","humanst521_lt_btlight","abadi_mt_condensed_lightRg","Inter","Segoe UI",Arial,Helvetica,sans-serif;
  font-size: 15px;
  font-weight: 600;
  gap: 11px;
  justify-content: center;
  margin-top: auto;
  position: relative;
  text-decoration: none;
  transition: color .22s ease;
  z-index: 1;
}

.acp-payment-solutions .acp-learn-more .acp-arrow-svg {
  font-size: 15px;
  transition: transform .2s ease;
}

.acp-payment-solutions .acp-service-card:hover h3,
.acp-payment-solutions .acp-service-card:focus h3 {
  color: #0154D6;
}

.acp-payment-solutions .acp-service-card:hover p,
.acp-payment-solutions .acp-service-card:focus p {
  color: #263553;
}

.acp-payment-solutions .acp-service-card:hover .acp-learn-more,
.acp-payment-solutions .acp-service-card:focus .acp-learn-more {
  color: #0154D6;
}

.acp-payment-solutions .acp-service-card:hover .acp-title-line,
.acp-payment-solutions .acp-service-card:focus .acp-title-line {
  background: #0154D6;
  width: 58px;
}

.acp-payment-solutions .acp-service-card:hover .acp-learn-more .acp-arrow-svg,
.acp-payment-solutions .acp-service-card:focus .acp-learn-more .acp-arrow-svg {
  transform: translateX(5px);
}

.acp-payment-solutions .acp-feature-strip {
  align-items: center;
  background: linear-gradient(135deg, #5a9af0 0%, #4388df 48%, #347bd8 100%);
  border: 1px solid rgba(47, 115, 201, .34);
  border-radius: 9px;
  box-shadow: 0 10px 22px rgba(7, 22, 66, .11), inset 0 1px 0 rgba(255,255,255,.16);
  color: #ffffff;
  margin: 28px 12px 0;
  overflow: hidden;
  padding: 5px 0;
  width: calc(100% - 24px);
}

.acp-payment-solutions .acp-feature {
  align-items: center;
  display: flex;
  gap: 12px;
  justify-content: center;
  min-height: 42px;
  padding: 4px 14px;
}

.acp-payment-solutions .acp-feature:not(:last-child) {
  border-right: 1px solid rgba(255,255,255,.24);
}

.acp-payment-solutions .acp-feature svg {
  width: 23px;
  height: 23px;
  flex: 0 0 23px;
  fill: none;
  stroke: #ffffff;
  stroke-width: 2.1;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.acp-payment-solutions .acp-feature span {
  color: #ffffff;
  font-family: "Montserrat","Inter","Segoe UI",Arial,Helvetica,sans-serif;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.15;
  white-space: nowrap;
}
.acp-payment-solutions .animated8 {
  -webkit-animation: acpFadeInDown .42s ease-out 0ms both;
  animation: acpFadeInDown .42s ease-out 0ms both;
}

@-webkit-keyframes acpFadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-18px);
    transform: translateY(-18px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@keyframes acpFadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-18px);
    transform: translateY(-18px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}