.text-section-container {
  position: relative;
}
.text-section-container.vertical-padding-top-none {
  padding-top: 0px;
}
.text-section-container.vertical-padding-bottom-none {
  padding-bottom: 0px;
}
.text-section-container.vertical-padding-top-small {
  padding-top: 20px;
}
.text-section-container.vertical-padding-top-medium {
  padding-top: 35px;
}
.text-section-container.vertical-padding-top-large {
  padding-top: 50px;
}
.text-section-container.vertical-padding-bottom-small {
  padding-bottom: 20px;
}
.text-section-container.vertical-padding-bottom-medium {
  padding-bottom: 35px;
}
.text-section-container.vertical-padding-bottom-large {
  padding-bottom: 50px;
}
@media only screen and (max-width: 991.98px) {
  .text-section-container.m_vertical-padding-top-none {
    padding-top: 0px;
  }
  .text-section-container.m_vertical-padding-top-small {
    padding-top: 20px;
  }
  .text-section-container.m_vertical-padding-top-medium {
    padding-top: 35px;
  }
  .text-section-container.m_vertical-padding-top-large {
    padding-top: 50px;
  }
  .text-section-container.m_vertical-padding-bottom-none {
    padding-bottom: 0px;
  }
  .text-section-container.m_vertical-padding-bottom-small {
    padding-bottom: 20px;
  }
  .text-section-container.m_vertical-padding-bottom-medium {
    padding-bottom: 35px;
  }
  .text-section-container.m_vertical-padding-bottom-large {
    padding-bottom: 50px;
  }
}
.text-section-container .text-section-background, .text-section-container .text-section-overlay {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
.text-section-container .text-section-background img, .text-section-container .text-section-overlay img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.text-section-container .page-width {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: calc(var(--gap) * 1px);
}
@media only screen and (max-width: 991.98px) {
  .text-section-container .page-width {
    gap: calc(var(--m_gap) * 1px);
  }
}
.text-section-container .page-width h1, .text-section-container .page-width h2, .text-section-container .page-width h3 {
  max-width: 786px;
  margin: 0 auto;
  margin-bottom: 25px;
}
.text-section-container .page-width p {
  max-width: 786px;
  margin: 0 auto;
  font-size: 14px;
  line-height: 24px;
}
@media only screen and (min-width: 992px) {
  .text-section-container .page-width p {
    font-size: 16px;
    line-height: 30px;
  }
}
.text-section-container .page-width .button {
  margin-top: 10px;
}
.text-section-container .page-width .button.align-center {
  margin-left: auto;
  margin-right: auto;
}
.text-section-container .page-width .button.align-left {
  margin-left: 0;
  margin-right: auto;
}
.text-section-container .page-width .button.align-right {
  margin-left: auto;
  margin-right: 0;
}
