

/* Start:/local/templates/project72/components/bitrix/news/prof.obuchenie/bitrix/news.detail/detail.courses/style.css?178852607367028*/
:root {
    --blue: #488efb;
    --ink: #303443;
    --pale: #eff6ff;
    --documents-blue: #488efb;
    --documents-background: #363a48;
    --documents-side-background: #141b17;
    --documents-white: #ffffff;
    --documents-frame-width: 1170px;
    --documents-frame-height: 433px;
    --documents-slide-width: 375px;
    --documents-slide-gap: 13px;
    --documents-font-heading: "Open Sans", Arial, sans-serif;
    --documents-font-label: "Open Sans", Arial, sans-serif;
    --background: #303443;
    --card: #454956;
    --blue: #488efb;
    --white: #fff;
    --muted: rgb(255 255 255 / 60%);
    --field: rgb(255 255 255 / 5%);
    --field-border: rgb(255 255 255 / 30%);
    --delivery-ink: #303443;
    --delivery-white: #fff;
    --delivery-font: "OpenSans", sans-serif;
    --faq-background: #000;
    --faq-ink: #303443;
    --faq-blue: #488efb;
    --faq-white: #fff;
    --faq-font: "OpenSans", sans-serif;
}

@media(max-width: 768px) {
    .s-course-detail .scd-left .scd-info.scd-info-center .si-img {
        width: 100%;
        height: 250px;
        margin-left: 0;
        margin-right: 0;
    }
}

@media(max-width: 520px) {
    .s-course-detail .scd-left .scd-info.scd-info-center .si-img {
        height: 220px;
    }
}

@media(max-width: 320px) {
    .s-course-detail .scd-left .scd-info.scd-info-center .si-img {
        height: 180px;
    }
}


/* Новые Стили для главной */

/* ================= HERO + PAYMENT (BEM с вложенностью) ================= */
.hero {
    background: url(/local/templates/project72/components/bitrix/news/prof.obuchenie/bitrix/news.detail/detail.courses/image/image_bg.svg) no-repeat;
    background-size: 100%;
    background-position-y: -18px;
    height: 607px;
    /* Фиксированная высота */
    padding: 60px 0 0;
    /* Убираем нижний паддинг */
    position: relative;
    overflow: visible;
    /* Чтобы карточка была видна за пределами блока */
    margin-bottom: 185px;
}

/* Вложенность от .hero */
.hero {
    .my-container {
        position: relative;
        z-index: 10;
        height: 100%;
        /* Заполняет всю высоту 607px */
    }

    .hero__inner {
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        gap: 40px;
        /* margin-bottom убран, так как карточка теперь абсолютная */
    }

    .hero__content {
        max-width: 550px;
        padding-top: 0px;
    }

    .hero__logo {
        display: flex;
        align-items: center;
        gap: 10px;
        margin-bottom: 35px;

        svg {
            width: 210px;
            height: 38px;
        }

        span {
            color: #fff;
            font-size: 32px;
            font-weight: 800;
            letter-spacing: 2px;
        }
    }

    .hero__title {
        color: #fff;
        font-size: 40px;
        line-height: 125%;
        font-weight: 700;
        margin-bottom: 25px;
    }

    .hero__badges {
        display: flex;
        gap: 18px;
        margin-bottom: 29px;
    }

    .hero__badge {
        background: rgba(255, 255, 255, 0.15);
        color: #fff;
        padding: 10px 20px;
        border-radius: 10px;
        font-size: 20px;
        line-height: 27px;
        font-weight: 600;

        &--price {
            background: rgba(255, 255, 255, 0.2);
        }
    }

    .hero__button {
        background: #fff;
        color: #2f303a;
        font-size: 17px;
        font-weight: 700;
        padding: 15px 35px;
        border: none;
        border-radius: 30px;
        box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
        transition: transform 0.2s, box-shadow 0.2s;
        cursor: pointer;

        &:hover {
            /* transform: translateY(-2px); */
            box-shadow: 0 6px 20px rgba(0, 0, 0, 0.2);
        }
    }

    .hero__visual {
        position: relative;
        width: 550px;
        flex-shrink: 0;
    }

    .hero__image {
        width: 100%;
        height: 351px;
        object-fit: cover;
        border-radius: 20px;
        box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
        display: block;
    }

    .hero__sphere {
        position: absolute;
        bottom: -166px;
        right: -157px;
        width: 363px;
        height: 378px;

        img {
            width: 100%;
            height: 100%;
            object-fit: contain;
            display: block;
            filter: drop-shadow(0 10px 20px rgba(0, 0, 0, 0.3));
        }
    }

    /* Карточка оплаты внутри hero - АБСОЛЮТНАЯ */
    .payment-card {
        position: absolute;
        top: calc(100% - 90px);
        /* Сдвиг вниз на 100px от нижней границы .hero */
        left: 50%;
        transform: translateX(-50%);
        width: calc(100%);
        max-width: 1230px;
        max-height: 166px;
        background: #fff;
        border-radius: 20px;
        padding: 35px 65px;
        box-shadow: 0 10px 40px rgba(0, 0, 0, 0.08);
        z-index: 20;
        /* Чтобы карточка была поверх фона */
    }

    .payment-card__header {
        display: flex;
        align-items: center;
        gap: 27px;
        margin-bottom: 27px;
    }

    .payment-card__title {
        font-size: 24px;
        font-weight: 800;
        color: #2f303a;
        margin: 0;
    }

    .payment-card__link {
        display: flex;
        align-items: center;
        gap: 8px;
        color: #4a90e2;
        font-weight: 600;
        font-size: 15px;

        svg {
            width: 27px;
            height: 13px;
            fill: #488EFB;
        }
    }

    .payment-card__desc {
        font-size: 16px;
        color: #666;
        line-height: 1.6;
        border-top: 1px solid #488EFB;
        padding-top: 20px;
    }
}

/* ================= АДАПТИВНОСТЬ ================= */
@media (max-width: 1100px) {
    .hero {
        height: auto;
        /* На планшете высота автоматическая */
        padding-bottom: 150px;
        /* Добавляем место для абсолютной карточки */
    }

    .hero .hero__inner {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }

    .hero .hero__content {
        max-width: 100%;
    }

    .hero .hero__badges {
        justify-content: center;
    }

    .hero .hero__visual {
        width: 100%;
        max-width: 550px;
        margin-top: 40px;
    }

    .hero .payment-card {
        position: static;
        /* На планшете карточка возвращается в поток */
        transform: none;
        width: 100%;
        max-width: 100%;
        margin-top: 60px;
    }

    .header__nav {
        display: none;
    }

    .header__burger {
        display: block;
    }

    .header__mobile-menu--open {
        display: flex;
    }
}

@media (max-width: 768px) {
    .header__contacts {
        display: none;
    }

    .header__search {
        width: 100%;
    }

    .header__bottom {
        flex-direction: column;
        align-items: stretch;
        gap: 15px;
    }

    .header__tags {
        flex-wrap: wrap;
        justify-content: center;
    }

    .hero {
        height: auto;
        padding-bottom: 120px;
    }

    .hero .hero__title {
        font-size: 28px;
    }

    .hero .hero__logo svg {
        width: 150px;
        height: 28px;
    }

    .hero .hero__badges {
        flex-direction: column;
        align-items: center;
    }

    .hero .hero__badge {
        width: 100%;
        text-align: center;
    }

    .hero .hero__visual {
        max-width: 100%;
    }

    .hero .hero__image {
        height: 250px;
    }

    .hero .hero__sphere {
        width: 120px;
        height: 120px;
        right: -10px;
        bottom: -20px;
    }

    .hero .payment-card {
        padding: 25px;
        margin-top: 40px;
    }

    .hero .payment-card__header {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
        margin-bottom: 20px;
    }
}

.education-card {
    display: flex;
    justify-content: space-between;
    width: 100%;
    min-height: 265px;
    overflow: hidden;
    border-radius: 20px;
    background: #ffffff;
    margin-bottom: 130px;
}

.education-card__content {
    order: 1;
    padding: 39px 30px 30px 60px;
}

.education-card__media {
    order: 2;
    min-width: 0;
    line-height: 0;
}

.education-card__image {
    display: block;
    width: 100%;
    height: 265px;
    object-fit: cover;
}

.education-card__title,
.education-card__subtitle,
.education-card__description {
    margin: 0;
}

.education-card__title {
    max-width: 560px;
    font-size: 32px;
    font-weight: 500;
    line-height: 44px;
    color: #303443
}

.education-card__title-accent {
    color: #488EFB;
}

.education-card__subtitle {
    margin-top: 20px;
    font-size: 24px;
    font-weight: 400;
    line-height: 33px;
    color: #303443;
}

.education-card__description {
    max-width: 560px;
    margin-top: 8px;
    font-weight: 400;
    font-size: 20px;
    line-height: 27px;
    color: #303443;

}

@media (max-width: 1023px) {
    .education-card {
        display: flex;
        flex-direction: column;
        max-width: 688px;
        min-height: 590px;
    }

    .education-card__media {
        order: 1;
    }

    .education-card__content {
        order: 2;
        padding: 39px 30px 48px;
    }

    .education-card__image {
        height: auto;
        aspect-ratio: 688 / 338;
        object-fit: cover;
    }

    .education-card__title {
        max-width: none;
    }

    .education-card__description {
        max-width: none;
        margin-top: 4px;
    }
}

@media (max-width: 767px) {
    .education-card {
        max-width: 386px;
        min-height: 369px;
        border-radius: 14px;
    }

    .education-card__image {
        aspect-ratio: 386 / 170;
    }

    .education-card__content {
        padding: 17px 18px 18px;
    }

    .education-card__title {
        font-size: 24px;
        line-height: 30px;
    }

    .education-card__subtitle {
        margin-top: 7px;
        font-size: 23px;
        line-height: 28px;
    }

    .education-card__description {
        margin-top: 1px;
        font-size: 18px;
        line-height: 22px;
    }
}

.section-intro-block {
    background: #fff;
    margin-bottom: 130px;
}

.intro-block {
    width: 100%;
    padding: 67px 0 70px 0;
}

.intro-block__title {
    width: 490px;
    margin: 0;
    padding-bottom: 11px;
    border-bottom: 2px solid #4a90ed;
    font-size: 34px;
    line-height: 46px;
    color: #303443;
}

.intro-block__text {
    max-width: 1110px;
    margin-top: 13px;
    font-weight: 400;
    font-size: 22px;
    line-height: 150%;
}

.intro-block__paragraph {
    max-width: 1110px;
    margin: 0;
    color: #303443;
    font-weight: 400;
    font-size: 22px;
    line-height: 150%;
}

.intro-block__paragraph+.intro-block__paragraph {
    margin-top: 12px;
}

@media (max-width: 1023px) {
    .intro-block {
        width: calc(100% - 80px);
        margin-top: 66px;
    }

    .intro-block__title {
        font-size: 32px;
        line-height: 43px;
    }

    .intro-block__text {
        margin-top: 20px;
    }

    .intro-block__paragraph {
        font-size: 22px;
        line-height: 33px;
    }

    .intro-block__paragraph+.intro-block__paragraph {
        margin-top: 20px;
    }
}

@media (max-width: 767px) {
    .intro-block {
        width: calc(100% - 44px);
        margin-top: 29px;
    }

    .intro-block__title {
        width: 100%;
        padding-bottom: 9px;
        font-size: 24px;
        line-height: 32px;
    }

    .intro-block__text {
        margin-top: 13px;
    }

    .intro-block__paragraph {
        font-size: 16px;
        line-height: 24px;
    }

    .intro-block__paragraph+.intro-block__paragraph {
        margin-top: 14px;
    }
}


.documents-block__outer-title {
    margin: 0;
    font-weight: 700;
    font-size: 38px;
    line-height: 52px;
    color: #303443;

    margin-bottom: 70px;
}

.section-documents-block {
    margin-bottom: 130px;
}

.documents-card {
    display: flex;
    gap: 53px;
    flex-direction: row;
    width: 100%;
    min-height: 265px;
    overflow: hidden;
    border-radius: 20px;
    background: #ffffff;
}

.documents-card__media {
    min-width: 0;
    line-height: 0;
    background-color: #488EFB;
    position: relative;
    z-index: 2;
    width: 445px;
    border-radius: 0 20px 20px 0;
}

.documents-card__media::before {
    content: "";
    display: inline-block;
    width: 100%;
    height: 100%;
    background: url(/local/templates/project72/components/bitrix/news/prof.obuchenie/bitrix/news.detail/detail.courses/image/document_bg.png) no-repeat;
    border-radius: 20px;
}



.documents-card__media picture {
    position: absolute;
    z-index: 3;
    left: 65px;
    top: 21px;
}

.documents-card__image {
    display: block;
    width: 315px;
    height: 223px;
    object-fit: cover;
}

.documents-card__content {
    padding: 38px 35px 30px 0px;
}

.documents-card__title,
.documents-card__description {
    margin: 0;
}

.documents-card__title {
    font-style: normal;
    font-weight: 700;
    font-size: 32px;
    line-height: 44px;
    color: #303443;
}

.documents-card__description {
    max-width: 520px;
    margin-top: 22px;
    font-style: normal;
    font-weight: 400;
    font-size: 20px;
    line-height: 27px;
    color: #303443;
}

@media (max-width: 1023px) {
    .documents-block {
        width: min(688px, 100%);
    }

    .documents-block__outer-title {
        display: block;
        max-width: 560px;
        margin-bottom: 34px;
    }

    .documents-card {
        display: flex;
        flex-direction: column;
        min-height: 608px;
    }

    .documents-card__image {
        height: auto;
        aspect-ratio: 688 / 339;
        object-fit: cover;
    }

    .documents-card__content {
        padding: 36px 30px 47px;
    }

    .documents-card__title {
        font-size: 32px;
        line-height: 43px;
    }

    .documents-card__description {
        max-width: none;
        margin-top: 14px;
        font-size: 22px;
        line-height: 29px;
    }
}

@media (max-width: 767px) {
    .documents-block {
        width: 100%;
    }

    .documents-block__outer-title {
        max-width: none;
        margin-bottom: 17px;
        font-size: 24px;
        line-height: 32px;
    }

    .documents-card {
        min-height: 397px;
        border-radius: 14px;
    }

    .documents-card__image {
        aspect-ratio: 386 / 190;
    }

    .documents-card__content {
        padding: 20px 23px 29px;
    }

    .documents-card__title {
        font-size: 24px;
        line-height: 32px;
    }

    .documents-card__description {
        margin-top: 7px;
        font-size: 16px;
        line-height: 22px;
    }
}

.documents-card__image-link {
    display: none;
    line-height: 0;
}

.documents-card__image {
    display: block;
    width: 100%;
    height: auto;
}

@media (min-width: 1024px) {
    .documents-card__image-link--desktop {
        display: block;
        position: absolute;
        z-index: 3;
        left: 65px;
        top: 21px;
    }
}

@media (min-width: 768px) and (max-width: 1023px) {
    .documents-card__image-link--tablet {
        display: block;
    }
}

@media (max-width: 767px) {
    .documents-card__image-link--mobile {
        display: block;
    }
}

.reviews-group {
    /* height: 340px; */
    overflow: hidden;
    margin-bottom: 130px;
}

.reviews-group>h2 {
    margin: 0;
    font-size: 38px;
    line-height: 1.25;
    font-weight: 700;
    color: #303443;
    margin-bottom: 40px;

}

.reviews-slider {
    /* height: 195px; */
    border-radius: 20px;
    background: #fff;
    overflow: hidden
}

.review-slide {
    /* height: 195px; */
    display: flex;
    background: #fff
}

.review-accent {
    width: 181px;
    flex: 0 0 181px;
    align-self: stretch;
    display: flex;
    padding-top: 33px;
    padding-left: 40px;
    /* justify-content: center; */
    position: relative;
    overflow: hidden;
}

/* .review-accent::before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
     background: url(/local/templates/project72/components/bitrix/news/prof.obuchenie/bitrix/news.detail/detail.courses/image/review_bg.png) no-repeat;
     background-color: #488EFB;
opacity: 0.8;
filter: blur(22px);
z-index: -1;

} */

.review-background-img {
    /* position: absolute;
    left: 0;
    top: 22px;
    border-radius: 0;
    max-width: 100%;
    max-height: 100%;
    z-index: -1; */
    position: absolute;
    left: 0px;
    top: 22px;
    width: 181px;
    height: calc(100% - 22px);
    /* object-fit: cover;
    object-position: center; */
    z-index: -1;
    /* Для плавного растягивания */
    transition: height 0.3s ease;
}

.review-accent>img.review-person {
    width: 100%;
    height: 100%;
    max-width: 130px;
    max-height: 130px;
    border-radius: 50%;
}

.review-copy {
    padding: 37px 0 52px 37px;
}

.review-role {
    margin: 0 0 1px;
    color: #488efb;
    font-size: 21px;
    line-height: 1.2
}

.review-copy h2 {
    margin: 0 0 8px;
    font-size: 26px;
    line-height: 1.18;
    font-weight: 700;
    color: #303443;
}

.review-text {
    max-width: 790px;
    margin: 0;
    font-size: 19px;
    line-height: 1.33
}

.review-controls {
    height: 58px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px
}

.review-arrow {
    width: 30px;
    height: 30px;
    display: grid;
    place-items: center;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: #fff;
    cursor: pointer;
}

.review-arrow svg {
    width: 20px;
    height: 20px;
    fill: none;
    stroke: #488efb;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2
}

.swiper-pagination {
    position: static !important;
    width: auto !important;
    display: flex;
    align-items: center;
    gap: 12px
}

.swiper-pagination-bullet {
    width: 12px;
    height: 12px;
    margin: 0 !important;
    background: #b8d3f8;
    opacity: 1
}

.swiper-pagination-bullet-active {
    background: #488efb
}

@media(max-width:700px) {
    .reviews-group {
        height: 360px;
        padding: 0 14px
    }

    .reviews-group h2 {
        height: 64px;
        font-size: 31px
    }

    .reviews-slider {
        /* height: 235px */
    }

    .review-slide {
        /* height: 235px */
    }

    .review-accent {
        width: 66px;
        flex-basis: 66px
    }

    .review-copy {
        padding: 25px 18px
    }

    .review-role {
        font-size: 16px
    }

    .review-copy h2 {
        font-size: 20px
    }

    .review-text {
        font-size: 15px
    }

    .review-controls {
        height: 61px;
        gap: 12px
    }

    .swiper-pagination {
        gap: 7px
    }

    .swiper-pagination-bullet {
        width: 9px;
        height: 9px
    }
}

.figma-group {
    width: 100%;
    height: 1180px;
    margin: 0 auto;
    overflow: hidden;
}

.program-heading {
    height: 77px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}


.download-program {
    width: 238px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
    border-radius: 10px;
    background: #fff;
    color: var(--ink);
    font-size: 16px;
    font-weight: 700;
}

.download-program svg,
.instruction-button svg {
    width: 24px;
    height: 24px;
    fill: none;
    stroke: var(--blue);
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

.program-tabs {
    display: flex;
    gap: 10px;
    height: 86px;
    align-items: flex-start;
}

.program-tab {
    min-width: 258px;
    height: 48px;
    padding: 0 21px;
    border: 1.5px solid #b6bac1;
    border-radius: 100px;
    background: #fff;
    color: #b2b4b8;
    font-size: 16px;
    font-weight: 600;
    transition: color .18s, border-color .18s, background .18s;
    cursor: pointer;
}

.program-tab.is-selected {
    border-color: var(--blue);
    color: var(--blue);
}

.lessons {
    display: grid;
    gap: 10px;
}

.lesson {
    overflow: hidden;
    border-radius: 10px;
    background: #fff;
    cursor: pointer;
}

.lesson.is-open {
    min-height: 260px;
}

.lesson-trigger {
    width: 100%;
    height: 72px;
    display: grid;
    grid-template-columns: 1fr 185px 44px;
    align-items: center;
    border: 0;
    padding: 0 28px;
    background: #fff;
    color: var(--ink);
    text-align: left;
    font-size: 19px;
    font-weight: 600;
    cursor: pointer;
}

.lesson-count {
    color: #b7b8bd;
    font-size: 18px;
    font-weight: 400;
}

.chevron {
    width: 13px;
    height: 13px;
    justify-self: end;
    border-right: 2px solid var(--blue);
    border-bottom: 2px solid var(--blue);
    transform: rotate(45deg) translate(-3px, -3px);
    transition: transform .2s;
}

.lesson.is-open .chevron {
    transform: rotate(225deg) translate(-3px, -3px);
}

.lesson-content {
    display: none;
    margin: 0 29px;
    padding: 15px 7px 25px;
    border-top: 1px solid #eeeeee;
    color: #525664;
    font-size: 16px;
    line-height: 1.22;
}

.lesson.is-open .lesson-content {
    display: block;
}

.duration {
    display: inline-flex;
    padding: 7px 13px;
    margin-bottom: 11px;
    border-radius: 3px;
    background: #edf4ff;
    color: #4f5461;
    font-size: 15px;
    font-weight: 600;
}

.lesson-content ul {
    margin: 0;
    padding-left: 15px;
}

.price-bar {
    height: 77px;
    margin-top: 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 29px;
    border-radius: 10px;
    background: var(--blue);
    color: #fff;
}

.price {
    display: flex;
    align-items: baseline;
    gap: 18px;
    white-space: nowrap;
}

.price strong {
    font-size: 22px;
    font-weight: 700;
}

.price del {
    color: #b6d5ff;
    font-size: 19px;
    text-decoration-thickness: 1px;
}

.price b {
    font-size: 27px;
    font-weight: 700;
}

.start-button {
    min-width: 319px;
    height: 45px;
    padding: 0 23px;
    border: 0;
    border-radius: 100px;
    background: #fff;
    color: #20232d;
    font-size: 17px;
    font-weight: 600;
}

.goskey-card {
    height: 238px;
    position: relative;
    overflow: hidden;
    margin-top: 52px;
    border-radius: 16px;
    background: #303443;
    color: #fff;
}

.goskey-copy {
    position: relative;
    z-index: 3;
    padding: 35px 65px;
}

.goskey-copy h2 {
    font-style: normal;
    font-weight: 500;
    font-size: 32px;
    line-height: 44px;
    color: #FFFFFF;
}

.goskey-copy #goskey-title {
    margin: 0;
    margin-bottom: 6px;
}

.goskey-copy h2 span {
    color: var(--blue);
}

.goskey-copy p {
    margin-top: 0;
    color: #FFF;
    font-style: normal;
    font-weight: 400;
    font-size: 20px;
    line-height: 27px;
    margin-bottom: 26px;
}

.goskey-card .goskey-copy .instruction-button {
    width: 262px;
    height: 45px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 17px;
    margin-top: 0;
    border: 1.5px solid #fff !important;
    border-radius: 8px;
    color: #fff;
    font-style: normal;
    font-weight: 600;
    font-size: 18px;
    line-height: 110%;
}

.instruction-button svg {
    stroke: #fff;
    margin-top: 5px;
}

.phone-glow {
    position: absolute;
    z-index: 1;
    width: 323px;
    height: 205px;
    right: -20px;
    bottom: -60px;
    background: url(/local/templates/project72/components/bitrix/news/prof.obuchenie/bitrix/news.detail/detail.courses/image/program_goskey.png) no-repeat;
    background-color: #488EFB;
    opacity: 0.9;
    filter: blur(22px);
    border-radius: 30px 0px 0px 0px;
}

.phone {
    position: absolute;
    z-index: 2;
    overflow: hidden;
}

.phone-back {
    width: 230px;
    height: 202px;
    right: 39px;
    bottom: -5px;
}

.phone-front {
    width: 114px;
    height: 276px;
    right: 45px;
    bottom: -50px;
}

.phone-notch {
    position: absolute;
    z-index: 2;
    top: -1px;
    left: 50%;
    width: 48px;
    height: 11px;
    border-radius: 0 0 8px 8px;
    background: #4d5160;
    transform: translateX(-50%);
}

.phone-ui {
    padding: 24px 9px 8px;
    color: #2f3440;
    font-size: 7px;
}

.phone-services b {
    display: block;
    font-size: 11px;
}

.phone-services span {
    display: block;
    margin-top: 8px;
    color: #9297a2;
}

.phone-services em {
    display: block;
    margin-top: 6px;
    padding: 5px;
    border-radius: 5px;
    background: #07359c;
    color: #fff;
    font-size: 6px;
    font-style: normal;
}

.phone-document {
    padding-top: 25px;
    text-align: center;
}

.phone-document small {
    display: block;
    font-size: 5px;
}

.phone-document b {
    display: block;
    margin-top: 7px;
    font-size: 6px;
    font-weight: 600;
}

.document-lines {
    margin: 12px 11px 7px;
}

.document-lines i {
    display: block;
    height: 2px;
    margin-bottom: 3px;
    background: #dfe1e5;
}

.document-lines i:nth-child(2),
.document-lines i:nth-child(5) {
    width: 75%;
    margin-left: auto;
    margin-right: auto;
}

.phone-document .toggle {
    display: block;
    width: 15px;
    height: 7px;
    margin: 6px auto;
    border-radius: 8px;
    background: #3c67d2;
}

.phone-document em {
    display: block;
    padding: 5px;
    border-radius: 8px;
    background: #0d3db4;
    color: #fff;
    font-size: 6px;
    font-style: normal;
}

@media (max-width: 700px) {
    .figma-group {
        height: auto;
        min-height: 100vh;
        padding: 24px 16px 0;
    }

    .program-heading {
        height: auto;
        gap: 18px;
        flex-direction: column;
    }

    h1 {
        margin: 0;
        font-size: clamp(29px, 8vw, 38px);
    }

    .download-program {
        width: 100%;
    }

    .program-tabs {
        height: auto;
        margin: 24px 0;
        overflow: auto;
    }

    .program-tab {
        min-width: 240px;
    }

    .lesson-trigger {
        grid-template-columns: 1fr 76px 24px;
        padding: 0 18px;
        font-size: 15px;
    }

    .lesson-count {
        font-size: 13px;
    }

    .lesson-content {
        margin: 0 18px;
        font-size: 13px;
    }

    .price-bar {
        height: auto;
        min-height: 125px;
        flex-direction: column;
        align-items: flex-start;
        gap: 14px;
        padding: 17px 18px;
    }

    .price {
        gap: 8px;
        flex-wrap: wrap;
    }

    .price strong {
        width: 100%;
        font-size: 18px;
    }

    .price b {
        font-size: 23px;
    }

    .start-button {
        width: 100%;
        min-width: 0;
    }

    .goskey-card {
        height: 360px;
        margin-top: 32px;
    }

    .goskey-copy {
        padding: 26px 22px;
    }

    .goskey-copy h2 {
        font-size: 23px;
    }

    .goskey-copy p {
        font-size: 14px;
    }

    .goskey-copy p br {
        display: none;
    }

    .phone-back {
        right: 92px;
    }

    .phone-front {
        right: -2px;
    }
}

.section-bulk-group {
    background: rgba(72, 142, 251, 0.3);
}


.bulk-group {
    width: 100%;
    height: 480px;
    display: grid;
    place-items: center;
    overflow: hidden
}

.bulk-offer {
    width: 100%;
    height: 349px;
    display: grid;
    grid-template-columns: 1fr 1fr;
}

.bulk-copy {
    width: 603px;
    position: relative;
    overflow: hidden;
    border-radius: 20px;
    color: #fff;
    background: #303443;
}

.bulk-copy::before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    background: url(/local/templates/project72/components/bitrix/news/prof.obuchenie/bitrix/news.detail/detail.courses/image/bulk_bg.svg) no-repeat;
}

.copy-shape {
    position: absolute;
    inset: 0;
    pointer-events: none
}

.copy-shape-one {
    background: #2e3345;
    clip-path: polygon(37% 0, 71% 0, 48% 100%, 18% 100%)
}

.copy-shape-two {
    background: #262b3d;
    opacity: .5;
    clip-path: polygon(71% 0, 100% 0, 100% 100%, 48% 100%)
}

.copy-content {
    position: relative;
    z-index: 1;
    padding: 25px 29px
}

.copy-content h2 {
    margin: 0;
    font-style: normal;
    font-weight: 500;
    font-size: 32px;
    line-height: 44px;
    color: #488EFB;
}

.copy-content h3 {
    font-style: normal;
    font-weight: 500;
    font-size: 24px;
    line-height: 33px;
    color: #FFFFFF;
    margin-top: 4px;
}

.copy-content p {
    margin: 0;
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 25px;
    color: #FFFFFF;
    margin-top: 30px;
    max-width: 470px;
}

.bulk-calculator {
    position: relative;
    border-radius: 20px;
    background: #fff;
    padding: 37px 47px;
}

.employees-label {
    display: block;
    font-style: normal;
    font-weight: 600;
    font-size: 22px;
    line-height: 30px;
    color: #488EFB;
}

.range-wrap {
    position: relative;
    margin-top: 18px;
    height: 12px
}

input[type=range] {
    width: 100%;
    height: 4px;
    display: block;
    margin: 0;
    accent-color: #488efb;
    cursor: pointer
}

input[type=range]::-webkit-slider-runnable-track {
    height: 4px;
    border-radius: 10px;
    background: linear-gradient(to right, #488efb var(--range-progress, 20%), #bad4f6 var(--range-progress, 20%))
}

input[type=range]::-webkit-slider-thumb {
    width: 12px;
    height: 12px;
    margin-top: -4px;
    border: 0;
    border-radius: 50%;
    background: #488efb;
    -webkit-appearance: none
}

input[type=range]::-moz-range-track {
    height: 4px;
    border-radius: 10px;
    background: linear-gradient(to right, #488efb var(--range-progress, 20%), #bad4f6 var(--range-progress, 20%))
}

input[type=range]::-moz-range-thumb {
    width: 17px;
    height: 17px;
    border: 0;
    border-radius: 50%;
    background: #488efb
}

/* .range-value {
    position: absolute;
    top: 12px;
    left: 20%;
    width: 22px;
    transform: translateX(-50%);
    background-image: url('data:image/svg+xml,%3Csvg width="45" height="31" viewBox="0 0 45 31" fill="none" xmlns="http://www.w3.org/2000/svg"%3E%3Cpath d="M25.1807 7.2334H41.333C43.045 7.2334 44.4334 8.62107 44.4336 10.333V27.9004C44.4334 29.6123 43.045 31 41.333 31H3.10059C1.38863 31 0.000211305 29.6123 0 27.9004V10.333C0.000176132 8.62107 1.38861 7.2334 3.10059 7.2334H18.2197L21.7002 0L25.1807 7.2334Z" fill="%23488EFB" fill-opacity="0.7"/%3E%3C/svg%3E');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    display: inline-block;
    padding: 8px 15px;
    min-width: 45px;
    text-align: center;
    font-style: normal;
font-weight: 400;
font-size: 16.5333px;
line-height: 23px;
color: #FFFFFF;
} */

.range-value {
    position: absolute;
    top: 12px;
    left: 20%;
    transform: translateX(-50%);

    /* Размер как у SVG */
    width: 45px;
    height: 31px;

    /* Текст по центру */
    display: flex;
    align-items: center;
    justify-content: center;

    /* Стили текста */
    font-style: normal;
    font-weight: 400;
    font-size: 16.5333px;
    line-height: 31px;
    /* Равно высоте для вертикального центрирования */
    color: #FFFFFF;
    text-align: center;
}

/* SVG как псевдоэлемент */
.range-value::before {
    content: '';
    position: absolute;
    top: -5px;
    left: 0;
    right: 0;
    bottom: 0;
    background-image: url('data:image/svg+xml,%3Csvg width="45" height="31" viewBox="0 0 45 31" fill="none" xmlns="http://www.w3.org/2000/svg"%3E%3Cpath d="M25.1807 7.2334H41.333C43.045 7.2334 44.4334 8.62107 44.4336 10.333V27.9004C44.4334 29.6123 43.045 31 41.333 31H3.10059C1.38863 31 0.000211305 29.6123 0 27.9004V10.333C0.000176132 8.62107 1.38861 7.2334 3.10059 7.2334H18.2197L21.7002 0L25.1807 7.2334Z" fill="%23488EFB" fill-opacity="0.7"/%3E%3C/svg%3E');
    background-size: 100% 100%;
    background-repeat: no-repeat;
    z-index: -1;
}

.range-labels {
    display: flex;
    justify-content: space-between;
    margin-top: 6px;
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 22px;
    color: #ACAEB4;
}

.cost-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 28px
}

.cost-row h2 {
    margin: 0;
    font-style: normal;
    font-weight: 600;
    font-size: 22px;
    line-height: 30px;
    color: #488EFB;
}

.cost-row p {
    margin: 0;
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 22px;
    color: #303443;
}

.cost {
    padding: 17px 36px;
    border-radius: 8px;
    background: #EEF5FF;
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 500;
    font-size: 22px;
    line-height: 110%;
    color: #303443;
    white-space: nowrap;
}

.lock-button {
    width: 100%;
    height: 53px;
    margin-top: 42px;
    border: 0;
    background: #488EFB;
    border-radius: 8px;
    font-style: normal;
    font-weight: 600;
    font-size: 20px;
    line-height: 110%;
    color: #FFFFFF;
}

.lock-button:active {
    transform: translateY(1px)
}

.lock-status {
    position: absolute;
    bottom: 3px;
    left: 30px;
    margin: 0;
    color: #488efb;
    font-size: 10px
}

@media(max-width:760px) {
    .bulk-group {
        height: auto;
        min-height: 100vh;
        padding: 28px 15px
    }

    .bulk-offer {
        width: min(100%, 430px);
        height: auto;
        display: block
    }

    .bulk-copy {
        min-height: 224px;
        border-radius: 11px 11px 0 0
    }

    .bulk-calculator {
        min-height: 224px;
        border-radius: 0 0 10px 10px;
        padding: 26px 25px 23px
    }
}



.documents {
    display: flex;
    width: 100%;
    /* min-height: 100vh; */
    align-items: center;
    justify-content: center;
    overflow: hidden;
    background: #f4f8ff;
    margin-bottom: 30px;
    margin-top: 60px;
}

.documents__layout {
    position: relative;
    width: min(100%, var(--documents-frame-width));
    aspect-ratio: 1110 / 415;
    overflow: hidden;
    border-radius: 20px;
    background: var(--documents-background);
}

.documents__intro {
    position: absolute;
    z-index: 3;
    inset: 0 auto 0 0;
    width: 409px;
    padding: 64px 0 0 66px;
    background: var(--documents-blue);
}

.documents__title {
    width: 360px;
    margin: 0;
    color: var(--documents-white);
    font-size: 32px;
    font-weight: 700;
    line-height: 1.2;
    white-space: nowrap;
}

.documents__rule {
    width: 127px;
    height: 2px;
    margin: 15px 0 23px;
    border: 0;
    background: var(--documents-white);
}

.documents__description {
    width: 300px;
    margin: 0;
    color: var(--documents-white);
    font-size: 18px;
    font-weight: 400;
    line-height: normal;
}

.documents__gallery {
    position: absolute;
    z-index: 1;
    inset: 0;
    overflow: hidden;
    background: var(--documents-background);
}

.documents__viewport {
    position: absolute;
    top: 0;
    left: 409px;
    width: 701px;
    height: 100%;
    overflow: visible;
    transform: translateX(-17px);
    touch-action: pan-y;
}

.documents__track {
    display: flex;
    height: auto;
    align-items: flex-start;
}

.documents__slide {
    position: relative;
    display: flex;
    width: var(--documents-slide-width);
    height: auto;
    flex: 0 0 var(--documents-slide-width);
    flex-direction: column;
    align-items: center;
    padding-top: 70px;
}

.documents__certificate {
    width: var(--documents-slide-width);
    height: 269px;
    overflow: hidden;
    border-radius: 10px;
    background: var(--documents-side-background);
    box-shadow: 0 0 10px rgb(0 0 0 / 15%);
}

.documents__certificate-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: inherit;
    transition: opacity 450ms cubic-bezier(0.22, 0.61, 0.36, 1);
}

.documents__slide:not(.swiper-slide-active) .documents__certificate-image {
    opacity: 0.25;
}

.documents__label {
    width: 100%;
    margin: 8px 0 0;
    color: var(--documents-white);
    font-family: var(--documents-font-label);
    font-size: 14px;
    font-weight: 500;
    line-height: normal;
    text-align: center;
    transition: opacity 450ms cubic-bezier(0.22, 0.61, 0.36, 1);
}

.documents__slide:not(.swiper-slide-active) .documents__label {
    opacity: 0.5;
}

.documents__slide.swiper-slide-active .documents__label {
    opacity: 0.8;
}

.documents__arrow {
    position: absolute;
    z-index: 4;
    top: 185px;
    width: 40px;
    height: 40px;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: pointer;
}

.documents__arrow img {
    width: 40px;
    height: 40px;
}

.documents__arrow:focus-visible {
    outline: 2px solid var(--documents-white);
    outline-offset: 3px;
}

.documents__arrow--prev {
    left: 489px;
}

.documents__arrow--next {
    right: 176px;
}

@media (max-width: 767px) {
    .documents {
        display: block;
        min-height: 100vh;
    }

    .documents__layout {
        width: 100%;
        min-height: 100vh;
        aspect-ratio: auto;
        overflow: hidden;
        border-radius: 0;
    }

    .documents__intro {
        position: relative;
        width: 100%;
        min-height: 260px;
        padding: 42px 28px 32px;
    }

    .documents__title {
        width: auto;
        font-size: 32px;
    }

    .documents__rule {
        margin-top: 14px;
        margin-bottom: 22px;
    }

    .documents__description {
        width: min(100%, 330px);
        font-size: 18px;
    }

    .documents__gallery {
        position: relative;
        height: 350px;
        min-height: 350px;
    }

    .documents__viewport {
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        transform: none;
    }

    .documents__slide {
        width: min(78vw, var(--documents-slide-width));
        flex-basis: min(78vw, var(--documents-slide-width));
        padding-top: 32px;
    }

    .documents__certificate {
        width: 100%;
        height: auto;
        aspect-ratio: 375 / 269;
    }

    .documents__label {
        padding: 0 4px;
        font-size: 14px;
    }

    .documents__arrow {
        top: 143px;
        width: 40px;
        height: 40px;
    }

    .documents__arrow--prev {
        left: 12px;
    }

    .documents__arrow--next {
        right: 12px;
    }
}

.section-application {
    background: var(--background);
    margin-bottom: 130px;
}

.application {
    display: flex;
    min-height: 100vh;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.application__frame {
    /* container-type: inline-size; */
    display: flex;
    width: min(100%, 1170px);
    height: 100%;
    gap: 10px;
    align-items: flex-start;
    justify-content: center;
    padding-top: 100px;
    padding-bottom: 73px;
    overflow: hidden;
    /* background: var(--background); */
    color: #fff;
}

.application__left {
    display: flex;
    width: 100%;
    max-width: 580px;
    flex-direction: column;
    gap: 10px;
    height: 100%;
}

#application-form {
    width: 100%;
    max-width: 580px;
    height: 100%;
    max-height: 637px;
}

.application__hero,
.application__benefit,
.application__price,
.application__form {
    display: flex;
    width: 100%;
    overflow: hidden;
    border-radius: 1.25cqw;
    background: var(--card);
}

.application__hero {
    height: 356px;
    align-items: flex-start;
    position: relative;
}

.application__hero-visual {
    position: absolute;
    right: -28px;
    top: 40px;
    width: 402px;
    height: 313px;
}

.application__hero-title {
    width: 17.4cqw;
    margin-top: 41px;
    margin-left: 41px;
    font-size: 50px;
    font-weight: 500;
    line-height: 111.27%;
    color: #fff;
}

.application__hero-art {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.application__hero-illustration {
    width: 9.4cqw;
    height: auto;
    flex: 0 0 9.4cqw;
    margin-top: 9.5cqw;
    margin-left: -8cqw;
    transform: rotate(-6deg);
}

.application__benefits {
    display: flex;
    width: 100%;
    height: 131px;
    gap: 0.6836cqw;
    background: transparent;
}

.application__benefit {
    position: relative;
    display: flex;
    min-width: 0;
    flex-direction: column;
    height: 131px;
}

.application__benefit::after {
    position: absolute;
    right: -3.6cqw;
    bottom: -5cqw;
    width: 10.7cqw;
    height: 10cqw;
    border-radius: 2cqw 0 0;
    background: #3ddcff;
    content: "";
    filter: blur(1.4cqw);
    opacity: 0.85;
}

.application__benefit:last-child::after {
    background: #e167ff;
}

.application__benefit-glow {
    display: none;
}

.application__benefit-title {
    position: relative;
    z-index: 1;
    width: 220px;
    margin: 20px 0 0 22px;
    font-weight: 400;
    font-size: 26px;
    line-height: 25px;
    color: #FFF;
    font-family: "OpenSans", sans-serif;
}

.application__info {
    position: absolute;
    z-index: 1;
    width: 15px;
    height: 15px;
    right: 22px;
    top: 18px;
    background: transparent;
    border: none;
}

.application__info img {
    width: 100%;
    height: 100%;
    min-width: 15px;
    min-height: 15px;
}

.application__price {
    height: 127px;
    align-items: center;
    justify-content: space-between;
    padding: 1.46cqw 1.7cqw 1.46cqw 1.37cqw;
    background: var(--blue);
}

.application__price-copy {
    display: flex;
    min-width: 0;
    flex-direction: column;
}

.application__price-title {
    margin: 0;
    font-style: normal;
    font-weight: 100;
    font-size: 32px;
    line-height: 29px;
    color: #fff;
}

.application__price-subtitle {
    width: 18.63cqw;
    margin: 0.45cqw 0 0;
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 100%;
    color: rgba(255, 255, 255, 0.6);
}

.application__price-values {
    display: flex;
    flex: 0 0 auto;
    flex-direction: column;
    align-items: flex-end;
}

.application__price-old {
    color: var(--muted);
    font-size: 1.5cqw;
    line-height: 1.15;
}

.application__price-current {
    margin-top: 0.12cqw;
    font-size: 2.125cqw;
    line-height: 1.15;
}

.application__form {
    width: 34.4727cqw;
    height: 39.7461cqw;
    flex: 0 0 34.4727cqw;
    flex-direction: column;
    padding: 0 2.625cqw;
    padding-top: 41px;
}

.application__form-title {
    margin: 0 0 0;
    font-style: normal;
    font-weight: 500;
    font-size: 44px;
    line-height: 25px;
    color: #FFFFFF;
    text-align: center;
}

.application__form-subtitle {
    color: rgb(255 255 255 / 80%);
    font-style: normal;
    font-weight: 400;
    font-size: 20px;
    line-height: 140%;
    text-align: center;
    margin-top: 18px;
    margin-bottom: 0px;
}

.application__tabs {
    display: flex;
    width: 100%;
    height: 3.1875cqw;
    max-height: 51px;
    flex: 0 0 3.1875cqw;
    align-items: center;
    margin-top: 25px;
    overflow: hidden;
    border-radius: 1.94cqw;
    background: rgb(255 255 255 / 10%);
}

.application__tab {
    display: flex;
    min-width: 0;
    height: 2.8125cqw;
    align-items: center;
    justify-content: center;
    gap: 0.5cqw;
    flex: 1 1 0;
    padding: 0.5cqw;
    border-radius: 1.45cqw;
    background: transparent;
    font-family: 'OpenSans';
    font-style: normal;
    font-weight: 600;
    font-size: 16px;
    line-height: 120%;
    white-space: nowrap;
    border: none;
}

.application__tab--active {
    flex-grow: 1.13;
    background: var(--blue);
}

.application__tab span {
    min-width: 0;
    overflow: hidden;
    color: #FFF;
}

.application__tab img {
    width: 1.268cqw;
    height: 1.268cqw;
    flex: 0 0 1.268cqw;
    opacity: 0.35;
}

.application__tab--active img {
    filter: brightness(0) invert(1);
    opacity: 1;
}

.application__fields {
    display: flex;
    width: 100%;
    flex-direction: column;
    gap: 0.625cqw;
    margin-top: 20px;
}

.application__field {
    display: flex;
    width: 100%;
    height: 53px;
    border: none;
    overflow: hidden;
    border: 0.0625cqw solid var(--field-border);
    border-radius: 0.5cqw;
    background: var(--field);
}

.application__field:nth-child(4) {
    border-color: rgb(255 255 255 / 15%);
    background: #404450;
}

.application__field-label {
    display: none;
}

.application__field-input {
    width: 100%;
    height: 100%;
    min-height: 53px;
    padding: 0 1.375cqw;
    outline: none;
    background: transparent;
    color: var(--white);
    font-size: 1.125cqw;
    border: none;
}

.application__field-input::placeholder {
    color: rgb(255 255 255 / 40%);
    opacity: 1;
}

.application__field:focus-within {
    border-color: var(--blue);
}

.application__field--invalid {
    border-color: #ff8a8a;
}

.application__submit {
    width: 100%;
    height: 53px;
    max-height: 53px;
    flex: 0 0 3.3125cqw;
    padding: 0;
    margin-top: 24px;
    border-radius: 0.5cqw;
    background: var(--blue);
    font-family: 'OpenSans';
    font-style: normal;
    font-weight: 600;
    font-size: 20px;
    line-height: 110%;
    color: #FFF;
    border: none;
}

.application__submit:hover {
    background: #5b9bff;
}

.application__submit:active {
    background: #397fef;
}

.application__consent {
    width: 100%;
    font-family: 'OpenSans';
    font-style: normal;
    font-weight: 400;
    font-size: 12px;
    line-height: 140%;
    color: rgba(255, 255, 255, 0.5);
}

.application__status {
    min-height: 1.05cqw;
    margin: 0.3cqw 0 0;
    color: #9dffc4;
    font-size: 0.75cqw;
}

.application__info:focus-visible,
.application__tab:focus-visible,
.application__submit:focus-visible {
    outline: 2px solid var(--white);
    outline-offset: 2px;
}

@media (min-width: 481px) and (max-width: 800px) {
    .application {
        align-items: flex-start;
    }

    .application__frame {
        width: min(100%, 657px);
        aspect-ratio: 657 / 992;
        flex-direction: column;
        gap: 0;
        padding-top: 0;
    }

    .application__left {
        display: contents;
    }

    .application__hero {
        width: 92.08cqw;
        height: 19.79cqw;
        flex: 0 0 19.79cqw;
        order: 1;
        overflow: visible;
        border-radius: 0;
        background: transparent;
    }

    .application__hero-title {
        width: auto;
        flex: 0 0 auto;
        margin: 9.9cqw 0 0 6.1cqw;
        font-size: 6.1cqw;
        line-height: 1;
    }

    .application__hero-visual {
        display: none;
    }

    .application__benefits {
        width: 92.08cqw;
        height: 17.96cqw;
        flex: 0 0 17.96cqw;
        order: 2;
        gap: 1.52cqw;
    }

    .application__benefit {
        border-radius: 2cqw;
    }

    .application__benefit-title {
        width: 34cqw;
        margin: 2.9cqw 0 0 3.3cqw;
        font-size: 3.65cqw;
        line-height: 0.95;
    }

    .application__benefit::after {
        right: -4cqw;
        bottom: -8cqw;
        width: 25cqw;
        height: 20cqw;
        filter: blur(3cqw);
    }

    .application__benefit:first-child::after {
        background: #e167ff;
    }

    .application__benefit:last-child::after {
        background: #3ddcff;
    }

    .application__info {
        width: 3.65cqw;
        height: 3.65cqw;
        flex-basis: 3.65cqw;
        margin: -12.1cqw 2.5cqw 0 0;
    }

    .application__form {
        width: 92.08cqw;
        height: 637px;
        order: 3;
        padding: 0 5.33cqw;
        margin-top: 2.13cqw;
        border-radius: 4cqw;
    }

    .application__form-title {
        margin-top: 3.5cqw;
        font-size: 6.1cqw;
    }

    .application__form-subtitle {
        width: 76cqw;
        margin-top: 0.9cqw;
        font-size: 2.8cqw;
    }

    .application__tabs {
        height: 7.6cqw;
        flex-basis: 7.6cqw;
        padding: 0.45cqw;
        margin-top: 4cqw;
        border-radius: 4cqw;
    }

    .application__tab {
        height: 6.7cqw;
        gap: 1cqw;
        padding: 1cqw;
        border-radius: 3.5cqw;
        font-size: 2.75cqw;
    }

    .application__tab img {
        width: 2.8cqw;
        height: 2.8cqw;
        flex-basis: 2.8cqw;
    }

    .application__fields {
        gap: 1.67cqw;
        margin-top: 2.5cqw;
    }

    .application__field {
        height: 7.9cqw;
        flex-basis: 7.9cqw;
        border-width: 0.15cqw;
        border-radius: 0.8cqw;
    }

    .application__field-input {
        padding: 0 2.8cqw;
        font-size: 2.6cqw;
    }

    .application__submit {
        height: 7.45cqw;
        flex-basis: 7.45cqw;
        margin-top: 3.99cqw;
        border-radius: 0.8cqw;
        font-size: 2.75cqw;
    }

    .application__consent {
        margin-top: 2.05cqw;
        font-size: 1.45cqw;
    }

    .application__status {
        min-height: 1.7cqw;
        margin-top: 0.5cqw;
        font-size: 1.45cqw;
    }

    .application__price {
        width: 92.08cqw;
        height: 16.29cqw;
        flex: 0 0 16.29cqw;
        order: 4;
        padding: 3.6cqw 5.2cqw 3.6cqw 5.33cqw;
        margin-top: 2.13cqw;
        border-radius: 2cqw;
    }

    .application__price-title {
        font-size: 4.25cqw;
    }

    .application__price-subtitle {
        width: 39cqw;
        margin-top: 0.7cqw;
        font-size: 2.75cqw;
    }

    .application__price-old {
        font-size: 3.65cqw;
    }

    .application__price-current {
        font-size: 4.25cqw;
    }
}

@media (max-width: 480px) {
    .application {
        display: block;
    }

    .application__frame {
        width: min(100%, 430px);
        aspect-ratio: 430 / 989;
        flex-direction: column;
        gap: 0;
        padding-top: 0;
    }

    .application__left {
        display: contents;
    }

    .application__hero {
        width: 91.63cqw;
        height: 22.09cqw;
        flex: 0 0 22.09cqw;
        order: 1;
        overflow: visible;
        border-radius: 0;
        background: transparent;
    }

    .application__hero-title {
        width: auto;
        flex: 0 0 auto;
        margin: 9.77cqw 0 0 4.65cqw;
        font-size: 6.98cqw;
        line-height: 1;
    }

    .application__hero-visual {
        display: none;
    }

    .application__benefits {
        width: 91.63cqw;
        height: 34.42cqw;
        flex: 0 0 34.42cqw;
        flex-direction: column;
        order: 2;
        gap: 2.33cqw;
    }

    .application__benefit {
        width: 100%;
        height: 16.05cqw;
        flex: 0 0 16.05cqw;
        border-radius: 3.25cqw;
    }

    .application__benefit-title {
        width: 75cqw;
        margin: 5.35cqw 0 0 6.28cqw;
        font-size: 5.12cqw;
        line-height: 1;
    }

    .application__benefit::after {
        right: -5cqw;
        bottom: -12cqw;
        width: 42cqw;
        height: 25cqw;
        filter: blur(5cqw);
    }

    .application__benefit:first-child::after {
        background: #e167ff;
    }

    .application__benefit:last-child::after {
        background: #3ddcff;
    }

    .application__info {
        width: 4.65cqw;
        height: 4.65cqw;
        flex-basis: 4.65cqw;
        margin: -20.8cqw 4.65cqw 0 0;
    }

    .application__form {
        width: 91.63cqw;
        height: 132.79cqw;
        flex: 0 0 132.79cqw;
        order: 3;
        padding: 0 5.58cqw;
        margin-top: 2.33cqw;
        border-radius: 4.19cqw;
    }

    .application__form-title {
        margin-top: 6.51cqw;
        font-size: 6.98cqw;
    }

    .application__form-subtitle {
        width: 77.2cqw;
        margin-top: 2.32cqw;
        font-size: 3.95cqw;
    }

    .application__tabs {
        height: 10.7cqw;
        flex-basis: 10.7cqw;
        padding: 0.7cqw;
        margin-top: 2.6cqw;
        border-radius: 5.6cqw;
    }

    .application__tab {
        height: 9.3cqw;
        gap: 1cqw;
        padding: 1cqw;
        border-radius: 4.9cqw;
        font-size: 3.45cqw;
        line-height: 0.95;
        white-space: normal;
    }

    .application__tab span {
        max-width: 27cqw;
        text-align: center;
    }

    .application__tab img {
        width: 4.2cqw;
        height: 4.2cqw;
        flex-basis: 4.2cqw;
    }

    .application__fields {
        gap: 2.33cqw;
        margin-top: 5.58cqw;
    }

    .application__field {
        height: 11.63cqw;
        flex-basis: 11.63cqw;
        border-width: 0.23cqw;
        border-radius: 1.4cqw;
    }

    .application__field-input {
        padding: 0 5.12cqw;
        font-size: 4.19cqw;
    }

    .application__submit {
        height: 11.63cqw;
        flex-basis: 11.63cqw;
        margin-top: 3.7cqw;
        border-radius: 1.4cqw;
        font-size: 3.72cqw;
    }

    .application__consent {
        margin-top: 3.02cqw;
        font-size: 2.15cqw;
        line-height: 1.35;
    }

    .application__status {
        min-height: 2.9cqw;
        margin-top: 0.6cqw;
        font-size: 2.15cqw;
    }

    .application__price {
        width: 91.63cqw;
        height: 24.19cqw;
        flex: 0 0 24.19cqw;
        order: 4;
        align-items: center;
        padding: 5.58cqw;
        margin-top: 3.95cqw;
        border-radius: 2.33cqw;
    }

    .application__price-title {
        font-size: 5.58cqw;
    }

    .application__price-subtitle {
        width: 51cqw;
        margin-top: 0.7cqw;
        font-size: 3.72cqw;
    }

    .application__price-old {
        font-size: 0;
    }

    .application__price-old::after {
        content: "22 200 ₽";
        font-size: 3.72cqw;
    }

    .application__price-current {
        margin-top: 1.4cqw;
        font-size: 5.12cqw;
    }
}


.delivery {
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--delivery-white);
    border-radius: 20px;
    margin-bottom: 100px;
}

.delivery-card {
    display: flex;
    width: 100%;
    height: 233px;
    overflow: hidden;
    background: var(--delivery-white);
    border-radius: 20px;
}

.delivery-card__content {
    display: flex;
    min-width: 0;
    flex: 1 1 auto;
    flex-direction: column;
    padding: 35px 24px 20px 60px;
}

.delivery-card__title {
    margin: 0;
    font-family: 'OpenSans', sans-serif;
    font-style: normal;
    font-weight: 700;
    font-size: 32px;
    line-height: 44px;
    color: #303443;
}

.delivery-card__description {
    max-width: 690px;
    margin: 6px 0 0;
    font-style: normal;
    font-weight: 400;
    font-size: 20px;
    line-height: 27px;

    color: #303443;
}

.delivery-card__visual {
    display: block;
    width: 373px;
    height: 233px;
    flex: 0 0 373px;
}

.delivery-card__image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

@media (max-width: 800px) {
    .delivery {
        align-items: flex-start;
    }

    .delivery-card {
        width: 100%;
        height: 461px;
        flex-direction: column;
    }

    .delivery-card__visual {
        order: 1;
        width: 100%;
        height: 218px;
        flex: 0 0 218px;
    }

    .delivery-card__content {
        order: 2;
        flex: 1 1 auto;
        padding: 42px 30px 30px;
    }

    .delivery-card__title {
        font-size: 34px;
        line-height: 1.2;
    }

    .delivery-card__description {
        max-width: 635px;
        margin-top: 12px;
        font-size: 20px;
        line-height: 1.3;
    }
}

@media (max-width: 480px) {
    .delivery {
        min-height: 396px;
        align-items: flex-start;
    }

    .delivery-card {
        width: 390px;
        max-width: calc(100% - 36px);
        height: 396px;
        margin: 0 18px;
        border-radius: 16px;
    }

    .delivery-card__visual {
        width: 390px;
        max-width: 100%;
        height: 178px;
        flex-basis: 178px;
    }

    .delivery-card__content {
        padding: 24px 26px 18px;
    }

    .delivery-card__title {
        font-size: 24px;
        line-height: 1.25;
    }

    .delivery-card__description {
        margin-top: 10px;
        font-size: 16px;
        line-height: 1.38;
    }
}


.section-sna-slider .sna-slider-wrap {
    padding-left: 19%;
}

.section-sna-slider .sna-slider-wrap .sna-slider {
    display: none;
    opacity: 0;
    -webkit-transition: opacity 0.3s ease;
    -o-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
}

.section-sna-slider .sna-slider-wrap .sna-slider.active {
    display: block;
}

.section-sna-slider .sna-slider-wrap .sna-slider.visible {
    opacity: 1;
}

.section-sna-slider .sna-slider-wrap .sna-slider .swiper {
    padding-bottom: 0px;
}

.section-sna-slider .sna-slider-wrap .sna-slider .swiper-slide {
    max-width: 350px;
    width: 100%;
}

.section-sna-slider .sna-slider-wrap .sna-slider .swiper-slide .sdi-itm {
    margin: 0;
    width: 100%;
}

@media only screen and (max-width: 1600px) {
    .section-sna-slider .sna-slider-wrap {
        padding-left: 13%;
    }
}

@media only screen and (max-width: 1440px) {
    .section-sna-slider .sna-slider-wrap {
        padding-left: 9%;
    }
}

@media only screen and (max-width: 1360px) {
    .section-sna-slider .sna-slider-wrap {
        padding-left: 7%;
    }
}

@media only screen and (max-width: 1280px) {
    .section-sna-slider .sna-slider-wrap {
        padding-left: 4%;
    }
}

@media only screen and (max-width: 1200px) {
    .section-sna-slider .sna-slider-wrap {
        padding-left: 0px;
    }

    .section-sna-slider .sna-slider-wrap .sna-slider .swiper {
        padding-left: 15px;
        padding-right: 15px;
    }
}

.section-detail-faq .faq {
    min-height: 556px;
}

.section-detail-faq .faq__content {
    width: min(1170px, 100%);
    min-height: 556px;
}

.section-detail-faq .faq__title {
    margin: 0 0 50px;
    color: var(--faq-ink);
    font-style: normal;
    font-weight: 700;
    font-size: 38px;
    line-height: 52px;
    color: #303443;

}

.section-detail-faq .faq__categories {
    position: relative;
}

.section-detail-faq .faq__tabs {
    display: grid;
    width: 728px;
    height: 48px;
    grid-template-columns: 124px 162px 240px 202px;
    align-items: center;
    overflow: hidden;
    border: 2px solid #e8e8e8;
    border-radius: 24px;
    background: var(--faq-white);
    border: none;
}

.section-detail-faq .faq__tab {
    height: 40px;
    padding: 0 12px;
    background: transparent;
    color: #303443;
    font-style: normal;
    font-weight: 600;
    font-size: 18px;
    line-height: 120%;
    text-align: center;
    white-space: nowrap;
    border: none;
    cursor: pointer;
}

.section-detail-faq .faq__tab--active {
    border-radius: 22px;
    background: var(--faq-blue);
    color: var(--faq-white);
}

.section-detail-faq .faq__category-toggle,
.section-detail-faq .faq__category-menu {
    display: none;
}

.section-detail-faq .faq__list {
    display: none;
    width: 1024px;
    max-width: 100%;
    flex-direction: column;
    gap: 7px;
    margin-top: 39px;
}

.section-detail-faq .faq__list--active {
    display: flex;
}

.section-detail-faq .faq__item {
    overflow: hidden;
    border-radius: 8px;
    background: var(--faq-white);
    cursor: pointer;
}

.section-detail-faq .faq__question {
    display: flex;
    width: 100%;
    min-height: 80px;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 0 28px;
    background: var(--faq-white);
    border: none;
    font-style: normal;
    font-weight: 600;
    font-size: 22px;
    line-height: 125%;
    color: #303443;
    cursor: pointer;
}

.section-detail-faq .faq__chevron {
    display: block;
    width: 13px;
    height: 13px;
    flex: 0 0 13px;
    border-right: 2px solid var(--faq-blue);
    border-bottom: 2px solid var(--faq-blue);
    transform: rotate(45deg) translateY(-3px);
    transition: transform 180ms ease;
}

.section-detail-faq .faq__question[aria-expanded="true"] .faq__chevron,
.section-detail-faq .faq__category-toggle[aria-expanded="true"] .faq__chevron {
    transform: rotate(225deg) translate(-2px, -2px);
}

.section-detail-faq .faq__answer {
    padding: 0 28px 20px;
    color: var(--faq-ink);
    font-size: 18px;
    line-height: 1.section-detail-faq .4;
}

.section-detail-faq .faq__item:has(.section-detail-faq .faq__question[aria-expanded="true"]) {
    border: 2px solid var(--faq-blue);
}

@media (max-width: 800px) {
    .section-detail-faq .faq__content {
        width: 100%;
        min-height: 503px;
    }

    .section-detail-faq .faq__title {
        margin-bottom: 30px;
        font-size: 32px;
    }

    .section-detail-faq .faq__tabs {
        width: 670px;
        max-width: 100%;
        height: 45px;
        grid-template-columns: repeat(3, 1fr);
        border-radius: 23px;
    }

    .section-detail-faq .faq__tab {
        height: 41px;
        font-size: 0;
    }

    .section-detail-faq .faq__tab::after {
        content: attr(data-tablet-label);
        font-size: 18px;
    }

    .section-detail-faq .faq__tab:nth-child(4) {
        display: none;
    }

    .section-detail-faq .faq__list {
        gap: 10px;
        margin-top: 23px;
    }

    .section-detail-faq .faq__question {
        min-height: 84px;
        padding: 0 30px;
        font-size: 22px;
    }

    .section-detail-faq .faq__chevron {
        width: 15px;
        height: 15px;
        flex-basis: 15px;
    }
}

@media (max-width: 480px) {
    .section-detail-faq .faq__content {
        width: 390px;
        max-width: 100%;
        min-height: 452px;
    }

    .section-detail-faq .faq__title {
        margin-bottom: 18px;
        font-size: 24px;
        line-height: 1.section-detail-faq .2;
    }

    .section-detail-faq .faq__tabs {
        display: none;
    }

    .section-detail-faq .faq__category-toggle {
        display: flex;
        width: 241px;
        height: 42px;
        align-items: center;
        justify-content: space-between;
        padding: 0 20px;
        border-radius: 22px;
        background: var(--faq-white);
        color: var(--faq-ink);
        font-size: 14px;
        text-align: left;
    }

    .section-detail-faq .faq__category-toggle .section-detail-faq .faq__chevron {
        width: 10px;
        height: 10px;
        flex-basis: 10px;
        border-width: 1.section-detail-faq .5px;
        transform: rotate(45deg) translateY(-2px);
    }

    .section-detail-faq .faq__category-menu {
        z-index: 2;
        display: flex;
        width: 241px;
        flex-direction: column;
        gap: 2px;
        padding: 6px;
        margin-top: 6px;
        border-radius: 12px;
        background: var(--faq-white);
        box-shadow: 0 8px 20px rgb(0 0 0 / 25%);
    }

    .section-detail-faq .faq__category-menu[hidden] {
        display: none;
    }

    .section-detail-faq .faq__category-menu button {
        padding: 9px 12px;
        border-radius: 8px;
        background: var(--faq-white);
        color: var(--faq-ink);
        font-size: 14px;
        text-align: left;
    }

    .section-detail-faq .faq__category-menu button:hover,
    .section-detail-faq .faq__category-menu button:focus-visible {
        background: #eef4ff;
    }

    .section-detail-faq .faq__list {
        gap: 9px;
        margin-top: 28px;
    }

    .section-detail-faq .faq__item {
        border-radius: 8px;
    }

    .section-detail-faq .faq__question {
        min-height: 77px;
        padding: 0 24px;
        font-size: 18px;
    }

    .section-detail-faq .faq__chevron {
        width: 12px;
        height: 12px;
        flex-basis: 12px;
        border-width: 2px;
    }

    .section-detail-faq .faq__answer {
        padding: 0 24px 18px;
        font-size: 16px;
    }
}

/* Конец новых стилей для главной */
/* End */
/* /local/templates/project72/components/bitrix/news/prof.obuchenie/bitrix/news.detail/detail.courses/style.css?178852607367028 */
