/* p:has(> br:only-child) { */
p:has(> br:only-child:not(.workable)) {
    display: none;
}

p span[data-font-size] {
    font-family: inherit !important;
    font-size: inherit !important;
    color: inherit !important;
    all: unset;
}

.crse_mainback_img {
    width: 90%;
    margin-top: 30px;
    margin-bottom: 40px;
    border-radius: 18px;
}
.crse_mainback_img-mob {
    width: 100%;
    display: none;
}

.crse_container-mainback {
    max-width: 1440px;
}

@media (max-width: 770px) {
    .crse_container-mainback {
        padding: 0;
    }
    .crse_mainback_img {
        width: 100%;
        margin-top: 15px;
        margin-bottom: 35px;
    }
    .crse_mainback_img-desktop {
        display: none;
    }
    .crse_mainback_img-mob {
        display: block;
    }
}

.crse_blocks {
    display: flex;
    align-items: flex-start; 
    gap: 130px;
    flex-direction: row;
}
main {
    flex: 1;
    min-width: 0;
}
.crse_aside {
    position: sticky;
    top: 150px;
    width: 255px;
    /* height: fit-content; */
}

@media (max-width: 950px) {
    .crse_blocks {
        gap: 80px;
    }
}
@media (max-width: 770px) {
    .crse_aside {
        display: none;
    }
}


.crse_aside ul  {
    list-style: none;
}
.crse_aside ul li  {
    line-height: 100%;
    font-size: 16px;
    color: #000000;
    font-weight: 400;
    margin-bottom: 15px;
    cursor: pointer;
}
.crse_aside ul li:last-child  {
    margin-bottom: 30px;
}
.crse_aside ul li.active  {
    color: #3292FA;
    transition: color 0.5s ease;
}

.crse_aside__compare {
    line-height: 100%;
    font-size: 19px;
    color: #000000;
    font-weight: 400;
}
.crse_aside__compare span, .crse_aside__compare-icon {
    vertical-align: middle;
    cursor: pointer;
}
.crse_aside__compare-icon {
    margin-left: -5px;
    margin-bottom: -5px;
    padding-right: 1px;
}

.crse_section {
    margin-bottom: 80px;
    position: relative;
}

.crse_section[id] {
    scroll-margin-top: 100px; /* Отступ при скролле по якорю */
    scroll-snap-margin-top: 100px; /* Для Safari */
}


.organizers-visible .container-wrapper {
    background-color: #3393FB;
    transition: background-color 1.5s ease;
    padding: 65px 0 50px;
    margin-top: 10px;
}
.organizers-visible .crse_aside ul li.active {
    color: #FFFFFF;
    transition: color 0.5s ease;
}



.crse_caption {
    line-height: 100%;
    font-size: 45px;
    color: #000000;
    font-weight: 400;
    padding-bottom: 35px;
}

@media (max-width: 770px) {
    .crse_section {
        margin-bottom: 60px;
    }
    .crse_caption {
        font-size: 30px;
        padding-bottom: 25px;
    }
    .organizers-visible .container-wrapper {
        padding: 45px 0 35px;
    }
}

/*############## BLOCK START crse_main ##############*/
.crse_main-title {
    line-height: 100%;
    font-size: 50px;
    color: #000000;
    font-weight: 400;
    margin-bottom: 20px;
}
.crse_main-filters {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 5px;
    margin-bottom: 45px;
    flex-wrap: wrap;
}
.crse_main-filter--item {
    vertical-align: middle;
    line-height: 100%;
    font-size: 16px;
    color: #000000;
    font-weight: 400;
    padding: 2px;
    border: 1px solid #000000;
    border-radius: 50px;
    white-space: nowrap;
}
.crse_main-filter--item img {
    vertical-align: middle;
    margin-right: -10px;
    max-width: 28px;
}
.crse_main-filter--item span {
    padding: 6px 12px 6px 16px;
    display: inline-block;
    vertical-align: middle;
}

.crse_main-hint {
    background-color: #17D7FF;
    line-height: 110%;
    font-size: 20px;
    color: #FFFFFF;
    font-weight: 400;
    border-radius: 12px;
    padding: 20px;
    position: relative;
}
.crse_main-hint span {
    font-weight: 700;
}
.hint-close {
    position: absolute;
    right: -17px;
    top: -17px;
    background-color: #FFFFFF;
    color: #17D7FF;
    border-radius: 50px;
    font-size: 26px;
    width: 34px;
    height: 34px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

@media (max-width: 770px) {
    .crse_main-title {
        font-size: 30px;
        margin-bottom: 15px;
    }
    .crse_main-filter--item {
        font-size: 13px;
    }
    .crse_main-filter--item span {
        padding: 5px 12px 5px 16px;
    }
    .crse_main-filter--item img {
        width: 22px;
        margin-right: -10px;
    }
    .crse_main-filters {
        margin-bottom: 30px;
    }
    .crse_main-hint {
        font-size: 16px;
    }
    .hint-close {
        position: absolute;
        right: -10px;
        top: -15px;
        background-color: #FFFFFF;
        color: #17D7FF;
        border-radius: 50px;
        font-size: 20px;
        width: 30px;
        height: 30px;
        display: flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;
    }
}

.crse_main-about {
    display: flex;
    flex-direction: row;
    gap: 50px;
    align-items: flex-start;
    margin-top: 50px;
}
.crse_main-about--image {
    width: 40%;
    text-align: center;
}
.crse_main-about--img {
    width: 60%;
    object-fit: fill;
}
.crse_main-about--texts {
    width: 60%;
}
.crse_main-about--text {
    line-height: 100%;
    font-size: 20px;
    color: #000000;
    font-weight: 400;
}
.crse_main-about--text:first-child {
    padding-bottom: 30px;
}

@media (max-width: 770px) {
    .crse_main-about {
        gap: 25px;
        margin-top: 30px;
    }
    .crse_main-about--img {
        width: 70%;
    }
    .crse_main-about--text {
        font-size: 16px;
    }
    .crse_main-about--text:first-child {
        padding-bottom: 20px;
    }
}
/*############## BLOCK END crse_main ##############*/


/*############## BLOCK START crse_sayAbout ##############*/
.crse_sayAbout-text {
    line-height: 120%;
    font-size: 24px;
    color: #000000;
    font-weight: 400;
}

@media (max-width: 770px) {
    .crse_sayAbout-text {
        font-size: 16px;
    }
}
/*############## BLOCK END crse_sayAbout ##############*/


/*############## BLOCK START crse_who ##############*/
.crse_who-points {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    gap: 40px;
}
.crse_who-point {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 30px;
}
.crse_who-point--img {
    width: 60px;
}
.crse_who-point--text {
    line-height: 110%;
    font-size: 22px;
    color: #000000;
    font-weight: 400;
}
.crse_who-point--text span {
    font-weight: 700;
}

@media (max-width: 900px) {
    .crse_who-points {
        flex-direction: column;
        gap: 20px;
    }
    .crse_who-point {
        flex-direction: row;
        align-items: center;
        gap: 30px;
    }
    .crse_who-point--img {
        width: 50px;
    }
    .crse_who-point--text {
        font-size: 18px;
    }
}
/*############## BLOCK END crse_who ##############*/


/*############## BLOCK START crse_longFormat ##############*/
.crse_longFormat-box {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-start;
    border: 2px solid #003C69;
    border-radius: 10px;
    padding: 25px;
}
.crse_longFormat1 {
    margin-bottom: 15px;
}

.crse_longFormat-item:nth-of-type(1) {
    line-height: 100%;
    font-size: 43px;
    color: #003C69;
    font-weight: 400;
    width: 300px;
}
.crse_longFormat-item:nth-of-type(2) {
    line-height: 115%;
    font-size: 20px;
    color: #003C69;
    font-weight: 400;
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 25px;
}

.crse_longFormat2 .crse_longFormat-box {
    background-color: #003C69;
}
.crse_longFormat2 .crse_longFormat-box .crse_longFormat-item {
    color: #FFFFFF;
}

@media (max-width: 950px) {
    .crse_longFormat-box {
        flex-direction: column;
        border: 1px solid #003C69;
        gap: 25px;
        border-radius: 5px;
        padding: 20px 15px;
    }
    .crse_longFormat1 {
        margin-bottom: 10px;
    }

    .crse_longFormat-item:nth-of-type(1) {
        font-size: 24px;
        width: inherit;
    }
    .crse_longFormat-item:nth-of-type(2) {
        font-size: 16px;
        gap: 15px;
    }
}
/*############## BLOCK END crse_longFormat ##############*/


/*############## BLOCK START crse_education ##############*/

.crse_education-image {
    text-align: center;
}
.crse_education-img {
    max-width: 350px;
    margin-bottom: 20px;
}
.crse_education-texts {
    display: flex;
    flex-direction: column;
    gap: 30px;

    line-height: 120%;
    font-size: 20px;
    color: #000000;
    font-weight: 400;
}

@media (max-width: 770px) {
    .crse_education-img {
        max-width: 200px;
        margin-bottom: 10px;
    }
    .crse_education-texts {
        gap: 20px;
        font-size: 16px;
    }
}
/*############## BLOCK END crse_education ##############*/


/*############## BLOCK START crse_special ##############*/
.crse_special-img {
    width: 100%;
    margin-bottom: 50px;
    border-radius: 10px;
}
.crse_special-sliderPhotos {
    position: relative;
}
.crse_special-sliderPhotos__arrows {
    position: absolute;
    right: 0;
    bottom: 3px;
    z-index: 1;
}
.crse_special-sliderPhotos__prev {
    height: 30px;
    cursor: pointer;
}
.crse_special-sliderPhotos__next {
    margin-left: 17px;
    height: 30px;
    cursor: pointer;
}
.crse_special-texts-wrap {
    display: flex;
    flex-direction: column;
    gap: 30px;

    line-height: 120%;
    font-size: 20px;
    color: #000000;
    font-weight: 400;
}
.crse_special-texts {
    gap: 30px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}
.crse_special-bullet {
    width: 26px;
}
.crse_special-text {
    line-height: 120%;
    font-size: 20px;
    color: #000000;
    font-weight: 400;
}

@media (max-width: 770px) {
    .crse_special-sliderPhotos {
        margin-bottom: 15px;
    }
    .crse_special-sliderPhotos__arrows {
        position: static;
        text-align: right;
    }
    .crse_special-sliderPhotos__prev, .crse_special-sliderPhotos__next {
        height: 30px;
    }
    .crse_special-img {
        margin-bottom: 30px;
    }
    .crse_special-texts-wrap {
        display: flex;
        flex-direction: column;
        gap: 20px;

        font-size: 16px;
    }
    .crse_special-bullet {
        display: none;
    }
    .crse_special-text {
        font-size: 16px;
    }
}
/*############## BLOCK END crse_special ##############*/


/*############## BLOCK START crse_teachers ##############*/
.crse_teachers-image {
    text-align: center;
}
.crse_teachers-img {
    max-width: 350px;
    margin-bottom: 20px;
}
.crse_teachers-texts {
    display: flex;
    flex-direction: column;
    gap: 30px;

    line-height: 120%;
    font-size: 20px;
    color: #000000;
    font-weight: 400;
}

@media (max-width: 770px) {
    .crse_teachers-img {
        max-width: 200px;
        margin-bottom: 10px;
    }
    .crse_teachers-texts {
        gap: 20px;
        font-size: 16px;
    }
}
/*############## BLOCK END crse_teachers ##############*/


/*############## BLOCK START crse_document ##############*/
.crse_document-item {
    border: 1px solid #17D7FF;
    border-radius: 10px;
    
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    gap: 30px;
}
.crse_document-item__text {
    line-height: 120%;
    font-size: 20px;
    color: #17D7FF;
    font-weight: 400;
    padding: 20px 30px;
}
.crse_document-item__img {
    padding-right: 60px;
    padding-top: 8px;
    padding-bottom: 8px;
}
@media (max-width: 900px) {
    .crse_document-item {
        border-radius: 6px;
    }
    .crse_document-item__text {
        font-size: 16px;
        padding: 25px 20px;
    }
    .crse_document-item__img {
        padding-right: 0;
        padding-top: 8px;
        padding-bottom: 8px;
        padding-right: 20px;

    }
}
/*############## BLOCK END crse_document ##############*/


/*############## BLOCK START crse_getIn ##############*/
.crse_getIn-image {
    text-align: center;
}
.crse_getIn-img {
    max-width: 350px;
    margin-bottom: 20px;
}
.crse_getIn-label {
    line-height: 120%;
    font-size: 24px;
    color: #000000;
    font-weight: 400;
    margin-bottom: 25px;
}
.crse_getIn-label:has(p) {
    display: flex;
    flex-direction: column;
    gap: 30px;
}
.crse_getIn-items {
    display: flex;
    flex-wrap: wrap;
    gap: 35px;
}
.crse_getIn-item {
    flex: 1;
    min-width: 250px;
    max-width: 320px;
}
.crse_getIn-item span {
    line-height: 120%;
    font-size: 20px;
    color: #000000;
    font-weight: 700;
    display: block;
    padding-bottom: 8px;
}
.crse_getIn-item p {
    line-height: 120%;
    font-size: 20px;
    color: #000000;
    font-weight: 400;
}
.crse_getIn-text {
    line-height: 120%;
    font-size: 20px;
    color: #222222;
    font-weight: 400;
    padding-top: 60px;
}

@media (max-width: 770px) {
    .crse_getIn-img {
        max-width: 200px;
        margin-bottom: 10px;
    }
    .crse_getIn-label {
        font-size: 17px;
        margin-bottom: 20px;
    }
    .crse_getIn-label:has(p) {
        gap: 20px;
    }
    .crse_getIn-item span {
        font-size: 16px;
        padding-bottom: 5px;
    }
    .crse_getIn-item p {
        font-size: 16px;
    }
    .crse_getIn-text {
        font-size: 16px;
        padding-top: 30px;
    }
    .crse_getIn-items {
        gap: 25px;
    }
}
/*############## BLOCK END crse_getIn ##############*/


/*############## BLOCK START crse_moment ##############*/
.crse_moment-box {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-start;
    border: 2px solid #003C69;
    border-radius: 10px;
    padding: 25px;
}

.crse_moment-item:nth-of-type(1) {
    line-height: 100%;
    font-size: 40px;
    color: #003C69;
    font-weight: 400;
    width: 300px;
}
.crse_moment-item:nth-of-type(2) {
    line-height: 115%;
    font-size: 20px;
    color: #003C69;
    font-weight: 400;
    flex: 1;
}
.crse_moment-item:nth-of-type(2):has(p) {
    display: flex;
    flex-direction: column;
    gap: 25px;
}

.crse_moment .crse_moment-box {
    background-color: #003C69;
}
.crse_moment .crse_moment-box .crse_moment-item {
    color: #FFFFFF;
}

@media (max-width: 1050px) {
    .crse_moment-box {
        flex-direction: column;
        border: 1px solid #003C69;
        gap: 25px;
        border-radius: 5px;
        padding: 20px 15px;
    }

    .crse_moment-item:nth-of-type(1) {
        font-size: 24px;
        width: inherit;
    }
    .crse_moment-item:nth-of-type(2) {
        font-size: 16px;
    }
    .crse_moment-item:nth-of-type(2):has(p) {
        gap: 15px;
    }
}
/*############## BLOCK END crse_moment ##############*/


/*############## BLOCK START crse_price ##############*/
.crse_price-box {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    gap: 60px;
}
.crse_price-item__1 {
    width: 45%;
    line-height: 120%;
    font-size: clamp(1.875rem, 1.2868rem + 2.1412vw, 2.7375rem);
    color: #003C69;
    font-weight: 400;
    text-align: center;
}
.crse_price-item__2 {
    line-height: 120%;
    font-size: 20px;
    color: #323232;
    font-weight: 400;
    width: 55%;
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    gap: 20px
}
.crse_price-img {
    width: 100%;
}

@media (max-width: 950px) {
    .crse_price-box {
        flex-direction: column;
        justify-content: center;
        align-items: flex-start;
        gap: 40px;
    }
    .crse_price-item__1 {
        width: 100%;
        margin-top: 15px;
        text-align: left;
        align-self: center;
    }
    .crse_price-item__2 {
        font-size: 16px;
        width: 100%;
    }
    .crse_price-img {
        width: 100%;
        max-width: 270px;
    }
}
/*############## BLOCK END crse_price ##############*/


/*############## BLOCK START crse_graduates ##############*/
.crse_graduates-slider {
    width: 100%;
    max-width: 755px;
}
.crse_graduates-item {
}
.crse_graduates-item__name {
    line-height: 100%;
    font-size: 20px;
    color: #000000;
    font-weight: 700;
    display: block;
    padding-bottom: 8px;
    margin-top: 5px;
}
.crse_graduates-item__job {
    line-height: 100%;
    font-size: 20px;
    color: #000000;
    font-weight: 400;
    display: block;
    padding-bottom: 30px;
}
.crse_graduates-item__text {
    line-height: 110%;
    font-size: 20px;
    color: #000000;
    font-weight: 400;
}
.crse_graduates-slider__arrows {
    position: absolute;
    right: 0; 
    bottom: -50px;
}
.crse_graduates-slider__prev {
    height: 30px;
    cursor: pointer;
}
.crse_graduates-slider__next {
    margin-left: 10px;
    height: 30px;
    cursor: pointer;
}

.crse_graduates-item__circle {
    width: 13%;
}
.crse_graduates-item__circle3 {
    margin-left: 40px;
}
.crse_graduates-item__circle1, .crse_graduates-item__circle2 {
    float: left;
}
.crse_graduates-item__circle5 {
    float: right;
}

@media (max-width: 950px) {
    .crse_graduates-item__name {
        padding-bottom: 6px;
    }
    .crse_graduates-item__job {
        font-size: 18px;
        padding-bottom: 25px;
    }
    .crse_graduates-slider__arrows {
        position: absolute;
        right: inherit; 
        left: 0;
        bottom: -42px;
    }
    .crse_graduates-item__text {
        font-size: 18px;
    }
    .crse_graduates-slider__prev {
        height: 25px;
    }
    .crse_graduates-slider__next {
        margin-left: 15px;
        height: 25px;
    }
}
/*############## BLOCK END crse_graduates ##############*/


/*############## BLOCK START crse_organizers ##############*/
.crse_organizers {
    max-width: 755px;
}
.crse_organizers .crse_caption {
    color: #FFFFFF;
}
.crse_organizers-quotters {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    gap: 25px;
}
.crse_organizers-quot {
}
.crse_organizers-text {
    line-height: 120%;
    font-size: 20px;
    color: #FFFFFF;
    font-weight: 400;
}

.crse_organizers-author {
    margin-top: 30px;
    margin-left: 60px;
    display: flex;
    flex-direction: row;
    gap: 15px;
    align-items: flex-start;
}
.crse_organizers-author__photo {
    max-width: 45px;
}
.crse_organizers-author__credentials {
    max-width: 220px;
}
.crse_organizers-author__name {
    line-height: 100%;
    font-size: 15px;
    color: #FFFFFF;
    font-weight: 700;
    padding-bottom: 5px;
}
.crse_organizers-author__job {
    line-height: 100%;
    font-size: 14px;
    color: #FFFFFF;
    font-weight: 400;
}
@media (max-width: 950px) {
    .crse_organizers-quotters {
        flex-direction: column;
        gap: 12px;
    }
    .crse_organizers-text {
        font-size: 16px;
    }
    .crse_organizers-author {
        margin-top: 25px;
        margin-left: 0;
        gap: 15px;
    }
}
/*############## BLOCK END crse_organizers ##############*/


/*############## BLOCK START crse_news ##############*/
.crse_news {
    margin-bottom: 0;
    max-width: 755px;
}
.crse_news-caption {
    line-height: 100%;
    font-size: 24px;
    color: #FFFFFF;
    font-weight: 400;
    width: 70%;
    margin-bottom: 30px;
}
.crse_news-texts-wrap {
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.crse_news-texts {
    gap: 15px;
    display: flex;
    flex-direction: row;
    align-items: center;
}
.crse_news-bullet {
    width: 26px;
}
.crse_news-text {
    line-height: 100%;
    font-size: 20px;
    color: #FFFFFF !important;
    font-weight: 400;
}

@media (max-width: 770px) {
    .crse_news-caption {
        width: 80%;
        font-size: 20px;
    }
    .crse_news-texts-wrap {
        gap: 15px;
    }
    .crse_news-text {
        font-size: 16px;
    }
}

/*############## BLOCK END crse_news ##############*/


.organizers-visible .crse_getIn-label, .organizers-visible .crse_caption, .organizers-visible .crse_price-item, .organizers-visible .crse_caption {
    color: #FFFFFF;
}
.organizers-visible .crse_graduates-item__name, .organizers-visible .crse_graduates-item__job, .organizers-visible .crse_graduates-item__text {
    color: #FFFFFF;
}




footer {
    padding-top: 40px !important;
}
.crse_footer__share-wrap {
    display: flex;
    justify-content: flex-end;
    margin-top: 30px;
    margin-right: 78px;
}
@media (max-width: 770px) {
    footer {
        padding-top: 25px !important;
        flex-direction: row !important;
    }
    .crse_footer__share-wrap {
        display: flex;
        justify-content: flex-start;
        margin-right: 0;
    }
}


.crse_main-img_container {
    position: relative;
    display: inline-block;
}
.crse_mainback_img {
    height: auto;
    position: static;
    transition: opacity 0.7s ease-in-out;
}
.cover_image_first {
    opacity: 1;
}
.cover_image_second {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
}

.crse_main-img_container:hover .cover_image_first {
  opacity: 0;
}
.crse_main-img_container:hover .cover_image_second {
  opacity: 1;
}

.crse_price-item__1 {
    position: relative;
    width: 300px;
    height: 300px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.point {
    position: absolute;
    width: 7px;
    height: 7px;
    background-color: #0A3D62;
    border-radius: 50%;
    transform: translate(var(--x), var(--y));
}

@keyframes pulse {
    0%, 100% {
        transform: translate(var(--x), var(--y)) scale(1);
        opacity: 1;
    }
    50% {
        transform: translate(var(--x), var(--y)) scale(1.6);
        opacity: 1;
    }
}