@charset "UTF-8";

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    border: none;
 /*   font: inherit; */
    color: inherit;
    background-color: transparent;
    text-decoration: none;
    line-height: 120%
}

*,
::after,
::before {
    box-sizing: border-box
}

ol[class],
ul[class] {
    padding: 0
}

blockquote,
body,
dd,
dl,
figcaption,
figure,
h1,
h2,
h3,
h4,
li,
ol[class],
p,
ul[class] {
    margin: 0
}

body {
    min-height: 100vh;
    scroll-behavior: smooth;
    text-rendering: optimizeSpeed;
    position: relative
}

ol[class],
ul[class] {
    list-style: none
}

a:not([class]) {
    -webkit-text-decoration-skip: ink;
    text-decoration-skip-ink: auto
}

img {
    max-width: 100%;
    display: block
}

article>*+* {
    margin-top: 1em
}

button,
input,
select,
textarea {
    font: inherit;
    outline: 0
}

@media (prefers-reduced-motion:reduce) {
    * {
        animation-duration: 0s !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0s !important;
        scroll-behavior: auto !important
    }
}

.popup {
    z-index: 100
}

.popup__wrapper {
    width: 100%;
    height: 100%;
    background: #1d1d1b;
    opacity: .3;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 101
}

.popup__close {
    cursor: pointer;
    position: absolute;
    top: 27px;
    right: 27px
}

@media (max-width:540px) {
    .popup__close {
        top: 18px;
        right: 18px;
        width: 12px;
        height: 12px
    }
}

.popup__close:hover {
    transition: all .3s ease;
    stroke: red
}

.callback-popup {
    width: 546px;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 32px 48px 40px;
    gap: 24px;
    background: #fff;
    border-radius: 8px;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 102
}

.callback-popup__title {
    text-align: center;
    font-style: normal;
    font-weight: 700;
    font-size: 40px;
    line-height: 120%;
    margin-bottom: 4px
}

@media (max-width:540px) {
    .callback-popup__title {
        font-style: normal;
        font-weight: 700;
        font-size: 28px;
        line-height: 110%
    }
}

.callback-popup__subtitle {
    text-align: center;
    font-style: normal;
    font-weight: 400;
    font-size: 24px;
    line-height: 120%;
    margin-bottom: 24px
}

.callback-popup__form div {
    position: relative
}

.callback-popup__form .invalid-feedback {
    position: absolute;
    bottom: -20px
}

.callback-popup__form .name {
    margin-bottom: 16px
}

.callback-popup__form .name p {
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    margin-bottom: 5px
}

.callback-popup__form .telephone p {
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    margin-bottom: 5px
}

.callback-popup__form input {
    width: 100%;
    height: 61px;
    background: #fff;
    border: 1px solid #d8d8d8;
    border-radius: 4px;
    padding: 16px 8px
}

.callback-popup__form button {
    display: block;
    margin: 0 auto;
    margin-top: 24px
}

@media (max-width:540px) {
    .callback-popup__form button {
        margin: 0;
        margin-top: 24px;
        width: 100%
    }
}

@media (max-width:676px) {
    .callback-popup {
        width: 92%;
        padding: 40px 16px 24px 16px
    }
}

.cart {
    width: 1164px
}

.cart button {
    white-space: nowrap
}

.cart :not(.cart-title) {
    font-size: 16px
}

.cart-title {
    margin-bottom: 24px
}

@media (max-width:540px) {
    .cart-title {
        margin-bottom: 16px
    }
}

.cart-table__row {
    display: grid;
    grid-template-columns: 2fr .8fr .6fr;
    align-items: center;
    padding: 23px 0;
    -moz-column-gap: 0;
    column-gap: 0
}

@media (max-width:540px) {
    .cart-table__row {
        padding: 14px 0
    }
}

.cart-table__row a {
    padding-right: 20px
}

.cart-table__row .item-name {
    -webkit-text-decoration: 1px underline #d8d8d8;
    text-decoration: 1px underline #d8d8d8;
    text-underline-offset: 4px
}

@media (max-width:540px) {
    .cart-table__row .item-name {
        font-size: 20px
    }
}

.cart-table__row .item-name:hover {
    transition: .3s ease all;
    -webkit-text-decoration: 1px underline #ff2c38;
    text-decoration: 1px underline #ff2c38
}

.cart-table__row .counter {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 145px;
    height: 44px;
    border: 1px solid #d8d8d8;
    border-radius: 4px
}

.cart-table__row .counter__dec,
.counter__inc {
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    width: 45px;
    background: #d8d8d8;
    font-size: 24px;
    line-height: 24%;
    color: #1d1d1b
}

.cart-table__row .counter__dec:hover,
.counter__inc:hover {
    transition: .3s ease all;
    background-color: #e4e4e4
}

.cart-table__row .counter__dec {
    border-right: 1px solid #d8d8d8;
    font-size: 24px !important
}

.cart-table__row .counter__inc {
    border-left: 1px solid #d8d8d8;
    font-size: 24px !important
}

.cart-table__row .counter__count {
    font-size: 16px;
    color: #1d1d1b
}

.cart-table__row {
    border-bottom: 1px solid #d8d8d8
}

.cart-table__row strong {
    display: none;
    font-style: normal;
    font-weight: 700;
    font-size: 24px
}

@media (max-width:1280px) {
    .cart-table__row strong {
        display: inline-block
    }
}

.cart-table__row1 {
    padding: 0;
    padding-bottom: 16px
}

.cart-table__row1 div span {
    font-weight: 700
}

.cart-table__row1 .counter {
    height: inherit;
    border: none
}

.cart-table__row1 .total-price-head {
    display: block;
    margin: 0 auto
}

.cart-table__row .total-price {
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between
}

.cart-table__row .total-price span {
    flex-direction: row;
    align-items: flex-start
}

.cart-table__row .total-price .delete-item {
    cursor: pointer;
    color: #e30613;
    -webkit-text-decoration: 1px underline dotted #e30613;
    text-decoration: 1px underline dotted #e30613;
    text-underline-offset: 4px
}

.cart-table__row .total-price .delete-item:hover {
    transition: .3s ease all;
    color: #ff2c38;
    -webkit-text-decoration: 1px underline dotted #ff2c38;
    text-decoration: 1px underline dotted #ff2c38
}

.cart-table__footer {
    display: flex;
    flex-direction: column;
    align-items: flex-end
}

.cart-table__footer .total-price {
    flex-direction: row
}

.cart-table__footer .total-price span {
    margin-right: 8px
}

.cart-table__footer span {
    white-space: nowrap
}

.cart-table__footer div {
    display: flex;
    justify-content: flex-end;
    margin: 24px 0
}

@media (max-width:540px) {
    .cart-table__footer div span {
        font-size: 20px !important
    }
}

.cart-table__footer div .total-price {
    font-weight: 700;
    margin-left: 8px
}

.cart button {
    width: 162px;
    height: 46px
}

.cart .delete-item {
    width: inherit;
    height: inherit
}

.catalog__wrapper {
    display: flex;
    flex-direction: row;
    align-items: flex-start
}

.catalog__info {
    display: flex;
    align-items: flex-start
}

.catalog__text {
    width: 759px;
    margin-right: 16px
}

.catalog__text p {
    font-style: normal;
    font-weight: 400;
    line-height: 120%
}

.catalog__text, .catalog__text p, .catalog__text li  {
    font-size: 18px;
}

.catalog__text p, .catalog__text ul  {
	margin-bottom: 1em;
}
/*
.catalog__text p:not(:last-child) {
    margin-bottom: 12px
}
*/

.course-price {
    display: flex;
    flex-direction: column;
    padding: 0 32px;
    border-left: 1px solid #d8d8d8
}

.course-price__title_desc {
    display: flex;
    flex-direction: column
}

@media (max-width:767px) {
    .course-price__title_desc {
        display: none
    }
}

.course-price__title_mobile {
    display: none;
    margin: 0 auto
}

@media (max-width:767px) {
    .course-price__title_mobile {
        display: flex;
        flex-direction: row
    }
}

@media (max-width:540px) {
    .course-price__title_mobile {
        margin: 0
    }
}

.course-price .time_title {
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 120%
}

.course-price .time {
    font-style: normal;
    font-weight: 700;
    font-size: 16px;
    line-height: 120%;
    margin-bottom: 12px
}

.course-price .price {
    font-style: normal;
    font-weight: 700;
    font-size: 32px;
    line-height: 120%;
    margin-bottom: 3px;
    margin-top: -3px;
    white-space: nowrap
}

.course-price .choose-course button {
    cursor: pointer;
    font-style: normal;
    font-weight: 400;
    font-size: 20px;
    line-height: 120%;
    color: #e30613;
    -webkit-text-decoration: underline 1px #e30613;
    text-decoration: underline 1px #e30613;
    text-underline-offset: 6px
}

.course-price .choose-course button:hover {
    transition: all .3s ease;
    color: #ff2c38;
    -webkit-text-decoration: 1px underline #ff2c38;
    text-decoration: 1px underline #ff2c38
}

.panel {
    padding: 16px 24px;
    background: #eff8fc;
    border-radius: 8px;
    margin-top: 24px;
    min-height: 72px;
    max-width: 1000px
}

@media (max-width:540px) {
    .panel {
        padding: 16px;
        margin-top: 16px
    }
}

@media (max-width:540px) {
    .panel_desc {
        display: none
    }
}

.panel_mobile {
    display: none
}

@media (max-width:540px) {
    .panel_mobile {
        display: block
    }
}

.panel p {
    font-style: normal;
    font-weight: 700;
    font-size: 16px;
    text-align: center
}

@media (max-width:540px) {
    .panel p {
        text-align: center;
        font-size: 16px;
        line-height: 125%
    }
}

.catalog__title {
    margin-bottom: 24px
}

@media (max-width:540px) {
    .catalog__title {
        margin-bottom: 17px
    }
}

.catalog__cart {
    position: sticky;
    top: 160px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 16px 24px 24px;
    min-width: 276px;
    max-width: 276px;
    background: #f0f0f0;
    border-radius: 8px;
    margin-left: 64px
}

@media (max-width:1320px) {
    .catalog__cart {
        display: none
    }
}

.catalog__cart .total-price__title {
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    white-space: nowrap
}

.catalog__cart .total-price__sum {
    font-style: normal;
    font-weight: 700;
    font-size: 16px
}

.count-courses {
    display: flex
}

.count-courses img {
    margin-right: 10px
}

.total-price {
    display: flex;
    flex-direction: column;
    justify-content: center
}

.total-price .cart-is-empty {
    font-style: normal;
    font-weight: 400;
    font-size: 16px
}

.cart-item {
    display: flex;
    justify-content: space-between;
    margin-bottom: 16px
}

.cart-item:first-child {
    margin-top: 18px
}

.cart-item__info {
    display: flex;
    flex-direction: column;
    gap: 5px
}

.cart-item .cart-item__paragraph {
    font-style: normal;
    font-weight: 400;
    font-size: 16px
}

.cart-item .cart-item__total {
    font-style: normal;
    font-weight: 700;
    font-size: 16px
}

.cart-item__btn-close {
    padding-top: 2px
}

.img-close {
    cursor: pointer
}

.img-close:hover {
    transition: all .3s ease;
    stroke: #ff2c38
}

.img-close:focus {
    transition: all .3s ease;
    stroke: #b1141d
}

.do-order {
    display: block;
    width: 100%
}

.do-order button {
    font-size: 16px;
    width: 100%
}

.catalog-courses {
    display: flex;
    justify-content: space-between;
    align-items: flex-start
}

@media (max-width:540px) {
    .catalog-courses__title {
        margin-bottom: 0
    }
}

.catalog-courses .catalog__cart {
    margin-top: 24px
}

.column {
    width: 1000px !important
}

.column-block {
    border: 1px solid #d8d8d8;
    border-radius: 8px;
    padding: 24px 24px 32px;
    margin-top: 24px
}

.column-block__title {
    margin-bottom: 4px;
    font-size: 28px
}

@media (max-width:540px) {
    .column-block {
        padding: 16px
    }
}

.column-block__item:not(:last-child) {
    margin-bottom: 24px
}

.name-course {
    display: flex;
    align-items: center;
    font-style: normal;
    font-weight: 400;
    font-size: 28px;
    margin-bottom: 8px
}

.special {
    display: flex;
    margin-left: 16px
}

.name-course a {
    -webkit-text-decoration: 1px underline #1d1d1b;
    text-decoration: 1px underline #1d1d1b;
    text-underline-offset: 4px;
    font-style: normal;
    font-weight: 400;
    font-size: 20px;
    margin-top: 12px;
    margin-bottom: 8px
}

@media (max-width:540px) {
    .name-course a {
        font-size: 20px
    }
}

.name-course a:hover {
    -webkit-text-decoration: 1px underline #ff2c38;
    text-decoration: 1px underline #ff2c38
}

.info-course_desc {
    display: flex;
    flex-direction: column
}

@media (max-width:767px) {
    .info-course_desc {
        margin: 0 auto !important
    }
}

@media (max-width:540px) {
    .info-course_desc {
        display: none
    }
}

.info-course_mobile {
    display: none
}

@media (max-width:540px) {
    .info-course_mobile {
        display: flex;
        flex-direction: row
    }
}

.info-course_desc,
.info-course_mobile .price {
    font-style: normal;
    font-weight: 700;
    font-size: 24px;
    margin-right: 6px
}

@media (max-width:540px) {

    .info-course_desc,
    .info-course_mobile .price {
        font-size: 24px
    }
}

.select-course {
    cursor: pointer;
    text-align: left;
    color: #e30613;
    -webkit-text-decoration: 1px underline #e30613;
    text-decoration: 1px underline #e30613;
    text-underline-offset: 6px;
    font-style: normal;
    font-weight: 400;
    font-size: 20px
}

.select-course:hover {
    transition: all .3s ease;
    color: #ff2c38;
    -webkit-text-decoration: 1px underline #ff2c38;
    text-decoration: 1px underline #ff2c38
}

@media (max-width:540px) {
    .select-course {
        font-size: 16px
    }
}

.about-course {
    margin-bottom: 45px
}

.about-course .course-banner {
    height: 384px
}

.about-course .course-banner img {
    height: 100%
}

.about-course .title {
    font-style: normal;
    font-weight: 700;
    font-size: 36px;
    margin-bottom: 24px
}
/*
.about-course__text * {
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    margin-bottom: 12px
}
*/
.about-course__text p {
    padding-top: 2px
}

.about-course__text span {
    display: inline-block;
    margin-top: 10px;
    margin-bottom: 0
}

.about-course__text ul {
    margin-left: 10px;
    padding-top: 4px
}

.about-course__info {
    display: grid;
    grid-template-columns: 888px 1fr;
    justify-content: flex-end
}

.about-course__info li {
    margin-bottom: 8px
}

.about-course__link {
    display: flex;
    flex-direction: column;
    width: 100%;
    align-items: center;
    padding-top: 10px;
    padding-left: 10px
}

.about-course__link button {
    width: 216px;
    height: 46px;
    font-size: 16px;
    margin-top: -6px;
    margin-left: 2px
}

.about-course__link img {
    width: 216px;
    height: 150px;
    margin-bottom: 27px
}

.feedback-success {
    position: absolute;
    margin-left: -2px;
    width: 665px;
    height: 500px;
    background-color: #f6f6f6;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 50
}

@media (max-width:1280px) {
    .feedback-success {
        height: 620px
    }
}

.feedback-success .content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center
}

@media (max-width:930px) {
    .feedback-success .content {
        width: 100%;
        margin-top: 80px
    }
}

.feedback-success img {
    cursor: pointer;
    position: absolute;
    top: 24px;
    right: 24px
}

.feedback-success__title {
    font-style: normal;
    font-weight: 700;
    font-size: 32px;
    margin-bottom: 8px;
    text-align: center
}

.feedback-success__text {
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    max-width: 600px;
    text-align: center;
    margin-bottom: 16px
}

.feedback-success__close {
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    color: #e30613
}

@media (max-width:1440px) {
    .feedback-success {
        width: 705px
    }
}

@media (max-width:1280px) {
    .feedback-success {
        width: calc(110%)
    }
}

@media (max-width:930px) {
    .feedback-success {
        width: calc(102%);
        height: 102% !important;
        height: 380px;
        align-items: flex-start
    }
}

.feedback-sucess__close {
    cursor: pointer;
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    color: #e30613;
    border-bottom: 1px dashed rgba(227, 6, 19, .3)
}

.banner__follow:hover .img-arrow {
    transition: all .3s ease;
    fill: #ff2c38
}

.banner__follow:hover span {
    transition: .3s ease all;
    color: #ff2c38;
    border-bottom: 1px solid #ff2c38
}

.banner__follow span:hover {
    transition: .3s ease all;
    border-bottom: 1px solid #ff2c38
}

.coureses-item__link a:hover {
    transition: .3s ease all;
    color: #ff2c38;
    border-bottom: 1px solid #ff2c38
}

a {
    color: #000;
    text-decoration: none;
    font-size: 24px
}

button a {
    color: #fff
}

button a:hover {
    color: #fff
}

button a:focus {
    color: #fff
}

.banner__title {
    position: absolute;
    width: 621px;
    height: 144px;
    left: 40px;
    top: 30px;
    font-weight: 700;
    font-size: 36px
}

.banner__follow {
    display: flex;
    align-items: center;
    color: #e30613;
    border-bottom: none;
    position: absolute;
    height: 40px;
    left: 40px;
    bottom: 24px
}

.banner__follow span {
    color: #1d1d1b;
    border-bottom: 1px solid rgba(29, 29, 27, .3);
    font-weight: 700;
    font-size: 20px;
    margin-right: 10px
}

.banner__follow span:hover {
    color: #ff2c38
}

.courses {
    margin-top: 40px
}

.courses__title {
    text-align: center;
    font-weight: 400;
    font-size: 20px
}

.courses__cards {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    margin-top: 40px
}

.courses-item {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    width: 436px;
    height: 173px;
    background: linear-gradient(180deg, #fff 0, #fbfbfb 100%);
    border: 1px solid #d8d8d8;
    border-radius: 8px;
    padding: 24px
}

.courses-item__logo {
    flex-grow: 2;
    display: flex;
    align-items: center
}

.courses-item__link {
    margin-top: 18px
}

.courses-item__link a {
    font-weight: 400;
    font-size: 16px;
    border-bottom: 1px solid rgba(29, 29, 27, .3)
}

.courses-item__link a:hover {
    border-bottom: 1px solid rgba(255, 44, 56, .3)
}

@media (max-width:540px) {
    .courses-item__link {
        margin-top: 14px
    }
}

.practice {
    margin-top: 40px
}

.practice__title {
    text-align: center;
    margin-bottom: 40px;
    font-style: italic;
    font-weight: 700;
    font-size: 48px
}

.practice-item {
    width: 100%;
    padding: 24px 40px;
    display: flex;
    gap: 38px;
    background: #f0f0f0;
    border-radius: 8px;
    transition: .3s ease all
}

.practice-item .practice-item__info div,
.practice-item .practice-item__info span {
    color: #1d1d1b
}

@media (max-width:540px) {
    .practice-item .practice-item__info div {
        font-size: 16px;
        line-height: 125%
    }

    .practice-item .practice-item__info div br {
        display: none
    }
}

@media (max-width:540px) {
    .practice-item .practice-item__info span {
        font-size: 16px
    }
}

.item1 {
    background-color: #e30613
}

.item1 .practice-item__info div,
.item1 .practice-item__info span {
    color: #fff
}

.practice__cards {
    display: flex;
    justify-content: center;
    gap: 17px;
    height: 198px
}

.practice__cards a {
    display: flex;
    flex-basis: 660px
}

@media (max-width:930px) {
    .practice__cards a {
        flex-basis: 436px
    }
}

.practice-item__info {
    display: flex;
    flex-direction: column;
    padding-top: 10px
}

@media (max-width:540px) {
    .practice-item__info {
        padding-top: 0
    }
}

.practice-item__text {
    font-style: normal;
    font-weight: 700;
    font-size: 32px;
    margin-bottom: 24px
}

.practice-item__more {
    white-space: nowrap;
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    border-bottom: none;
    -webkit-text-decoration: underline 1px;
    text-decoration: underline 1px;
    text-underline-offset: 7px
}

.practice-img {
    min-width: 210px;
    min-height: 133px
}

.individual-img {
    min-width: 216px;
    min-height: 50px
}

.feedback {
    background: #f6f6f6;
    margin-top: 40px;
    padding: 32px 0
}

.feedback__img {
        display: flex;
        align-items: center;
        justify-content: center;
    width: 641px; 
    height: 461px;  
}

.feedback__img img {
/*    width: 641px; */
/*    height: 461px  */
    width: 350px;
    height: 252px;
}

.feedback-wrap {
    width: 1340px;
    margin: 0 auto
}

.feedback-content {
    display: flex;
    justify-content: space-between
}

.feedback-form {
    width: 661px;
    position: relative
}

.feedback-form__title {
    font-style: normal;
    font-weight: 700;
    font-size: 36px;
    margin-bottom: 4px
}

.feedback-form__subtitle {
    font-style: normal;
    font-weight: 400;
    font-size: 16px
}

.feedback-form__form {
    display: grid;
    grid-template-columns: 1fr 1fr;
    row-gap: 16px;
    -moz-column-gap: 16px;
    column-gap: 16px;
    margin-top: 24px
}

.feedback-form__form div {
    position: relative
}

.feedback-form__form .invalid-feedback {
    position: absolute;
    bottom: -16px
}

@media (max-width:540px) {
    .feedback-form__form {
        margin-top: 16px
    }
}

.feedback-form__comment {
    grid-column: 1/3
}

.feedback-form__bottom {
    padding-top: 12px;
    grid-column: 1/3;
    display: flex;
    align-items: center
}

.feedback-form__bottom button {
    min-width: 153px !important;
    height: 46px !important;
    margin-right: 25px;
    font-size: 16px
}

@media (max-width:540px) {
    .feedback-form__bottom button {
        margin-right: 0
    }
}

@media (max-width:540px) {
    .feedback-form__bottom {
        padding-top: 4px
    }
}

.checkbox {
    display: none;
    z-index: -1;
    opacity: 0
}

.checkbox+label {
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

.checkbox+label::before {
    content: "";
    display: inline-block;
    min-width: 16px;
    height: 16px;
    border: 1px solid #969696;
    border-radius: 2px;
    background-repeat: no-repeat;
    background-position: center center;
    box-sizing: border-box;
    margin-right: 5px
}

.checkbox:checked+label::before {
    background-image: url(../../assets/img/icons/check.svg)
}

.feedback-form__agreement {
    padding-top: 1px
}

@media (max-width:767px) {
    .feedback-form__agreement {
        padding-top: 0
    }
}

.feedback-form__agreement label {
    display: flex;
    cursor: pointer;
    font-style: normal;
    font-weight: 400;
    font-size: 20px
}

.feedback-form__agreement label a,
.feedback-form__agreement label span {
    font-size: 14px
}

.feedback-form__agreement a {
    width: inherit;
    color: #e30613;
    -webkit-text-decoration: underline 1px #e30613;
    text-decoration: underline 1px #e30613;
    text-underline-offset: 3px;
    font-style: normal;
    font-weight: 400;
    font-size: 20px
}

@media (max-width:540px) {
    .feedback-form__agreement a {
        font-size: 16px
    }
}

.feedback-form__comment textarea {
    height: 198px;
    resize: none;
    outline: 0
}

.input-title {
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    margin-bottom: 5px
}

.input {
    border: 1px solid #d8d8d8;
    background-color: #fff;
    height: 43px;
    width: 100%;
    padding: 16px 8px;
    font-weight: 400;
    font-size: 14px;
    outline: 0
}

.feedback-menu {
    margin-top: 38px;
    padding-left: 2px
}

@media (max-width:540px) {
    .feedback-menu {
        margin-top: 25px
    }
}

.feedback-menu ul {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    -moz-column-gap: 53px;
    column-gap: 53px;
    row-gap: 10px
}

.feedback-menu a {
    display: flex;
    align-items: center;
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    letter-spacing: .06em;
    text-transform: uppercase;
    white-space: nowrap
}

@media (max-width:540px) {
    .feedback-menu a {
        white-space: inherit
    }
}

.footer {
    box-shadow: 0 -12px 24px 0 #0000000d;
    width: 100%;
    background-color: #fff;
    padding: 31px 0
}

.footer-wrap {
    width: 1340px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between
}

.footer-info {
    display: grid;
    grid-template-columns: 1fr 1fr;
    -moz-column-gap: 182px;
    column-gap: 182px
}

@media (max-width:767px) {
    .footer-info {
        -moz-column-gap: 102px;
        column-gap: 102px
    }
}

.footer-info div,
a {
    font-style: normal;
    font-weight: 400;
    font-size: 14px
}

.footer-blockx {
    width: 136px;
    height: 56px;
    background-color: #d9d9d9;
    margin-top: -8px
}

@media (max-width:540px) {
    .footer-blockx {
        margin-top: -16px
    }
}

.popup :not(.popup-order__title, .callback-popup__title, .success-popup__title) {
    font-size: 16px
}

.popup {
    z-index: 100
}

.popup__wrapper {
    width: 100%;
    height: 100%;
    background: #1d1d1b;
    opacity: .3;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 101
}

.popup__close {
    cursor: pointer;
    position: absolute;
    top: 27px;
    right: 27px
}

.login-popup {
    width: 546px;
    padding: 32px 48px 40px;
    gap: 24px;
    background: #fff;
    border-radius: 8px;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 102
}

.login-popup .popup-order__title {
    text-align: center;
    font-style: normal;
    font-weight: 700;
    font-size: 40px;
    margin-bottom: 24px
}

@media (max-width:540px) {
    .login-popup .popup-order__title {
        font-style: normal;
        font-weight: 700;
        font-size: 28px;
        line-height: 110%
    }
}

.login-popup .order-form {
    display: flex;
    flex-direction: row
}

.login-popup .order-form__form div {
    position: relative
}

.login-popup .order-form__form .invalid-feedback {
    position: absolute;
    bottom: -20px
}

.login-popup .order-form__form .form-title {
    font-style: normal;
    font-weight: 700;
    font-size: 28px;
    line-height: 120%;
    margin-bottom: 8px;
    white-space: nowrap
}

.login-popup .order-form .order-desc {
    border-left: 1px solid #d8d8d8;
    padding-left: 56px
}

.login-popup .order-desc__title {
    font-style: normal;
    font-weight: 700;
    font-size: 28px;
    margin-bottom: 8px
}

.login-popup .order-desc__text {
    font-style: normal;
    font-weight: 400;
    font-size: 24px;
    margin-bottom: 24px
}

.login-popup .order-desc button {
    display: block;
    margin: 0 auto;
    width: 177px;
    height: 56px
}

.login-popup form input {
    width: 100%;
    height: 61px
}

.login-popup form .name {
    margin-bottom: 16px
}

.login-popup form .name p {
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    margin-bottom: 5px
}

.login-popup form .password {
    margin-bottom: 24px
}

.login-popup form .password p {
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    margin-bottom: 5px
}

.login-popup form .password__title {
    display: flex;
    justify-content: space-between;
    margin-bottom: 5px
}

.login-popup form .password__title>span {
    font-style: normal;
    font-weight: 400;
    font-size: 16px
}

.login-popup form .password__title a span {
    color: #e30613;
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    border-bottom: 1px dashed #e30613
}

.login-popup form .password__title a span:hover {
    color: #ff2c38;
    border-bottom: 1px dashed #ff2c38
}

.login-popup form .buttons {
    display: flex;
    flex-direction: row;
    -moz-column-gap: 16px;
    column-gap: 16px
}

.login-popup form .buttons .btn-main {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 13px 40px 14px;
    width: 143px;
    height: 46px
}

@media (max-width:676px) {
    .login-popup form .buttons .btn-main {
        width: 100%
    }
}

.login-popup form .buttons .btn-transparent {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 13px 40px 14px;
    width: 291px;
    height: 46px
}

@media (max-width:676px) {
    .login-popup form .buttons .btn-transparent {
        width: 100%
    }
}

@media (max-width:676px) {
    .login-popup form .buttons {
        flex-direction: column;
        align-items: center;
        row-gap: 12px
    }
}

@media (max-width:676px) {
    .login-popup {
        width: 92%;
        padding: 40px 16px 24px 16px
    }
}

.popup {
    z-index: 100
}

.popup__wrapper {
    width: 100%;
    height: 100%;
    background: #1d1d1b;
    opacity: .3;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 101
}

.popup__close {
    cursor: pointer;
    position: absolute;
    top: 27px;
    right: 27px
}

@media (max-width:540px) {
    .popup__close {
        top: 18px;
        right: 18px;
        width: 12px;
        height: 12px
    }
}

.popup__close:hover {
    transition: all .3s ease;
    stroke: red
}

.order-popup {
    width: 822px;
    padding: 32px 48px 40px;
    gap: 24px;
    background: #fff;
    border-radius: 8px;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 102
}

.order-popup .popup-order__title {
    text-align: center;
    font-style: normal;
    font-weight: 700;
    font-size: 40px;
    margin-bottom: 24px
}

@media (max-width:540px) {
    .order-popup .popup-order__title {
        font-style: normal;
        font-weight: 700;
        font-size: 28px;
        line-height: 110%
    }
}

.order-popup .order-form {
    display: flex;
    flex-direction: row
}

.order-popup .order-form__form {
    margin-right: 56px
}

.order-popup .order-form__form form div {
    position: relative
}

.order-popup .order-form__form form .invalid-feedback {
    position: absolute;
    bottom: -20px
}

.order-popup .order-form__form .form-title {
    font-style: normal;
    font-weight: 700;
    font-size: 28px;
    line-height: 120%;
    margin-bottom: 8px;
    white-space: nowrap
}

@media (max-width:930px) {
    .order-popup .order-form__form .form-title {
        text-align: center;
        font-style: normal;
        font-weight: 700;
        font-size: 20px;
        line-height: 110%
    }
}

@media (max-width:540px) {
    .order-popup .order-form__form .form-title {
        white-space: inherit
    }
}

@media (max-width:930px) {
    .order-popup .order-form__form {
        margin-right: 0;
        margin-bottom: 32px
    }
}

.order-popup .order-form .order-desc {
    border-left: 1px solid #d8d8d8;
    padding-left: 56px
}

@media (max-width:930px) {
    .order-popup .order-form .order-desc {
        border-left: none;
        border-top: 1px solid #d8d8d8;
        padding-left: 0;
        padding-top: 32px
    }
}

@media (max-width:930px) {
    .order-popup .order-form {
        flex-direction: column
    }
}

.order-popup .order-desc__title {
    font-style: normal;
    font-weight: 700;
    font-size: 24px;
    margin-bottom: 8px
}

.order-popup .order-desc__text {
    font-style: normal;
    font-weight: 400;
    font-size: 20px;
    margin-bottom: 24px
}

.order-popup .order-desc button {
    display: block;
    margin: 0 auto
}

.order-popup form input {
    width: 323px;
    height: 61px
}

@media (max-width:930px) {
    .order-popup form input {
        width: 100%
    }
}

.order-popup form .name {
    margin-bottom: 16px
}

.order-popup form .name p {
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    margin-bottom: 5px
}

.order-popup form .password {
    margin-bottom: 24px
}

.order-popup form .password p {
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    margin-bottom: 5px
}

.order-popup form .password__title {
    display: flex;
    justify-content: space-between;
    margin-bottom: 5px
}

.order-popup form .password__title>span {
    font-style: normal;
    font-weight: 400;
    font-size: 16px
}

.order-popup form .password__title a span {
    color: #e30613;
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    border-bottom: 1px dashed #e30613
}

.order-popup form .password__title a span:hover {
    color: #ff2c38;
    border-bottom: 1px dashed #ff2c38
}

.order-popup form button {
    display: block;
    margin: 0 auto;
    width: 143px;
    height: 46px
}

@media (max-width:930px) {
    .order-popup {
        width: 92%;
        overflow: scroll;
        height: 550px;
        margin-top: 0
    }
}

@media (max-width:540px) {
    .order-popup {
        width: 92%;
        padding: 40px 16px 24px 16px;
        height: 404px
    }
}

.main-info :not(h1, h2, h3, h4, h5, h6) {
    font-size: 16px
}

.block1,
.block2,
.block3,
.block4,
.block5,
.block6 {
    margin-bottom: 20px
}

.main-info .block1 ol {
    padding-left: 10px
}

.main-info h2,
.main-info h4 {
    margin-bottom: 12px
}

.main-info h3 {
    margin-bottom: 10px
}

.main-info .block2 {
    margin-bottom: 16px
}

.main-info .block3 ul {
    padding-left: 10px;
    margin-bottom: 14px
}

.main-info h1 {
    margin-bottom: 24px
}

@media (max-width:540px) {
    .main-info h1 {
        margin-bottom: 17px
    }
}

.main-info p {
    margin-bottom: 12px
}

.main-info ol {
    list-style-type: none;
    counter-reset: num
}

.main-info ol li {
    margin-bottom: 8px;
    padding-left: 20px;
    position: relative
}

@media (max-width:540px) {
    .main-info ol li {
        padding-left: 18px
    }
}

.main-info ul li {
    margin-bottom: 8px
}

.main-info ol li::before {
    content: counter(num) ".";
    counter-increment: num;
    display: inline-block;
    position: absolute;
    width: 0;
    height: 0;
    top: 0;
    margin-right: 10px
}

.main-info__banner {
    width: 100%;
    height: 384px;
    background: url(../../assets/img/school/banner.png) no-repeat;
    margin-top: 24px;
    margin-bottom: 32px
}

.success-popup {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 546px;
    height: 235px;
    background-color: #f6f6f6;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 150;
    border-radius: 8px
}

.success-popup .popup__wrapper {
    width: 100vw;
    height: 100vh
}

.success-popup .content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    background-color: #fff;
    z-index: 102;
    border-radius: 8px
}

.success-popup__title {
    font-style: normal;
    font-weight: 700;
    font-size: 40px;
    margin-bottom: 4px
}

@media (max-width:767px) {
    .success-popup__title {
        font-style: normal;
        font-weight: 700;
        font-size: 28px;
        line-height: 110%;
        margin-top: 18px
    }
}

.success-popup__text {
    font-style: normal;
    font-weight: 400;
    font-size: 24px;
    max-width: 600px;
    text-align: center;
    margin-bottom: 24px
}

@media (max-width:767px) {
    .success-popup__text {
        margin-bottom: 8px
    }
}

.success-popup__close {
    cursor: pointer;
    font-style: normal;
    font-weight: 400;
    font-size: 24px;
    color: #e30613;
    border-bottom: 1px dashed rgba(227, 6, 19, .3)
}

@media (max-width:767px) {
    .success-popup {
        width: 288px;
        height: 252px
    }
}

.sucess-popup__close {
    cursor: pointer;
    font-style: normal;
    font-weight: 400;
    font-size: 24px;
    color: #e30613
}

@font-face {
    font-family: PT;
    src: url(../../assets/fonts/PTSans-Bold.ttf);
    font-weight: 700;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: PT;
    src: url(../../assets/fonts/PTSans-Regular.ttf);
    font-weight: 400;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: PT;
    src: url(../../assets/fonts/PTSans-Italic.ttf);
    font-weight: 400;
    font-style: italic;
    font-display: swap
}

@font-face {
    font-family: PT;
    src: url(../../assets/fonts/PTSans-BoldItalic.ttf);
    font-weight: 700;
    font-style: italic;
    font-display: swap
}

* {
    font-family: PT
}

.menu-popup.open {
    padding-left: 20px
}

@media (max-width:540px) {
    .menu-popup.open .feedback-menu__container {
        flex-direction: column;
        row-gap: 24px
    }
}

.is-invalid {
    border: 1px solid #da0025 !important
}

.is-valid {
    border: 1px solid green !important
}

.invalid-feedback {
    color: #e30613;
    font-style: normal;
    font-weight: 400;
    font-size: 12px
}

.disabled {
    cursor: default;
    pointer-events: none;
    opacity: .6
}

input {
    border: 1px solid #d8d8d8;
    border-radius: 4px;
    padding: 16px 8px;
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 120%
}

._hidden {
    display: none !important
}

._overflow {
    overflow-y: hidden
}

._active {
    display: block
}

.new {
    display: flex;
    align-items: center;
    justify-content: center;
    text-transform: uppercase;
    padding: 4px 12px;
    width: 55px;
    height: 25px;
    background: #e30613;
    border-radius: 4px;
    color: #fff;
    margin-right: 8px;
    font-style: normal;
    font-weight: 700;
    font-size: 14px
}

@media (max-width:540px) {
    .new {
        width: 49px;
        height: 22px;
        font-size: 12px
    }
}

.hit {
    display: flex;
    align-items: center;
    justify-content: center;
    text-transform: uppercase;
    padding: 4px 12px;
    width: 47px;
    height: 25px;
    background: #54b8ea;
    border-radius: 4px;
    color: #fff;
    margin-right: 8px;
    font-style: normal;
    font-weight: 700;
    font-size: 14px
}

@media (max-width:540px) {
    .hit {
        width: 43px;
        height: 22px;
        font-size: 12px
    }
}

h1 {
    font-size: 36px;
    font-weight: 700;
    color: #1d1d1b
}

h2 {
    font-size: 32px;
    font-weight: 700;
    color: #1d1d1b
}

h3 {
    font-size: 28px;
    font-weight: 700;
    color: #1d1d1b
}

h4 {
    font-size: 24px;
    font-weight: 700;
    color: #1d1d1b
}

h5,
h6 {
    font-size: 16px;
    font-weight: 700;
    color: #1d1d1b
}

img {
    margin: 0;
    padding: 0;
    display: block
}

.breadcrumbs {
    width: 1340px;
    margin: 0 auto;
    margin-top: 40px;
    margin-bottom: 16px
}

.breadcrumbs ul {
    display: flex
}

.breadcrumbs li {
    padding-left: 0
}

.breadcrumbs li::before {
    display: none
}

.breadcrumbs a {
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    color: #969696
}

.breadcrumbs span {
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    color: #969696
}

.breadcrumbs li:not(:last-child)::after {
    display: inline-block;
    content: "/";
    color: #969696;
    font-size: 16px;
    margin-left: 5px;
    margin-right: 4px
}

@media (max-width:540px) {
    .breadcrumbs li:not(:last-child)::after {
        font-size: 16px
    }
}

.breadcrumbs li:not(:last-child) {
    margin-right: 5px
}

li {
    list-style-type: none;
    align-items: center;
    position: relative;
    padding-left: 10px
}

li::before {
    content: "";
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background-color: #54b8ea;
    margin-right: 8px
}

.header-navigation__tel .btn:hover {
    transition: .3s ease all;
    color: #ff2c38;
    border-bottom: 1px dashed #ff2c38
}

.course-banner-mobile {
    display: none
}

.wrapper {
    display: flex;
    flex-direction: column;
    min-height: 100%
}

.content {
    flex: 1 0 auto
}

.footer {
    flex: 0 0 auto
}

.container {
    width: 1340px;
    margin: 0 auto
}

.header {
    position: sticky;
    background-color: #fff;
    top: 0;
    width: 100%;
    box-shadow: 0 4px 16px 0 #0000001a;
    z-index: 100
}

.header .cart-is-empty {
    border-bottom: 1px dashed rgba(29, 29, 27, .3)
}

.header .cart-is-empty:hover {
    transition: all .3s ease;
    border-bottom: 1px dashed #ff2c38
}

.header .cart-not-empty a {
    border-bottom: 1px dashed #1d1d1b
}

.header .cart-not-empty a:hover {
    transition: all .3s ease;
    border-bottom: 1px dashed #ff2c38
}

.header-wrap {
    display: flex;
    justify-content: space-between;
    width: 1340px;
    height: 104px;
    margin: 0 auto;
	position: relative;
    z-index: 11
}

.header-main {
    display: flex;
    align-items: center;
    z-index: 22;
	
}

.header-navigation {
    display: flex;
    align-items: center;
    z-index: 22
}

.header-navigation a,
.header-navigation button {
    font-size: 16px
}

.header-main__logo {
    margin-right: 40px
}

.header-main__btn button {
    margin-top: 4px
}

.header-navigation__tel {
    margin-right: 24px
}

.header-navigation__login button {
    height: 46px;
    width: 115px
}

.header-navigation__cart {
    margin-right: 24px;
    border-bottom: none
}

.header-navigation__cart .cart-not-empty {
    display: flex;
    align-items: flex-end
}

.header-navigation__cart .cart-not-empty a {
    margin-right: 8px
}

.header-navigation__cart .cart-not-empty .total-price {
    display: flex;
    flex-direction: row;
    font-style: normal;
    font-weight: 700;
    font-size: 16px
}

.header-navigation__cart .cart-not-empty .total-price span {
    margin-right: 8px
}

.header-burger {
    display: none;
    z-index: 22
}

.header-burger__menu {
    display: flex
}

.header-burger__menu li::before {
    display: none
}

.bar {
    display: block;
    width: 24px;
    height: 2px;
    background-color: #1d1d1b;
    transition: .3s
}

.bar:not(:last-child) {
    margin-bottom: 5px
}

.banner {
    position: relative;
    width: 1340px;
    height: 321px;
    margin: 0 auto;
    background: url(../../assets/img/index/banner.png) no-repeat;
    background-size: cover;
    background-position: center;
    color: #000
}

@media (max-width:540px) {
    .banner {
        background-position: right
    }
}

.banner-info-mobile {
    display: none;
    padding: 16px
}

.btn-main {
    cursor: pointer;
    padding: 13px 24px 14px 24px;
    background-color: #e30613;
    border-radius: 4px;
    font-size: 16px;
    color: #fff;
    width: 154px;
    height: 46px
}

.btn-main a {
    display: flex;
    align-items: center;
    font-size: 16px
}

a.btn-main:hover, a.btn-main:active, a.btn-main:visited {
    color: white;
}
.btn {
    cursor: pointer;
    color: #e30613;
    padding-bottom: 2px;
    margin-top: -2px;
    border-bottom: 1px dashed #e30613;
    font-size: 24px
}

.btn-transparent {
    cursor: pointer;
    padding: 13px 40px 14px 40px;
    border: 1px solid #e30613;
    border-radius: 4px;
    font-size: 24px;
    color: #000
}

.btn-main:hover {
    background-color: #ff2c38
}

.btn-main:focus {
    background-color: #b1141d
}

.btn-transparent:hover {
    border: 1px solid #ff2c38
}

.btn-transparent:focus {
    border: 1px solid #b1141d
}

a:hover {
    transition: .3s ease all;
    color: #ff2c38
}

a:focus {
    color: #b1141d
}

.feedback-menu .individual-mobile {
    display: none;
    white-space: nowrap
}

.feedback-menu__container {
    display: flex;
    flex-direction: row
}

@media (max-width:1440px) {
    .feedback-menu__container {
        -moz-column-gap: 60px;
        column-gap: 60px
    }
}

@media (max-width:1280px) {
    .feedback-menu__container {
        justify-content: center
    }
}

@media (max-width:540px) {
    .feedback-menu__container {
        -moz-column-gap: 38px;
        column-gap: 38px;
        margin-left: -2px;
        justify-content: flex-start
    }
}

.feedback-menu__left,
.feedback-menu__right {
    display: flex;
    flex-direction: row
}

@media (max-width:1440px) {

    .feedback-menu__left,
    .feedback-menu__right {
        flex-direction: column;
        row-gap: 24px
    }
}

.feedback-menu span {
    position: relative;
    margin-right: 121px;
    padding-left: 14px
}

@media (max-width:1440px) {
    .feedback-menu span {
        margin-right: 0
    }
}

.feedback-menu span::before {
    content: "";
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: #54b8ea;
    margin-right: 8px
}

@media (max-width:540px) {
    .feedback-menu span::before {
        width: 6px;
        height: 6px
    }
}

@media (max-width:767px) {
    .feedback-menu .individual-mobile {
        display: inline-block;
        white-space: nowrap
    }

    .feedback-menu .individual-desk {
        display: none
    }
}

.header-cart-mobile {
    width: 14px;
    height: 14px;
    background-color: red;
    border-radius: 50%;
    position: absolute;
    right: 0;
    bottom: 0
}

.header-cart-mobile span {
    color: #fff;
    font-size: 10px;
    position: absolute;
    top: 1.5px;
    left: 4px
}

.cart-item__btn-close img path:hover {
    fill: red;
    stroke: red;
    color: red
}

.cart-down {
    position: fixed;
    bottom: 0;
    width: 100%;
    height: 80px;
    background: #f6f6f6;
    border-top: 1px solid #d8d8d8;
    box-shadow: 0 -4px 24px rgba(0, 0, 0, .1);
    display: none;
    flex-direction: row;
    align-items: center;
    color: #1d1d1b;
    padding: 16px 8px;
    justify-content: space-between
}

.cart-down img {
    width: 40px;
    height: 40px;
    margin-right: 10px
}

.cart-down__items {
    display: flex;
    flex-direction: row
}

.cart-down__link {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 11px 24px 13px;
    width: 138px;
    height: 48px;
    background-color: #e30613;
    border-radius: 4px;
    color: #fff
}

.cart-down__count {
    font-style: normal;
    font-weight: 400;
    font-size: 14px;
    margin-bottom: 6px
}

.cart-down__count span {
    font-style: normal;
    font-weight: 400;
    font-size: 14px
}

.cart-down__price {
    font-style: normal;
    font-weight: 700;
    font-size: 14px
}

.cart-down__price span {
    font-style: normal;
    font-weight: 700;
    font-size: 14px
}

.success-close {
    cursor: pointer;
    position: absolute;
    top: 24px;
    right: 24px;
    z-index: 250
}

@media (max-width:767px) {
    .success-close {
        top: 18px;
        right: 18px;
        width: 12px;
        height: 12px
    }
}

.success-close:hover {
    stroke: #ff2c38
}

@media (max-width:1440px) {
    .breadcrumbs {
        width: 90%
    }

    .header-wrap {
        width: 90%
    }

    .banner {
        width: 100%
    }

    .container {
        width: 90%
    }

    .practice__cards {
        height: inherit
    }

    .practice-item {
        flex-direction: column;
        align-items: center;
        flex-grow: 2;
        flex-basis: 500px
    }

    .practice-item__info {
        align-items: center
    }

    .practice-item__text {
        text-align: center
    }

    .footer-wrap {
        width: 90%
    }

    .feedback-wrap {
        width: 90%
    }

    .feedback-form {
        width: inherit
    }

    .feedback__img {
        display: flex;
        align-items: center;
        justify-content: center
    }

    .feedback__img img {
    /*    width: 400px; */
    /*    height: 300px; */
	    width: 350px;
        height: 252px;	
    }

    .cart {
        width: 100%;
        margin: 0 auto
    }

    .catalog .catalog__cart {
        display: none
    }

    .catalog__content {
        width: 100%
    }

    .catalog__info {
        justify-content: space-between
    }
}

@media (max-width:1130px) {
    .catalog__info {
        flex-direction: column-reverse;
        align-items: center
    }

    .catalog__text {
        width: inherit
    }

    .catalog .course-price {
        border: 1px solid #d8d8d8;
        border-radius: 8px;
        background: linear-gradient(180deg, #fff 0, #fbfbfb 100%);
        padding: 16px;
        margin: 0 auto;
        margin-bottom: 18px;
        width: 100%
    }

    .catalog .course-price span {
        text-align: center
    }
}

@media (max-width:1280px) {
    .header-navigation {
        display: none
    }

    .header-main__btn {
        display: none
    }

    .header-burger {
        display: flex;
        align-items: center
    }

    .menu-popup {
        position: fixed;
        top: -100%;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: #fff;
        z-index: 10;
        display: flex;
        transition: .3s
    }

    .menu-popup ul {
        flex-direction: column;
        margin-top: 24px;
        margin-left: 32px
    }

    .menu-popup li {
        margin-bottom: 24px
    }

    .menu-popup.open {
        top: 104px
    }

    .hamb__field {
        padding-top: 3px
    }

    .hamb__field.active {
        padding-top: 5px
    }

    .hamb__field.active .bar:nth-child(1) {
        transform: translateY(3.5px) rotate(45deg)
    }

    .hamb__field.active .bar:nth-child(2) {
        display: none
    }

    .hamb__field.active .bar:nth-child(3) {
        transform: translateY(-3.5px) rotate(-45deg)
    }

    body.noscroll {
        overflow: hidden
    }

    .about-course__info {
        display: flex;
        flex-direction: column
    }

    .about-course__link {
        margin: 0 auto;
        align-items: center
    }

    .feedback-form {
        margin: 0 auto
    }

    .feedback__img {
        display: none
    }

    .cart .cart-table__row1 {
        display: none !important
    }

    .cart .cart-table__row {
        border-top: 1px solid #d8d8d8;
        border-bottom: none;
        display: flex;
        flex-direction: column;
        row-gap: 20px
    }

    .cart .cart-table__row .total-price {
        flex-direction: column;
        align-items: center;
        row-gap: 12px
    }

    .cart .cart-table__footer {
        border-top: 1px solid #d8d8d8
    }
}

@media (max-width:930px) {
    .courses__cards {
        flex-wrap: wrap;
        justify-content: center
    }

    .practice__cards {
        flex-wrap: wrap;
        width: 80%;
        margin: 0 auto
    }
}

@media (max-width:767px) {
    h1 {
        font-size: 30px !important
    }

    h2 {
        font-size: 28px !important
    }

    h3 {
        font-size: 26px !important
    }

    h4,
    h5,
    h6 {
        font-size: 24px !important
    }

    .img-arrow_svg {
        width: 32px;
        height: 32px
    }

    .course-banner-mobile {
        display: block
    }

    .course-banner {
        display: none
    }

    .banner {
        background-size: cover;
        height: 175px
    }

    .banner .banner__title {
        display: none
    }

    .banner a {
        display: none
    }

    .banner-info-mobile {
        display: block;
        margin-top: -4px
    }

    .banner-info-mobile .panel {
        margin-top: 24px;
        padding: 16px
    }

    .banner-info-mobile a {
        display: flex;
        align-items: center;
        color: #e30613;
        -webkit-text-decoration: 1px underline #1d1d1b;
        text-decoration: 1px underline #1d1d1b;
        text-underline-offset: 4px;
        margin-top: 8px
    }

    .banner-info-mobile a span {
        font-style: normal;
        font-weight: 700;
        font-size: 24px
    }

    .banner-info-mobile a span:hover {
        transition: all .3s ease;
        color: #ff2c38
    }
}

@media (max-width:767px) and (max-width:540px) {
    .banner-info-mobile a span {
        font-size: 20px
    }
}

@media (max-width:767px) {
    .banner-info-mobile a img {
        width: 32px;
        height: 32px
    }

    .banner-info-mobile a:hover {
        color: #ff2c38;
        -webkit-text-decoration: 1px underline #ff2c38;
        text-decoration: 1px underline #ff2c38
    }

    .banner-info-mobile a span {
        margin-right: 10px;
        color: #1d1d1b;
        -webkit-text-decoration-color: #1d1d1b;
        text-decoration-color: #1d1d1b
    }

    .courses {
        margin-top: 6px
    }

    .courses__cards {
        margin-top: 6px
    }

    .courses__title {
        display: none
    }

    .courses .courses-item {
        height: 132px
    }

    .courses .courses-item__logo img {
        height: 59px
    }

    .courses .courses-item:nth-child(2) .courses-item__logo img {
        height: 28px
    }

    .courses .courses-item:nth-child(3) .courses-item__logo img {
        height: 39px
    }

    .practice {
        margin-top: 24px
    }

    .practice__title {
        font-size: 32px;
        margin-bottom: 22px
    }

    .practice .practice-item {
        gap: 10px
    }

    .practice .practice-item__text {
        font-size: 24px;
        margin-bottom: 4px
    }

    .practice .practice-item__more {
        font-weight: 400;
        font-size: 24px;
        text-underline-offset: 4px
    }

    .practice .practice-item .practice-img {
        min-width: inherit;
        min-height: inherit
    }

    .main-info__banner {
        background-size: cover;
        height: 120px
    }

    .catalog-courses .column-block__title {
        margin-bottom: 32px
    }

    .catalog-courses .column-block__item {
        display: flex;
        flex-direction: column
    }

    .catalog-courses .column-block__item:not(:last-child) {
        margin-bottom: 40px
    }

    .catalog-courses .name-course {
        display: flex;
        flex-direction: column-reverse;
        align-items: center;
        row-gap: 8px;
        margin-bottom: 8px
    }

    .catalog-courses .name-course span {
        text-align: center
    }

    .catalog-courses .info-course {
        display: flex;
        flex-direction: column;
        align-items: center;
        row-gap: 4px
    }

    .feedback {
        margin-top: 24px;
        padding: 22px 16px
    }

    .feedback .feedback-form__title {
        font-style: normal;
        font-weight: 700;
        font-size: 28px
    }

    .feedback .feedback-form__subtitle {
        font-style: normal;
        font-weight: 400;
        font-size: 16px
    }

    .feedback .feedback-form__form {
        row-gap: 16px;
        display: flex;
        flex-direction: column
    }

    .feedback .feedback-form__comment textarea.input {
        height: 126px
    }
}

@media (max-width:540px) {
    .course-banner-mobile img {
        height: 101px;
        width: 100%;
        -o-object-fit: cover;
        object-fit: cover
    }

    .breadcrumbs {
        margin-top: 12px;
        margin-bottom: 8px
    }

    .breadcrumbs a,
    .breadcrumbs span {
        font-style: normal;
        font-weight: 400;
        font-size: 12px
    }

    .about-course {
        margin-bottom: 26px
    }

    .about-course__link img {
        display: none
    }

    .about-course__link button {
        width: 100%;
        margin-right: 13px
    }

    .menu-popup.open {
        top: 60px
    }

    .header {
        height: 60px
    }

    .header .header-burger__menu li {
        padding-left: 18px
    }

    .header .header-wrap {
        height: 60px
    }

    .header .header-main {
        width: 115px
    }

    .header .header-main__logo {
        margin-right: 0
    }

    .header .header-main a {
        min-width: 115px;
        min-height: 28px
    }

    .header .header-main img {
        min-width: 115px;
        min-height: 28px
    }

    .header ul {
        display: flex;
        align-items: center
    }

    .header li {
        display: flex;
        align-items: center
    }

    .header a {
        min-width: 24px;
        min-height: 24px
    }

    .main-info__banner {
        height: 82.5px
    }

    .practice__cards {
        width: inherit
    }

    .feedback .feedback-wrap {
        margin: 0;
        width: 100%
    }

    .feedback .feedback-form__bottom button {
        width: 100% !important
    }

    .feedback .feedback-menu a {
        font-style: normal;
        font-weight: 400;
        font-size: 14px
    }

    .footer .footer-wrap {
        flex-direction: column;
        row-gap: 24px
    }

    .footer .footer-info {
        grid-template-columns: 1fr
    }

    .footer .footer-info .address {
        order: 1;
        margin-bottom: 10px
    }

    .footer .footer-info .telephone {
        order: 3
    }

    .footer .footer-info .name {
        order: 2;
        margin-bottom: 16px
    }

    .footer .footer-info .email {
        order: 4;
        margin: 5px 0
    }

    .footer .aviterica {
        margin-top: 24px
    }

    li::before {
        top: 8px;
        transform: inherit
    }

    .practice__cards a {
        width: 100%;
        flex-basis: inherit
    }

    .practice-item {
        flex-grow: inherit;
        flex-basis: inherit;
        width: 100%;
        padding: 16px
    }

    .individual-img,
    .practice-img {
        width: 140px;
        height: 98px
    }

    .feedback .feedback-content {
        display: block
    }

    .feedback .feedback-form__form {
        display: flex;
        flex-direction: column
    }

    .feedback .feedback-form__bottom {
        flex-direction: column;
        row-gap: 18px
    }

    .feedback .feedback-form__agreement {
        margin-left: 0
    }

    .feedback .feedback-form button {
        width: 100%
    }

    .cart .cart-table__row {
        align-items: flex-start;
        row-gap: 12px
    }

    .cart .cart-table__row .total-price {
        align-items: flex-start
    }

    .cart .cart-table__footer {
        align-items: flex-start
    }

    .cart .cart-table__footer button {
        width: 100%
    }

    .catalog-courses .column-block__title {
        margin-bottom: 10px
    }

    .catalog-courses .column-block__item {
        align-items: flex-start
    }

    .catalog-courses .column-block__item:not(:last-child) {
        margin-bottom: 18px
    }

    .catalog-courses .name-course {
        align-items: flex-start;
        row-gap: 0
    }

    .catalog-courses .name-course span {
        text-align: left
    }

    .catalog-courses .name-course .special {
        margin-left: 0
    }

    .catalog-courses .info-course {
        align-items: flex-start
    }

    .catalog .course-price span {
        text-align: left;
        font-size: 20px
    }

    .catalog .course-price .price {
        font-size: 28px
    }

    .footer {
        padding: 16px
    }

    .footer .footer-wrap {
        margin: 0
    }
}

@media (max-width:322px) {
    .feedback .feedback-form__comment textarea.input {
        width: 288px;
        height: 126px
    }

    .feedback .feedback-form input {
        width: 288px
    }
}

@media (max-width:767px) and (max-height:910px) {
    .cart-down {
        display: flex
    }
}

/*# sourceMappingURL=app.min.css.map */