*, .section2-block {
    -webkit-box-sizing: border-box
}

.checkboxblock_a {
    text-decoration: none;
    color: #007bff;
    font-weight: 500;
}

.checkboxblock_a:hover {
    text-decoration: underline;
}

.about, .main, body.lock {
    overflow: hidden
}

.section-faq {
    padding-top: 97px;
    padding-bottom: 100px;
    background-color: #f5f5f5;
    min-width: 100%
}

.accordion {
    margin-top: 20px;
    width: 100%;
    display: flex;
    flex-direction: column
}

.accordion .accordion-item {
    border-bottom: 1px solid var(--lightgray)
}

.accordion .accordion-item button[aria-expanded=true] {
    border-bottom: 1px solid var(--blue);
    color: var(--blue)
}

.accordion button {
    position: relative;
    display: block;
    text-align: left;
    width: 100%;
    padding: 1em 0;
    color: var(--text);
    font-size: 1.1rem;
    font-weight: 400;
    border: none;
    outline: 0;
    background: 0 0
}

.accordion button:focus, .accordion button:hover {
    cursor: pointer;
    color: var(--blue)
}

.accordion button .icon {
    display: inline-block;
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    right: 0;
    width: 22px;
    height: 22px;
    border: 1px solid;
    border-radius: 22px
}

.accordion button .icon::before {
    display: block;
    position: absolute;
    content: "";
    top: 9px;
    left: 5px;
    width: 10px;
    height: 2px;
    background: currentColor
}
.accordion-item:not(:last-child) {
    margin-bottom: 60px
}

.accordion button .icon::after {
    display: block;
    position: absolute;
    content: "";
    top: 5px;
    left: 9px;
    width: 2px;
    height: 10px;
    background: currentColor
}

.accordion .accordion-item button[aria-expanded=true] .icon::after {
    width: 0
}

.accordion .accordion-item button[aria-expanded=true] + .content {
    opacity: 1;
    max-height: 100%;
    transition: .2s linear
}

.content {
    opacity: 0;
    max-height: 0;
    transition: opacity .2s linear, max-height .2s linear
}

.content p {
    padding-top: 40px;
    padding-bottom: 60px;
    max-width: 1000px;
    line-height: 1.5;;
}

.about__opening, .header-left-content, .reviews__block, .reviews__container, .section2-block, .section2-block-info, .section2-headline-block, .section3-headline-block {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal
}

.form__num.text, .header-social > button {
    margin-right: 10px
}

.button, .header-menu li > a, .title {
    font-style: normal
}

.header-headline, .header-info, .section6-title.title, .section8-title.title {
    text-align: left
}

* {
    box-sizing: border-box;
    scroll-behavior: smooth
}

a, abbr, acronym, address, applet, article, aside, audio, b, big, blockquote, body, canvas, caption, center, cite, code, dd, del, details, dfn, div, dl, dt, em, embed, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav, object, ol, output, p, pre, q, ruby, s, samp, section, small, span, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, tt, u, ul, var, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    display: block
}

body {
    line-height: 1;
    width: 100%;
    font-family: Jost, sans-serif
}

ol, ul {
    list-style: none
}

blockquote, q {
    quotes: none
}

blockquote:after, blockquote:before, q:after, q:before {
    content: '';
    content: none
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

@font-face {
    font-family: Jost;
    font-display: swap;
    src: url("../fonts/Jost-Bold.woff2") format("woff2"), url("../fonts/Jost-Bold");
    font-weight: 700;
    font-style: normal
}

@font-face {
    font-family: Jost;
    font-display: swap;
    src: url("../fonts/Jost-Regular.woff2") format("woff2"), url("../fonts/Jost-Regular");
    font-weight: 400;
    font-style: normal
}

@font-face {
    font-family: Jost;
    font-display: swap;
    src: url("../fonts/Jost-SemiBold.woff2") format("woff2"), url("../fonts/Jost-SemiBold");
    font-weight: 600;
    font-style: normal
}

a {
    text-decoration: none;
    color: #000
}

.header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 100%;
    margin-top: 21px
}

.header-top-content, .header__list {
    display: -webkit-box;
    display: -ms-flexbox;
    width: 100%
}

.header__list {
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end
}

.header-top-content {
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    height: 90px
}

.header-logo, .header-menu {
    display: -webkit-box;
    display: -ms-flexbox
}

.header-logo {
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.header-menu {
    margin-right: 130px;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 55px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.header-left-content, .header-social {
    display: -webkit-box;
    display: -ms-flexbox
}

#bold-link {
    font-weight: 400;
    -webkit-transition: .2s;
    -o-transition: .2s;
    transition: .2s
}

#bold-link:hover {
    color: #4e9fff;
    -webkit-transition: color .3s;
    -o-transition: color .3s;
    transition: color .3s
}

.header-social {
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 20px
}

.header-menu li > a {
    font-family: Jost;
    font-weight: 400;
    font-size: 16px;
    line-height: 106.4%;
    letter-spacing: .05em;
    color: #000
}

.social-icon-header-tg, .social-icon-header-vk, .social-icon-header-youtube {
    width: 40px;
    height: 40px;
    cursor: pointer;
    -webkit-transition: fill .3s;
    -o-transition: fill .3s;
    transition: fill .3s
}

.social-icon-header-tg:hover path {
    fill: #8CD6FF
}

.social-icon-header-vk:hover path {
    fill: #4E9FFF
}

.social-icon-header-youtube:hover path {
    fill: #FE7170
}

.button-start:hover path:first-child, .button-start:last-child path, .section4-right-info-enroll svg > path:first-child, .section4-right-info-enroll svg > path:last-child, .section6-userdata-submit button svg > path:first-child, .section6-userdata-submit button:hover svg > path:last-child, .section7-button svg > path:first-child, .section7-button svg > path:last-child, .social-icon-header-tg:hover path, .social-icon-header-vk:hover path, .social-icon-header-youtube:hover path {
    -webkit-transition: fill .3s;
    -o-transition: fill .3s;
    transition: fill .3s
}

.form__title span, .free__title span, .header-headline span, .section5-block-title span {
    color: #4e9fff
}

.header-left-content {
    display: flex;
    -ms-flex-flow: column;
    flex-flow: column
}

.header-headline {
    font-family: Jost;
    font-size: 60px;
    font-weight: 700;
    line-height: 70px;
    letter-spacing: .03em;
    max-width: 600px;
    z-index: 1000000000000000
}

.header-headline-mob {
    display: none;
}

.header-info {
    margin-top: 38.6px;
    margin-bottom: 41.28px;
    font-family: Jost;
    font-size: 24px;
    font-weight: 400;
    line-height: 32px;
    letter-spacing: .05em;
    max-width: 410px
}

.button-and-arrow, .footer-icons, .free__open, .header-right-content, .section3-itog-info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.header-button-section, .section6-userdata-submit {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content
}

.button {
    color: #fff;
    font-family: Jost;
    font-size: 16px;
    font-weight: 500;
    line-height: 106.4%;
    letter-spacing: .48px;
    background-color: #4e9fff;
    height: 40px;
    padding-left: 18px;
    padding-right: 18px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    outline: 0;
    border-radius: 30px 30px 0;
    border: none;
    cursor: pointer
}

.btn__lesson {
    font-size: 24px; min-width: 300px; height: 50px; letter-spacing: 0.9px
}

.button:hover {
    background-color: #0075ff;
    -webkit-transition: background-color .3s;
    -o-transition: background-color .3s;
    transition: background-color .3s
}

.main {
    position: relative;
    padding-bottom: 160px
}

.main__image, .section2-linesc {
    position: absolute;
    top: 0;
    right: 0
}

.container.header__container {
    max-width: 1430px
}

.container.main__container {
    max-width: 1430px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%;
    padding-top: 120px
}

.button.form__btn, .main__btn {
    -ms-flex-item-align: start;
    align-self: flex-start
}

.about {
    background-color: #f4f4f4;
    padding-top: 70px;
    padding-bottom: 90px
}

.about__imgblock {
    position: absolute;
    left: -10%;
    top: -117px
}

.about__flex, .gallery__swiper, .section2-block {
    position: relative
}

.about__opening {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 36px
}

.about__container, .footer-linksblock, .programm__container, .programm__flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
}

.about__container {
    max-width: 1400px;
    margin: 0 auto;
    padding: 0 15px;
}

.about__sign {
    margin-left: 180px
}

.about__opening._active svg > path {
    stroke-width: 1;
    stroke-dasharray: 1000;
    stroke-dashoffset: 1000;
    -webkit-animation: 3s linear forwards draw;
    animation: 3s linear forwards draw
}

.courses._active svg > path, .section-get._active svg > path {
    stroke-width: 1;
    stroke-dasharray: 3000;
    stroke-dashoffset: 3000;
    -webkit-animation: 2s linear forwards draw;
    animation: 2s linear forwards draw
}

.last._active svg > path, .reviews._active svg > path {
    stroke-width: 1;
    stroke-dasharray: 3500;
    stroke-dashoffset: 3500;
    -webkit-animation: 2s linear forwards draw;
    animation: 2s linear forwards draw
}

.common._active svg > path {
    stroke-width: 1;
    stroke-dasharray: 1000;
    stroke-dashoffset: 1000;
    -webkit-animation: 2s linear forwards draw;
    animation: 2s linear forwards draw
}

@-webkit-keyframes draw {
    100% {
        stroke-dashoffset: 0
    }
}

.form__formblock, .free__block, .free__block.free__block_first, .reviews__block_first, .reviews__block_second, .section2-headline-block, .section3-headline-block, .section6-headline, .section7-headline, .section8-headline {
    -webkit-transform: translate(0, -120%);
    -ms-transform: translate(0, -120%);
    transform: translate(0, -120%);
    opacity: 0;
    -webkit-transition: .9s;
    -o-transition: .9s;
    transition: .9s
}

.free__block._active, .free__block.free__block_first._active {
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0)
}

.free__block.free__block_first._active {
    transform: translate(0, 0);
    opacity: 1
}

.free__block._active {
    transform: translate(0, 0);
    opacity: 1
}

.form__formblock._active {
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0);
    opacity: 1
}

.form__block, .section2-block.first, .section2-block.third, .section4-left img, .section5-left, .section6-left img {
    -webkit-transform: translate(-120%, 0);
    -ms-transform: translate(-120%, 0);
    transform: translate(-120%, 0);
    opacity: 0;
    -webkit-transition: .9s;
    -o-transition: .9s;
    transition: .9s
}

.form__block._active, .reviews__block_first._active {
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0)
}

.form__block._active {
    transform: translate(0, 0);
    opacity: 1
}

.reviews__block_first._active {
    transform: translate(0, 0);
    opacity: 1
}

.reviews__block_second._active, .section2-block.first._active, .section2-block.fourth._active, .section2-block.second._active, .section2-block.third._active, .section4-right._active, .section5-left._active, .section6-left._active img {
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0);
    opacity: 1
}

.about__flex {
    display: grid;
    grid-template-columns: 0.8fr 1fr;
    gap: 20px; /* расстояние между колонками */
    align-items: center; /* выравнивание по вертикали */
}

.form__card, .free__btn, .programm__openning {
    align-self: flex-start
}

.about__block {
    display: block;
    gap: 10px;
}

.about__text {
    padding-top: 20px
}

.gallery__title, .gallery__underline, .section2-block-description {
    text-align: center
}

.section-get {
    padding-top: 60px;
    margin-bottom: 90px
}

.programm__block:not(:last-child), .reviews__flex {
    margin-bottom: 39px
}

.section2-block-image {
    position: absolute;
    top: -50%;
    left: 50%;
    margin-right: -50%;
    -webkit-transform: translate(-50%, 50%);
    -ms-transform: translate(-50%, 50%);
    transform: translate(-50%, 50%)
}

.first-img {
    -webkit-transform: translate(-50%, 40%);
    -ms-transform: translate(-50%, 40%);
    transform: translate(-50%, 40%)
}

.second-img {
    -webkit-transform: translate(-50%, 54%);
    -ms-transform: translate(-50%, 54%);
    transform: translate(-50%, 54%)
}

.courses__line, .section2-line {
    width: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-right: -50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.reviews, .section-get {
    position: relative;
    overflow: hidden
}

.section2-block-info, .section2-headline-block, .section3-headline-block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.section2, .section2-block {
    display: -webkit-box;
    display: -ms-flexbox
}

.section2 {
    display: flex;
    width: 100%;
    padding-top: 160px;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.section2-block-image-image {
    width: 100px;
    height: 100px
}

.section2-block-headline {
    padding-bottom: 30px
}

.courses__subtitle, .free__subtitle, .programm__subtitle, .section2-block-headline {
    font-family: Jost;
    font-style: normal;
    font-weight: 700;
    font-size: 34px;
    line-height: 112.4%;
    letter-spacing: .05em;
    color: #000;
    text-align: center
}

.section2-block {
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-top: 35px;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 calc(33.333% - 30px);
    flex: 0 0 calc(33.333% - 30px);
    border-radius: 30px;
    background: #f4f4f4;
    padding: 120px 51px 43px 53px;
    box-sizing: border-box
}

.reviews__container, .reviews__flex {
    display: -webkit-box;
    display: -ms-flexbox
}

.reviews {
    padding-top: 70px;
    padding-bottom: 80px;
    background-color: #f4f4f4
}

.reviews__line {
    width: 100%;
    height: 98%;
    position: absolute;
    top: 46%;
    left: 50%;
    margin-right: -50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.reviews__blue {
    position: absolute;
    top: 70%;
    right: 50px
}

.reviews__container {
    position: relative;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column
}

.reviews__red {
    position: absolute;
    top: 0;
    left: 10px
}

.reviews__orange {
    position: absolute;
    bottom: -55px;
    left: -90px;
    z-index: 2
}

.reviews__flex {
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-top: 144px
}

.reviews__block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 calc(33.333% - 30px);
    flex: 0 0 calc(33.333% - 30px);
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
    padding: 113px 24px 56px;
    border-radius: 30px;
    background: #fff
}

.review__img {
    width: 164px;
    height: 164px;
    position: absolute;
    top: -50%;
    left: 50%;
    margin-right: -50%;
    -webkit-transform: translate(-50%, 70%);
    -ms-transform: translate(-50%, 70%);
    transform: translate(-50%, 70%)
}

.reviews__btn, .reviews__title, .reviews__underline {
    text-align: center;
    margin: 0 auto
}

.reviews__btn {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -webkit-box-flex: 0;
    -ms-flex-positive: 0;
    flex-grow: 0;
    justify-self: flex-start
}

.gallery {
    margin-top: 70px;
    margin-bottom: 144px;
    overflow: hidden
}

.gallery__underline {
    margin-bottom: 37px
}

.gallery__slide {
    width: 380px;
    height: 286px
}

.gallery__slide img {
    border-radius: 30px;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.gallery__swiper .swiper-button-next.gallery__next.swiper-button-disabled, .programm__hid, .gallery__next.programm__next, .gallery__prev.programm__prev, .swiper-button-next:after, .swiper-button-prev.gallery__prev.swiper-button-disabled, .swiper-button-prev:after {
    display: none
}

.gallery__next, .gallery__prev {
    position: absolute;
    top: 50%;
    right: 0;
    z-index: 100;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    border-radius: 50%;
    box-shadow: 3.057002544403076px 4.585503578186035px 9.935257911682129px 0 rgba(0, 0, 0, .1);
    width: 49px;
    height: 49px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    background-color: #fff;
    color: #000
}

.free, .free__block, .free__img {
    position: relative
}

.free__img {
    object-position: 0 0;
    width: 186px;
    height: 326px;
    -o-object-fit: cover;
    object-fit: cover
}

.gallery__prev {
    left: 0
}

.gray {
    opacity: .5;
    -webkit-box-shadow: 0 4px 4px 0 rgba(0, 0, 0, .25) inset;
    box-shadow: 0 4px 4px 0 rgba(0, 0, 0, .25) inset
}

.free {
    padding-top: 70px;
    padding-bottom: 90px;
    margin-bottom: 90px;
    /*background-color: #f4f4f4*/
}

.free__mat {
    margin-left: 57px
}

.accordion-title.section2-block-headline {
    font-weight: 500;
    display: inline-block;
    max-width: 90%;
    padding: 0;
    text-align: left;
}

.footer-flex, .form__flex, .free__flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.free__block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 calc(50% - 15px);
    flex: 0 0 calc(50% - 15px);
    padding: 40px 44px 0 56px;
    background-color: #f4f4f4;
    border-radius: 30px
}

.form__block, .free__info {
    display: -webkit-box;
    display: -ms-flexbox;
    -ms-flex-direction: column;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal
}

.free__info {
    padding-right: 20px;
    display: flex;
    flex-direction: column
}

.courses__subtitle, .free__subtitle {
    margin-bottom: 30px
}

.free__img {
    z-index: 1
}

.free__line1 {
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: 0
}

.free__btn, .free__subtitle {
    z-index: 1;
    position: relative
}

.free__btn {
    -ms-flex-item-align: start
}

.free__subtitle {
    text-align: left
}

.form {
    overflow: hidden;
    padding-bottom: 90px
}

.form__block {
    display: flex;
    flex-direction: column;
    position: relative
}

.form__card, .form__cards {
    display: -webkit-box;
    display: -ms-flexbox
}

.form__cards, .form__rect, .form__signb, .form__signs {
    position: absolute
}

.form__imgblock {
    width: 685px;
    height: 435px
}

.form__img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: 30px
}

.form__rect {
    top: 0;
    left: 0;
    z-index: -1;
    width: 482px;
    height: 434px
}

.form__cards {
    top: 50%;
    left: 35%;
    margin-right: -50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
}

.form__signs {
    top: 60%;
    left: -50px
}

.form__signb {
    top: 25%;
    right: -60px
}

.form__card {
    -ms-flex-item-align: start;
    padding: 12px 13px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: #fff;
    border-radius: 30px 30px 0
}

.form form, .form__checkboxblock, .form__formblock, .form__num.text {
    display: -webkit-box;
    display: -ms-flexbox
}

.card__first {
    -webkit-transform: rotate(-2.359deg);
    -ms-transform: rotate(-2.359deg);
    transform: rotate(-2.359deg);
    margin-bottom: 34px
}

.card__first > .form__num {
    background-color: #fe7170
}

.card__second > .form__num {
    background-color: #73cdff
}

.card__second > .form__text {
    max-width: 130px
}

.card__third > .form__num {
    background-color: #fec144
}

.card__third > .form__text {
    max-width: 145px
}

.form__num.text {
    border-radius: 50%;
    width: 35px;
    height: 35px;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: #fff
}

.form__text {
    max-width: 160px
}

.card__second {
    -webkit-transform: rotate(3.069deg);
    -ms-transform: rotate(3.069deg);
    transform: rotate(3.069deg);
    margin-bottom: 33px
}

.card__third {
    -webkit-transform: rotate(-3.997deg);
    -ms-transform: rotate(-3.997deg);
    transform: rotate(-3.997deg)
}

.form__formblock {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 30%;
    flex: 0 0 30%;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start
}

.form form {
    margin-top: 35px;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
}

.form__input {
    border: none;
    border-radius: 0;
    border-bottom: 1px solid #000;
    margin-bottom: 35px
}

.courses__tab, .price__flex, .programm__block, .programm__img, .programm__imgblock img {
    border-radius: 30px
}

.form__input:checked {
    color: #000
}

.form__input::-webkit-input-placeholder {
    color: #888;
    font-family: Jost;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 124.9%;
    letter-spacing: .9px
}

.form__input::-moz-placeholder {
    color: #888;
    font-family: Jost;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 124.9%;
    letter-spacing: .9px
}

.form__input:-ms-input-placeholder {
    color: #888;
    font-family: Jost;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 124.9%;
    letter-spacing: .9px
}

.form__input::-ms-input-placeholder {
    color: #888;
    font-family: Jost;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 124.9%;
    letter-spacing: .9px
}

.form__input::placeholder, .form__input[placeholder] {
    color: #888;
    font-family: Jost;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 124.9%;
    letter-spacing: .9px
}

.form__checkboxblock {
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 35px
}

.price__flex, .price__points {
    display: -webkit-box;
    display: -ms-flexbox
}

.form__checkbox {
    width: 16px;
    height: 16px
}

.price {
    padding-top: 90px;
    padding-bottom: 100px;
    margin-bottom: 80px;
    background-color: #f4f4f4;
    overflow: hidden
}

.price__flex {
    position: relative;
    padding: 51px 0 70px 50px;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    background: #fff
}

.price__imgblock {
    width: 630px;
    height: 675px;
    position: absolute;
    top: 0;
    right: 0
}

.price__img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    top: -30px;
    right: 15%;
    position: absolute
}

.price__prom {
    width: 282px;
    height: 285px;
    top: -90px;
    right: 100px;
    position: absolute
}

.price__group {
    width: 43%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 43%;
    flex: 0 0 43%
}

span {
    color: #4e9fff
}

.price__list {
    margin-top: 30px;
    margin-bottom: 28px;
    padding-left: 22px
}

.price__list li:not(:last-child) {
    margin-bottom: 10px
}

.common, .last, .price__list li {
    position: relative
}

.price__list li::before {
    content: "";
    width: 5px;
    height: 5px;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    left: -17px
}

.button.price__red, .price__list li:first-child:before {
    background-color: #fe7170
}

.button.price__blue, .price__list li:nth-child(2):before {
    background-color: #73cdff
}

.button.price__yellow, .price__list li:nth-child(3):before {
    background-color: #fec144
}

.price__faq.text {
    color: #939393
}

.price__points {
    gap: 14px;
    max-width: 100%;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 22px
}

.programm__block, .programm__openning {
    display: -webkit-box;
    display: -ms-flexbox
}

.button.price__dark {
    background-color: #4e9fff
}

.price__points > p {
    cursor: initial
}

.programm {
    padding-top: 66px;
    padding-bottom: 90px;
    background-color: #f4f4f4
}

.programm__openning {
    -ms-flex-item-align: start;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-bottom: 53px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.programm__underline {
    -ms-flex-item-align: end;
    align-self: flex-end;
    margin-right: 30px
}

.programm__block:first-child > .programm__textblock, .programm__block:nth-child(3) > .programm__textblock {
    padding-left: 140px
}

.programm__block:nth-child(2) > .programm__textblock {
    padding-right: 145px
}

.common__first, .common__second {
    position: absolute
}

.common__first {
    width: 452px;
    height: 257px;
    top: 23%;
    left: 0
}

.common__second {
    width: 298px;
    height: 533px;
    bottom: 10%;
    right: 0
}

.about__img, .programm__img {
    width: 100%;
    height: 100%
}

@media (max-width: 1600px) {
    .main__image {
        position: absolute;
        top: 0;
        right: -110px
    }

    .test_about__item {
        display: flex;
        flex: 0 0 auto;   /* чтобы не растягивалось */
        background: white;
        border-radius: 20px;
        padding: 15px;
        gap: 12px;
        letter-spacing: 5%;
        line-height: 125%;
        font-size: 18px;
    }


    .test_about__icon {
        min-width: 42px;
        max-width: 42px;
        min-height: 42px;
        max-height: 42px;
        margin: auto 0;
    }

    .test__about_text {
        margin: auto 0;
    }

    .first_about__block {
        display: flex; padding: 10px 0; gap: 20px;
        > .first_item {
            margin-bottom: 10px;
        }
        > .second_item {
            width: 40%;
        }
    }


    .long_item {
        margin-bottom: 20px; width: 70%
    }

    .second_about__block {
        display: flex; gap: 20px;
        > .second_about__block-block {
            display: block; width: 45%;
            > .first_item {
                width: 100%; margin-bottom: 20px;
            }
            > .second_item {
                width: 90%;
            }
        }
        > .first {
            width: 40%; height: 100%;
        }
    }

    .common__second {
        bottom: 25%;
        right: 0
    }
}

.programm__imgblock {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 calc(46% - 15px);
    flex: 0 0 calc(46% - 15px)
}

.programm__block {
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 calc(50% - 15px);
    flex: 0 0 calc(50% - 15px);
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    background-color: #fff
}

.footer-social-block-item, .programm__textblock {
    display: -webkit-box;
    display: -ms-flexbox;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal
}

.courses__tab, .footer {
    background-color: #FFFFFF;
}

.programm__block:first-child {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 calc(45% - 5px);
    flex: 0 0 calc(45% - 5px)
}

.programm__block:first-child > .programm__textblock {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 calc(55% - 5px);
    flex: 0 0 calc(55% - 5px)
}

.programm__textblock {
    display: flex;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 calc(50% - 15px);
    flex: 0 0 calc(50% - 15px);
    -ms-flex-direction: column;
    flex-direction: column
}

.programm__subtitle {
    text-align: left;
    margin-bottom: 30px
}

.programm__img {
    display: block
}

.footer-social-block-item {
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.footer-social-block-item:not(:last-child) {
    margin-right: 12px
}

.footer-social-icon {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin-bottom: 11px
}

.courses {
    overflow: hidden;
    position: relative;
    margin-top: 64px;
    margin-bottom: 90px
}

.courses__next, .courses__prev {
    position: absolute;
    z-index: 1000000;
    top: 50%;
    cursor: pointer
}

.courses__opening {
    margin: 0 auto 57px;
    text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    width: 100%;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.courses__sign {
    -ms-flex-item-align: center;
    -ms-grid-row-align: center;
    align-self: center;
    margin-right: 173px
}

.courses__thumbswiper {
    margin-bottom: 71px
}

.swiper-slide.courses__slide {
    padding: 65px 147px 37px;
    background-color: #f4f4f4;
    border-radius: 30px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.courses__textblock {
    display: flex;
    flex-direction: column;
    max-width: 380px
}

.courses__subtitle {
    text-align: left
}

.courses__link {
    display: inline-block;
    color: #4e9fff
}

.contacts__block, .courses__tab {
    display: -webkit-box;
    display: -ms-flexbox
}

.courses__tab {
    cursor: pointer;
    padding: 0 16px 0 18px;
    width: -webkit-fit-content !important;
    width: -moz-fit-content !important;
    width: fit-content !important;
    max-width: 100%;
    height: 40px;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    justify-self: flex-start
}

.courses__thumbswiper > .swiper-wrapper {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 24px
}

.courses__tab.swiper-slide-thumb-active {
    background-color: #4e9fff;
    -webkit-transition: .3s;
    -o-transition: .3s;
    transition: .3s
}

.courses__tab.swiper-slide-thumb-active > p {
    color: #fff;
    -webkit-transition: .3s;
    -o-transition: .3s;
    transition: .3s
}

.courses__btn {
    margin-top: 30px;
    -ms-flex-item-align: start;
    align-self: flex-start
}

.courses__imgblock {
    margin-left: 50px;
    width: 456px;
    height: 340px
}

.courses__imgblock img {
    width: 100%;
    height: 100%
}

.courses__next {
    right: 60px;
    -webkit-transform: translate(50%, -50%);
    -ms-transform: translate(50%, -50%);
    transform: translate(50%, -50%)
}

.courses__prev {
    left: 60px;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.contacts, .footer {
    padding-bottom: 90px
}

.form-line-active input:focus, .form-line-active textarea:focus {
    border: 1px solid green !important;
    box-shadow: 0 0 3px green !important;
    -moz-box-shadow: 0 0 3px green !important;
    -webkit-box-shadow: 0 0 3px green !important
}

input:focus, select:focus, textarea:focus {
    outline-offset: 0px !important;
    outline: 0 !important
}

.section6-userdata-submit button {
    padding: 0;
    border: none;
    outline: 0;
    background-color: transparent
}

.section6-userdata-submit button svg {
    width: 221px;
    height: 65px;
    cursor: pointer
}

input[type=checkbox] {
    border-radius: 0;
    position: relative;
    border: 1.5px solid #000;
    background: 0 0;
    cursor: pointer;
    line-height: 0;
    margin: 0 .6em 0 0;
    outline: 0;
    padding: 0 !important;
    vertical-align: text-top;
    height: 16px;
    width: 25px;
    -webkit-appearance: none;
    opacity: 1
}

input[type=checkbox]:hover {
    opacity: 1
}

input[type=checkbox]:checked:before {
    background-color: transparent;
    opacity: 1
}

input[type=checkbox]:checked {
    border: 1.2px solid #0075ff
}

input[type=checkbox]:before {
    content: '';
    position: absolute;
    right: 50%;
    top: 50%;
    width: 4px;
    height: 10px;
    border: 1.2px solid #0075ff;
    border-width: 0 2px 2px 0;
    margin: -1px -1px 0;
    -webkit-transform: rotate(45deg) translate(-50%, -50%);
    -ms-transform: rotate(45deg) translate(-50%, -50%);
    transform: rotate(45deg) translate(-50%, -50%);
    z-index: 2;
    opacity: 0
}

.footer-ourlinks {
    text-align: right;
    margin-bottom: 24px
}

.contacts__address, .contacts__phone {
    margin-bottom: 25px
}

.footer__gr {
    position: absolute;
    top: -45px;
    left: 50%;
    margin-right: -50%;
    -webkit-transform: translate(-50%, -5px);
    -ms-transform: translate(-50%, -5px);
    transform: translate(-50%, -5px)
}

.contacts, .contacts__info, .footer {
    position: relative
}

.footer {
    padding-top: 90px;
    z-index: -1
}

.social-icon-tg, .social-icon-vk, .social-icon-youtube {
    width: 50px;
    height: 50px;
    border: none;
    cursor: pointer;
    -o-object-fit: cover;
    object-fit: cover;
    -webkit-transition: fill .3s;
    -o-transition: fill .3s;
    transition: fill .3s
}

.social-icon-tg:hover circle {
    fill: #57BDF5;
    -webkit-transition: fill .3s;
    -o-transition: fill .3s;
    transition: fill .3s
}

.social-icon-tg:hover path, .social-icon-vk:hover path, .social-icon-youtube:hover path {
    fill: white;
    -webkit-transition: fill .3s;
    -o-transition: fill .3s;
    transition: fill .3s
}

.social-icon-vk:hover circle {
    fill: #2781EC;
    -webkit-transition: fill .3s;
    -o-transition: fill .3s;
    transition: fill .3s
}

.social-icon-youtube:hover circle {
    fill: #EA4948;
    -webkit-transition: fill .3s;
    -o-transition: fill .3s;
    transition: fill .3s
}

.contacts {
    overflow: hidden
}

.contacts__line {
    width: 100%;
    top: 37%;
    left: 50%;
    margin-right: -50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.contacts__block {
    display: flex;
    border-radius: 30px;
    background: #f4f4f4
}

.contacts__info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    padding: 59px 133px 60px 100px;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 42%;
    flex: 0 0 42%
}

.contacts__map {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 58%;
    flex: 0 0 58%
}

.contacts__map iframe {
    border-radius: 30px;
    height: 100%
}

.contacts__blue, .contacts__line, .contacts__sign, .free__orange {
    position: absolute
}

.free__orange {
    bottom: -65px;
    right: 50px
}

.contacts__blue {
    bottom: 54px;
    left: -5px
}

.contacts__sign {
    right: 70px;
    top: 85px
}

.contacts__address {
    margin-top: 33.5px
}

.contacts-links.text {
    margin-bottom: 22px;
    color: #888
}

@media (max-width: 1367px) {
    .about__imgblock {
        width: 600px;
        height: 700px;
        left: -5%
    }

    .accordion-item:not(:last-child) {
        margin-bottom: 40px
    }

    .button {
        height: 33px;
        padding-left: 14px;
        padding-right: 14px
    }

    .gallery {
        margin-top: 60px;
        margin-bottom: 124px
    }

    .about__flex {
        display: grid;
        grid-template-columns: 0.8fr 1fr;
        gap: 20px;
        align-items: center;
    }

    .common__second {
        bottom: 25%;
        right: 0
    }

    .main {
        position: relative;
        overflow: hidden;
        padding-bottom: 128px
    }

    .main__image {
        position: absolute;
        top: 0;
        right: 0
    }

    .container.main__container {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        width: 100%;
        padding-top: 120px
    }


    .main__btn {
        -ms-flex-item-align: start;
        align-self: flex-start
    }

    .section2-block {
        padding: 120px 40px 40px
    }

    .gallery__slide {
        width: 330px;
        height: 236px
    }

    .header-headline {
        font-size: 47px;
        line-height: 54px;
        max-width: 300px;
    }

    .header-students {
        width: 830px;
        height: 630px
    }

    .header-info {
        font-size: 22px;
        line-height: 30px;
        max-width: 390px;
        margin-top: 36px;
        margin-bottom: 35px
    }

    .header-logo img {
        width: 148px;
        height: 55px
    }

    .section-get {
        margin-bottom: 75px;
        padding-top: 64px
    }

    .courses__subtitle, .free__subtitle, .programm__subtitle, .section2-block-headline {
        font-size: 34px;
        line-height: 37px
    }

    .section2-headline-underline svg {
        width: 323px
    }

    .courses__imgblock {
        width: 400px;
        height: 305px
    }

    .courses__thumbswiper {
        margin-bottom: 60px
    }

    .programm__block:not(:last-child), .reviews__flex {
        margin-bottom: 39px
    }

    .courses__sign {
        width: 125px;
        margin-left: 20px
    }

    .reviews {
        padding-top: 65px;
        padding-bottom: 75px
    }

    .reviews__blue {
        right: -25px
    }

    .reviews__flex {
        margin-top: 144px
    }

    .reviews__block {
        padding: 109px 21px 51px
    }

    .free {
        padding-top: 65px;
        padding-bottom: 80px;
        margin-bottom: 90px
    }

    .free__mat {
        margin-left: 47px
    }

    .free__block {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(50% - 15px);
        flex: 0 0 calc(50% - 15px);
        padding: 37px 44px 0 56px
    }

    .form {
        padding-bottom: 80px
    }

    .form__imgblock {
        width: 600px;
        height: 385px
    }

    .form__rect {
        width: 420px;
        height: 380px
    }

    .form__cards {
        top: 38%;
        left: 30%
    }

    .card__first, .card__second, .form__checkboxblock, .form__input {
        margin-bottom: 30px
    }

    .card__second > .form__text {
        max-width: 130px
    }

    .card__third > .form__text {
        max-width: 145px
    }

    .form__num.text {
        margin-right: 10px;
        width: 33px;
        height: 33px
    }

    .form__text {
        max-width: 150px
    }

    .form__formblock {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 35%;
        flex: 0 0 35%
    }

    .form form {
        margin-top: 30px
    }

    .price {
        padding-top: 80px;
        padding-bottom: 90px;
        margin-bottom: 70px
    }

    .price__imgblock {
        width: 585px;
        height: 605px
    }

    .price__prom {
        width: 257px;
        height: 245px
    }

    .programm__block:first-child > .programm__textblock, .programm__block:nth-child(3) > .programm__textblock {
        padding-left: 120px
    }

    .programm__block:nth-child(2) > .programm__textblock {
        padding-right: 125px
    }

    .programm_img {
        width: 509px;
        height: 307px
    }

    .section6-left img {
        width: 575px;
        height: 575px;
        -o-object-fit: cover;
        object-fit: cover
    }

    .section6-userdata input, .section6-userdata-options-where {
        font-size: 20px;
        line-height: 25px
    }

    .section6-userdata-submit button svg {
        width: 192px;
        height: 60px
    }

    .section6-line img {
        width: 210px;
        height: 10px
    }

    .footer-logo img {
        height: 52px
    }

    .contacts__line {
        top: 50%
    }

    .contacts__info {
        padding: 59px 115px 60px 100px
    }

    .contacts__sign {
        right: 45px
    }
}

@media (max-width: 1200px) {
    .first-img img {
        width: 213px;
        height: 210px
    }

    .accordion-item:not(:last-child) {
        margin-bottom: 30px
    }

    .about__imgblock {
        top: -75px;
        width: 530px;
        height: 630px;
        left: -4%
    }

    .common__first {
        top: 24%
    }

    .about__flex {
        padding: 47px 55px 40px 200px
    }

    .about__block {
        max-width: 450px
    }

    .second-img img {
        width: 270px;
        height: 185px
    }

    .third-img img {
        width: 210px;
        height: 200px
    }

    .section2-block {
        padding: 120px 33px 33px
    }

    .header-headline {
        font-size: 44px;
        line-height: 49px;
        max-width: 300px;
    }

    .header-info {
        font-size: 20px;
        line-height: 26px;
        max-width: 350px;
        margin-top: 31px;
        margin-bottom: 30px
    }

    .main {
        position: relative;
        overflow: hidden;
        padding-bottom: 68px
    }

    .container.main__container {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        width: 100%;
        padding-top: 80px
    }

    .header-students {
        width: 600px;
        height: 500px
    }

    .header-logo img {
        width: 132px;
        height: 49px
    }

    .header-menu {
        margin-right: 60px;
        gap: 35px
    }

    .section-get {
        margin-bottom: 65px;
        padding-top: 59px
    }

    .courses__subtitle, .free__subtitle, .programm__subtitle, .section2-block-headline {
        font-size: 30px;
        line-height: 32px
    }

    .section2-headline-underline svg {
        width: 297px
    }

    .courses__sign {
        width: 120px;
        margin-left: 20px
    }

    .courses__opening, .reviews__flex {
        margin-bottom: 35px
    }

    .courses {
        margin-top: 60px;
        margin-bottom: 70px
    }

    .courses__thumbswiper {
        margin-bottom: 50px
    }

    .courses__imgblock {
        width: 350px;
        height: 265px;
        margin-left: 35px
    }

    .swiper-slide.courses__slide {
        padding: 50px 110px 30px
    }

    .courses__textblock {
        max-width: 340px
    }

    .reviews {
        padding-top: 60px;
        padding-bottom: 70px
    }

    .reviews__orange {
        left: 0
    }

    .reviews__block {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(33.333% - 25px);
        flex: 0 0 calc(33.333% - 25px);
        padding: 105px 18px 47px
    }

    .reviews__line {
        top: 30%
    }

    .free {
        padding-top: 60px;
        padding-bottom: 75px;
        margin-bottom: 85px
    }

    .free__mat {
        margin-left: 43px
    }

    .free__block {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(50% - 10px);
        flex: 0 0 calc(50% - 10px);
        padding: 32px 30px 0 40px
    }

    .free__imgmain {
        width: 180px;
        height: 324px
    }

    .form {
        padding-bottom: 90px
    }

    .form__imgblock {
        width: 520px;
        height: 335px
    }

    .form__rect {
        width: 380px;
        height: 338px
    }

    .form__cards {
        top: 38%;
        left: 30%
    }

    .accordion-item:not(:last-child), .card__first {
        margin-bottom: 30px
    }

    .card__second > .form__text {
        max-width: 120px
    }

    .card__third > .form__text {
        max-width: 145px
    }

    .form__num.text {
        width: 30px;
        height: 30px
    }

    .form__text {
        max-width: 140px
    }

    .card__second {
        margin-bottom: 25px
    }

    .form__formblock {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 38%;
        flex: 0 0 38%
    }

    .form form {
        margin-top: 20px
    }

    .contacts__address, .contacts__phone, .form__checkboxblock, .form__input {
        margin-bottom: 20px
    }

    .price {
        padding-top: 90px;
        padding-bottom: 100px;
        margin-bottom: 80px
    }

    .price__imgblock {
        width: 505px;
        height: 525px
    }

    .price__img {
        top: 10px
    }

    .price__prom {
        top: -45px;
        right: 80px;
        width: 227px;
        height: 205px
    }

    .price__flex {
        padding: 33px 0 43px 45px
    }

    .price__list {
        margin-top: 27px;
        margin-bottom: 25px
    }

    .programm__block:first-child > .programm__textblock, .programm__block:nth-child(3) > .programm__textblock {
        padding-left: 50px
    }

    .programm__block:nth-child(2) > .programm__textblock {
        padding-right: 55px
    }

    .programm__textblock {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(45% - 15px);
        flex: 0 0 calc(45% - 15px)
    }

    .programm_img {
        width: 459px;
        height: 257px
    }

    .programm__block:not(:last-child) {
        margin-bottom: 39px
    }

    .section6-left img {
        width: 475px;
        height: 475px;
        -o-object-fit: cover;
        object-fit: cover
    }

    .section6-userdata input, .section6-userdata-options-where {
        font-size: 18px;
        line-height: 22px
    }

    .section6-userdata-submit button svg {
        width: 180px;
        height: 55px
    }

    .section6-line img {
        width: 143px;
        height: 12px
    }

    .section7-right {
        right: -125px
    }

    .section-promotion {
        padding-top: 86px
    }

    .section7-span svg {
        width: 317px
    }

    .section7-button svg {
        width: 221px;
        height: 54px
    }

    .section8-line svg {
        width: 355px
    }

    .section-faq {
        padding-top: 69px;
        padding-bottom: 69px
    }

    .content p {
        padding-top: 35px;
        padding-bottom: 50px
    }

    .footer {
        padding-top: 80px;
        padding-bottom: 80px
    }

    .footer-logo img {
        height: 47px
    }

    .contacts__line {
        top: 60%
    }

    .contacts__info {
        padding: 59px 90px 60px 80px
    }

    .contacts__blue {
        bottom: 24px
    }

    .contacts__sign {
        right: 25px
    }

    .contacts__address {
        margin-top: 30px
    }

    .contacts-links.text {
        margin-bottom: 18px
    }
}

@media (max-width: 992px) {
    .about, .container.main__container {
        padding-top: 50px
    }

    .accordion-item:not(:last-child) {
        margin-bottom: 20px
    }

    .about__opening, .header-info {
        margin-bottom: 25px
    }

    .free, .free__container {
        position: relative
    }

    .free__flex, .free__open {
        display: -webkit-box;
        display: -ms-flexbox
    }

    .main {
        padding-bottom: 30px
    }

    .common__second {
        bottom: 25%;
        right: 0
    }

    .header-students {
        width: 450px;
        height: 390px
    }

    .about {
        padding-bottom: 50px
    }

    .about__imgblock {
        width: 450px;
        height: 550px;
        left: -3%;
        top: -10px
    }

    .about__sign {
        width: 180px;
        margin-left: 80px
    }

    .about__flex {
        padding: 37px 40px 35px 170px
    }

    .about__block {
        max-width: 350px
    }

    .first-img img {
        width: 190px;
        height: 195px
    }

    .second-img img {
        width: 250px;
        height: 165px
    }

    .third-img img {
        width: 190px;
        height: 180px
    }

    .section2-block {
        padding: 80px 25px 25px;
        -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(30% - 15px);
        flex: 0 0 calc(30% - 15px)
    }

    .courses__subtitle, .free__subtitle, .programm__subtitle, .section2-block-headline {
        font-size: 25px;
        max-width: 195px
    }

    .main__body {
        width: 44%
    }

    .header-headline {
        font-size: 39px;
        line-height: 42px
    }

    .header-info {
        font-size: 18px;
        line-height: 28px;
        max-width: 300px;
        margin-top: 26px
    }

    .header-logo img {
        width: 112px;
        height: 41px
    }

    .header-menu {
        margin-right: 15px;
        gap: 15px
    }

    .social-icon-header-tg, .social-icon-header-vk, .social-icon-header-youtube {
        width: 30px;
        height: 30px
    }

    .header-social, .section3 {
        gap: 10px
    }

    .section-get {
        margin-bottom: 55px;
        padding-top: 50px
    }

    .section2-headline-underline svg {
        width: 265px
    }

    .courses {
        margin-top: 55px;
        margin-bottom: 60px
    }

    .courses__thumbswiper {
        margin-bottom: 40px
    }

    .courses__imgblock {
        width: 270px;
        height: 185px;
        margin-left: 15px
    }

    .courses__subtitle, .form__checkboxblock, .form__input, .programm__subtitle {
        margin-bottom: 15px
    }

    .courses__textblock {
        max-width: 290px
    }

    .courses__prev {
        left: 40px
    }

    .courses__next {
        right: 40px
    }

    .swiper-slide.courses__slide {
        padding: 45px 90px 27px
    }

    .courses__thumbswiper > .swiper-wrapper {
        gap: 14px
    }

    .courses__sign {
        width: 110px;
        margin-left: 44px
    }

    .courses__btn {
        margin-top: 20px
    }

    .reviews {
        padding-top: 55px;
        padding-bottom: 55px
    }

    .reviews__orange {
        left: -90px
    }

    .reviews__flex {
        margin-bottom: 35px
    }

    .review__img {
        width: 136px;
        height: 136px;
        -webkit-transform: translate(-50%, 117%);
        -ms-transform: translate(-50%, 117%);
        transform: translate(-50%, 117%)
    }

    .reviews__block {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(33.333% - 15px);
        flex: 0 0 calc(33.333% - 15px);
        padding: 100px 15px 39px
    }

    .reviews__line {
        top: 30%
    }

    .free {
        padding-top: 55px;
        padding-bottom: 60px;
        margin-bottom: 70px;
        background-color: #f4f4f4
    }

    .accordion-item:not(:last-child), .card__first, .card__second {
        margin-bottom: 20px
    }

    .free__open {
        display: flex
    }

    .free__title span {
        color: #4e9fff
    }

    .free__mat {
        position: absolute;
        top: 0;
        right: 0;
        z-index: 2;
        margin-left: 0
    }

    .free__flex {
        margin-top: 28px;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between
    }

    .free__block:not(:last-child) {
        margin-bottom: 24px
    }

    .free__block {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        background-color: white;
    }

    .form {
        padding-bottom: 90px
    }

    .form__imgblock {
        width: 410px;
        height: 280px
    }

    .form__rect {
        width: 315px;
        height: 280px
    }

    .form__cards {
        top: 40%;
        left: 30%
    }

    .card__second > .form__text {
        max-width: 120px
    }

    .card__third > .form__text {
        max-width: 145px
    }

    .form__num.text {
        width: 28px;
        height: 28px
    }

    .form__text {
        max-width: 140px
    }

    .form__signb {
        right: -40px
    }

    .form__signs {
        left: -27px;
        top: 50%
    }

    .form__formblock {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 40%;
        flex: 0 0 40%
    }

    .form__input::-webkit-input-placeholder {
        font-size: 15px
    }

    .form__input::-moz-placeholder {
        font-size: 15px
    }

    .form__input:-ms-input-placeholder {
        font-size: 15px
    }

    .form__input::-ms-input-placeholder {
        font-size: 15px
    }

    .form__input::placeholder, .form__input[placeholder] {
        font-size: 15px
    }

    .form form {
        margin-top: 15px
    }

    .price {
        padding-top: 70px;
        padding-bottom: 80px;
        margin-bottom: 70px
    }

    .price__imgblock {
        width: 385px;
        height: 445px
    }

    .price__group {
        width: 50%
    }

    .price__img {
        top: 50px;
        right: 10px
    }

    .price__prom {
        width: 207px;
        height: 175px;
        top: 0;
        right: -10px
    }

    .price__points {
        margin-top: 17px
    }

    .price__flex {
        padding: 23px 0 23px 35px
    }

    .price__list {
        margin-top: 20px;
        margin-bottom: 20px
    }

    .programm__block:first-child > .programm__textblock, .programm__block:nth-child(3) > .programm__textblock {
        padding-left: 30px
    }

    .programm__block:nth-child(2) > .programm__textblock {
        padding-right: 35px
    }

    .programm__img {
        width: 345px;
        height: 215px
    }

    .programm__block {
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end
    }

    .programm__textblock {
        padding-top: 20px;
        padding-bottom: 20px;
        -webkit-box-flex: 0;
        -ms-flex: 0 0 calc(45% - 15px);
        flex: 0 0 calc(45% - 15px)
    }

    .contacts__address, .contacts__phone, .programm__block:not(:last-child) {
        margin-bottom: 25px
    }

    .contacts__line {
        top: 63%
    }

    .contacts__info {
        padding: 79px 50px 60px 40px;
        -webkit-box-flex: 0;
        -ms-flex: 0 0 45%;
        flex: 0 0 45%
    }

    .social-icon-tg, .social-icon-vk, .social-icon-youtube {
        width: 45px;
        height: 45px
    }

    .contacts__map {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 55%;
        flex: 0 0 55%
    }

    .contacts__blue {
        bottom: 10px;
        left: -5px
    }

    .contacts__sign {
        right: 10px;
        top: 100px
    }

    .contacts__address {
        margin-top: 33.5px
    }

    .contacts-links.text {
        margin-bottom: 22px
    }

    .section8-line svg {
        width: 319px
    }

    .section-faq {
        padding-top: 57px;
        padding-bottom: 57px
    }

    .content p {
        padding-top: 30px;
        padding-bottom: 40px
    }

    .footer {
        padding-top: 70px;
        padding-bottom: 81px
    }

    .footer-logo img {
        height: 40px
    }
}

@media (max-width: 767px) {
    .courses__tab, .main, header {
        background-color: #fff
    }

    .accordion-item:not(:last-child) {
        margin-bottom: 0
    }

    .form__flex, .programm__block, .programm__imgblock img {
        border-radius: 30px
    }

    .common__first, .common__second, .contacts__blue, .contacts__line, .courses__line, .courses__sign, .footer__gr, .form__rect, .free__orange, .header-menu, .programm__underline, .reviews__blue, .reviews__line, .reviews__orange, .reviews__red, .reviews__underline {
        display: none
    }

    .main {
        padding-bottom: 360px
    }

    .courses__btn, .main__btn {
        -ms-flex-item-align: center;
        -ms-grid-row-align: center;
        align-self: center
    }

    .container.main__container {
        padding-top: 25px
    }

    .about {
        padding-top: 26px;
        padding-bottom: 0
    }

    .about__imgblock {
        min-width: 350px;
        max-width: 351px;
        height: 305px;
        left: 50%;
        margin-right: -50%;
        top: initial;
        bottom: 0;
        position: relative
    }

    .about__img {
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        -webkit-transform: translate(-50%, 0);
        -ms-transform: translate(-50%, 0);
        transform: translate(-50%, 0);
        -o-object-fit: cover;
        object-fit: cover
    }

    .about__sign {
        width: 188px;
        margin-left: 60px
    }

    .about__flex {
        flex-direction: column-reverse;
        padding: 33px 12px 0;
        width: 100%;
        overflow: hidden
    }

    .about__opening, .accordion-item:not(:last-child), .programm__block:not(:last-child) {
        margin-bottom: 0
    }

    .about__block, .header-left-content {
        max-width: 100%
    }

    .header-left-content {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        text-align: center
    }

    .footer-icons, .footer-linksblock, .footer-right, .main__body, .price__group {
        width: 100%
    }

    .main__image {
        width: 480px;
        height: 366px;
        top: initial;
        bottom: -30px;
        left: 50%;
        margin-right: -50%;
        -webkit-transform: translate(-50%, 0);
        -ms-transform: translate(-50%, 0);
        transform: translate(-50%, 0)
    }

    .social-icon-header-tg, .social-icon-header-vk, .social-icon-header-youtube {
        display: inline-block
    }

    .social-icon-header-tg {
        width: 20.6px;
        height: 21.1px
    }

    .header-social > button {
        -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
        order: 4;
        margin-right: 0;
        margin-left: 10px
    }

    .courses__textblock, .section2 {
        -ms-flex-direction: column;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal
    }

    .social-icon-header-vk {
        width: 22px;
        height: 13.5px
    }

    .social-icon-header-youtube {
        width: 19.4px;
        height: 13.9px
    }

    .button {
        font-size: 14px;
        padding-left: 12.6px;
        padding-right: 12.6px;
        height: 29.5px
    }

    .btn__lesson {
        font-size: 18px;
        min-width: 190px;
        height: 35px;
        letter-spacing: 0.7px
    }

    .header {
        margin-top: 0
    }

    .header-logo img {
        width: 91px;
        height: 33px
    }

    .header-students {
        width: 480px;
        height: 366px
    }

    .header-headline {
        text-align: center;
        font-size: 34px;
        line-height: 36px;
        display: none;
    }

    .header-headline-mob {
        display: block;
    }

    .header-info {
        text-align: center;
        font-size: 14px;
        line-height: 16px;
        max-width: 230px;
        margin-top: 21px;
        margin-bottom: 20px
    }

    .button-start {
        width: 125px;
        height: 48px
    }

    .header-arrow {
        position: absolute;
        top: -83%;
        right: 0;
        margin-left: 26px
    }

    .head-arrow {
        width: 108px;
        height: 70px;
        -webkit-transform: rotate(-12.82deg);
        -ms-transform: rotate(-12.82deg);
        transform: rotate(-12.82deg)
    }

    .form, .section6-userdata-line img {
        min-width: 100%
    }

    .section-get {
        margin-bottom: 54px;
        padding-top: 54px
    }

    .section2-block-headline {
        padding-bottom: 17px
    }

    .courses__subtitle, .free__subtitle, .programm__subtitle, .section2-block-headline {
        font-size: 25px;
        line-height: 28px
    }

    .section2 {
        flex-direction: column;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        padding-bottom: 0
    }

    .section2-block {
        width: 100%;
        margin-top: 0
    }

    .section2-block:not(:last-child) {
        margin-bottom: 19px
    }

    .form form, .section2-block:first-child {
        margin-top: 25px
    }

    .section2-headline-underline svg {
        width: 229px
    }

    .courses__imgblock {
        width: 218px;
        height: 163px;
        margin-left: 0
    }

    .courses {
        margin-top: 0;
        margin-bottom: 0
    }

    .card__first, .courses__thumbswiper {
        margin-bottom: 20px
    }

    .swiper-slide.courses__slide {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        padding: 20px 20px 40px;
        background-color: #fff
    }

    .programm__block:nth-child(2) > .programm__img, .programm__block:nth-child(2) > .programm__textblock {
        padding-right: 11px
    }

    .courses__subtitle {
        max-width: 300px;
        text-align: center;
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 18px
    }

    .courses__thumbswiper > .swiper-wrapper {
        gap: 11px
    }

    .courses__textblock {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        flex-direction: column;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        margin-top: 19px;
        max-width: 100%;
        text-align: center
    }

    .free__flex, .free__open {
        display: -webkit-box;
        display: -ms-flexbox
    }

    .courses__tab {
        padding-left: 14px;
        padding-right: 13px
    }

    .contacts, .gallery {
        background-color: #f4f4f4
    }

    .gallery {
        margin-top: 0;
        margin-bottom: 0
    }

    .gallery__next.courses__next, .gallery__prev.courses__prev {
        top: 20%
    }

    .gallery__next.courses__next {
        right: 60px
    }

    .gallery__prev.courses__prev {
        left: 60px
    }

    .reviews {
        padding-top: 54px;
        padding-bottom: 54px
    }

    .reviews__flex {
        margin-top: 100px;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }

    .reviews__block {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        padding: 97px 12px 32px
    }

    .reviews__block:not(:last-child) {
        margin-bottom: 92px
    }

    .free__title span, .reviews__title span {
        color: #4e9fff
    }

    .review__img {
        width: 129px;
        height: 129px;
        -webkit-transform: translate(-50%, 63%);
        -ms-transform: translate(-50%, 63%);
        transform: translate(-50%, 63%)
    }

    .gallery__slide {
        height: 228px
    }

    .gray {
        -webkit-box-shadow: none;
        box-shadow: none;
        opacity: 1
    }

    .gallery__underline {
        margin-bottom: 10px
    }

    .gallery__swiper .swiper-button-next.gallery__next.swiper-button-disabled, .swiper-button-prev.gallery__prev.swiper-button-disabled {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        opacity: 1
    }

    .gallery__swiper {
        padding-bottom: 83px
    }

    .gallery__next, .gallery__prev {
        position: absolute;
        top: calc(80% + 18px);
        right: 0;
        width: 37px;
        height: 37px
    }

    .gallery__next {
        right: calc(40% - 8.5px)
    }

    .gallery__prev {
        left: calc(40% - 8.5px)
    }

    .contacts {
        padding-bottom: 0;
        padding-top: 118px;
        position: relative
    }

    .contacts__title {
        position: absolute;
        top: -64px;
        left: 16px
    }

    .free, .free__container {
        position: relative
    }

    .contacts__block {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        background-color: #fff
    }

    .form, .free {
        background-color: #f4f4f4
    }

    .contacts__map iframe {
        max-height: 284px
    }

    .contacts__info {
        padding: 32px 24px 20px;
        -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%
    }

    .social-icon-tg, .social-icon-vk, .social-icon-youtube {
        width: 40px;
        height: 40px
    }

    .contacts__map {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%
    }

    .contacts__sign {
        right: 36px;
        top: -55px
    }

    .contacts__address {
        margin-top: 0;
        margin-bottom: 25px
    }

    .contacts-links.text {
        margin-bottom: 29px
    }

    .contacts__phone {
        margin-bottom: 15px
    }

    .footer-social-block-item:not(:last-child) {
        margin-right: 22px
    }

    .free {
        padding-top: 55px;
        padding-bottom: 0;
        margin-bottom: 0
    }

    .free__open {
        display: flex
    }

    .free__mat {
        position: absolute;
        top: 60px;
        right: 0;
        z-index: 2;
        margin-left: 0;
        width: 199px;
        height: 84px
    }

    .free__img {
        position: absolute;
        bottom: 0;
        right: 12px;
        width: 145px;
        height: 237px
    }

    .free__img2 {
        bottom: -37px
    }

    .free__line1.free__line2 {
        bottom: 35px;
        right: -35px
    }

    .free__flex {
        margin-top: 28px;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between
    }

    .free__block, .programm__hid {
        display: -webkit-box;
        display: -ms-flexbox
    }

    .form__flex, .programm__block:nth-child(2), .section6 {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse
    }

    .free__block:not(:last-child), .section6-userdata-options-social {
        margin-bottom: 24px
    }

    .free__title {
        max-width: 191px
    }

    .free__line1 {
        bottom: -70px;
        right: -20px
    }

    .free__block {
        overflow: hidden;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        padding: 29px 12px 170px 9px
    }

    .form {
        padding-bottom: 0
    }

    .form__imgblock {
        width: 100%;
        height: 220px
    }

    .form__flex {
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
        background-color: #fff
    }

    .form__card, body {
        background-color: #f4f4f4
    }

    .form__cards {
        top: 30%;
        left: 50%
    }

    .form__card {
        padding-top: 5px;
        padding-bottom: 5px
    }

    .card__second > .form__text {
        max-width: 105px
    }

    .card__third > .form__text, .form__text {
        max-width: 115px
    }

    .form__num.text {
        width: 28px;
        height: 28px
    }

    .card__second {
        margin-bottom: 20px
    }

    .form__signb {
        width: 42px;
        height: 60px;
        right: -40px
    }

    .form__signs {
        width: 29px;
        height: 40px;
        left: -35px;
        top: 56%
    }

    .price__img, .price__imgblock {
        width: 287px;
        height: 318px
    }

    .form__block {
        padding-top: 200px
    }

    .form__formblock {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        padding: 28px 11px 0
    }

    .form__input::-webkit-input-placeholder {
        font-size: 15px
    }

    .form__input::-moz-placeholder {
        font-size: 15px
    }

    .form__input:-ms-input-placeholder {
        font-size: 15px
    }

    .form__input::-ms-input-placeholder {
        font-size: 15px
    }

    .form__input::placeholder, .form__input[placeholder] {
        font-size: 15px
    }

    .form__checkboxblock, .form__input {
        margin-bottom: 25px
    }

    .price {
        padding-top: 0;
        padding-bottom: 0;
        margin-bottom: 60px
    }

    .price__list, .programm__openning {
        margin-bottom: 17px
    }

    .price__img {
        -webkit-transform: rotate(20.603deg);
        -ms-transform: rotate(20.603deg);
        transform: rotate(20.603deg);
        top: 300px;
        right: 40px
    }

    .price__prom {
        width: 195px;
        height: 155px;
        -o-object-fit: cover;
        object-fit: cover;
        top: 420px;
        right: 130px
    }

    .price__points {
        gap: 11px;
        margin-top: 13px
    }

    .price__flex {
        padding: 26px 36px 280px 10px
    }

    .price__list {
        margin-top: 17px
    }

    .programm {
        padding-top: 0;
        padding-bottom: 54px
    }

    .programm__hid {
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        margin-top: 24px
    }

    .programm__hid img {
        margin-left: 7px
    }

    .programm__flex {
        min-width: 0
    }

    .programm__block:first-child > .programm__textblock, .programm__block:nth-child(3) > .programm__textblock {
        padding-left: 11px
    }

    .programm__block:nth-child(2), .section6 {
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse
    }

    .programm__block, .programm__textblock, .section7 {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal
    }

    .programm__imgblock {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        width: 100%
    }

    .programm__text {
        text-align: center
    }

    .programm__block {
        overflow: hidden;
        width: 100%;
        padding-top: 29px;
        -ms-flex-direction: column;
        flex-direction: column;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-flex: 0;
        -ms-flex: none;
        flex: none;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        background-color: #fff
    }

    .programm__container {
        display: block;
        min-width: 0
    }

    .programm__block:first-child, .programm__block:first-child > .programm__textblock {
        -webkit-box-flex: 0;
        -ms-flex: none;
        flex: none
    }

    .programm__textblock {
        padding-top: 0;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-flex: 0;
        -ms-flex: none;
        flex: none;
        -ms-flex-direction: column;
        flex-direction: column;
        padding-right: 10px
    }

    .programm__subtitle {
        text-align: center;
        margin-bottom: 22px;
        max-width: 235px
    }

    .programm__imgblock {
        min-width: 100%;
        height: 226px;
        position: relative
    }

    .programm__img {
        min-width: 100%;
        height: 100%;
        -o-object-fit: cover;
        object-fit: cover;
        display: block
    }

    .programm__block:nth-child(2) > picture > .programm__img, .programm__block:nth-child(3) > picture > .programm__img {
        min-width: calc(100% + 20px);
        margin-right: 10px
    }

    .gallery__next.programm__next, .gallery__prev.programm__prev {
        top: 71%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }

    .gallery__prev.programm__prev {
        left: 12px
    }

    .gallery__next.programm__next {
        right: 12px
    }

    .section6-right {
        z-index: 1
    }

    .section6-left img {
        padding-right: 30px;
        width: 670px;
        height: 320px;
        -o-object-fit: cover;
        object-fit: cover
    }

    .section6-line img {
        width: 103px;
        height: 12px;
        margin-left: 90%
    }

    .section6-userdata-submit button svg {
        width: 156px;
        height: 45px
    }

    .section6-title.title {
        text-align: center;
        width: 100%
    }

    .section6-application {
        margin-top: 28px;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }

    .section6-userdata, .section6-userdata input {
        width: 100%;
        margin: 0
    }

    .section6-userdata-options-where {
        padding-top: 26px
    }

    .section6-userdata-options {
        gap: 12px
    }

    .section-promotion {
        position: relative;
        padding-top: 46px;
        padding-bottom: 361px
    }

    .section7-button svg {
        width: 193px;
        height: 48px
    }

    .section7-right {
        position: absolute;
        top: initial;
        right: -100px;
        bottom: -475px;
        width: 455px;
        height: 481px;
        background: url(../images/section7/woman-2.png) top center no-repeat
    }

    .section7-left {
        width: 100%;
        gap: 15px
    }

    .section7-points {
        padding: 0;
        gap: 18px
    }

    .section7 {
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }

    .section7-title.title {
        max-width: 450px
    }

    input[type=checkbox] {
        height: 12px;
        width: 16px
    }

    input[type=checkbox]:before {
        width: 2px;
        height: 5px;
        margin: 0 -1px 0 0
    }

    .content p {
        padding-top: 24px;
        padding-bottom: 24px
    }

    .section8-line svg {
        width: 280px
    }

    .section-faq {
        padding-top: 45px;
        padding-bottom: 45px
    }

    .footer {
        padding-top: 60px;
        padding-bottom: 60px
    }

    .footer-logo img {
        height: 33px
    }

    .footer__container.container {
        padding: 0 30px
    }
}

.title {
    font-size: 50px;
    font-weight: 600;
    line-height: 110%;
    letter-spacing: 1.5px
}

.text {
    font-weight: 400;
    font-size: 18px;
    line-height: 124.9%;
    letter-spacing: .9px;
    color: #000
}

.container {
    max-width: 1230px;
    margin: 0 auto;
    padding: 0 15px
}

@media (max-width: 400px) {
    .main__image {
        left: 57%
    }
}

@media (max-width: 300px) {
    .contacts__sign {
        right: 0
    }

    .gallery__prev {
        left: calc(40% - 15px)
    }

    .gallery__next {
        right: calc(40% - 15px)
    }

    .third-img {
        -webkit-transform: translate(-50%, 30%);
        -ms-transform: translate(-50%, 30%);
        transform: translate(-50%, 30%)
    }

    .second-img {
        -webkit-transform: translate(-50%, 60%);
        -ms-transform: translate(-50%, 60%);
        transform: translate(-50%, 60%)
    }

    .first-img {
        -webkit-transform: translate(-50%, 40%);
        -ms-transform: translate(-50%, 40%);
        transform: translate(-50%, 40%)
    }

    .price__imgblock {
        width: 287px;
        height: 318px
    }

    body {
        background-color: #f4f4f4
    }

    .price__group {
        width: 100%
    }

    .price__img {
        top: 390px;
        right: 0
    }

    .price__prom {
        top: 480px;
        right: 70px
    }
}

@media (max-width: 1367px) {
    .container, .container.header__container, .container.main__container {
        max-width: 1150px
    }

    .title {
        font-size: 47px;
        line-height: 52px
    }

    .text {
        font-size: 17px;
        line-height: 19px
    }
}

@media (max-width: 1200px) {
    .container, .container.header__container, .container.main__container {
        max-width: 1045px
    }

    .title {
        font-size: 44px;
        line-height: 48px
    }

    .text {
        font-size: 16px;
        line-height: 18px
    }
}

@media (max-width: 992px) {
    .container, .container.header__container, .container.main__container {
        max-width: 750px
    }

    .title {
        font-size: 39px;
        line-height: 43px
    }

    .text {
        font-size: 15px;
        line-height: 17px
    }
}

@media (max-width: 767px) {
    .container, .container.header__container, .container.main__container {
        max-width: none;
        padding: 0 8px
    }

    .container {
        max-width: none;
        padding: 0 30px
    }

    .contacts__map iframe {
        height: 284px
    }

    .first-img {
        -webkit-transform: translate(-50%, 25%);
        -ms-transform: translate(-50%, 25%);
        transform: translate(-50%, 25%)
    }

    .second-img {
        -webkit-transform: translate(-50%, 28%);
        -ms-transform: translate(-50%, 28%);
        transform: translate(-50%, 28%)
    }

    .third-img {
        -webkit-transform: translate(-50%, 18%);
        -ms-transform: translate(-50%, 18%);
        transform: translate(-50%, 18%)
    }

    .first-img img {
        width: 172px;
        height: 147px
    }

    .second-img img {
        width: 200px;
        height: 140px
    }

    .third-img img {
        width: 180px;
        height: 160px
    }

    .section2-line, .section2-linesc {
        display: none
    }

    .section-get {
        background-color: #f4f4f4
    }

    .section2 {
        padding-top: 100px
    }

    .free__subtitle, .section2-block-headline {
        max-width: 100%
    }

    .section2-block {
        padding: 80px 49px 35px;
        background-color: #fff
    }

    .section2-block:not(:last-child) {
        margin-bottom: 115px
    }

    .title {
        font-size: 34px;
        line-height: 36px
    }

    .text {
        font-size: 14px;
        line-height: 16px
    }
}

.section2-headline-block._active, .section3-headline-block._active, .section6-headline._active, .section7-headline._active, .section8-headline._active {
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0);
    opacity: 1;
    -webkit-transition: .9s;
    -o-transition: .9s;
    transition: .9s
}

.section2-block.fourth, .section2-block.second, .section4-right {
    -webkit-transform: translate(120%, 0);
    -ms-transform: translate(120%, 0);
    transform: translate(120%, 0);
    opacity: 0;
    -webkit-transition: .9s;
    -o-transition: .9s;
    transition: .9s
}

@keyframes draw {
    100% {
        stroke-dashoffset: 0
    }
}

:root {
    --bg: #fff;
    --text: #314b6b;
    --gray: #4d5974;
    --lightgray: #e5e5e5;
    --blue: #2f79ce
}


.test_about__item {
    display: flex;
    flex: 0 0 auto;   /* чтобы не растягивалось */
    background: white;
    border-radius: 20px;
    padding: 15px;
    gap: 12px;
    letter-spacing: 5%;
    line-height: 125%;
    font-size: 18px;
}


.test_about__icon {
    min-width: 42px;
    max-width: 42px;
    min-height: 42px;
    max-height: 42px;
    margin: auto 0;
}

.test__about_text {
    margin: auto 0;
}

.first_about__block {
    display: flex; padding: 10px 0; gap: 20px;
    > .first_item {
        margin-bottom: 10px;
    }
    > .second_item {
        width: 40%;
    }
}


.long_item {
    margin-bottom: 20px; width: 70%
}

.second_about__block {
    display: flex; gap: 20px;
    > .second_about__block-block {
        display: block; width: 45%;
        > .first_item {
            width: 100%; margin-bottom: 20px;
        }
        > .second_item {
            width: 90%;
        }
    }
    > .first {
        width: 40%; height: 100%;
    }
}

.show-more-btn {
    display: none;
}

@media (max-width: 1200px) {
    .about__flex {
        flex-direction: column;
        align-items: center; /* по желанию */
    }

    .test__about_text {
        font-size: 14px;
        line-height: 1.2;
    }

    .first_about__block {
        flex-direction: column;
        align-items: center;
        gap: 10px;
    }

    .second_about__block {
        flex-direction: column;
        align-items: center;
    }

    .first_about__block {
        display: flex; padding: 0px 0; gap: 10px;
        padding-bottom: 10px;
        > .first_item {
            margin-bottom: 0;
            width: fit-content;
        }
        > .second_item {
            width: 65%;
        }
    }


    .long_item {
        width: 90%;
        margin: 0 auto;
        margin-bottom: 10px;
    }

    .second_about__block {
        display: flex; gap: 10px;
        align-items: center;
        > .second_about__block-block {
            display: flex; width: fit-content; flex-direction: column;
            align-items: center;
            > .first_item {
                width: 75%; margin-bottom: 10px;
            }
            > .second_item {
                width: fit-content;
            }
        }
        > .first {
            width: fit-content; height: 100%;
        }
    }
}


@media (max-width: 767px) {
    .about__flex {
        display: flex;
        flex-direction: column;
        grid-template-columns: none;
        gap: 0;
        background-color: #FFFFFF;
        border-radius: 20px;
    }

    .long_item {
        margin-bottom: 5000px;
    }

    .test_about__item {
        background-color: #f4f4f4;
    }

    .test__about_text {
        font-size: 14px;
    }

    .about__imgblock {
        order: 2;
        left: 0;
        margin-right: 0;
    }

    .test_about__icon, .test_about__icon > svg {
        min-width: 25px;
        max-width: 25px;
        min-height: 25px;
        max-height: 25px;
        margin: auto 0;
    }

    .about__img {
        -webkit-transform: translate(0, 0) !important;
        -ms-transform: translate(0, 0) !important;
        transform: translate(0, 0) !important;
    }

    .about__block {
        order: 1;
    }

    .about__block.collapsible {
        position: relative;
        max-height: 270px; /* высота так, чтобы видно было первые 2 блока и часть 3-го */
        overflow: hidden;
        transition: max-height 0.6s ease, margin-bottom 0.4s ease; /* плавное раскрытие и исчезновение отступа */
    }

    .about__show-more-wrapper {
        width: 100%;
        height: 0;
    }

    .about__block.collapsible::after {
        content: "";
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        background: #FFFFFF;
        filter: blur(10px);
        height: 94px; /* высота блюра */
        border-top-left-radius: 15px;
        border-top-right-radius: 15px;
        pointer-events: none;
        transition: opacity 0.4s ease; /* плавное исчезновение блюра */
    }

    .show-more-btn {
        position: absolute;
        bottom: 35px;
        left: 50%;
        transform: translateX(-50%);
        background: #f4f4f4;
        border: none;
        border-radius: 50%;
        width: 40px;
        height: 40px;
        color: white;
        font-size: 20px;
        cursor: pointer;
        z-index: 20;
        display: flex;
        align-items: center;
        justify-content: center;
        transition: transform 0.3s ease;

    }

    /* активное состояние */
    .about__block.open {
        max-height: 5000px; /* больше чем достаточно */
        margin-bottom: 0;
        padding-bottom: 0;
    }

    .about__block.open::after {
        opacity: 0;
    }

    .about__block.open .show-more-btn {
        opacity: 0;
        pointer-events: none;
        transform: translate(-50%, 20px);
    }
}
