* {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

body {
  font-family: "Open Sans", sans-serif;
  font-size: 20px;
  font-weight: 400;
  color: #4b4b4b;
  line-height: 1.3;
  position: relative;
}

.ac_footer {
  position: relative;
  top: 10px;
  height: 0;
  text-align: center;
  margin-bottom: 70px;
  color: #a12000;
}

.ac_footer a {
  color: #a12000;
}

.ac_footer p {
  text-align: center;
}

img[height="1"],
img[width="1"] {
  display: none !important;
}

.overflow {
  overflow: hidden;
}

img {
  max-width: 100%;
  outline: 0;
  border: 0;
}

.mobile-only {
  display: none;
}

.cf {
  display: table;
  clear: both;
}

ul {
  margin: 0;
  list-style-type: none;
}

.wrapper {
  max-width: 970px;
  padding: 0 10px;
  margin: auto;
  position: relative;
}

section,
header,
footer {
  position: relative;
}

.header {
  padding-top: 55px;
  padding-bottom: 200px;
  background: #cbebf8 -webkit-gradient(linear, left top, left bottom, color-stop(0, #7bc9eb), color-stop(50%, #d1e9f4), color-stop(90%, #fdf4d7));
  background: #cbebf8 linear-gradient(#7bc9eb 0, #d1e9f4 50%, #fdf4d7 90%);
  z-index: 1;
  position: relative;
}

.header .wrapper::after {
  content: "";
  background: url(../images/header-woman.png) no-repeat;
  position: absolute;
  right: -130px;
  bottom: -200px;
  width: 475px;
  height: 501px;
}

.title {
  color: #852571;
  font-size: 37px;
  font-weight: 800;
  padding-left: 240px;
  padding-right: 180px;
  margin-bottom: 25px;
}

.header p {
  font-size: 24px;
  padding-left: 240px;
  padding-right: 300px;
}

.sec2 {
  padding: 90px 0 60px;
  margin-top: -160px;
  background: url(../images/sec2-wave.png) no-repeat center;
  color: #d4d1dc;
  font-size: 0;
  z-index: 2;
}

.sec2__prod,
.sec2__list,
.sec2__prices {
  display: inline-block;
  width: 40%;
  vertical-align: bottom;
  font-size: 20px;
  position: relative;
}

.sec2__prod {
  width: 26%;
}

.sec2__prod .sale {
  position: absolute;
  left: -20px;
  bottom: -130px;
}

.sale {
  display: table;
  background: url(../images/price-bg.png) no-repeat;
  background-size: contain;
  font-size: 16px;
  color: #fff;
  width: 165px;
  height: 165px;
  font-weight: 700;
}

.sale div {
  display: table-cell;
  vertical-align: middle;
  text-align: center;
}

.sale span {
  display: block;
  font-size: 35px;
}

.sec2__prod::before {
  content: "";
  background: url(../images/product.png) no-repeat;
  background-size: cover;
  width: 280px;
  height: 460px;
  position: absolute;
  bottom: -68px;
  left: -40px;
}

.sec2__list {
  padding-right: 15px;
}

.sec2__item {
  position: relative;
  margin-bottom: 15px;
  padding-left: 45px;
}

.sec2__item:last-child {
  margin-bottom: 0;
}

.sec2__item::before {
  content: "";
  background: url(../images/checked.png) no-repeat;
  position: absolute;
  left: 0;
  top: 0;
  width: 29px;
  height: 23px;
}

.sec2__prices {
  width: 34%;
}

.prices {
  background: #e6f8f8;
  border-radius: 60px 60px 40px 40px;
  text-align: center;
  color: #843773;
  font-size: 18px;
}

.prices__container {
  padding: 22px 40px 22px 40px;
}

.prices p {
  margin-bottom: 15px;
}

.prices span {
  display: block;
  text-transform: uppercase;
}

.prices__item {
  font-size: 40px;
  text-transform: uppercase;
  font-weight: 700;
  line-height: 1;
}

.prices__new {
  color: #f17b30;
}

.prices__old {
  display: inline-block;
  position: relative;
}

.prices__old::before {
  content: "";
  height: 3px;
  width: 100%;
  position: absolute;
  top: 50%;
  left: 0;
  background: #f17b30;
}

.button {
  cursor: pointer;
  -webkit-transition: 0.4s;
  transition: 0.4s;
  outline: 0;
  border: 0;
  font-family: "Open Sans";
}

.button--orange {
  width: 100%;
  border-radius: 100px;
  background: #f17b30;
  text-transform: uppercase;
  font-size: 30px;
  color: #f0f0d5;
  padding: 13px 0;
}

.button--orange:hover {
  background: #f25d00;
}

.sec3 {
  padding-top: 360px;
  padding-bottom: 70px;
  background: #d3e6e3 -webkit-gradient(linear, left top, left bottom, color-stop(11%, #fbf2ac), color-stop(55%, #e6f8f8));
  background: #d3e6e3 linear-gradient(#fbf2ac 11%, #e6f8f8 55%);
  margin-top: -262px;
  color: #843773;
  font-size: 18px;
}

.sec3__text {
  padding-right: 310px;
  position: relative;
  font-weight: 700;
}

.sec3__text::before {
  content: "";
  background: url(../images/prod-three.png) no-repeat;
  position: absolute;
  bottom: -90px;
  right: 30px;
  width: 251px;
  height: 400px;
  z-index: 1;
}

.sec3 p {
  margin-bottom: 30px;
}

.button--purple {
  background: #843773;
  color: #ffffcd;
  border-radius: 100px;
  padding: 15px 25px;
  font-size: 18px;
  font-weight: 700;
  margin-top: 20px;
}

.button--purple:hover {
  background: #622255;
}

.sec4 {
  background: #e6f8f8;
  padding-bottom: 200px;
  padding-top: 85px;
}

.test {
  background: #fffada;
  border-radius: 50px;
  padding: 30px 60px 30px 385px;
  -webkit-box-shadow: 0 28px 40px -14px rgba(0, 0, 0, 0.1);
  box-shadow: 0 28px 40px -14px rgba(0, 0, 0, 0.1);
}

.test__title {
  font-size: 27px;
  font-weight: 700;
  color: #852571;
  margin-bottom: 35px;
}

.question {
  position: relative;
  min-height: 370px;
}

.question::before {
  content: "";
  background: url(../images/question-woman.png) no-repeat;
  position: absolute;
  left: -395px;
  bottom: -30px;
  width: 418px;
  height: 560px;
}

.question:not(.active) {
  display: none;
}

.question__title {
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 30px;
}

.question__variants li {
  margin-bottom: 30px;
  padding-left: 45px;
  position: relative;
  cursor: pointer;
}

.question__variants li::before {
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 50%;
  border: 3px solid #852571;
  position: absolute;
  top: 5px;
  left: 0;
}

.question__variants li:hover::before,
.question__variants li.checked::before {
  background: #852571;
}

.button--next {
  font-size: 24px;
  font-weight: 700;
  color: #ffffcd;
  padding: 10px 30px 12px 35px;
  background: #852571;
  -webkit-box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.3);
  box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.3);
  margin-top: 25px;
  display: inline-block;
  border-radius: 100px;
}

.test__final {
  position: relative;
  font-weight: 700;
  font-size: 24px;
  line-height: 1.5;
}

.test__final span {
  color: #843773;
}

.test__final::before {
  content: "";
  background: url(../images/final-woman.png) no-repeat;
  position: absolute;
  left: -345px;
  bottom: -30px;
  width: 330px;
  height: 572px;
}

.sec5 {
  background: url(../images/sec5_wave.png) no-repeat center;
  font-weight: 700;
  font-size: 29px;
  color: #ffffcd;
  text-align: center;
  padding: 66px 0 125px;
  margin-top: -120px;
  position: relative;
  z-index: 1;
}

.sec6 {
  margin-top: -110px;
  padding-top: 140px;
  padding-bottom: 240px;
  background: #e5ebca -webkit-gradient(linear, left top, left bottom, from(#d3e6e1), color-stop(70%, #f9f1af));
  background: #e5ebca linear-gradient(#d3e6e1, #f9f1af 70%);
}

.sec6__list {
  font-size: 0;
  text-align: center;
}

.sec6__item {
  display: inline-block;
  vertical-align: top;
  width: 33.33%;
  font-size: 22px;
  padding: 0 18px;
  margin-bottom: 45px;
}

.sec6__item-img {
  background: #ffffcd;
  border-radius: 50%;
  width: 145px;
  height: 145px;
  display: block;
  margin: 0 auto 15px;
  position: relative;
}

.sec6__item .sec6__item-img::before {
  content: "";
  background: url(../images/sec6_img1.png) no-repeat;
  position: absolute;
  width: 108px;
  height: 119px;
  left: 20px;
  top: 12px;
}

.sec6__item:nth-child(2) .sec6__item-img::before {
  background-image: url(../images/sec6_img2.png);
  width: 110px;
  height: 115px;
  left: 21px;
  top: 13px;
}

.sec6__item:nth-child(3) .sec6__item-img::before {
  background-image: url(../images/sec6_img3.png);
  width: 111px;
  height: 111px;
  left: 18px;
  top: 20px;
}

.sec6__item:nth-child(4) .sec6__item-img::before {
  background-image: url(../images/sec6_img4.png);
  width: 121px;
  height: 119px;
  left: 13px;
  top: 10px;
}

.sec6__item:nth-child(5) .sec6__item-img::before {
  background-image: url(../images/sec6_img5.png);
  width: 102px;
  height: 118px;
  left: 31px;
  top: 10px;
}

.sec6__item-title {
  font-weight: 700;
  text-transform: uppercase;
  color: #843773;
  margin-bottom: 15px;
}

.sec7 {
  color: #fafeac;
  background: url(../images/sec7_wave.png) no-repeat center;
  padding: 200px 0;
  position: relative;
  z-index: 2;
  font-weight: 700;
  margin-top: -340px;
}

.sec7__title {
  text-align: center;
  font-size: 28px;
  margin-bottom: 70px;
}

.sec7__list {
  font-size: 0;
  text-align: center;
}

.sec7__item {
  display: inline-block;
  vertical-align: top;
  width: 33.33%;
  font-size: 22px;
  padding: 0 20px;
}

.sec7__img {
  border-radius: 50%;
  width: 153px;
  height: 153px;
  display: block;
  margin: 0 auto 35px;
  background: url(../images/sec7_img1.jpg) no-repeat;
}

.sec7__item:nth-child(2) .sec7__img {
  background-image: url(../images/sec7_img2.jpg);
}

.sec7__item:nth-child(3) .sec7__img {
  background-image: url(../images/sec7_img3.jpg);
}

.sec8 {
  padding-top: 100px;
  margin-top: -270px;
  padding-bottom: 250px;
  background: #fad68c -webkit-gradient(linear, left top, left bottom, from(#fdeba0), color-stop(40%, #f6c177), color-stop(60%, #f6c177), to(#fdeba0));
  background: #fad68c
    linear-gradient(#fdeba0, #f6c177 40%, #f6c177 60%, #fdeba0);
  position: relative;
  z-index: 1;
}

.sec8__block {
  background: #e6f8f8;
  border-radius: 30px;
  font-size: 36px;
  color: #843773;
  text-align: center;
  padding: 35px 40px 280px 40px;
  position: relative;
  font-weight: 700;
  margin-bottom: 260px;
  -webkit-box-shadow: 0 28px 40px -14px rgba(0, 0, 0, 0.1);
  box-shadow: 0 28px 40px -14px rgba(0, 0, 0, 0.1);
}

.sec8__block::after {
  content: "";
  background: url(../images/sec8_block.png) no-repeat;
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 773px;
  height: 449px;
  bottom: -190px;
}

.sec8__title {
  text-align: center;
  color: #843773;
  font-weight: 700;
  font-size: 30px;
  margin-bottom: 60px;
}

.sec8__list {
  font-size: 0;
  text-align: center;
  color: #000;
}

.sec8__item {
  display: inline-block;
  vertical-align: top;
  width: 33.33%;
  font-size: 22px;
  padding: 0 40px;
}

.sec8__item-img {
  background: #e6f8f8;
  border-radius: 50%;
  width: 135px;
  height: 135px;
  display: block;
  margin: 0 auto 15px;
  position: relative;
}

.sec8__item .sec8__item-img::before {
  content: "";
  background: url(../images/sec8_img1.png) no-repeat;
  position: absolute;
  width: 88px;
  height: 107px;
  left: 27px;
  top: 14px;
}

.sec8__item:nth-child(2) .sec8__item-img::before {
  background-image: url(../images/sec8_img2.png);
  width: 108px;
  height: 107px;
  left: 13px;
  top: 10px;
}

.sec8__item:nth-child(3) .sec8__item-img::before {
  background-image: url(../images/sec8_img3.png);
  width: 114px;
  height: 112px;
  left: 13px;
  top: 10px;
}

.footer1 {
  font-size: 0;
  background: url(../images/footer_wave.png) no-repeat center;
  margin-top: -360px;
  position: relative;
  z-index: 2;
  padding-top: 210px;
}

.footer__prod {
  display: inline-block;
  vertical-align: bottom;
  width: 33.33%;
  position: relative;
}

.footer__prod::before {
  content: "";
  background: url(../images/product.png) no-repeat;
  position: absolute;
  left: 0;
  bottom: 110px;
  width: 302px;
  height: 496px;
}

.footer__right {
  display: inline-block;
  vertical-align: bottom;
  width: 66.66%;
  padding-left: 15px;
  padding-top: 150px;
}

.prices--footer {
  background: 0;
  color: #fff;
  padding-left: 65px;
  max-width: 360px;
  text-align: left;
  margin-bottom: 20px;
}

.prices--footer p {
  margin-bottom: 20px;
  font-size: 20px;
}

.prices--footer .prices__old {
  color: #e6f8f8;
}

.sale--footer {
  background: url(../images/footer-sale-bg.png) no-repeat;
  font-size: 24px;
  width: 235px;
  height: 235px;
  background-size: contain;
  right: 0;
  position: absolute;
  top: 60px;
}

.sale--footer span {
  font-size: 50px;
}

form {
  background: #e6f8f8;
  padding: 38px 77px 0 77px;
  border-radius: 40px;
  -webkit-box-shadow: 0 15px 20px -6px rgba(0, 0, 0, 0.1);
  box-shadow: 0 15px 20px -6px rgba(0, 0, 0, 0.1);
}

.label {
  font-size: 20px;
  font-weight: 700;
  color: #843773;
  display: inline-block;
  vertical-align: baseline;
  width: 100%;
  margin-bottom: 5px;
}

.hint {
  text-align: right;
  display: inline-block;
  vertical-align: baseline;
  width: 50%;
  font-size: 18px;
  font-style: italic;
  color: #f17b30;
  margin-bottom: 5px;
}

select,
input {
  display: block;
  height: 43px;
  line-height: 43px;
  background: #fff;
  width: 100%;
  margin-bottom: 25px;
  outline: 0;
  padding: 0 20px;
  border: 2px solid #843773;
  font-family: "Open Sans", sans-serif;
  color: #843773;
  font-size: 18px;
  line-height: 1.4;
}

select::-ms-expand {
  display: none;
}

select {
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
  appearance: none !important;
}

form .button {
  display: block;
  position: relative;
  bottom: -32px;
  margin: auto;
  max-width: 235px;
}

.sec10 {
  margin-top: -610px;
  background: #dfddbf -webkit-gradient(linear, left top, left bottom, from(#f0ae6f), to(#d9f2e1));
  background: #dfddbf linear-gradient(#f0ae6f, #d9f2e1);
  min-height: 685px;
}

@media (max-width: 991px) {
  .wrapper {
    width: 320px;
  }

  .header {
    padding: 30px 0 290px;
  }

  .logo {
    margin-bottom: 20px;
  }

  .title {
    font-size: 30px;
  }

  .header p {
    font-size: 20px;
  }

  .title,
  .header p {
    padding: 0;
  }

  .header .wrapper::after {
    display: none;
  }

  section {
    margin-top: 0 !important;
  }

  .sec2 {
    background: #7e2b72;
    padding: 50px 0;
  }

  .sec2::before,
  .sec5::before,
  .sec7::before,
  .footer::before {
    content: "";
    background: url(../images/wave-mob.png) no-repeat;
    position: absolute;
    left: 0;
    top: -81px;
    width: 100%;
    height: 83px;
  }

  .sec2__prod,
  .sec2__list,
  .sec2__prices,
  .footer__prod,
  .footer__right,
  .sec6__item,
  .sec7__item,
  .sec8__item {
    display: block;
    width: 100%;
    padding: 0;
  }

  .sec2__list {
    margin-bottom: 30px;
    font-size: 18px;
  }

  .sec2__prod::before {
    width: 170px;
    height: 280px;
    bottom: 10px;
    left: 0;
  }

  .sec2__prod .sale {
    left: 120px;
    bottom: 180px;
  }

  .sec3 {
    padding: 50px 0 330px;
  }

  .sec3__text {
    padding-right: 0;
  }

  .sec3__text::before {
    bottom: -310px;
    right: 66px;
    width: 169px;
    height: 270px;
    background-size: cover;
  }

  .sec4 {
    padding: 10px 0 50px;
  }

  .test {
    padding: 15px 20px;
    border-radius: 20px;
  }

  .test__title {
    font-size: 22px;
  }

  .question {
    min-height: none;
  }

  .question::before {
    display: none;
  }

  .question__title {
    font-size: 18px;
  }

  .question__variants li {
    margin-bottom: 15px;
    font-size: 18px;
    padding-left: 35px;
  }

  .test__final {
    font-size: 18px;
    line-height: 1.3;
  }

  .sec5 {
    background: #7e2b72;
    font-size: 25px;
    padding: 20px 0;
  }

  .sec5::after {
    content: "";
    background: url(../images/wave-mob.png) no-repeat;
    position: absolute;
    left: 0;
    bottom: -81px;
    width: 100%;
    height: 83px;
    -webkit-transform: scale(-1);
    transform: scale(-1);
  }

  .sec6 {
    padding: 80px 0 50px;
  }

  .sec6__item {
    font-size: 18px;
  }

  .bx-wrapper {
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
    border: 0 !important;
    background: none !important;
  }

  .bx-wrapper .bx-pager.bx-default-pager a {
    background: #7e2b72 !important;
    width: 20px !important;
    height: 20px !important;
    border-radius: 50px !important;
  }

  .bx-wrapper .bx-pager.bx-default-pager a:hover,
  .bx-wrapper .bx-pager.bx-default-pager a.active,
  .bx-wrapper .bx-pager.bx-default-pager a:focus {
    background: #f17b30 !important;
  }

  .sec7 {
    background: #7e2b72;
    font-size: 25px;
    padding: 50px 0;
  }

  .sec7__item {
    margin-bottom: 40px;
    font-size: 18px;
  }

  .sec7__item:last-child {
    margin-bottom: 0;
  }

  .sec7__title {
    margin-bottom: 50px;
  }

  .sec7__img {
    margin-bottom: 20px;
  }

  .sec8 {
    padding: 50px 0 100px;
  }

  .sec8__block::after {
    left: 48%;
    width: 300px;
    height: 184px;
    bottom: -80px;
    background-size: cover;
  }

  .sec8__block {
    border-radius: 20px;
    font-size: 31px;
    padding: 15px;
    margin-bottom: 130px;
    line-height: 1;
    padding-bottom: 120px;
  }

  .sec8__title {
    font-size: 23px;
    margin-bottom: 40px;
  }

  .sec8__item {
    margin-bottom: 40px;
    font-size: 18px;
  }

  .sec8__item:last-child {
    margin-bottom: 0;
  }

  .footer1 {
    background: #7e2b72;
    margin-top: 0;
    padding: 50px 0;
  }

  .sec10 {
    min-height: 0;
  }

  .footer1 .wrapper {
    display: table;
  }

  .footer__prod {
    margin-bottom: 40px;
    display: table-cell;
  }

  .footer__right {
    display: table-caption;
    padding: 0 10px;
  }

  .footer__prod::before {
    background: url(../images/product.png) no-repeat;
    left: 60px;
    bottom: 446px;
    width: 171px;
    height: 281px;
    background-size: contain;
  }

  form {
    border-radius: 20px;
    padding: 20px 25px;
    margin-top: 430px;
  }

  .prices--footer {
    max-width: none;
    padding-left: 0;
  }

  .sale--footer {
    font-size: 16px;
    color: #fff;
    width: 165px;
    height: 165px;
    top: auto;
    bottom: 750px;
    background-image: url(../images/price-bg.png);
  }

  .sale--footer span {
    font-size: 35px;
  }

  .label {
    font-size: 18px;
    line-height: 1;
  }

  .hint {
    font-size: 11px;
  }

  form .button {
    position: static;
  }

  .prices__item {
    font-size: 28px;
  }
}

@media (min-width: 2000px) {
  .sec2,
  .sec5,
  .sec7 {
    background-size: 100% 100%;
  }

  .sec6 {
    padding-bottom: 320px;
  }

  .sec8 {
    padding-top: 100px;
  }

  .sec7 {
    padding: 80px 0;
  }

  .footer1 {
    background-size: contain;
  }
}
.footer {
  background: #dfddbf -webkit-gradient(linear, left top, left bottom, from(#d9f2e1), to(#f0ae6f)) !important;
  background: #dfddbf linear-gradient(#d9f2e1, #f0ae6f) !important;
  color: #fff !important;
}
form .input-wrapper label {
  display: none;
  pointer-events: none;
}

form .input-wrapper {
  position: relative;
  margin: 0 auto 20px;
}

form .input-wrapper .error {
  border: 1px solid red !important;
  padding-top: 6px !important;
}

form .input-wrapper .error + label {
  width: 100%;
  height: 100%;
  color: red;
  display: block !important;
  font-size: 11px;
  line-height: 17px;
  position: absolute;
  top: 0;
  left: 10px;
  text-align: left !important;
}

form .input-wrapper .error + label:before,
form .input-wrapper .error + label:after {
  content: "";
  position: absolute;
  right: 30px;
  top: 50%;
  width: 3px;
  height: 21px;
  background-color: red;
}

form .input-wrapper .error + label:before {
  -webkit-transform: translate(0, -50%) rotate(135deg);
  transform: translate(0, -50%) rotate(135deg);
}

form .input-wrapper .error + label:after {
  -webkit-transform: translate(0, -50%) rotate(45deg);
  transform: translate(0, -50%) rotate(45deg);
}

.phone-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 5px;
}

.phone-wrapper .phone-code {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 65px;
  flex: 0 0 65px;
  padding: 0px 10px;
  opacity: 0.7;
  pointer-events: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
