/**
 * Румяный Каравай — витрина магазина
 * Одностраничное меню (стиль kingsizeroll), карточки, товар, корзина
 * Палитра: кнопки #f8b90d / текст #212529 (см. rk-storefront.css)
 */

/* ============ Главная (меню) — сброс контейнера ============ */
html.rk-home body,
body.rk-home {
    background: #ffffff;
}

html.rk-home .maincontent > .container,
body.rk-home .maincontent > .container,
html.rk-category .maincontent > .container,
body:has(.rk-category-page) .maincontent > .container {
    max-width: none;
    width: 100%;
    margin: 0;
    padding: 0;
}

html.rk-home #page-content,
body.rk-home #page-content,
html.rk-category #page-content,
body:has(.rk-category-page) #page-content {
    padding: 0;
}


/* ============ Промо-полоса ============ */
.rk-hero {
    background:
        radial-gradient(ellipse at 85% 20%, rgba(248, 185, 13, 0.1), transparent 55%),
        linear-gradient(150deg, #fafafa, #f5f5f5);
    border-bottom: 1px solid var(--rk-line, rgba(47, 38, 31, 0.09));
}

.rk-hero__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
    padding: 2.1rem 0 2.3rem;
    flex-wrap: wrap;
}

.rk-hero__title {
    margin: 0 0 0.4rem;
    font-size: clamp(1.6rem, 3vw, 2.3rem);
    font-weight: 750;
    letter-spacing: -0.02em;
    color: var(--rk-ink, #212529);
}

.rk-hero__lead {
    margin: 0;
    max-width: 34rem;
    color: var(--rk-muted, #6c757d);
    font-size: 1.02rem;
    line-height: 1.5;
}

.rk-hero__chips {
    display: flex;
    gap: 0.75rem;
    list-style: none;
    margin: 0;
    padding: 0;
    flex-wrap: wrap;
}

.rk-hero__chip {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
    min-width: 130px;
    padding: 0.8rem 1.05rem;
    border-radius: 14px;
    background: rgba(255, 254, 251, 0.85);
    border: 1px solid var(--rk-line, rgba(47, 38, 31, 0.09));
    box-shadow: 0 4px 14px rgba(40, 36, 30, 0.05);
}

.rk-hero__chip-value {
    font-weight: 700;
    color: var(--rk-accent, #f8b90d);
    font-size: 1.02rem;
    letter-spacing: -0.01em;
}

.rk-hero__chip-label {
    font-size: 0.8rem;
    color: var(--rk-muted, #6c757d);
    line-height: 1.3;
}

/* ============ Меню: секции товаров (сайдбар только на мобиле) ============ */
.rk-menu {
    display: block;
    padding: 2rem 0 3rem;
}

/* Десктоп: боковое меню полностью скрыто */
.rk-menu__aside {
    display: none;
}

.rk-menu-nav__list {
    list-style: none;
    margin: 0;
    padding: 0;
    max-height: calc(100vh - var(--rk-header-h, 72px) - 44px);
    overflow-y: auto;
    scrollbar-width: thin;
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
}

.rk-menu-nav__link {
    display: block;
    padding: 0.72rem 1rem;
    border-radius: 12px;
    color: var(--rk-ink, #212529);
    font-size: 16.5px;
    font-weight: 600;
    line-height: 1.25;
    text-decoration: none;
    transition: color .18s ease, background .18s ease, box-shadow .18s ease;
}

.rk-menu-nav__link:hover {
    color: var(--rk-ink, #212529);
    background: rgba(255, 255, 255, 0.85);
}

.rk-menu-nav__link.is-active {
    background: var(--rk-white, #ffffff);
    color: var(--rk-ink, #212529);
    font-weight: 700;
    box-shadow: 0 4px 14px rgba(40, 36, 30, 0.08);
}

.rk-menu-nav__sub {
    list-style: none;
    margin: 0.1rem 0 0.35rem;
    padding: 0 0 0 0.85rem;
}

.rk-menu-nav__link--sub {
    font-size: 15px;
    font-weight: 500;
    color: var(--rk-muted, #6c757d);
    padding: 0.48rem 1rem;
}

.rk-menu-section {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    margin-bottom: 2.75rem;
    /* якорь чуть выше секции с учётом липкой шапки */
    scroll-margin-top: calc(var(--rk-header-h, 72px) + 12px);
}

.rk-menu-section:last-child {
    margin-bottom: 0;
}

/* Заголовок и «Смотреть все» — ровно по ширине сетки товаров */
.rk-menu__content {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    overflow-x: clip;
}

.rk-menu-section__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.65rem 0.85rem;
    flex-wrap: nowrap;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    margin: 0 0 1.1rem;
    padding: 0;
}

.rk-menu-section__title {
    margin: 0;
    padding: 0;
    min-width: 0;
    flex: 1 1 auto;
    font-size: clamp(1.2rem, 2vw, 1.7rem);
    font-weight: 750;
    letter-spacing: -0.02em;
    color: var(--rk-ink, #212529);
    overflow-wrap: anywhere;
    word-break: break-word;
    line-height: 1.2;
}

.rk-menu-section__all {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    max-width: 100%;
    padding: 0.4rem 1.05rem;
    border-radius: 14px;
    background: var(--rk-accent, #f8b90d);
    color: var(--rk-btn-text, #212529) !important;
    font-weight: 650;
    font-size: 0.88rem;
    line-height: 1;
    text-decoration: none !important;
    white-space: nowrap;
    box-shadow: 0 3px 10px rgba(248, 185, 13, 0.22);
    transition: background .15s ease, box-shadow .15s ease;
}

.rk-menu-section__all:hover {
    background: var(--rk-accent-hover, #e0a60b);
    color: var(--rk-btn-text, #212529) !important;
    text-decoration: none !important;
    box-shadow: 0 4px 12px rgba(248, 185, 13, 0.28);
}

@media (max-width: 480px) {
    .rk-menu-section__head {
        flex-wrap: wrap;
    }

    .rk-menu-section__all {
        margin-left: auto;
    }
}

/* ============ Сетка: 3 карточки — та же ширина, что и заголовок секции ============ */
.rk-menu .product-list.thumbs.rk-product-list {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.35rem 1.25rem;
    width: 100%;
    max-width: 100%;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    box-sizing: border-box;
    justify-content: center;
    justify-items: stretch;
}

.rk-menu .product-list.thumbs.rk-product-list > li.rk-card,
.rk-menu .product-list.thumbs.rk-product-list > li {
    width: 100% !important;
    max-width: none !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

@media (max-width: 1100px) {
    .rk-menu .product-list.thumbs.rk-product-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 560px) {
    .rk-menu .product-list.thumbs.rk-product-list {
        grid-template-columns: 1fr;
        gap: 1.15rem;
    }
}

/* ============ Карточка товара ============ */
ul.product-list.thumbs > li.rk-card,
ul.thumbs li.rk-card {
    --rk-buy-h: 42px;
    --rk-buy-w: 8.8rem;
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 0;
    overflow: visible;
    border-radius: 18px;
    transform: none !important;
    transition: box-shadow .25s ease;
    box-shadow: 0 4px 18px rgba(40, 36, 30, 0.05);
}

.rk-menu ul.product-list.thumbs > li.rk-card {
    border-radius: 18px;
    background: var(--rk-white, #ffffff);
    box-shadow: 0 6px 20px rgba(40, 36, 30, 0.07);
}

ul.product-list.thumbs > li.rk-card:hover,
ul.thumbs li.rk-card:hover,
.rk-menu ul.product-list.thumbs > li.rk-card:hover {
    transform: none !important;
    border-color: var(--rk-line, rgba(47, 38, 31, 0.09));
    box-shadow: 0 8px 22px rgba(40, 36, 30, 0.08);
}

.rk-menu .rk-card__media .image,
.rk-menu .rk-card__media .product_image_slider {
    aspect-ratio: 4 / 3;
}

.rk-menu .rk-card__body {
    padding: 0.95rem 1.05rem 1.1rem;
}

.rk-menu .rk-card__name {
    font-size: clamp(0.95rem, 4.6cqi, 1.12rem);
}

.rk-menu .rk-card__price {
    font-size: 1.12rem;
}

.rk-card__media {
    position: relative;
    display: block;
    overflow: hidden;
    border-radius: 18px 18px 0 0;
}

.rk-card__media .image,
.rk-card__media .product_image_slider {
    aspect-ratio: 4 / 3;
    /* !important: базовая тема даёт .image и img радиус 25px — больше радиуса
       карточки (18px), из-за чего у верхних углов фото проступали белые серпики */
    border-radius: 0 !important;
    background: var(--rk-marble, #f5f5f5);
    margin: 0;
    /* базовая тема ставит min-height:170px — на узких карточках это рисует
       цветную полосу под фото; высоту держит aspect-ratio */
    min-height: 0 !important;
}

.rk-card__media .image img,
.rk-card__media .product_image_slider img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 0 !important;
}

/* Базовая тема сдвигает фото вверх при наведении (translateY) — убираем */
ul.thumbs li.rk-card .image,
ul.thumbs li.rk-card:hover .image,
ul.thumbs li.rk-card:hover .image:not(.product_image_slider) {
    transform: none !important;
}

.rk-card__media .badge-wrapper {
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 2;
}

.rk-card__media-link {
    display: block;
}

.rk-card__body {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    padding: 0.85rem 1rem 1.05rem;
    min-width: 0;
}

.rk-card__name-link {
    display: block;
    min-width: 0;
    max-width: 100%;
    text-decoration: none;
    container-type: inline-size;
}

ul.thumbs li.rk-card h5.rk-card__name,
ul.product-list.thumbs .rk-card__name,
.rk-card__name {
    margin: 0.08rem 0 0.5rem;
    font-size: clamp(0.95rem, 4.6cqi, 1.12rem) !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
    color: #1c1814;
    letter-spacing: -0.015em;
    display: -webkit-box !important;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    white-space: normal !important;
    max-width: 100%;
}

.rk-card__name-link:hover .rk-card__name {
    color: var(--rk-ink, #212529);
}

.rk-card__skus {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-content: flex-end;
    align-items: flex-end;
    gap: 0.3rem;
    margin: auto 0 1rem;
    flex-shrink: 0;
}

.rk-card__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem 0.65rem;
    position: relative;
    margin-top: 0 !important;
    padding-top: 0.9rem;
    min-width: 0;
    flex-shrink: 0;
}

.rk-card__footer::before {
    content: "";
    position: absolute;
    left: 4%;
    right: 4%;
    top: 0;
    height: 1px;
    background: linear-gradient(
        90deg,
        transparent 0%,
        rgba(47, 38, 31, 0.08) 12%,
        rgba(47, 38, 31, 0.18) 50%,
        rgba(47, 38, 31, 0.08) 88%,
        transparent 100%
    );
}

.rk-card__actions {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 0.4rem;
    min-width: 0;
}

.rk-card__cta {
    display: flex;
    align-items: stretch;
    justify-content: flex-end;
    gap: 0.35rem;
    flex: 0 1 auto;
    min-width: 0;
}

.rk-card__buy {
    display: flex;
    align-items: stretch;
    justify-content: flex-end;
    width: var(--rk-buy-w);
    min-width: 6.4rem;
    max-width: var(--rk-buy-w);
    height: var(--rk-buy-h);
    flex: 1 1 var(--rk-buy-w);
    margin: 0;
}

.rk-card__sku {
    appearance: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    min-height: 42px !important;
    height: 42px !important;
    padding: 0 0.85rem !important;
    margin: 0 !important;
    border-radius: 12px !important;
    border: 1px solid rgba(47, 38, 31, 0.08) !important;
    background: #f5f5f5 !important;
    color: #212529 !important;
    font-size: 0.88rem !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    cursor: pointer;
    white-space: nowrap;
    box-shadow: 0 1px 3px rgba(40, 36, 30, 0.08);
}

.rk-card__sku.is-selected {
    border-color: rgba(47, 38, 31, 0.1) !important;
    background: #e8e4dc !important;
    color: #1c1814 !important;
    box-shadow: inset 0 1px 2px rgba(40, 36, 30, 0.08);
}

.rk-card__sku:focus,
.rk-card__sku:focus-visible {
    outline: none;
}

ul.product-list.thumbs .rk-card__order,
.rk-card__order {
    appearance: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: var(--rk-buy-h, 42px) !important;
    height: var(--rk-buy-h, 42px) !important;
    padding: 0 1rem !important;
    margin: 0 !important;
    border: none !important;
    border-radius: 12px !important;
    background: var(--rk-accent, #f8b90d) !important;
    color: var(--rk-btn-text, #212529) !important;
    font-weight: 600 !important;
    font-size: 1em !important;
    line-height: 1 !important;
    cursor: pointer;
    box-shadow: 0 3px 10px rgba(248, 185, 13, 0.24) !important;
    white-space: nowrap;
}

ul.product-list.thumbs .rk-card__order:hover,
.rk-card__order:hover {
    background: var(--rk-accent-hover, #e0a60b) !important;
}

.rk-card__stepper {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    box-sizing: border-box !important;
    width: 100%;
    min-width: 0;
    height: var(--rk-buy-h, 42px);
    min-height: var(--rk-buy-h, 42px);
    padding: 4px;
    border-radius: 12px;
    background: #f5f5f5;
    border: 1px solid rgba(47, 38, 31, 0.08);
}

ul.product-list.thumbs .rk-card__order.is-hidden,
ul.product-list.thumbs .rk-card__order[hidden],
ul.product-list.thumbs .rk-card__stepper.is-hidden,
ul.product-list.thumbs .rk-card__stepper[hidden],
form.js-rk-card-buy .rk-card__order.is-hidden,
form.js-rk-card-buy .rk-card__order[hidden],
form.js-rk-card-buy .rk-card__stepper.is-hidden,
form.js-rk-card-buy .rk-card__stepper[hidden] {
    display: none !important;
}

.rk-card__cta > script {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    position: absolute !important;
}

/* Иконка самовывоза: квадрат той же высоты, что «Заказать».
   !important бьёт ul.thumbs li .pickup-btn и a.button.pickup-btn из темы. */
ul.product-list.thumbs li.rk-card a.rk-card__pickup,
ul.thumbs li.rk-card a.button.pickup-btn.rk-card__pickup,
ul.thumbs li.rk-card a.pickup-btn.rk-card__pickup {
    appearance: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    position: relative !important;
    flex: 0 0 var(--rk-buy-h, 42px) !important;
    width: var(--rk-buy-h, 42px) !important;
    min-width: var(--rk-buy-h, 42px) !important;
    max-width: var(--rk-buy-h, 42px) !important;
    height: var(--rk-buy-h, 42px) !important;
    min-height: var(--rk-buy-h, 42px) !important;
    max-height: var(--rk-buy-h, 42px) !important;
    padding: 0 !important;
    margin: 0 !important;
    border-radius: 12px !important;
    border: none !important;
    background: var(--rk-accent, #f8b90d) !important;
    background-image: none !important;
    box-shadow: 0 3px 10px rgba(248, 185, 13, 0.24) !important;
    color: transparent !important;
    font-size: 0 !important;
    line-height: 0 !important;
    overflow: hidden !important;
    text-decoration: none !important;
    transform: none !important;
    filter: none !important;
    white-space: nowrap;
    cursor: pointer;
}

ul.product-list.thumbs li.rk-card a.rk-card__pickup:hover,
ul.thumbs li.rk-card a.button.pickup-btn.rk-card__pickup:hover,
ul.thumbs li.rk-card a.pickup-btn.rk-card__pickup:hover,
ul.product-list.thumbs li.rk-card a.rk-card__pickup:active,
ul.thumbs li.rk-card a.pickup-btn.rk-card__pickup:active {
    background: var(--rk-accent-hover, #e0a60b) !important;
    background-image: none !important;
    border-color: transparent !important;
    color: transparent !important;
    transform: none !important;
    filter: none !important;
    box-shadow: 0 3px 10px rgba(248, 185, 13, 0.28) !important;
}

ul.thumbs li.rk-card a.rk-card__pickup > span,
ul.product-list.thumbs li.rk-card a.rk-card__pickup > span {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
    font-size: 0 !important;
}

ul.thumbs li.rk-card a.rk-card__pickup::before,
ul.product-list.thumbs li.rk-card a.rk-card__pickup::before {
    content: "" !important;
    display: block !important;
    width: 22px;
    height: 22px;
    margin: 0 auto;
    background: var(--rk-btn-text, #212529) !important;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M3 10.2h18l-1.7-5.4A1.2 1.2 0 0 0 18.2 4H5.8a1.2 1.2 0 0 0-1.1.8L3 10.2Z' stroke='black' stroke-width='1.7' stroke-linejoin='round'/%3E%3Cpath d='M5 10.2V20h14V10.2' stroke='black' stroke-width='1.7' stroke-linejoin='round'/%3E%3Cpath d='M9.2 20v-5.2h5.6V20' stroke='black' stroke-width='1.7' stroke-linejoin='round'/%3E%3Cpath d='M7.2 7.2h1.7M11.2 7.2h1.6M15.1 7.2h1.7' stroke='black' stroke-width='1.7' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M3 10.2h18l-1.7-5.4A1.2 1.2 0 0 0 18.2 4H5.8a1.2 1.2 0 0 0-1.1.8L3 10.2Z' stroke='black' stroke-width='1.7' stroke-linejoin='round'/%3E%3Cpath d='M5 10.2V20h14V10.2' stroke='black' stroke-width='1.7' stroke-linejoin='round'/%3E%3Cpath d='M9.2 20v-5.2h5.6V20' stroke='black' stroke-width='1.7' stroke-linejoin='round'/%3E%3Cpath d='M7.2 7.2h1.7M11.2 7.2h1.6M15.1 7.2h1.7' stroke='black' stroke-width='1.7' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat;
}

ul.thumbs li.rk-card a.rk-card__pickup::after {
    content: none !important;
    display: none !important;
}

.rk-card__step {
    appearance: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    min-height: 34px !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    border-radius: 9px !important;
    background: #fff !important;
    color: #212529 !important;
    font-size: 1.15rem !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    cursor: pointer;
    box-shadow: 0 1px 3px rgba(40, 36, 30, 0.08);
}

.rk-card__step span {
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    transform: translateY(-0.5px);
}

.rk-card__step-val {
    min-width: 1.6rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-weight: 750;
    font-size: 0.95rem;
    line-height: 1;
}

form.js-rk-card-buy.is-busy {
    opacity: 0.7;
    pointer-events: none;
}

ul.thumbs li.rk-card span.summary.rk-card__summary,
.rk-card__summary {
    /* !important — базовая тема ставит display: inline-block на span.summary */
    display: -webkit-box !important;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden !important;
    margin: 0.15rem 0 0.7rem !important;
    color: var(--rk-muted, #6c757d);
    font-size: 0.84rem !important;
    font-weight: 400 !important;
    line-height: 1.42;
    white-space: normal !important;
    max-width: 100%;
    /* короткие описания не сдвигают кнопки веса */
    min-height: calc(1.42em * 3);
}

.rk-card__features {
    list-style: none;
    margin: 0 0 0.45rem;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 0.2rem 0.85rem;
    font-size: 0.78rem;
    color: var(--rk-muted, #6c757d);
}

.rk-card__features .name::after {
    content: ':';
}

.rk-card__rating {
    margin-bottom: 0.35rem;
}

.rk-card__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem 0.65rem;
    position: relative;
    margin-top: 0 !important;
    padding-top: 0.9rem;
    min-width: 0;
    flex-shrink: 0;
}

.rk-card__prices {
    display: flex;
    align-items: baseline;
    gap: 0.5rem;
    flex-wrap: wrap;
    margin: 0;
    padding: 0;
    flex: 1 1 auto;
    min-width: 0;
}

.rk-card__price {
    font-size: 1.12rem;
    font-weight: 750;
    color: var(--rk-ink, #212529);
}

.rk-card__old-price {
    font-size: 0.88rem;
    color: var(--rk-muted, #6c757d);
    text-decoration: line-through;
}

ul.product-list.thumbs .rk-card__add,
ul.product-list.thumbs button.rk-card__add,
ul.thumbs li .addtocart-btn.rk-card__add {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 0 1.4rem;
    border-radius: 14px !important;
    /* solid вместо gradient из default.shop.css — иначе на hover «задвоение» */
    background: var(--rk-accent, #f8b90d) !important;
    background-image: none !important;
    color: var(--rk-btn-text, #212529) !important;
    font-weight: 600;
    font-size: 0.95rem;
    line-height: 1;
    letter-spacing: 0.01em;
    border: none;
    cursor: pointer;
    transition: background-color .18s ease;
    white-space: nowrap;
    box-shadow: 0 3px 10px rgba(248, 185, 13, 0.24) !important;
    filter: none !important;
    transform: none !important;
    overflow: visible;
    position: relative;
}

ul.product-list.thumbs .rk-card__add:hover,
ul.product-list.thumbs button.rk-card__add:hover,
ul.thumbs li .addtocart-btn.rk-card__add:hover {
    background: var(--rk-accent-hover, #e0a60b) !important;
    background-image: none !important;
    color: var(--rk-btn-text, #212529) !important;
    filter: none !important;
    transform: none !important;
    box-shadow: 0 4px 12px rgba(248, 185, 13, 0.28) !important;
}

ul.product-list.thumbs .rk-card__add:hover::after,
ul.product-list.thumbs button.rk-card__add:hover::after,
ul.thumbs li .addtocart-btn.rk-card__add:hover::after {
    content: none !important;
    display: none !important;
    animation: none !important;
}

ul.product-list.thumbs .rk-card__add:active,
ul.product-list.thumbs button.rk-card__add:active {
    background: var(--rk-accent-hover, #e0a60b) !important;
    transform: none !important;
    filter: none !important;
}

ul.product-list.thumbs .rk-card__gotocart {
    display: inline-flex;
    align-items: center;
    min-height: 40px;
    padding: 0.4rem 1rem !important;
    border-radius: 14px !important;
    background: var(--rk-accent-soft, rgba(248, 185, 13, 0.14)) !important;
    color: var(--rk-accent, #f8b90d) !important;
    font-weight: 650;
    font-size: 0.86rem;
    text-decoration: none;
    white-space: nowrap;
    border: none;
}

ul.product-list.thumbs .rk-card__gotocart.wa-hide {
    display: none;
}

.rk-card__soldout {
    display: inline-flex;
    align-items: center;
    min-height: 40px;
    padding: 0.4rem 1rem;
    border-radius: 14px;
    background: var(--rk-marble, #f5f5f5);
    color: var(--rk-muted, #6c757d);
    font-size: 0.86rem;
    font-weight: 550;
    text-decoration: none;
    white-space: nowrap;
}

/* ============ Категория ============ */
.rk-category-page {
    padding-top: 0.35rem;
    padding-bottom: 2.5rem;
}

.rk-category-layout {
    display: block;
    padding-bottom: 0;
}

.rk-category-layout > .rk-menu__aside {
    display: none;
}

.rk-category-content {
    width: min(1200px, calc(100% - 2.5rem));
    margin-inline: auto;
}

@media (max-width: 768px) {
    .rk-category-content {
        width: calc(100% - 1.5rem);
    }
}

.rk-category-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.85rem 1.25rem;
    flex-wrap: wrap;
    margin: 0 0 1.15rem;
}

.rk-category-content > .category-name {
    margin: 0 0 0.85rem;
}

.rk-category-toolbar .rk-back {
    margin: 0;
    flex: 0 0 auto;
}

.rk-category-toolbar .category-name {
    margin: 0;
    flex: 1 1 auto;
    min-width: 0;
    font-size: clamp(1.45rem, 2.6vw, 2rem);
    line-height: 1.2;
}

.rk-category-toolbar .sorting {
    flex: 0 0 auto;
    margin: 0 !important;
}

.category-name {
    font-size: clamp(1.6rem, 3vw, 2.1rem);
    margin-bottom: 0.75rem;
}

/* Сетка категории — как на главной */
.rk-category-content .product-list.thumbs.rk-product-list {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.35rem 1.25rem;
    width: 100%;
    margin: 0 auto !important;
    padding: 0 !important;
    float: none !important;
}

.rk-category-content .product-list.thumbs.rk-product-list > li.rk-card,
.rk-category-content .product-list.thumbs.rk-product-list > li {
    width: 100% !important;
    max-width: none !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

@media (max-width: 1100px) {
    .rk-category-content .product-list.thumbs.rk-product-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 560px) {
    .rk-category-content .product-list.thumbs.rk-product-list {
        grid-template-columns: 1fr;
        gap: 1.15rem;
    }
}

.category-description {
    color: var(--rk-muted, #6c757d);
    max-width: 48rem;
    line-height: 1.55;
    margin-bottom: 1.5rem;
}

.sub-links .button {
    background: var(--rk-white, #ffffff) !important;
    color: var(--rk-ink, #212529) !important;
    border: 1px solid var(--rk-line, rgba(47, 38, 31, 0.09));
    border-radius: 14px !important;
}

.sub-links .button:hover {
    background: var(--rk-accent-soft, rgba(248, 185, 13, 0.14)) !important;
    color: var(--rk-accent, #f8b90d) !important;
}

.filters .button,
#filters-toggle-link {
    min-height: 44px;
}

/* ============ Страница товара ============ */
#js-product-page {
    color: var(--rk-ink, #212529);
}

#js-product-page .rk-product-title,
#js-product-page > h1.rk-product-title {
    margin: 0 0 0.85rem;
    font-size: clamp(1.45rem, 2.8vw, 2.05rem);
    letter-spacing: -0.02em;
    line-height: 1.2;
}

/* Название → ряд: Назад | Обзор/Отзывы */
.rk-product-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.65rem 1rem;
    flex-wrap: wrap;
    margin: 0 0 1.25rem;
}

.rk-product-toolbar .rk-back {
    margin: 0;
    flex: 0 0 auto;
}

.rk-product-toolbar .product-topbar {
    margin: 0 !important;
    flex: 0 1 auto;
}

.rk-product-toolbar ul.product-topbar > li.compare,
.rk-product-toolbar ul.product-topbar > li .rating {
    display: none;
}

#js-product-page .product-gallery,
#js-product-page .image,
#product-core-image,
.product-gallery img {
    border-radius: 16px;
}

#js-product-page .product-media .image {
    background: var(--rk-marble, #f5f5f5);
}

/* Десктоп: фото и покупка одной высоты; миниатюры слева поверх фото (не сверху) */
@media (min-width: 901px) {
    #js-product-page .product-media-purchase {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        gap: 1.25rem;
        align-items: stretch;
    }

    #js-product-page .product-media-purchase > .col,
    #js-product-page .product-media-purchase > .product-media,
    #js-product-page .product-media-purchase > .product-purchase {
        width: 100% !important;
        max-width: none !important;
        flex: none !important;
        min-width: 0;
        align-self: stretch;
    }

    /* Медиа-колонка: одно целое поле под фото */
    #js-product-page .product-media {
        position: relative !important;
        display: block !important;
        height: 100%;
        min-height: 480px;
    }

    /* Миниатюры — узкая колонка СЛЕВА поверх фото, не над ним */
    #js-product-page .product-media .img-thumbs {
        position: absolute;
        left: 12px;
        top: 12px;
        bottom: 12px;
        z-index: 4;
        width: 68px;
        min-width: 68px;
        max-width: 68px;
        margin: 0 !important;
        max-height: none !important;
        overflow-x: hidden;
        overflow-y: auto;
        scrollbar-width: thin;
        pointer-events: auto;
    }

    #js-product-page .product-media .img-thumbs .bx-wrapper,
    #js-product-page .product-media .img-thumbs .bx-viewport {
        margin: 0 !important;
        max-height: none !important;
        height: auto !important;
        background: transparent !important;
        box-shadow: none !important;
        border: none !important;
    }

    #js-product-page .product-media .img-thumbs .bx-controls {
        display: none !important;
    }

    #js-product-page #product-gallery.rk-thumbs-static,
    #js-product-page #product-gallery {
        display: flex !important;
        flex-direction: column;
        gap: 8px;
        width: 64px;
        margin: 0;
        padding: 0;
    }

    #js-product-page .product-media .img-thumbs .image {
        width: 64px !important;
        height: 64px !important;
        margin: 0 !important;
        border-radius: 12px;
        overflow: hidden;
        background: var(--rk-white, #ffffff);
        box-shadow: 0 2px 10px rgba(40, 36, 30, 0.12);
        border: 2px solid rgba(255, 255, 255, 0.9);
        box-sizing: border-box;
        flex: 0 0 64px;
    }

    #js-product-page .product-media .img-thumbs .image.selected {
        border-color: var(--rk-accent, #f8b90d);
    }

    #js-product-page .product-media .img-thumbs .image a,
    #js-product-page .product-media .img-thumbs .image img {
        display: block;
        width: 100% !important;
        height: 100% !important;
        object-fit: cover;
        border-radius: 10px;
    }

    #js-product-page .product-media .img-main {
        margin: 0 !important;
        width: 100%;
        height: 100%;
        min-height: 480px;
    }

    #js-product-page .product-gallery,
    #js-product-page .product-gallery.wa-flex,
    #js-product-page #product-core-image {
        width: 100% !important;
        max-width: none !important;
        height: 100%;
        min-height: 480px;
        margin: 0 !important;
        display: flex !important;
        flex-direction: column;
        border-radius: 16px;
        overflow: hidden;
    }

    /* Свайп-лента на десктопе не нужна */
    #js-product-page .rk-swipe-gallery,
    #js-product-page .rk-swipe-dots {
        display: none !important;
    }

    #js-product-page .product-gallery:has(.rk-swipe-gallery) #product-core-image {
        display: flex !important;
    }

    #js-product-page #product-core-image > a.wa-flex {
        flex: 1 1 auto;
        width: 100%;
        height: 100%;
        min-height: 480px;
        display: flex !important;
    }

    #js-product-page #product-image,
    #js-product-page #product-core-image img {
        width: 100% !important;
        height: 100% !important;
        max-height: none !important;
        object-fit: cover;
        border-radius: 16px;
    }

    #js-product-page .product-purchase {
        display: flex;
        flex-direction: column;
        height: 100%;
        min-height: 480px;
    }

    #js-product-page #cart-flyer {
        flex: 1 1 auto;
        width: 100%;
        height: 100%;
        min-height: 100%;
        display: flex;
        flex-direction: column;
        box-sizing: border-box;
        padding: 1.25rem 1.25rem 0.65rem !important;
    }

    #js-product-page #cart-flyer #cart-form {
        flex: 1 1 auto;
        display: flex;
        flex-direction: column;
        height: 100%;
        min-height: 0;
    }

    #js-product-page #cart-form .purchase {
        margin-top: auto;
        padding-top: 1rem;
        padding-bottom: 0;
        margin-bottom: 0;
    }

    #js-product-page #cart-form .rk-pickup-row {
        width: 100%;
        margin-top: 0.65rem;
    }

    #js-product-page #cart-form .stocks {
        margin-top: 0.35rem;
        margin-bottom: 0;
    }

    #js-product-page #cart-form .rk-nutri {
        margin-top: 1.25rem;
        margin-bottom: 0;
        flex: 0 0 auto;
    }

    /* Ряд покупки справа: [− 1 +] [В корзину] [🏪] */
    #js-product-page #cart-form .purchase .add2cart {
        display: flex !important;
        align-items: center;
        justify-content: flex-end;
        flex-wrap: nowrap;
        gap: 0.55rem;
        width: 100%;
    }

    #js-product-page #cart-form .quantity-wrapper {
        display: inline-flex !important;
        align-items: center;
        flex: 0 0 auto;
        margin: 0 !important;
        padding: 0;
        height: 44px;
    }

    #js-product-page #cart-form .quantity-wrapper .wa-mb-8,
    #js-product-page #cart-form .quantity-wrapper .s-description {
        display: none !important;
    }

    #js-product-page #cart-form .rk-qty-controls {
        display: inline-flex !important;
        align-items: center !important;
        gap: 0;
        height: 40px;
        padding: 3px;
        border-radius: 12px;
        background: var(--rk-marble, #f5f5f5);
        border: 1px solid var(--rk-line, rgba(47, 38, 31, 0.08));
        box-sizing: border-box;
    }

    #js-product-page #cart-form .rk-qty-controls .volume-buttons {
        display: inline-flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: center !important;
        height: 32px !important;
        width: 32px !important;
    }

    #js-product-page #cart-form .increase-volume {
        width: 32px !important;
        height: 32px !important;
        min-width: 32px !important;
        min-height: 32px !important;
        margin: 0 !important;
        padding: 0 !important;
        border-radius: 9px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        background: var(--rk-white, #ffffff) !important;
        color: var(--rk-ink, #212529) !important;
        border: none !important;
        box-shadow: 0 1px 3px rgba(40, 36, 30, 0.08) !important;
        line-height: 0 !important;
        font-size: 0 !important;
        cursor: pointer;
    }

    #js-product-page #cart-form .rk-qty-controls .s-increase-vol {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100%;
        height: 100%;
        line-height: 1 !important;
        font-size: 1.15rem !important;
        font-weight: 600;
    }

    #js-product-page #cart-form .rk-qty-controls .s-field-wrapper {
        margin: 0 2px !important;
        display: flex;
        align-items: center;
        height: 32px;
    }

    #js-product-page #cart-form .js-quantity-field {
        width: 2.1rem !important;
        min-height: 32px !important;
        height: 32px !important;
        margin: 0;
        padding: 0;
        border: none !important;
        background: transparent !important;
        box-shadow: none !important;
        text-align: center;
        font-weight: 750;
        font-size: 0.95rem;
        line-height: 1;
    }

    #js-product-page #cart-form .addtocart-btn,
    #js-product-page #cart-form .purchase .add2cart button[type="submit"] {
        flex: 0 0 auto !important;
        width: auto !important;
        min-width: 0 !important;
        height: 44px !important;
        min-height: 44px !important;
        max-height: 44px !important;
        margin: 0;
        padding: 0 1.35rem !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        text-align: center !important;
        line-height: 1 !important;
        box-sizing: border-box;
    }
}

/* Свайп-галерея: по умолчанию скрыта (только мобилка) */
.rk-swipe-gallery,
.rk-swipe-dots {
    display: none;
}

#js-product-page .product-cart,
.product-sidebar .cart,
#cart-flyer,
#cart-form {
    background: var(--rk-white, #ffffff);
    border-radius: 18px;
    padding: 1.25rem;
    border: 1px solid var(--rk-line, rgba(47, 38, 31, 0.07));
    box-shadow: 0 8px 24px rgba(40, 36, 30, 0.05);
}

#cart-flyer #cart-form {
    padding: 0;
    border: none;
    box-shadow: none;
    background: transparent;
}

/* Карточка покупки: слева направо, без лишнего центрирования */
#cart-form .add2cart.js-top {
    justify-content: flex-start;
    align-items: baseline;
    text-align: left;
    gap: 0.65rem;
}

#cart-form .s-product-desc {
    width: 100%;
    max-width: none;
    margin: 0.75rem 0 1rem;
    padding: 0;
    box-sizing: border-box;
    background: transparent;
    border-radius: 0;
    color: var(--rk-muted, #6c757d);
    font-size: 0.95rem;
    line-height: 1.55;
    text-align: left;
}

#cart-form .options {
    text-align: left;
    margin-top: 0.25rem;
}

#cart-form .options .inline-select {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    gap: 0.45rem;
    margin-bottom: 0.85rem;
}

#cart-form .options .inline-select > p,
#cart-form-dialog .options .inline-select > p,
#cart-form .options .inline-select > .wa-mb-16,
#cart-form-dialog .options .inline-select > .wa-mb-16 {
    display: none !important; /* дубль «Вес: …» — хватает кубиков выбора */
}

#cart-form .options .inline-select a {
    min-width: 4.25rem;
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 0 !important;
    padding: 0.4rem 0.85rem;
    border-radius: 12px !important;
    border: 1.5px solid var(--rk-line, rgba(47, 38, 31, 0.12)) !important;
    color: var(--rk-ink, #212529) !important;
    background: var(--rk-white, #ffffff);
    font-weight: 600;
}

#cart-form .options .inline-select a.selected {
    border-color: var(--rk-accent, #f8b90d) !important;
    background: var(--rk-accent-soft, rgba(248, 185, 13, 0.14));
    box-shadow: 0 2px 8px rgba(248, 185, 13, 0.18);
}

#js-product-page .price,
.product-cart .price,
#cart-form .price,
#cart-form .s-price {
    font-size: 1.5rem;
    font-weight: 750;
    color: var(--rk-ink, #212529);
    text-align: left;
}

#js-product-page button[type="submit"],
.product-cart button[type="submit"],
#cart-form button[type="submit"],
#js-product-page a.button,
#js-product-page .button.fw-normal,
.rk-reviews-page a.button,
.rk-reviews-page .button {
    min-height: 48px !important;
    border-radius: 14px !important;
    background: var(--rk-accent, #f8b90d) !important;
    border-color: var(--rk-accent, #f8b90d) !important;
    color: var(--rk-btn-text, #212529) !important;
    font-weight: 650;
    padding-left: 1.6rem;
    padding-right: 1.6rem;
    box-shadow: 0 3px 12px rgba(248, 185, 13, 0.24);
}

#js-product-page a.button:hover,
#js-product-page .button.fw-normal:hover,
.rk-reviews-page a.button:hover,
#js-product-page button[type="submit"]:hover {
    background: var(--rk-accent-hover, #e0a60b) !important;
    border-color: var(--rk-accent-hover, #e0a60b) !important;
    color: var(--rk-btn-text, #212529) !important;
}

/* Кнопка «В корзину» — компактная, ряд кнопок справа */
#cart-form .purchase .add2cart {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: nowrap;
    gap: 0.55rem;
    width: 100%;
}

#cart-form .purchase .add2cart button[type="submit"],
#cart-form .purchase .add2cart .addtocart-btn {
    flex: 0 0 auto;
    width: auto !important;
    min-width: 0;
    height: 44px !important;
    min-height: 44px !important;
    max-height: 44px !important;
    padding: 0 1.35rem !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    line-height: 1 !important;
    box-sizing: border-box;
}

#cart-form .purchase .add2cart .gotocart-btn {
    display: none !important;
}

/* Компактный переключатель количества */
#cart-form .rk-qty-controls,
#cart-form-dialog .rk-qty-controls {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center;
    gap: 0;
    height: 40px;
    padding: 3px;
    border-radius: 12px;
    background: var(--rk-marble, #f5f5f5);
    border: 1px solid var(--rk-line, rgba(47, 38, 31, 0.08));
    box-sizing: border-box;
}

#cart-form .rk-qty-controls .volume-buttons,
#cart-form-dialog .rk-qty-controls .volume-buttons {
    display: inline-flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    height: 32px !important;
    width: 32px !important;
    margin: 0 !important;
    padding: 0 !important;
}

#cart-form .rk-qty-controls .increase-volume,
#cart-form-dialog .rk-qty-controls .increase-volume {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    min-height: 32px !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 9px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: var(--rk-white, #ffffff) !important;
    color: var(--rk-ink, #212529) !important;
    border: none !important;
    box-shadow: 0 1px 3px rgba(40, 36, 30, 0.08) !important;
    line-height: 0 !important;
    font-size: 0 !important;
    cursor: pointer;
    box-sizing: border-box;
}

#cart-form .rk-qty-controls .s-increase-vol,
#cart-form-dialog .rk-qty-controls .s-increase-vol {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100%;
    height: 100%;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1 !important;
    font-size: 1.15rem !important;
    font-weight: 600;
    color: inherit;
}

#cart-form .rk-qty-controls .s-field-wrapper,
#cart-form-dialog .rk-qty-controls .s-field-wrapper {
    margin: 0 2px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center;
    height: 32px;
}

#cart-form .rk-qty-controls .js-quantity-field,
#cart-form-dialog .rk-qty-controls .js-quantity-field {
    width: 2.1rem !important;
    min-height: 32px !important;
    height: 32px !important;
    margin: 0;
    padding: 0;
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
    text-align: center;
    font-weight: 750;
    font-size: 0.95rem;
    line-height: 1;
}

/* «Забрать в магазине» — компактная иконка магазина рядом с «В корзину» */
.rk-pickup-inline {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
}

.rk-pickup-row {
    margin-top: 0.7rem;
    text-align: left;
}

#cart-form .add2cart > script,
#cart-form-dialog .add2cart > script {
    display: none !important;
}

#cart-form .pickup-btn,
.rk-pickup-row .pickup-btn,
a.button.pickup-btn {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: auto !important;
    min-height: 44px;
    padding: 0.5rem 1.35rem !important;
    border-radius: 14px !important;
    background: var(--rk-accent, #f8b90d) !important;
    color: var(--rk-btn-text, #212529) !important;
    border: none !important;
    font-weight: 650;
    font-size: 0.95rem;
    text-decoration: none !important;
    box-shadow: 0 3px 12px rgba(248, 185, 13, 0.22) !important;
    transition: background .18s ease, color .18s ease;
}

/* Страница товара: жёлтая «Самовывоз» с иконкой в ряду с «В корзину».
   !important бьёт #js-product-page a.button, .add2cart .pickup-btn и старый rk-pickup-full. */
#js-product-page .add2cart a.button.pickup-btn.rk-pickup-product,
#js-product-page .add2cart a.pickup-btn.rk-pickup-product,
#cart-form .add2cart a.button.pickup-btn.rk-pickup-product,
#cart-form .add2cart a.pickup-btn.rk-pickup-product {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0.4rem;
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    height: 44px !important;
    min-height: 44px !important;
    max-height: 44px !important;
    padding: 0 1rem 0 0.85rem !important;
    margin: 0 !important;
    border: none !important;
    border-radius: 14px !important;
    background: var(--rk-accent, #f8b90d) !important;
    background-image: none !important;
    color: var(--rk-btn-text, #212529) !important;
    font-size: 0.95rem !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    box-shadow: 0 3px 10px rgba(248, 185, 13, 0.24) !important;
    white-space: nowrap;
    transform: none !important;
    filter: none !important;
    position: relative;
}

#js-product-page .add2cart a.pickup-btn.rk-pickup-product:hover,
#cart-form .add2cart a.pickup-btn.rk-pickup-product:hover {
    background: var(--rk-accent-hover, #e0a60b) !important;
    color: var(--rk-btn-text, #212529) !important;
}

#js-product-page .add2cart a.pickup-btn.rk-pickup-product > span,
#cart-form .add2cart a.pickup-btn.rk-pickup-product > span {
    position: static !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    clip: auto !important;
    font-size: inherit !important;
    line-height: 1 !important;
    color: inherit !important;
    white-space: nowrap;
}

#js-product-page .add2cart a.pickup-btn.rk-pickup-product::before,
#cart-form .add2cart a.pickup-btn.rk-pickup-product::before {
    content: "" !important;
    display: block !important;
    width: 20px;
    height: 20px;
    flex: 0 0 20px;
    background: var(--rk-btn-text, #212529) !important;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M3 10.2h18l-1.7-5.4A1.2 1.2 0 0 0 18.2 4H5.8a1.2 1.2 0 0 0-1.1.8L3 10.2Z' stroke='black' stroke-width='1.7' stroke-linejoin='round'/%3E%3Cpath d='M5 10.2V20h14V10.2' stroke='black' stroke-width='1.7' stroke-linejoin='round'/%3E%3Cpath d='M9.2 20v-5.2h5.6V20' stroke='black' stroke-width='1.7' stroke-linejoin='round'/%3E%3Cpath d='M7.2 7.2h1.7M11.2 7.2h1.6M15.1 7.2h1.7' stroke='black' stroke-width='1.7' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M3 10.2h18l-1.7-5.4A1.2 1.2 0 0 0 18.2 4H5.8a1.2 1.2 0 0 0-1.1.8L3 10.2Z' stroke='black' stroke-width='1.7' stroke-linejoin='round'/%3E%3Cpath d='M5 10.2V20h14V10.2' stroke='black' stroke-width='1.7' stroke-linejoin='round'/%3E%3Cpath d='M9.2 20v-5.2h5.6V20' stroke='black' stroke-width='1.7' stroke-linejoin='round'/%3E%3Cpath d='M7.2 7.2h1.7M11.2 7.2h1.6M15.1 7.2h1.7' stroke='black' stroke-width='1.7' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat;
}

#cart-form .rk-pickup-inline .pickup-btn {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
    max-width: 44px;
    padding: 0 !important;
    margin: 0 !important;
    border-radius: 50% !important;
    position: relative;
    overflow: hidden;
    font-size: 0 !important;
    line-height: 0 !important;
    color: transparent !important;
}

#cart-form .rk-pickup-inline .pickup-btn > span {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

#cart-form .rk-pickup-inline .pickup-btn::before {
    content: "";
    position: absolute;
    inset: 0;
    margin: auto;
    width: 22px;
    height: 22px;
    background: var(--rk-btn-text, #212529);
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M4 9.5V20a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1V9.5' stroke='black' stroke-width='1.8' stroke-linecap='round'/%3E%3Cpath d='M3 9.5l2.2-5.2A1 1 0 0 1 6.1 3.8h11.8a1 1 0 0 1 .9.5L21 9.5' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M9.5 21v-6.5h5V21' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M4 9.5V20a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1V9.5' stroke='black' stroke-width='1.8' stroke-linecap='round'/%3E%3Cpath d='M3 9.5l2.2-5.2A1 1 0 0 1 6.1 3.8h11.8a1 1 0 0 1 .9.5L21 9.5' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M9.5 21v-6.5h5V21' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
}

#cart-form .pickup-btn:hover,
.rk-pickup-row .pickup-btn:hover,
#cart-form .rk-pickup-inline .pickup-btn:hover {
    background: var(--rk-accent-hover, #e0a60b) !important;
    color: var(--rk-btn-text, #212529) !important;
}

.rk-features-title {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 0.35rem 0.65rem;
}

.rk-features-note {
    font-size: 0.92rem;
    font-weight: 550;
    color: var(--rk-muted, #6c757d);
}

/* Характеристики КБЖУ — мягкие карточки в блоке покупки */
.rk-nutri {
    margin: 1.1rem 0 0;
    width: 100%;
}

.rk-nutri.is-empty {
    display: none;
}

.rk-nutri__head {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 0.3rem 0.55rem;
    margin-bottom: 0.6rem;
}

.rk-nutri__title {
    font-size: 0.88rem;
    font-weight: 600;
    letter-spacing: 0.01em;
    color: #6b635a;
}

.rk-nutri__note {
    font-size: 0.78rem;
    font-weight: 500;
    color: #9a9188;
}

.rk-nutri-grid {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.5rem;
    width: 100%;
}

.rk-nutri-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    gap: 0.35rem;
    min-height: 74px;
    padding: 0.65rem 0.4rem 0.7rem;
    background: #faf7f2;
    border: 1px solid rgba(47, 38, 31, 0.06);
    border-radius: 14px;
    box-sizing: border-box;
}

.rk-nutri-card__name {
    font-size: 0.72rem;
    font-weight: 500;
    line-height: 1.25;
    color: #8f867c;
}

.rk-nutri-card__name::after {
    content: "";
    display: block;
    width: 1.5rem;
    height: 1px;
    margin: 0.35rem auto 0;
    background: rgba(47, 38, 31, 0.08);
}

.rk-nutri-card__value {
    font-size: 0.9rem;
    font-weight: 600;
    line-height: 1.2;
    color: #4a433c;
    word-break: break-word;
}

#cart-form-dialog .rk-nutri {
    display: none !important;
}

/* ==== Топбар товара «Обзор | Отзывы» — пилюли-табы (на всех страницах) ==== */
ul.product-topbar {
    display: inline-flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.3rem;
    list-style: none;
    margin: 0 0 1.35rem;
    padding: 0.3rem;
    max-width: 100%;
    background: var(--rk-white, #ffffff);
    border: 1px solid var(--rk-line, rgba(47, 38, 31, 0.08));
    border-radius: 14px;
    box-shadow: 0 3px 12px rgba(40, 36, 30, 0.05);
}

ul.product-topbar > li {
    display: inline-flex;
    align-items: center;
    margin: 0 !important;
    padding: 0;
}

ul.product-topbar > li > a {
    display: inline-flex;
    align-items: center;
    min-height: 38px;
    padding: 0.25rem 1.15rem;
    border-radius: 14px;
    color: var(--rk-muted, #6c757d) !important;
    font-weight: 600;
    font-size: 0.95rem;
    text-decoration: none !important;
    background: transparent;
    transition: background .18s ease, color .18s ease;
}

ul.product-topbar > li > a:hover {
    color: var(--rk-accent, #f8b90d) !important;
    background: var(--rk-accent-soft, rgba(248, 185, 13, 0.1));
}

ul.product-topbar > li.selected {
    background: transparent;
    padding: 0;
    border-radius: 14px;
}

ul.product-topbar > li.selected > a {
    background: var(--rk-accent, #f8b90d);
    color: var(--rk-btn-text, #212529) !important;
    box-shadow: 0 3px 10px rgba(248, 185, 13, 0.3);
}

ul.product-topbar > li > .hint {
    display: none; /* счётчик теперь внутри ссылки как .rk-topbar-count */
}

/* Счётчик отзывов — отдельный чип рядом с текстом вкладки */
ul.product-topbar .rk-topbar-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 1.4rem;
    height: 1.4rem;
    margin-left: 0.45rem;
    padding: 0 0.4rem;
    border-radius: 14px;
    background: rgba(47, 38, 31, 0.08);
    color: var(--rk-ink, #212529);
    font-size: 0.78rem;
    font-weight: 700;
    line-height: 1;
}

ul.product-topbar > li.selected .rk-topbar-count {
    background: rgba(255, 255, 255, 0.28);
    color: #fff;
}

ul.product-topbar > li:not(.selected) > a:hover .rk-topbar-count {
    background: rgba(248, 185, 13, 0.16);
    color: var(--rk-accent, #f8b90d);
}

#product-tags {
    display: none !important;
}

/* Блок наличия: «В наличии» убран из шаблона; если предупреждений нет — прячем контейнер */
#cart-form .stocks:not(:has(.stock-low, .text-orange, .stock-none)) {
    display: none;
}

.related .section-header,
.related h4 {
    color: var(--rk-ink, #212529);
    font-weight: 700;
}

.product-cart .qty,
.js-quantity-field input,
#cart-form .js-quantity-field,
.wa-quantity-box input {
    min-height: 44px;
    border-radius: 10px;
}


/* ============ Корзина и оформление (Checkout v2) ============ */
.is-order-page .maincontent,
body.is-order-page {
    background: var(--rk-surface, #fafafa);
}

.wa-order-cart-wrapper,
.wa-order-form-wrapper,
.s-orders-wrapper {
    --accent-color: var(--rk-accent, #f8b90d);
}

.s-order-page .s-order-section {
    background: transparent;
    border: none;
    border-radius: 0;
    padding: 0;
    box-shadow: none;
    margin-bottom: 1.25rem;
}

.s-order-page .s-header {
    color: var(--rk-ink, #212529);
    font-weight: 750;
    letter-spacing: -0.02em;
}

.wa-order-cart-wrapper .wa-product-wrapper {
    border-radius: 14px;
}

/* wa-cart-details без своего radius — иначе с border-top получается «складка» */
.wa-order-cart-wrapper .wa-cart-details {
    border-radius: 0;
    border-top: 1px solid var(--rk-line, rgba(47, 38, 31, 0.1)) !important;
    margin-top: 1rem !important;
    padding-top: 1.15rem !important;
    box-shadow: none !important;
}

/* Мобильная корзина: ничего не вылезает за край, вес по центру */
@media (max-width: 760px) {
    .s-order-page .s-order-section {
        padding: 0;
        overflow: visible;
    }

    .s-order-page .s-order-section > .s-section-body .wa-cart-body .wa-product .wa-product-body {
        display: grid !important;
        grid-template-columns: 64px minmax(0, 1fr) auto;
        column-gap: 0.65rem;
        align-items: start;
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
    }

    .s-order-page .s-order-section > .s-section-body .wa-cart-body .wa-product .wa-product-body .wa-column-image {
        grid-row: 1 / 3;
        margin: 0 !important;
        min-width: 64px;
        width: 64px;
    }

    .s-order-page .s-order-section > .s-section-body .wa-cart-body .wa-product .wa-product-body .wa-column-details {
        grid-column: 2 / 4;
        min-width: 0;
        max-width: 100%;
        padding-right: 0 !important;
        margin-bottom: 0.55rem;
    }

    .s-order-page .s-order-section > .s-section-body .wa-cart-body .wa-product .wa-product-body .wa-column-details .wa-details {
        display: block;
        max-width: 100%;
    }

    .s-order-page .s-order-section > .s-section-body .wa-cart-body .wa-product .wa-product-body .wa-column-details .wa-details .wa-name,
    .s-order-page .s-order-section > .s-section-body .wa-cart-body .wa-product .wa-product-body .wa-column-details .wa-details .wa-name a {
        display: block !important;
        max-width: 100%;
        overflow-wrap: anywhere;
        word-break: break-word;
        white-space: normal !important;
        line-height: 1.3;
    }

    .s-order-page .s-order-section > .s-section-body .wa-cart-body .wa-product .wa-product-body .wa-column-quantity {
        grid-column: 2 / 3;
        padding-left: 0 !important;
        min-width: 0;
    }

    .s-order-page .s-order-section > .s-section-body .wa-cart-body .wa-product .wa-product-body .wa-column-price {
        grid-column: 3 / 4;
        width: auto !important;
        max-width: 7.5rem;
        min-width: 0;
        margin-top: 0.15rem !important;
        padding-right: 0 !important;
        justify-self: end;
        text-align: right;
    }

    .s-order-page .s-order-section > .s-section-body .wa-cart-body .wa-product .wa-product-body .wa-column-price .wa-price-total,
    .s-order-page .s-order-section > .s-section-body .wa-cart-body .wa-product .wa-product-body .wa-column-price .js-price {
        white-space: nowrap;
        font-size: 0.95rem;
        overflow: hidden;
        text-overflow: ellipsis;
        max-width: 100%;
        display: inline-block;
    }

    .s-order-page .s-order-section > .s-section-body .wa-cart-body .wa-cart-details {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 0.65rem;
    }

    .s-order-page .s-order-section > .s-section-body .wa-cart-body .wa-cart-details .wa-weight-section {
        order: -1;
        width: 100%;
        text-align: center !important;
        margin: 0 auto 0.15rem !important;
        font-size: 0.88rem;
        color: var(--rk-muted, #6c757d);
    }

    .s-order-page .s-order-section > .s-section-body .wa-cart-body .wa-cart-details .wa-column-price,
    .s-order-page .s-order-section > .s-section-body .wa-cart-body .wa-cart-details .wa-price-section {
        width: 100% !important;
        max-width: none;
    }

    .s-order-page .s-order-section > .s-section-body .wa-cart-body .wa-cart-details .wa-price-total {
        display: flex;
        justify-content: space-between;
        align-items: baseline;
        gap: 0.75rem;
        font-size: 1.05rem;
    }
}

.wa-order-cart-wrapper .wa-button,
.wa-order-form-wrapper .wa-button,
.wa-order-cart-wrapper button.wa-button {
    border-radius: 14px !important;
    min-height: 44px;
}

.wa-order-cart-wrapper .wa-button.blue,
.wa-order-form-wrapper .wa-button.blue,
.wa-order-form-wrapper .wa-button.green,
.wa-order-cart-wrapper .wa-button.green {
    background: var(--rk-accent, #f8b90d) !important;
    border-color: var(--rk-accent, #f8b90d) !important;
}

.wa-order-form-wrapper input[type="text"],
.wa-order-form-wrapper input[type="email"],
.wa-order-form-wrapper input[type="tel"],
.wa-order-form-wrapper input[type="number"],
.wa-order-form-wrapper select,
.wa-order-form-wrapper textarea {
    border-radius: 12px;
    border: 1px solid var(--rk-line, rgba(47, 38, 31, 0.12));
    background: var(--rk-white, #ffffff);
    min-height: 44px;
}

.wa-order-form-wrapper input:focus,
.wa-order-form-wrapper select:focus,
.wa-order-form-wrapper textarea:focus {
    border-color: var(--rk-accent, #f8b90d);
    outline: none;
    box-shadow: 0 0 0 3px var(--rk-accent-soft, rgba(248, 185, 13, 0.14));
}

/* Cart images */
.s-order-page .wa-cart-body .wa-column-image,
.wa-order-cart-wrapper .wa-column-image {
    display: block !important;
    min-width: 96px;
}

.s-order-page .wa-cart-body .wa-column-image img,
.wa-order-cart-wrapper .wa-column-image img,
.wa-order-cart-wrapper .wa-image-section img {
    display: block;
    width: 96px;
    height: 96px;
    object-fit: cover;
    background: var(--rk-marble, #f5f5f5);
    border-radius: 14px;
}

/* ============ Оформление заказа — единый стиль сайта ============ */
.rk-order-page,
.s-order-page {
    --accent-color: var(--rk-accent, #f8b90d);
    --button-background-color: var(--rk-accent, #f8b90d);
    --button-text-color: var(--rk-btn-text, #212529);
    color: var(--rk-ink, #212529);
}

.rk-order-page .s-order-section,
.s-order-page .s-order-section {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
}

.rk-order-page .s-section-header,
.s-order-page .s-section-header {
    padding: 0 0.2rem 0.85rem !important;
    margin: 0 !important;
}

.rk-order-page .s-order-section > .s-section-body,
.s-order-page .s-order-section > .s-section-body {
    background: var(--rk-white, #ffffff) !important;
    border: 1px solid var(--rk-line, rgba(47, 38, 31, 0.07)) !important;
    border-radius: 18px !important;
    padding: 1.65rem 1.75rem 1.8rem !important;
    box-shadow: 0 8px 24px rgba(40, 36, 30, 0.04) !important;
}

@media (max-width: 760px) {
    .rk-order-page .s-order-section > .s-section-body,
    .s-order-page .s-order-section > .s-section-body {
        padding: 1.2rem 1.1rem 1.3rem !important;
    }

    .wa-order-form-wrapper .wa-step-section {
        padding: 0 0 1rem !important;
        margin: 0 0 1rem !important;
    }
}

.rk-order-page .s-section-footer,
.s-order-page .s-section-footer {
    padding: 1rem 0.2rem 0 !important;
}

/* Скрыть дубль SKU; вес оставляем компактно */
.s-order-page .wa-details .wa-sku,
.wa-order-cart-wrapper .wa-details .wa-sku {
    display: none !important;
}

/* Название товара — тёмный цвет, не коричневый accent */
.wa-order-cart-wrapper a.wa-name,
.wa-order-cart-wrapper .wa-name,
.s-order-page .wa-cart-body a.wa-name,
.s-order-page .wa-cart-body .wa-name {
    color: var(--rk-ink, #212529) !important;
    text-decoration: none !important;
    font-weight: 650 !important;
}
.wa-order-cart-wrapper a.wa-name:hover,
.s-order-page .wa-cart-body a.wa-name:hover {
    color: var(--rk-ink, #212529) !important;
    opacity: 0.75;
}

.s-order-page .wa-details .wa-weight,
.wa-order-cart-wrapper .wa-details .wa-weight {
    display: inline-block;
    margin: 0.15rem 0 0;
    padding: 0.15rem 0.5rem;
    border-radius: 8px;
    background: #faf7f2;
    color: #8f867c !important;
    font-size: 0.78rem;
    font-weight: 550;
}

/* Карточка товара в корзине: крупное квадратное фото + удаление на фото */
.wa-order-cart-wrapper .wa-product-body,
.s-order-page .wa-product-body {
    display: grid !important;
    grid-template-columns: 96px minmax(0, 1fr) auto auto;
    column-gap: 0.85rem;
    align-items: center !important;
}

.wa-order-cart-wrapper .wa-column-image,
.s-order-page .wa-column-image {
    grid-column: 1;
    width: 96px !important;
    min-width: 96px !important;
    position: relative !important;
}

.wa-order-cart-wrapper .wa-image-section,
.s-order-page .wa-image-section {
    position: relative !important;
    width: 96px;
    height: 96px;
    border-radius: 14px;
    overflow: hidden;
    background: var(--rk-marble, #f5f5f5);
}

.wa-order-cart-wrapper .wa-image-section a,
.s-order-page .wa-image-section a {
    display: block;
    width: 100%;
    height: 100%;
}

.wa-order-cart-wrapper .wa-column-image img,
.wa-order-cart-wrapper .wa-image-section img,
.s-order-page .wa-column-image img,
.s-order-page .wa-image-section img {
    width: 96px !important;
    height: 96px !important;
    border-radius: 14px !important;
    object-fit: cover !important;
}

/* Удаление — иконка на фото */
.wa-order-cart-wrapper .wa-image-section .wa-actions.rk-cart-delete,
.s-order-page .wa-image-section .wa-actions.rk-cart-delete {
    position: absolute !important;
    top: 6px;
    right: 6px;
    z-index: 3;
    margin: 0 !important;
    display: block !important;
}

.wa-order-cart-wrapper .rk-cart-delete .js-delete-product,
.s-order-page .rk-cart-delete .js-delete-product {
    display: inline-flex !important;
    cursor: pointer;
}

.wa-order-cart-wrapper .rk-cart-delete .wa-tooltip,
.s-order-page .rk-cart-delete .wa-tooltip {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border-radius: 11px;
    background: rgba(255, 255, 255, 0.96) !important;
    box-shadow: 0 2px 10px rgba(40, 36, 30, 0.22);
    color: #212529 !important;
    font-size: 0 !important;
    line-height: 0 !important;
    overflow: hidden !important;
    transition: background .15s ease, transform .15s ease, box-shadow .15s ease;
}

/* Без всплывающего «Удалить» — текст не влазит на фото */
.wa-order-cart-wrapper .rk-cart-delete .wa-tooltip::before,
.s-order-page .rk-cart-delete .wa-tooltip::before,
.wa-order-cart-wrapper .rk-cart-delete .wa-tooltip::after,
.s-order-page .rk-cart-delete .wa-tooltip::after,
.wa-order-cart-wrapper .rk-cart-delete .wa-tooltip[data-title]::before,
.s-order-page .rk-cart-delete .wa-tooltip[data-title]::before,
.wa-order-cart-wrapper .rk-cart-delete .wa-tooltip[data-title]::after,
.s-order-page .rk-cart-delete .wa-tooltip[data-title]::after {
    content: none !important;
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    width: 0 !important;
    height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    background: none !important;
    box-shadow: none !important;
    pointer-events: none !important;
}

.wa-order-cart-wrapper .rk-cart-delete .wa-tooltip:hover,
.s-order-page .rk-cart-delete .wa-tooltip:hover {
    background: #fff !important;
    transform: scale(1.08);
    box-shadow: 0 3px 12px rgba(40, 36, 30, 0.28);
}

.wa-order-cart-wrapper .rk-cart-delete .wa-icon,
.s-order-page .rk-cart-delete .wa-icon {
    display: inline-flex !important;
    width: 16px !important;
    height: 16px !important;
    margin: 0 !important;
}

.wa-order-cart-wrapper .rk-cart-delete .wa-icon svg,
.s-order-page .rk-cart-delete .wa-icon svg {
    width: 16px !important;
    height: 16px !important;
    fill: #212529 !important;
}

.wa-order-cart-wrapper .wa-details > .wa-actions:not(.rk-cart-delete),
.s-order-page .wa-details > .wa-actions:not(.rk-cart-delete) {
    display: none !important;
}

.wa-order-cart-wrapper .wa-column-details,
.s-order-page .wa-column-details {
    grid-column: 2;
    min-width: 0;
}

.wa-order-cart-wrapper .wa-column-quantity,
.s-order-page .wa-column-quantity {
    grid-column: 3;
    justify-self: center;
}

.wa-order-cart-wrapper .wa-column-price,
.s-order-page .wa-column-price {
    grid-column: 4;
    justify-self: end;
    text-align: right;
}

/* ± количество: капсула как в карточке товара */
.wa-order-cart-wrapper .wa-quantity-cart-section,
.s-order-page .wa-quantity-cart-section {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0.3rem !important;
    height: auto !important;
    min-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

.wa-order-cart-wrapper .wa-quantity-cart-section > .wa-section-body,
.s-order-page .wa-quantity-cart-section > .wa-section-body {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-wrap: nowrap !important;
    gap: 0 !important;
    height: 40px !important;
    padding: 3px !important;
    border-radius: 12px !important;
    background: var(--rk-marble, #f5f5f5) !important;
    border: 1px solid var(--rk-line, rgba(47, 38, 31, 0.08)) !important;
    box-sizing: border-box !important;
}

.wa-order-cart-wrapper .wa-quantity-cart-section .wa-button-wrapper,
.s-order-page .wa-quantity-cart-section .wa-button-wrapper {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 32px !important;
    height: 32px !important;
    position: static !important;
}

.wa-order-cart-wrapper .wa-quantity-cart-section .wa-description,
.s-order-page .wa-quantity-cart-section .wa-description,
.wa-order-cart-wrapper .wa-quantity-cart-section .js-min-description,
.s-order-page .wa-quantity-cart-section .js-min-description,
.wa-order-cart-wrapper .wa-quantity-cart-section .js-max-description,
.s-order-page .wa-quantity-cart-section .js-max-description,
.wa-order-cart-wrapper .wa-quantity-cart-section .wa-button .wa-description,
.s-order-page .wa-quantity-cart-section .wa-button .wa-description,
.wa-order-cart-wrapper .wa-quantity-cart-section button .js-min-description,
.s-order-page .wa-quantity-cart-section button .js-min-description,
.wa-order-cart-wrapper .wa-quantity-cart-section button .js-max-description,
.s-order-page .wa-quantity-cart-section button .js-max-description {
    display: none !important;
    visibility: hidden !important;
    width: 0 !important;
    height: 0 !important;
    max-width: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    position: absolute !important;
    left: -9999px !important;
    font-size: 0 !important;
    line-height: 0 !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

.wa-order-cart-wrapper .wa-quantity-cart-section .wa-button,
.wa-order-cart-wrapper .wa-quantity-cart-section button,
.s-order-page .wa-quantity-cart-section .wa-button,
.s-order-page .wa-quantity-cart-section button {
    display: inline-flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    min-height: 32px !important;
    padding: 0 !important;
    margin: 0 !important;
    border-radius: 9px !important;
    background: #fff !important;
    color: #212529 !important;
    border: none !important;
    box-shadow: 0 1px 3px rgba(40, 36, 30, 0.08) !important;
    line-height: 0 !important;
    font-size: 0 !important;
    overflow: hidden !important;
}

.wa-order-cart-wrapper .wa-quantity-cart-section .wa-icon-wrapper,
.s-order-page .wa-quantity-cart-section .wa-icon-wrapper {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
}

.wa-order-cart-wrapper .wa-quantity-cart-section .wa-icon,
.s-order-page .wa-quantity-cart-section .wa-icon {
    display: inline-flex !important;
    width: 12px !important;
    height: 12px !important;
    margin: 0 !important;
}

.wa-order-cart-wrapper .wa-quantity-cart-section .wa-icon svg,
.s-order-page .wa-quantity-cart-section .wa-icon svg {
    width: 12px !important;
    height: 12px !important;
    display: block !important;
}

.wa-order-cart-wrapper .wa-quantity-cart-section .wa-field-wrapper,
.s-order-page .wa-quantity-cart-section .wa-field-wrapper {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 2px !important;
    padding: 0 !important;
    height: 32px !important;
    background: transparent !important;
    position: relative !important;
}

.wa-order-cart-wrapper .wa-quantity-cart-section .wa-unit,
.s-order-page .wa-quantity-cart-section .wa-unit {
    display: none !important;
}

.wa-order-cart-wrapper .wa-quantity-cart-section .wa-field,
.wa-order-cart-wrapper .wa-quantity-cart-section input.wa-field,
.s-order-page .wa-quantity-cart-section .wa-field,
.s-order-page .wa-quantity-cart-section input.wa-field {
    width: 2.2rem !important;
    min-height: 32px !important;
    height: 32px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
    text-align: center !important;
    font-weight: 750 !important;
    font-size: 0.95rem !important;
    line-height: 1 !important;
    border-radius: 0 !important;
}

.wa-order-cart-wrapper .wa-quantity-cart-section > .wa-section-footer,
.s-order-page .wa-quantity-cart-section > .wa-section-footer {
    margin: 0 !important;
    padding: 0 !important;
    text-align: center;
}

.wa-order-cart-wrapper .wa-product-fractional-prices,
.wa-order-cart-wrapper .wa-product-price,
.s-order-page .wa-product-fractional-prices,
.s-order-page .wa-product-price {
    margin: 0 !important;
    font-size: 0.78rem !important;
    color: #8f867c !important;
    white-space: nowrap;
}

.s-order-page .s-order-section > .s-section-body .wa-cart-body .wa-product .wa-product-body .wa-column-quantity .wa-quantity-cart-section {
    margin-top: 0 !important;
    padding-right: 0 !important;
}

/* Инпуты оформления — 2 колонки; ::before clearfix ломал первую строку */
.wa-order-form-wrapper .wa-fields-group {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 1rem 1.15rem !important;
    align-items: start !important;
    margin: 0 !important;
    padding: 0 !important;
}

.wa-order-form-wrapper .wa-fields-group::before,
.wa-order-form-wrapper .wa-fields-group::after {
    content: none !important;
    display: none !important;
}

.wa-order-form-wrapper .wa-fields-group > .wa-field-wrapper {
    float: none !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

.wa-order-form-wrapper .wa-fields-group > .wa-field-wrapper:has(input.wa-email) {
    grid-column: 1 / -1;
}

.wa-order-form-wrapper .wa-fields-group > .wa-field-wrapper:has(input[name="details[shipping_address][street]"]),
.wa-order-form-wrapper .wa-fields-group > .wa-field-wrapper:has(textarea[name="details[shipping_address][street]"]) {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    max-width: none !important;
}

.wa-order-form-wrapper .wa-field-wrapper:has(input[name="details[shipping_address][street]"]),
.wa-order-form-wrapper .wa-field-wrapper:has(textarea[name="details[shipping_address][street]"]) {
    width: 100% !important;
    max-width: none !important;
}

.wa-order-form-wrapper .wa-field-wrapper:has(input[name="details[shipping_address][street]"]) .rk-addr-wrap,
.wa-order-form-wrapper .wa-field-wrapper:has(input[name="details[shipping_address][street]"]) .wa-input,
.wa-order-form-wrapper .wa-field-wrapper:has(textarea[name="details[shipping_address][street]"]) .wa-input,
.wa-order-form-wrapper .wa-plugin-fields-wrapper .rk-addr-wrap,
.wa-order-form-wrapper .wa-plugin-fields-wrapper .wa-input,
.wa-order-form-wrapper .wa-plugin-fields-wrapper input[type="text"] {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
}

.wa-order-form-wrapper .wa-field-wrapper .wa-label {
    display: block !important;
    margin: 0 0 0.4rem !important;
    padding: 0 !important;
    min-height: 1.25em;
    line-height: 1.25;
    color: #6c757d !important;
    font-size: 0.88rem !important;
    font-weight: 550 !important;
}

.wa-order-form-wrapper .wa-field-wrapper .wa-input,
.wa-order-form-wrapper .wa-fields-group .wa-input {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    border-radius: 12px !important;
}

@media (max-width: 760px) {
    .wa-order-cart-wrapper .wa-product-body,
    .s-order-page .wa-product-body {
        grid-template-columns: 84px minmax(0, 1fr);
        grid-template-rows: auto auto;
        row-gap: 0.65rem;
    }
    .wa-order-cart-wrapper .wa-column-image,
    .s-order-page .wa-column-image {
        width: 84px !important;
        min-width: 84px !important;
    }
    .wa-order-cart-wrapper .wa-image-section,
    .s-order-page .wa-image-section,
    .wa-order-cart-wrapper .wa-column-image img,
    .s-order-page .wa-column-image img {
        width: 84px !important;
        height: 84px !important;
    }
    .wa-order-cart-wrapper .wa-column-details,
    .s-order-page .wa-column-details {
        grid-column: 2;
        grid-row: 1;
    }
    .wa-order-cart-wrapper .wa-column-quantity,
    .s-order-page .wa-column-quantity {
        grid-column: 2;
        grid-row: 2;
        justify-self: start;
    }
    .wa-order-cart-wrapper .wa-column-price,
    .s-order-page .wa-column-price {
        grid-column: 2;
        grid-row: 2;
        justify-self: end;
        align-self: center;
    }
    .wa-order-form-wrapper .wa-fields-group {
        grid-template-columns: 1fr !important;
    }
}

.wa-order-form-wrapper .wa-step-section {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    padding: 0 0 1.2rem !important;
    margin: 0 0 1.2rem !important;
    border-bottom: 1px solid var(--rk-line, rgba(47, 38, 31, 0.08)) !important;
}

.wa-order-form-wrapper .wa-step-section:last-child {
    border-bottom: none !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

.wa-order-form-wrapper .wa-field,
.wa-order-form-wrapper .wa-field-wrapper {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.wa-order-form-wrapper .wa-field .wa-value,
.wa-order-form-wrapper .wa-field .wa-name {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.wa-order-form-wrapper input[type="text"],
.wa-order-form-wrapper input[type="email"],
.wa-order-form-wrapper input[type="tel"],
.wa-order-form-wrapper input[type="number"],
.wa-order-form-wrapper select,
.wa-order-form-wrapper textarea {
    box-sizing: border-box;
    max-width: 100%;
}

.wa-order-form-wrapper .wa-types-list,
.wa-order-form-wrapper .wa-variants-section,
.wa-order-form-wrapper .wa-delivery-variants {
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.rk-wip-box {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 220px;
    text-align: center;
}

.rk-wip-box__text {
    margin: 0 !important;
    font-size: 1.25rem;
    font-weight: 600;
    color: #7a7168;
}

header.globalheader.rk-no-header-image {
    background-image: none !important;
}

html.rk-info header.globalheader,
body:has(.rk-about-page) header.globalheader,
body:has(.rk-shipping-page) header.globalheader,
body:has(.rk-info-page) header.globalheader,
body.rk-about header.globalheader {
    margin-bottom: 0 !important;
}

html.rk-info #page-content,
body:has(.rk-about-page) #page-content,
body:has(.rk-shipping-page) #page-content,
body:has(.rk-info-page) #page-content,
body.rk-about #page-content {
    padding-top: 0.5rem;
}

@media (max-width: 700px) {
    body.rk-about #page-content,
    html.rk-info #page-content,
    body:has(.rk-about-page) #page-content,
    body:has(.rk-shipping-page) #page-content {
        padding-top: 0;
        padding-left: 0;
        padding-right: 0;
    }

    body.rk-about .maincontent > .container,
    html.rk-info .maincontent > .container,
    body:has(.rk-about-page) .maincontent > .container,
    body:has(.rk-shipping-page) .maincontent > .container {
        padding-left: 0 !important;
        padding-right: 0 !important;
        width: 100%;
        max-width: none;
    }
}

.rk-order-page .s-delete-button,
.s-order-page .s-delete-button {
    color: var(--rk-muted, #6c757d);
    font-weight: 500;
}

.rk-order-page .s-back-link a,
.s-order-page .s-back-link a {
    color: var(--rk-ink, #212529);
    font-weight: 600;
}

.wa-order-cart-wrapper .wa-button,
.wa-order-form-wrapper .wa-button,
.wa-order-cart-wrapper button.wa-button,
.wa-order-form-wrapper button.wa-button,
.wa-order-form-wrapper .wa-submit-button,
.s-order-page .wa-button,
.s-order-page button[type="submit"],
.s-order-page .button {
    border-radius: 14px !important;
    min-height: 46px !important;
    font-weight: 650 !important;
    box-shadow: 0 3px 12px rgba(248, 185, 13, 0.22);
}

.wa-order-cart-wrapper .wa-button.blue,
.wa-order-form-wrapper .wa-button.blue,
.wa-order-form-wrapper .wa-button.green,
.wa-order-cart-wrapper .wa-button.green,
.wa-order-form-wrapper .wa-submit-button,
.s-order-page .wa-button.blue,
.s-order-page .wa-button.green,
.s-order-page button.wa-button,
.s-order-page .button:not(.gray):not(.bg-gray) {
    background: var(--rk-accent, #f8b90d) !important;
    border-color: var(--rk-accent, #f8b90d) !important;
    color: var(--rk-btn-text, #212529) !important;
}

.wa-order-cart-wrapper .wa-button.blue:hover,
.wa-order-form-wrapper .wa-button.blue:hover,
.wa-order-form-wrapper .wa-button.green:hover,
.wa-order-form-wrapper .wa-submit-button:hover {
    background: var(--rk-accent-hover, #e0a60b) !important;
    border-color: var(--rk-accent-hover, #e0a60b) !important;
    color: var(--rk-btn-text, #212529) !important;
}

.wa-order-form-wrapper .wa-field {
    border-radius: 14px;
}

.wa-order-form-wrapper .wa-name,
.wa-order-form-wrapper .wa-header,
.wa-order-cart-wrapper .wa-name a {
    color: var(--rk-ink, #212529) !important;
}

.wa-order-cart-wrapper .wa-quantity-box,
.wa-order-cart-wrapper .wa-product-quantity {
    border-radius: 12px;
}

.wa-order-cart-wrapper .wa-product {
    border-bottom: 1px solid var(--rk-line, rgba(47, 38, 31, 0.07));
    padding-bottom: 1rem;
    margin-bottom: 1rem;
}

.wa-order-cart-wrapper .wa-price-total,
.wa-order-cart-wrapper .js-price {
    font-weight: 750;
    color: var(--rk-ink, #212529);
}

.rk-cart-empty .s-description {
    color: var(--rk-muted, #6c757d);
    font-size: 1.05rem;
}

.rk-cart-empty .rk-btn--primary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 0 1.5rem;
    border-radius: 14px;
    background: var(--rk-accent, #f8b90d);
    color: var(--rk-btn-text, #212529);
    font-weight: 650;
    text-decoration: none;
    box-shadow: 0 3px 12px rgba(248, 185, 13, 0.22);
}

.rk-cart-empty .rk-btn--primary:hover {
    background: var(--rk-accent-hover, #e0a60b);
}

/* ============ Информационные страницы ============ */
.rk-info-page {
    max-width: 820px;
    margin: 0 auto 2.5rem;
    padding: 0.5rem 0 1rem;
}

.rk-info-page__title {
    margin: 0 0 1.25rem;
    font-size: clamp(1.55rem, 2.6vw, 2rem);
    font-weight: 750;
    letter-spacing: -0.02em;
    color: var(--rk-ink, #212529);
}

.rk-info-page__sublinks {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    list-style: none;
    margin: 0 0 1.35rem;
    padding: 0;
}

.rk-info-page__sublinks a {
    display: inline-flex;
    align-items: center;
    min-height: 38px;
    padding: 0.35rem 0.95rem;
    border-radius: 14px;
    background: #faf7f2;
    border: 1px solid rgba(47, 38, 31, 0.08);
    color: #5c5348;
    text-decoration: none;
    font-weight: 550;
    font-size: 0.9rem;
}

.rk-info-page__sublinks a:hover {
    border-color: var(--rk-accent, #f8b90d);
    color: var(--rk-ink, #212529);
}

.rk-info-page__content,
.rk-info-page__content .rk-page-card {
    background: var(--rk-white, #ffffff);
    border: 1px solid var(--rk-line, rgba(47, 38, 31, 0.07));
    border-radius: 18px;
    padding: 1.35rem 1.45rem 1.5rem;
    box-shadow: 0 8px 24px rgba(40, 36, 30, 0.04);
    color: #5a524a;
    font-size: 0.98rem;
    line-height: 1.65;
}

.rk-info-page__content p {
    margin: 0 0 0.95rem;
}

.rk-info-page__content a {
    color: var(--rk-ink, #212529);
    font-weight: 600;
}

/* ============ О компании: вкладки + свайп ============ */
body.rk-about .maincontent > .container,
html.rk-info .maincontent > .container,
body:has(.rk-about-page) .maincontent > .container,
body:has(.rk-shipping-page) .maincontent > .container {
    --container-max-width: 1240px;
    max-width: 1240px;
}

.rk-about-page {
    width: 100%;
    max-width: none;
    margin: 0 auto 2rem;
    padding: 0;
}

.rk-about-page__card {
    background: var(--rk-white, #ffffff);
    border: 1px solid var(--rk-line, rgba(47, 38, 31, 0.07));
    border-radius: 18px;
    box-shadow: 0 10px 32px rgba(40, 36, 30, 0.05);
    overflow: hidden;
}

.rk-about-nav {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.4rem;
    padding: 0.7rem 0.75rem;
    border-bottom: 1px solid var(--rk-line, rgba(47, 38, 31, 0.07));
    background: #faf8f5;
}

.rk-about-nav__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: 0.4rem 0.55rem;
    border-radius: 12px;
    border: 1px solid rgba(47, 38, 31, 0.08);
    background: #fff;
    color: #5c5348;
    text-decoration: none;
    font-weight: 650;
    font-size: 0.88rem;
    line-height: 1.2;
    text-align: center;
    min-width: 0;
    transition: background .2s ease, border-color .2s ease, color .2s ease, box-shadow .2s ease;
}

.rk-about-nav__full {
    display: none;
}

.rk-about-nav__short {
    display: inline;
}

.rk-about-nav__btn:hover {
    border-color: var(--rk-accent, #f8b90d);
    color: var(--rk-ink, #212529);
}

.rk-about-nav__btn.is-active {
    background: var(--rk-accent, #f8b90d);
    border-color: var(--rk-accent, #f8b90d);
    color: var(--rk-btn-text, #212529);
    box-shadow: 0 3px 10px rgba(248, 185, 13, 0.28);
}

.rk-about-stage {
    position: relative;
    perspective: 1400px;
    overflow: hidden;
}

.rk-about-viewport {
    height: clamp(300px, calc(100dvh - var(--rk-header-h, 72px) - var(--rk-about-nav-h, 70px) - 5.5rem), 640px);
    overflow: hidden;
    touch-action: pan-y;
    overscroll-behavior: contain;
}

.rk-about-track {
    display: flex;
    align-items: stretch;
    height: 100%;
    transition: transform 0.48s cubic-bezier(.22, .82, .28, 1);
    will-change: transform;
}

.rk-about-track.is-dragging {
    transition: none;
}

.rk-about-panel {
    flex: 0 0 100%;
    width: 100%;
    min-width: 0;
    min-height: 0;
    height: 100%;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
    touch-action: pan-y;
    padding: 1.15rem 1.15rem 1.4rem;
    color: #5a524a;
    font-size: 1.02rem;
    line-height: 1.7;
    scrollbar-width: thin;
    scrollbar-color: #cfc6bb transparent;
}

.rk-about-track {
    display: flex;
    align-items: stretch;
    height: 100%;
    transition: transform 0.48s cubic-bezier(.22, .82, .28, 1);
    will-change: transform;
}

.rk-about-track.is-dragging {
    transition: none;
}

.rk-about-panel {
    flex: 0 0 100%;
    width: 100%;
    min-width: 0;
    min-height: 0;
    height: 100%;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
    touch-action: pan-y;
    padding: 1.15rem 1.15rem 1.4rem;
    color: #5a524a;
    font-size: 1.02rem;
    line-height: 1.7;
    scrollbar-width: thin;
    scrollbar-color: #cfc6bb transparent;
}

.rk-about-panel::-webkit-scrollbar {
    width: 8px;
}

.rk-about-panel::-webkit-scrollbar-track {
    background: transparent;
}

.rk-about-panel::-webkit-scrollbar-thumb {
    background: #d4ccc3;
    border-radius: 8px;
}

.rk-about-panel::-webkit-scrollbar-thumb:hover {
    background: #c0b6aa;
}

.rk-about-panel__title {
    margin: 0 0 0.85rem;
    font-size: clamp(1.2rem, 2vw, 1.45rem);
    font-weight: 750;
    letter-spacing: -0.02em;
    color: var(--rk-ink, #212529);
    line-height: 1.25;
}

.rk-about-panel__body > *:first-child {
    margin-top: 0;
}

.rk-about-panel__body > *:last-child {
    margin-bottom: 0;
}

.rk-about-panel__body h1,
.rk-about-panel__body h2,
.rk-about-panel__body h3,
.rk-about-panel__body h4 {
    color: var(--rk-ink, #212529);
    font-weight: 700;
    letter-spacing: -0.02em;
    line-height: 1.3;
    margin: 1.15rem 0 0.5rem;
}

.rk-about-panel__body h1 { font-size: 1.2rem; }
.rk-about-panel__body h2 { font-size: 1.12rem; }
.rk-about-panel__body h3,
.rk-about-panel__body h4 { font-size: 1.02rem; }

.rk-about-panel__body p {
    margin: 0 0 0.9rem;
}

.rk-about-panel__body ul,
.rk-about-panel__body ol {
    margin: 0 0 1rem;
    padding-left: 1.2rem;
}

.rk-about-panel__body li {
    margin: 0 0 0.35rem;
}

.rk-about-panel__body a {
    color: var(--rk-ink, #212529);
    font-weight: 650;
}

.rk-about-panel__body table {
    width: 100%;
    border-collapse: collapse;
    margin: 0 0 1rem;
    font-size: 0.95rem;
}

.rk-about-panel__body th,
.rk-about-panel__body td {
    border-bottom: 1px solid rgba(47, 38, 31, 0.08);
    padding: 0.55rem 0.4rem;
    text-align: left;
    vertical-align: top;
}

@media (max-width: 700px) {
    .rk-about-page {
        margin: 0 0 1.25rem;
    }

    .rk-about-page__card {
        border-radius: 0;
        border-left: 0;
        border-right: 0;
        border-top: 0;
        box-shadow: none;
    }

    .rk-about-nav {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0.4rem;
        padding: 0.7rem 0.75rem 0.65rem;
    }

    .rk-about-nav__btn {
        min-height: 42px;
        padding: 0.45rem 0.55rem;
        font-size: 0.86rem;
        border-radius: 12px;
    }

    .rk-about-panel {
        padding: 0.95rem 0.95rem 1.25rem;
        font-size: 0.97rem;
    }

    .rk-about-viewport {
        height: calc(100dvh - var(--rk-header-h, 60px) - var(--rk-about-nav-h, 113px) - 1rem);
        min-height: 260px;
        max-height: none;
    }
}

@media (min-width: 901px) {
    .rk-about-nav {
        padding: 0.75rem 1rem;
        gap: 0.45rem;
    }

    .rk-about-nav__full {
        display: inline;
    }

    .rk-about-nav__short {
        display: none;
    }

    .rk-about-nav__btn {
        min-height: 42px;
        padding: 0.45rem 0.7rem;
        font-size: 0.92rem;
        white-space: nowrap;
    }

    .rk-about-panel {
        padding: 1.45rem 1.7rem 1.7rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .rk-about-track,
    .rk-about-viewport,
    .rk-about-nav__btn {
        transition: none !important;
        animation: none !important;
    }
}

/* ============ Доставка ============ */
.rk-shipping-page {
    width: 100%;
    max-width: none;
    margin: 0 auto 1.5rem;
    padding: 0;
}

body:has(.rk-shipping-page) .maincontent > .container {
    padding-bottom: 0 !important;
}

body:has(.rk-shipping-page) footer.globalfooter {
    margin-top: 0;
}

.rk-shipping-page__card {
    background: var(--rk-white, #ffffff);
    border: 1px solid var(--rk-line, rgba(47, 38, 31, 0.07));
    border-radius: 18px;
    box-shadow: 0 10px 32px rgba(40, 36, 30, 0.05);
    overflow: hidden;
}

.rk-shipping-page__visual {
    display: flex;
    justify-content: center;
    align-items: flex-end;
    position: relative;
    z-index: 0;
    margin: 0;
    padding: 0;
    background: #dce9d4;
}

.rk-shipping-page__visual::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 46%;
    min-height: 5.5rem;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.55) 42%, #ffffff 88%);
    pointer-events: none;
    z-index: 1;
}

.rk-shipping-page__visual img {
    display: block;
    width: 100%;
    max-width: none;
    height: auto;
    border-radius: 0;
    box-shadow: none;
}

.rk-shipping-page__body {
    position: relative;
    z-index: 1;
    margin-top: -3rem;
    padding: 0.85rem 1.7rem 1.8rem;
    border-radius: 0;
    background: var(--rk-white, #ffffff);
    color: var(--rk-ink, #212529);
    font-size: 1.02rem;
    line-height: 1.6;
}

.rk-shipping-page__title {
    margin: 0 0 0.7rem;
    font-size: clamp(1.45rem, 2.4vw, 1.9rem);
    font-weight: 750;
    letter-spacing: -0.02em;
}

.rk-shipping-page__lead {
    margin: 0 0 1.15rem;
    font-size: 1.06rem;
    color: #5c5348;
}

.rk-shipping-page__price {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    justify-content: space-between;
    gap: 0.35rem 1rem;
    margin: 0 0 1.4rem;
    padding: 0.95rem 1.15rem;
    border-radius: 14px;
    background: rgba(248, 185, 13, 0.16);
    border: 1px solid rgba(248, 185, 13, 0.42);
}

.rk-shipping-page__price-kicker {
    font-weight: 650;
    color: #5c5348;
}

.rk-shipping-page__price-value {
    font-size: 1.45rem;
    font-weight: 750;
    color: var(--rk-ink, #212529);
    letter-spacing: -0.02em;
}

.rk-shipping-page__body h2 {
    margin: 1.35rem 0 0.55rem;
    font-size: 1.12rem;
    font-weight: 700;
}

.rk-shipping-page__body ul,
.rk-shipping-page__body ol {
    margin: 0 0 0.85rem;
    padding-left: 1.2rem;
}

.rk-shipping-page__body li {
    margin: 0 0 0.4rem;
}

.rk-shipping-page__steps {
    padding-left: 1.25rem;
}

.rk-shipping-page__note {
    margin: 1.1rem 0 0;
    color: #6c757d;
    font-size: 0.95rem;
}

.rk-shipping-page__body a {
    color: var(--rk-ink, #212529);
    font-weight: 600;
}

@media (max-width: 700px) {
    .rk-shipping-page {
        margin: 0;
    }

    .rk-shipping-page__card {
        border-radius: 0;
        border-left: 0;
        border-right: 0;
        border-top: 0;
        box-shadow: none;
    }

    .rk-shipping-page__visual::after {
        min-height: 4.25rem;
    }

    .rk-shipping-page__body {
        margin-top: -2.35rem;
        padding: 0.7rem 0.95rem 1.35rem;
        border-radius: 0;
        font-size: 0.97rem;
    }

    .rk-shipping-page__price {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.15rem;
    }

    .rk-shipping-page__price-value {
        font-size: 1.3rem;
    }
}

/* ============ Диалог «Добавить» (?cart=1) ============ */
#dialog .dialog-background {
    background: rgba(40, 36, 30, 0.48) !important;
    opacity: 1 !important;
    z-index: 1050 !important;
}

#dialog .dialog-window .cart,
.dialog-window .cart {
    background: var(--rk-white, #ffffff) !important;
    border-radius: 22px !important;
    box-shadow: 0 22px 56px rgba(40, 36, 30, 0.28) !important;
    padding: 1rem 1.15rem 1rem !important;
    border: 1px solid rgba(47, 38, 31, 0.12);
    width: min(760px, calc(100vw - 2rem)) !important;
    max-height: min(86vh, 680px) !important;
    overflow: hidden !important;
    display: flex !important;
    flex-direction: column;
    text-align: left;
    z-index: 1051 !important;
}

#dialog .dialog-close,
.dialog-window .dialog-close {
    position: absolute;
    top: 0.55rem;
    right: 0.7rem;
    z-index: 3;
    float: none !important;
    margin: 0 !important;
    width: 36px;
    height: 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #6f675f !important;
    font-weight: 400;
    font-size: 1.7rem !important;
    line-height: 1;
    text-decoration: none;
    border-radius: 50%;
}

#dialog .dialog-close:hover,
.dialog-window .dialog-close:hover {
    background: rgba(33, 37, 41, 0.06);
    color: #212529 !important;
}

#cart-form-dialog {
    display: flex;
    flex-direction: column;
    min-height: 0;
    overflow: auto;
    padding: 0 !important;
    scrollbar-width: thin;
}

#cart-form-dialog h3,
#dialog .cart > h3,
#cart-form-dialog .rk-quickview__title {
    color: var(--rk-ink, #212529);
    font-weight: 750;
    letter-spacing: -0.02em;
    font-size: 1.2rem !important;
    line-height: 1.25;
    margin: 0 2.4rem 0.75rem 0 !important;
}

#cart-form-dialog .rk-quickview {
    display: grid;
    grid-template-columns: minmax(240px, 280px) minmax(0, 1fr);
    gap: 0.85rem 1.25rem;
    align-items: start;
    min-height: 0;
}

#cart-form-dialog .rk-quickview__media {
    position: relative;
    min-width: 0;
}

#cart-form-dialog .rk-quickview-gallery,
#cart-form-dialog .rk-quickview__media > img,
#cart-form-dialog .rk-quickview__media > #product-image {
    display: block;
    width: 100%;
    margin: 0 auto;
    background: transparent;
    border-radius: 16px;
    overflow: hidden;
}

#cart-form-dialog .rk-quickview-gallery {
    display: flex;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    touch-action: pan-x;
}

#cart-form-dialog .rk-quickview-gallery::-webkit-scrollbar {
    display: none;
}

#cart-form-dialog .rk-quickview-gallery__slide {
    flex: 0 0 100%;
    width: 100%;
    scroll-snap-align: center;
    scroll-snap-stop: always;
    display: flex;
    align-items: stretch;
    justify-content: center;
}

#cart-form-dialog .rk-quickview-gallery__slide img,
#cart-form-dialog .rk-quickview__media > img,
#cart-form-dialog .rk-quickview__media > #product-image {
    width: 100% !important;
    height: 240px !important;
    max-width: 100% !important;
    object-fit: cover !important;
    object-position: center;
    display: block;
    margin: 0;
    border-radius: 16px;
    background: transparent;
}

#cart-form-dialog .rk-quickview-gallery__nav {
    position: absolute;
    top: calc(50% - 18px);
    width: 32px;
    height: 32px;
    border: none;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.92);
    color: #212529;
    box-shadow: 0 2px 10px rgba(40, 36, 30, 0.16);
    font-size: 1.35rem;
    line-height: 1;
    cursor: pointer;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 0 2px;
}

#cart-form-dialog .rk-quickview-gallery__nav.is-prev { left: 8px; }
#cart-form-dialog .rk-quickview-gallery__nav.is-next { right: 8px; }
#cart-form-dialog .rk-quickview-gallery__nav:disabled {
    opacity: 0.35;
    cursor: default;
}

#cart-form-dialog .rk-quickview-dots {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 10px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0.35rem;
    margin: 0;
    z-index: 2;
}

#cart-form-dialog .rk-quickview-dots__dot {
    width: 7px;
    height: 7px;
    padding: 0;
    border: none;
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.7);
    box-shadow: 0 1px 4px rgba(40, 36, 30, 0.28);
    cursor: pointer;
    transition: width .15s ease, background .15s ease;
}

#cart-form-dialog .rk-quickview-dots__dot.is-active {
    width: 18px;
    background: var(--rk-accent, #f8b90d);
}

#cart-form-dialog .rk-quickview__info {
    min-width: 0;
    display: grid;
    grid-template-columns: auto 1fr;
    column-gap: 0.65rem;
    row-gap: 0.45rem;
    align-items: center;
}

#cart-form-dialog .rk-quickview__info > .wa-mb-16 {
    grid-column: 1;
    margin: 0 !important;
}

#cart-form-dialog .rk-quickview__info > .add2cart.js-top {
    grid-column: 1 / -1;
}

#cart-form-dialog .rk-quickview__info > .wa-mb-16 + .add2cart.js-top {
    grid-column: 2;
}

#cart-form-dialog .rk-quickview__info > .s-product-desc,
#cart-form-dialog .rk-quickview__info > .rk-quickview-more,
#cart-form-dialog .rk-quickview__info > .options,
#cart-form-dialog .rk-quickview__info > .purchase,
#cart-form-dialog .rk-quickview__info > .rk-purchase,
#cart-form-dialog .rk-quickview__info > .skus,
#cart-form-dialog .rk-quickview__info > [itemprop="offers"] {
    grid-column: 1 / -1;
}

#cart-form-dialog .add2cart.js-top {
    margin: 0 !important;
    align-items: baseline;
}

#cart-form-dialog .s-product-desc,
#cart-form-dialog .s-price,
#cart-form-dialog .price {
    text-align: left;
}

#cart-form-dialog .s-price,
#cart-form-dialog .price {
    font-size: 1.45rem !important;
    font-weight: 750;
    line-height: 1.15;
}

#cart-form-dialog .s-product-desc,
#cart-form-dialog .rk-quickview-desc {
    color: #5f5851 !important;
    font-size: 0.86rem !important;
    line-height: 1.4 !important;
    margin: 0 !important;
}

#cart-form-dialog .rk-quickview-desc:not(.is-open) {
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

#cart-form-dialog .rk-quickview-more {
    align-self: flex-start;
    margin: -0.2rem 0 0;
    padding: 0;
    border: none;
    background: none;
    color: #b8860b;
    font-size: 0.82rem;
    font-weight: 650;
    cursor: pointer;
}

#cart-form-dialog .options {
    margin: 0.1rem 0 0;
}

#cart-form-dialog .options .inline-select a {
    min-width: 3.6rem;
    min-height: 36px;
    padding: 0.25rem 0.7rem;
    border-radius: 999px !important;
    font-size: 0.88rem;
}

#cart-form-dialog .options .inline-select a.selected {
    border-color: var(--rk-accent, #f8b90d) !important;
    background: rgba(248, 185, 13, 0.14) !important;
}

#cart-form-dialog .purchase,
#cart-form-dialog .rk-purchase {
    margin-top: auto;
    padding-top: 0.35rem;
    position: sticky;
    bottom: 0;
    background: #fff;
    z-index: 2;
}

#cart-form-dialog .purchase .add2cart {
    display: flex !important;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: nowrap;
    gap: 0.5rem;
    margin-top: 0.35rem;
}

#cart-form-dialog .quantity-wrapper {
    margin: 0 !important;
}

#cart-form-dialog .addtocart-btn,
#cart-form-dialog button[type="submit"].addtocart-btn,
#cart-form-dialog .purchase .add2cart button[type="submit"] {
    flex: 1 1 auto !important;
    width: auto !important;
    min-width: 0 !important;
    height: 44px !important;
    min-height: 44px !important;
    max-height: 44px !important;
    margin: 0 !important;
    padding: 0 1.1rem !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 14px !important;
    background: var(--rk-accent, #f8b90d) !important;
    border: none !important;
    color: var(--rk-btn-text, #212529) !important;
    font-weight: 650 !important;
    line-height: 1 !important;
    box-shadow: 0 3px 12px rgba(248, 185, 13, 0.22) !important;
}

#cart-form-dialog .addtocart-btn:hover,
#cart-form-dialog button[type="submit"].addtocart-btn:hover {
    background: var(--rk-accent-hover, #e0a60b) !important;
    color: var(--rk-btn-text, #212529) !important;
}

#cart-form-dialog .rk-pickup-inline {
    display: inline-flex !important;
}

#cart-form-dialog .rk-pickup-inline .pickup-btn {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
    padding: 0 !important;
    border-radius: 50% !important;
    background: var(--rk-accent, #f8b90d) !important;
    color: transparent !important;
    font-size: 0 !important;
    position: relative;
    overflow: hidden;
    box-shadow: 0 3px 12px rgba(248, 185, 13, 0.22) !important;
}

#cart-form-dialog .rk-pickup-inline .pickup-btn > span {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
}

#cart-form-dialog .rk-pickup-inline .pickup-btn::before {
    content: "";
    position: absolute;
    inset: 0;
    margin: auto;
    width: 22px;
    height: 22px;
    background: var(--rk-btn-text, #212529);
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M4 9.5V20a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1V9.5' stroke='black' stroke-width='1.8' stroke-linecap='round'/%3E%3Cpath d='M3 9.5l2.2-5.2A1 1 0 0 1 6.1 3.8h11.8a1 1 0 0 1 .9.5L21 9.5' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M9.5 21v-6.5h5V21' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M4 9.5V20a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1V9.5' stroke='black' stroke-width='1.8' stroke-linecap='round'/%3E%3Cpath d='M3 9.5l2.2-5.2A1 1 0 0 1 6.1 3.8h11.8a1 1 0 0 1 .9.5L21 9.5' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M9.5 21v-6.5h5V21' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
}

#cart-form-dialog .gotocart-btn,
#cart-form-dialog .rk-nutri,
#cart-form-dialog .stocks {
    display: none !important;
}

#cart-form-dialog .quantity-wrapper .wa-mb-8,
#cart-form-dialog .quantity-wrapper .s-description {
    display: none !important;
}

/* Override brown gradient from default.shop.css inside dialog */
#dialog .add2cart > button[type="submit"],
#dialog .add2cart > .addtocart-btn,
#cart-form-dialog .add2cart > button[type="submit"],
#cart-form-dialog .add2cart > .addtocart-btn {
    background: var(--rk-accent, #f8b90d) !important;
    color: var(--rk-btn-text, #212529) !important;
    border: none !important;
    box-shadow: 0 3px 12px rgba(248, 185, 13, 0.22) !important;
    filter: none !important;
}

@media (max-width: 760px) {
    #dialog .dialog-window .cart,
    .dialog-window .cart {
        top: 50% !important;
        left: 14px !important;
        right: 14px !important;
        bottom: auto !important;
        width: auto !important;
        height: auto !important;
        max-height: calc(100dvh - 28px) !important;
        transform: translateY(-50%);
        border-radius: 22px !important;
        padding: 0.7rem 0.85rem 0.75rem !important;
        box-shadow: 0 18px 48px rgba(40, 36, 30, 0.3) !important;
        border: 1px solid rgba(47, 38, 31, 0.14) !important;
        overflow: hidden !important;
    }

    #dialog .dialog-close,
    .dialog-window .dialog-close {
        top: 0.4rem;
        right: 0.45rem;
        width: 34px;
        height: 34px;
        font-size: 1.65rem !important;
        background: rgba(255, 255, 255, 0.92);
        box-shadow: 0 2px 8px rgba(40, 36, 30, 0.12);
    }

    #cart-form-dialog {
        flex: 0 1 auto;
        overflow: auto;
        max-height: calc(100dvh - 48px);
    }

    #cart-form-dialog .rk-quickview {
        display: flex;
        flex-direction: column;
        gap: 0.55rem;
        flex: 0 1 auto;
        min-height: 0;
    }

    #cart-form-dialog .rk-quickview__title {
        font-size: 1.02rem !important;
        margin: 0 2.2rem 0.35rem 0 !important;
    }

    #cart-form-dialog .rk-quickview-gallery__slide img,
    #cart-form-dialog .rk-quickview__media > img,
    #cart-form-dialog .rk-quickview__media > #product-image {
        height: 176px !important;
        object-fit: cover !important;
    }

    #cart-form-dialog .rk-quickview-gallery__nav {
        display: none;
    }

    #cart-form-dialog .rk-quickview-desc:not(.is-open) {
        -webkit-line-clamp: 2;
    }

    #cart-form-dialog .s-price,
    #cart-form-dialog .price {
        font-size: 1.28rem !important;
    }

    #cart-form-dialog .options .inline-select a {
        min-height: 34px;
        min-width: 3.3rem;
        font-size: 0.84rem;
    }

    #cart-form-dialog .purchase,
    #cart-form-dialog .rk-purchase {
        margin-top: 0.15rem;
        padding: 0.35rem 0 0;
        box-shadow: none;
        position: static;
    }

    #cart-form-dialog .purchase .add2cart {
        width: 100%;
    }

    #cart-form-dialog .addtocart-btn,
    #cart-form-dialog button[type="submit"].addtocart-btn {
        flex: 1 1 auto !important;
    }
}

/* ============ Страница отзывов ============ */
.rk-reviews-page h1 {
    font-size: clamp(1.5rem, 2.8vw, 2rem);
    letter-spacing: -0.02em;
    color: var(--rk-ink, #212529);
}

/* Отзывы — одна колонка, ограниченная ширина для удобного чтения */
.rk-reviews-page .rk-reviews-main {
    max-width: 780px;
}

.rk-reviews-page .reviews-count-text {
    color: var(--rk-ink, #212529);
    margin: 1.5rem 0 0.5rem;
}

/* Кнопка «Написать отзыв» */
.rk-reviews-page .write-review {
    margin: 1.25rem 0 1rem;
}

.rk-reviews-page .write-review .button {
    display: inline-flex;
    align-items: center;
    min-height: 46px;
    padding: 0.55rem 1.5rem;
    border-radius: 14px !important;
    background: var(--rk-accent, #f8b90d) !important;
    color: var(--rk-btn-text, #212529) !important;
    font-weight: 650;
    text-decoration: none;
}

.rk-reviews-page .write-review .button:hover {
    background: var(--rk-accent-hover, #e0a60b) !important;
}

/* Форма отзыва — светлая карточка */
.rk-reviews-page .review-form {
    background: var(--rk-white, #ffffff);
    border: 1px solid var(--rk-line, rgba(47, 38, 31, 0.07));
    border-radius: 18px;
    padding: 1.5rem 1.5rem 1.65rem;
    margin-bottom: 1.75rem;
    box-shadow: 0 8px 24px rgba(40, 36, 30, 0.05);
}

.rk-reviews-page .review-field {
    margin-bottom: 1.05rem;
}

.rk-reviews-page .review-field label {
    display: block;
    margin-bottom: 0.35rem;
    font-weight: 600;
    font-size: 0.92rem;
    color: var(--rk-ink, #212529);
}

.rk-reviews-page .review-field input[type="text"],
.rk-reviews-page .review-field textarea {
    width: 100%;
    box-sizing: border-box;
    min-height: 46px;
    padding: 0.6rem 0.95rem;
    border-radius: 12px;
    border: 1px solid var(--rk-line, rgba(47, 38, 31, 0.12));
    background: var(--rk-surface, #fafafa);
    color: var(--rk-ink, #212529);
    font: inherit;
}

.rk-reviews-page .review-field textarea {
    min-height: 120px;
    resize: vertical;
}

.rk-reviews-page .review-field input:focus,
.rk-reviews-page .review-field textarea:focus {
    border-color: var(--rk-accent, #f8b90d);
    outline: none;
    box-shadow: 0 0 0 3px var(--rk-accent-soft, rgba(248, 185, 13, 0.14));
    background: var(--rk-white, #ffffff);
}

.rk-reviews-page .review-submit {
    display: flex;
    align-items: center;
    gap: 0.85rem;
    flex-wrap: wrap;
    margin-top: 1.35rem;
}

.rk-reviews-page .review-submit input[type="submit"] {
    min-height: 48px;
    padding: 0.6rem 1.8rem;
    border-radius: 14px !important;
    background: var(--rk-accent, #f8b90d) !important;
    border: none;
    color: var(--rk-btn-text, #212529) !important;
    font-weight: 650;
    font-size: 1rem;
    cursor: pointer;
    transition: background .18s ease;
}

.rk-reviews-page .review-submit input[type="submit"]:hover {
    background: var(--rk-accent-hover, #e0a60b) !important;
}

/* Сообщение «зарегистрируйтесь или войдите» */
.rk-reviews-page .review-form-fields > .review-field:only-child {
    margin: 0;
    padding: 0.85rem 1.1rem;
    border-radius: 12px;
    background: var(--rk-accent-soft, rgba(248, 185, 13, 0.12));
    color: var(--rk-ink, #212529);
    line-height: 1.5;
}

.rk-reviews-page .review-form-fields > .review-field:only-child a {
    color: var(--rk-accent, #f8b90d);
    font-weight: 600;
}

/* Список отзывов */
.rk-reviews-page .reviews-branch {
    list-style: none;
    padding: 0;
}

.rk-reviews-page .s-review-wrapper {
    background: var(--rk-white, #ffffff);
    border: 1px solid var(--rk-line, rgba(47, 38, 31, 0.07));
    border-radius: 16px;
    padding: 1.15rem 1.25rem;
    margin-bottom: 1rem;
}

@media (max-width: 900px) {
    .rk-reviews-page .review-form {
        padding: 1.1rem 1rem 1.25rem;
    }
}

/* ============ Категория: панель инструментов и фильтры ============ */
.rk-category-content .sorting.wa-mb-32 {
    margin-bottom: 0 !important;
}

.rk-category-content .sorting-dropdown__toggle {
    min-height: 42px;
    padding: 0.45rem 1.15rem;
    border-radius: 14px;
    background: var(--rk-white, #ffffff);
    border: 1px solid var(--rk-line, rgba(47, 38, 31, 0.09));
    color: var(--rk-ink, #212529);
    font-weight: 600;
    box-shadow: 0 2px 8px rgba(40, 36, 30, 0.05);
}

.rk-category-content > .wa-flex.space-2 {
    margin-bottom: 0;
}

/* ============ Баннеры/акции на главной — full-bleed + кнопки как ProBulion ============ */
.rk-promos,
.rk-promos.rk-promos--bleed {
    --rk-promo-panel: rgba(255, 253, 245, 0.94);
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0;
}

.rk-promos .s-slider-section {
    position: relative;
    margin: 0;
    border-radius: 0 !important;
    overflow: hidden;
    box-shadow: none;
    border: none;
    background: var(--rk-promo-panel);
}

.rk-promos .bx-wrapper,
.rk-promos .bx-viewport,
.rk-promos .s-slide-wrapper,
.rk-promos .s-slider-block {
    border-radius: 0 !important;
}

.rk-promos .bx-wrapper {
    position: relative;
    margin: 0 !important;
    border: none !important;
    box-shadow: none !important;
    background: var(--rk-promo-panel) !important;
}

.rk-promos .bx-viewport {
    box-shadow: none !important;
    border: none !important;
}

.rk-promos .s-slider-section.is-promocards .s-slider-block,
.rk-promos .bx-viewport {
    height: clamp(380px, 46vh, 500px) !important;
}

.rk-promos .s-slide-wrapper {
    display: flex !important;
    flex-direction: row;
    align-items: stretch;
    height: 100%;
    background: var(--rk-promo-panel) !important;
    background-image: none !important;
}

.rk-promos .s-slide-wrapper::before,
.rk-promos .s-slide-wrapper::after {
    content: none;
    display: none;
}

.rk-promos .s-slide-visual {
    position: relative;
    z-index: 1;
    flex: 1 1 56%;
    min-width: 0;
    height: 100%;
    background-color: var(--rk-promo-panel);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}

.rk-promos .s-slide-visual::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background: linear-gradient(90deg,
        var(--rk-promo-panel) 0,
        rgba(255, 253, 245, 0.45) 18px,
        rgba(255, 253, 245, 0) 56px);
}

.rk-promos .s-slide-block {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    text-align: left;
    box-sizing: border-box;
    flex: 0 0 44%;
    width: 44%;
    max-width: none;
    height: 100%;
    margin: 0;
    padding: 2.5rem 1.75rem 2.5rem max(1.5rem, calc((100vw - min(1240px, calc(100vw - 1.5rem))) / 2)) !important;
    color: var(--rk-ink, #212529);
}

.rk-promos .s-header,
.rk-promos .s-header.wa-pt-16 {
    margin: 0 0 0.75rem !important;
    padding: 0 !important;
    width: 100%;
    max-width: 22rem;
    font-size: clamp(1.55rem, 2.8vw, 2.35rem) !important;
    font-weight: 750 !important;
    line-height: 1.15 !important;
    letter-spacing: -0.02em;
    text-align: left !important;
    text-transform: uppercase;
    color: var(--rk-ink, #212529) !important;
}

.rk-promos .s-description,
.rk-promos .s-description.wa-mt-16 {
    display: block !important;
    visibility: visible !important;
    height: auto !important;
    overflow: visible !important;
    margin: 0 0 1.35rem !important;
    padding: 0 !important;
    max-width: 22rem;
    width: 100% !important;
    font-size: 1.02rem !important;
    line-height: 1.5 !important;
    text-align: left !important;
    color: var(--rk-ink, #212529) !important;
    opacity: 0.78;
}

.rk-promos .s-slide-actions {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 0.65rem;
    flex-wrap: wrap;
    margin-top: 0.15rem;
    min-height: 48px;
}

.rk-promos .s-slide-button.button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-top: 0;
    height: 48px;
    min-height: 48px;
    padding: 0 1.55rem !important;
    line-height: 1 !important;
    border-radius: 14px !important;
    background: var(--rk-accent, #f8b90d) !important;
    color: var(--rk-btn-text, #212529) !important;
    font-weight: 650 !important;
    border: none !important;
    box-shadow: 0 4px 16px rgba(248, 185, 13, 0.28);
    box-sizing: border-box;
}

.rk-promos .s-slide-button.button:hover {
    background: var(--rk-accent-hover, #e0a60b) !important;
    color: var(--rk-btn-text, #212529) !important;
    filter: none !important;
    transform: none !important;
}

/* Скрываем стандартные controls bxSlider — свои кнопки */
.rk-promos .bx-controls,
.rk-promos .bx-pager,
.rk-promos .bx-controls-direction {
    display: none !important;
}

/* Стрелки в одном ряду с «Подробнее», справа от неё */
.rk-promos .rk-promo-nav {
    position: static;
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    z-index: 2;
}

.rk-promos .rk-promo-nav__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    margin: 0;
    padding: 0;
    border: none;
    border-radius: 14px;
    /* Чуть темнее «Подробнее» в покое */
    background: var(--rk-accent-hover, #e0a60b);
    color: var(--rk-btn-text, #212529);
    box-shadow: 0 4px 14px rgba(224, 166, 11, 0.28);
    cursor: pointer;
    transition: background .15s ease, box-shadow .15s ease;
}

.rk-promos .rk-promo-nav__btn:hover {
    /* Как «Подробнее» */
    background: var(--rk-accent, #f8b90d);
    color: var(--rk-btn-text, #212529);
    box-shadow: 0 4px 16px rgba(248, 185, 13, 0.32);
    transform: none !important;
    filter: none !important;
}

.rk-promos .rk-promo-nav__btn:active {
    transform: scale(0.96) !important;
}

@media (max-width: 900px) {
    .rk-promos .s-slide-block {
        flex-basis: 46%;
        width: 46%;
        padding: 2rem 1.15rem 2rem 1.25rem !important;
    }

    .rk-promos .s-slider-section.is-promocards .s-slider-block,
    .rk-promos .bx-viewport {
        height: clamp(340px, 44vh, 440px) !important;
    }
}

@media (max-width: 768px) {
    .rk-promos {
        margin: 0;
        padding: 0;
    }

    .rk-promos .s-slider-section {
        border-radius: 0 !important;
    }

    .rk-promos .s-slider-section.is-promocards .s-slider-block,
    .rk-promos .s-slider-section .s-slider-block,
    .rk-promos .bx-viewport {
        height: auto !important;
        min-height: 0 !important;
    }

    .rk-promos .s-slide-wrapper {
        flex-direction: column-reverse;
        height: auto !important;
    }

    .rk-promos .s-slide-visual {
        flex: 0 0 auto;
        width: 100%;
        height: 220px;
        min-height: 220px;
    }

    .rk-promos .s-slide-visual::before {
        background: linear-gradient(180deg,
            rgba(255, 253, 245, 0) calc(100% - 48px),
            var(--rk-promo-panel) 100%);
    }

    .rk-promos .s-slide-block {
        flex: 0 0 auto;
        width: 100%;
        height: auto;
        padding: 1.15rem 1.15rem 1.4rem !important;
    }

    .rk-promos .s-header {
        font-size: 1.28rem !important;
        margin-bottom: 0.45rem !important;
        text-transform: none;
        max-width: none;
        text-align: left !important;
    }

    .rk-promos .s-description,
    .rk-promos .s-description.wa-mt-16 {
        display: block !important;
        visibility: visible !important;
        height: auto !important;
        margin: 0 0 1rem !important;
        max-width: none;
        font-size: 0.95rem !important;
    }

    .rk-promos .s-slide-actions {
        width: 100%;
        justify-content: flex-start;
        gap: 0.5rem;
    }

    .rk-promos .s-slide-button.button {
        height: 44px;
        min-height: 44px;
        padding: 0 1.2rem !important;
        font-size: 0.9rem !important;
        line-height: 1 !important;
        flex: 0 0 auto;
    }

    .rk-promos .rk-promo-nav {
        margin-left: 0;
    }

    .rk-promos .rk-promo-nav__btn {
        width: 44px;
        height: 44px;
    }
}

/* ============ Плавающая корзина + toast добавления ============ */
.rk-float-cart {
    transition: transform .2s ease;
}

.rk-float-cart.is-bump {
    transform: scale(1.12);
}

.rk-cart-toast {
    position: fixed;
    z-index: 10050;
    left: 50%;
    bottom: calc(1.1rem + env(safe-area-inset-bottom, 0px));
    transform: translateX(-50%) translateY(120%);
    display: flex;
    align-items: center;
    gap: 0.7rem;
    min-width: min(320px, calc(100vw - 1.5rem));
    max-width: calc(100vw - 1.5rem);
    padding: 0.75rem 0.95rem;
    border-radius: 14px;
    background: #212529;
    color: #fff;
    box-shadow: 0 12px 32px rgba(40, 36, 30, 0.28);
    opacity: 0;
    pointer-events: none;
    transition: transform .28s cubic-bezier(.2, .9, .2, 1), opacity .22s ease;
}

.rk-cart-toast.is-visible {
    opacity: 1;
    pointer-events: auto;
    transform: translateX(-50%) translateY(0);
}

.rk-cart-toast__icon {
    flex: 0 0 auto;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--rk-accent, #f8b90d);
    color: #212529;
    font-weight: 800;
    font-size: 0.95rem;
    line-height: 1;
}

.rk-cart-toast__body {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
    min-width: 0;
}

.rk-cart-toast__title {
    font-weight: 650;
    font-size: 0.95rem;
    line-height: 1.2;
}

.rk-cart-toast__link {
    color: var(--rk-accent, #f8b90d) !important;
    font-size: 0.82rem;
    font-weight: 600;
    text-decoration: none !important;
}

.rk-cart-toast__link:hover {
    text-decoration: underline !important;
}

header .cart-summary.rk-cart-pulse,
#cart > a.cart-summary.rk-cart-pulse {
    animation: rk-cart-pulse 0.65s ease;
}

@keyframes rk-cart-pulse {
    0% { transform: scale(1); }
    35% { transform: scale(1.08); box-shadow: 0 0 0 0 rgba(248, 185, 13, 0.55); }
    70% { box-shadow: 0 0 0 10px rgba(248, 185, 13, 0); }
    100% { transform: scale(1); box-shadow: none; }
}

.addtocart-btn.rk-add-ok,
button.rk-add-ok[type="submit"] {
    background: #2f9e44 !important;
    border-color: #2f9e44 !important;
    color: #fff !important;
}

@media (min-width: 901px) {
    .rk-cart-toast {
        left: auto;
        right: 1.25rem;
        bottom: 1.35rem;
        transform: translateY(120%);
    }
    .rk-cart-toast.is-visible {
        transform: translateY(0);
    }
}

@media (max-width: 900px) {
    body:has(#js-product-page) .rk-cart-toast {
        bottom: calc(78px + env(safe-area-inset-bottom, 0px));
    }
}

/* ============ Мобильная адаптация ============ */
@media (max-width: 900px) {
    .rk-menu {
        display: block;
        padding: 1.1rem 0 2.25rem;
    }

    /* Лента категорий: вне потока, без сдвига контента при появлении */
    .rk-menu[data-rk-menu] > .rk-menu__aside {
        display: block;
        position: relative;
        height: 0;
        margin: 0;
        overflow: visible;
        pointer-events: none;
        z-index: 90;
    }

    .rk-menu[data-rk-menu] > .rk-menu__aside.is-pinned {
        pointer-events: none;
    }

    .rk-menu-nav {
        position: fixed;
        left: 0;
        right: 0;
        top: var(--rk-header-h, 56px);
        z-index: 90;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        background: rgba(255, 255, 255, 0.96);
        backdrop-filter: blur(10px);
        -webkit-backdrop-filter: blur(10px);
        margin: 0;
        padding: 0.5rem 0;
        border-bottom: 1px solid var(--rk-line, rgba(47, 38, 31, 0.09));
        transform: translate3d(0, -12px, 0);
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        will-change: transform, opacity;
        transition:
            transform .42s cubic-bezier(0.22, 1, 0.36, 1),
            opacity .32s ease,
            visibility 0s linear .42s;
    }

    .rk-menu[data-rk-menu] > .rk-menu__aside.is-pinned .rk-menu-nav {
        transform: translate3d(0, 0, 0);
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        transition:
            transform .42s cubic-bezier(0.22, 1, 0.36, 1),
            opacity .28s ease,
            visibility 0s linear 0s;
    }

    @media (prefers-reduced-motion: reduce) {
        .rk-menu-nav,
        .rk-menu[data-rk-menu] > .rk-menu__aside.is-pinned .rk-menu-nav {
            transition: opacity .2s ease, visibility 0s linear 0s;
            transform: none;
        }
    }

    .rk-menu-nav::-webkit-scrollbar {
        display: none;
    }

    .rk-menu-nav__list {
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        gap: 0.4rem;
        max-height: none;
        overflow: visible;
        padding: 0 0.75rem;
        width: max-content;
    }

    .rk-menu-nav__link {
        white-space: nowrap;
        padding: 0.5rem 1rem;
        min-height: 40px;
        display: inline-flex;
        align-items: center;
        border-radius: 14px;
        background: var(--rk-accent-soft, rgba(248, 185, 13, 0.16));
        border: 1px solid rgba(248, 185, 13, 0.38);
        font-size: 14px;
        color: var(--rk-ink, #212529);
        font-weight: 650;
        box-shadow: 0 2px 8px rgba(248, 185, 13, 0.12);
    }

    .rk-menu-nav__link.is-active {
        background: var(--rk-accent, #f8b90d);
        color: var(--rk-btn-text, #212529);
        font-weight: 750;
        border-color: var(--rk-accent, #f8b90d);
        box-shadow: 0 4px 14px rgba(248, 185, 13, 0.32);
    }

    /* Подкатегории — плоскими чипсами в той же ленте
       (display:contents «растворяет» li и вложенный ul во flex-ряд) */
    .rk-menu-nav__item,
    .rk-menu-nav__sub,
    .rk-menu-nav__sub li {
        display: contents;
    }

    .rk-menu-nav__link--sub {
        font-size: 13.5px;
        opacity: 0.92;
    }

    .rk-menu-section {
        scroll-margin-top: calc(var(--rk-header-h, 56px) + 12px);
    }

    html.rk-menu-nav-pinned .rk-menu-section {
        scroll-margin-top: calc(var(--rk-header-h, 56px) + 66px);
    }

    /* Герой компактнее */
    .rk-hero__inner {
        padding: 1.4rem 0 1.5rem;
        gap: 1rem;
    }

    .rk-hero__chips {
        width: 100%;
        gap: 0.5rem;
    }

    .rk-hero__chip {
        flex: 1 1 calc(50% - 0.5rem);
        min-width: 0;
        padding: 0.6rem 0.75rem;
    }

    /* Категория: сайдбар скрыт и на мобиле (навигация — через шапку) */
    .rk-category-layout {
        display: block;
    }

    .rk-category-layout > .rk-menu__aside {
        display: none !important;
    }

    /* Карточки: кнопки чуть крупнее, все одной высоты */
    ul.product-list.thumbs > li.rk-card,
    ul.thumbs li.rk-card {
        --rk-buy-h: 40px;
        --rk-buy-w: 8.2rem;
    }

    .rk-card__body {
        padding: 0.65rem 0.7rem 0.8rem;
        min-width: 0;
    }

    .rk-card__name {
        font-size: clamp(0.9rem, 5.2cqi, 1.05rem) !important;
        font-weight: 600 !important;
        font-style: normal;
        margin-bottom: 0.5rem;
    }

    .rk-card__sku {
        min-height: var(--rk-buy-h) !important;
        height: var(--rk-buy-h) !important;
        padding: 0 0.75rem !important;
        font-size: 0.84rem !important;
        border-radius: 11px !important;
    }

    .rk-card__buy {
        width: var(--rk-buy-w);
        min-width: 6rem;
        max-width: var(--rk-buy-w);
        height: var(--rk-buy-h);
        flex: 1 1 var(--rk-buy-w);
    }

    ul.product-list.thumbs .rk-card__order,
    .rk-card__order {
        min-height: var(--rk-buy-h) !important;
        height: var(--rk-buy-h) !important;
        padding: 0 0.9rem !important;
        font-size: 1em !important;
        border-radius: 11px !important;
    }

    .rk-card__stepper {
        height: var(--rk-buy-h);
        min-height: var(--rk-buy-h);
        padding: 3px;
        border-radius: 11px;
    }

    ul.thumbs li.rk-card a.rk-card__pickup,
    ul.product-list.thumbs li.rk-card a.rk-card__pickup {
        border-radius: 11px !important;
    }

    ul.thumbs li.rk-card a.rk-card__pickup::before,
    ul.product-list.thumbs li.rk-card a.rk-card__pickup::before {
        width: 20px;
        height: 20px;
    }

    .rk-card__step {
        width: 34px !important;
        height: 34px !important;
        min-width: 34px !important;
        min-height: 34px !important;
        border-radius: 9px !important;
    }

    .rk-card__summary {
        -webkit-line-clamp: 2;
        font-size: 0.78rem;
        min-height: calc(1.42em * 2);
    }

    .rk-card__skus {
        margin: auto 0 1rem;
        justify-content: flex-end;
        align-content: flex-end;
    }

    .rk-card__footer {
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        gap: 0.4rem;
        flex-wrap: nowrap;
        margin-top: 0 !important;
        padding-top: 0.75rem;
        min-width: 0;
    }

    .rk-card__cta {
        flex: 0 1 auto;
        min-width: 0;
    }

    .rk-card__prices {
        flex: 1 1 auto;
        min-width: 0;
        margin: 0;
    }

    .rk-card__buy,
    .rk-card__buy .addtocart-btn-wrapper {
        flex: 1 1 var(--rk-buy-w);
        min-width: 6rem;
    }

    ul.product-list.thumbs .rk-card__add,
    ul.product-list.thumbs button.rk-card__add {
        width: auto;
        min-height: var(--rk-buy-h);
        height: var(--rk-buy-h);
        padding: 0 0.95rem;
        font-size: 0.9rem;
    }

    ul.product-list.thumbs .rk-card__gotocart {
        width: auto;
        min-height: var(--rk-buy-h);
        padding: 0.35rem 0.85rem !important;
        font-size: 0.84rem;
        justify-content: center;
    }

    .rk-card__soldout {
        width: auto;
        justify-content: center;
        font-size: 0.82rem;
    }

    .rk-card__price {
        font-size: 1.02rem;
    }

    /* Единая карточка товара: фото + покупка одним блоком */
    #js-product-page .product-media-purchase {
        display: flex !important;
        flex-direction: column !important;
        flex-wrap: nowrap !important;
        gap: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 0 1.25rem !important;
        padding: 0 !important;
        box-sizing: border-box;
        background: var(--rk-white, #ffffff) !important;
        border: 1px solid var(--rk-line, rgba(47, 38, 31, 0.08));
        border-radius: 18px;
        box-shadow: 0 8px 24px rgba(40, 36, 30, 0.06);
        overflow: hidden;
    }

    #js-product-page .product-media-purchase > .col,
    #js-product-page .product-media-purchase > .product-media,
    #js-product-page .product-media-purchase > .product-purchase {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 auto !important;
        --cols-count: 1 !important;
        --col-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        box-sizing: border-box;
    }

    #js-product-page .product-media {
        width: 100% !important;
        max-width: 100% !important;
        display: block !important;
    }

    #js-product-page .product-media .img-main {
        margin: 0 !important;
        width: 100%;
        max-width: 100%;
    }

    #js-product-page .product-gallery,
    #js-product-page .video-container {
        max-width: none !important;
        width: 100% !important;
        margin: 0 !important;
        border-radius: 0 !important;
    }

    #js-product-page .product-purchase,
    #js-product-page #cart-flyer,
    #js-product-page #cart-form {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        box-sizing: border-box;
        text-align: left !important;
    }

    /* Убираем «вторую карточку» внутри — контент просто продолжает общую */
    #js-product-page #cart-flyer {
        background: transparent !important;
        border: none !important;
        box-shadow: none !important;
        border-radius: 0 !important;
        padding: 1rem 1rem 1.15rem !important;
    }

    #js-product-page #cart-form {
        background: transparent !important;
        border: none !important;
        box-shadow: none !important;
        padding: 0 !important;
    }

    #js-product-page #cart-form .add2cart.js-top {
        justify-content: flex-start !important;
        text-align: left !important;
        margin-bottom: 0.35rem;
    }

    #js-product-page #cart-form .s-product-desc {
        margin: 0.55rem 0 0.9rem;
        padding: 0;
        background: transparent;
        text-align: left;
    }

    #js-product-page #cart-form .options,
    #js-product-page #cart-form .options .inline-select,
    #js-product-page #cart-form .options .inline-select > p {
        text-align: left !important;
        justify-content: flex-start !important;
    }

    /* Товар: липкая панель покупки внизу экрана (только страница товара) */
    #js-product-page #cart-form .purchase .add2cart {
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 996;
        display: flex;
        align-items: center;
        justify-content: space-between;
        flex-wrap: nowrap;
        gap: 0.5rem;
        margin: 0;
        padding: 0.65rem 0.85rem calc(0.65rem + env(safe-area-inset-bottom));
        background: rgba(255, 255, 255, 0.98);
        backdrop-filter: blur(10px);
        -webkit-backdrop-filter: blur(10px);
        border-top: 1px solid var(--rk-line, rgba(47, 38, 31, 0.09));
        box-shadow: 0 -8px 28px rgba(40, 36, 30, 0.12);
        box-sizing: border-box;
    }

    #js-product-page #cart-form .purchase .add2cart .quantity-wrapper {
        flex: 0 0 auto;
        display: flex;
        align-items: center;
        margin: 0 !important;
        height: 44px;
    }

    #js-product-page #cart-form .purchase .add2cart .quantity-wrapper .wa-mb-8,
    #js-product-page #cart-form .purchase .add2cart .quantity-wrapper .s-description {
        display: none !important;
    }

    #js-product-page #cart-form .purchase .add2cart .rk-qty-controls {
        display: inline-flex !important;
        align-items: center;
        gap: 0;
        height: 40px;
        padding: 3px;
        border-radius: 12px;
        background: var(--rk-marble, #f5f5f5);
        border: 1px solid var(--rk-line, rgba(47, 38, 31, 0.08));
        box-sizing: border-box;
    }

    #js-product-page #cart-form .purchase .add2cart .volume-buttons {
        justify-content: center !important;
        height: auto;
    }

    #js-product-page #cart-form .purchase .add2cart .increase-volume {
        width: 32px !important;
        height: 32px !important;
        min-width: 32px;
        min-height: 32px;
        margin: 0 !important;
        padding: 0 !important;
        border-radius: 9px !important;
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        background: var(--rk-white, #ffffff) !important;
        color: var(--rk-ink, #212529) !important;
        border: none !important;
        box-shadow: 0 1px 3px rgba(40, 36, 30, 0.08) !important;
        line-height: 1;
        font-size: 1rem;
    }

    #js-product-page #cart-form .purchase .add2cart .s-field-wrapper {
        margin: 0 2px !important;
        display: flex;
        align-items: center;
        height: 32px;
    }

    #js-product-page #cart-form .purchase .add2cart .js-quantity-field {
        width: 2.1rem !important;
        min-height: 32px !important;
        height: 32px !important;
        margin: 0;
        padding: 0;
        border: none !important;
        background: transparent !important;
        box-shadow: none !important;
        text-align: center;
        border-radius: 0 !important;
        font-weight: 750;
        font-size: 0.95rem;
        line-height: 1;
        box-sizing: border-box;
    }

    #js-product-page #cart-form .purchase .add2cart button[type="submit"],
    #js-product-page #cart-form .purchase .add2cart .addtocart-btn,
    #js-product-page #cart-form .purchase .add2cart .gotocart-btn:not(.wa-hide) {
        flex: 1 1 auto !important;
        width: auto;
        min-width: 0;
        height: 44px !important;
        min-height: 44px !important;
        max-height: 44px;
        margin: 0;
        padding: 0 1.1rem !important;
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        line-height: 1 !important;
        font-size: 0.95rem !important;
        box-sizing: border-box;
    }

    #js-product-page #cart-form .purchase .add2cart {
        justify-content: space-between;
    }

    #js-product-page #cart-form .rk-nutri {
        margin: 1rem 0 0.35rem;
        flex: none;
    }

    #js-product-page #cart-form .rk-nutri-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 0.4rem;
    }

    #js-product-page #cart-form .rk-nutri-card {
        min-height: 68px;
        padding: 0.55rem 0.2rem;
        border-radius: 10px;
    }

    #js-product-page #cart-form .rk-nutri-card__name {
        font-size: 0.7rem;
    }

    #js-product-page #cart-form .rk-nutri-card__value {
        font-size: 0.82rem;
    }

    #js-product-page #cart-form .purchase .add2cart .rk-pickup-inline,
    #js-product-page #cart-form .purchase .add2cart a.pickup-btn.rk-pickup-product {
        display: inline-flex !important;
        flex: 0 0 44px !important;
        width: 44px !important;
        min-width: 44px !important;
        max-width: 44px !important;
        height: 44px !important;
        min-height: 44px !important;
        max-height: 44px !important;
        padding: 0 !important;
        margin: 0 !important;
        gap: 0;
        font-size: 0 !important;
        border-radius: 14px !important;
    }

    #js-product-page #cart-form .purchase .add2cart a.pickup-btn.rk-pickup-product > span {
        position: absolute !important;
        width: 1px !important;
        height: 1px !important;
        overflow: hidden !important;
        clip: rect(0, 0, 0, 0) !important;
    }

    /* «В корзине / Перейти» показывается только после добавления */
    #js-product-page #cart-form .purchase .add2cart .gotocart-btn.wa-hide,
    #js-product-page #cart-form .purchase .add2cart button[type="submit"].wa-hide,
    #js-product-page #cart-form .purchase .add2cart button[type="submit"][style*="display: none"],
    #js-product-page #cart-form .purchase .add2cart button[type="submit"][style*="display:none"] {
        display: none !important;
    }

    #js-product-page #cart-form .purchase .add2cart .gotocart-btn:not(.wa-hide) {
        flex-direction: row !important;
        gap: 0.35rem;
    }

    #js-product-page #cart-form .purchase .add2cart .gotocart-btn .smaller {
        font-size: 0.8rem;
        opacity: 0.85;
    }

    /* чтобы липкая панель не перекрывала контент */
    #js-product-page {
        padding-bottom: 92px;
    }

    /* «Наверх» — выше панели «В корзину», не поверх неё */
    body:has(#js-product-page) .scroll-to-top {
        bottom: calc(72px + env(safe-area-inset-bottom, 0px)) !important;
        z-index: 995 !important;
    }

    /* панель перекрывает плавающую корзину на странице товара */
    body:has(#js-product-page) .rk-float-cart {
        bottom: calc(84px + env(safe-area-inset-bottom));
    }

    #js-product-page button[type="submit"],
    .product-cart button[type="submit"] {
        min-height: 44px !important;
    }

    /* Свайп-галерея вместо миниатюр bxSlider */
    #js-product-page .img-thumbs {
        display: none !important;
    }

    /* figure.wa-flex по умолчанию row — из‑за этого точки уезжали ВПРАВО от фото */
    #js-product-page .product-gallery.wa-flex,
    #js-product-page figure.product-gallery {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        width: 100%;
        max-width: 100%;
        margin: 0;
        overflow: hidden;
    }

    #js-product-page .rk-swipe-gallery {
        display: flex;
        width: 100%;
        max-width: 100%;
        overflow-x: auto;
        overflow-y: hidden;
        scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        gap: 0;
        margin: 0;
        border-radius: 0;
        background: var(--rk-marble, #f5f5f5);
    }

    #js-product-page .rk-swipe-gallery::-webkit-scrollbar {
        display: none;
    }

    #js-product-page .rk-swipe-gallery__slide {
        flex: 0 0 100%;
        width: 100%;
        max-width: 100%;
        scroll-snap-align: center;
        scroll-snap-stop: always;
        display: flex;
        align-items: center;
        justify-content: center;
        background: var(--rk-marble, #f5f5f5);
    }

    #js-product-page .rk-swipe-gallery__slide img {
        width: 100%;
        height: auto;
        max-height: min(62vh, 420px);
        object-fit: contain;
        border-radius: 0;
        display: block;
    }

    #js-product-page .rk-swipe-dots {
        display: flex;
        flex-direction: row;
        justify-content: center;
        align-items: center;
        width: 100%;
        gap: 0.35rem;
        margin: 0.45rem 0 0.15rem;
        padding: 0;
    }

    #js-product-page .rk-swipe-dots__dot {
        width: 7px;
        height: 7px;
        border-radius: 14px;
        background: rgba(33, 37, 41, 0.2);
        transition: background .15s ease, width .15s ease;
        flex: 0 0 auto;
    }

    #js-product-page .rk-swipe-dots__dot.is-active {
        width: 18px;
        background: var(--rk-accent, #f8b90d);
    }

    /* Если есть свайп-галерея — прячем одиночное core-image на мобиле */
    #js-product-page .product-gallery:has(.rk-swipe-gallery) #product-core-image {
        display: none !important;
    }

    .rk-product-toolbar {
        gap: 0.55rem;
    }

    .rk-product-toolbar .rk-back,
    .rk-category-toolbar .rk-back {
        min-height: 38px;
        padding: 0.35rem 0.75rem;
        font-size: 0.88rem;
    }

    ul.product-topbar > li > a {
        min-height: 36px;
        padding: 0.2rem 0.85rem;
        font-size: 0.88rem;
    }

    ul.product-list.thumbs .addtocart-btn,
    ul.product-list.thumbs button.addtocart-btn {
        min-height: 42px;
        font-size: 14px;
    }
}

@media (max-width: 480px) {
    .rk-hero__chip {
        flex: 1 1 100%;
    }

    #js-product-page #cart-form .rk-nutri-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0.45rem;
    }

    #js-product-page #cart-form .rk-nutri-card {
        min-height: 72px;
    }
}

/* Самовывоз на главной и в карточке товара больше не показываем */
ul.product-list.thumbs li.rk-card a.rk-card__pickup,
ul.thumbs li.rk-card a.button.pickup-btn.rk-card__pickup,
ul.thumbs li.rk-card a.pickup-btn.rk-card__pickup,
#js-product-page .add2cart a.button.pickup-btn.rk-pickup-product,
#js-product-page .add2cart a.pickup-btn.rk-pickup-product,
#cart-form .add2cart a.button.pickup-btn.rk-pickup-product,
#cart-form .add2cart a.pickup-btn.rk-pickup-product {
    display: none !important;
}
