/* fitVibe Plus payments page - scoped reference adaptation */

.fv-plus-subpage--payments{
  --fv-plus-page-bg: var(--main-white-color);
  --fv-plus-section-soft: var(--main-white-color);
  --fv-plus-section-white: #FFFFFF;
  --fv-plus-ink: var(--main-blueblack-color, #0b3558);
  --fv-plus-focus: rgba(50, 93, 230, .42);
  --fv-plus-section-radius: 30px;
  background: var(--fv-plus-page-bg);
  color: var(--fv-plus-ink);
  overflow: hidden;
}

.fv-plus-subpage--payments *,
.fv-plus-subpage--payments *::before,
.fv-plus-subpage--payments *::after{
  box-sizing: border-box;
}

.fv-plus-subpage--payments .fv-plus-subpage__sr-title{
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.fv-plus-subpage--payments .fv-plus-subpage__frames{
  width: 100%;
  background: var(--fv-plus-page-bg);
}

.fv-plus-subpage--payments .fv-plus-subpage__frame{
  width: 100%;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  overflow: hidden;
  background: var(--fv-plus-page-bg);
}

.fv-plus-subpage--payments .fv-plus-subpage__frame--mobile{
  display: none;
}

.fv-plus-subpage--payments .fv-plus-subpage__scale{
  width: var(--fv-artboard-width);
  height: var(--fv-artboard-height);
  max-width: none;
  flex: 0 0 auto;
  transform: scale(var(--fv-artboard-scale, 1));
  transform-origin: top center;
  will-change: transform;
}

.fv-plus-subpage--payments .fv-plus-subpage__scale > div{
  width: var(--fv-artboard-width) !important;
  max-width: none !important;
  margin: 0 auto;
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch;
  background: var(--fv-plus-page-bg) !important;
}

.fv-plus-subpage--payments .fv-plus-subpage__scale > div > section{
  width: 100%;
  flex: 0 0 auto;
  overflow: hidden !important;
  position: relative;
}

.fv-plus-subpage--payments .fv-plus-subpage__scale > div > section:first-of-type{
  border-radius: 0 0 var(--fv-plus-section-radius) var(--fv-plus-section-radius) !important;
}

.fv-plus-subpage--payments .fv-plus-subpage__scale > div > section:nth-of-type(3),
.fv-plus-subpage--payments .fv-plus-subpage__scale > div > section:nth-of-type(5),
.fv-plus-subpage--payments .fv-plus-subpage__scale > div > section:nth-of-type(7),
.fv-plus-subpage--payments .fv-plus-subpage__scale > div > section:nth-of-type(9),
.fv-plus-subpage--payments .fv-plus-subpage__scale > div > section:nth-of-type(11){
  border-radius: var(--fv-plus-section-radius) !important;
  margin-bottom: 12px !important;
}

.fv-plus-subpage--payments .fv-plus-subpage__scale > div > section:last-of-type{
  border-radius: var(--fv-plus-section-radius) !important;
  margin-bottom: 0 !important;
}

.fv-plus-subpage--payments a{
  text-decoration: none;
}

.fv-plus-subpage--payments a:focus-visible{
  outline: 3px solid var(--fv-plus-focus);
  outline-offset: 3px;
}

@media (min-width: 980px){
  .fv-plus-subpage--payments{
    --fv-plus-section-radius: 70px;
  }

  .fv-plus-subpage--payments .fv-plus-subpage__scale > div > section:nth-of-type(3),
  .fv-plus-subpage--payments .fv-plus-subpage__scale > div > section:nth-of-type(5),
  .fv-plus-subpage--payments .fv-plus-subpage__scale > div > section:nth-of-type(7),
  .fv-plus-subpage--payments .fv-plus-subpage__scale > div > section:nth-of-type(9),
  .fv-plus-subpage--payments .fv-plus-subpage__scale > div > section:nth-of-type(11){
    margin-bottom: 18px !important;
  }
}

@media (max-width: 767px){
  .fv-plus-subpage--payments .fv-plus-subpage__frame--desktop{
    display: none;
  }

  .fv-plus-subpage--payments .fv-plus-subpage__frame--mobile{
    display: flex;
  }
}
/* Plus page section rhythm - mirrors /partners/plus rounded band logic */
.fv-plus-subpage--payments .fv-plus-subpage__scale > div{
  background: var(--fv-plus-page-bg) !important;
}

.fv-plus-subpage--payments .fv-plus-subpage__scale > div > section{
  border-radius: var(--fv-plus-section-radius) !important;
  margin: 0 0 12px !important;
  overflow: hidden !important;
}

.fv-plus-subpage--payments .fv-plus-subpage__scale > div > section:first-of-type{
  border-radius: 0 0 var(--fv-plus-section-radius) var(--fv-plus-section-radius) !important;
}

.fv-plus-subpage--payments .fv-plus-subpage__scale > div > section:last-of-type{
  margin-bottom: 0 !important;
}

@media (min-width: 980px){
  .fv-plus-subpage--payments .fv-plus-subpage__scale > div > section{
    margin-bottom: 18px !important;
  }

  .fv-plus-subpage--payments .fv-plus-subpage__scale > div > section:last-of-type{
    margin-bottom: 0 !important;
  }
}

@media (max-width: 767px){
  .fv-plus-subpage--payments .fv-plus-subpage__scale > div > section{
    margin-bottom: 10px !important;
  }

  .fv-plus-subpage--payments .fv-plus-subpage__scale > div > section:last-of-type{
    margin-bottom: 0 !important;
  }
}
/* End Plus page section rhythm */
/* Grey bands stay flat for Plus contrast */
.fv-plus-subpage--payments .fv-plus-subpage__scale > div > section:first-of-type,
.fv-plus-subpage--payments .fv-plus-subpage__scale > div > section.is-fv-plus-grey-section{
  background: var(--fv-plus-section-soft) !important;
  border-radius: 0 !important;
}
/* End flat grey bands */

/* Compact mobile/tablet rhythm for the payments exported artboards. */
@media (max-width: 767px){
  .fv-plus-subpage--payments .fv-plus-subpage__frame--mobile .fv-plus-subpage__scale > div > section{
    padding-top: 44px !important;
    padding-bottom: 44px !important;
    margin-bottom: 8px !important;
  }

  .fv-plus-subpage--payments .fv-plus-subpage__frame--mobile .fv-plus-subpage__scale > div > section:first-of-type{
    padding-top: 34px !important;
    padding-bottom: 42px !important;
  }

  .fv-plus-subpage--payments .fv-plus-subpage__frame--mobile .fv-plus-subpage__scale > div > section:last-of-type{
    padding-top: 52px !important;
    padding-bottom: 52px !important;
    margin-bottom: 0 !important;
  }

  .fv-plus-subpage--payments .fv-plus-subpage__frame--mobile .fv-plus-subpage__scale > div > section:first-of-type > div{
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 26px !important;
    width: 100% !important;
    max-width: 100% !important;
    text-align: left !important;
  }

  .fv-plus-subpage--payments .fv-plus-subpage__frame--mobile .fv-plus-subpage__scale > div > section:first-of-type > div > div{
    min-width: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .fv-plus-subpage--payments .fv-plus-subpage__frame--mobile [data-fv-reference-heading="h1"],
  .fv-plus-subpage--payments .fv-plus-subpage__frame--mobile [data-fv-reference-heading="h1"] + p,
  .fv-plus-subpage--payments .fv-plus-subpage__frame--mobile [data-fv-reference-heading="h1"] + p + div{
    width: 100% !important;
    max-width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
  }

  .fv-plus-subpage--payments .fv-plus-subpage__frame--mobile [data-fv-reference-heading="h1"] + p{
    margin-bottom: 22px !important;
  }

  .fv-plus-subpage--payments .fv-plus-subpage__frame--mobile [data-fv-reference-heading="h1"] + p + div{
    gap: 10px !important;
    margin-bottom: 16px !important;
  }

  .fv-plus-subpage--payments .fv-plus-subpage__frame--mobile [data-fv-reference-heading="h1"] + p + div a{
    width: 100% !important;
    max-width: 100% !important;
    height: 50px !important;
    min-height: 50px !important;
    padding-right: 20px !important;
    padding-left: 20px !important;
    font-size: 15px !important;
  }

  .fv-plus-subpage--payments .fv-plus-subpage__frame--mobile [data-fv-reference-heading="h1"] + p + div + div{
    gap: 10px !important;
  }

  .fv-plus-subpage--payments .fv-plus-subpage__frame--mobile div[style*="grid-template-columns: 1.4fr 1fr auto auto"]{
    grid-template-columns: minmax(0, 1fr) auto auto !important;
    gap: 4px 8px !important;
    align-items: center !important;
    padding: 10px 12px !important;
  }

  .fv-plus-subpage--payments .fv-plus-subpage__frame--mobile div[style*="grid-template-columns: 1.4fr 1fr auto auto"] > div:nth-child(1){
    grid-column: 1;
    grid-row: 1 / span 2;
    min-width: 0 !important;
  }

  .fv-plus-subpage--payments .fv-plus-subpage__frame--mobile div[style*="grid-template-columns: 1.4fr 1fr auto auto"] > div:nth-child(2){
    grid-column: 2;
    grid-row: 1;
    justify-self: end;
    font-size: 10.5px !important;
  }

  .fv-plus-subpage--payments .fv-plus-subpage__frame--mobile div[style*="grid-template-columns: 1.4fr 1fr auto auto"] > div:nth-child(3){
    grid-column: 3;
    grid-row: 1;
    justify-self: end;
    min-width: auto !important;
  }

  .fv-plus-subpage--payments .fv-plus-subpage__frame--mobile div[style*="grid-template-columns: 1.4fr 1fr auto auto"] > div:nth-child(4){
    grid-column: 2 / span 2;
    grid-row: 2;
    justify-self: end;
    min-width: auto !important;
    padding: 4px 8px !important;
    font-size: 9px !important;
    white-space: nowrap !important;
  }

  .fv-plus-subpage--payments .fv-payments-real-screens{
    padding-top: 44px !important;
    padding-bottom: 56px !important;
  }

  .fv-plus-subpage--payments .fv-payments-real-screens__intro{
    margin-bottom: 22px !important;
    text-align: left !important;
  }

  .fv-plus-subpage--payments .fv-plus-subpage__frame--mobile .fv-payments-benefits-swiper.fv-swipe-active{
    display: block !important;
    grid-template-columns: none !important;
    gap: 0 !important;
    overflow: hidden !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .fv-plus-subpage--payments .fv-plus-subpage__frame--mobile .fv-payments-benefits-swiper.fv-swipe-active .swiper-wrapper{
    align-items: stretch;
  }

  .fv-plus-subpage--payments .fv-plus-subpage__frame--mobile .fv-payments-benefits-swiper.fv-swipe-active .swiper-slide{
    height: auto;
  }

  .fv-plus-subpage--payments .fv-plus-subpage__frame--mobile .fv-payments-benefits-swiper.fv-swipe-active .swiper-slide > div{
    height: 100%;
  }

  .fv-plus-subpage--payments .fv-plus-subpage__frame--mobile .fv-plus-subpage__scale > div > section.fv-payments-transparency-section{
    padding-top: 34px !important;
    padding-bottom: 36px !important;
  }

  .fv-plus-subpage--payments .fv-plus-subpage__frame--mobile .fv-payments-transparency-section > div{
    gap: 18px !important;
  }

  .fv-plus-subpage--payments .fv-plus-subpage__frame--mobile .fv-payments-transparency-section h2{
    margin-bottom: 12px !important;
  }

  .fv-plus-subpage--payments .fv-plus-subpage__frame--mobile .fv-payments-transparency-section p{
    margin-bottom: 14px !important;
  }

  .fv-plus-subpage--payments .fv-plus-subpage__frame--mobile .fv-payments-transparency-section p + div{
    gap: 4px !important;
    padding: 14px !important;
  }

  .fv-plus-subpage--payments .fv-plus-subpage__frame--mobile .fv-payments-transparency-section p + div > div{
    padding-top: 4px !important;
    padding-bottom: 4px !important;
  }
}

@media (min-width: 768px) and (max-width: 979px){
  .fv-plus-subpage--payments .fv-plus-subpage__frame--desktop .fv-plus-subpage__scale > div > section{
    padding-top: 72px !important;
    padding-bottom: 72px !important;
  }

  .fv-plus-subpage--payments .fv-plus-subpage__frame--desktop .fv-plus-subpage__scale > div > section:first-of-type{
    padding-top: 58px !important;
    padding-bottom: 64px !important;
  }

  .fv-plus-subpage--payments .fv-plus-subpage__frame--desktop .fv-plus-subpage__scale > div > section:last-of-type{
    padding-top: 76px !important;
    padding-bottom: 76px !important;
  }
}

.fv-plus-subpage--payments .fv-payments-real-screens{
  background: #FFFFFF;
  padding: 64px 18px 80px;
  font-family: Manrope, -apple-system, BlinkMacSystemFont, sans-serif;
}

.fv-plus-subpage--payments .fv-payments-real-screens__inner{
  max-width: 1180px;
  margin: 0 auto;
}

.fv-plus-subpage--payments .fv-payments-real-screens__intro{
  max-width: 760px;
  margin: 0 auto 28px;
  text-align: center;
}

.fv-plus-subpage--payments .fv-payments-real-screens__eyebrow{
  display: inline-flex;
  padding: 6px 12px;
  border-radius: 999px;
  background: #e1e8fe;
  color: #325DE6;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  margin-bottom: 14px;
}

.fv-plus-subpage--payments .fv-payments-real-screens h2{
  margin: 0 0 12px;
  color: #222222;
  font-size: 32px;
  line-height: 1.12;
  letter-spacing: -.03em;
  font-weight: 800;
}

.fv-plus-subpage--payments .fv-payments-real-screens p{
  margin: 0;
  color: #5f6e95;
  font-size: 16px;
  line-height: 1.65;
  font-weight: 600;
}

.fv-plus-subpage--payments .fv-payments-real-screens__hero,
.fv-plus-subpage--payments .fv-payments-real-screens__card{
  background: #f7f9fe;
  border: 1px solid #e6ebf7;
  border-radius: 26px;
  overflow: hidden;
  box-shadow: 0 24px 60px -36px rgba(15, 23, 42, .34);
}

.fv-plus-subpage--payments .fv-payments-real-screens__hero{
  padding: 18px;
  margin-bottom: 18px;
}

.fv-plus-subpage--payments .fv-payments-real-screens__grid{
  display: grid;
  grid-template-columns: 1fr;
  gap: 18px;
}

.fv-plus-subpage--payments .fv-payments-real-screens__card{
  display: grid;
  gap: 14px;
  padding: 18px;
}

.fv-plus-subpage--payments .fv-payments-real-screens__card-copy{
  padding: 4px 4px 0;
}

.fv-plus-subpage--payments .fv-payments-real-screens__card-copy span{
  display: inline-flex;
  margin-bottom: 8px;
  color: #325DE6;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.fv-plus-subpage--payments .fv-payments-real-screens__card-copy h3{
  margin: 0 0 8px;
  color: #222222;
  font-size: 22px;
  line-height: 1.2;
  letter-spacing: -.02em;
  font-weight: 800;
}

.fv-plus-subpage--payments .fv-payments-real-screens__card-copy p{
  font-size: 14px;
  line-height: 1.55;
}

.fv-plus-subpage--payments .fv-payments-real-screens__image{
  display: block;
  width: 100%;
  height: auto;
  border-radius: 18px;
}

.fv-plus-subpage--payments > .fv-payments-real-screens{
  display: none;
}

.fv-plus-subpage--payments .fv-plus-export-section-hidden{
  display: none !important;
}

.fv-plus-subpage--payments .fv-payments-export-shot-shell{
  border-style: solid !important;
  border-color: #dfe6f6 !important;
  background: #f7f9fe !important;
  padding: 18px !important;
}

.fv-plus-subpage--payments .fv-payments-export-shot-shell--plain{
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
}

.fv-plus-subpage--payments .fv-payments-export-shot{
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  border-radius: 18px;
  box-shadow: 0 22px 54px -34px rgba(15, 23, 42, .36);
}

.fv-plus-subpage--payments .fv-payments-export-shot--plain{
  border-radius: 0;
  box-shadow: none;
}

.fv-plus-subpage--payments .fv-payments-export-gallery-shell{
  border-style: solid !important;
  border-color: #dfe6f6 !important;
  background: #f7f9fe !important;
  padding: 16px !important;
}

.fv-plus-subpage--payments .fv-payments-export-gallery{
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  display: grid;
  grid-template-columns: 1.26fr .84fr;
  grid-template-rows: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.fv-plus-subpage--payments .fv-payments-export-gallery__item{
  min-width: 0;
  min-height: 0;
  overflow: hidden;
  border: 1px solid #e6ebf7;
  border-radius: 18px;
  background: #FFFFFF;
  box-shadow: 0 18px 42px -30px rgba(15, 23, 42, .36);
}

.fv-plus-subpage--payments .fv-payments-export-gallery__item--main{
  grid-row: 1 / span 2;
}

.fv-plus-subpage--payments .fv-payments-export-gallery img{
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: top center;
}

@media (min-width: 900px){
  .fv-plus-subpage--payments .fv-payments-real-screens{
    padding: 84px 24px 104px;
  }

  .fv-plus-subpage--payments .fv-payments-real-screens h2{
    font-size: 44px;
  }

  .fv-plus-subpage--payments .fv-payments-real-screens__hero{
    padding: 22px;
    margin-bottom: 22px;
  }

  .fv-plus-subpage--payments .fv-payments-real-screens__grid{
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
  }

  .fv-plus-subpage--payments .fv-payments-real-screens__card{
    padding: 22px;
  }
}
