/* Two-Column Card block frontend styles. Inner column child blocks share this stylesheet. Tablet runs 48rem-64rem; desktop starts at 64.0625rem. */
.bn-two-column-card {
  --bn-two-column-card-mobile-padding-top: 20px;
  --bn-two-column-card-mobile-padding-right: 20px;
  --bn-two-column-card-mobile-padding-bottom: 20px;
  --bn-two-column-card-mobile-padding-left: 20px;
  --bn-two-column-card-desktop-padding-top: 40px;
  --bn-two-column-card-desktop-padding-right: 40px;
  --bn-two-column-card-desktop-padding-bottom: 40px;
  --bn-two-column-card-desktop-padding-left: 40px;
  --bn-two-column-card-bg-width: 400px;
  box-sizing: border-box;
  width: calc(100% - 2.5rem);
  max-width: calc(var(--bn-layout-max-width, 80rem) + var(--bn-two-column-card-mobile-padding-left) + var(--bn-two-column-card-mobile-padding-right));
  margin-left: auto;
  margin-right: auto;
  padding: var(--bn-two-column-card-mobile-padding-top) var(--bn-two-column-card-mobile-padding-right) var(--bn-two-column-card-mobile-padding-bottom) var(--bn-two-column-card-mobile-padding-left);
  border: 1px solid var(--bn-color-medium-gray, #949494);
  border-radius: var(--bn-radius-card, 20px);
  background-image: url('./assets/card-background-shape.svg');
  background-position: left bottom;
  background-repeat: no-repeat;
  background-size: var(--bn-two-column-card-bg-width) 100%;
}

.bn-two-column-card__columns {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  max-width: var(--bn-layout-max-width, 80rem);
  margin-left: auto;
  margin-right: auto;
}

.bn-two-column-card__column {
  box-sizing: border-box;
  min-width: 0;
  width: 100%;
}

.bn-two-column-card__column > :first-child {
  margin-top: 0;
}

.bn-two-column-card__column > :last-child {
  margin-bottom: 0;
}

.bn-two-column-card :where(h2, h3, p, .wp-block-heading, .wp-block-paragraph) {
  margin-bottom: 0;
}

.bn-two-column-card h3 {
  color: var(--bn-color-black, #000000);
  font-size: 1.5rem;
}

.bn-two-column-card .bn-icon-heading {
  margin-bottom: 0 !important;
}

.bn-two-column-card .bn-icon-heading + :where(h3, .wp-block-heading:is(h3)),
.bn-two-column-card :where(h2, .wp-block-heading:is(h2)) + :where(h3, .wp-block-heading:is(h3)) {
  margin-block-start: 0.3125rem !important;
  margin-top: 0.3125rem !important;
}

.bn-two-column-card :where(h3, .wp-block-heading:is(h3)) + :where(p, .wp-block-paragraph) {
  margin-block-start: 0.625rem !important;
  margin-top: 0.625rem !important;
}

@media (min-width: 48rem) {
  .bn-two-column-card {
    width: calc(100% - 5rem);
  }

  .bn-two-column-card__columns {
    align-items: center;
    flex-direction: row;
    justify-content: center;
    gap: 3.75rem;
  }

  .bn-two-column-card__column {
    flex: 0 1 auto;
    width: auto;
  }

  .bn-two-column-card--has-first-width .bn-two-column-card__columns {
    align-items: stretch;
    justify-content: center;
    width: 100%;
  }

  .bn-two-column-card--has-first-width .bn-two-column-card__column--first {
    flex: 0 1 var(--bn-two-column-card-first-max);
    max-width: var(--bn-two-column-card-first-max);
  }

  .bn-two-column-card--has-first-width .bn-two-column-card__column--second {
    flex: 1 1 0;
  }
}

@media (min-width: 64rem) {
  .bn-two-column-card {
    width: calc(100% - 10rem);
    max-width: calc(var(--bn-layout-max-width, 80rem) + var(--bn-two-column-card-desktop-padding-left) + var(--bn-two-column-card-desktop-padding-right));
    padding: var(--bn-two-column-card-desktop-padding-top) var(--bn-two-column-card-desktop-padding-right) var(--bn-two-column-card-desktop-padding-bottom) var(--bn-two-column-card-desktop-padding-left);
  }
}

.bn-two-column-card {
  position: relative;
  overflow: hidden;
  background-image: none;
}

.bn-two-column-card::before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  z-index: 0;
  width: var(--bn-two-column-card-bg-width);
  height: 100%;
  background-image: url('./assets/card-background-shape.svg');
  background-position: left top;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  content: "";
  pointer-events: none;
}

.bn-two-column-card__columns {
  position: relative;
  z-index: 1;
}

.bn-two-column-card::before {
  top: -1px;
  bottom: -1px;
  left: -1px;
  height: calc(100% + 2px);
  width: calc(var(--bn-two-column-card-bg-width) + 1px);
}

.bn-two-column-card {
  background-image: url('./assets/card-background-shape.svg');
  background-origin: border-box;
  background-clip: border-box;
  background-position: left top;
  background-repeat: no-repeat;
  background-size: var(--bn-two-column-card-bg-width) 100%;
}

.bn-two-column-card::before {
  display: none;
}

.bn-two-column-card {
  background-position: -1px top;
  background-size: calc(var(--bn-two-column-card-bg-width) + 1px) 100%;
}

.bn-two-column-card {
  background-image: none;
}

.bn-two-column-card__background-shape {
  position: absolute;
  top: 0;
  bottom: 0;
  left: calc(-1 * var(--bn-two-column-card-mobile-padding-left));
  z-index: 0;
  display: block;
  width: calc(var(--bn-two-column-card-bg-width) + var(--bn-two-column-card-mobile-padding-left));
  background-image: url('./assets/card-background-shape.svg');
  background-position: left top;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  pointer-events: none;
}

@media (min-width: 64rem) {
  .bn-two-column-card__background-shape {
    left: calc(-1 * var(--bn-two-column-card-desktop-padding-left));
    width: calc(var(--bn-two-column-card-bg-width) + var(--bn-two-column-card-desktop-padding-left));
  }
}

.bn-two-column-card {
  background-image: url('./assets/card-background-shape.svg');
  background-origin: border-box;
  background-clip: border-box;
  background-position: left top;
  background-repeat: no-repeat;
  background-size: var(--bn-two-column-card-bg-width) 100%;
}

.bn-two-column-card:has(> .bn-two-column-card__background-shape) {
  background-image: none;
}

.bn-two-column-card__background-shape {
  top: calc(-1 * var(--bn-two-column-card-mobile-padding-top));
  bottom: calc(-1 * var(--bn-two-column-card-mobile-padding-bottom));
  left: calc(-1 * var(--bn-two-column-card-mobile-padding-left));
  width: calc(var(--bn-two-column-card-bg-width) + var(--bn-two-column-card-mobile-padding-left));
  height: auto;
}

@media (min-width: 64rem) {
  .bn-two-column-card__background-shape {
    top: calc(-1 * var(--bn-two-column-card-desktop-padding-top));
    bottom: calc(-1 * var(--bn-two-column-card-desktop-padding-bottom));
    left: calc(-1 * var(--bn-two-column-card-desktop-padding-left));
    width: calc(var(--bn-two-column-card-bg-width) + var(--bn-two-column-card-desktop-padding-left));
  }
}

.bn-two-column-card {
  --bn-two-column-card-phone-margin: 20px;
  --bn-two-column-card-tablet-margin: 40px;
  --bn-two-column-card-desktop-margin: 80px;
  width: calc(100% - var(--bn-two-column-card-phone-margin) - var(--bn-two-column-card-phone-margin));
  max-width: calc(var(--bn-layout-max-width, 80rem) + var(--bn-two-column-card-mobile-padding-left) + var(--bn-two-column-card-mobile-padding-right));
}

@media (min-width: 48rem) {
  .bn-two-column-card {
    width: calc(100% - var(--bn-two-column-card-tablet-margin) - var(--bn-two-column-card-tablet-margin));
  }
}

@media (min-width: 64.0625rem) {
  .bn-two-column-card {
    width: calc(100% - var(--bn-two-column-card-desktop-margin) - var(--bn-two-column-card-desktop-margin));
    max-width: calc(var(--bn-layout-max-width, 80rem) + var(--bn-two-column-card-desktop-padding-left) + var(--bn-two-column-card-desktop-padding-right));
  }
}

.bn-two-column-card {
  --bn-two-column-card-phone-margin-top: 20px;
  --bn-two-column-card-phone-margin-bottom: 20px;
  --bn-two-column-card-tablet-margin-top: 40px;
  --bn-two-column-card-tablet-margin-bottom: 40px;
  --bn-two-column-card-desktop-margin-top: 60px;
  --bn-two-column-card-desktop-margin-bottom: 60px;
  margin-top: var(--bn-two-column-card-phone-margin-top);
  margin-bottom: var(--bn-two-column-card-phone-margin-bottom);
}

@media (min-width: 48rem) {
  .bn-two-column-card {
    margin-top: var(--bn-two-column-card-tablet-margin-top);
    margin-bottom: var(--bn-two-column-card-tablet-margin-bottom);
  }
}

@media (min-width: 64rem) {
  .bn-two-column-card {
    margin-top: var(--bn-two-column-card-desktop-margin-top);
    margin-bottom: var(--bn-two-column-card-desktop-margin-bottom);
  }
}

.bn-two-column-card {
  --bn-two-column-card-gap: 60px;
}

.bn-two-column-card__columns {
  gap: var(--bn-two-column-card-gap);
}

@media (min-width: 48rem) {
  .bn-two-column-card__columns {
    gap: var(--bn-two-column-card-gap);
  }
}

.bn-two-column-card.is-style-no-paragraph-heading-gap :where(p, .wp-block-paragraph) + :where(h3, .wp-block-heading:is(h3)) {
  margin-block-start: 0 !important;
  margin-top: 0 !important;
}

.bn-two-column-card {
  --bn-two-column-card-align-items: stretch;
}

@media (min-width: 48rem) {
  .bn-two-column-card--has-first-width .bn-two-column-card__columns {
    align-items: var(--bn-two-column-card-align-items);
  }
}
/* Responsive column behavior controls. */
.bn-two-column-card {
  --bn-two-column-card-phone-gap: 20px;
  --bn-two-column-card-tablet-gap: 40px;
}

.bn-two-column-card__columns {
  flex-direction: column;
  gap: var(--bn-two-column-card-phone-gap);
}

@media (min-width: 48rem) and (max-width: 64rem) {
  .bn-two-column-card:not(.bn-two-column-card--tablet-two-columns) .bn-two-column-card__columns {
    align-items: stretch;
    flex-direction: column;
    gap: var(--bn-two-column-card-tablet-gap);
  }

  .bn-two-column-card:not(.bn-two-column-card--tablet-two-columns) .bn-two-column-card__column {
    flex: 0 1 auto;
    max-width: none;
    width: 100%;
  }

  .bn-two-column-card--tablet-two-columns .bn-two-column-card__columns {
    align-items: center;
    flex-direction: row;
    gap: var(--bn-two-column-card-tablet-gap);
    justify-content: center;
  }

  .bn-two-column-card--tablet-two-columns .bn-two-column-card__column {
    flex: 0 1 auto;
    width: auto;
  }

  .bn-two-column-card--tablet-two-columns.bn-two-column-card--has-first-width .bn-two-column-card__columns {
    align-items: var(--bn-two-column-card-align-items);
    width: fit-content;
  }

  .bn-two-column-card--tablet-two-columns.bn-two-column-card--has-first-width .bn-two-column-card__column--first {
    flex: 0 1 auto;
    max-width: var(--bn-two-column-card-first-max);
  }

  .bn-two-column-card--tablet-two-columns.bn-two-column-card--has-first-width .bn-two-column-card__column--second {
    flex: 0 1 auto;
  }
}

@media (min-width: 64.0625rem) {
  .bn-two-column-card__columns {
    align-items: center;
    flex-direction: row;
    gap: var(--bn-two-column-card-gap);
    justify-content: center;
  }

  .bn-two-column-card__column {
    flex: 0 1 auto;
    width: auto;
  }

  .bn-two-column-card--has-first-width .bn-two-column-card__columns {
    align-items: var(--bn-two-column-card-align-items);
    width: 100%;
  }

  .bn-two-column-card--has-first-width .bn-two-column-card__column--first {
    flex: 0 1 var(--bn-two-column-card-first-max);
    max-width: var(--bn-two-column-card-first-max);
  }

  .bn-two-column-card--has-first-width .bn-two-column-card__column--second {
    flex: 1 1 0;
  }
}
/* Mobile top background shape option. */
.bn-two-column-card {
  --bn-two-column-card-mobile-bg-height: 100px;
}

@media (max-width: 64rem) {
  .bn-two-column-card--mobile-bg-top .bn-two-column-card__background-shape {
    top: calc(-1 * var(--bn-two-column-card-mobile-padding-top));
    bottom: auto;
    left: calc(-1 * var(--bn-two-column-card-mobile-padding-left));
    width: calc(100% + var(--bn-two-column-card-mobile-padding-left) + var(--bn-two-column-card-mobile-padding-right));
    height: calc(var(--bn-two-column-card-mobile-bg-height) + var(--bn-two-column-card-mobile-padding-top));
    background-image: none;
    overflow: hidden;
  }

  .bn-two-column-card--mobile-bg-top .bn-two-column-card__background-shape::before {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, var(--bn-color-light-gray, #e8e9ea) 0%, var(--bn-color-white, #ffffff) 100%);
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 46%);
    content: "";
  }
}

@media (min-width: 64.0625rem) {
  .bn-two-column-card--mobile-bg-top .bn-two-column-card__background-shape::before {
    content: none;
  }
}
@media (min-width: 48rem) and (max-width: 64rem) {
  .bn-two-column-card--tablet-center-first .bn-two-column-card__column--first,
  .bn-two-column-card--tablet-center-second .bn-two-column-card__column--second {
    align-self: center;
    max-width: 100%;
    text-align: center;
    width: auto;
  }
}

@media (max-width: 47.9375rem) {
  .bn-two-column-card--phone-center-first .bn-two-column-card__column--first,
  .bn-two-column-card--phone-center-second .bn-two-column-card__column--second {
    align-self: center;
    max-width: 100%;
    text-align: center;
    width: auto;
  }
}
@media (min-width: 48rem) and (max-width: 64rem) {
  .bn-two-column-card--tablet-center-first .bn-two-column-card__column--first > *,
  .bn-two-column-card--tablet-center-second .bn-two-column-card__column--second > *,
  .bn-two-column-card--tablet-center-first .bn-two-column-card__column--first :where(.wp-block-image, figure, img),
  .bn-two-column-card--tablet-center-second .bn-two-column-card__column--second :where(.wp-block-image, figure, img) {
    margin-left: auto;
    margin-right: auto;
  }

  .bn-two-column-card--tablet-center-first .bn-two-column-card__column--first :where(.wp-block-image, figure),
  .bn-two-column-card--tablet-center-second .bn-two-column-card__column--second :where(.wp-block-image, figure) {
    text-align: center;
  }

  .bn-two-column-card--tablet-center-first .bn-two-column-card__column--first img,
  .bn-two-column-card--tablet-center-second .bn-two-column-card__column--second img {
    display: block;
  }
}

@media (max-width: 47.9375rem) {
  .bn-two-column-card--phone-center-first .bn-two-column-card__column--first > *,
  .bn-two-column-card--phone-center-second .bn-two-column-card__column--second > *,
  .bn-two-column-card--phone-center-first .bn-two-column-card__column--first :where(.wp-block-image, figure, img),
  .bn-two-column-card--phone-center-second .bn-two-column-card__column--second :where(.wp-block-image, figure, img) {
    margin-left: auto;
    margin-right: auto;
  }

  .bn-two-column-card--phone-center-first .bn-two-column-card__column--first :where(.wp-block-image, figure),
  .bn-two-column-card--phone-center-second .bn-two-column-card__column--second :where(.wp-block-image, figure) {
    text-align: center;
  }

  .bn-two-column-card--phone-center-first .bn-two-column-card__column--first img,
  .bn-two-column-card--phone-center-second .bn-two-column-card__column--second img {
    display: block;
  }
}
.bn-scroll-animations-ready .bn-two-column-card--animate-in {
  opacity: 0;
  transform: translateY(1.5rem);
  transition: opacity 500ms ease-out, transform 500ms ease-out;
}

.bn-scroll-animations-ready .bn-two-column-card--animate-in.is-visible {
  opacity: 1;
  transform: none;
}

@media (prefers-reduced-motion: reduce) {
  .bn-scroll-animations-ready .bn-two-column-card--animate-in {
    opacity: 1;
    transform: none;
    transition: none;
  }
}