/**
 * Add an arrow element
 *
 * Accepts:
 * - $direction: {String} Positioning method for element
 * - $size: {String}
 * - $stroke: {String}
 *
 * Usage:
 * .selector {
 *   @include visually-shown(relative);
 * }
 */
.section-before-plans {
  padding-bottom: 18px;
}

.before-plans {
  display: flex;
}
@media only screen and (max-width: 991px) {
  .before-plans {
    flex-direction: column-reverse;
    text-align: center;
  }
}
.before-plans-counter {
  display: flex;
}
@media only screen and (max-width: 991px) {
  .before-plans-counter {
    justify-content: center;
    margin-bottom: 4.1vw;
    margin-top: 6vw;
  }
}
.before-plans-arrow {
  position: absolute;
  height: 100%;
  width: 2px;
  background: #FFFDED;
  padding-bottom: 0 !important;
}
.before-plans-arrow::after, .before-plans-arrow::before {
  position: absolute;
  content: "";
  display: block;
  width: 2px;
  height: 12px;
  background: #FFFDED;
  bottom: -1px;
}
.before-plans-arrow::after {
  transform: rotate(45deg);
  left: 4px;
}
.before-plans-arrow::before {
  transform: rotate(-45deg);
  left: -4px;
}
.before-plans-number {
  position: relative;
  display: flex;
  align-items: flex-end;
}
.before-plans-number-inner {
  position: relative;
}
.before-plans-number-text {
  margin-left: 0.085em;
  padding-top: 0.08em;
}
@media only screen and (min-width: 992px) {
  .before-plans-number::before {
    position: absolute;
    content: "";
    display: block;
    bottom: 0;
    height: 19px;
    width: 1px;
    background: #FFFDED;
    left: 50%;
  }
}
.before-plans-subscript {
  margin-left: 0.35em;
}
.before-plans-description p {
  font-weight: 300;
  margin-bottom: 0.5em;
}
@media only screen and (min-width: 992px) {
  .before-plans-description p {
    padding-right: 10%;
    margin: 0;
  }
}
.before-plans-connector {
  width: 100%;
  height: 19px;
}
@media only screen and (max-width: 991px) {
  .before-plans-connector {
    height: 38px;
  }
}
.before-plans-connector-inner {
  width: 100%;
  height: 1px;
  background: #FFFDED;
  position: relative;
}
.before-plans-connector-inner::before, .before-plans-connector-inner::after {
  position: absolute;
  content: "";
  display: block;
  width: 1px;
  height: 19px;
  background: #FFFDED;
}
.before-plans-connector-inner::after {
  right: 0;
}
.before-plans-connector-center {
  display: none;
}
@media only screen and (max-width: 991px) {
  .before-plans-connector-center {
    display: block;
    width: 1px;
    height: 19px;
    background: #FFFDED;
    margin-left: 50%;
  }
}
@media only screen and (min-width: 992px) {
  .before-plans {
    padding: 0 10.8%;
  }
  .before-plans-description {
    padding-bottom: 3.4vw;
    width: 55%;
  }
}
@media only screen and (min-width: 992px) and (min-width: 992px) {
  .before-plans-description {
    width: calc(55% + 10 * (100vw - 992px) / 308);
  }
}
@media only screen and (min-width: 992px) and (min-width: 1300px) {
  .before-plans-description {
    width: 65%;
  }
}
@media only screen and (min-width: 992px) {
  .before-plans-counter {
    width: 45%;
  }
}
@media only screen and (min-width: 992px) and (min-width: 992px) {
  .before-plans-counter {
    width: calc(45% + -10 * (100vw - 992px) / 308);
  }
}
@media only screen and (min-width: 992px) and (min-width: 1300px) {
  .before-plans-counter {
    width: 35%;
  }
}
@media only screen and (min-width: 992px) {
  .before-plans-counter > * {
    padding-bottom: 3.4vw;
  }
}
/*# sourceMappingURL=before-plans-section.css.map*/