@media only screen and (min-width: 767px) {
  section.hero .content-wrap .half {
    margin-bottom: 32px
  }
}

@media only screen and (min-width: 1023px) {
  section.hero .content-wrap {
    display: flex;
    padding: 30px 0 20px 0
  }

  section.hero .content-wrap .half {
    position: relative;
    z-index: 1;
    flex: 0 0 50%;
    margin: 0
  }

  section.hero .content-wrap .half h1 {
    font-size: 65px;
    margin-bottom: 16px
  }

  section.hero .content-wrap .half.left p {
    font-size: 20px;
    margin-bottom: 40px
  }

  section.hero .content-wrap .half .rating p {
    max-width: 260px;
    margin-bottom: 8px
  }

  section.hero .content-wrap .half .bg-img {
    position: absolute;
    z-index: -1;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    max-width: 550px
  }

  section.hero .content-wrap .half .calc-wrap {
    background-color: unset;
    padding: 0;
    margin: 140px auto 0 auto;
    max-width: 430px;
    width: 80%
  }

  section.hero .content-wrap .half .hero-btn {
    display: flex;
    min-width: 212px;
    width: fit-content;
    margin-bottom: 40px;
    font-size: 24px;
    line-height: 16px;
    text-transform: uppercase;
    padding: 16px 46px;
    text-decoration: unset;
    color: #EE6129;
    border: 1px solid #EE6129;
    background-color: #FFF;
    border-radius: 8px;
    transition: all 0.5s ease
  }

  section.hero .content-wrap .half .hero-btn:hover {
    background-color: #EE6129;
    color: #FFF
  }
}

@media only screen and (min-width: 1439px) {
  section.hero .content-wrap {
    padding: 0 0 69px 0
  }

  section.hero .content-wrap .half h1 {
    font-size: 80px
  }

  section.hero .content-wrap .half.left {
    padding-right: 100px
  }

  section.hero .content-wrap .half .calc-wrap {
    gap: 30px
  }

  section.hero .content-wrap .calc-wrap .heading {
    padding: 38px 24px 24px 24px
  }

  section.hero .content-wrap .calc-wrap .heading p {
    margin-bottom: 20px
  }

  section.hero .content-wrap .calc-wrap .sum {
    margin-bottom: 15px
  }

  section.hero .content-wrap .calc-wrap .heading .range-title,
  section.hero .content-wrap .calc-wrap .heading p.days {
    margin-bottom: 0
  }

  .calc-wrap .response p {
    width: 215px;
    text-align: center
  }
}

@media only screen and (min-width: 767px) {

  section.cta .content-wrap:before,
  section.register:not(.no-bg, .last) .content-wrap:before {
    content: "";
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    background-color: #393E46;
    border-radius: 16px
  }

  section.cta .content-wrap,
  section.register:not(.no-bg) .content-wrap {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    position: relative;
    z-index: 1
  }

  section.cta .content-wrap {
    padding: 30px 0 0 0
  }

  section.cta .content-wrap:before {
    height: 100%;
    transform: rotate(4deg)
  }

  section.cta .content-wrap .half.left.bg-elem:before {
    content: unset
  }

  section.cta .content-wrap .half.right {
    margin-top: unset;
    width: 40%;
    order: 1
  }

  section.cta .content-wrap .half.left.bg-elem {
    width: 60%;
    order: 2
  }

  section.cta.sec .content-wrap {
    padding: 0
  }

  section.cta.sec .content-wrap:before {
    transform: rotate(-4.44deg)
  }
}

@media only screen and (min-width: 1023px) {
  section.cta .content-wrap .half h2 {
    margin-bottom: 45px
  }

  section.cta .content-wrap .half p {
    font-size: 18px
  }

  section.cta.sec {
    padding: 30px 0
  }

  .cta.sec .left.bg-elem h3,
  .cta.sec .left.bg-elem p {
    text-align: left
  }

  section.cta.sec .content-wrap {
    padding: 15px 0
  }

  section.cta .content-wrap .half.left.bg-elem {
    padding: 30px 120px 60px 30px
  }

  section.cta .content-wrap:before {
    border-radius: 32px
  }

  section.cta .content-wrap:before {
    height: calc(100% - 70px)
  }

  section.cta.sec .content-wrap:before {
    height: calc(100% - 20px)
  }

  section.cta .content-wrap {
    padding: 30px 60px;
    align-items: flex-start;
    gap: 45px
  }

  section.cta .content-wrap .half.left.bg-elem {
    padding: 70px 160px 0 30px
  }

  .cta.sec .left h2 {
    text-align: left;
  }
}

@media only screen and (min-width: 767px) {
  section.partners h3 {
    padding: 0
  }

  section.partners .partners-slider {
    flex-wrap: wrap;
    gap: 12px
  }

  section.partners .partners-slider .p-slide {
    width: calc(25% - 12px);
    margin: 0;
  }
}

@media only screen and (min-width: 1023px) {

  section.partners,
  .content-wrap {
    padding: 30px
  }

  section.partners {
    padding: 80px 0 60px 0;
    max-width: 1320px;
    margin: auto
  }

  section.partners h3 {
    margin-bottom: 40px
  }

  section.partners .partners-slider {
    gap: 24px
  }

  section.partners .partners-slider .p-slide {
    width: calc(25% - 24px)
  }

  section.partners.bg-bl h3,
  section.partners.bg-bl .partners-slider {
    max-width: 1320px;
    margin-left: auto;
    margin-right: auto;
  }
}

@media only screen and (min-width: 767px) {
  section.register:not(.no-bg, .last) .content-wrap:before {
    content: "";
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    background-color: #393E46;
    border-radius: 16px
  }

  section.register:not(.no-bg) .content-wrap {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    position: relative;
    z-index: 1
  }

  section.register:not(.no-bg) .content-wrap .half {
    width: 50%
  }

  section.register:not(.no-bg) .content-wrap .half.left h3 {
    text-align: left;
    font-size: 35px
  }

  section.register:not(.no-bg) .content-wrap:before {
    height: calc(100% - 200px);
    top: 115px;
    transform: rotate(-6deg)
  }

  section.register:not(.no-bg) .leadform:before {
    content: unset
  }

  section.register .leadform {
    flex-wrap: wrap;
    flex-direction: unset
  }

  section.register .leadform input[name=full_name] {
    margin-right: 8px
  }

  section.register .leadform input[name=full_name],
  section.register .leadform input[name=last_name] {
    width: calc(50% - 4px)
  }

  section.register:not(.no-bg) .content-wrap .half.right.desk {
    display: flex
  }

  section.register.no-bg .leadform {
    max-width: 610px;
    margin: auto
  }

  section.register.last {
    margin-bottom: 40px
  }

  section.register.last .content-wrap {
    align-items: flex-start;
    padding: 32px 24px
  }

  section.register.last .content-wrap .half.left {
    order: 2
  }

  section.register.last .content-wrap .half.left h3 {
    display: none
  }

  section.register.last .content-wrap .half.right {
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    order: 1
  }

  section.register.last .content-wrap .half.right h3,
  section.register.last .leadform .consent-text.desk {
    display: block;
    text-align: left
  }

  section.register.last .leadform .consent-text.desk {
    color: #FFF;
    margin-bottom: 0
  }

  section.register.last .leadform {
    padding: 0
  }

  section.register.last .content-wrap .half.right img {
    max-width: 270px
  }
}

@media only screen and (min-width: 1023px) {
  section.register h3 {
    margin: 0 0 0 30px;
    font-size: 45px
  }

  section.register .leadform {
    padding: 100px 0 0 30px
  }

  .register:not(.no-bg, .last) .form-preloader-orange {
    top: 100px;
    left: 30px;
    width: calc(100% - 30px);
    height: calc(100% - 100px)
  }

  section.register:not(.no-bg) .content-wrap:before {
    top: 145px
  }

  .register .leadform.bg-elem .consent-text {
    font-size: 16px;
    line-height: 140%
  }

  section.register:not(.no-bg) .content-wrap .half.left h3 {
    font-size: 50px;
    margin: 0
  }

  .register.no-bg .content-wrap {
    padding: 60px 0 35px 0
  }

  .register.no-bg .heading h3:not(.no-sub),
  .register.no-bg .heading,
  .register.no-bg .leadform .orange-btn {
    margin-bottom: 40px
  }

  .register.no-bg .heading h3 {
    max-width: 750px;
    width: 100%
  }

  .register.no-bg .heading p {
    max-width: 780px;
    font-size: 20px
  }

  section.register.last .content-wrap .half.right h3 {
    margin: 0 auto 0 0;
    width: 65%
  }
}

@media only screen and (min-width: 1279px) {
  section.register:not(.no-bg) .content-wrap .half.left h3 {
    margin: 0 0 0 30px
  }
}

@media only screen and (min-width: 1439px) {
  section.register:not(.no-bg) .content-wrap .half.left h3 {
    font-size: 50px
  }

  section.register:not(.no-bg) .content-wrap:before {
    top: 100px;
    height: calc(100% - 100px)
  }

  section.register:not(.no-bg, .last) {
    margin-bottom: 50px
  }

  section.register:not(.no-bg) .content-wrap {
    padding: 32px
  }

  section.register.last .content-wrap .half.right h3 {
    font-size: 32px;
    width: 75%
  }
}

@media only screen and (min-width: 767px) {
  section.cards-img .content-wrap {
    padding: 0;
  }

  section.cards-img .content-wrap .top {
    margin-bottom: 30px
  }

  section.cards-img .content-wrap .bottom.cards-row {
    flex-direction: row;
    align-items: stretch
  }

  section.cards-img:not(.preferences) .content-wrap .bottom.cards-row .card-img {
    flex: 1
  }

  section.cards-img.no-img.sec .content-wrap .bottom.cards-row {
    align-items: stretch;
    flex-wrap: wrap;
    flex-direction: unset
  }

  section.cards-img.no-img.sec .content-wrap .bottom.cards-row {
    gap: 32px
  }

  section.cards-img.no-img.sec .content-wrap .bottom.cards-row .card-img {
    flex: 0 0 calc((100% - 2 * 32px) / 3)
  }

  section.cards-img.no-img.sec .content-wrap .bottom.cards-row .card-img .text {
    justify-content: flex-start
  }

  section.cards-img.no-img.sec .content-wrap .bottom.cards-row .card-img .text.no-text {
    justify-content: center;
  }

  section.cards-img.no-img.sec.third .content-wrap {
    padding: 40px 0
  }

  section.cards-img.no-img.third .cards-row.slider4 .card-img {
    margin: 0
  }

  section.cards-img.no-img.third .cards-row.slider4 .card-img:first-child,
  section.cards-img.no-img.third .cards-row.slider4 .card-img:nth-child(2) {
    flex: 0 0 calc((100% - 32px) / 2)
  }

  section.preferences.cards-img .cards-row {
    align-items: stretch;
    flex-wrap: wrap;
    flex-direction: unset
  }

  section.preferences.cards-img .cards-row .card-img {
    width: calc(50% - 8px)
  }
}

@media only screen and (min-width: 1023px) {
  .preferences .card-img .text h4 {
    font-size: 24px;
    margin-bottom: 15px;
  }

  .preferences .card-img .text p {
    font-size: 18px;
  }

  section.cards-img .content-wrap .top {
    margin-bottom: 60px
  }

  section.cards-img .content-wrap h3 {
    margin-bottom: 30px
  }

  section.cards-img .content-wrap .bottom.cards-row {
    padding: 0 36px
  }

  section.cards-img.no-img .content-wrap h3 {
    padding: 0 75px
  }

  .cards-img.no-img.sec .content-wrap h3 {
    padding: 0
  }

  .cards-img.no-img.sec h3 {
    width: 75%
  }

  .cards-img.no-img.sec .top {
    margin-bottom: 40px
  }

  section.preferences,
  .cards-img.no-img.sec .content-wrap {
    padding: 60px 0
  }
}

@media only screen and (min-width: 1439px) {
  section.cards-img.no-img .content-wrap .bottom.cards-row .card-img .text {
    padding: 40px 32px
  }

  section.cards-img .content-wrap h3 {
    padding: 0 120px
  }

  section.cards-img.no-img.sec .cards-row .card-img .text {
    gap: 16px
  }

  section.cards-img.no-img.sec .content-wrap .bottom.cards-row .card-img .text {
    padding: 19px 32px
  }

  section.cards-img.no-img.sec .content-wrap .bottom.cards-row .card-img h4 {
    font-size: 24px;
    line-height: 120%
  }

  section.cards-img.no-img.sec .content-wrap .bottom.cards-row .card-img p {
    font-size: 18px
  }
}

@media only screen and (min-width: 767px) {

  section.opportunities .top,
  section.opportunities .bottom {
    display: flex;
    align-items: center;
    justify-content: flex-start
  }

  section.opportunities .top h3,
  section.opportunities .top p {
    width: 50%
  }

  section.opportunities .top h3 {
    padding-right: 100px
  }

  section.opportunities .top p {
    padding-right: 50px
  }

  section.opportunities .container {
    height: 100%
  }

  section.opportunities .opportunities-slider {
    display: flex;
    align-items: flex-start;
    gap: 25px;
    height: 100%;
    flex-direction: unset;
  }

  section.opportunities .opportunities-slider .p-slide {
    display: flex;
    flex-direction: column;
    flex: 1;
    min-height: 205px;
    height: 100%
  }

  section.opportunities:not(.dark) .opportunities-slider .p-slide:nth-child(2) {
    margin-top: 25px
  }

  section.opportunities:not(.dark) .opportunities-slider .p-slide:last-child {
    margin-top: 50px
  }

  section.opportunities .opportunities-slider .p-slide .bg-elem {
    flex: 1;
    height: 100%
  }

  section.opportunities .opportunities-slider .p-slide .bg-elem:before {
    transform: rotate(5deg)
  }

  section.opportunities .bottom h4 {
    width: 75%;
    text-align: left;
    margin: 0
  }

  section.opportunities .bottom .orange-btn {
    width: 25%;
    max-width: 212px;
    margin-left: auto
  }

  section.opportunities.dark .opportunities-slider .p-slide:last-child {
    transform: translateY(-120px);
  }

  .opportunities.dark .opportunities-slider .p-slide:nth-child(2) {
    transform: translateY(-60px);
  }

  section.opportunities .bottom .no-btn {
    width: 50%;
    margin-left: auto;
  }
}

@media only screen and (min-width: 1023px) {
  section.opportunities:not(.dark) .opportunities-slider .p-slide:nth-child(2) {
    margin-top: 30px
  }

  section.opportunities:not(.dark) .opportunities-slider .p-slide:last-child {
    margin-top: 60px
  }

  section.opportunities .top,
  section.opportunities .opportunities-slider {
    margin-bottom: 60px
  }

  section.opportunities .top h3 {
    margin-bottom: 0
  }

  section.opportunities .bottom h4 {
    font-size: 32px
  }
}

@media only screen and (min-width: 1279px) {
  section.opportunities:not(.dark) .opportunities-slider .p-slide:nth-child(2) {
    margin-top: 40px
  }

  section.opportunities:not(.dark) .opportunities-slider .p-slide:last-child {
    margin-top: 80px
  }

  section.opportunities.dark .opportunities-slider .p-slide:last-child {
    transform: translateY(-120px);
  }

  .opportunities.dark .opportunities-slider .p-slide:nth-child(2) {
    transform: translateY(-60px);
  }
}

@media only screen and (min-width: 1439px) {
  section.opportunities .top p {
    font-size: 20px;
    padding-right: 130px
  }

  section.opportunities:not(.dark) .opportunities-slider .p-slide:nth-child(2) {
    margin-top: 40px
  }

  .opportunities:not(.dark) .p-slide .bg-elem img {
    width: 100px;
    height: 100px
  }
}

@media only screen and (min-width: 1023px) {
  section.list {
    padding: 60px 0;
  }

  section.list {
    margin-bottom: 0
  }

  section.list .container {
    display: flex;
    align-items: flex-start
  }

  section.list .container h3,
  section.list .container .list-wrap {
    flex: 0 0 50%;
    padding-right: 70px
  }

  .list .list-wrap li:not(:last-child) {
    margin-bottom: 32px
  }
}

@media only screen and (min-width: 1439px) {
  section.list .container .list-wrap {
    padding: 0 70px
  }

  section.list .container h3 {
    padding-right: 250px
  }
}

@media only screen and (min-width: 767px) {
  section.reviews .reviews-wrap {
    align-items: stretch;
    flex-wrap: wrap;
    flex-direction: unset
  }

  section.reviews .reviews-wrap {
    gap: 32px 20px;
  }

  section.reviews .reviews-wrap .review {
    width: calc(50% - 10px);
  }
}

@media only screen and (min-width: 1439px) {
  section.reviews .reviews-wrap .review {
    padding: 22px
  }

  section.reviews .reviews-wrap .review .review-text {
    max-width: 350px
  }
}

@media only screen and (min-width: 767px) {
  section.benefits .benefits-slider {
    align-items: stretch;
    flex-wrap: wrap;
    flex-direction: unset
  }

  section.benefits:not(.three-inline) .benefits-slider {
    gap: 32px 20px
  }

  section.benefits:not(.three-inline) .benefits-slider .p-slide {
    width: calc(50% - 10px);
    margin: 0;
  }

  .benefits.three-inline .benefits-slider .p-slide {
    flex: 0 0 33.333%;
    margin: 0;
  }

  .benefits:not(:has(.benefits-slider-ident)) .benefits-slider {
    flex-direction: unset;
  }
}

@media only screen and (min-width: 1023px) {
  .benefits .benefits-slider .content p {
    font-size: 18px;
    padding: 0 50px
  }

  .benefits .benefits-slider .content img {
    width: 100px;
    height: 100px;
  }
}

@media only screen and (min-width: 1439px) {
  section.benefits {
    padding: 60px 0
  }
}

@media only screen and (min-width: 767px) {
  .advantages.cards-img .cards-row {
    align-items: stretch;
    flex-wrap: wrap;
    flex-direction: unset;
    gap: 32px 20px;
  }

  .advantages.cards-img .cards-row .card-img {
    width: calc(50% - 10px)
  }
}

@media only screen and (min-width: 1439px) {
  section.advantages .cards-row .card-img .wrap-img img {
    width: 150px;
    height: 150px
  }

  section.advantages .cards-row .card-img .text h4 {
    font-size: 24px
  }

  section.advantages .cards-row .card-img .text p {
    font-size: 18px
  }
}