/* ================================================================
   Marketplace page 2026 — переработка (scoped .marketplaces-2026)
   ================================================================ */
.marketplaces-2026 {
    --mp-grad: linear-gradient(39deg, #FF4D4D 9.28%, #FF7F48 85.91%);
    --mp-text: #323232;
    --mp-muted: #828282;
    --mp-card: #F5F5F5;
    --mp-radius: 20px;
    --mp-shadow: 4px 4px 20px rgba(206, 206, 221, 0.5);
}

/* ---------- Hero: форма «Рассчитать проект» ---------- */
.marketplaces-2026 .mp-hero-form {
    background: #FFFFFF;
    border-radius: var(--mp-radius);
    box-shadow: var(--mp-shadow);
    padding: 20px 24px;
    max-width: 560px;
    margin-top: 20px;
    box-sizing: border-box;
}
.marketplaces-2026 .mp-form-head { margin-bottom: 12px; }
.marketplaces-2026 .mp-form-title {
    font-family: Montserrat, system-ui;
    font-weight: 600;
    font-size: 20px;
    line-height: 26px;
    color: var(--mp-text);
    margin: 0 0 6px;
}
.marketplaces-2026 .mp-form-sub {
    font-size: 14px;
    line-height: 20px;
    color: var(--mp-muted);
    margin: 0;
}
.marketplaces-2026 .mp-form-row {
    display: flex;
    gap: 12px;
}
.marketplaces-2026 .mp-form-row .form-field {
    flex: 1 1 0;
    min-width: 0;
    margin: 0;
    position: relative;
}
.marketplaces-2026 .mp-form input[type="text"] {
    width: 100%;
    box-sizing: border-box;
    height: 48px;
    padding: 0 16px;
    border: 1px solid #E2E2E2;
    border-radius: 12px;
    background: #FAFAFA;
    font-size: 15px;
    color: var(--mp-text);
    outline: none;
    transition: border-color .15s ease;
}
.marketplaces-2026 .mp-form input[type="text"]:focus {
    border-color: #FF7F48;
    background: #FFFFFF;
}
.marketplaces-2026 .mp-form input::placeholder { color: #A6A6A6; }
.marketplaces-2026 .mp-form .form-field.has-error input {
    border-color: #FF4D4D;
    background: #FFF6F6;
}
.marketplaces-2026 .mp-form .form-field-error {
    display: none;
    color: #FF4D4D;
    font-size: 12px;
    line-height: 16px;
    margin-top: 4px;
}
.marketplaces-2026 .mp-form .form-field.has-error .form-field-error { display: block; }

/* согласие + кнопка в один ряд */
.marketplaces-2026 .mp-footer-row {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-top: 14px;
}
.marketplaces-2026 .mp-footer-row .agreement-box {
    flex: 1 1 auto;
    display: flex;
    align-items: flex-start;
    gap: 8px;
    margin: 0;
}
.marketplaces-2026 .mp-form .agreement-box label span {
    font-size: 12px;
    line-height: 16px;
    color: var(--mp-muted);
}
.marketplaces-2026 .mp-form .agreement-box a ins { color: #FF4D4D; text-decoration: none; }

/* видимый чекбокс на белом фоне (штатный — белая рамка под тёмный фон) */
.marketplaces-2026 .mp-form .form-checkbox + label::before {
    border: 1.5px solid #C4C4C4;
    background-color: #FFFFFF;
    width: 15px;
    height: 15px;
    top: 3px;
}
.marketplaces-2026 .mp-form .form-checkbox:checked + label::before {
    background-color: #FF4D4D;
    border: 1.5px solid #FF4D4D;
}

.marketplaces-2026 .mp-form-btn {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: auto;
    min-width: 190px;
    height: 48px;
    border: none;
    border-radius: 14px;
    background: var(--mp-grad);
    cursor: pointer;
    padding: 0 26px;
    transition: opacity .15s ease;
}
.marketplaces-2026 .mp-form-btn .btn {
    color: #FFFFFF;
    font-family: Montserrat, system-ui;
    font-weight: 600;
    font-size: 16px;
}
.marketplaces-2026 .mp-form-btn:not(.checked) { opacity: .5; pointer-events: none; }
.marketplaces-2026 .mp-form-btn.checked { opacity: 1; pointer-events: auto; }
.marketplaces-2026 .mp-form-btn:hover { opacity: .92; }

.marketplaces-2026 .mp-form-success { text-align: center; padding: 18px 0; }
.marketplaces-2026 .mp-form-success.hidden { display: none; }
.marketplaces-2026 .mp-form-success .h { font-size: 22px; color: var(--mp-text); margin: 0 0 8px; font-weight: 700; }
.marketplaces-2026 .mp-form-success p { font-size: 15px; color: var(--mp-muted); margin: 0; }

/* ---------- Полоса логотипов клиентов (единообразно со страницей SRM: .srm-clients) ---------- */
.marketplaces-2026 .mp-clients {
    max-width: 1170px;
    margin: 56px auto 0;
}
.marketplaces-2026 .mp-clients .agora-cases { margin: 0; }
.marketplaces-2026 .mp-clients .agora-cases-header {
    font-size: 20px;
    line-height: 28px;
    height: auto;
}
.marketplaces-2026 .mp-clients .agora-cases-logo { margin-top: 14px; }
.marketplaces-2026 .mp-clients .agora-cases-logo .static-logo img { max-width: 110px; }

/* ---------- Ценность для 3 сторон, поднятая под hero ---------- */
.marketplaces-2026 .b2c-b2b-info.mp-value-top { margin-top: 40px; margin-bottom: 20px; }

/* ---------- Блок «Преимущества»: единая сетка 3×3 (карточки сверху, цифры снизу) ---------- */
.marketplaces-2026 .key-benefits { padding: 28px 40px 36px; }
/* 6 карточек преимуществ — сетка 3 колонки */
.marketplaces-2026 .key-benefits-table.for-desktop {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
    margin-top: 26px;
    padding-left: 0;
}
.marketplaces-2026 .key-benefits-table.for-desktop .key-benefits-table-item {
    width: auto;
    margin: 0;
}
/* крупные цифры — та же сетка, тот же gap → колонки совпадают с карточками */
.marketplaces-2026 .mp-stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
    max-width: none;
    margin: 16px 0 0;
}
.marketplaces-2026 .mp-stat {
    background: #FFFFFF;
    border-radius: var(--mp-radius);
    box-shadow: var(--mp-shadow);
    padding: 28px 26px;
    text-align: center;
}
.marketplaces-2026 .mp-stat__value {
    font-family: Montserrat, system-ui;
    font-weight: 700;
    font-size: 34px;
    line-height: 1.1;
    background: var(--mp-grad);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}
.marketplaces-2026 .mp-stat__label {
    display: block;
    margin-top: 10px;
    font-size: 15px;
    line-height: 22px;
    color: var(--mp-text);
}

/* ---------- On-Premise: кнопка «Рассчитать стоимость» ---------- */
.marketplaces-2026 .mp-onprem-btn {
    margin-top: 16px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 44px;
    padding: 0 24px;
    border: 2px solid #FF4D4D;
    border-radius: 24px;
    background: transparent;
    color: #FF4D4D;
    font-family: Montserrat, system-ui;
    font-weight: 600;
    font-size: 15px;
    cursor: pointer;
    transition: background .15s ease, color .15s ease;
}
.marketplaces-2026 .mp-onprem-btn:hover { background: var(--mp-grad); color: #FFFFFF; border-color: transparent; }

/* ---------- PIM: убрать иконку, увеличить шрифт (только маркетплейс) ---------- */
.marketplaces-2026 .pim-block > img { display: none; }
.marketplaces-2026 .pim-block p { font-size: 18px; line-height: 28px; }

/* ---------- Карусель кейсов (Michelin — первый слайд) ---------- */
.marketplaces-2026 .michelin-cases-carousel {
    max-width: 1074px;
    margin: 60px auto 0;
    position: relative;
}
/* внутри слайдера убираем внешний отступ карточки — его держит контейнер */
.marketplaces-2026 .michelin-cases-carousel .michelin-case {
    margin: 0;
}
.marketplaces-2026 .michelin-cases-carousel .slick-prev,
.marketplaces-2026 .michelin-cases-carousel .slick-next {
    width: 44px;
    height: 44px;
    z-index: 5;
}
.marketplaces-2026 .michelin-cases-carousel .slick-prev { left: -56px; }
.marketplaces-2026 .michelin-cases-carousel .slick-next { right: -56px; }
.marketplaces-2026 .michelin-cases-carousel .slick-prev:before,
.marketplaces-2026 .michelin-cases-carousel .slick-next:before {
    font-size: 40px;
    color: #FF4D4D;
    opacity: 1;
}
@media screen and (max-width: 1230px) {
    .marketplaces-2026 .michelin-cases-carousel { max-width: 644px; }
    .marketplaces-2026 .michelin-cases-carousel .slick-prev { left: 8px; }
    .marketplaces-2026 .michelin-cases-carousel .slick-next { right: 8px; }
}
@media screen and (max-width: 767px) {
    .marketplaces-2026 .michelin-cases-carousel { max-width: 297px; }
}

/* ---------- Карточки «Специализированные площадки»: единообразие + hover ---------- */
/* одинаковая высота карточек и колонок */
.marketplaces-2026 .marketplaces-blocks-content { align-items: stretch; }
.marketplaces-2026 .marketplaces-blocks-itself {
    display: flex;
    flex-direction: column;
    transition: box-shadow .18s ease, transform .18s ease, border-color .18s ease;
}
.marketplaces-2026 .marketplaces-blocks-itself-flex {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
}
/* сбрасываем частный хак высоты описания у первой карточки — выравниваем все */
.marketplaces-2026 .marketplaces-blocks-itself:first-child .marketplaces-blocks-description { height: auto; }
.marketplaces-2026 .marketplaces-blocks-description {
    min-height: 96px;
    margin-top: 0;
    padding-bottom: 24px;
}
.marketplaces-2026 .marketplaces-blocks-header { min-height: 54px; }
/* лёгкий акцент при наведении */
.marketplaces-2026 .marketplaces-blocks-itself:hover {
    border-color: #FF7F48;
    box-shadow: 4px 8px 24px rgba(255, 127, 72, 0.22);
    transform: translateY(-4px);
}

/* ---------- «Дополнительные варианты применения» — часть блока выше, без стиля заголовка ---------- */
.marketplaces-2026 .marketplace-development-description { margin: 28px auto 0; }
.marketplaces-2026 .marketplace-development-description h2 {
    font-size: 18px;
    line-height: 26px;
    font-weight: 600;
    text-align: left;
    color: #828282;
}
/* нижний ряд карточек — единый стиль с верхним рядом (рамка / радиус / ширина / hover) */
.marketplaces-2026 .development-content-item {
    width: 370px;
    border: 3px solid #ECECEC;
    border-radius: 22px;
    box-shadow: none;
    background: transparent;
    transition: box-shadow .18s ease, transform .18s ease, border-color .18s ease;
}
.marketplaces-2026 .development-content-item:hover {
    border-color: #FF7F48;
    box-shadow: 4px 8px 24px rgba(255, 127, 72, 0.22);
    transform: translateY(-4px);
}

/* ---------- Блок «Стоимость»: сбалансированные карточки (только десктоп/планшет; на мобиле работает базовая сетка) ---------- */
@media (min-width: 768px) {
.marketplaces-2026 .marketplace-price h2 { margin-bottom: 52px; }
.marketplaces-2026 .price-info { align-items: stretch; padding-bottom: 40px; }
/* обе карточки одинаковой высоты, контент выравнивается от верха */
.marketplaces-2026 .price-blocks {
    height: auto;
    min-height: 300px;
    margin-right: 40px;
    padding: 66px 30px 34px;
    justify-content: flex-start;
    box-sizing: border-box;
}
/* плашки SaaS / On-Premise закреплены в одной точке над обеими карточками */
.marketplaces-2026 .price-blocks .name-span {
    position: absolute;
    top: -40px;
    left: 50%;
    transform: translateX(-50%);
    margin: 0;
    white-space: nowrap;
}
/* описание сразу под верхним отступом, фиксированная высота — чтобы цена совпадала */
.marketplaces-2026 .price-blocks .flex-block {
    margin-top: 0;
    min-height: 84px;
    align-items: flex-start;
    width: 100%;
}
/* цена — на одной высоте в обеих карточках */
.marketplaces-2026 .price-blocks > span:not(.name-span) { margin-top: 34px; }
/* кнопка «Рассчитать стоимость» — в потоке карточки, под ценой */
.marketplaces-2026 .price-blocks .btn-container.btn-for-form {
    position: static;
    margin: 22px auto 0;
}
.marketplaces-2026 .price-blocks .mp-onprem-btn {
    margin-top: 0;
    border-color: #FFFFFF;
    color: #FFFFFF;
}
.marketplaces-2026 .price-blocks .mp-onprem-btn:hover {
    background: var(--mp-grad);
    color: #FFFFFF;
    border-color: transparent;
}
/* видео-кнопка «Ролик…» — по центру ниже карточек, без наложения */
.marketplaces-2026 .price-info button.video-link { bottom: -74px; }
} /* /min-width:768 — блок «Стоимость» */

/* ---------- Hero: убрать вертикальный зазор ---------- */
/* .header — flex с align-items:center (basic.css) центрировал короткую левую колонку по высокой картинке;
   плюс left-header имел margin-top:96px — вместе давали большой пустой отступ над H1 */
.marketplaces-2026 .header.marketplace { align-items: flex-start; }
.marketplaces-2026 .header .marketplace-left-header { margin-top: 0; }

/* ---------- PIM / «Промоакция» ---------- */
.marketplaces-2026 .pim-block { padding: 30px 50px; }
.marketplaces-2026 .pim-block p:before { height: 100%; top: 0; }
.marketplaces-2026 .pim-block .absolute-label {
    top: -34px;
    bottom: auto;
    left: 40px;
    border-radius: 15px 15px 0 0;
}

/* ---------- Финальная форма: отступ от контента ---------- */
.marketplaces-2026 .marketplace-contact-form { margin-top: 90px; }

/* ---------- Мобильная адаптация ---------- */
@media (max-width: 767px) {
    /* hero-форма «Рассчитать проект» */
    .marketplaces-2026 .mp-form-row { flex-direction: column; gap: 12px; }
    .marketplaces-2026 .mp-footer-row { flex-direction: column; align-items: stretch; gap: 12px; }
    .marketplaces-2026 .mp-footer-row .mp-form-btn { width: 100%; }
    .marketplaces-2026 .mp-stats { grid-template-columns: 1fr; }
    .marketplaces-2026 .marketplace-contact-form { margin-top: 50px; }

    /* (9) Блок «Преимущества»: не форсировать десктоп-сетку — на мобиле показывается слайдер .for-slider */
    .marketplaces-2026 .key-benefits-table.for-desktop { display: none; }
    .marketplaces-2026 .key-benefits { padding: 40px 0; }
    /* (23) карточки внутри слайда — компактной колонкой сверху вниз (slick растягивает все слайды под самый высокий → короткий слайд иначе «распирает» пустотами) */
    .marketplaces-2026 .key-benefits-table.for-slider .slick-slide > div {
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        gap: 12px;
    }
    .marketplaces-2026 .key-benefits-table.for-slider .key-benefits-table-item {
        margin: 0;
        width: 100%;
        box-sizing: border-box;
    }

    /* (3/4) «Дополнительные варианты применения»: в столбец, без обрезки по краю */
    .marketplaces-2026 .marketplace-development-content {
        flex-direction: column;
        align-items: center;
        gap: 14px;
    }
    .marketplaces-2026 .development-content-item {
        width: 100%;
        max-width: 325px;
        height: auto;
        min-height: 72px;
        padding: 16px 18px;
        margin: 0;
    }

    /* (22) Блок «Стоимость» на мобиле — вертикальный стек: каждая карточка по своему контенту, без пустот */
    .marketplaces-2026 .marketplace-price .price-info {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 34px;
        max-width: 380px;
        margin: 0 auto;
        padding: 34px 0 16px;
        position: relative;
    }
    .marketplaces-2026 .price-blocks {
        width: 100%;
        max-width: 100%;
        height: auto;
        min-height: 0;
        margin: 0;
        padding: 26px 24px 30px;
        justify-content: flex-start;
        box-sizing: border-box;
    }
    /* пилюля SaaS / On-Premise — выступает над карточкой */
    .marketplaces-2026 .price-blocks .name-span {
        margin: -52px 0 0;
        font-size: 18px;
        padding: 13px 26px;
        border-radius: 16px;
    }
    .marketplaces-2026 .price-blocks .flex-block {
        flex-direction: column;
        align-items: center;
        margin-top: 14px;
    }
    .marketplaces-2026 .price-blocks p {
        max-width: 100%;
        margin: 12px 0 0;
        text-align: center;
        font-size: 14px;
        line-height: 1.35;
    }
    .marketplaces-2026 .price-blocks > span:not(.name-span) {
        white-space: nowrap;
        margin-top: 18px;
        font-size: 30px;
    }
    /* CTA «Рассчитать стоимость» — в потоке, по центру карточки */
    .marketplaces-2026 .price-blocks .btn-container.btn-for-form {
        position: static;
        display: flex;
        justify-content: center;
        width: 100%;
        margin: 20px 0 0;
    }
    .marketplaces-2026 .price-blocks .mp-onprem-btn {
        margin: 0;
        width: 100%;
        max-width: 260px;
        height: 46px;
        padding: 0 18px;
        border-color: #FFFFFF;
        color: #FFFFFF;
        font-size: 15px;
        white-space: nowrap;
    }
    /* видео-кнопка «Ролик…» — в потоке, по центру под стеком */
    .marketplaces-2026 .marketplace-price .price-info button.video-link {
        position: static;
        transform: none;
        left: auto;
        right: auto;
        bottom: auto;
        margin: 8px auto 0;
    }

    /* (6) промо/PIM-блок: убрать паразитную горизонтальную линию, вернуть вертикальный акцент слева */
    .marketplaces-2026 .pim-block { max-width: 325px; padding: 22px 22px 20px; }
    .marketplaces-2026 .pim-block p { padding: 0 0 0 16px; margin: 0; text-align: left; }
    .marketplaces-2026 .pim-block p:before {
        transform: none;
        height: 100%;
        width: 3px;
        top: 0;
        bottom: auto;
        left: 0;
    }
    .marketplaces-2026 .pim-block .absolute-label {
        top: -30px;
        bottom: auto;
        left: 22px;
        border-radius: 15px 15px 0 0;
    }

    /* (7) «Функционал маркетплейса»: видимые точки-подсказка, что блок листается */
    .marketplaces-2026 .b2c-b2b-creating .slick-dots {
        display: block !important;
        position: static;
        margin-top: 8px;
    }
    .marketplaces-2026 .b2c-b2b-creating .slick-dots li button:before {
        font-size: 12px;
        color: #FF7F48;
        opacity: .35;
    }
    .marketplaces-2026 .b2c-b2b-creating .slick-dots li.slick-active button:before {
        opacity: 1;
        color: #FF4D4D;
    }

    /* (8) карточка кейса — по центру, не прилипает к левому краю */
    .marketplaces-2026 .cases-swiper .case-content-block { text-align: center; }
    .marketplaces-2026 .cases-swiper .case-content__description { text-align: center; }
    .marketplaces-2026 .cases-swiper .case-header__product { justify-content: center; }

    /* (10) большая форма: поля не обрезаются по правому краю */
    .marketplaces-2026 .marketplace-contact-form .contact-form,
    .marketplaces-2026 .marketplace-contact-form .contact-form .form-content,
    .marketplaces-2026 .marketplace-contact-form .input-form {
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
    }
    .marketplaces-2026 .marketplace-contact-form .form-field input,
    .marketplaces-2026 .marketplace-contact-form .form-field textarea,
    .marketplaces-2026 .marketplace-contact-form .form-field select {
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
    }
    .marketplaces-2026 .marketplace-contact-form .data-container { flex-direction: column; }
}
