﻿header {
    display: none;
}
.absolut_header_mobile.show{
    display: none!important;
}
footer {
    display: none;
}

body

@font-face {
    font-family: 'Helvetica-Regular';
    src: url('/mebel_na_zakaz/raspashnye_shkafy_na_zakaz/fonts/helvetica-regular.eot'); /* IE 9 Compatibility Mode */
    src: url('/mebel_na_zakaz/raspashnye_shkafy_na_zakaz/fonts/helvetica-regular.eot?#iefix') format('embedded-opentype'), /* IE < 9 */ url('/mebel_na_zakaz/raspashnye_shkafy_na_zakaz/fonts/helvetica-regular.woff2') format('woff2'), /* Super Modern Browsers */ url('/mebel_na_zakaz/raspashnye_shkafy_na_zakaz/fonts/helvetica-regular.woff') format('woff'), /* Firefox >= 3.6, any other modern browser */ url('/mebel_na_zakaz/raspashnye_shkafy_na_zakaz/fonts/helvetica-regular.ttf') format('truetype'), /* Safari, Android, iOS */ url('/mebel_na_zakaz/raspashnye_shkafy_na_zakaz/fonts/helvetica-regular.svg#helvetica-regular') format('svg'); /* Chrome < 4, Legacy iOS */
}

body {
    font-family: 'Helvetica-Regular', serif;
    background: #F4F4F4;

}

main{
    max-width: 1920px;
    margin: 0 auto;
}

.header {
    padding: 10px clamp(150px, 15vw, 286px) 10px clamp(150px, 15vw, 286px);
    display: flex;
    justify-content: space-between;
    color: #2C2D50;
}

.header p:not(.small, .big) {
    padding: 32px 0 13px 0;
    font-size: 20px;
    font-weight: 400;
}

.header img {
    object-fit: contain;
}

.header a {
    color: #2C2D50;
}

.header p.small {
    line-height: 1;
    font-size: 17px;
}

.header p.big {
    line-height: 1;
    font-size: 30px;
}

@media (max-width: 1470px) {
    body  div.header  div:nth-child(6) {
        display: none;
    }

    .header {
        padding: 0 55px;
    }
}

@media (max-width: 850px) {
    .header p:not(.small, .big) {
        padding: 28px 0 22px 0;
        font-size: 12px;
    }

    .header img {
        height: 25px;
        margin: 19px 0;
    }
}

@media (max-width: 500px) {
    body  div.header  div:nth-child(4) {
        display: none;
    }

    .header {
        padding: 0 20px;
    }
}

/* Кухня на заказ - Слайдер */
.kitchen-slider {
    padding: 0;
    background: #fff;
}

.kitchen-viewport {
    position: relative;
    overflow: visible;
    width: 100%;
    max-width: 1920px;
    margin: 0 auto;
    background: #f1f1f1;
}

.kitchen-track {
    display: flex;
    width: 100%;
    transition: transform 0.4s ease-in-out;
    flex-direction: row;
}

.kitchen-slide {
    flex: 0 0 100%;
    position: relative;
    width: 100%;
    height: 600px;
    display: flex;
    align-items: stretch;
}

/* Левая часть блока - 921px на ПК */
.kitchen-slide-left {
    flex: 0 0 921px;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    padding: 40px;
    background: #D4D0C8;
    overflow: hidden;
}

.kitchen-left-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.kitchen-content-wrapper {
    position: relative;
    z-index: 3;
    width: 700px;
    display: flex;
    flex-direction: column;
    gap: 0;
    margin-top: 100px;
    margin-left: 100px;
}

.kitchen-text {
    width: 100%;
    height: auto;
    margin-bottom: 30px;
    display: block;
}

.kitchen-form {
    position: relative;
    z-index: 3;
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 0;
}

.kitchen-form input {
    padding: 8px 14px;
    border: none;
    border-radius: 10px;
    background: #FDFEFE40;
    font-size: 23px;
    width: 100%;
    font-weight: 400;
    margin-bottom: 10px;
    height: 34px;
    box-sizing: border-box;
    color: #7A746C;
}

.kitchen-form input::placeholder {
    color: #999;
    font-weight: 300;
}

.kitchen-form input:focus {
    outline: none;
    background: #fff;
}

.kitchen-btn {
    order: 2;
    padding: 13px 24px;
    line-height: 0;
    background: #FFFFFF;
    color: #2E231A;
    border: none;
    border-radius: 10px;
    box-shadow: 5px 5px 7px -2px rgba(0, 0, 0, 0.24);
    font-size: 25px;
    font-weight: 400;
    text-transform: lowercase;
    cursor: pointer;
    transition: background 0.3s ease;
    width: 100%;
    height: 45px;
    box-sizing: border-box;
    margin-top: 18px;
}

.kitchen-btn:hover {
    background: rgba(255, 255, 255, 0.8);
}

.kitchen-consent {
    font-size: 17px;
    font-weight: 400;
    margin-top: 10px;
    color: rgba(112, 89, 66, 0.64);
}

.kitchen-consent a {
    color: rgba(112, 89, 66, 0.64);
    text-decoration: underline;
}

/* Правая часть блока - занимает остаток */
.kitchen-slide-right {
    flex: 1 1 auto;
    min-width: 0;
    overflow: hidden;
}

.kitchen-slide-right img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Точки навигации слайдера */
.kitchen-dots {
    display: flex;
    position: relative;
    margin-top: 10px;
    gap: 20px;
    z-index: 10;
    justify-content: center;
}

.kitchen-dots button {
    width: 13px;
    height: 13px;
    border-radius: 50%;
    border: none;
    background: rgba(175, 175, 212, 1);
    cursor: pointer;
    transition: background 0.3s ease;
    padding: 0;
}

.kitchen-dots button.active {
    background: rgba(86, 86, 125, 1);
}

/* ДЕСКТОП - ПК с макс 1920px */
@media (min-width: 1021px) {
    .kitchen-slide {
        height: 600px;
    }

    .kitchen-slide-left {
        flex: 0 0 921px;
    }
}

/* ПК 1920px и больше */
@media (min-width: 1920px) {
    .adv-grid-left {
        grid-template-columns: 282px 392px;
        grid-template-rows: 377px 300px;
        height: auto;
    }

    .adv-grid-item--right {
        width: 392px;
        align-self: start;
    }
}

/* ПК уменьшающийся 1021px до 1919px */
@media (min-width: 1021px) and (max-width: 1919px) {
    .adv-grid-left {
        grid-template-columns: 1fr 380px;
        grid-template-rows: 377px 258px;
        height: auto;
    }

    .adv-grid-item--right {
        width: 392px;
        align-self: start;
    }
}

/* ПЛАНШЕТ - 701px до 1020px */
@media (max-width: 1020px) and (min-width: 701px) {
    .kitchen-dots {
        bottom: 7px;
        gap: 15px;
    }

    .kitchen-dots button {
        width: 7px;
        height: 7px;
    }

    .kitchen-slide {
        height: 320px;
    }

    .kitchen-slide-left {
        flex: 0 0 500px;
        padding: 25px;
    }

    body > main > section.kitchen-slider > div > div.kitchen-track > div:nth-child(1) > div.kitchen-slide-left > lottie-player{
        width: 250px!important;
        height: 250px!important;
        top: -85px!important;
        right: -85px!important;
    }

    .kitchen-content-wrapper {
        width: 376px;
        margin-top: 85px;
        margin-left: 20px;
        padding-top: 0;
        padding-left: 0;
    }

    .kitchen-text {
        margin-bottom: 15px;
        max-width: 100%;
    }

    .kitchen-form {
        width: 100%;
        display: flex;
        font-weight: 400;
        flex-direction: column;
        gap: 0;
    }

    .kitchen-form input {
        padding: 5px 8px;
        font-size: 15px;
        font-weight: 400;
        background: #FDFEFE40;
        margin-bottom: 5px;
        border-radius: 5px;
        height: 18px;
    }

    .kitchen-form input::placeholder {
        color: #999;
        font-weight: 400;
        font-size: 15px;
    }

    .kitchen-btn {
        padding: 6px 12px;
        font-size: 15px;
        margin-top: 8px;
        border-radius: 5px;
        box-shadow: 2px 2px 3px -1px rgba(0, 0, 0, 0.24);
        height: 23px;
    }

    .kitchen-consent {
        font-size: 11px;
        margin-top: 5px;
    }
}
@media screen and (max-width: 1000px) {
    .block-contact{
        display: none;
    }
}
/* МОБИЛКА - 700px и меньше */
@media (max-width: 700px) {
    .kitchen-slide {
        height: 100vh;
        max-height: 100vh;
        flex-direction: column;
        overflow: visible;
    }

    .kitchen-slide-right {
        order: -1;
        flex: 0 0 50%;
        height: 50%;
        overflow: hidden;
    }

    .kitchen-slide-left {
        flex: 0 0 50%;
        height: 50%;
        padding: 20px;
        justify-content: flex-start;
        position: relative;
        overflow: visible;
    }

    .kitchen-left-bg {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        object-fit: cover;
        z-index: 0;
        display: block;
    }

    .kitchen-content-wrapper {
        width: 100%;
        margin-top: 50px;
        margin-left: 0;
        padding-top: 0;
        padding-left: 0;
        position: relative;
        z-index: 2;
    }

    .kitchen-text {
        display: block;
        margin-bottom: 15px;
        max-width: 100%;
    }

    .kitchen-form {
        width: 100%;
        display: flex;
        flex-direction: column;
        gap: 0;
    }

    .kitchen-form input {
        padding: 7px 10px;
        font-size: 16px;
        border: none;
        border-radius: 6px;
        background: rgba(253, 254, 254, 0.25);
        color: rgba(122, 116, 108, 1);
        height: 26px;
        margin-bottom: 6px;
    }

    .kitchen-form input::placeholder {
        color: rgba(122, 116, 108, 1);
    }

    .kitchen-btn {
        padding: 10px 16px;
        font-size: 18px;
        margin: 0;
        border: none;
        height: 34px;
        background: rgba(31, 38, 43, 1);
        color: #fff;
        border-radius: 6px;
    }

    .kitchen-consent {
        padding: 0;
        font-size: 11px;
        border: none;
        margin-top: 4px;
        color: #857c73;
    }
    .kitchen-slide{
        height: 155vw;
    }

    .kitchen-dots {
        display: flex;
        bottom: 7px;
        gap: 15px;
    }

    .kitchen-dots button {
        width: 10px;
        height: 10px;
    }

    lottie-player {
        display: block !important;
        width: 50vw !important;
        height: 50vw !important;
        position: absolute !important;
        top: -20vw !important;
        right: -15vw !important;
        z-index: 5;
    }
}

/* Мобильный блок - скрыт на ПК и планшете */
.adv-grid-mobile {
    display: none;
}

/* контейнер */
.adv-grid {
    --radius: 11px;
    --violet: rgba(87, 87, 125, 1);
    --text: rgba(49, 45, 83, 1);

    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 28px;
    align-items: start;
    padding: 10px clamp(150px, 15vw, 286px) 50px clamp(150px, 15vw, 286px);
    max-width: 1920px;
    margin: 0 auto;
    background-color: #f1f1f1;
    background-image: url("/mebel_na_zakaz/kuhni_na_zakaz/src/img/flexblock_bg_pc.webp");
    background-position: right;
    background-repeat: no-repeat;
}

/* Левая часть - сетка 2x2 */
.adv-grid-left {
    display: grid;
    grid-template-columns: 1fr 395px;
    gap: 16px;
    min-width: 0;
    overflow: hidden;
}

.adv-grid-item {
    border-radius: 16px;
    overflow: hidden;
    background: #e9e9ef;
}

.adv-grid-item img,
.adv-grid-item video {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Верхняя левая - видео */
.adv-grid-item--tl {
    grid-column: 1;
    grid-row: 1;
}

/* Нижняя левая - картинка */
.adv-grid-item--bl {
    grid-column: 1;
    grid-row: 2;
}

/* Правая сторона - видео на обе строки */
.adv-grid-item--right {
    grid-column: 2;
    grid-row: 1 / 3;
    flex-shrink: 0;
    align-self: start;
}

/* Правая часть - текстовые блоки */
.adv-grid-right {
    display: flex;
    flex-direction: column;
    gap: 32px;
    width: 75%;
}

/* пункты */
.adv-item {
    display: block;
}

.adv-item h3 {
    margin: 0 0 8px 0;
    font-weight: bold;
    color: var(--violet);
    font-size: 32px;
    line-height: 1;
}

.adv-item p {
    margin: 0;
    color: var(--text);
    font-size: 20px;
    line-height: 1;
}

/* ПЛАНШЕТ - 1020px и меньше */
@media (max-width: 1020px) {
    .adv-grid {
        grid-template-columns: 1fr 1fr;
        padding: 5px clamp(10px, 10vw, 130px) 10px clamp(10px, 10vw, 150px);
        gap: 35px;
        background-position: right;
        background-image: url("/mebel_na_zakaz/kuhni_na_zakaz/src/img/flexblock_bg_tablet.webp");
    }

    .adv-grid-left {
        grid-template-columns: 1fr 208px;
        grid-template-rows: 235px 165px;
        gap: 10px;
        height: 100%;
        align-self: stretch;
        min-width: 0;
    }

    .adv-grid-item--right {
        width: 208px;
        height: 410px;
        flex-shrink: 0;
        align-self: start;
    }

    .adv-grid-right {
        gap: 10px;
        width: 100%;
    }

    .adv-item h3 {
        font-size: 20px;
        margin: 3px;
    }

    .adv-item p {
        font-size: 15px;
    }
}

/* МОБИЛКА - 700px и меньше */
@media (max-width: 700px) {
    /* Скрыть основной блок */
    .adv-grid {
        display: none;
    }

    /* Мобильный блок */
    .adv-grid-mobile {
        display: flex;
        flex-direction: column;
        background-image: url("/mebel_na_zakaz/kuhni_na_zakaz/src/img/flexblock_bg_mobile.webp");
        background-position: bottom;
        background-repeat: no-repeat;
        padding: 10px;
    }

    /* Видео сверху */
    .adv-mobile-video {
        width: 100%;
        height: 388px;
        overflow: hidden;
        border-radius: 6px;
        margin-bottom: 15px;
    }

    .adv-mobile-video video {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
    }

    /* Текстовые блоки */
    .adv-mobile-content {
        padding: 0;
        display: flex;
        flex-direction: column;
        gap: 20px;
    }

    /* Две картинки по 50% */
    .adv-mobile-images {
        display: grid;
        grid-template-columns: 1fr 1fr;
        margin-top: 15px;
        gap: 10px;
        padding: 0;
    }

    .adv-mobile-image {
        height: 150px;
        overflow: hidden;
        border-radius: 12px;
    }

    .adv-mobile-image img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
    }

    .adv-item h3 {
        font-size: 20px;
        margin-bottom: 7px;
        color: rgba(87, 87, 125, 1);
    }

    .adv-item p {
        font-size: 14px;
        color: rgba(49, 45, 83, 1);
    }
}

/* Каталог кухонь */
.kitchen-catalog {
    padding: clamp(20px, calc(280px / 1920 * 100vw), 280px);
    max-width: 1920px;
    margin: 0 auto;
    background-color: #f1f1f1;
    background-image: url("/mebel_na_zakaz/kuhni_na_zakaz/src/img/flexblock_2_bg_pc.webp");
    background-position: left;
    background-repeat: no-repeat;
}

.kitchen-catalog-grid {
    display: grid;
    grid-template-columns: minmax(100px, 2.12fr) minmax(100px, 1fr) minmax(100px, 0.86fr);
    grid-template-rows: clamp(100px, calc(230px / 1920 * 100vw), 230px) clamp(150px, calc(389px / 1920 * 100vw), 389px);
    gap: clamp(10px, 1.3vw, 20px);
}

/* ПК 1920px и больше - фиксированные размеры */
@media (min-width: 1920px) {
    .kitchen-catalog {
        padding: 10px clamp(150px, 15vw, 286px) 50px clamp(150px, 15vw, 286px);
    }

    .kitchen-catalog-grid {
        gap: 20px;
    }

}
@media (max-width: 1919px) {
    .kitchen-catalog {
        padding: 10px clamp(150px, 15vw, 286px) 10px clamp(150px, 15vw, 286px);
    }
}
.kitchen-catalog-item {
    border-radius: 16px;
    overflow: hidden;
    position: relative;
}

.kitchen-catalog-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Аспект рацио для разных элементов */
.kitchen-catalog-column:nth-child(2) .kitchen-catalog-item:nth-child(1) {
    aspect-ratio: 329 / 230;
}

.kitchen-catalog-column:nth-child(2) .kitchen-catalog-item:nth-child(2) {
    aspect-ratio: 329 / 389;
}

.kitchen-catalog-column:nth-child(3) .kitchen-catalog-item:nth-child(1) {
    aspect-ratio: 283 / 547;
}

/* Лейбл "Каталог" */
.kitchen-catalog-label {
    position: absolute;
    top: clamp(15px, 1.6vw, 31px);
    left: clamp(30px, 3.5vw, 68px);
    font-size: clamp(14px, 2.5vw, 32px);
    font-weight: bold;
    color: rgba(87, 87, 125, 1);
    z-index: 2;
}

/* Цена в нижнем левом углу */
.kitchen-catalog-price {
    position: absolute;
    bottom: clamp(3px, 0.3vw, 5px);
    left: clamp(3px, 0.3vw, 6px);
    background: rgba(255, 255, 255, 0.6);
    padding: clamp(3px, 0.3vw, 5px) clamp(3px, 0.3vw, 6px);
    border-radius: clamp(6px, 0.5vw, 10px);
    font-size: clamp(12px, 1vw, 20px);
    line-height: 1;
    color: #333;
    z-index: 2;
}

/* Левая колонка - 696x639 на 2 строки */
.kitchen-catalog-left {
    grid-column: 1;
    grid-row: 1 / 3;
    aspect-ratio: 696 / 639;
}

/* Средняя колонка */
.kitchen-catalog-column {
    display: flex;
    flex-direction: column;
    gap: clamp(10px, 2vw, 20px);
    grid-row: 1 / 3;
}

.kitchen-catalog-column:nth-child(2) {
    grid-column: 2;
}

.kitchen-catalog-column:nth-child(3) {
    grid-column: 3;
}

/* Кнопка */
.kitchen-catalog-btn {
    padding: clamp(12px, 2vw, 25px) clamp(20px, 3vw, 55px);
    border: 0;
    border-radius: clamp(8px, 1vw, 11px);
    background-color: rgba(196, 196, 236, 1);
    line-height: 1;
    color: rgba(49, 45, 83, 1);
    transition: all 0.5s;
    font-size: clamp(12px, 1vw, 20px);
    cursor: pointer;
    width: 100%;
    min-height: clamp(45px, 3.8vw, 73px);
}

.kitchen-catalog-btn:hover {
    background-color: rgb(136, 136, 179);
    box-shadow: 0 0 20px #8888b3;
    transform: scale(1.1);
}

.kitchen-catalog-btn:active {
    background-color: #8888b3;
    transition: all 0.25s;
    box-shadow: none;
    transform: scale(0.98);
}

@media screen and (max-width: 1650px){
    .kitchen-catalog-label{
        top: 18px;
        left: 50px;
        font-size: 25px;
    }
    .kitchen-catalog-btn{
        padding: 0 0;
        height: 12%;
        min-height: 12%;
    }
}

@media screen and (max-width: 1400px){
    .kitchen-catalog-label{
        top: 9px;
        left: 40px;
        font-size: 20px;
    }
    .kitchen-catalog-price{
        bottom: 7px;
        left: 7px;
    }
}

@media screen and (max-width: 900px){
    .kitchen-catalog-label{
        top: 13px;
        left: 40px;
        font-size: 15px;
    }
}

/* ПЛАНШЕТ - 701px до 1020px */
@media (max-width: 1200px) and (min-width: 701px) {
    .kitchen-catalog {
        background-image: url("/mebel_na_zakaz/kuhni_na_zakaz/src/img/flexblock_2_bg_tablet.webp");
        padding: 10px clamp(10px, 10vw, 150px) 10px clamp(10px, 10vw, 150px);
    }
}

/* МОБИЛКА - 700px и меньше */
/* Баннер под каталогом */
.kitchen-catalog-banner {
    display: block;
    width: 100%;
    max-width: 1920px;
    margin: 24px auto 0;
    padding: 0 clamp(20px, calc(280px / 1920 * 100vw), 280px);
    box-sizing: border-box;
    border-radius: 16px;
    overflow: hidden;
    text-decoration: none;
}

.kitchen-catalog-banner img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 16px;
}

/* Мобильный каталог кухонь */
.kitchen-catalog-mobile {
    display: none;
    padding: 20px 10px;
    max-width: 1920px;
    margin: 0 auto;
    background-color: #f1f1f1;
}

.kitchen-catalog-mobile-item {
    border-radius: 16px;
    overflow: hidden;
    position: relative;
    margin-bottom: 10px;
}

.kitchen-catalog-mobile-label {
    position: absolute;
    top: 2vw;
    left: 8vw;
    font-size: 20px;
    font-weight: bold;
    color: rgba(87, 87, 125, 1);
    z-index: 2;
}

.kitchen-catalog-mobile-item img {
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
}

.kitchen-catalog-mobile-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-bottom: 10px;
}

.kitchen-catalog-mobile-half {
    margin-bottom: 0;
    aspect-ratio: 1;
}

.kitchen-catalog-mobile-half img {
    height: 100%;
}

.kitchen-catalog-mobile-banner {
    display: block;
    width: 100%;
    margin-bottom: 10px;
    border-radius: 16px;
    overflow: hidden;
    text-decoration: none;
}

.kitchen-catalog-mobile-banner img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 16px;
}

@media (max-width: 700px) {
    .kitchen-catalog {
        display: none;
    }

    .kitchen-catalog-price{
        padding: 6px;
        font-size: 14px;
    }

    .kitchen-catalog-btn{
        height: 100%;
        padding: 10px 118px;
        font-size: 14px;
        font-family: Helvetica, sans-serif !important;;
    }

    .kitchen-catalog-mobile {
        display: block;
    }
}

.ps {
    background: url("/mebel_na_zakaz/src/img/портфолио.png");
    padding: 48px 0 24px 0;
    position: relative;
    overflow: hidden;
    display: none;
}
.left_shtorka, .right_shtorka{
    pointer-events:none;
    position: absolute;
    top: 0;
    bottom: 0;
    background: linear-gradient(90deg, rgba(196, 196, 236, 0) 0%, #C4C4EC 67.34%);
    z-index: 10;
}
.right_shtorka{
    right: 0;
    width: 20%;
}
.left_shtorka{
    left: 0;
    width: 20%;
    transform: rotate(180deg);
}

/* Внутренняя обёртка */
.ps__inner {
    margin: 0 auto;
}

/* Заголовок-плашка */
.ps__title{ text-align:center; position: relative; width: max-content; display: flex; margin: 0 auto 40px; }
.bubble{
    --bg:#fff;                       /* цвет плашки */
    --shadow: rgba(76,74,112,.12);   /* тень снизу */
    display:inline-block;
    padding: 14px 20px 20px;
    background:var(--bg);
    color:#58527f;
    font-weight:bold;
    line-height:1.04;
    font-size: 75px;
    position: relative;

    /* маска из SVG — растягивается под размер блока */
    -webkit-mask: url('data:image/svg+xml;utf8,\
<svg xmlns="http://www.w3.org/2000/svg" viewBox=\'0 0 855 168\'>\
<path fill=\'black\' d=\'M24 22C24 9.84973 33.8498 0 46 0H805C817.15 0 827 9.84973 827 22V68.0096C827 75.7416 833.268 82.0096 841 82.0096C848.732 82.0096 855 88.2776 855 96.0096V145.5C855 157.65 845.15 167.5 833 167.5H22C9.84971 167.5 0 157.65 0 145.5V92.0001C0 85.3726 5.3726 80 12 80C18.6275 80 24 74.6274 24 68V22Z\'/>\
</svg>') no-repeat center / 100% 100%;
    mask: url('data:image/svg+xml;utf8,\
<svg xmlns="http://www.w3.org/2000/svg" viewBox=\'0 0 855 168\'>\
<path fill=\'black\' d=\'M24 22C24 9.84973 33.8498 0 46 0H805C817.15 0 827 9.84973 827 22V68.0096C827 75.7416 833.268 82.0096 841 82.0096C848.732 82.0096 855 88.2776 855 96.0096V145.5C855 157.65 845.15 167.5 833 167.5H22C9.84971 167.5 0 157.65 0 145.5V92.0001C0 85.3726 5.3726 80 12 80C18.6275 80 24 74.6274 24 68V22Z\'/>\
</svg>') no-repeat center / 100% 100%;

    /* тень по форме маски */
    filter: drop-shadow(0 8px 0 var(--shadow));
}
.ps__title::before, .ps__title::after{
    background: url("/mebel_na_zakaz/src/img/star.png");
    position: absolute;
    top: 35%;
    z-index: 1;
    content: "";
    width: 40px;
    height: 40px;
}
.ps__title::after{
    left: 0;
}
.ps__title::before{
    transform: rotate(25deg);
    right: 0;
}
/* Карусель */
.ps__carousel {
    position: relative;
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
}

.ps__viewport {
    overflow: auto hidden;
    scroll-snap-type: none;
    -ms-overflow-style: none;
    scrollbar-width: none;
    border-radius: 18px;
    position: relative;
    padding: 10px 4px; /* чтобы карточки не прилипали к краю при тумане */
}

.ps__viewport::-webkit-scrollbar{ display:none; }

.ps__track {
    display: flex;
    gap: 20px;
    padding: 25px;
    width: max-content!important;
    overflow: hidden;
}

.ps-card {
    flex: 0 0 350px;
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    scroll-snap-align: start;
    display: flex;
    flex-direction: column;
    padding: 20px;
}

.ps-card__img {
    margin: 0;
    min-height: 288px;
    height: 288px;
    overflow: hidden;
}

.ps-card__body{
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 54%;
}

.ps-card__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.ps-card__title {
    margin: 18px 0 11px;
    color: #595489;
    font-size: 33px;
    font-weight: 700;
}

.ps-card__body .ps-card__specs {
    height: 100%;
    margin-bottom: 12px;
    list-style: none;
    color: #57577D;
    font-size: 20px;
}

.ps-card__body .ps-card__specs li{
    line-height: 1.2;
}

.ps-card__btn {
    width: 100%;
    display: block;
    margin-top: auto;
    border: 0;
    line-height: 1;
    border-radius: 12px;
    padding: 12px 14px;
    background: #6666CCC2;
    font-size: 25px;
    text-align: center;
    color: #fff;
    cursor: pointer;
    transition: .2s ease;
}

.ps-card__btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 6px 16px rgba(0, 0, 0, .12);
    color: white;
}

/* Навигация */
.ps__nav {
    width: 82px;
    height: 82px;
    border-radius: 12px;
    border: none;
    color: #fff;
    background: #6666CCC2;
    display: grid;
    place-items: center;
    box-shadow: 0 6px 18px rgba(56, 48, 128, .35);
    cursor: pointer;
    transition: .2s ease;
}

.nav_carousel {
    margin-top: 32px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.ps__nav:disabled {
    opacity: .4;
    cursor: not-allowed;
    filter: grayscale(.2);
}

.ps__nav:hover:not(:disabled) {
    transform: translateY(-1px);
}

/* CTA */
.ps__cta {
    display: flex;
    justify-content: center;
}

.ps__cta-btn {
    display: inline-block;
    margin: 0 25px;
    padding: 20px 100px;
    border-radius: 14px;
    background: #7D7DD3;
    color: #fff;
    font-size: 30px;
    font-weight: 700;
    box-shadow: 0 6px 18px rgba(56, 48, 128, .35);
}

.ps__cta-btn:hover{
    color: white;
}

/* ====== Адаптив ====== */
@media (max-width: 1100px) {
    .ps{
        padding: 22px ;
    }
    .ps__title{
        margin: 0 auto;
    }
    .bubble {
        font-size: 40px;
    }

    .ps__title::before, .ps__title::after {
        top: 22%;
        width: 30px;
        height: 30px;
        background-size: cover;
    }
}

@media (max-width: 860px) {
    .bubble {
        font-size: 40px;
    }

    .ps__title::before, .ps__title::after {
        top: 22%;
    }

    .ps-card{
        flex: 0 0 179px;
        height: auto;
        padding: 9px 11px;
    }

    .left_shtorka, .right_shtorka{
        width: 15%;
    }
    .ps{
        padding: 15px;
    }

    .ps-card__img{
        min-height: 127px;
        height: 127px;
    }

    .ps-card__title{
        font-size: 16px;
        margin: 7px 0;
    }

    .ps-card__body .ps-card__specs{
        font-size: 12px;
    }

    .ps-card__btn{
        font-weight: 400;
        font-size: 12px;
    }

    .ps__cta-btn{
        font-size: 12px;
    }

    .ps__nav{
        width: 58px;
        height: 58px;
    }
}

@media (max-width: 590px) {
    .bubble {
        font-size: 24px;
    }

    .ps__track{
        gap: 8px;
    }

    .ps-card__btn{
        padding: 6px;
    }

    .ps__cta-btn{
        padding: 12px 50px;
    }

    .ps__nav{
        width: 40px;
        height: 40px;
    }

    .ps__title::before, .ps__title::after{
        width: 20px;
        height: 20px;
        top: 29%;
    }
}

@media (max-width: 430px){
    .ps__cta-btn{
        margin: 0 8px;
    }
}

/* Новый раздел отзывов */
.reviews-section_main {
    background-color: #f1f1f1;
    background-image: url("/mebel_na_zakaz/kuhni_na_zakaz/src/img/review_bg_pc.webp");
    background-position: right;
    background-repeat: no-repeat;
    background-size: contain;
    padding: 10px clamp(150px, 15vw, 286px) 10px clamp(150px, 15vw, 286px);
}

.reviews-container {
    max-width: 1920px;
    margin: 0 auto;
}

.reviews-title {
    color: #57577D;
    font-size: clamp(20px, 2vw, 32px);
    font-weight: bold;
    text-align: left;
    margin-bottom: clamp(10px, 1vw, 20px);
}

/* ПК версия */
.reviews-grid-pc {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: clamp(10px, 1vw, 20px);
    min-height: clamp(256px, 26vw, 483px);
}

.reviews-col {
    display: flex;
    flex-direction: column;
    gap: clamp(10px, 1vw, 20px);
}

.reviews-col-1 {
}

.reviews-col-2 {
}

.reviews-col-3 {
}

.reviews-col-4 {
}

.review-text-block {
    display: flex;
    flex-direction: column;
    gap: 12px;
    background: white;
    padding: clamp(7px, 1vw, 20px);
    border-radius: 11px;
}

.review-header-top {
    display: flex;
    align-items: center;
    gap: 10px;
}

.review-avatar {
    width: clamp(22px, 2vw, 40px);
    height: clamp(22px, 2vw, 40px);
    border-radius: 11px;
    background: rgba(242, 242, 242, 1);
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    color: rgba(0, 0, 0, 0.16);
    flex-shrink: 0;
    font-size: clamp(9px, 1vw, 18px);
    line-height: 1;
}

.review-header {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 8px;
}

.review-name {
    margin: 0;
    font-size: clamp(9px, 1vw, 18px);
    color: rgba(0, 0, 0, 1);
}

.review-stars-img {
    height: clamp(9px, 1vw, 18px);
    width: auto;
    margin-left: auto;
}

.review-stars {
    font-size: 13px;
    margin-bottom: 6px;
}

.review-text {
    margin: 0;
    font-size: clamp(9px, 1vw, 15px);
    color: rgba(0, 0, 0, 1);
    line-height: 1;
}

.reviews-col-img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 12px;
    object-fit: cover;
    flex: 1;
}

.reviews-col-full-img {
    width: 100%;
    height: 100%;
    display: block;
    border-radius: 16px;
    object-fit: cover;
}

.reviews-col-video {
    width: 100%;
    height: 100%;
    border-radius: 16px;
    object-fit: cover;
}

/* Планшет версия */
.reviews-grid-tablet {
    display: none;
}

/* Мобилка версия */
.reviews-grid-mobile {
    display: none;
}

.review-text-block-mobile {
    display: flex;
    gap: 12px;
    align-items: center;
    margin-bottom: 15px;
}

.review-avatar-mobile {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #e0e0e0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    color: #999;
    flex-shrink: 0;
}

.review-info-mobile {
    flex: 1;
}

.review-name-mobile {
    margin: 0;
    font-size: 14px;
    font-weight: bold;
    color: #57577D;
}

.review-stars-mobile {
    font-size: 12px;
}

.review-text-mobile {
    margin: 0 0 20px 0;
    font-size: 13px;
    color: #666;
    line-height: 1.4;
}

.reviews-mobile-img {
    width: 100%;
    height: auto;
    border-radius: 12px;
    margin-bottom: 20px;
    display: block;
}

.reviews-mobile-video {
    width: 100%;
    height: auto;
    border-radius: 12px;
}
@media (max-width: 1420px) {
    .review-name {
        font-size: 9px;
    }

    .review-avatar {
        font-size: 9px;
        height: 22px;
        width: 22px;
    }
    .review-stars-img {
        height: 9px;
    }

    .review-text{
        font-size: 9px;
    }

    .review-text-block {
        padding: 7px;
    }
}

@media (max-width: 1200px) and (min-width: 701px) {
    .reviews-section_main {
        background-image: url(/mebel_na_zakaz/kuhni_na_zakaz/src/img/review_bg_tablet.webp);
        padding: 10px clamp(10px, 10vw, 150px) 50px clamp(10px, 10vw, 150px);
    }
}
/* Адаптив */
@media (max-width: 700px) {
    .reviews-grid-pc {
        display: none;
    }

    .reviews-grid-tablet {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 16px;
        min-height: 500px;
    }

    .reviews-title {
        font-size: 36px;
        margin-bottom: 30px;
    }

    .reviews-section_main {
        background-image: url("/mebel_na_zakaz/kuhni_na_zakaz/src/img/review_bg_tablet.webp");
        padding: 40px 15px;
    }

    .review-avatar {
        width: 40px;
        height: 40px;
        font-size: 16px;
    }

    .review-name {
        font-size: 13px;
    }

    .review-text {
        font-size: 11px;
    }
}

/* Мобилка стили для разных раскладок */
.reviews-mobile-row-70-30 {
    display: grid;
    grid-template-columns: 7fr 3fr;
    gap: 10px;
    align-items: start;
}

.reviews-mobile-30-img {
    width: 100%;
    height: 100%;
    border-radius: 12px;
    object-fit: cover;
    display: block;
}

.reviews-mobile-row-60-40 {
    display: grid;
    grid-template-columns: 6fr 4fr;
    gap: 10px;
}

.reviews-mobile-60-video {
    width: 100%;
    height: auto;
    border-radius: 12px;
    object-fit: cover;
    display: block;
}

.reviews-mobile-40-img {
    width: 100%;
    height: 100%;
    border-radius: 12px;
    object-fit: cover;
    display: block;
}

@media (max-width: 700px) {
    .reviews-grid-pc,
    .reviews-grid-tablet {
        display: none;
    }

    .reviews-grid-mobile {
        display: flex;
        flex-direction: column;
        gap: 18px;
    }

    .reviews-title {
        font-size: 24px;
        margin-bottom: 25px;
        text-align: left;
    }

    .reviews-section_main {
        background-image: url("/mebel_na_zakaz/kuhni_na_zakaz/src/img/review_bg_mobile.webp");
        padding: 20px 10px;
    }

    .review-text-block {
        gap: 12px;
        padding: 15px;
    }

    .review-avatar {
        width: 35px;
        height: 35px;
        font-size: 14px;
    }

    .review-name {
        font-size: 12px;
    }

    .review-stars-img {
        height: 14px;
    }

    .review-text {
        font-size: 11px;
    }

    .reviews-col-img {
        border-radius: 12px;
    }

    .reviews-col-video {
        border-radius: 12px;
    }
}

.reviews-section {
    padding: 40px 20px;
}

/* 3 видео сверху */
.reviews-videos {
    display: flex;
    gap: 15px;
    margin-bottom: 30px;
}
.video-card {
    flex: 1;
    border-radius: 12px;
    overflow: hidden;
}
.video-card img {
    width: 100%;
    height: auto;
    display: block;
}

/* Карусель */
.reviews-carousel {
    position: relative;
    overflow: visible;
}
.reviews-track {
    display: flex;
    transition: transform 0.4s ease;
}
.rc-viewport{
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    -ms-overflow-style: none;
    scrollbar-width: none;
    overscroll-behavior: contain;
    padding: 0 0 0 0; /* если нужен отступ слева — поставь */
    user-select: none;
}
.rc-viewport::-webkit-scrollbar{ display:none; }
.review-card {
    flex: 0 0 33.333%;
    padding: 0 10px;
    box-sizing: border-box;
}
.review-user {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 8px;
}
.avatar {
    background: #fff;
    border-radius: 17px;
    width: 53px;
    height: 53px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    color: #00000029;
    font-size: 23px;
}
.stars {
    display: flex;
    gap: 5px;
    margin-left: auto;
    color: gold;
}
.name{
    font-size: 23px;
}
.reviews-dots {
    display: flex;
    justify-content: center;
    margin-top: 15px;
    gap: 8px;
}
.reviews-dots button {
    width: 26px;
    height: 26px;
    border-radius: 50%;
    border: 4px solid #7D7DD3;
    background: white;
    cursor: pointer;
}
.reviews-dots button:focus {
    outline: none;
    box-shadow: none;
}
.ps__nav:focus{
    outline: none;
    box-shadow: none;
}
.reviews-dots button.active {
    border: none;
    width: 26px;
    height: 26px;
    background: #7D7DD3;
}

.reviews-carousel {
    position: relative;
    overflow: hidden;
}
.reviews-track {
    display: flex;
    transition: transform 0.3s ease;
    will-change: transform;
    touch-action: pan-y;
    gap: 20px;
}
.review-card {
    flex: 0 0 415px;
    margin: 20px 0;
    background: #F4F4F4;
    border-radius: 22px;
    line-height: 1.1;
    padding: 14px 17px 16px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.08);
}

.reviews-videos img{
    cursor: pointer;
}

.video-modal {
    display: none;
    position: fixed;
    z-index: 999;
    left: 0; top: 0;
    width: 100%; height: 100%;
    background: rgba(0,0,0,0.8);
    align-items: center;
    justify-content: center;
}
.video-modal-content {
    position: relative;
    height: 95%;
    margin: auto;
}
.video-modal video {
    width: 100%;
    height: 100%;
    border-radius: 10px;
}
.video-modal-close {
    position: absolute;
    top: -30px;
    right: 0;
    font-size: 30px;
    color: white;
    cursor: pointer;
}

    .reviews-dots button{
        width: 12px;
        height: 12px;
        padding: 0;
        border: 2px solid #7D7DD3;
    }

    .reviews-dots button.active{
        width: 12px;
        height: 12px;
    }

    .review-card{
        padding: 10px;
        flex: 0 0 251px;
        margin: 14px 0;
    }

    .avatar{
        width: 31px;
        height: 31px;
        padding: 10px;
        font-size: 13px;
        line-height: 1;
        border-radius: 10px;
    }

    .name{
        font-size: 13px;
    }


@media (max-width: 550px) {
    .review-card{
        margin: 0;
    }
    .reviews-track{
        gap: 10px;
    }
    .video-card img{
        height: 233px;
    }
    .reviews-videos{
        gap: 5px;
        margin-bottom: 14px;
    }
    .reviews-section{
        padding: 14px 0;
    }
}

/* КВИЗ */
.quiz_container{
    background: #efefef;
    padding: 10px clamp(150px, 15vw, 286px) 10px clamp(150px, 15vw, 286px);
}
#quiz{
    background: white;
    padding: 40px;
    border-radius: 22px;
    box-shadow: 0 0 7px 9px #00000021;
}
#quiz h3{
    color: rgba(87, 87, 125, 1);
    font-size: 32px;
    font-weight: bold;
}
#quiz span{
    color: rgba(87, 87, 125, 1);
    font-size: 20px;
}
#quiz h4{
    color: #57577D;
    font-weight: 400;
    font-size: 36px;
    display: flex;
    align-items: flex-end;
    line-height: 1;
}
.purple_had{
    background: rgba(125, 125, 211, 1);
    padding: 11px 16px;
    border-radius: 11px;
    line-height: 0;
    display: flex;
    width: 100%;
    justify-content: space-between;
    margin-top: 15px;
}
#quiz h4 img{
    margin-right: 10px;
}
#quiz-title{
    line-height: 1;
    color: white;
    font-size: 20px;
    font-weight: 300;
    margin: 0;
}
#quiz-step{
    line-height: 1;
    color: white;
    font-size: 20px;
}
.quiz-progress {
    height: 9px;
    border: 2px solid #7D7DD3;
    background: white;
    margin: 7px 0 16px;
    border-radius: 11px;
}
#quiz-progress-bar {
    height: 100%;
    background: #7D7DD3;
    width: 0;
    transition: width 0.3s;
}
.quiz-content {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 30px;
}
.quiz-option {
    font-size: 37px;
    width: 24%;
    cursor: pointer;
    text-align: center;
}
.quiz-option img{
    width: 100%;
}
#quiz-content div.quiz-option div{
    font-size: 20px;
    color: rgba(87, 87, 125, 1);
    margin-top: 21px;
}
.quiz-option.selected img {
    border: 2px solid #6c63ff;
    border-radius: 22px!important;
}
.quiz-nav {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 30px;
}

.quiz-arrow-btn {
    width: 89px;
    height: 45px;
    border: 2px solid rgba(125, 125, 211, 1);
    border-radius: 11px;
    background: transparent;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 12px;
    gap: 8px;
    transition: all 0.6s ease;
}

.quiz-arrow-btn:not(:disabled) {
    background: rgba(125, 125, 211, 1);
    border-color: rgba(125, 125, 211, 1);
}

.quiz-arrow {
    width: 25px;
    height: 23px;
    color: rgba(125, 125, 211, 1);
    flex-shrink: 0;
}

.quiz-star {
    width: 21px;
    height: 21px;
    color: rgba(125, 125, 211, 1);
    flex-shrink: 0;
}

.quiz-arrow-btn:not(:disabled) .quiz-arrow,
.quiz-arrow-btn:not(:disabled) .quiz-star {
    color: white;
}

.quiz-arrow-btn:disabled {
    cursor: not-allowed;
}

.quiz-arrow-btn-prev {
    flex-direction: row;
}

.quiz-arrow-btn-next {
    flex-direction: row-reverse;
}

.quiz-submit-btn {
    width: 644px;
    height: 42px;
    border: 2px solid rgba(125, 125, 211, 1);
    border-radius: 8px;
    background: transparent;
    color: rgba(125, 125, 211, 1);
    cursor: pointer;
    font-size: 20px;
    font-weight: 600;
    transition: all 0.6s ease;
}

.quiz-submit-btn:not(:disabled) {
    background: rgba(125, 125, 211, 1);
    color: white;
}

.quiz-submit-btn:disabled {
    opacity: 1;
    cursor: not-allowed;
}

.quiz-submit-btn:not(:disabled):hover {
    opacity: 0.9;
}

/* Стили для контактной формы квиза */
.quiz-contact-input {
    width: 100%;
    padding: 0;
    border: none;
    border-bottom: 3px solid rgba(125, 125, 211, 1);
    background: transparent;
    font-size: 20px;
    color: rgba(48, 49, 79, 0.51);
    outline: none;
    transition: all 0.3s ease;
}

.quiz-contact-input::placeholder {
    color: rgba(48, 49, 79, 0.51);
}

.quiz-contact-input:focus {
    border-bottom-color: rgba(125, 125, 211, 1);
}

.quiz-radio-label {
    display: flex;
    align-items: center;
    cursor: pointer;
    gap: 12px;
    font-size: 18px;
    color: rgba(87, 87, 125, 1);
}

.quiz-radio-input {
    width: 18px;
    height: 18px;
    cursor: pointer;
    accent-color: rgba(125, 125, 211, 1);
}
.quiz-contact-layout{
    display:flex;
    align-items:stretch;
    gap:60px;
    width:100%;
}
.quiz-contact-image{
    flex:0 0 35%;
    align-self:stretch;
    min-height:255px;
    border-radius:12px;
    overflow:hidden;
}
.quiz-contact-image img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
}
.quiz-contact-form{
    flex:1 1 auto;
    min-width:0;
}

.check_contact{
    width: 56px;
    height: 56px;
    border: 4px solid #C4C4EC;
    border-radius: 11px;
    margin-right: 27px
}

.quiz-option.selected .check_contact{
    background: #C4C4EC;
}

#contact-input, .quiz-content textarea, #contact-name{
    margin-top: 0;
    width: 100%;
    border: none;
    border-radius: 3px;
    font-size: 18px;
    line-height: 1;
    border-bottom: 2px solid rgba(125, 125, 211, 1);
}

#contact-input, #contact-name{
    height: 26px;
    padding: 0 0 4px 0;
}

#contact-input::placeholder, .quiz-content textarea::placeholder{
    font-size: 18px;
    color: rgba(48, 49, 79, 0.51);
    line-height: 1;
}

@media (max-width: 1866px) {
    #quiz h4{
        font-size: 30px;
    }
}

@media  (max-width: 1385px) {
    .quiz-option{
        width: 43%;
    }
}
@media (max-width: 1200px) and (min-width: 701px) {
    .quiz_container {
        padding: 10px clamp(10px, 10vw, 150px) 50px clamp(10px, 10vw, 150px);
    }

    #quiz{
        padding: 12px;
    }

    .quiz-submit-btn{
        width: 342px;
        height: 22px;
        border: 1px solid rgba(125, 125, 211, 1);
        font-size: 15px;
        font-weight: 400;
        padding: 5px;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    #quiz .legal-consents--quiz .legal-consent,
    #quiz .legal-consents--quiz .legal-consent span{
        font-size:10px;
        line-height:1.05;
    }

    #quiz .legal-consents--quiz .legal-consent__box{
        width:11px;
        height:11px;
        border-radius:50%;
    }

    .quiz-arrow{
        width: 12px;
        height: 12px;
    }

    .quiz-star{
        width: 12px;
        height: 12px;
    }

    .quiz-arrow-btn{
        border: 1px solid rgba(125, 125, 211, 1);
        width: 47px;
        height: 23px;
    }
}

@media (max-width: 965px) {
    .quiz-option{
        width: 43%!important;
    }
}

@media (max-width: 850px){
    #quiz{
        padding: 14px 20px;
    }
}

@media (max-width: 700px) {
    .quiz_container {
        padding: 20px 10px;
    }

    #quiz{
        padding: 12px;
    }
    #quiz span{
        color: rgba(87, 87, 125, 1);
        font-size: 14px;
    }

    /* Шаг 3 - материал (с картинкой и радио) */
    #quiz-content > div[style*="gap: 40px"] {
        display: flex !important;
        flex-direction: column !important;
        gap: 20px !important;
        align-items: stretch !important;
    }

    #quiz-content > div[style*="gap: 40px"] > div:first-child {
        flex: 0 0 auto !important;
        width: 100% !important;
        max-width: none !important;
    }

    #quiz-content > div[style*="gap: 40px"] > div:last-child {
        flex: 1 !important;
        width: 100% !important;
    }

    /* Inner картинки на шаге 3 для мобилок */
    #quiz-content img[src*="step3-ldsp"] {
        width: 40px !important;
        height: 40px !important;
        top: 60px !important;
        left: 50px !important;
        bottom: auto !important;
        right: auto !important;
    }

    #quiz-content img[src*="step3-mdf"] {
        width: 40px !important;
        height: 40px !important;
        bottom: 40px !important;
        right: 80px !important;
        top: auto !important;
        left: auto !important;
    }

    /* Размер шрифтов для радиокнопок шага 3 на мобилке */
    #quiz-content > div[style*="gap: 40px"] > div:last-child > label > div > div:first-child {
        font-size: 14px !important;
    }

    #quiz-content > div[style*="gap: 40px"] > div:last-child > label > div > div:last-child {
        font-size: 12px !important;
    }

    /* Шаг 6 - контакты (с картинкой слева и формой справа) */
    #quiz-content > div[style*="gap: 60px"] {
        display: flex !important;
        flex-direction: column !important;
        gap: 20px !important;
        align-items: stretch !important;
    }

    #quiz-content > div[style*="gap: 60px"] > div:first-child {
        flex: 0 0 auto !important;
        width: 100% !important;
        max-width: none !important;
    }

    #quiz-content > div[style*="gap: 60px"] > div:last-child {
        flex: 1 !important;
        width: 100% !important;
    }

    .quiz-submit-btn{
        margin: 0 15px;
        width: 342px;
        height: 22px;
        border: 1px solid rgba(125, 125, 211, 1);
        font-size: 15px;
        font-weight: 400;
        padding: 5px;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .quiz-arrow{
        width: 12px;
        height: 12px;
    }

    .quiz-star{
        width: 12px;
        height: 12px;
    }

    .quiz-arrow-btn{
        border: 1px solid rgba(125, 125, 211, 1);
        width: 47px;
        height: 23px;
    }
}

/* Стили для заголовка квиза на десктопе */
.quiz-header-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
}

.quiz-header-top h3 {
    margin: 0;
}

.quiz-subtitle {
    color: rgba(99, 100, 140, 0.6);
    font-size: 14px;
    display: none;
}

@media (max-width: 700px){
    .quiz-header-top {
        flex-direction: column;
        align-items: flex-start;
        gap: 5px;
    }

    .quiz-header-top h3 {
        font-size: 24px;
        margin: 0;
    }

    .quiz-subtitle {
        display: block;
        font-size: 14px;
        color: rgba(99, 100, 140, 0.6);
    }

    #quiz-title, #quiz-step {
        font-size: 14px !important;
    }

    #quiz-content div.quiz-option div {
        font-size: 14px !important;
    }

    .quiz-option {
        width: 43% !important;
    }
}

@media (max-width: 615px){
    #quiz h3{
        font-size: 22px;
    }
    #quiz h4, #quiz-title, #quiz-step, #quiz-content div.quiz-option div{
        font-size: 12px;
    }
    #quiz-title, #quiz-step{
        margin: 0;
    }
    .purple_had{
        padding: 8px;
        margin-top: 17px;
    }
    .quiz-content{
        gap: 14px;
    }
    .quiz-nav button{
        font-size: 12px;
        padding: 8px 18px;
    }
    .quiz-nav button:disabled{
        border: 1px solid #7D7DD3;
    }
    #quiz h4 img{
        width: 18px;
        height: 25px;
    }
    .quiz-option{
        font-size: 12px;
    }
    .check_contact{
        width: 18px;
        height: 18px;
        border: 1px solid #C4C4EC;
        border-radius: 3px;
        margin-right: 3px;
    }

    #contact-input, .quiz-content textarea, #contact-name{
        padding: 10px 10px 19px;
        font-size: 12px;
        border-radius: 7px;
    }
    #contact-input::placeholder, .quiz-content textarea::placeholder{
        font-size: 12px;
    }

    #contact-input, #contact-name{
        height: 31px;
        padding: 11px 14px;
    }
}

.block_personal-project{
    padding: 80px 270px 0;
    background: white;
}

.personal-project {
    display: flex;
    align-items: stretch;
    border-radius: 74px;
    overflow: hidden;
    color: white;
}

.personal-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.personal-image {
    flex: 1 1 50%;
}

.personal-content {
    flex: 1 1 50%;
    padding: 127px 56px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    background: url("/mebel_na_zakaz/src/img/right_picture.webp") no-repeat right center;
    background-size: cover;
    align-items: flex-start;
}

.personal-content h3 {
    font-size: 70px;
    margin-bottom: 72px;
    font-weight: bold;
}

.personal-content p {
    font-size: 37px;
    margin-bottom: 72px;
}

.personal-btn {
    background: white;
    color: black;
    border: none;
    padding: 30px 160px;
    font-size: 37px;
    border-radius: 9px;
    cursor: pointer;
    line-height: 1;
    max-width: 650px;
}

.personal-btn:hover {
    background: #f0f0f0;
}

@media (max-width: 1600px){
    .personal-content h3{
        font-size: 35px;
        margin-bottom: 35px;
    }
    .personal-content p{
        font-size: 18px;
        margin-bottom: 35px;
    }
    .personal-btn{
        padding: 15px 90px;
        font-size: 18px;
        width: max-content;
    }
}

@media (max-width: 1170px) {
    .block_personal-project{
        padding: 30px 16px 0;
    }
}

@media (max-width: 655px) {
    .personal-content h3{
        line-height: 1;
        font-size: 22px;
        margin-bottom: 17px;
    }
    .personal-content p{
        line-height: 1;
        font-size: 12px;
        margin-bottom: 21px;
    }
    .personal-btn{
        padding: 6px 45px;
        font-size: 12px;
        width: 100%;
        border-radius: 3px;
    }
    .personal-content{
        padding: 40px 14px;
    }
    .block_personal-project{
        padding: 15px 15px 0;
    }
    .personal-project{
        border-radius: 22px;
    }
}
.one_bg{
    background: rgba(48, 49, 79, 1);
    padding: 10px clamp(150px, 15vw, 286px) 10px clamp(150px, 15vw, 286px);
}
@media (max-width: 1200px) {
    .one_bg{
        padding: 10px clamp(10px, 10vw, 150px) 50px clamp(10px, 10vw, 150px);
    }
}
.steps img{
    object-fit: contain;
    width: 100%;
}
.questions-block {
    display: flex;
    overflow: hidden;
    border-radius: 11px;
}

.questions-left {
    flex: 0 0 57.37%;
    padding: clamp(20px, 2vw, 30px) clamp(16px, 2vw, 30px) clamp(7px, 1vw, 14px) clamp(22px, 2vw, 40px);
    background: url("/mebel_na_zakaz/kuhni_na_zakaz/src/img/any_questions_bg.webp") no-repeat;
    background-size: cover;
    color: rgba(87, 87, 125, 1);
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.questions-left h3 {
    font-size: 32px;
    font-weight: bold;
}

.questions-left p {
    font-size: 20px;
    margin-bottom: 17px;
}

.questions-left form {
    display: flex;
    flex-direction: column;
    gap: 7px;
}

.questions-left input {
    height: 32px;
    padding: 9px;
    width: 100%;
    background: rgba(241, 241, 241, 1);
    border: none;
    line-height: 89%;
    border-radius: 11px;
    font-size: 20px;
}

.questions-left input::placeholder{
    color: rgba(128, 128, 185, 1);
    font-size: 20px;
}

.questions-left button {
    width: 100%;
    padding: 15px 0;
    background: rgba(48, 49, 79, 1);
    color: rgba(255, 255, 255, 1);
    border: none;
    border-radius: 11px;
    font-weight: 400;
    cursor: pointer;
    height: 42px;
    line-height: 89%;
    font-size: 20px;
    order:2;
}

.socials {
    display: flex;
    gap: 35px;
    margin-top: 20px;
    justify-content: center;
}
.socials a.mobile{
    display: none;
}
.socials img {
    width: 47px;
    height: 47px;
}

.questions-right {
    flex: 0 0 42.63%;
    overflow:hidden;
}

.questions-right img {
    width: 116%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}
.questions-check{
    display:flex; align-items:center; gap:12px;
    color:#fff; font-size:26px; line-height:1; /* под десктоп макет */
    margin-top:2px;
    user-select:none; cursor:pointer;
}
.questions-check input{ position:absolute; opacity:0; pointer-events:none; }
.questions-check .box{
    width:19px; height:19px; border:1px solid rgba(128, 128, 185, 1); border-radius:50%; display:inline-block; position:relative;
}
.questions-check input:checked + .box::after{
    content:""; position:absolute; inset:2px; border-radius:50%; background:rgba(48, 49, 79, 1);
}
.questions-check .label-text{ color:rgba(87, 87, 125, 1); font-size: 20px }

/* согласие */
.questions-left p.questions-consent{
    margin: 0; color: rgba(87, 87, 125, 1); font-size:15px; line-height:1;
}
.legal-consents{
    display:flex;
    flex-direction:column;
    gap:6px;
    margin:2px 0 4px;
}
.questions-left .legal-consents--questions{
    order:3;
}
.legal-consent{
    display:flex;
    align-items:flex-start;
    gap:8px;
    color:rgba(87, 87, 125, 1);
    font-size:13px;
    line-height:1.15;
    cursor:pointer;
    position:relative;
    user-select:none;
    --legal-box-size:15px;
}
.legal-consent input{
    position:absolute;
    top:0;
    left:0;
    z-index:1;
    width:var(--legal-box-size);
    height:var(--legal-box-size);
    margin:0;
    opacity:0;
    pointer-events:auto;
    appearance:none;
}
.legal-consent__box{
    flex:0 0 auto;
    width:15px;
    height:15px;
    border:1px solid currentColor;
    border-radius:4px;
    position:relative;
}
.legal-consent input:checked + .legal-consent__box::after{
    content:"";
    position:absolute;
    inset:3px;
    border-radius:2px;
    background:currentColor;
}
.legal-consent a{
    color:inherit;
    text-decoration:underline;
}
.legal-consents--promo .legal-consent,
.legal-consents--quiz .legal-consent{
    color:#7D7DD3;
}
#quiz .legal-consents--quiz{
    gap:5px;
    margin-top:12px;
}
#quiz .legal-consents--quiz .legal-consent{
    gap:7px;
    font-size:17px;
    line-height:17px;
    color:#57577D;
}
#quiz .legal-consents--quiz .legal-consent span{
    font-size:17px;
    line-height:17px;
    color:#57577D;
}
#quiz .legal-consents--quiz .legal-consent__box{
    width:19px;
    height:19px;
    border:2px solid #8080B9;
    border-radius:50%;
    margin-top:0;
}
#quiz .legal-consents--quiz input:checked + .legal-consent__box::after{
    inset:4px;
    border-radius:50%;
    background:#30314F;
}
#quiz .legal-consents--quiz a{
    color:#76A1FF;
    text-decoration:underline;
}
.legal-consents--questions .legal-consent__box{
    border-radius:50%;
}
.legal-consents--questions input:checked + .legal-consent__box::after{
    border-radius:50%;
}
.questions-left .legal-consents--questions a{
    color:#78A3FF !important;
}
.questions-left .legal-consents--questions .legal-consent,
.questions-left .legal-consents--questions .legal-consent span{
    color:#57577D;
    font-size:17px;
    line-height:17px;
}
.questions-left .legal-consents--questions .legal-consent__box{
    width:15px;
    height:15px;
    border:1px solid #8080B9;
    border-radius:50%;
}
.questions-left .legal-consents--questions input:checked + .legal-consent__box::after{
    inset:3px;
    border-radius:50%;
    background:#30314F;
}
@media (max-width: 1200px) {
    .questions-left .legal-consents--questions .legal-consent,
    .questions-left .legal-consents--questions .legal-consent span{
        font-size:12px;
        line-height:12px;
    }
}
.legal-consents--kitchen .legal-consent{
    gap:10px;
    color:#574E46;
    font-size:17px;
    line-height:17px;
}
.kitchen-form .legal-consents--kitchen .legal-consent{
    color:#574E46;
    font-size:17px;
    line-height:17px;
}
.legal-consents--kitchen{
    order:3;
    gap:13px;
    margin:17px 0 0;
}
.kitchen-form .legal-consents--kitchen{
    margin-top:17px;
}
.legal-consents--kitchen .legal-consent span{
    color:#574E46;
    font-size:17px;
    line-height:17px;
}
.kitchen-form .legal-consents--kitchen .legal-consent span{
    color:#574E46;
    font-size:17px;
    line-height:17px;
}
.legal-consents--kitchen .legal-consent__box{
    width:15px;
    height:15px;
    border:0;
    border-radius:5px;
    background:#E2DFDC;
    margin-top:0;
}
.legal-consents--kitchen input:checked + .legal-consent__box::after{
    inset:4px;
    border-radius:2px;
    background:#574E46;
}
.legal-consents--kitchen a{
    color:#AC7952;
    text-decoration:underline;
}
.kitchen-form .legal-consents--kitchen .legal-consent a{
    color:#AC7952;
    text-decoration:underline;
}
@media (max-width: 700px) {
    .kitchen-form .legal-consents--kitchen{
        gap:4px;
        margin:8px 0;
    }
    .kitchen-form .legal-consents--kitchen .legal-consent{
        gap:6px;
        font-size:11px;
        line-height:11px;
        --legal-box-size:10px;
    }
    .kitchen-form .legal-consents--kitchen .legal-consent span{
        font-size:11px;
        line-height:11px;
    }
    .kitchen-form .legal-consents--kitchen .legal-consent__box{
        width:10px;
        height:10px;
        border-radius:3px;
    }
    .kitchen-form .legal-consents--kitchen input:checked + .legal-consent__box::after{
        inset:3px;
        border-radius:1px;
    }
}
@media (max-width: 1200px) and (min-width: 701px) {
    #quiz .legal-consents--quiz{
        gap:4px;
        margin-top:8px;
    }
    #quiz .legal-consents--quiz .legal-consent,
    #quiz .legal-consents--quiz .legal-consent span{
        font-size:12px;
        line-height:12px;
    }
    #quiz .legal-consents--quiz .legal-consent{
        gap:6px;
    }
    #quiz .legal-consents--quiz .legal-consent__box{
        width:13px;
        height:13px;
        border-radius:50%;
    }
}
html, body {
    position: relative;
    overflow-x: clip;
}
.questions-consent a{ color:#BFD0FF; text-decoration:underline; }
@media(max-width: 1000px) {
    .one_bg{
        background: #30314F url("/mebel_na_zakaz/kuhni_na_zakaz/src/img/any_questions_bg_mobile.webp") no-repeat top center;
        background-size: 375px auto;
        padding: 105px 10px 16px;
    }
    .questions-left{
        border-radius: 6px;
        padding: 10px 23px 14px;
        margin-bottom: 0;
        min-width: auto;
        min-height:0;
        background:#fff;
        color:#57577D;
        position:relative;
        overflow:visible;
    }
    .questions-left::before,
    .questions-left::after{
        display:none;
    }
    .questions-left > *{
        position:relative;
        z-index:1;
    }
    .questions-right{
        display: none;
        border-radius: 22px;
        overflow: hidden;
    }
    .questions-right img{
        border-radius: 22px;
        width: 120%;
        object-fit: cover;
    }
    .questions-block {
        width: 100%;
        margin: 0 auto;
        flex-direction: column;
        border-radius: 6px;
        overflow: visible;
    }
    .questions-left h3{
        color:#57577D;
        font-size:25px;
        line-height:1;
        margin:0 0 2px;
    }
    .questions-left p{
        color:#57577D;
        font-size:15px;
        line-height:1;
        margin:0 0 7px;
    }
    .questions-left form{
        gap:5px;
    }
    .questions-left input{
        height:20px;
        padding:5px 10px;
        background:#F1F1F1;
        border-radius:4px;
        font-size:12px;
        color:#57577D;
    }
    .questions-left input::placeholder{
        color:#8080B9;
        font-size:12px;
    }
    .questions-check{
        gap:6px;
        margin:0;
        color:#57577D;
        font-size:15px;
        line-height:16px;
    }
    .questions-check .box{
        width:16px;
        height:16px;
        border:1px solid #8080B9;
        border-radius:50%;
    }
    .questions-check input:checked + .box::after{
        inset:3px;
        border-radius:50%;
        background:#30314F;
    }
    .questions-check .label-text{
        color:#57577D;
        font-size:15px;
        line-height:16px;
    }
    .questions-left button{
        order:2;
        height:23px;
        padding:4px 0;
        margin-top:1px;
        background:#30314F;
        color:#fff;
        border-radius:4px;
        font-size:12px;
        line-height:89%;
        font-weight:400;
    }
    .questions-left .legal-consents--questions{
        order:3;
        gap:5px;
        margin:6px 0 0;
    }
    .questions-left .legal-consents--questions .legal-consent{
        color:#57577D;
        gap:6px;
        font-size:12px;
        line-height:12px;
    }
    .questions-left .legal-consents--questions .legal-consent span{
        color:#57577D;
        font-size:12px;
        line-height:12px;
    }
    .questions-left .legal-consents--questions .legal-consent a{
        color:#76A1FF !important;
        text-decoration:underline;
    }
    .questions-left .legal-consents--questions .legal-consent__box{
        width:15px;
        height:15px;
        border:1px solid #8080B9;
        border-radius:50%;
    }
    .questions-left .legal-consents--questions input:checked + .legal-consent__box::after{
        inset:3px;
        border-radius:50%;
        background:#30314F;
    }
    .questions-block .socials{
        display:flex;
        order:4;
        gap:13px;
        justify-content:center;
        margin-top:11px;
    }
    .questions-block .socials img{
        width:41px;
        height:41px;
    }
    .buttons-section{
        width:100%;
        margin:22px auto 0;
        flex-wrap:wrap;
        gap:8px;
    }
    .btn-catalog{
        flex:0 0 100%;
        width:100%;
        height:28px;
        padding:0 10px;
        border-radius:7px;
        font-size:10px;
    }
    .btn-secondary{
        flex:1 1 calc(50% - 4px);
        min-width:0;
        width:auto;
        height:28px;
        padding:0 8px;
        border-radius:7px;
        font-size:10px;
    }
    .legal-docs-bottom{
        width:100%;
        margin:17px auto 0;
        display:flex;
        flex-direction:column;
        align-items:flex-start;
        gap:3px;
    }
    .legal-docs-bottom a{
        gap:7px;
        color:#fff;
        font-size:12px;
        line-height:14.07px;
        white-space:normal;
    }
    .legal-docs-bottom svg{
        width:9px;
        height:9px;
        margin-top:2px;
    }
}

@media (max-width: 700px) {
    .quiz-contact-layout{
        flex-direction:column;
        gap:14px;
    }
    .quiz-contact-image{
        flex:0 0 auto;
        min-height:170px;
    }
    .one_bg {
        padding: 10px;
    }
}

@media (max-width: 390px) {
    .questions-left h3{
        font-size: 25px;
        margin-bottom: 2px;
    }
    .questions-left p{
        font-size: 15px;
        margin-bottom: 7px;
    }
    .questions-left form{
        gap: 5px;
    }
    .questions-left input, .questions-left input::placeholder{
        font-size: 12px;
    }
    .socials{
        gap: 13px;
    }
}

/* Анимация вращения SVG картинок */
@keyframes rotateText {
    0% {
        transform: rotate(0deg);
    }
    25% {
        transform: rotate(20deg);
    }
    50% {
        transform: rotate(0deg);
    }
    75% {
        transform: rotate(-20deg);
    }
    100% {
        transform: rotate(0deg);
    }
}

.animated-step-icon {
    animation: rotateText 4s infinite !important;
}

/* Кнопки под questions-block */
.buttons-section {
    display: flex;
    gap: clamp(9px, 1vw, 18px);
    margin-top: 10px;
    max-width: 1920px;
    margin-left: auto;
    margin-right: auto;
}

.btn-catalog {
    flex: 0 0 50%;
    padding: 15px 20px;
    background-color: rgba(125, 125, 211, 1);
    color: white;
    border: none;
    border-radius: 11px;
    font-size: clamp(10px, 1vw,  20px);
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
}

.btn-catalog:hover{
    transform: scale(1.1);
    box-shadow: 0 0 20px rgba(105, 105, 191, 1);
}

.btn-secondary {
    flex: 1;
    padding: 15px 20px;
    background-color: white;
    color: rgba(105, 105, 191, 1);
    border: none;
    border-radius: 11px;
    font-size: clamp(10px, 1vw,  20px);
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    min-width: 154px;
    align-items: center;
    justify-content: center;
    text-decoration: none;
}

.btn-catalog,
.btn-secondary {
    text-decoration: none;
}

.legal-docs-bottom{
    display:flex;
    align-items:center;
    gap:90px;
    max-width:1920px;
    margin:18px auto 0;
}

.legal-docs-bottom a{
    display:inline-flex;
    align-items:center;
    gap:6px;
    color:#fff;
    font-size:17px;
    line-height:23.45px;
    text-decoration:none;
    white-space:nowrap;
}

.legal-docs-bottom svg{
    width:12px;
    height:12px;
    flex:0 0 auto;
}

@media (max-width: 815px) {
    .buttons-section{
        flex-wrap: wrap;
    }
    .btn-catalog{
        flex: 0 0 100%;
        width: 100%;
        font-size: 10px;
        padding: 0 10px;
    }
    .btn-secondary{
        font-size: 10px;
        width: auto;
        padding: 0 8px;
    }
    .legal-docs-bottom{
        flex-direction:column;
        align-items:flex-start;
        gap:3px;
        margin-top:17px;
    }
    .legal-docs-bottom a{
        font-size:12px;
        line-height:14.07px;
        white-space:normal;
    }
    .legal-docs-bottom svg{
        width:9px;
        height:9px;
    }
}

@media (max-width: 1000px) {
    .one_bg{
        background: #30314F url("/mebel_na_zakaz/kuhni_na_zakaz/src/img/any_questions_bg_mobile.webp") no-repeat top center;
        background-size: 375px auto;
        padding: 105px 10px 16px;
    }
    .buttons-section{
        width:100%;
        margin:22px auto 0;
        flex-wrap:wrap;
        gap:8px;
    }
    .btn-catalog{
        flex:0 0 100%;
        width:100%;
        height:28px;
        padding:0 10px;
        border-radius:7px;
        font-size:10px;
    }
    .btn-secondary{
        flex:1 1 calc(50% - 4px);
        min-width:0;
        width:auto;
        height:28px;
        padding:0 8px;
        border-radius:7px;
        font-size:10px;
    }
    .legal-docs-bottom{
        width:100%;
        margin:17px auto 0;
        display:flex;
        flex-direction:column;
        align-items:flex-start;
        gap:3px;
    }
    .legal-docs-bottom a{
        gap:7px;
        color:#fff;
        font-size:12px;
        line-height:14.07px;
        white-space:normal;
    }
    .legal-docs-bottom svg{
        width:9px;
        height:9px;
        margin-top:2px;
    }
}

/* Подложка с блюром */
.banner-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    backdrop-filter: blur(6px);
    background: rgba(0,0,0,0.4);
    z-index: 9998;
    display: none;
}

/* Сам баннер */
.banner-popup {
    position: fixed;
    overflow: hidden;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 55%;
    height: 463px;
    max-width: 80%;
    background: #fff;
    border-radius: 22px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.3);
    display: none;
    z-index: 9999;
}

/* Контент баннера */
.banner-content {
    display: flex;
    flex-direction: row;
    height: 100%;
}
.banner-left{
    width: 43%;
}
.banner-left img {
    width: 100%;
    height: 105%;
    object-fit: cover;
    object-position: center;
}

.banner-right {
    width: 50%;
    flex: 1;
    background: url("/mebel_na_zakaz/src/img/banner_background.webp") no-repeat center center;
    background-size: cover;
    color: #fff;
    padding: 80px 75px 80px 27px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: relative;
}

.banner-right h2 {
    font-size: 60px;
    font-weight: bold;
    margin-bottom: 26px;
}

.banner-right p {
    font-size: 23px;
    margin-bottom: 54px;
}

.banner-right button:not(.banner-close) {
    background: #fff;
    color: #57577D;
    border: none;
    border-radius: 11px;
    padding: 8px 20px 16px;
    cursor: pointer;
    font-size: 28px;
}

.banner-close {
    position: absolute;
    top: 29px;
    right: 29px;
    width: 29px;
    height: 29px;
    background: transparent;
    border: none;
    color: #fff;
    font-size: 20px;
    cursor: pointer;
}

@media (max-width: 1700px) {
    .banner-right h2{
        font-size: 30px;
        margin-bottom: 13px;
    }

    .banner-right p{
        font-size: 16px;
        margin-bottom: 27px;
    }

    .banner-right button:not(.banner-close){
        font-size: 14px;
    }

    .banner-popup{
        height: 320px;
    }
}
@media (max-width: 800px){
    .banner-popup{

        height: auto;
        width: 100%;
        max-width: 100%;
    }
    .banner-content{
        flex-direction: column;
    }
    .banner-left{
        width: 100%;
    }
    .banner-right{
        width: 100%;
        padding: 17px 30px;
    }
    .banner-right h2{
        font-size: 25px;
        margin-bottom: 10px;
    }
    .banner-right p{
        margin-bottom: 10px;
    }
    .banner-right button:not(.banner-close){
        padding: 9px;
    }
    .banner-close, .banner-close img{
        width: 15px;
        height: 15px;
        top: 0;
        right: 15px;
    }
}

/* Подложка */
.promo-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    backdrop-filter: blur(6px);
    background: rgba(0,0,0,0.4);
    z-index: 9998;
    display: none;
}

