/* Auto-generated from inline <style> blocks. */

/* ---- frontend/widgets/views/menu-b.php#1 ---- */
.free-menu-mobile, .four-menu-mobile {
        display: none;
    }
    .active {
        display: block;
    }
    .menu-list__sub-list_lvl_3 {
        display: none;
        padding-left: 20px;
    }

    .menu-category-title {
        display: inline-block;
        padding-right: 55px; /* чтобы не перекрывать правую стрелку */
    }

    /* Отключаем стандартный +/−, чтобы отображался только svg из Helpers::svgSprite('menu-toggler') */
    .menu-list__sub-list-trigger--sprite:before,
    .menu-list__sub-list-trigger--sprite:after {
        content: '';
        opacity: 0;
    }

    .menu-list__sub-list-trigger--sprite {
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .menu-list li.lvl3-active .sprite_menu-toggler {
        transform: rotate(-180deg);
    }

    .menu-list li.lvl3-active > .menu-list__sub-list_lvl_3 {
        display: block;
    }

    .li-geograf {
        margin-bottom: 0px!important;
    }
    .four-menu-mobile-pod {
        margin-top: 30px;
        margin-left: 10px;
        font-family: Open Sans;
        font-size: 16px;
        font-weight: 300;
        line-height: 21.79px;
        text-align: left;
        text-underline-position: from-font;
        text-decoration-skip-ink: none;
        color: #4A5A72;
    }
    .four-menu-mobile-pod1 {
        margin-top: 15px;
        margin-left: 20px;
    }
    .four-menu-mobile-padding {
        margin-top: 20px;
    }

/* ---- frontend/views/layouts/_header_a.php (topper) ---- */
.topper {
    background-color: #55CD6C;
}

/* ---- frontend/views/layouts/b/_search2.php ---- */
.header__up-menu .up-search-wrap form {
    display: none;
    width: 100%;
}
.header__up-menu .header__contacts {
    margin-top: 5px;
}
.header__up-menu .up-search-wrap form .up-search-form__input {
    border: 1px solid #f5f5f5;
    border-radius: 5px;
    padding: 20px 14px;
    font-size: 16px;
    color: #808284;
    position: absolute;
    top: 0;
    left: 0;
    right: 141px;
    bottom: 0;
}
.sprite_search2 {
    width: 21px;
    height: 21px;
    cursor: pointer;
    margin-top: 8px;
    margin-right: 9px;
}
.header__up-menu.open-search .up-search-wrap form {
    display: block;
}
.sprite_close-search {
    width: 20px;
    height: 20px;
    cursor: pointer;
    position: absolute;
    top: 12px;
    right: 0;
}
.header__up-menu.open-search .header__logo,
.header__up-menu.open-search .nav-list,
.header__up-menu.open-search .sprite_search2,
.header__up-menu.open-search .header__contacts-pc,
.header__up-menu.open-search .header__calc-but {
    display: none;
}
.header__up-menu.open-search .header__right {
    float: none;
    display: block;
}

.up-search-form {
    position: relative;
}

.up-search-form__submit {
    position: absolute;
    top: 0;
    right: 63px;
    padding-left: 20px;
    padding-right: 20px;
}

/* ---- frontend/views/partials/common/_services.php ---- */
.service__item {
    position: relative;
}
.service__item:before {
    content: '';
    display: block;
    background: var(--service-brief-bg, url('/images/brief-custom-bg.webp')) center center;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
    background-size: cover;
}
.service__item:after {
    content: '';
    display: block;
    bottom: 0;
    left: 0;
    right: 0;
    top: 0;
    background: rgba(0, 255, 139, 0.6);
    position: absolute;
    z-index: -1;
}
.service__item .service__item-ico {
    background: var(--service-icon-bg, none);
    background-color: var(--service-icon-bg-color, initial);
    -webkit-mask-image: var(--service-icon-mask);
    mask-image: var(--service-icon-mask);
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
}


/* ---- frontend/widgets/buttons/views/scroll-top.php#1 ---- */
#scrollToTopBtn {
        background-color: #55CD6C;
        border: none;
        border-radius: 50%;
        bottom: 20px;
        color: #fff;
        cursor: pointer;
        outline: none;
        padding: 20px;
        position: fixed;
        left: 30px;
        z-index: 99;
        opacity: 0.5;
    }

    #scrollToTopBtn:hover {
        background-color: #5cd974;
        opacity: 1;
    }

    #scrollToTopBtn span {
        border: 4px solid #fff;
        border-left: 0;
        border-top: 0;
        display: block;
        height: 15px;
        position: relative;
        top: 3px;
        -webkit-transform: rotate(225deg);
        transform: rotate(225deg);
        width: 15px
    }


/* ---- frontend/components/Breadcrumbs.php ---- */
.footer__breadcrumbs .breadcrumbs {
            padding-top: 0;
            padding-left: 0;
        }
        .breadcrumbs {
            padding-top: 25px;
            padding-bottom: 22px;
            margin-bottom: 0;
            display: block;
            font-size: 16px;
            font-weight: 400;
            padding-left: 37px;
            background: transparent;
            color: var(--color-gray-subtitle);
        }
        .breadcrumbs li:before {
            content: ' > ';
            font-size: 14px;
            margin-right: 5px;
        }

        .breadcrumbs li span:hover{
            color: var(--color-green-primary);
        }

        @media (max-width: 800px) {
            .breadcrumbs {
                padding: 10px;
                padding-left: 30px;
            }
        }
        @media (max-width: 467px) {
            .breadcrumbs {
                padding-left: 18px;
                font-size: 12px;
                overflow-x: auto;
                overflow-y: hidden;
                white-space: nowrap;
                scrollbar-width: none; 
            }

            .breadcrumbs li {
                display: inline-block;
                white-space: nowrap;
            }

            .breadcrumbs li:last-child,
            .breadcrumbs li:last-child span {
                overflow: visible;
                text-overflow: initial;
            }

            .breadcrumbs li:before{
                font-size: 10px;
            }
        }


/* ---- frontend/widgets/service-page/list-with-icon.php#1 ---- */
.list-with-icon{
        background-color: var(--color-green-dark);
        padding: var(--section-padding);
    }

.list-with-icon-h1{
        font-size: var(--font-size-h1);
        font-weight: var(--font-weight-semibold);
        color: var(--color-white);
    }

.list-with-icon-h2{
        font-size: var(--font-size-h2);
        font-weight: 400;
        color: #EEEFF1;
        margin: 25px 0 65px;
        max-width: 785px;
    }

.list-with-icon-intro{
        font-size: var(--font-size-h2);
        font-weight: 400;
        color: #EEEFF1;
        margin: 25px 0 65px !important;
    }

.list-with-icon-cards{
        display: flex;
        flex-direction: column;
    }

.list-with-icon-cards-grid{
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        grid-template-rows: repeat(2, auto);
        gap: 4vw 6vw;
    }

.list-with-icon-kv{
        width: 100%;
        height: 100%;
    }

.list-with-icon-kv-icon{
        width: 60px;
        height: 60px;
        margin-bottom: 20px;
    }

.list-with-icon-kv-title{
        font-family: var(--font-family-primary);
        font-size: var(--font-size-h2);
        font-weight: 400;
        color: var(--color-white);
        margin-top: 30px;
    }

.list-with-icon-kv-text{
        font-size: var(--font-size-text);
        color: var(--color-white);
        margin-top: 15px;
    }

.list-with-icon-text-h2{
        font-size: var(--font-size-h2);
        font-weight: 700;
        color: var(--color-white);
        display: flex;
        align-items: center;
        margin-top: 65px;
    }

.list-with-icon-text-h2-second{
        margin-top: 40px;
    }
    @media (max-width: 1000px) {
        .list-with-icon {
            padding: var(--padding-tablet);
        }

        .list-with-icon-intro {
            font-size: var(--font-size-text);;
        }

        .list-with-icon-h1 {
            font-size: 30px;
        }

        .list-with-icon-h2 {
            margin: 20px 0 30px;
            font-size: var(--font-size-text);
            max-width: 720px;
        }

        .list-with-icon-cards-grid {
            grid-template-columns: repeat(2, 1fr);
            grid-template-rows: repeat(3, auto);
            gap: 30px;
        }

        .list-with-icon-text-h2 {
            font-size: var(--font-size-text);
            margin-top: 50px;
        }

        .list-with-icon-text-h2-second {
            margin-top: 35px;
        }
    })

    @media screen and (max-width: 700px) {
        .list-with-icon-cards-grid {
            grid-template-columns: repeat(1, 1fr);
        }
        .list-with-icon {
            padding: var(--padding-mobile);
        }

        .list-with-icon-h1 {
            font-size: 30px;
        }

        .list-with-icon-h2 {
            font-size: 18px;
            margin: 30px 0 70px;
        }

        .list-with-icon-cards-grid {
            grid-template-columns: 1fr;
        }

        .list-with-icon-kv:nth-child(n) {
            grid-column: auto;
            grid-row: auto;
        }

        .list-with-icon-kv-title {
            margin-top: 15px;
            font-weight: bold;
            font-size: 18px;
        }

        .list-with-icon-kv-text {
            font-size: 15px;
        }

        .list-with-icon-text-h2,
        .list-with-icon-text-h2-second {
            font-size: 15px;
            font-weight: bold;
            margin-top: 30px;
        }

    }


/* ---- frontend/widgets/forms/views/feedback-form-modern.php#1 ---- */
.block15-glav {
            background-color: var(--color-gray-bg);
            padding: var(--section-padding);
        }

        .block15-glav-content {
            display: flex;
            gap: 31px;
            align-items: flex-start;
            justify-content: space-between;
        }

        .block15-glav-left {
            max-width: 496px;
        }

        .block15-glav-right {
            margin-top: 20px;
            min-width: 500px;
        }

        .block15-glav-h1 {
            font-size: var(--font-size-h1);
            font-weight: 600;
            color: var(--color-dark);
            margin-bottom: 25px;
            line-height: 1.2;
        }

        .block15-glav-text {
            font-size: var(--font-size-text);
            font-weight: 400;
            color: var(--color-dark);
            line-height: 1.2;
        }
        .block15-glav-h1-mobile,
        .block15-glav-text-mobile {
            display: none;
        }

        .block15-glav-form {
            margin-top: 30px;
        }

        .block15-glav-form-label {
            font-size: var(--font-size-text);
            font-weight: 400;
            color: var(--color-black);
            margin-bottom: 10px;
            margin-top: 30px;
            display: block;
        }

        .block15-glav-form-input {
            width: 100%;
            height: 48px;
            padding: 0 15px;
            font-size: var(--font-size-text);
            font-weight: 400;
            color: var(--color-black);
            background-color: var(--color-white);
            border: 1px solid var(--color-gray-icon);
            border-radius: 0;
            outline: none;
            box-sizing: border-box;
        }

        .block15-glav-form-textarea {
            width: 100%;
            height: 48px;
            padding: 15px;
            font-size: var(--font-size-text);
            font-weight: 400;
            color: var(--color-black);
            background-color: var(--color-white);
            border: 1px solid var(--color-gray-icon);
            border-radius: 0;
            outline: none;
            resize: none;
            box-sizing: border-box;
            overflow: hidden;
        }

        .block15-glav-form-label .required {
            color: red;
        }

        .block15-glav-checkbox-group {
            display: flex;
            align-items: center;
            gap: 10px;
            margin-top: 15px;
        }

        /* Переключатель: влево = выкл (серый), вправо = вкл (зелёный) */
        .block15-glav-checkbox {
            width: 28px;
            height: 12px;
            background-color: #C5C8CC;
            border-radius: 30px;
            position: relative;
            cursor: pointer;
            border: none;
            outline: none;
            appearance: none;
            -webkit-appearance: none;
            flex-shrink: 0;
        }

        .block15-glav-checkbox:checked {
            background-color: rgba(76, 197, 116, 1);
        }

        .block15-glav-checkbox::after {
            content: '';
            position: absolute;
            top: 1px;
            left: 1px;
            width: 10px;
            height: 10px;
            background-color: #F0F1F3;
            border-radius: 50%;
            transition: transform 0.3s ease, background-color 0.3s ease;
        }

        .block15-glav-checkbox:checked::after {
            transform: translateX(16px);
            background-color: #ffffff;
        }

        .block15-glav-checkbox-text {
            font-size: 11px;
            font-weight: 300;
            color: var(--color-dark);
            line-height: var(--line-height);
        }

        .block15-glav-checkbox-text a {
            text-decoration: underline;
            color: var(--color-dark);
        }

        .block15-glav-button {
            width: 100%;
            height: 51px;
            background-color: var(--color-green-button-light);
            border-radius: var(--border-radius-btn);
            border: none;
            font-size: var(--font-size-text);
            font-weight: 700;
            color: var(--color-white);
            cursor: pointer;
            transition: background-color 0.3s ease;
            margin-top: 30px;
            text-align: center;
        }

        .block15-glav-button:hover {
            background-color: var(--color-green-primary);
        }

        .block15-glav-button:disabled,
        .block15-glav-button[disabled] {
            background-color: #C5C8CC;
            color: #F5F6F7;
            cursor: not-allowed;
            opacity: 1;
        }

        .block15-glav-button:disabled:hover,
        .block15-glav-button[disabled]:hover {
            background-color: #C5C8CC;
            cursor: not-allowed;
        }

        .block15-glav-img {
            width: 100%;
            height: 100%;
            max-height: 604px;
            object-fit: cover;
        }
        @media (max-width: 1069px) and (min-width: 1000px) {
            .block15-glav {
                padding: 80px 20px;
            }
        }
        @media (max-width: 1000px)  {
            .block15-glav {
                padding: 60px 30px;
            }

            .block15-glav-h1-mobile {
                display: block;
                font-size: var(--font-size-h1);
                font-weight: 600;
                color: var(--color-dark);
                margin-bottom: 25px;
                line-height: 1.2;
                width: 100%;
            }

            .block15-glav-text-mobile {
                display: block;
                font-size: var(--font-size-text);
                font-weight: 400;
                color: var(--color-dark);
                line-height: 1.2;
                margin-bottom: 30px;
                width: 100%;
            }

            .block15-glav-left .block15-glav-h1,
            .block15-glav-left .block15-glav-text {
                display: none;
            }

            .block15-glav-content {
                display: flex;
                flex-direction: column;
                gap: 0px;
            }

            .block15-glav-right {
                order: 1;
                margin-top: 0;
                width: 100%;
            }

            .block15-glav-left {
                order: 2;
                max-width: none;
                width: 100%;
            }

            .block15-glav-img {
                width: 100%;
                height: 716px;
                border-radius: 12px;
            }
        }
        @media (max-width: 700px) {
            html {
                overflow-x: hidden;
            }

            body {
                overflow-x: hidden;
            }

            .block1-glav-left-kv .block1-glav-left-kv-text,
            .block1-glav-left-kv .block1-glav-left-kv-button {
                display: none;
            }

            .block15-glav {
                padding: 60px 15px 60px 18px;
            }

            .block15-glav-h1-mobile {
                font-size: 27px;
                margin-bottom: 10px;
            }

            .block15-glav-text-mobile {
                font-size: var(--font-size-small);
                margin-bottom: 0px;
            }

            .block15-glav-form-label {
                font-size: var(--font-size-small);
            }

            .block15-glav-button {
                margin-top: 46px;
                height: 54px;
                text-align: center;
            }

            .block15-glav-right {
                display: none;
            }
        }


/* ---- frontend/widgets/views/other-services.php#1 ---- */
:root {
            /* ---------- РАЗМЕРЫ И ОТСТУПЫ ---------- */
            --container-width: 1200px;
        }
        .section-container {
            max-width: var(--container-width);
            margin: 0 auto;
            width: 100%;
        }

        .block16-glav {
            background-color: #3D9E5D;
            padding: var(--section-padding);
        }

        .block16-glav-h1 {
            font-family: var(--font-family-primary);
            font-size: 40px;
            font-weight: var(--font-weight-semibold);
            color: #FFFFFF;
            margin-bottom: 50px;
        }

        .block16-glav-cards {
            display: flex;
            gap: 30px;
        }

        .block16-glav-card {
            flex: 1;
            height: 132px;
            border: 2px solid #FFFFFF;
            border-radius: 10px;
            background-color: transparent;
            padding: 25px 5px 25px 5px;
            display: flex;
            flex-direction: column;
            justify-content: flex-start;
            align-items: center;
            text-align: center;
            box-sizing: border-box;
        }

        .block16-glav-card-h2 {
            font-family: var(--font-family-primary);
            font-size: var(--font-size-h2);
            font-weight: 700;
            color: #FFFFFF;
            margin-bottom: 8px;
            margin: 0 0 8px 0;
        }

        .block16-glav-card-text {
            font-family: var(--font-family-primary);
            font-size: var(--font-size-text);
            font-weight: 400;
            color: #FFFFFF;
            margin: 0;
            line-height: 1.3;
        }

        .block16-glav-pagination {
            display: flex;
            justify-content: flex-end;
            gap: 14px;
            margin-top: 30px;
        }

        .block16-glav-pagination-dot {
            width: 12px;
            height: 12px;
            border-radius: 50%;
            background-color: #FFFFFF;
            box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
            cursor: pointer;
            transition: opacity 0.3s ease;
        }

        .block16-glav-pagination-dot:not(.active) {
            background-color: #DBDEE3;
            opacity: 1;
        }

        .block16-glav-pagination-dot:hover {
            opacity: 0.8;
        }

        @media (max-width: 1000px)  {
            .block16-glav {
                padding: var(--padding-tablet);
            }

            .block16-glav-h1 {
                font-size: 27px;
            }

            .block16-glav-cards {
                flex-wrap: wrap;
                gap: 3vw !important;
            }

            .block16-glav-card {
                flex: 0 0 48% !important;
            }

            .block6-glav {
                padding: var(--padding-tablet);
            }

            .block6-glav-h1 {
                font-size: 30px;
            }

            .block6-glav-h2 {
                margin: 20px 0 30px;
                font-size: var(--font-size-text);
                max-width: 720px;
            }

            .block6-glav-cards-grid {
                grid-template-columns: repeat(2, 1fr);
                grid-template-rows: repeat(3, auto);
                gap: 30px;
            }

            .block6-glav-text-h2 {
                font-size: var(--font-size-text);
                margin-top: 50px;
            }

            .block6-glav-text-h2-second {
                margin-top: 35px;
            }

            .block7-glav {
                padding: var(--padding-tablet);
            }

            .block7-glav-h1 {
                font-size: 27px;
                margin-bottom: 20px;
                color: #0F1217;
            }

            .block7-glav-h2 {
                font-size: var(--font-size-text);
                margin-bottom: 62px;
                color: var(--color-gray-text-secondary);
            }

            .block12-glav {
                padding: var(--padding-tablet);
            }

            .block12-glav-h1-mobile {
                display: block;
                font-size: var(--font-size-h1);
                font-weight: var(--font-weight-semibold);
                color: var(--color-dark);
                margin-bottom: 25px;
                line-height: 1.2;
                width: 100%;
            }

            .block12-glav-text-mobile {
                display: block;
                font-size: var(--font-size-text);
                color: var(--color-dark);
                line-height: 1.2;
                margin-bottom: 30px;
                width: 100%;
            }

            .block12-glav-left .block12-glav-h1,
            .block12-glav-left .block12-glav-text {
                display: none;
            }

            .block12-glav-content {
                display: flex;
                flex-direction: column;
                gap: 0px;
            }

            .block12-glav-right {
                order: 1;
                margin-top: 0;
                width: 100%;
            }

            .block12-glav-left {
                order: 2;
                max-width: none;
                width: 100%;
            }

            .block12-glav-img {
                width: 100%;
                height: 716px;
                border-radius: 12px;
            }

            .block3-glav-h1 {
                font-size: 27px;
                margin-bottom: 30px;
            }

            .block3-glav-text {
                margin-bottom: 30px;
            }

            .block3-glav-card-top-h2,
            .block3-glav-card-bottom-h2,
            .block3-glav-card-right-h2,
            .block3-glav-card-full-width-h2 {
                font-size: var(--font-size-text);
            }

            .block3-glav-card-full-width-button {
                margin-top: 10px;
                height: 30px;
                font-size: 9px;
                max-width: 220px;
            }

            .block3-glav-card-full-width {
                max-height: 260px;
            }

            .block3-glav-card-top-img {
                max-width: 226px;
            }

            .block3-glav-animation-container {
                min-height: 200px;
            }

            .falling-rect span {
                padding: 6px;
                font-size: 8px;
            }

            .rect-1 {
                top: 40px;
                left: 10px;
            }

            .rect-1.animate {
                animation-delay: 2s;
            }

            .rect-1 span {
                transform: rotate(-9deg);
            }

            .rect-2 {
                top: 80px;
                right: 55px;
            }

            .rect-2.animate {
                animation-delay: 1.3s;
            }

            .rect-2 span {
                transform: rotate(-3deg);
            }

            .rect-3 {
                top: 120px;
                left: 15px;
            }

            .rect-3.animate {
                animation-delay: 0.7s;
            }

            .rect-3 span {
                transform: rotate(-17deg);
            }

            .rect-4 {
                top: 120px;
                right: 40px;
            }

            .rect-4.animate {
                animation-delay: 0s;
            }

            .rect-4 span {
                transform: rotate(-24deg);
            }

            .block3-glav-card-right-img {
                max-width: 330px;
                margin-right: -30px;
            }

            .block3-glav-card-bottom-h2{
                max-width: 150px;
            }

            .block3-glav-card-top {
                padding: var(--padding-small) 12px 0 12px;
            }

            .block3-glav-card-bottom,
            .block3-glav-card-right,
            .block3-glav-card-full-width {
                padding: var(--padding-small) 12px;
            }

            .block3-glav-card-bottom {
                align-items: center;
            }

            .block3-glav-card-right {
                overflow: hidden;
            }

            .block3-glav-card-full-width-img {
                object-fit: initial;
            }
        }
        @media (max-width: 700px) {
            .block16-glav {
                padding: var(--padding-mobile);
            }

            .block16-glav-h1 {
                font-size: 30px;
                margin-bottom: 30px;
                text-align: center;
            }

            .block16-glav-cards {
                gap: 20px;
                flex-direction: column;
                flex-wrap: nowrap;
            }

            .block16-glav-card {
                flex: 0 0 auto !important;
                height: auto;
                min-height: 120px;
                padding: 20px;
                width: 100%;
                display: flex !important;
                flex-direction: column;
                align-items: center;
                justify-content: center;
            }

            .block16-glav-card:nth-child(3),
            .block16-glav-card:nth-child(n+4) {
                display: flex !important;
            }

            .block16-glav-pagination {
                display: none !important;
            }

            .block16-glav-card-h2 {
                font-size: 18px;
            }

            .block16-glav-card-text {
                font-size: 14px;
            }
        }

/* ---- frontend/views/partials/common/_calculator-form.php#1 ---- */
.poslednay-fos {
        font-family: 'Open Sans', sans-serif;
        text-underline-position: from-font;
        text-decoration-skip-ink: none;
        text-align: left;
        padding: 0px;
        margin: 0px;
        background-color: #EEEFF1;
    }

    .poslednay-fos1 {
        padding-top: 80px;
        margin-left: 30%; /* Заменяем 557px на процентное значение */
        padding-bottom: 80px;
        max-width: 806px; /* Максимальная ширина контента (как у ваших инпутов) */
        width: 100%; /* Чтобы блок не выходил за пределы экрана */
        box-sizing: border-box; /* Чтобы padding не влиял на общую ширину */
    }

    .poslednay-fos-title {
        font-weight: 700;
        font-size: 49px;
        line-height: 100%;
        margin-bottom: 30px;
        color: #000000;
        text-align: center;
    }

    .poslednay-fos-input {
        width: 806px;
        height: 48px;
        border-radius: 3px;
        border: 1px solid #AAADB066;
        font-weight: 400;
        font-size: 16px;
        line-height: 100%;
        color: #2B2B2C;
        padding-left: 15px;
        cursor: pointer;
    }

    .poslednay-fos-input-kom:focus {
        outline: none;
    }

    .poslednay-fos-input-kom {
        padding: 10px 15px;
    }

    .poslednay-fos-text {
        font-weight: 400;
        font-size: 18px;
        line-height: 100%;
        color: #2B2B2C;
        margin-bottom: 10px;
        margin-top: 30px;
    }

    .popup-politika-fos-button {
        display: flex;
        margin-bottom: 15px;
        margin-top: 17px;
    }

    .toggle-container-fos-button-glav {
        width: 34px;
        height: 19px;
        background-color: #4CC574;
        border-radius: 100px;
        position: relative;
        cursor: pointer;
        transition: background-color 0.3s;
        margin-right: 7px;
    }

    .toggle-container-fos-button-glav.inactive {
        background-color: #AAADB0;
    }

    .toggle-container-fos-button-glav.inactive .toggle-slider-fos-button {
        right: 17px;
    }

    .button-poslednay[disabled] {
        background-color: #AAADB0;
        cursor: not-allowed;
    }

    .button-poslednay[disabled]:hover {
        background-color: #AAADB0;
        cursor: not-allowed;
    }

    .toggle-slider-fos-button {
        width: 14px;
        height: 14px;
        background-color: white;
        border-radius: 50%;
        position: absolute;
        top: 2px;
        right: 2px;
        transition: right 0.3s;
    }

    .form__agreementfos-glav {
        font-family: 'Open Sans', sans-serif;
        font-weight: 300;
        font-size: 11px;
        line-height: 100%;
        color: #555658;
        margin-top: 5px;
    }

    .form__agreementfos-glav a {
        color: #4CC574;
        text-decoration: none;
    }

    .form__agreementfos-glav a:hover {
        color: #3D9E5D;
    }

    .button-poslednay {
        width: 806px;
        height: 51px;
        font-weight: 600;
        font-size: 14px;
        line-height: 100%;
        color: #FFFFFF;
        background-color: #55CD6C;
        padding: 16px 342.5px;
        border: none;
        border-radius: 30px;
        margin-top: 30px;
        cursor: pointer;
    }

    .button-poslednay:hover {
        background-color: #47AB5A;
    }

    @media (max-width: 1380px) {
        .poslednay-fos1 {
            margin-left: 25%;
        }
    }

    @media (max-width: 1240px) {
        .poslednay-fos1 {
            margin-left: 19%;
        }
    }

    @media (max-width: 1100px) {
        .poslednay-fos1 {
            margin-left: 11%;
        }
    }

    @media (max-width: 1000px) {
        .poslednay-fos1 {
            margin-left: 11%;
        }

        .poslednay-fos-input {
            width: 570px;
        }

        .button-poslednay {
            width: 570px;
            padding: 0px 0px;
        }

        .poslednay-fos-title {
            margin-left: 0px;
        }
    }

    @media (max-width: 910px) {
        .poslednay-fos1 {
            max-width: 572px;
        }
    }

    @media (max-width: 665px) {
        .poslednay-fos-input {
            width: 450px;
        }

        .button-poslednay {
            width: 450px;
        }

        .poslednay-fos-title {
            font-size: 41px;
        }

        .poslednay-fos1 {
            max-width: 420px;
        }
    }

    @media (max-width: 540px) {
        .poslednay-fos-input {
            width: 390px;
        }

        .button-poslednay {
            width: 390px;
        }

        .poslednay-fos-title {
            font-size: 37px;
        }

        .poslednay-fos1 {
            padding-top: 60px;
            padding-bottom: 60px;
        }
    }

    @media (max-width: 480px) {
        .poslednay-fos1 {
            max-width: 378px;
        }
    }

    @media (max-width: 460px) {
        .poslednay-fos-title {
            font-weight: 600;
            font-size: 27px;
            line-height: 100%;
        }

        .poslednay-fos-text {
            font-weight: 400;
            font-size: 14px;
            line-height: 100%;
        }

        .poslednay-fos-input {
            width: 327px;
        }

        .button-poslednay {
            width: 327px;
        }
    }

    @media (max-width: 420px) {
        .poslednay-fos1 {
            margin-left: 5%;
        }
    }

    @media (max-width: 400px) {
        .poslednay-fos1 {
            max-width: 297px;
        }
    }

    @media (max-width: 355px) {
        .poslednay-fos-input {
            width: 290px;
        }

        .button-poslednay {
            width: 290px;
        }
    }

/* ---- frontend/views/partials/common/_calculator-horizontal.php#1 ---- */
.form__fields-wrapper .select2-container,
    .form__fields-wrapper #category-select1 + .select2-container,
    .form__fields-wrapper #category-select2 + .select2-container {
        width: 100% !important;
    }

    .form__fields-wrapper .select2-container .select2-selection--single {
        height: 55px !important;
        line-height: 55px !important;
        font-size: 16px !important;
        border-radius: 5px !important;
        background-color: #4a5a72 !important;
        padding-left: 19px !important;
    }

    .form__fields-wrapper .select2-container .select2-selection--single .select2-selection__placeholder {
        color: #1E242E !important;
    }

    .form__fields-wrapper .select2-container .select2-selection--single .select2-selection__arrow {
        display: none !important;
    }

    .form__fields-wrapper .select2-container.select2-container--focus .select2-selection--single,
    .form__fields-wrapper .select2-container--krajee.select2-container--focus .select2-selection--single {
        border-color: #4CC574 !important;
        box-shadow: 0 0 10px rgba(76, 197, 116, 0.5), 0 0 20px rgba(76, 197, 116, 0.3) !important;
    }

    .form__fields-wrapper .select2-container .select2-selection--single .select2-selection__rendered {
        line-height: 40px !important;
        text-align: left;
        padding-left: 0 !important;
        color: #ffffff !important;
    }

    .form__fields-wrapper .select2-container--krajee .select2-selection--single .select2-selection__rendered {
        color: #ffffff !important;
    }

    .form__fields-wrapper .select2-container--krajee .select2-selection--single .select2-selection__placeholder {
        color: #ffffff  !important;
    }

    .form__fields-wrapper ~ .select2-dropdown,
    .select2-dropdown {
        background-color: #FFFFFF !important;
        border: 1px solid #E6E8EA !important;
        border-radius: 10px !important;
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15) !important;
        padding-top: 10px !important;
        padding-bottom: 10px !important;
    }

    /* Поле поиска/ввода в выпадающем списке — показываем для ввода городов (в т.ч. тех, чего нет в списке) */
    .select2-search--dropdown .select2-search__field {
        padding: 10px 15px !important;
        font-size: 16px !important;
        border: 1px solid #E6E8EA !important;
        border-radius: 5px !important;
        font-family: 'Open Sans', sans-serif !important;
        color: #555658 !important;
        background-position: right 11px top 15px !important;
    }

    .select2-results__options {
        max-height: 300px !important;
        padding: 5px 0 !important;
        overflow-y: auto !important;
        scroll-behavior: smooth;
    }

    .select2-results__option {
        padding: 12px 20px !important;
        font-family: 'Open Sans', sans-serif !important;
        font-size: 16px !important;
        color: #555658 !important;
        cursor: pointer !important;
        transition: background-color 0.2s ease, color 0.2s ease !important;
    }

    .select2-results__option:hover {
        background-color: #4CC574 !important;
        color: #FFFFFF !important;
    }

    .select2-results__option[aria-selected="true"] {
        background-color: #4CC574 !important;
        color: #FFFFFF !important;
    }

    .select2-results__option--highlighted {
        background-color: #4CC574 !important;
        color: #FFFFFF !important;
    }

    /* Кастомный зеленый скроллбар без стрелок */
    .select2-results__options::-webkit-scrollbar {
        width: 8px !important;
    }

    .select2-results__options::-webkit-scrollbar-track {
        background: #F5F5F5 !important;
        border-radius: 4px !important;
    }

    .select2-results__options::-webkit-scrollbar-thumb {
        background: #4CC574 !important;
        border-radius: 4px !important;
    }

    .select2-results__options::-webkit-scrollbar-thumb:hover {
        background: #3D9E5D !important;
    }

    .select2-results__options::-webkit-scrollbar-button {
        display: none !important;
        width: 0 !important;
        height: 0 !important;
    }

    body .form__fields-wrapper ~ .select2-dropdown,
    body .select2-container .select2-dropdown,
    body .select2-container--default .select2-dropdown,
    body .select2-container--krajee .select2-dropdown {
        background-color: #FFFFFF !important;
        border: 1px solid #E6E8EA !important;
        border-radius: 10px !important;
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15) !important;
    }

    body .select2-results__option:hover,
    body .select2-container .select2-results__option:hover,
    body .select2-container--default .select2-results__option:hover,
    body .select2-container--krajee .select2-results__option:hover {
        background-color: #4CC574 !important;
        color: #FFFFFF !important;
    }

    body .select2-results__option--highlighted,
    body .select2-container .select2-results__option--highlighted,
    body .select2-container--default .select2-results__option--highlighted,
    body .select2-container--krajee .select2-results__option--highlighted {
        background-color: #4CC574 !important;
        color: #FFFFFF !important;
    }
  
    .form__fields-wrapper .selection .select2-selection,
    .form__fields-wrapper .select2 {
        border: none;
        color: #1E242E !important;
    }

    .form__fields-wrapper .select2-container--krajee .select2-selection--single .select2-selection__arrow {
        border-left: none !important;
        display: none !important;
    }

    .form__fields-wrapper .has-success .select2-container--open .select2-selection,
    .form__fields-wrapper .has-success .select2-container--krajee.select2-container--focus .select2-selection {
        box-shadow: 0 0 10px rgba(76, 197, 116, 0.5), 0 0 20px rgba(76, 197, 116, 0.3) !important;
    }

    .form__fields-wrapper .select2-container--krajee .select2-selection--single .select2-selection__clear,
    .form__fields-wrapper .select2-container--krajee .select2-selection--multiple .select2-selection__clear {
        top: 14px !important;
    }

    .form__fields-wrapper .select2-container--krajee.select2-container--open .select2-selection,
    .form__fields-wrapper .select2-container--krajee .select2-selection:focus {
        box-shadow: 0 0 10px rgba(76, 197, 116, 0.5), 0 0 20px rgba(76, 197, 116, 0.3) !important;
    }
    .select2-container--open .select2-dropdown--below {
        margin-top: 15px !important;
    }

    .select2-container--open .select2-dropdown--above{
        margin-top: -15px !important;
    }

/* ---- frontend/views/partials/common/_calculator-horizontal.php#2 ---- */
@media (max-width: 480px) {
    .form__fields-wrapper .select2-container .select2-selection--single .select2-selection__rendered {
        line-height: 40px !important;
      }

    .form__fields-wrapper .select2-container .select2-selection--single{
          height: 35px !important;
    }

    .form__field{
        margin-bottom: 10px !important;
      
    }

    .select2-container--krajee .select2-selection--single{
      padding: 0px !important;
    }

    .form__fields-wrapper .select2-container .select2-selection--single .select2-selection__rendered{
      line-height: 35px !important;
    }
      
        .form_horizontal .form__calc-submit-button .button {
            margin-left: 0 !important;
        }
    }
    .thank-you-text {
        font-size: 35px;
        padding: 53px 10px 10px 10px;
        line-height: 1em;
        max-width: 500px;
        margin: 0 auto;
    }
    .thank-you-text2 {
        font-size: 20px;
    }

/* ---- frontend/views/partials/common/_feedback-form.php#1 ---- */
.block5-container {
        font-family: 'Open Sans', sans-serif;
        text-underline-position: from-font;
        text-decoration-skip-ink: none;
        text-align: left;
        padding: 0;
        margin: 0;
    }

    .block5-container1 {
        padding-top: 80px;
        margin-bottom: 80px;
        display: flex;
    }

    .block5-img {
        /*width: 705px;*/
        height: 649px;
    }

    .block5-title {
        font-weight: 700;
        font-size: 49px;
        line-height: 121%;
        width: 636px;
        color: #000000;
        margin-bottom: 15px;
    }

    .block5-all {
        width: 666px;
        margin-right: 131px;
    }

    .block5-text {
        font-weight: 400;
        font-size: 18px;
        line-height: 141%;
        color: #000000;
        width: 646px;
    }

    .placeholder-block5 {
        font-weight: 400;
        font-size: 18px;
        line-height: 100%;
        color: #2B2B2C;
        margin-bottom: 5px;
        margin-top: 30px;
    }

    .input-fos-block5 {
        width: 666px;
        height: 48px;
        border-radius: 3px;
        border: 1px solid #AAADB066;
        font-weight: 400;
        font-size: 16px;
        line-height: 100%;
        color: #2B2B2C;
        padding-left: 15px;
    }

    .input-fos-block5-kom:focus {
        outline: none;
    }

    .input-fos-block5-kom {
        padding: 10px 15px;
    }

    .button-block5 {
        width: 665px;
        height: 51px;
        background-color: #55CD6C;
        font-weight: 600;
        font-size: 14px;
        line-height: 100%;
        color: #FFFFFF;
        padding: 16px 272px 16px 272px;
        margin-top: 30px;
        border: none;
        border-radius: 30px;
        cursor: pointer;
    }

    .button-block5:hover {
        background-color: #3D9E5D;
    }

    .popup-politika-fos-button {
        display: flex;
        margin-bottom: 15px;
        margin-top: 17px;
    }

    .button-block5[disabled] {
        background-color: #AAADB0;
        cursor: not-allowed;
    }

    .button-block5[disabled]:hover {
        background-color: #AAADB0;
        cursor: not-allowed;
    }

    .form__agreementfos-glav {
        font-family: 'Open Sans', sans-serif;
        font-weight: 300;
        font-size: 11px;
        line-height: 100%;
        color: #555658;
        margin-top: 5px;
    }

    .form__agreementfos-glav a {
        color: #4CC574;
        text-decoration: none;
    }

    .form__agreementfos-glav a:hover {
        color: #3D9E5D;
    }

    .recaptcha-block5-glav {
        margin-top: 15px;
    }

    @media (max-width: 1700px) {
        .block5-container1 {
            margin-left: 175px;
        }

        .block5-all {
            margin-right: 35px;
        }
    }

    @media (max-width: 1600px) {
        .block5-all {
            width: 556px;
        }

        .block5-title {
            font-size: 40px;
            width: 526px;
        }

        .block5-text {
            width: 535px;
            font-size: 15px;
        }

        .input-fos-block5 {
            width: 527px;
        }

        .button-block5 {
            width: 527px;
            padding: 0px;
        }

        .block5-img {
            /*width: 669px;*/
            height: 620px;
        }
    }

    @media (max-width: 1450px) {
        .block5-img {
            /*width: 510px;*/
            height: 532px;
        }

        .block5-title {
            font-size: 32px;
            width: 424px;
        }

        .block5-text {
            width: 431px;
            font-size: 12px;
        }

        .placeholder-block5 {
            margin-top: 21px;
        }

        .block5-all {
            width: 500px;
        }
    }

    @media (max-width: 1360px) {
        .block5-container1 {
            margin-left: 100px;
        }
    }

    @media (max-width: 1140px) {
        .block5-img {
            /*width: 462px;*/
            height: 563px;
        }
    }

    @media (max-width: 1100px) {
        .block5-img {
            display: none;
        }
    }

    @media (max-width: 630px) {
        .block5-container1 {
            margin-left: 55px;
        }

        .block5-container1 {
            padding-top: 60px;
            margin-bottom: 60px;
        }
    }

    @media (max-width: 600px) {
        .input-fos-block5 {
            width: 435px;
        }

        .button-block5 {
            width: 440px;
        }
    }

    @media (max-width: 520px) {
        .block5-title {
            font-size: 29px;
            width: 386px;
        }

        .block5-text {
            width: 374px;
            font-size: 10px;
        }

        .block5-all {
            width: 396px;
            margin-right: 0px;
        }

        .input-fos-block5 {
            width: 387px;
        }

        .button-block5 {
            width: 400px;
        }
    }

    @media (max-width: 460px) {
        .block5-title {
            font-weight: 600;
            font-size: 27px;
            line-height: 137%;
            margin-bottom: 15px;
            width: 322px;
        }

        .block5-text {
            font-weight: 400;
            font-size: 14px;
            line-height: 133%;
            width: 320px;
        }

        .placeholder-block5 {
            margin-top: 30px;
            margin-bottom: 10px;
        }

        .input-fos-block5 {
            width: 327px;
            height: 48px;
        }

        .popup-politika-fos-button {
            margin-bottom: 31px;
            margin-top: 19px;
        }

        .button-block5 {
            width: 327px;
            height: 54px;
            margin-top: 0px;
        }

        .block5-all {
            width: 333px;
        }

        .block5-container1 {
            margin-left: 50px;
        }
    }

    @media (max-width: 420px) {
        .block5-container1 {
            margin-left: 18px;
        }
    }

    @media (max-width: 355px) {
        .block5-title {
            font-size: 24px;
            width: 287px;
        }

        .block5-text {
            width: 281px;
            font-size: 11px;
        }

        .input-fos-block5 {
            width: 293px;
        }

        .button-block5 {
            width: 298px;
        }

        .block5-all {
            width: 291px;
        }
    }

/* ---- frontend/views/partials/common/thankyou-text.php#1 ---- */
.pop_up_container-thankyoutext {
        display: flex;
        width: 100%;
        height: 100%;
    }

    .pop_up_body-thankyoutext {
        margin: auto;
        position: relative;
        width: 474px;
        background-color: inherit;
        height: 314px;
        border-radius: 3px;

        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 20px;
        justify-content: center;
    }

    .mfp-content .pop_up_body-thankyoutext {
        background-color: white;
    }

    .text1-popup-thankyoutext {
        font-size: 30px;
        font-weight: 500;
        line-height: 28px;
        text-align: center;
        color: #2B2B2C;
    }

    .text2-popup-thankyoutext {
        font-size: 18px;
        font-weight: 400;
        line-height: 20px;
        text-align: center;
        color: #555658;
        width: 444px;
    }

    @media (max-width: 500px) {
        .pop_up_body-thankyoutext {
            width: 420px;
        }

        .text2-popup-thankyoutext {
            width: 389px;
        }
    }

    @media (max-width: 450px) {
        .pop_up_body-thankyoutext {
            width: 370px;
        }

        .text2-popup-thankyoutext {
            width: 335px;
        }
    }

    @media (max-width: 380px) {
        .pop_up_body-thankyoutext {
            width: 315px;
        }

        .text2-popup-thankyoutext {
            width: 290px;
        }
    }

    @media (max-width: 335px) {
        .pop_up_body-thankyoutext {
            width: 285px;
        }

        .text2-popup-thankyoutext {
            width: 255px;
        }
    }

/* ---- frontend/views/partials/index/_svh.php#1 ---- */
.svh {
        font-family: "Open Sans", sans-serif;
        position: relative;
        background-color: #4A5A72;
        overflow: hidden;
        padding-top: 78px;
        padding-bottom: 81px;
    }
    .svh__back-txt {
        text-transform: uppercase;
        position: absolute;
        top: -37px;
        right: 0;
        left: 0;
        bottom: 0;
        font-size: 125px;
        font-style: italic;
        font-weight: 800;
        line-height: 200px;
        letter-spacing: -17px;
        text-align: center;
        color: #DBDEE3;
        z-index: 1;
        opacity: .1;
        width: 100%;
    }
    .svh__content {
        position: relative;
        z-index: 1;
    }
    .svh__content-t1,
    .svh__content-t2 {
        font-size: 24px;
        font-style: italic;
        font-weight: 800;
        line-height: 46px;
        letter-spacing: -1px;
        text-align: left;
        display: inline-block;
        text-transform: uppercase;
        border-radius: 16px;
    }
    .svh__content-t1 {
        padding: 4px 15px 2px 6px;
        color: #000;
        background-color: #ffffff;
    }
    .svh__content-t2 {
        padding: 4px 8px 4px 6px;
        margin-top: -2px;
        color: #fff;
        background: #4CC574;
    }
    .svh__buttons {
        margin-top: 27px;
    }
    .svh__buttons a {
        font-size: 12px;
        margin-right: 15px;
        padding: 14px 15px;
    }
    .svh__banner-img {
        width: 468px;
        position: absolute;
        right: 61px;
        top: -7px;
        z-index: -1;
    }
    .white-btn {
        background-color: #fff;
        color: #55CD6C;
        border: 1px solid #55CD6C;
    }
    .white-btn:hover {
        background-color: #fafafa;
    }
    .svh__back-txt_mobile {
        display: none;
    }
    @media (max-width: 1000px) {
        .svh {
            padding-top: 59px;
            padding-bottom: 59px;
        }
        .svh__content {
            text-align: center;
        }
        .svh__banner-img {
            position: relative;
            right: 0;
            top: 0;
            width: 350px;
            margin-top: 30px;
            margin-bottom: 10px;
        }
        .svh__content-t1, .svh__content-t2 {
            text-align: center;
            line-height: 31px;
        }
        .svh__content-t1 {
            text-align: center;
            line-height: 127%;
            font-size: 19px;
            padding: 12px 14px 11px 6px;
            margin: 0 29px 0 23px;
            letter-spacing: -2px;
        }
        .svh__content-t2 {
            background-color: #000;
            padding: 12px 14px 11px 6px;
            line-height: 127%;
            font-size: 19px;
            margin: -4px 29px 0 23px;
        }

        .svh__buttons a {
            margin-right: 5px;
            font-size: 16px;
        }
        .svh__buttons a:last-child {
            margin-right: 0;
        }

        .svh__back-txt {
            font-size: 88px;
            line-height: 137px;
            top: -19px;
        }
        .svh__back-txt_mobile {
            display: block;
        }
        .svh__back-txt_pc {
            display: none;
        }
        .svh__pc-but {
            display: none;
        }
    }
    @media (max-width: 900px) {
        .svh__banner-img {
            width: 350px;
            margin-top: 30px;
            margin-bottom: 10px;
        }
    }

/* ---- frontend/views/calculator/only.php#1 ---- */
.poslednay-fos-title {
        font-weight: 400 !important;
    }

/* ---- frontend/views/site/vietnam.php#1 ---- */
[data-e-id=text01][data-id="515980"] .element-text {
        text-align: inherit;
        font-weight: 700;
        font-size: 30px;
        line-height: 1.2;
    }

/* ---- frontend/views/site/taiwan.php#1 ---- */
[data-e-id=text01][data-id="515980"] .element-text {
        text-align: inherit;
        font-weight: 700;
        font-size: 30px;
        line-height: 1.2;
    }

/* ---- frontend/views/partials/landing/banner.php#1 ---- */
[data-b-id=BUNDLE][data-id="973344"] .container-fluid > .component-bg .image {
        background-image: url(<?= $image?>);
    }

/* ---- frontend/views/partials/landing/contact.php#1 ---- */
[data-b-id=BUNDLE][data-id="202464"] .container-fluid > .component-bg .image {
        background-image: url(<?= $bg ?>) !important;
    }

    [data-b-id=BUNDLE][data-id="202464"] .container-fluid > .component-bg .overlay {
        opacity: <?= $opacity ?>;
    }

/* ---- frontend/widgets/service-page/type-paragraph.php#1 ---- */
.type-paragraph .section-container {
        max-width: var(--container-width);
        margin: 0 auto;
        width: 100%;
    }

    .type-paragraph-h1 {
        font-family: var(--font-family-primary);
        font-size: 40px;
        font-weight: var(--font-weight-semibold);
        color: var(--color-dark);
        line-height: var(--line-height);
        margin-bottom: 30px !important;
    }

    .type-paragraph {
        background-color: var(--color-white);
        padding: var(--section-padding);
    }

    .type-paragraph-h2 {
        font-family: var(--font-family-primary);
        font-size: var(--font-size-h2);
        font-weight: 400;
        color: #2B2B2C;
        margin-bottom: 0;
        margin-left: 0;
    }

    .type-paragraph-text {
        margin-left: 0;
        color: var(--color-gray-text-secondary);
    }

    .type-paragraph-services {
        display: flex;
        flex-direction: column;
        gap: 30px;
        padding-right: 17px;
    }

    .type-paragraph-service {
        display: flex;
        flex-direction: column;
    }

    .type-paragraph-service-content {
        display: flex;
        align-items: center;
        gap: 10px;
    }

    .type-paragraph-text-block {
        display: flex;
        flex-direction: column;
        gap: 15px;
    }

    .type-paragraph-icon {
        width: 27px;
        height: 21px;
        flex: 0 0 27px;
        margin-top: -36px;
    }

    .type-paragraph-mobile-intro {
        display: block;
        font-family: var(--font-family-primary);
        font-size: var(--font-size-h2);
        font-weight: 400;
        color: var(--color-dark);
        margin-bottom: 50px;
    }

    .type-paragraph-mobile-finish {
        display: block;
        font-family: var(--font-family-primary);
        font-size: var(--font-size-h2);
        font-weight: 400;
        color: var(--color-dark);
        margin-bottom: 50px;
        margin-top: 50px;
    }

    .type-paragraph .fade-in-up {
        opacity: 0;
        transform: translateY(50px);
        transition: all 0.8s ease-out;
    }

    .type-paragraph .fade-in-up.visible {
        opacity: 1;
        transform: translateY(0);
    }

    .type-paragraph .fade-in-up.delay-1 { transition-delay: 0.1s; }
    .type-paragraph .fade-in-up.delay-2 { transition-delay: 0.2s; }
    .type-paragraph .fade-in-up.delay-3 { transition-delay: 0.3s; }
    .type-paragraph .fade-in-up.delay-4 { transition-delay: 0.4s; }
    .type-paragraph .fade-in-up.delay-5 { transition-delay: 0.5s; }
    .type-paragraph .fade-in-up.delay-6 { transition-delay: 0.6s; }
    .type-paragraph .fade-in-up.delay-7 { transition-delay: 0.7s; }
    .type-paragraph .fade-in-up.delay-8 { transition-delay: 0.8s; }

    @media (max-width: 1000px) {
        .type-paragraph-h1 {
            font-size: var(--font-size-tablet-h1);
            margin-bottom: 30px;
        }

        .type-paragraph {
            padding: var(--padding-tablet);
        }

        .type-paragraph .section-container {
            display: flex;
            flex-direction: column;
        }

        /* .type-paragraph-services {
            order: 2;
        } */
    }

    @media (max-width: 800px) {
        .type-paragraph-mobile-intro {
            display: block;
            font-family: var(--font-family-primary);
            font-size: var(--font-size-text);
            font-weight: 400;
            color: var(--color-gray-text-secondary);
            margin-bottom: 30px;
        }

        .type-paragraph .section-container {
            display: flex;
            flex-direction: column;
        }

        /* .type-paragraph-services {
            order: 2;
        }*/

        .type-paragraph-icon {
            margin-top: -56px;
        }
    }

    @media (max-width: 700px) {
        .type-paragraph {
            padding: var(--padding-mobile);
        }

        .type-paragraph-h2 {
            font-size: 18px;
        }

        .type-paragraph-text {
            font-size: 15px;
        }

        /*.type-paragraph-icon {
            margin-top: -97px;
        }*/
    }

    @media (max-width: 394px) {
        .type-paragraph-mobile-intro {
            font-size: 15px;
        }

        .type-paragraph-services {
            padding-right: 0;
        }
    }

/* ---- frontend/widgets/service-page/banner1.php#1 ---- */
.banner1 {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        margin: 80px auto;
        gap: 10px;
        max-width: var(--container-width);
        padding: 0;
    }
/*
    .banner1-left-kv {
        height: 447px;
        width: 489px;
    }
*/
    .banner1-left-kv-services-text {
        font-family: var(--font-family-secondary);
        font-weight: 600;
        font-size: var(--font-size-small);
        color: var(--color-dark);
        margin-bottom: 20px;
    }

    .banner1-left-kv-services-line {
        max-width: 164px;
        height: 5px;
        background-color: var(--color-green-primary);
    }

    .banner1-left-kv-h {
        margin-top: 20px;
        margin-bottom: 30px;
        max-width: 489px;
    }

    .banner1-left-kv-text {
        font-size: 20px;
        max-width: 489px;
        color: var(--color-dark);
        text-align: left;
        font-weight: 400;
    }

    .banner1-left-kv-button {
        width: 189px;
        height: 62px;
        background-color: var(--color-green-button);
        border-radius: var(--border-radius-btn);
        border: none;
        font-size: var(--font-size-text);
        font-weight: 700;
        color: var(--color-white);
        cursor: pointer;
        margin-top: 60px;
        text-align: center;
    }

    .banner1-right-kv {
        height: 100%;
        margin-right: -50px;
        position: relative;
    }

    .banner1-right-kv-img {
        width: 102%;
        height: 478px;
        border-radius: var(--border-radius-sm);
        object-fit: cover;
    }

    .banner1-list {
        display: flex;
        flex-direction: column;
    }

    .banner1-list-item {
        display: flex;
        align-items: center;
        gap: 10px;
        color: var(--color-dark);
        font-family: var(--font-family-primary);
        font-size: var(--font-size-h2);
        font-weight: 400;
    }

    .banner1-list-item:nth-child(2) {
        margin: 15px 0;
    }

    .banner1-list-icon {
        width: 25px;
        height: 25px;
        flex: 0 0 25px;
    }

    .banner1-list-button {
        width: 100%;
        max-width: 189px;
        height: 62px;
        background-color: var(--color-green-button);
        border-radius: var(--border-radius-btn);
        border: none;
        font-size: var(--font-size-text);
        font-weight: 700;
        color: var(--color-white);
        cursor: pointer;
        text-align: center;
        margin-top: 60px;
    }

    .banner1-list-mobile-2 {
        display: none;
        flex-direction: column;
    }

    .banner1-mobile-bg,
    .banner1-mobile-text,
    .banner1-mobile-button {
        display: none;
    }

    @media (max-width: 1000px) {
        .banner1 {
            margin: 25px 0 60px 0;
        }

        .banner1-left-kv-h {
            margin-bottom: 20px;
        }

        .banner1-left-kv-text {
            font-size: 18px;
            max-width: 388px;
        }

        .banner1-right-kv-img {
            max-height: 329px;
            width: 100%;
            height: 100%;
            border-radius: 5px;
        }

        .banner1-right-kv {
            height: 388px;
            margin-top: 60px;
        }

        .banner1-left-kv-button {
            margin-top: 40px;
        }
    }

    @media (max-width: 800px) {
        .banner1 {
            padding-left: 30px;
            padding-right: 22px;
            gap: 21px;
        }

        .banner1-left-kv {
            padding: 0;
        }

        .banner1-right-kv {
            margin-top: 0;
            height: 444px;
            margin-right: 0;
        }

        .banner1-right-kv-img {
            width: 100%;
            height: 100%;
            max-height: 319px;
            margin-top: 65px;
        }

        .banner1-left-kv-button,
        .banner1-list-button {
            font-size: 14px;
        }

        .banner1-list-button {
            margin-top: 30px;
        }
    }

    .banner1-mobile-text,
    .banner1-mobile-button {
        display: none;
    }

    @media (max-width: 700px) {
        .banner1 {
            flex-direction: column;
            gap: 0;
            padding-left: 15px;
            padding-right: 18px;
        }

        .banner1-left-kv {
            height: auto;
            max-width: 100%;
        }

        .banner1-right-kv {
            margin-top: 0;
            width: 100%;
            height: 230px;
        }

        .banner1-left-kv .banner1-list {
            display: none;
        }

        .banner1-list-mobile-2 {
            display: flex;
            margin-top: 35px;
        }

        .banner1-list-mobile-2 .banner1-list-button {
            width: 100%;
            max-width: none;
            margin-top: 30px;
            text-align: center;
        }

        .banner1-left-kv-services-text {
            font-size: 11px;
            font-weight: 700;
            margin-bottom: 10px;
        }

        .banner1-left-kv-h {
            margin-top: 15px;
            margin-bottom: 35px;
        }

        .banner1-right-kv-img {
            margin-top: 0;
            width: 100%;
            height: 226px;
            object-fit: cover;
        }
    }

    @media (max-width: 394px) {
        .banner1 {
            padding-left: 18px;
            padding-right: 15px;
        }
    }

/* ---- frontend/widgets/service-page/work-stages.php#1 ---- */
.work-stages-adaptive{
        display: none;
    }

.work-stages{
        background-color: var(--color-gray-bg);
        padding: var(--section-padding);
    }

.work-stages-cards{
        display: flex;
        flex-direction: column;
        gap: 44px;
    }

.work-stages-cards-row{
        display: flex;
        gap: 37px;
    }

.work-stages-cards-row-top{
        justify-content: flex-end;
    }

.work-stages-cards-row-bottom{
        justify-content: flex-start;
    }

.work-stages-cards-empty{
        width: 375px;
        display: flex;
        align-items: center;
    }

.work-stages-cards-empty-h1{
        font-size: var(--font-size-h1);
        font-weight: var(--font-weight-semibold);
        color: var(--color-dark);
        max-width: 341px;
        line-height: 1.2;
    }

.work-stages-cards-empty-h1-green{
        color: var(--color-green-primary);
    }

.work-stages-kv{
        width: 375px;
        background-color: var(--color-white);
        border: 1px solid var(--color-gray-icon);
        border-radius: var(--border-radius-md);
        transition: opacity 0.7s ease, transform 0.7s ease, background-color 0.3s ease;
        display: flex;
        align-items: center;
        height: 257px;
        opacity: 0;
        transform: translateY(30px);
    }

    section.work-stages .work-stages-kv.animate {
        opacity: 1;
        transform: translateY(0);
    }

    section.work-stages .work-stages-cards-empty-h1 {
        opacity: 0;
        transform: translateY(30px);
        transition: opacity 0.7s ease, transform 0.7s ease;
    }

    section.work-stages .work-stages-cards-empty-h1.animate {
        opacity: 1;
        transform: translateY(0);
    }

    section.work-stages .work-stages-cards-row-top > .work-stages-kv:nth-child(2) {
        transition-delay: 0.15s;
    }

    section.work-stages .work-stages-cards-row-top > .work-stages-kv:nth-child(3) {
        transition-delay: 0.25s;
    }

    section.work-stages .work-stages-cards-row-bottom > .work-stages-kv:nth-child(1) {
        transition-delay: 0.35s;
    }

    section.work-stages .work-stages-cards-row-bottom > .work-stages-kv:nth-child(2) {
        transition-delay: 0.45s;
    }

    section.work-stages .work-stages-cards-row-bottom > .work-stages-kv:nth-child(3) {
        transition-delay: 0.55s;
    }

.work-stages-kv:hover{
        background-color: var(--color-blue-dark);
    }

.work-stages-kv-content{
        display: flex;
        flex-direction: column;
    }

.work-stages-kv-h2{
        font-size: var(--font-size-h2);
        font-weight: 700;
        color: var(--color-black);
        margin-bottom: 15px;
        padding: 0 20px;
        transition: color 0.3s ease;
    }

.work-stages-kv:hover .work-stages-kv-h2{
        color: var(--color-white);
    }

.work-stages-kv-text{
        font-size: var(--font-size-text);
        color: var(--color-gray-subtitle);
        line-height: 1.3;
        padding: 0 20px;
        transition: color 0.3s ease;
        margin: 0;
    }

.work-stages-kv:hover .work-stages-kv-text{
        color: var(--color-white);
    }
/*
.work-stages-cards-row-top .work-stages-kv:nth-child(2) .work-stages-kv-text{
        max-width: 303px;
    }*/
/*
.work-stages-cards-row-top .work-stages-kv:nth-child(3) .work-stages-kv-text,
    .work-stages-cards-row-bottom .work-stages-kv:nth-child(1) .work-stages-kv-text,
    .work-stages-cards-row-bottom .work-stages-kv:nth-child(2) .work-stages-kv-text,
    .work-stages-cards-row-bottom .work-stages-kv:nth-child(3) .work-stages-kv-text{
        max-width: 335px;
    }
*/
.work-stages-kv-h2-with-badge{
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: var(--padding-horizontal);
    }

.work-stages-kv .work-stages-kv-h2{
    margin-bottom: 16px;
    position: relative;
}

.work-stages-kv-badge{
        /*width: 90px;*/
        /*height: 42px;*/
        border: 1px solid var(--color-gray-icon);
        border-radius: var(--border-radius-sm);
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: var(--font-size-small);
        color: var(--color-dark);
        flex-shrink: 0;
        background-color: transparent;
        transition: background-color 0.3s ease, color 0.3s ease;
        padding: 6px 10px;
        margin-left: 5px;
    }

.work-stages-kv:hover .work-stages-kv-badge{
        background-color: var(--color-white);
        color: var(--color-dark);
    }

/*.work-stages-cards-row-bottom .work-stages-kv:nth-child(2) .work-stages-kv-badge{*/
/*        width: 94px;*/
/*    }*/

.work-stages-kv .work-stages-kv-badge{
    /*width: 73px;*/
    /*position: absolute;*/
    /*right: 19px;*/
    /*height: 41px;*/
    /*top: -9px;*/
    font-weight: 400;
    line-height: 26px;
    font-size: 16px;
}

@media (max-width: 1069px) and (min-width: 1000px){
.work-stages-cards-row{
            gap: 20px;
        }
}
@media (max-width: 1000px) {
    .work-stages-kv {
        height: 320px;
    }

    .work-stages {
        padding: var(--padding-tablet);
    }

    /*.work-stages-cards {*/
    /*    display: none;*/
    /*}*/

    .work-stages::after {
        content: '';
        display: block;
    }

    .work-stages-adaptive {
        display: flex;
        flex-direction: column;
        gap: 25px;
    }

    .work-stages-adaptive-row-1 {
        display: flex;
        gap: 20px;
    }

    .work-stages-adaptive-row-2 {
        display: flex;
        gap: 30px;
        justify-content: space-between;
    }

    .work-stages-adaptive-left,
    .work-stages-adaptive-right {
        display: flex;
        flex-direction: column;
        gap: 25px;
    }

    .work-stages-adaptive-right {
        max-width: 265px;
    }

    /*.work-stages-adaptive .work-stages-kv {*/
    /*    width: auto !important;*/
    /*    height: auto !important;*/
    /*}*/

    /*.work-stages-adaptive-row-1 .work-stages-kv {*/
    /*    max-height: 180px !important;*/
    /*}*/

    .work-stages-adaptive-left .work-stages-kv:nth-child(2) {
        height: 100% !important;
    }

    .work-stages-adaptive .work-stages-kv-h2 {
        /*font-size: var(--font-size-text);*/
        /*margin-top: 30px;*/
        padding: var(--padding-horizontal);
        margin-bottom: 10px;
    }

    .work-stages-adaptive .work-stages-kv-badge {
        font-size: 10px;
        border-radius: 6px;
        color: #2B2B2C;
        font-weight: 300;
    }

    .work-stages-adaptive-left .work-stages-kv:nth-child(1) .work-stages-kv-badge {
        height: 25px;
        width: 58px;
    }

    .work-stages-adaptive-left .work-stages-kv:nth-child(2) .work-stages-kv-badge {
        height: 27px;
        width: 58px;
    }

    .work-stages-adaptive-right .work-stages-kv:nth-child(2) .work-stages-kv-badge {
        height: 27px;
        width: 63px;
    }

    .work-stages-kv-text {
        padding: 0 20px;
    }

    /*.work-stages-kv:nth-child(2) .work-stages-kv-h2 { margin-top: 30px; }*/

    .work-stages-kv-h2{
        font-weight: var(--font-weight-semibold);
    }
}
@media (max-width: 900px){
    .work-stages-kv {
        height: inherit;
        padding-top: 51px;
        padding-bottom: 52px;
        margin-bottom: 43px;
    }
.work-stages-cards-empty{
            margin-bottom: 30px;
        }

.work-stages-cards-row{
            display: block;
        }

.work-stages-kv{
            width: 100%;
        }

.work-stages-kv:last-child{
            margin-bottom: 0;
        }

.work-stages-cards-row-top .work-stages-kv:nth-child(2) .work-stages-kv-text{
            max-width: 100%;
        }

}
@media (max-width: 700px) {
    .work-stages {
        padding: var(--padding-mobile);
    }

    /*.work-stages-kv{*/
    /*    margin-bottom: 0;*/
    /*}*/

    /*.work-stages-cards {*/
    /*    display: none;*/
    /*}*/

    .work-stages-adaptive {
        display: flex;
        flex-direction: column;
        gap: var(--gap-small);
    }

    .work-stages-adaptive-row-1 {
        flex-direction: column;
        gap: var(--gap-small);
    }

    .work-stages-adaptive-row-2 {
        flex-direction: column;
        gap: var(--gap-small);
    }

    .work-stages-adaptive-left,
    .work-stages-adaptive-right {
        max-width: none;
        width: 100%;
        gap: var(--gap-small);
        display: contents;
    }

    .work-stages-adaptive .work-stages-kv {
        width: 100%;
        /*border-radius: 10px;*/
    }

    .work-stages-cards-empty-h1{
        font-size: var(--font-size-tablet-h1);
    }

    .work-stages-cards-empty-h1 {
        margin-bottom: 10px;
    }

    .work-stages-adaptive .work-stages-kv-h2 {
        font-weight: 700;
        /*margin-top: 15px;*/
        padding: 0 15px;
    }

    .work-stages-adaptive .work-stages-kv-h2-with-badge {
        margin-top: 15px;
    }

    .work-stages-adaptive .work-stages-kv-text {
        font-size: var(--font-size-small);
        padding: 0 15px 15px 15px;
    }

    .work-stages-adaptive .work-stages-kv-badge {
        margin: 0 15px;
        font-weight: 300;
    }

    /*.work-stages-kv-h2-with-badge {*/
    /*    justify-content: flex-start;*/
    /*}*/

    /*.work-stages-kv:nth-child(2) .work-stages-kv-h2 {*/
    /*    margin-top: 15PX;*/
    /*}*/

    .work-stages-adaptive .work-stages-kv-badge {
        border-radius: var(--border-radius-sm);
        font-weight: 300;
    }

    .work-stages-adaptive-row-2 {
        display: flex;
        flex-direction: column;
    }

    .work-stages-adaptive-left .work-stages-kv:nth-child(1) {
        order: 1;
    }

    .work-stages-adaptive-left .work-stages-kv:nth-child(2) {
        order: 2;
    }

    .work-stages-adaptive-right .work-stages-kv:nth-child(1) {
        order: 3;
    }

    .work-stages-adaptive-right .work-stages-kv:nth-child(2) {
        order: 4;
    }
    /*.work-stages-adaptive .work-stages-kv-h2 {*/
    /*    font-weight: 700;*/
    /*    margin-top: 15px;*/
    /*    padding: 0 15px;*/
    /*}*/
}

/* ---- frontend/widgets/service-page/partner.php#1 ---- */
/* BLOCK8-GLAV: Стабильность в сотрудничестве */
    /* BLOCK8-GLAV и BLOCK11-GLAV: Стабильность в сотрудничестве (общие стили) */
    .block8-glav {
        background-color: var(--color-white);
        padding: var(--section-padding);
    }

    .block8-glav-h1 {
        font-family: var(--font-family-primary);
        font-size: 40px;
        font-weight: var(--font-weight-semibold);
        color: var(--color-dark);
        line-height: var(--line-height);
        margin-bottom: 30px;
    }
    .block8-glav-img {
        width: 236px;
        height: 236px;
        display: block;
        margin: 50px auto;
    }
    .block8-glav-text {
        font-size: var(--font-size-text);
        color: var(--color-gray-text);
        text-align: center;
        line-height: var(--line-height);
        margin-bottom: 50px;
    }
    /* Три части текста для разрешения 1200px */
    /* Адаптивная версия текста для мобильной версии (800px) */
    .block8-glav-name-h2 {
        font-size: var(--font-size-h2);
        font-weight: 400;
        color: rgba(0, 0, 0, 1);
        text-align: center;
        margin-bottom: 10px;
    }

    .block8-glav-position-text {
        font-size: 12px;
        font-weight: 300;
        color: var(--color-dark);
        text-align: center;
    }

    @media (max-width: 1000px) {
        .block8-glav {
            padding: var(--padding-tablet);
        }

        .block8-glav-h1 {
            font-size: var(--font-size-tablet-h1);
        }

        .block8-glav-img {
            margin: 30px auto;
        }

        .block8-glav-text {
            max-width: 621px;
            margin: 0 auto 15px;
        }
    }
    @media (max-width: 800px) {
        /* Заголовки h2: выравнивание по центру */
        .block8-glav-name-h2 {
            text-align: center;
        }
    }
    @media (max-width: 700px) {
        .block8-glav-h1 {
            font-size: var(--font-size-tablet-h1);
        }
        .block8-glav {
            padding: var(--padding-mobile);
        }

        .block8-glav-h1 {
            max-width: 330px;
            margin: 0 auto;
        }
        .block8-glav-text {
            font-size: var(--font-size-small);
            margin-top: 30px;
        }

        .block8-glav-position-text {
            max-width: 180px;
            margin: 0 auto;
        }

        .block8-glav-name-h2.animate {
            font-size: 18px;
        }
    }
    @media (max-width: 394px) {
        .block8-glav-h1 {
            font-size: 30px;
        }
    }

/* ---- frontend/widgets/service-page/our-cases-glav.php#1 ---- */
:root {
            --color-dark: rgba(43, 43, 44, 1);
            --color-white: rgba(255, 255, 255, 1);
            --color-green-primary: rgba(76, 197, 116, 1);
            --color-green-card-bg: rgba(183, 232, 199, 1);
            --color-gray-text: rgba(85, 86, 88, 1);
            --color-gray-subtitle: rgba(128, 130, 132, 1);
            --color-gray-bg: rgba(238, 239, 241, 1);
            --color-gray-text-secondary: #555658;
            --container-width: 1200px;
            --section-padding: 80px 30px;
            --padding-tablet: 60px 30px;
            --padding-mobile: 60px 15px;
            --border-radius-md: 15px;
            --font-family-primary: 'Open Sans', sans-serif;
            --font-size-h2: 20px;
            --font-size-text: 16px;
        }

        *, *::before, *::after { box-sizing: border-box; }

        body {
            margin: 0;
            font-family: var(--font-family-primary);
            font-weight: 400;
            background: var(--color-white);
            color: var(--color-gray-text);
            line-height: 1.4;
        }

        .section-container {
            max-width: var(--container-width);
            margin: 0 auto;
        }

        .section-heading--md {
            font-size: 40px;
            margin-bottom: 50px;
        }

        @media (max-width: 1000px) {
            .section-heading--md {
                font-size: 27px;
                margin-bottom: 30px;
            }
        }

        /* ——— Блок «Наши кейсы» ——— */
        .our-cases-glav {
            background-color: var(--color-gray-bg);
            padding: var(--section-padding);
            font-family: var(--font-family-primary);
        }

        .our-cases-glav-head {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 24px;
            margin-bottom: 57px;
            flex-wrap: wrap;
            position: relative;
        }

        .our-cases-glav-h2 {
            margin: 0;
        }

        .our-cases-glav-nav {
            display: flex;
            align-items: center;
            flex-shrink: 0;
            gap: 0;
            position: absolute;
            top: 41px;
            z-index: 11;
            right: 87px;
        }

        .our-cases-glav-nav-btn {
            display: flex;
            align-items: center;
            justify-content: center;
            width: 52px;
            height: 52px;
            padding: 0;
            border: none;
            background: transparent;
            cursor: pointer;
            border-radius: 50%;
        }

        <?php include __DIR__ . '/our-cases-glav/nav-arrows.css'; ?>

        /* Стрелки внутри слайда (мобильный макет — над фото) */
        .our-cases-glav-slide-nav {
            display: none;
            justify-content: flex-end;
            align-items: center;
            padding: 16px 14px 0;
            margin: 0;
        }

        .our-cases-glav-viewport {
            width: 100%;
            position: relative;
        }

        .our-cases-glav-viewport-clip {
            overflow: hidden;
            width: 100%;
        }

        .our-cases-glav-track {
            display: flex;
            flex-direction: row;
            flex-wrap: nowrap;
            transition: transform 0.45s cubic-bezier(0.25, 0.1, 0.25, 1);
            will-change: transform;
        }

        .our-cases-glav-slide {
            flex: 0 0 auto;
            box-sizing: border-box;
            min-width: 0;
            overflow: visible;
        }

        .our-cases-glav-stack {
            position: relative;
            z-index: 0;
            margin-bottom: 32px;
            overflow: visible;
            width: 100%;
            max-width: 1184px;
        }

        .our-cases-glav-stack::before,
        .our-cases-glav-stack::after {
            content: '';
            position: absolute;
            border: 1px solid var(--color-green-card-bg);
            border-radius: var(--border-radius-md);
            background: var(--color-white);
            box-sizing: border-box;
            pointer-events: none;
        }

        .our-cases-glav-stack::after {
            z-index: 0;
            left: 36px;
            right: -15px;
            top: 12px;
            height: calc(100% - 22px);
            opacity: 0.72;
        }

        .our-cases-glav-stack::before {
            z-index: 1;
            left: 18px;
            right: 14px;
            top: 6px;
            height: calc(100% - 12px);
            opacity: 0.86;
        }

        .our-cases-glav-card {
            position: relative;
            z-index: 2;
            width: calc(100% - 44px);
            max-width: calc(1184px - 44px);
            display: flex;
            align-items: center;
            gap: 25px;
            min-height: 120px;
            padding: 26px 24px 28px 26px;
            border: 1px solid var(--color-green-card-bg);
            border-radius: var(--border-radius-md);
            background: var(--color-white);
            box-sizing: border-box;
        }

        .our-cases-glav-icon {
            width: 62px;
            height: 62px;
            flex-shrink: 0;
            object-fit: contain;
        }

        .our-cases-glav-body {
            flex: 1 1 auto;
            min-width: 0;
            display: flex;
            flex-direction: column;
            gap: 15px;
        }

        .our-cases-glav-card-title {
            margin: 0;
            font-size: var(--font-size-h2);
            font-weight: 400;
            color: var(--color-gray-text);
            line-height: 1.2;
        }

        .our-cases-glav-card-text {
            margin: 0;
            font-size: var(--font-size-text);
            color: var(--color-gray-subtitle);
            line-height: 1.3;
            max-width: 710px;
        }

        .our-cases-glav-photo {
            margin: 0;
            border-radius: 11px;
            overflow: hidden;
            border: 1px solid var(--color-green-card-bg);
            line-height: 0;
            max-width: 1246px;
        }

        .our-cases-glav-photo-open {
            display: block;
            width: 100%;
            padding: 0;
            margin: 0;
            border: none;
            background: none;
            cursor: zoom-in;
            line-height: 0;
        }

        .our-cases-glav-photo-open:focus-visible {
            outline: 2px solid var(--color-green-primary);
            outline-offset: 2px;
        }

        .our-cases-glav-photo img {
            width: 100%;
            height: auto;
            display: block;
            object-fit: cover;
            aspect-ratio: 1246 / 437;
        }

        .our-cases-glav-modal {
            display: none;
            position: fixed;
            z-index: 10000;
            inset: 0;
            background-color: rgba(0, 0, 0, 0.9);
            justify-content: center;
            align-items: center;
            padding: 24px;
            box-sizing: border-box;
            cursor: pointer;
        }

        .our-cases-glav-modal--open {
            display: flex;
        }

        .our-cases-glav-modal-img {
            max-width: min(90vw, 1246px);
            max-height: 90vh;
            width: auto;
            height: auto;
            object-fit: contain;
            border-radius: 11px;
            cursor: default;
            pointer-events: none;
        }

        .our-cases-glav-modal-close {
            position: absolute;
            top: 20px;
            right: 30px;
            width: 40px;
            height: 40px;
            padding: 0;
            border: none;
            border-radius: 50%;
            background-color: rgba(255, 255, 255, 0.1);
            color: var(--color-white);
            font-size: 32px;
            line-height: 1;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            transition: background-color 0.2s ease;
        }

        .our-cases-glav-modal-close:hover {
            background-color: rgba(255, 255, 255, 0.2);
        }

        /* Десктоп узкий / промежуточный */
        @media (max-width: 1000px) and (min-width: 801px) {
            .our-cases-glav {
                padding: 60px 30px;
            }

            .our-cases-glav-head {
                margin-bottom: 28px;
            }

            .our-cases-glav-stack::before,
            .our-cases-glav-stack::after {
                display: none;
            }

            .our-cases-glav-card {
                flex-wrap: wrap;
                max-width: none;
                width: 100%;
            }

            .our-cases-glav-card-text {
                max-width: none;
            }

            .our-cases-glav-nav {
                right: 24px;
            }
        }

        /* Планшет — Figma 4813-377 */
        @media (min-width: 501px) and (max-width: 800px) {
            .our-cases-glav {
                padding: var(--padding-tablet);
            }

            .our-cases-glav-head {
                margin-bottom: 0;
                flex-direction: column;
                align-items: flex-start;
            }

            .our-cases-glav-h2.section-heading--md {
                margin-bottom: 30px;
            }

            .our-cases-glav-stack::before,
            .our-cases-glav-stack::after {
                display: none;
            }

            .our-cases-glav-slide {
                display: flex;
                flex-direction: column;
                align-items: stretch;
                background: var(--color-white);
                border: 1px solid var(--color-green-card-bg);
                border-radius: 16px;
                overflow: hidden;
                padding-bottom: 88px;
            }

            .our-cases-glav-stack {
                margin-bottom: 0;
                max-width: none;
                width: 100%;
            }

            .our-cases-glav-card {
                display: grid;
                grid-template-columns: 50px 1fr;
                column-gap: 20px;
                row-gap: 20px;
                align-items: center;
                width: 100%;
                max-width: none;
                min-height: 0;
                padding: 29px 15px 0;
                border: none;
                border-radius: 0;
                background: transparent;
            }

            .our-cases-glav-body {
                display: contents;
            }

            .our-cases-glav-icon {
                width: 50px;
                height: 50px;
                grid-column: 1;
                grid-row: 1;
            }

            .our-cases-glav-card-title {
                grid-column: 2;
                grid-row: 1;
                margin: 0;
                font-size: 27px;
                font-weight: 600;
                line-height: 1.2;
                color: var(--color-gray-text-secondary);
            }

            .our-cases-glav-card-text {
                grid-column: 1 / -1;
                grid-row: 2;
                margin: 0;
                font-size: 15px;
                font-weight: 400;
                line-height: 1.3;
                color: var(--color-gray-text-secondary);
                max-width: none;
            }

            .our-cases-glav-photo {
                margin: 20px 17px 0;
                max-width: none;
                border-radius: 12px;
            }

            .our-cases-glav-photo img {
                aspect-ratio: 665 / 268;
            }

            .our-cases-glav-nav {
                top: auto;
                bottom: 24px;
                right: 24px;
            }
        }

        /* Мобильный — Figma 4812-534 */
        @media (max-width: 500px) {
            .our-cases-glav {
                padding: var(--padding-mobile);
            }

            .our-cases-glav-head {
                margin-bottom: 0;
            }

            .our-cases-glav-h2.section-heading--md {
                margin-bottom: 36px;
            }

            .our-cases-glav-stack::before,
            .our-cases-glav-stack::after {
                display: none;
            }

            .our-cases-glav-viewport > .our-cases-glav-nav {
                display: none;
            }

            .our-cases-glav-slide {
                display: flex;
                flex-direction: column;
                align-items: stretch;
                /*background: var(--color-white);
                border: 1px solid var(--color-green-card-bg);*/
                border-radius: 16px;
                overflow: hidden;
                padding-bottom: 0;
            }

            .our-cases-glav-slide-nav {
                display: flex;
                padding: 39px 24px 33px;
                margin: 0;
                background: var(--color-white);
                border: 1px solid var(--color-green-card-bg);
                border-top: 0;
                border-radius: 0 0 15px 15px;
                margin-bottom: 24px;
            }

            .our-cases-glav-stack {
                margin-bottom: 0;
                max-width: none;
                width: 100%;
                background: var(--color-white);
                border: 1px solid var(--color-green-card-bg);
                border-bottom: none;
            }

            .our-cases-glav-card {
                display: grid;
                display: block;
                grid-template-columns: 50px 1fr;
                column-gap: 16px;
                row-gap: 16px;
                width: 100%;
                max-width: none;
                min-height: 0;
                padding: 25px 14px 0;
                border: none;
                border-radius: 0;
                background: transparent;
            }

            .our-cases-glav-body {
                display: contents;
            }

            .our-cases-glav-icon {
                width: 50px;
                height: 50px;
                grid-column: 1;
                grid-row: 1;
            }

            .our-cases-glav-card-title {
                grid-column: 2;
                grid-row: 1;
                margin: 0;
                font-size: 28px;
                font-weight: 600;
                line-height: 37px;
                color: var(--color-gray-text-secondary);
                padding-top: 10px;
                padding-bottom: 15px;
            }

            .our-cases-glav-card-text {
                grid-column: 1 / -1;
                grid-row: 2;
                margin: 0;
                font-size: 14.8px;
                line-height: 19px;
                color: var(--color-gray-text-secondary);
                max-width: none;
            }

            .our-cases-glav-photo {
                margin: 12px 14px 14px;
                max-width: none;
                border-radius: 12px;
            }

            .our-cases-glav-photo img {
                aspect-ratio: 330 / 200;
            }
        }

/* ---- frontend/widgets/service-page/our-cases-glav_.php#1 ---- */
.our-cases-glav {
    background-color: var(--color-gray-bg);
    padding: var(--section-padding);
    font-family: var(--font-family-primary, 'Open Sans', sans-serif);
}

.our-cases-glav-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 40px;
    flex-wrap: wrap;
    position: relative;
}

.our-cases-glav-h2 {
    margin: 0;
}

.our-cases-glav-nav {
    display: flex;
    align-items: center;
    flex-shrink: 0;
    gap: 0;
    position: absolute;
    top: 30px;
    z-index: 11;
    right: 114px;
}

.our-cases-glav-nav-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    padding: 0;
    border: none;
    background: transparent;
    cursor: pointer;
    border-radius: 50%;
    transition: opacity 0.2s ease, transform 0.15s ease;
}

.our-cases-glav-nav-btn:hover:not(:disabled) {
    opacity: 0.88;
    transform: scale(1.04);
}

.our-cases-glav-nav-btn:disabled {
    opacity: 0.35;
    cursor: default;
}

.our-cases-glav-nav-btn img {
    width: 50px;
    height: 51px;
    display: block;
    rotate: 50deg;
}

.our-cases-glav-nav-prev {
    margin-right: 13px;
}

.our-cases-glav-nav-prev img {
    rotate: -130deg;
}

.our-cases-glav-viewport {
    width: 100%;
    position: relative;
}

.our-cases-glav-viewport-clip {
    overflow: hidden;
    width: 100%;
}

.our-cases-glav-track {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    transition: transform 0.45s cubic-bezier(0.25, 0.1, 0.25, 1);
    will-change: transform;
}

.our-cases-glav-slide {
    flex: 0 0 auto;
    box-sizing: border-box;
    min-width: 0;
    overflow: visible;
}

.our-cases-glav-stack {
    position: relative;
    z-index: 0;
    margin-bottom: 32px;
    overflow: visible;
    width: 100%;
    max-width: 1184px;
}

/* Две задние карточки: общий правый край, разная ширина и сдвиг вправо (ступени).
   Передняя .our-cases-glav-card уже по ширине — иначе она полностью закрывает псевдоэлементы. */
.our-cases-glav-stack::before,
.our-cases-glav-stack::after {
    content: '';
    position: absolute;
    border: 1px solid var(--color-green-card-bg);
    border-radius: var(--border-radius-md);
    background: var(--color-white);
    box-sizing: border-box;
    pointer-events: none;
}

.our-cases-glav-stack::after {
    z-index: 0;
    left: 36px;
    right: 8px;
    top: 12px;
    height: calc(100% - 22px);
    opacity: 0.72;
}

.our-cases-glav-stack::before {
    z-index: 1;
    left: 18px;
    right: 32px;
    top: 6px;
    height: calc(100% - 12px);
    opacity: 0.86;
}

.our-cases-glav-card {
    position: relative;
    z-index: 2;
    width: calc(100% - 72px);
    max-width: calc(1184px - 72px);
    display: flex;
    align-items: center;
    gap: 25px;
    min-height: 120px;
    padding: 22px 24px 22px 26px;
    border: 1px solid var(--color-green-card-bg);
    border-radius: var(--border-radius-md);
    background: var(--color-white);
    box-sizing: border-box;
    max-width: 1184px;
}

.our-cases-glav-icon {
    width: 62px;
    height: 62px;
    flex-shrink: 0;
    object-fit: contain;
}

.our-cases-glav-body {
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.our-cases-glav-card-title {
    margin: 0;
    font-size: var(--font-size-h2);
    font-weight: 400;
    color: var(--color-gray-text);
    line-height: 1.2;
}

.our-cases-glav-card-text {
    margin: 0;
    font-size: var(--font-size-text);
    color: var(--color-gray-subtitle);
    line-height: 1.3;
    max-width: 710px;
}

.our-cases-glav-photo {
    margin: 0;
    border-radius: 11px;
    overflow: hidden;
    border: 1px solid var(--color-green-card-bg);
    line-height: 0;
    max-width: 1246px;
}

.our-cases-glav-photo-open {
    display: block;
    width: 100%;
    padding: 0;
    margin: 0;
    border: none;
    background: none;
    cursor: zoom-in;
    line-height: 0;
}

.our-cases-glav-photo-open:focus-visible {
    outline: 2px solid var(--color-green-primary);
    outline-offset: 2px;
}

.our-cases-glav-photo img {
    width: 100%;
    height: auto;
    display: block;
    vertical-align: top;
    object-fit: cover;
    aspect-ratio: 1246 / 437;
}

.our-cases-glav-modal {
    display: none;
    position: fixed;
    z-index: 10000;
    inset: 0;
    background-color: rgba(0, 0, 0, 0.9);
    justify-content: center;
    align-items: center;
    padding: 24px;
    box-sizing: border-box;
    cursor: pointer;
}

.our-cases-glav-modal--open {
    display: flex;
}

.our-cases-glav-modal-img {
    max-width: min(90vw, 1246px);
    max-height: 90vh;
    width: auto;
    height: auto;
    object-fit: contain;
    border-radius: 11px;
    cursor: default;
    pointer-events: none;
}

.our-cases-glav-modal-close {
    position: absolute;
    top: 20px;
    right: 30px;
    width: 40px;
    height: 40px;
    padding: 0;
    border: none;
    border-radius: 50%;
    background-color: rgba(255, 255, 255, 0.1);
    color: var(--color-white);
    font-size: 32px;
    line-height: 1;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background-color 0.2s ease;
}

.our-cases-glav-modal-close:hover {
    background-color: rgba(255, 255, 255, 0.2);
}

@media (max-width: 1000px) and (min-width: 801px) {
    .our-cases-glav {
        padding: 60px 30px;
    }

    .our-cases-glav-head {
        margin-bottom: 28px;
    }

    .our-cases-glav-stack::before,
    .our-cases-glav-stack::after {
        display: none;
    }

    .our-cases-glav-card {
        flex-wrap: wrap;
        max-width: none;
        width: 100%;
    }

    .our-cases-glav-card-text {
        max-width: none;
    }
}

/* Планшет 500–800 px — макет Figma «Наши кейсы. Планшет» */
@media (min-width: 501px) and (max-width: 800px) {
    .our-cases-glav {
        padding: 60px 30px;
    }

    .our-cases-glav-head {
        margin-bottom: 0;
        flex-direction: column;
        align-items: flex-start;
    }

    .our-cases-glav-h2.section-heading--md {
        margin-bottom: 30px;
    }

    .our-cases-glav-stack::before,
    .our-cases-glav-stack::after {
        display: none;
    }

    .our-cases-glav-slide {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        box-sizing: border-box;
        background: var(--color-white);
        border: 1px solid var(--color-green-card-bg);
        border-radius: 16px;
        overflow: hidden;
        padding-bottom: 88px;
    }

    .our-cases-glav-stack {
        margin-bottom: 0;
        max-width: none;
        width: 100%;
    }

    .our-cases-glav-card {
        display: grid;
        grid-template-columns: 50px 1fr;
        column-gap: 20px;
        row-gap: 20px;
        align-items: center;
        width: 100%;
        max-width: none;
        min-height: 0;
        padding: 29px 15px 0;
        border: none;
        border-radius: 0;
        background: transparent;
    }

    .our-cases-glav-body {
        display: contents;
    }

    .our-cases-glav-icon {
        width: 50px;
        height: 50px;
        grid-column: 1;
        grid-row: 1;
    }

    .our-cases-glav-card-title {
        grid-column: 2;
        grid-row: 1;
        margin: 0;
        font-size: 27px;
        font-weight: 600;
        line-height: 1.2;
        color: #555658;
    }

    .our-cases-glav-card-text {
        grid-column: 1 / -1;
        grid-row: 2;
        margin: 0;
        font-size: 15px;
        font-weight: 400;
        line-height: 1.3;
        color: #555658;
        max-width: none;
    }

    .our-cases-glav-photo {
        margin: 20px 17px 0;
        max-width: none;
        border-radius: 12px;
    }

    .our-cases-glav-photo img {
        aspect-ratio: 665 / 268;
        width: 100%;
        height: auto;
        object-fit: cover;
    }

    .our-cases-glav-nav {
        top: auto;
        bottom: 24px;
        right: 24px;
        width: auto;
        margin-top: 0;
        justify-content: flex-end;
    }

    .our-cases-glav-nav-btn img {
        width: 50px;
        height: 51px;
    }
}

@media (max-width: 500px) {
    .our-cases-glav-head {
        margin-bottom: 37px;
    }
    .our-cases-glav-card {
        padding: 25px 14px 125px 14px;
    }
    .main-foreign .our-cases-glav-card-title {
        font-size: 28px;
        line-height: 37px;
    }
    .our-cases-glav-card-text {
        font-size: 14.8px;
        line-height: 19px;
    }
    .our-cases-glav-nav {
        top: auto;
        bottom: 24px;
        right: 23px;
        width: auto;
    }
}

/* ---- frontend/widgets/views/other-pages.php#1 ---- */
:root {
            /* ---------- РАЗМЕРЫ И ОТСТУПЫ ---------- */
            --container-width: 1200px;
        }
        .section-container {
            max-width: var(--container-width);
            margin: 0 auto;
            width: 100%;
        }

        .block16-glav {
            background-color: #3D9E5D;
            padding: var(--section-padding);
        }

        .block16-glav-h1 {
            font-family: var(--font-family-primary);
            font-size: 40px;
            font-weight: var(--font-weight-semibold);
            color: #FFFFFF;
            margin-bottom: 50px;
        }

        .block16-glav-cards {
            display: flex;
            gap: 30px;
        }

        .block16-glav-card {
            flex: 1;
            height: 132px;
            border: 2px solid #FFFFFF;
            border-radius: 10px;
            background-color: transparent;
            padding: 25px 5px 25px 5px;
            flex-direction: column;
            text-align: center;
            box-sizing: border-box;

            display: flex;
            align-items: center;
            justify-content: center;
        }

        .block16-glav-card-h2 {
            font-family: var(--font-family-primary);
            font-size: var(--font-size-h2);
            font-weight: 700;
            color: #FFFFFF;
            margin: 0 0 8px 0;
        }

        .block16-glav-card-text {
            font-family: var(--font-family-primary);
            font-size: var(--font-size-text);
            font-weight: 400;
            color: #FFFFFF;
            margin: 0;
            line-height: 1.3;
            overflow: hidden;
            height: 25px;
        }

        .block16-glav-pagination {
            display: flex;
            justify-content: flex-end;
            gap: 14px;
            margin-top: 30px;
        }

        .block16-glav-pagination-dot {
            width: 12px;
            height: 12px;
            border-radius: 50%;
            background-color: #FFFFFF;
            box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
            cursor: pointer;
            transition: opacity 0.3s ease;
        }

        .block16-glav-pagination-dot:not(.active) {
            background-color: #DBDEE3;
            opacity: 1;
        }

        .block16-glav-pagination-dot:hover {
            opacity: 0.8;
        }

        @media (max-width: 1000px)  {
            .block16-glav {
                padding: var(--padding-tablet);
            }

            .block16-glav-h1 {
                font-size: 27px;
            }

            .block16-glav-cards {
                flex-wrap: wrap;
                gap: 3vw !important;
            }

            .block16-glav-card {
                flex: 0 0 48% !important;
            }

            .block6-glav {
                padding: var(--padding-tablet);
            }

            .block6-glav-h1 {
                font-size: 30px;
            }

            .block6-glav-h2 {
                margin: 20px 0 30px;
                font-size: var(--font-size-text);
                max-width: 720px;
            }

            .block6-glav-cards-grid {
                grid-template-columns: repeat(2, 1fr);
                grid-template-rows: repeat(3, auto);
                gap: 30px;
            }

            .block6-glav-text-h2 {
                font-size: var(--font-size-text);
                margin-top: 50px;
            }

            .block6-glav-text-h2-second {
                margin-top: 35px;
            }

            .block7-glav {
                padding: var(--padding-tablet);
            }

            .block7-glav-h1 {
                font-size: 27px;
                margin-bottom: 20px;
                color: #0F1217;
            }

            .block7-glav-h2 {
                font-size: var(--font-size-text);
                margin-bottom: 62px;
                color: var(--color-gray-text-secondary);
            }

            .block12-glav {
                padding: var(--padding-tablet);
            }

            .block12-glav-h1-mobile {
                display: block;
                font-size: var(--font-size-h1);
                font-weight: var(--font-weight-semibold);
                color: var(--color-dark);
                margin-bottom: 25px;
                line-height: 1.2;
                width: 100%;
            }

            .block12-glav-text-mobile {
                display: block;
                font-size: var(--font-size-text);
                color: var(--color-dark);
                line-height: 1.2;
                margin-bottom: 30px;
                width: 100%;
            }

            .block12-glav-left .block12-glav-h1,
            .block12-glav-left .block12-glav-text {
                display: none;
            }

            .block12-glav-content {
                display: flex;
                flex-direction: column;
                gap: 0px;
            }

            .block12-glav-right {
                order: 1;
                margin-top: 0;
                width: 100%;
            }

            .block12-glav-left {
                order: 2;
                max-width: none;
                width: 100%;
            }

            .block12-glav-img {
                width: 100%;
                height: 716px;
                border-radius: 12px;
            }

            .block3-glav-h1 {
                font-size: 27px;
                margin-bottom: 30px;
            }

            .block3-glav-text {
                margin-bottom: 30px;
            }

            .block3-glav-card-top-h2,
            .block3-glav-card-bottom-h2,
            .block3-glav-card-right-h2,
            .block3-glav-card-full-width-h2 {
                font-size: var(--font-size-text);
            }

            .block3-glav-card-full-width-button {
                margin-top: 10px;
                height: 30px;
                font-size: 9px;
                max-width: 220px;
            }

            .block3-glav-card-full-width {
                max-height: 260px;
            }

            .block3-glav-card-top-img {
                max-width: 226px;
            }

            .block3-glav-animation-container {
                min-height: 200px;
            }

            .falling-rect span {
                padding: 6px;
                font-size: 8px;
            }

            .rect-1 {
                top: 40px;
                left: 10px;
            }

            .rect-1.animate {
                animation-delay: 2s;
            }

            .rect-1 span {
                transform: rotate(-9deg);
            }

            .rect-2 {
                top: 80px;
                right: 55px;
            }

            .rect-2.animate {
                animation-delay: 1.3s;
            }

            .rect-2 span {
                transform: rotate(-3deg);
            }

            .rect-3 {
                top: 120px;
                left: 15px;
            }

            .rect-3.animate {
                animation-delay: 0.7s;
            }

            .rect-3 span {
                transform: rotate(-17deg);
            }

            .rect-4 {
                top: 120px;
                right: 40px;
            }

            .rect-4.animate {
                animation-delay: 0s;
            }

            .rect-4 span {
                transform: rotate(-24deg);
            }

            .block3-glav-card-right-img {
                max-width: 330px;
                margin-right: -30px;
            }

            .block3-glav-card-bottom-h2{
                max-width: 150px;
            }

            .block3-glav-card-top {
                padding: var(--padding-small) 12px 0 12px;
            }

            .block3-glav-card-bottom,
            .block3-glav-card-right,
            .block3-glav-card-full-width {
                padding: var(--padding-small) 12px;
            }

            .block3-glav-card-bottom {
                align-items: center;
            }

            .block3-glav-card-right {
                overflow: hidden;
            }

            .block3-glav-card-full-width-img {
                object-fit: initial;
            }
        }
        @media (max-width: 700px) {
            .block16-glav {
                padding: var(--padding-mobile);
            }

            .block16-glav-h1 {
                font-size: 30px;
                margin-bottom: 30px;
                text-align: center;
            }

            .block16-glav-cards {
                gap: 20px;
                flex-direction: column;
                flex-wrap: nowrap;
            }

            .block16-glav-card {
                flex: 0 0 auto !important;
                height: auto;
                min-height: 120px;
                padding: 20px;
                width: 100%;
                display: flex !important;
                flex-direction: column;
                align-items: center;
                justify-content: center;
            }

            .block16-glav-card:nth-child(3),
            .block16-glav-card:nth-child(n+4) {
                display: flex !important;
            }

            .block16-glav-pagination {
                display: none !important;
            }

            .block16-glav-card-h2 {
                font-size: 18px;
                margin-bottom: 0;
            }

            .block16-glav-card-text {
                font-size: 14px;
            }
        }

/* ---- frontend/widgets/views/calc-horizontal.php#1 ---- */
.g-recaptcha {
        transform: scale(0.77);
        transform-origin: 0 0;
        -webkit-transform: scale(0.77);
        -moz-transform: scale(0.77);
        -ms-transform: scale(0.77);
        -o-transform: scale(0.77);
        -webkit-transform-origin: 0 0;
        -moz-transform-origin: 0 0;
        -ms-transform-origin: 0 0;
        -o-transform-origin: 0 0;
        transform-origin: 0 0;
    }

    .calc-banner {
        display: flex;
    }

    .calc-banner-inputs {
        width: 300px;
        height: 60px;
        border-radius: 7.5px;
        border: 1.5px solid #FFFFFF;
        background-color: transparent;
        margin-right: 15px;
        margin-top: 15px;
        font-family: 'Open Sans', sans-serif;
        font-weight: 400;
        font-size: 18px;
        line-height: 100%;
        color: #FFFFFF;
        padding-left: 22px;
    }

    .calc-banner-inputs::placeholder {
        font-family: 'Open Sans', sans-serif;
        font-weight: 400;
        font-size: 18px;
        line-height: 100%;
        color: #FFFFFF;
    }

    .banner-button-12 {
        width: 251px;
        height: 62px;
        background-color: #4A5A72;
        color: #FFFFFF;
        font-family: 'Open Sans', sans-serif;
        font-weight: 600;
        font-size: 16px;
        line-height: 100%;
        border: none;
        border-radius: 119px;
        margin-right: 15px;
    }

    .banner-button-12:hover {
        background-color: #3B485B;
    }

    .help-block {
        font-size: 12px;
        color: red;
        margin-top: 5px;
    }

    .banner-reck {
        margin-top: 15px;
    }

    .error-style-calc {
        margin-top: 0px !important;
        height: 52px !important;
    }

    @media (max-width: 1700px) {
        .calc-banner-inputs {
            width: 250px;
        }
    }

    @media (max-width: 1370px) {
        .calc-banner-inputs {
            width: 220px;
            height: 49px;
        }
    }

    @media (max-width: 1250px) {
        .calc-banner-inputs {
            width: 197px;
        }
    }

    @media (max-width: 1130px) {
        .calc-banner-inputs {
            width: 170px;
        }

        .calc-banner-inputs {
            padding-left: 12px;
        }
    }

    @media (max-width: 1000px) {
        .banner-button-12 {
            font-size: 16px;
        }
    }

    @media (max-width: 800px) {

    }

    @media (max-width: 600px) {
        .calc12-1 {
            display: block;
        }

        .calc12-2 {
            display: block;
        }

        .calc-banner-inputs-mail {
            display: none;
        }

        .calc-banner-inputs {
            margin-top: 10px;
            margin-right: 0px;
            width: 300px;
            height: 40px;
        }

        .calc-banner {
            display: block;
        }

        .g-recaptcha-podblock5 {
            margin-top: 10px;
        }
    }

    @media (max-width: 340px) {
        .calc-banner-inputs {
            width: 262px;
        }
    }

/* ---- frontend/widgets/views/bloggallery.php#1 ---- */
.blog-gallery-container {
        font-family: 'Open Sans', sans-serif;
        text-align: left;
    }

    .blog-gallery-container1 {
        margin-top: 80px;
        margin-left: 216px;
        padding-bottom: 80px;
    }

    .blog-gallery-row {
        display: flex;
        margin-bottom: 68px;
    }

    .blog-photo-item {
        position: relative;
        overflow: hidden;
        transition: all 0.3s ease;
        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    }

    .blog-photo-item a {
        display: block;
        cursor: pointer;
        text-decoration: none;
        color: #FFFFFF;
    }

    .blog-photo-img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        transition: all 0.5s ease;
    }

    .blog-photo-item:hover .blog-photo-img {
        transform: scale(1.05);
        filter: brightness(0.9);
    }

    .blog-photo-item::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: rgba(0, 0, 0, 0.3);
        z-index: 1;
        transition: all 0.3s ease;
    }

    .blog-photo-caption {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        color: white;
        text-align: left;
        width: 100%;
        z-index: 2;
    }

    .blog-main-photo .blog-photo-caption {
        padding-left: 39px;
    }

    .blog-side-photo-top .blog-photo-caption {
        padding-left: 39px;
    }

    .blog-side-photo-bottom .blog-photo-caption {
        padding-left: 28px;
    }

    .blog-wide-photo .blog-photo-caption {
        padding-left: 232px;
    }

    .blog-small-photo .blog-photo-caption {
        padding-left: 30px;
    }

    .blog-last-photo .blog-photo-caption {
        padding-left: 232px;
    }

    .blog-photo-title {
        font-weight: 700;
        font-size: 49px;
        line-height: 140%;
        margin-bottom: 20px;
    }

    .blog-photo-description {
        font-weight: 600;
        font-size: 24px;
        line-height: 140%;
    }

    .blog-main-photo {
        width: 718px;
        margin-right: 68px;
    }

    .blog-side-photos {
        display: flex;
        flex-direction: column;
    }

    .blog-side-photo-top {
        width: 718px;
        margin-bottom: 68px;
    }

    .blog-side-photo-bottom {
        width: 718px;
    }

    .blog-wide-photo {
        width: 1504px;
    }

    .blog-three-photos {
        display: flex;
        justify-content: space-between;
    }

    .blog-small-photo {
        width: 478px;
    }

    .blog-small-photo:not(:last-child) {
        margin-right: 35px;
    }

    .blog-last-photo {
        width: 1504px;
    }

    .blog-title-glav {
        font-weight: 700;
        font-size: 49px;
        line-height: 100%;
        color: #2B2B2C;
        margin-bottom: 50px;
    }

    .blog-photo-description p {
        text-align: left !important;
    }

    .blog-photo-description1 {
        width: 537px;
    }

    .blog-photo-description2 {
        width: 601px;
    }

    .blog-photo-description3 {
        width: 601px;
    }

    .blog-photo-description4 {
        width: 1004px;
    }

    .blog-photo-description5 {
        width: 1100px;
    }

    .blog-photo-description-mobile {
        width: 428px;
    }

    .blog-photo-title-mobile {
        width: 420px;
    }

    .blog-photo-title1 {
        width: 636px;
    }

    .blog-photo-title2 {
        width: 1010px;
    }

    @media (max-width: 1700px) {
        .blog-gallery-container1 {
            margin-left: 167px;
        }

        .blog-main-photo {
            width: 574px;
            margin-right: 40px;
        }

        .blog-side-photo-top {
            width: 582px;
            margin-bottom: 40px;
        }

        .blog-side-photo-bottom {
            width: 580px;
        }

        .blog-wide-photo {
            width: 1197px;
        }

        .blog-small-photo {
            width: 376px;
        }

        .blog-last-photo {
            width: 1197px;
        }

        .blog-photo-title {
            font-size: 35px;
        }

        .blog-photo-description {
            font-size: 20px;
        }

        .blog-gallery-row {
            margin-bottom: 40px;
        }

        .blog-wide-photo .blog-photo-caption {
            padding-left: 150px;
        }

        .blog-small-photo .blog-photo-caption {
            padding-left: 15px;
        }

        .blog-last-photo .blog-photo-caption {
            padding-left: 150px;
        }

        .blog-photo-description1 {
            width: 495px;
        }

        .blog-photo-description2 {
            width: 518px;
        }

        .blog-photo-description3 {
            width: 518px;
        }

        .blog-photo-description4 {
            width: 900px;
        }

        .blog-photo-description-mobile {
            width: 350px;
        }

        .blog-photo-description5 {
            width: 900px;
        }

        .blog-photo-title-mobile {
            width: 345px;
        }

        .blog-photo-title1 {
            width: 520px;
        }

        .blog-photo-title2 {
            width: 850px;
        }
    }

    @media (max-width: 1380px) {
        .blog-main-photo {
            width: 468px;
        }

        .blog-side-photo-top {
            width: 470px;
        }

        .blog-side-photo-bottom {
            width: 470px;
        }

        .blog-wide-photo {
            width: 980px;
        }

        .blog-small-photo {
            width: 304px;
        }

        .blog-last-photo {
            width: 980px;
        }

        .blog-photo-title {
            font-size: 29px;
            margin-bottom: 10px;
        }

        .blog-photo-description {
            font-size: 16px;
        }

        .blog-photo-description1 {
            width: 395px;
        }

        .blog-photo-description2 {
            width: 418px;
        }

        .blog-photo-description3 {
            width: 418px;
        }

        .blog-photo-description4 {
            width: 700px;
        }

        .blog-photo-description-mobile {
            width: 250px;
        }

        .blog-photo-description5 {
            width: 700px;
        }

        .blog-photo-title-mobile {
            width: 275px;
        }

        .blog-photo-title1 {
            width: 418px;
        }

        .blog-photo-title2 {
            width: 713px;
        }
    }

    @media (max-width: 1370px) {
        .blog-gallery-container1 {
            margin-left: 115px;
        }
    }

    @media (max-width: 1120px) {
        .blog-main-photo {
            width: 397px;
            margin-right: 20px;
        }

        .blog-side-photo-top {
            width: 410px;
            margin-bottom: 20px;
        }

        .blog-gallery-row {
            margin-bottom: 20px;
        }

        .blog-side-photo-bottom {
            width: 410px;
        }

        .blog-wide-photo {
            width: 828px;
        }

        .blog-small-photo {
            width: 263px;
        }

        .blog-last-photo {
            width: 828px;
        }

        .blog-small-photo:not(:last-child) {
            margin-right: 20px;
        }

        .blog-photo-title {
            font-size: 24px;
        }

        .blog-photo-description {
            font-size: 14px;
        }

        .blog-last-photo .blog-photo-caption {
            padding-left: 98px;
        }

        .blog-wide-photo .blog-photo-caption {
            padding-left: 98px;
        }

        .blog-photo-description1 {
            width: 295px;
        }

        .blog-photo-description2 {
            width: 318px;
        }

        .blog-photo-description3 {
            width: 318px;
        }

        .blog-photo-description4 {
            width: 500px;
        }

        .blog-photo-description-mobile {
            width: 200px;
        }

        .blog-photo-description5 {
            width: 500px;
        }

        .blog-photo-title-mobile {
            width: 235px;
        }

        .blog-photo-title1 {
            width: 363px;
        }

        .blog-photo-title2 {
            width: 550px;
        }
    }

    @media (max-width: 980px) {
        .blog-gallery-row {
            display: block;
        }

        .blog-wide-photo {
            width: 700px;
        }

        .blog-side-photo-bottom {
            width: 700px;
        }

        .blog-side-photo-top {
            width: 700px;
        }

        .blog-main-photo {
            width: 700px;
            margin-right: 0px;
            margin-bottom: 20px;
        }

        .blog-three-photos {
            justify-content: left;
        }

        .blog-small-photo {
            width: 220px;
        }

        .blog-last-photo {
            width: 700px;
        }

        .blog-wide-photo .blog-photo-caption {
            padding-left: 50px;
        }

        .blog-last-photo .blog-photo-caption {
            padding-left: 50px;
        }

        .blog-photo-description {
            width: 600px;
        }

        .blog-photo-description-mobile {
            width: 200px;
        }

        .blog-photo-title-mobile {
            width: 195px;
        }

        .blog-photo-title1 {
            width: 550px;
        }

        .blog-photo-title2 {
            width: 550px;
        }
    }

    @media (max-width: 835px) {
        .blog-wide-photo {
            width: 600px;
        }

        .blog-side-photo-bottom {
            width: 600px;
        }

        .blog-side-photo-top {
            width: 600px;
        }

        .blog-last-photo {
            width: 600px;
        }

        .blog-main-photo {
            width: 600px;
        }

        .blog-small-photo {
            width: 186px;
        }

        .blog-photo-title {
            font-size: 18px;
        }

        .blog-photo-description {
            font-size: 12px;
        }

        .blog-last-photo .blog-photo-caption {
            padding-left: 34px;
        }

        .blog-wide-photo .blog-photo-caption {
            padding-left: 34px;
        }

        .blog-small-photo .blog-photo-caption {
            padding-left: 5px;
        }

        .blog-photo-description {
            width: 450px;
        }

        .blog-photo-description-mobile {
            width: 150px;
        }

        .blog-photo-title-mobile {
            width: 175px;
        }

        .blog-photo-title1 {
            width: 470px;
        }

        .blog-photo-title2 {
            width: 470px;
        }
    }

    @media (max-width: 730px) {
        .blog-wide-photo {
            width: 500px;
        }

        .blog-side-photo-bottom {
            width: 500px;
        }

        .blog-side-photo-top {
            width: 500px;
        }

        .blog-last-photo {
            width: 500px;
        }

        .blog-main-photo {
            width: 500px;
        }

        .blog-small-photo {
            width: 153px;
        }

        .blog-photo-title {
            font-size: 16px;
        }

        .blog-photo-description {
            font-size: 10px;
        }

        .blog-photo-description {
            width: 400px;
        }

        .blog-photo-description-mobile {
            width: 100px;
        }

        .blog-photo-title-mobile {
            width: 140px;
        }

        .blog-photo-title1 {
            width: 410px;
        }

        .blog-photo-title2 {
            width: 410px;
        }
    }

    @media (max-width: 640px) {
        .blog-gallery-container1 {
            margin-left: 82px;
        }

        .blog-main-photo {
            width: 435px;
        }

        .blog-side-photo-bottom {
            width: 435px;
        }

        .blog-side-photo-top {
            width: 435px;
        }

        .blog-last-photo {
            width: 435px;
        }

        .blog-wide-photo {
            width: 435px;
        }

        .blog-small-photo {
            width: 132px;
        }

        .blog-photo-title {
            font-size: 14px;
        }

        .blog-photo-description {
            width: 350px;
        }

        .blog-photo-description-mobile {
            width: 100px;
        }

        .blog-photo-title-mobile {
            width: 120px;
        }

        .blog-photo-title1 {
            width: 325px;
        }

        .blog-photo-title2 {
            width: 325px;
        }
    }

    @media (max-width: 530px) {
        .blog-main-photo {
            width: 360px;
        }

        .blog-side-photo-bottom {
            width: 360px;
        }

        .blog-side-photo-top {
            width: 360px;
        }

        .blog-last-photo {
            width: 360px;
        }

        .blog-wide-photo {
            width: 360px;
        }

        .blog-small-photo:not(:last-child) {
            margin-right: 10px;
        }

        .blog-small-photo {
            width: 113px;
        }

        .blog-photo-title {
            font-size: 12px;
        }

        .blog-photo-description {
            font-size: 9px;
        }

        .blog-main-photo .blog-photo-caption {
            padding-left: 20px;
        }

        .blog-side-photo-top .blog-photo-caption {
            padding-left: 20px;
        }

        .blog-side-photo-bottom .blog-photo-caption {
            padding-left: 20px;
        }

        .blog-wide-photo .blog-photo-caption {
            padding-left: 20px;
        }

        .blog-last-photo .blog-photo-caption {
            padding-left: 20px;
        }

        .blog-gallery-container1 {
            margin-top: 60px;
            padding-bottom: 60px;
        }

        .blog-photo-description {
            width: 300px;
        }

        .blog-photo-description-mobile {
            width: 100px;
        }

        .blog-photo-title-mobile {
            width: 100px;
        }

        .blog-photo-title1 {
            width: 292px;
        }

        .blog-photo-title2 {
            width: 292px;
        }
    }

    @media (max-width: 470px) {
        .blog-gallery-container1 {
            margin-left: 56px;
        }

        .blog-title-glav {
            font-weight: 600;
            font-size: 27px;
            line-height: 100%;
            color: #0F1217;
            margin-bottom: 30px;
        }

        .blog-photo-title-mobile {
            width: 100px;
        }

        .blog-photo-title1 {
            width: 292px;
        }

        .blog-photo-title2 {
            width: 292px;
        }
    }

    @media (max-width: 440px) {
        .blog-main-photo {
            width: 327px;
            margin-bottom: 15px;
        }

        .blog-side-photo-bottom {
            width: 327px;
        }

        .blog-side-photo-top {
            width: 327px;
            margin-bottom: 15px;
        }

        .blog-last-photo {
            width: 327px;
        }

        .blog-wide-photo {
            width: 327px;
        }

        .blog-gallery-row {
            margin-bottom: 15px;
        }

        .blog-small-photo:not(:last-child) {
            margin-right: 5px;
        }

        .blog-small-photo {
            width: 106px;
        }

        .blog-photo-title {
            font-weight: 700;
            font-size: 14px;
            line-height: 130%;
        }

        .blog-photo-description {
            font-weight: 400;
            font-size: 10px;
            line-height: 130%;
        }

        .blog-main-photo .blog-photo-caption {
            padding-left: 10px;
        }

        .blog-side-photo-top .blog-photo-caption {
            padding-left: 10px;
        }

        .blog-side-photo-bottom .blog-photo-caption {
            padding-left: 10px;
        }

        .blog-wide-photo .blog-photo-caption {
            padding-left: 10px;
        }

        .blog-last-photo .blog-photo-caption {
            padding-left: 10px;
        }
    }

    @media (max-width: 420px) {
        .blog-gallery-container1 {
            margin-left: 18px;
        }

        .blog-photo-title-mobile {
            width: 93px;
            font-size: 12px;
        }
    }

    @media (max-width: 355px) {
        .blog-main-photo {
            width: 290px;
        }

        .blog-side-photo-bottom {
            width: 290px;
        }

        .blog-side-photo-top {
            width: 290px;
        }

        .blog-last-photo {
            width: 290px;
        }

        .blog-wide-photo {
            width: 290px;
        }

        .blog-small-photo {
            width: 93px;
        }

        .blog-photo-description {
            font-size: 10px;
        }

        .blog-photo-title {
            width: 247px;
        }

        .blog-photo-description {
            width: 231px;
        }

        .blog-photo-description-mobile {
            width: 76px;
            font-size: 8px;
        }

        .blog-photo-title-mobile {
            width: 100px;
            width: 75px;
            font-size: 10px;
        }
    }

/* ---- frontend/widgets/views/feedback-form-block.php#1 ---- */
.block5-container {
        font-family: 'Open Sans', sans-serif;
        text-underline-position: from-font;
        text-decoration-skip-ink: none;
        text-align: left;
        padding: 0;
        margin: 0;
    }

    .block5-container1 {
        padding-top: 80px;
        margin-bottom: 80px;
        display: flex;
    }

    .block5-img {
        /*width: 705px;*/
        height: 649px;
    }

    .block5-title {
        width: 636px;
    }

    .block5-all {
        width: 666px;
        margin-right: 131px;
    }

    .block5-text {
        font-weight: 400;
        font-size: 18px;
        line-height: 141%;
        color: #000000;
        width: 646px;
    }

    .placeholder-block5 {
        font-weight: 400;
        font-size: 18px;
        line-height: 100%;
        color: #2B2B2C;
        margin-bottom: 5px;
        margin-top: 30px;
    }

    .input-fos-block5 {
        width: 666px;
        height: 48px;
        border-radius: 3px;
        border: 1px solid #AAADB066;
        font-weight: 400;
        font-size: 16px;
        line-height: 100%;
        color: #2B2B2C;
        padding-left: 15px;
    }

    .input-fos-block5-kom:focus {
        outline: none;
    }

    .input-fos-block5-kom {
        padding: 10px 15px;
    }

    .button-block5 {
        width: 665px;
        height: 51px;
        background-color: #55CD6C;
        font-weight: 600;
        font-size: 14px;
        line-height: 100%;
        color: #FFFFFF;
        padding: 16px 272px 16px 272px;
        margin-top: 30px;
        border: none;
        border-radius: 30px;
        cursor: pointer;
    }

    .button-block5:hover {
        background-color: #3D9E5D;
    }

    .popup-politika-fos-button {
        display: flex;
        margin-bottom: 15px;
        margin-top: 17px;
    }

    .button-block5[disabled] {
        background-color: #AAADB0;
        cursor: not-allowed;
    }

    .button-block5[disabled]:hover {
        background-color: #AAADB0;
        cursor: not-allowed;
    }

    .form__agreementfos-glav {
        font-family: 'Open Sans', sans-serif;
        font-weight: 300;
        font-size: 11px;
        line-height: 100%;
        color: #555658;
        margin-top: 5px;
    }

    .form__agreementfos-glav a {
        color: #4CC574;
        text-decoration: none;
    }

    .form__agreementfos-glav a:hover {
        color: #3D9E5D;
    }

    .recaptcha-block5-glav {
        margin-top: 15px;
    }

    @media (max-width: 1700px) {
        .block5-container1 {
            margin-left: 175px;
        }

        .block5-all {
            margin-right: 35px;
        }
    }

    @media (max-width: 1600px) {
        .block5-all {
            width: 556px;
        }

        .block5-title {
            width: 526px;
        }

        .block5-text {
            width: 535px;
            font-size: 15px;
        }

        .input-fos-block5 {
            width: 527px;
        }

        .button-block5 {
            width: 527px;
            padding: 0px;
        }

        .block5-img {
            /*width: 669px;*/
            height: 620px;
        }
    }

    @media (max-width: 1450px) {
        .block5-img {
            /*width: 510px;*/
            height: 532px;
        }

        .block5-title {
            width: 424px;
        }

        .block5-text {
            width: 431px;
            font-size: 12px;
        }

        .placeholder-block5 {
            margin-top: 21px;
        }

        .block5-all {
            width: 500px;
        }
    }

    @media (max-width: 1360px) {
        .block5-container1 {
            margin-left: 100px;
        }
    }

    @media (max-width: 1140px) {
        .block5-img {
            /*width: 462px;*/
            height: 563px;
        }
    }

    @media (max-width: 1100px) {
        .block5-img {
            display: none;
        }
    }

    @media (max-width: 630px) {
        .block5-container1 {
            margin-left: 55px;
        }

        .block5-container1 {
            padding-top: 60px;
            margin-bottom: 60px;
        }
    }

    @media (max-width: 600px) {
        .input-fos-block5 {
            width: 435px;
        }

        .button-block5 {
            width: 440px;
        }
    }

    @media (max-width: 520px) {
        .block5-title {
            width: 386px;
        }

        .block5-text {
            width: 374px;
            font-size: 10px;
        }

        .block5-all {
            width: 396px;
            margin-right: 0px;
        }

        .input-fos-block5 {
            width: 387px;
        }

        .button-block5 {
            width: 400px;
        }
    }

    @media (max-width: 460px) {
        .block5-title {
            width: 322px;
        }

        .block5-text {
            font-weight: 400;
            font-size: 14px;
            line-height: 133%;
            width: 320px;
        }

        .placeholder-block5 {
            margin-top: 30px;
            margin-bottom: 10px;
        }

        .input-fos-block5 {
            width: 327px;
            height: 48px;
        }

        .popup-politika-fos-button {
            margin-bottom: 31px;
            margin-top: 19px;
        }

        .button-block5 {
            width: 327px;
            height: 54px;
            margin-top: 0px;
        }

        .block5-all {
            width: 333px;
        }

        .block5-container1 {
            margin-left: 50px;
        }
    }

    @media (max-width: 420px) {
        .block5-container1 {
            margin-left: 18px;
        }
    }

    @media (max-width: 355px) {
        .block5-title {
            width: 287px;
        }

        .block5-text {
            width: 281px;
            font-size: 11px;
        }

        .input-fos-block5 {
            width: 293px;
        }

        .button-block5 {
            width: 298px;
        }

        .block5-all {
            width: 291px;
        }
    }
