* {
   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: .4s;
   transition: .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: 0px;
   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;
   background: #fff url(../img/sel.png) no-repeat 97% 50%
}

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;*/
      bottom: 276px;
      width: 171px;
      height: 281px;
      background-size: contain
   }

   form {
      border-radius: 20px;
      padding: 20px 25px;
/*      margin-top: 430px;*/
      margin-top: 310px;
   }

   .prices--footer {
      max-width: none;
      padding-left: 0
   }

   .sale--footer {
      font-size: 16px;
      color: #fff;
      width: 165px;
      height: 165px;
      top: auto;
/*      bottom: 640px;*/
      bottom: 450px;
      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: 340px
   }

   .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;
}