.body {
}

.front-body {
  position: relative;
  z-index: 5;
}

body.backed-head .front-head-background {
  position: absolute;
  top: -300px;
  left: -3000px;
  right: -3000px;
  bottom: 0;
  z-index: 0;
}

body:not(.backed-head) .front-head-background {
  display: none;
}

body.backed-head .front-head-background {
  background: linear-gradient(-67deg, #5c7aff, #768ceb 100%);
}

.front-head-backing {
  position: absolute;
  top: -160px;
  left: 0;
  z-index: -1;
}

.front-head-checkout {
  max-width: 370px;
  opacity: .95;
  position: relative;
  top: -36px;
}

@media (max-width: 1250px) {
  .front-head-backing {
    display: none;
  }
}

@media (max-width: 1250px) {
  .front-head-checkout {
    top: -34px !important;
  }
}

@media (max-width: 770px) {
  .front-head-checkout {
    top: 0 !important;
  }
}

.head {
  padding: 105px 30px 120px;
  position: relative;
}

.head > .row {
  position: relative;
  z-index: 5;
}

.head.compact {
  padding: 55px 30px;
  text-align: center;
}

.head.compact.bottom-padded {
  padding-bottom: 125px;
}

.body-sizing {
  min-width: var(--page-width);
  max-width: var(--page-width);
  margin-right: auto !important;
  margin-left: auto !important;
}

.body-sizing.small {
  min-width: var(--small-page-width);
  max-width: var(--small-page-width);
}

body.legal .body-sizing.small {
  min-width: var(--legal-page-width);
  max-width: var(--legal-page-width);
}

.front-explainer {
  padding: 85px 30px 125px;
  /*background: var(--front-background-color);*/
}

.front-explainer h3 {
  color: var(--non-main-header-color);
  font-weight: 600;
}

.front-explainer p {
  color: var(--non-main-text-color);
  font-size: 17px;
}

.front-box {
  padding: 100px 30px;
  background: var(--front-background-color);
}

.body-sizing.bring-to-center {
  min-width: var(--bring-to-center-page-width);
  max-width: var(--bring-to-center-page-width);
}

.front-platform-overview h2 {
  text-align: center;
  font-weight: 700;
  color: var(--non-main-header-color);
}

.front-platform-overview p {
  color: var(--non-main-text-color);
  text-align: center;
  font-size: 18px;
  margin: 0 0 48px;
}

.row.front-feature-set {
  margin: 28px -15px -15px;
}

.row.front-feature-set > * {
  padding: 15px;
  flex: 0 0 auto;
  width: 50%;
}

.front-feature {
  padding: 30px;
  box-shadow: 0 0 35px #e6e6f0;
  border-radius: 6px;
  border: 1px solid var(--brand-subtle-color);
  position: relative;
  background: #fff;
}

.front-benefits {
  padding: 100px 30px;
  /*background: var(--front-background-color);*/
}

.front-benefits .body-sizing.bring-to-center {
  /*min-width: var(--bring-to-center-feature-width);*/
  /*max-width: var(--bring-to-center-feature-width);*/
}

.front-benefits .row {
  margin: 0 -5px;
}

.front-benefits-box .col-auto, .front-benefits-box .col {
  padding: 0 5px;
  text-align: left !important;
}

.front-benefits .mi, .front-benefits-box .mi {
  max-width: 28px;
  max-height: 28px;
  cursor: default;
}

.front-benefits h5, .front-benefits-sep h5 {
  color: var(--non-main-header-color);
  font-weight: 700;
  font-size: 18px;
  margin: 3px 0 8px;
}

.front-benefits p, .front-benefits-sep p {
  color: var(--non-main-text-color);
  text-align: left !important;
  font-size: 16px;
  margin: 0;
}

.front-benefits p a, .front-benefits-box p a {
  color: var(--non-main-text-color);
  text-decoration: none;
  font-weight: 600;
}

.front-benefits p a i, .front-benefits-box p a i {
  margin-left: 5px;
  font-size: 13px;
}

.front-benefits-box:not(:last-child) {
  margin: 0 0 62px;
}

.front-benefits-sep {
  margin: -20px !important;
}

.front-benefits-sep > * {
  flex: 0 0 auto;
  width: 50%;
  padding: 20px !important;
}

.front-bubble {
  background: var(--brand-mint-color);
  padding: 100px 30px;
}

.front-get-started {
  padding: 120px 30px 110px;
  text-align: center;
  background: var(--brand-midnight-color);
  margin: 0 0 -5px;
}

.front-get-started h1 {
  font-size: 46px;
  color: #fff;
  font-weight: 600;
}

.front-get-started p {
  color: #cecee0;
  font-size: 18px;
  margin: 0 0 26px;
}

.front-get-started .btn.contact-button {
  background: #fff !important;
  color: var(--brand-midnight-color);
}

@media (max-width: 770px) {
  .col.front-head-image {
    display: none !important;
  }
}

.front-explainer .row {
  margin: -12px;
}

.front-explainer .row > * {
  padding: 12px;
}

@media (max-width: 610px) {
  .front-explainer .row > * {
    flex: 0 0 auto !important;
    width: 100% !important;
  }
}

@media (max-width: 830px) {
  .front-benefits-sep > * {
    flex: 0 0 auto !important;
    width: 100% !important;
  }
}

.front-explainer .row .row {
  margin: -18px;
}

.front-explainer .row .row > * {
  padding: 18px;
}

.front-solutions {
  padding: 80px 30px;
  background: #fff;
}

.front-solution {
  padding: 30px 25px 25px;
  background: #fff;
  box-shadow: 0 0 18px #efeff2;
  border-radius: 8px;
  display: inline-block;
  height: 215px;
}

.front-solution h5 {
  color: var(--non-main-header-color);
  font-weight: 600 !important;
  font-size: 16px;
  margin: 0 0 7px;
}

.front-solution p {
  margin: 0 0 12px;
  color: var(--non-main-text-color);
  font-family: 'Inter', sans-serif !important;
  font-weight: 400 !important;
  font-size: 16px;
}

a.front-solution-wrap {
  text-decoration: none !important;
  font-family: initial;
  font-weight: initial;
}

.front-solution a {
  color: var(--non-main-text-color);
  font-family: 'Inter', sans-serif !important;
  font-weight: 600 !important;
  text-decoration: none;
  font-size: 15px;
}

.front-solution a i {
  margin-left: 5px;
  font-size: 13px;
}

div.x {
  --color: rgba(255,0,0,0.38);
  --l: 3px;
  background: linear-gradient(to top right, transparent calc(50% - var(--l) / 2), var(--color) calc(50% - var(--l) / 2) calc(50% + var(--l) / 2), transparent calc(50% + var(--l) / 2)), linear-gradient(to bottom right, transparent calc(50% - var(--l) / 2), var(--color) calc(50% - var(--l) / 2) calc(50% + var(--l) / 2), transparent calc(50% + var(--l) / 2));
  --clip-path: polygon(var(--l) 0%, calc(100% - var(--l)) 0%, 100% var(--l), 100% calc(100% - var(--l)), calc(100% - var(--l)) 100%, var(--l) 100%, 0% calc(100% - var(--l)), 0% var(--l));
  -webkit-clip-path: var(--clip-path);
  clip-path: var(--clip-path);
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  pointer-events: none;
}

.front-page-dash {
  position: absolute;
  left: 0;
  top: -85px;
  max-width: 55vw;
  max-height: 540px;
  transform: perspective(540px) rotateY(-3deg);
}

.footer-legal-text-wrap {
  padding: 28px 0 0;
  text-align: center;
}

.footer-legal-text-wrap .footer-legal-text {
  display: inline-block;
  max-width: 90%;
}

.footer-legal-text-wrap .footer-legal-text p {
  color: #9fa1c2;
  display: inline-block;
  font-size: 12px;
  margin: 0;
}

