.bsb-overlay {
  --bsb-overlay-opacity: 0.5;
  --bsb-overlay-bg-color: var(--bs-black-rgb);
  position: relative;
}
.bsb-overlay:after {
  background-color: rgba(
    var(--bsb-overlay-bg-color),
    var(--bsb-overlay-opacity)
  );
  bottom: 0;
  content: "";
  display: block;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 0;
}
.bsb-overlay > * {
  position: relative;
  z-index: 1;
}
.bsb-overlay-figure {
  --bsb-overlay-figure-opacity: 0.5;
  --bsb-overlay-figure-bg-color: var(--bs-black-rgb);
  position: relative;
}
.bsb-overlay-figure:after {
  background-color: rgba(
    var(--bsb-overlay-figure-bg-color),
    var(--bsb-overlay-figure-opacity)
  );
  bottom: 0;
  content: "";
  display: block;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}
.bsb-overlay-hover {
  --bsb-overlay-hover-opacity: 0.5;
  --bsb-overlay-hover-bg-color: var(--bs-black-rgb);
  position: relative;
}
.bsb-overlay-hover > a {
  bottom: 0;
  display: block;
  left: 0;
  position: relative;
  right: 0;
  top: 0;
}
.bsb-overlay-hover > a > img.bsb-scale {
  --bsb-scale: 1;
}
.bsb-overlay-hover > a > img.bsb-scale,
.bsb-overlay-hover > a > img.bsb-scale-up {
  transform: scale3d(var(--bsb-scale), var(--bsb-scale), var(--bsb-scale));
  transform-style: preserve-3d;
  transition: transform 0.5s;
}
.bsb-overlay-hover > a > img.bsb-scale-up {
  --bsb-scale: 1.2;
}
.bsb-overlay-hover > a:after {
  background-color: rgba(
    var(--bsb-overlay-hover-bg-color),
    var(--bsb-overlay-hover-opacity)
  );
  content: "";
  cursor: pointer !important;
  display: block;
  z-index: 0;
}
.bsb-overlay-hover > a:after,
.bsb-overlay-hover > figcaption {
  bottom: 0;
  left: 0;
  opacity: 0;
  position: absolute;
  right: 0;
  top: 0;
}
.bsb-overlay-hover > figcaption {
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  pointer-events: none;
  z-index: 1;
}
.bsb-overlay-hover > figcaption > * {
  opacity: 0;
}
.bsb-overlay-hover:hover > a > img.bsb-hover-scale {
  --bsb-scale-hover: 1;
  transform: scale3d(
    var(--bsb-scale-hover),
    var(--bsb-scale-hover),
    var(--bsb-scale-hover)
  );
}
.bsb-overlay-hover:hover > a > img.bsb-hover-scale-up {
  --bsb-scale-hover: 1.2;
  transform: scale3d(
    var(--bsb-scale-hover),
    var(--bsb-scale-hover),
    var(--bsb-scale-hover)
  );
}
.bsb-overlay-hover:hover > a:after {
  opacity: 1;
  transition: opacity 0.15s linear;
}
.bsb-overlay-hover:hover > figcaption {
  opacity: 1;
  transition: opacity 0.15s linear 0.1s;
}
.bsb-overlay-hover:hover > figcaption > .bsb-hover-fadeIn {
  --bsb-animation-duration: 500ms;
  animation-duration: var(--bsb-animation-duration);
  animation-fill-mode: both;
  animation-name: bsb-fadeIn;
}
.bsb-overlay-hover:hover > figcaption > .bsb-hover-fadeInUp {
  --bsb-animation-duration: 500ms;
  animation-duration: var(--bsb-animation-duration);
  animation-fill-mode: both;
  animation-name: bsb-fadeInUp;
}
.bsb-overlay-hover:hover > figcaption > .bsb-hover-fadeInDown {
  --bsb-animation-duration: 500ms;
  animation-duration: var(--bsb-animation-duration);
  animation-fill-mode: both;
  animation-name: bsb-fadeInDown;
}
.bsb-overlay-hover:hover > figcaption > .bsb-hover-fadeInLeft {
  --bsb-animation-duration: 500ms;
  animation-duration: var(--bsb-animation-duration);
  animation-fill-mode: both;
  animation-name: bsb-fadeInLeft;
}
.bsb-overlay-hover:hover > figcaption > .bsb-hover-fadeInRight {
  --bsb-animation-duration: 500ms;
  animation-duration: var(--bsb-animation-duration);
  animation-fill-mode: both;
  animation-name: bsb-fadeInRight;
}
.bsb-overlay-hover:hover > figcaption > .bsb-hover-zoomIn {
  --bsb-animation-duration: 500ms;
  animation-duration: var(--bsb-animation-duration);
  animation-fill-mode: both;
  animation-name: bsb-zoomIn;
}
.bsb-btn-xl {
  --bs-btn-padding-y: 0.625rem;
  --bs-btn-padding-x: 1.25rem;
  --bs-btn-font-size: 1.25rem;
  --bs-btn-border-radius: var(--bs-border-radius-lg);
}
.bsb-btn-2xl {
  --bs-btn-padding-y: 0.75rem;
  --bs-btn-padding-x: 1.5rem;
  --bs-btn-font-size: 1.25rem;
  --bs-btn-border-radius: var(--bs-border-radius-lg);
}
.bsb-btn-3xl {
  --bs-btn-padding-y: 0.875rem;
  --bs-btn-padding-x: 1.75rem;
  --bs-btn-font-size: 1.25rem;
  --bs-btn-border-radius: var(--bs-border-radius-lg);
}
.bsb-cta-1 {
  /* background-attachment: fixed; */
  background-position: 50%;
  background-size: cover;
  padding-bottom: 3rem;
  padding-top: 3rem;
}
@media (min-width: 372px) {
  .bsb-cta-1 {
    padding-bottom: 5rem;
    padding-top: 5rem;
  }
  
}
@media (min-width: 600px) {
  .bsb-cta-1 {
    padding-bottom: 10rem;
    padding-top: 10rem;
  }
}
