:root {
    --product-vitrine-ink: #272727;
    --product-vitrine-muted: #757575;
    --product-vitrine-line: #e4e4e4;
    --product-vitrine-line-strong: #a8a69f;
    --product-vitrine-surface: #ffffff;
    --product-vitrine-surface-soft: #ebebeb;
    --product-vitrine-accent: #c7d7d2;
    --product-vitrine-accent-strong: #b3c8c1;
    --product-vitrine-shadow: none;
    --product-vitrine-border: rgba(225, 231, 237, 0.98);
    --product-vitrine-border-soft: rgba(232, 236, 240, 0.96);
    --product-vitrine-border-active: #005bff;
    --product-vitrine-primary: #005bff;
    --product-vitrine-primary-hover: #0047c7;
    --product-vitrine-secondary-bg: rgba(248, 250, 252, 0.98);
    --product-vitrine-secondary-bg-hover: rgba(240, 245, 255, 0.98);
    --product-vitrine-cart-added-bg: #dfe9f7;
    --product-vitrine-cart-added-bg-hover: #d4e2f4;
    --product-vitrine-cart-added-border: #bed1eb;
    --product-vitrine-cart-added-text: #23466f;
    --product-vitrine-control-radius: 5.44px;
    --product-vitrine-panel-radius: 7.04px;
    --product-vitrine-control-shadow: 0 5.6px 15.2px rgba(31, 43, 50, 0.04);
    --product-vitrine-control-shadow-hover: 0 8.8px 20px rgba(0, 91, 255, 0.1);
    --product-vitrine-control-shadow-active: inset 0 0 0 1px var(--product-vitrine-border-active);
    --product-vitrine-primary-shadow: 0 12.8px 25.6px rgba(0, 91, 255, 0.16);
}

/* Те же переменные — на обёртке модуля: правила ниже подчинены ей, а ядровый
 * product_vitrine грузится ПОСЛЕ нас (его тянет product_special) и перебил бы
 * одноимённые правила. Лишний класс в области поднимает наши на ступень. */
.product_vitrine_grid__module {
    --product-vitrine-ink: #272727;
    --product-vitrine-muted: #757575;
    --product-vitrine-line: #e4e4e4;
    --product-vitrine-line-strong: #a8a69f;
    --product-vitrine-surface: #ffffff;
    --product-vitrine-surface-soft: #ebebeb;
    --product-vitrine-accent: #c7d7d2;
    --product-vitrine-accent-strong: #b3c8c1;
    --product-vitrine-shadow: none;
    --product-vitrine-border: rgba(225, 231, 237, 0.98);
    --product-vitrine-border-soft: rgba(232, 236, 240, 0.96);
    --product-vitrine-border-active: #005bff;
    --product-vitrine-primary: #005bff;
    --product-vitrine-primary-hover: #0047c7;
    --product-vitrine-secondary-bg: rgba(248, 250, 252, 0.98);
    --product-vitrine-secondary-bg-hover: rgba(240, 245, 255, 0.98);
    --product-vitrine-cart-added-bg: #dfe9f7;
    --product-vitrine-cart-added-bg-hover: #d4e2f4;
    --product-vitrine-cart-added-border: #bed1eb;
    --product-vitrine-cart-added-text: #23466f;
    --product-vitrine-control-radius: 5.44px;
    --product-vitrine-panel-radius: 7.04px;
    --product-vitrine-control-shadow: 0 5.6px 15.2px rgba(31, 43, 50, 0.04);
    --product-vitrine-control-shadow-hover: 0 8.8px 20px rgba(0, 91, 255, 0.1);
    --product-vitrine-control-shadow-active: inset 0 0 0 1px var(--product-vitrine-border-active);
    --product-vitrine-primary-shadow: 0 12.8px 25.6px rgba(0, 91, 255, 0.16);
}

.product_vitrine__module.product_vitrine_grid__module:empty{
    display: none;
}

.product_vitrine_grid__module .product_vitrine{
    color: var(--product-vitrine-ink);
}

.product_vitrine__module.product_vitrine_grid__module .container, .product_vitrine__module.product_vitrine_grid__module .cont-text-container{
    width: 100%;
}

.product_vitrine__module.product_vitrine_grid__module .cont-text-container.container{
    padding-top: 0;
    padding-bottom: 60px;
}

.product_vitrine_grid__module .product_vitrine__title, .product_vitrine_grid__module .product_vitrine__show-title{
    margin: 0;
    color: var(--product-vitrine-ink);
    font-weight: 700;
    letter-spacing: 0.01em;
    line-height: 1.1;
}

.product_vitrine_grid__module .product_vitrine__title{
    font-size: clamp(29.6px, 2.6vw, 40px);
    max-width: none;
}

.product_vitrine_grid__module .product_vitrine__show-title{
    font-size: clamp(32px, 4vw, 56px);
}

.product_vitrine_grid__module .product_vitrine__detail .product-card__title{
    margin: 0;
    color: var(--product-vitrine-ink);
    font-weight: 700;
    letter-spacing: 0.01em;
    line-height: 1.1;
    font-size: clamp(32px, 4vw, 56px);
}

.product_vitrine_grid__module .product_vitrine__text, .product_vitrine_grid__module .product_vitrine__show-note, .product_vitrine_grid__module .product_vitrine__show-text, .product_vitrine_grid__module .product_vitrine__record-note{
    color: var(--product-vitrine-muted);
    line-height: 1.65;
}

.product_vitrine_grid__module .product_vitrine__text{
    max-width: 992px;
    margin-top: 13.6px;
    font-size: 16px;
}

.product_vitrine_grid__module .product_vitrine__image{
    margin-top: 24px;
    overflow: hidden;
    border-radius: 7.2px;
    background:
        radial-gradient(circle at top left, rgba(199, 215, 210, 0.7), transparent 42%),
        linear-gradient(135deg, #f6faf8, #edf3f0);
    border: 1px solid rgba(185, 201, 197, 0.7);
    box-shadow: var(--product-vitrine-shadow);
}

.product_vitrine_grid__module .product_vitrine__image img{
    display: block;
    width: 100%;
    max-height: 480px;
    object-fit: cover;
}

/* Расположение блока фильтров: сверху (дефолт) или слева колонкой. Переключается
   классом product_vitrine__layout--filters-{top|left} (из настройки filters_position). */
.product_vitrine_grid__module .product_vitrine__layout{
    display: block;
}
.product_vitrine_grid__module .product_vitrine__layout--filters-left{
    display: grid;
    grid-template-columns: minmax(200px, 260px) minmax(0, 1fr);
    gap: 32px;
    align-items: start;
}
.product_vitrine_grid__module .product_vitrine__layout--filters-left .product_vitrine__records{
    margin-top: 0;
}
@media (max-width: 900px){
    .product_vitrine_grid__module .product_vitrine__layout--filters-left{
        grid-template-columns: minmax(0, 1fr);
    }}

.product_vitrine_grid__module .product_vitrine__records{
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 32px 22.4px;
    margin-top: 31.2px;
}
/* В левой колонке товаров меньше по ширине — сокращаем число колонок сетки. */
.product_vitrine_grid__module .product_vitrine__layout--filters-left .product_vitrine__records{
    grid-template-columns: repeat(4, minmax(0, 1fr));
}
@media (max-width: 1200px){
    .product_vitrine_grid__module .product_vitrine__layout--filters-left .product_vitrine__records{
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }}

.product_vitrine_grid__module .product_vitrine__groups{
    margin-top: 24px;
}

.product_vitrine_grid__module .product_vitrine__groups:empty{
    display: none;
}

.product_vitrine_grid__module .product_vitrine__groups-list{
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px 20.8px;
}

.product_vitrine_grid__module .bnx-breadcrumbs{
    margin: 0 0 22px;
    color: #6f7d78;
    font-size: 13px;
    line-height: 1.45;
}

.product_vitrine_grid__module .bnx-breadcrumbs .bnx-breadcrumbs__list{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px 10px;
    margin: 0;
    padding: 0;
    list-style: none;
    background: none;
    border-radius: 0;
}

.product_vitrine_grid__module .bnx-breadcrumbs .breadcrumb > li + li:before{
    content: "";
    padding: 0;
}

.product_vitrine_grid__module .bnx-breadcrumbs .bnx-breadcrumbs__item{
    float: none;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
    padding: 0;
    color: inherit;
}

.product_vitrine_grid__module .bnx-breadcrumbs .bnx-breadcrumbs__item + .bnx-breadcrumbs__item:before{
    content: "";
    width: 6px;
    height: 6px;
    flex: 0 0 6px;
    border-top: 1px solid rgba(111, 125, 120, 0.55);
    border-right: 1px solid rgba(111, 125, 120, 0.55);
    transform: rotate(45deg);
}

.product_vitrine_grid__module .bnx-breadcrumbs .bnx-breadcrumbs__link{
    display: inline-flex;
    align-items: center;
    min-width: 0;
    color: inherit;
    text-decoration: none;
    border-bottom: 1px solid transparent;
    transition: color 0.18s ease, border-color 0.18s ease, opacity 0.18s ease;
}

.product_vitrine_grid__module .bnx-breadcrumbs .bnx-breadcrumbs__link:hover, .product_vitrine_grid__module .bnx-breadcrumbs .bnx-breadcrumbs__link:focus-visible{
    color: #222;
    border-bottom-color: rgba(34, 34, 34, 0.22);
    outline: none;
}

.product_vitrine_grid__module .bnx-breadcrumbs .bnx-breadcrumbs__label, .product_vitrine_grid__module .bnx-breadcrumbs .bnx-breadcrumbs__current{
    display: inline;
    min-width: 0;
    overflow-wrap: anywhere;
}

.product_vitrine_grid__module .bnx-breadcrumbs .bnx-breadcrumbs__current, .product_vitrine_grid__module .bnx-breadcrumbs .bnx-breadcrumbs__item.is-active{
    color: #222;
}

.product_vitrine_grid__module .bnx-breadcrumbs .bnx-breadcrumbs__current{
    font-weight: 500;
}

.product_vitrine_grid__module .product_vitrine__filters{
    margin-top: 24.8px;
    padding: 21.6px 22.4px 23.2px;
    border: 1px solid rgba(168, 166, 159, 0.32);
    background:
        radial-gradient(circle at top left, rgba(199, 215, 210, 0.42), transparent 36%),
        linear-gradient(135deg, rgba(252, 253, 252, 0.98), rgba(246, 247, 245, 0.98));
}

.product_vitrine_grid__module .product_vitrine__filters-form{
    display: grid;
    gap: 18.4px;
}

.product_vitrine_grid__module .product_vitrine__filters-form.is-loading{
    opacity: 0.72;
}

.product_vitrine_grid__module .product_vitrine.is-filter-loading .product_vitrine__records{
    opacity: 0.68;
    transition: opacity 0.18s ease;
}

.product_vitrine_grid__module .product_vitrine__filters-head{
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 16px 19.2px;
    align-items: start;
}

.product_vitrine_grid__module .product_vitrine__filters-copy{
    display: grid;
    gap: 8px;
}

.product_vitrine_grid__module .product_vitrine__filters-eyebrow{
    color: rgba(39, 39, 39, 0.58);
    font-size: 11.2px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.product_vitrine_grid__module .product_vitrine__filters-title{
    margin: 0;
    color: var(--product-vitrine-ink);
    font-size: clamp(17.6px, 2vw, 23.2px);
    font-weight: 600;
    line-height: 1.15;
}

.product_vitrine_grid__module .product_vitrine__filters-summary{
    display: flex;
    flex-wrap: wrap;
    gap: 7.2px 8px;
}

.product_vitrine_grid__module .product_vitrine__filters-summary:empty{
    display: none;
}

.product_vitrine_grid__module .product_vitrine__filters-chip{
    display: inline-flex;
    align-items: center;
    min-height: 31.2px;
    padding: 3.52px 11.52px;
    border: 1px solid rgba(168, 166, 159, 0.34);
    background: rgba(255, 255, 255, 0.85);
    color: rgba(39, 39, 39, 0.82);
    font-size: 12.48px;
    line-height: 1.2;
}

.product_vitrine_grid__module .product_vitrine__filters-actions{
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 8.8px;
    align-items: center;
}

.product_vitrine_grid__module .product_vitrine__filters-submit, .product_vitrine_grid__module .product_vitrine__filters-reset{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 43.2px;
    padding: 0 16px;
    text-decoration: none;
    transition:
        border-color 0.22s ease,
        background-color 0.22s ease,
        color 0.22s ease,
        box-shadow 0.22s ease;
}

.product_vitrine_grid__module .product_vitrine__filters-submit{
    border: 1px solid var(--product-vitrine-ink);
    background: var(--product-vitrine-ink);
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
}

.product_vitrine_grid__module .product_vitrine__filters-submit:hover{
    background: #1f1f1f;
    border-color: #1f1f1f;
}

.product_vitrine_grid__module .product_vitrine__filters-reset{
    border: 1px solid rgba(168, 166, 159, 0.36);
    background: transparent;
    color: var(--product-vitrine-ink);
    font-size: 13px;
    font-weight: 500;
}

.product_vitrine_grid__module .product_vitrine__filters-reset:hover{
    border-color: rgba(39, 39, 39, 0.5);
    background: rgba(255, 255, 255, 0.7);
}

.product_vitrine_grid__module .product_vitrine__filters-grid{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(232px, 1fr));
    gap: 14.4px;
}

.product_vitrine_grid__module .product_vitrine__filter-card{
    display: grid;
    gap: 11.2px;
    min-width: 0;
    padding: 15.2px 16px 16px;
    border: 1px solid rgba(168, 166, 159, 0.26);
    background: rgba(255, 255, 255, 0.8);
}

.product_vitrine_grid__module .product_vitrine__filter-card--search, .product_vitrine_grid__module .product_vitrine__filter-card--toggle{
    align-content: start;
}

.product_vitrine_grid__module .product_vitrine__filter-label{
    margin: 0;
    color: rgba(39, 39, 39, 0.86);
    font-size: 13.12px;
    font-weight: 600;
    line-height: 1.2;
}

.product_vitrine_grid__module .product_vitrine__filter-input{
    width: 100%;
    min-height: 43.2px;
    padding: 10.4px 12.8px;
    border: 1px solid rgba(168, 166, 159, 0.34);
    border-radius: 0;
    background: rgba(255, 255, 255, 0.96);
    color: var(--product-vitrine-ink);
    font-size: 14.72px;
    line-height: 1.2;
    box-shadow: none;
}

.product_vitrine_grid__module .product_vitrine__filter-input:focus{
    outline: none;
    border-color: var(--product-vitrine-ink);
}

.product_vitrine_grid__module .product_vitrine__filter-range{
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 11.2px;
}

.product_vitrine_grid__module .product_vitrine__filter-range-slider{
    display: grid;
    gap: 14.4px;
}

.product_vitrine_grid__module .product_vitrine__filter-range-values{
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 11.2px;
}

.product_vitrine_grid__module .product_vitrine__filter-range-pill{
    display: grid;
    gap: 4.8px;
    min-height: 48px;
    padding: 10.4px 12.8px;
    border: 1px solid rgba(168, 166, 159, 0.26);
    background: rgba(255, 255, 255, 0.94);
}

.product_vitrine_grid__module .product_vitrine__filter-range-amount{
    color: var(--product-vitrine-ink);
    font-size: 15.68px;
    font-weight: 600;
    line-height: 1.1;
}

.product_vitrine_grid__module .product_vitrine__filter-slider{
    position: relative;
    height: 32px;
}

.product_vitrine_grid__module .product_vitrine__filter-slider-rail, .product_vitrine_grid__module .product_vitrine__filter-slider-range{
    position: absolute;
    top: 50%;
    height: 5.44px;
    transform: translateY(-50%);
    pointer-events: none;
}

.product_vitrine_grid__module .product_vitrine__filter-slider-rail{
    left: 0;
    right: 0;
    background: rgba(168, 166, 159, 0.28);
}

.product_vitrine_grid__module .product_vitrine__filter-slider-range{
    background: #64736a;
}

.product_vitrine_grid__module .product_vitrine__filter-slider.is-static .product_vitrine__filter-slider-range{
    left: 0;
    width: 100%;
}

.product_vitrine_grid__module .product_vitrine__filter-slider-input{
    -webkit-appearance: none;
    appearance: none;
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    background: transparent;
    pointer-events: none;
}

.product_vitrine_grid__module .product_vitrine__filter-slider-input::-webkit-slider-runnable-track{
    height: 5.44px;
    background: transparent;
}

.product_vitrine_grid__module .product_vitrine__filter-slider-input::-moz-range-track{
    height: 5.44px;
    background: transparent;
}

.product_vitrine_grid__module .product_vitrine__filter-slider-input::-webkit-slider-thumb{
    -webkit-appearance: none;
    appearance: none;
    width: 16.8px;
    height: 16.8px;
    margin-top: -0.36rem;
    border: 2px solid #fff;
    border-radius: 50%;
    background: var(--product-vitrine-ink);
    box-shadow: 0 0 0 1px rgba(39, 39, 39, 0.12);
    cursor: pointer;
    pointer-events: auto;
}

.product_vitrine_grid__module .product_vitrine__filter-slider-input::-moz-range-thumb{
    width: 16.8px;
    height: 16.8px;
    border: 2px solid #fff;
    border-radius: 50%;
    background: var(--product-vitrine-ink);
    box-shadow: 0 0 0 1px rgba(39, 39, 39, 0.12);
    cursor: pointer;
    pointer-events: auto;
}

.product_vitrine_grid__module .product_vitrine__filter-slider-input:focus{
    outline: none;
}

.product_vitrine_grid__module .product_vitrine__filter-slider-input:focus::-webkit-slider-thumb{
    box-shadow:
        0 0 0 1px rgba(39, 39, 39, 0.12),
        0 0 0 3.2px rgba(100, 115, 106, 0.18);
}

.product_vitrine_grid__module .product_vitrine__filter-slider-input:focus::-moz-range-thumb{
    box-shadow:
        0 0 0 1px rgba(39, 39, 39, 0.12),
        0 0 0 3.2px rgba(100, 115, 106, 0.18);
}

.product_vitrine_grid__module .product_vitrine__filter-range-item{
    display: grid;
    gap: 5.6px;
}

.product_vitrine_grid__module .product_vitrine__filter-range-caption{
    color: rgba(39, 39, 39, 0.56);
    font-size: 11.52px;
    line-height: 1.1;
}

.product_vitrine_grid__module .product_vitrine__filter-toggle, .product_vitrine_grid__module .product_vitrine__filter-check{
    display: inline-grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: 11.2px;
    cursor: pointer;
}

.product_vitrine_grid__module .product_vitrine__filter-toggle--inline{
    margin-right: 6.4px;
}

.product_vitrine_grid__module .product_vitrine__filter-card--boolean.product_vitrine__filter-check{
    align-items: center;
}

.product_vitrine_grid__module .product_vitrine__filter-toggle-input, .product_vitrine_grid__module .product_vitrine__filter-check-input, .product_vitrine_grid__module .product_vitrine__filter-option-input{
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.product_vitrine_grid__module .product_vitrine__filter-toggle-ui, .product_vitrine_grid__module .product_vitrine__filter-check-ui{
    position: relative;
    display: inline-flex;
    flex: 0 0 auto;
}

.product_vitrine_grid__module .product_vitrine__filter-toggle-ui{
    width: 44px;
    height: 24.8px;
    border-radius: 999px;
    background: rgba(168, 166, 159, 0.45);
}

.product_vitrine_grid__module .product_vitrine__filter-toggle-ui::after{
    content: "";
    position: absolute;
    top: 2.4px;
    left: 2.56px;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: #fff;
    transition: transform 0.22s ease;
}

.product_vitrine_grid__module .product_vitrine__filter-toggle-input:checked + .product_vitrine__filter-toggle-ui{
    background: #64736a;
}

.product_vitrine_grid__module .product_vitrine__filter-toggle-input:checked + .product_vitrine__filter-toggle-ui::after{
    transform: translateX(18.88px);
}

.product_vitrine_grid__module .product_vitrine__filter-check-ui{
    width: 19.2px;
    height: 19.2px;
    border: 1px solid rgba(39, 39, 39, 0.36);
    background: #fff;
}

.product_vitrine_grid__module .product_vitrine__filter-check-ui::after{
    content: "";
    position: absolute;
    inset: 2.88px;
    background: var(--product-vitrine-ink);
    opacity: 0;
    transition: opacity 0.18s ease;
}

.product_vitrine_grid__module .product_vitrine__filter-check-input:checked + .product_vitrine__filter-check-ui::after{
    opacity: 1;
}

.product_vitrine_grid__module .product_vitrine__filter-toggle-text, .product_vitrine_grid__module .product_vitrine__filter-check-text{
    color: rgba(39, 39, 39, 0.76);
    font-size: 14.08px;
    line-height: 1.25;
}

.product_vitrine_grid__module .product_vitrine__filter-options{
    display: flex;
    flex-wrap: wrap;
    gap: 8.8px;
}

.product_vitrine_grid__module .product_vitrine__filter-option{
    display: inline-flex;
    cursor: pointer;
}

.product_vitrine_grid__module .product_vitrine__filter-option-ui{
    display: inline-flex;
    align-items: center;
    gap: 8.8px;
    min-height: 37.6px;
    padding: 7.2px 11.52px;
    border: 1px solid rgba(168, 166, 159, 0.34);
    background: rgba(255, 255, 255, 0.92);
    color: rgba(39, 39, 39, 0.82);
    font-size: 13.12px;
    line-height: 1.15;
    transition:
        border-color 0.22s ease,
        background-color 0.22s ease,
        color 0.22s ease,
        box-shadow 0.22s ease;
}

.product_vitrine_grid__module .product_vitrine__filter-option:hover .product_vitrine__filter-option-ui, .product_vitrine_grid__module .product_vitrine__filter-option.is-selected .product_vitrine__filter-option-ui, .product_vitrine_grid__module .product_vitrine__filter-option-input:checked + .product_vitrine__filter-option-ui{
    border-color: rgba(39, 39, 39, 0.48);
    background: rgba(247, 247, 245, 0.98);
    color: var(--product-vitrine-ink);
}

.product_vitrine_grid__module .product_vitrine__filter-option--color .product_vitrine__filter-option-ui{
    min-width: 140px;
    justify-content: flex-start;
}

.product_vitrine_grid__module .product_vitrine__filter-swatch{
    width: 15.2px;
    height: 15.2px;
    border: 1px solid rgba(39, 39, 39, 0.18);
    border-radius: 50%;
    flex: 0 0 auto;
}

.product_vitrine_grid__module .product_vitrine__filter-option-text{
    display: inline-block;
}

.product_vitrine_grid__module .product_vitrine__group-card{
    display: flex;
    align-items: center;
    min-height: 104px;
    border: 1px solid rgba(168, 166, 159, 0.4);
    border-radius: 0;
    background: var(--product-vitrine-surface);
    color: var(--product-vitrine-ink);
    text-decoration: none;
    overflow: hidden;
    transition:
        border-color 0.22s ease,
        box-shadow 0.22s ease,
        transform 0.22s ease;
}

.product_vitrine_grid__module .product_vitrine__group-card:hover{
    border-color: var(--product-vitrine-line-strong);
    box-shadow: 0 9.6px 25.6px rgba(39, 39, 39, 0.08);
    transform: translateY(-1px);
}

.product_vitrine_grid__module .product_vitrine__group-media{
    flex: 0 0 100px;
    width: 100px;
    min-height: 104px;
    align-self: stretch;
    background: linear-gradient(135deg, #f4f2ed, #ebe7df);
    overflow: hidden;
}

.product_vitrine_grid__module .product_vitrine__group-image, .product_vitrine_grid__module .product_vitrine__group-placeholder{
    display: block;
    width: 100%;
    height: 100%;
}

.product_vitrine_grid__module .product_vitrine__group-image{
    object-fit: cover;
}

.product_vitrine_grid__module .product_vitrine__group-image--contain{
    object-fit: contain;
}

.product_vitrine_grid__module .product_vitrine__groups--fit-contain .product_vitrine__group-media{
    background: transparent;
    padding: 6.4px;
}

.product_vitrine_grid__module .product_vitrine__groups--compact .product_vitrine__group-card{
    min-height: 64px;
}

.product_vitrine_grid__module .product_vitrine__groups--compact .product_vitrine__group-media{
    flex: 0 0 64px;
    width: 64px;
    min-height: 64px;
}

.product_vitrine_grid__module .product_vitrine__groups--compact .product_vitrine__group-body{
    padding: 8.8px 12px 8.8px 13.6px;
}

.product_vitrine_grid__module .product_vitrine__groups--compact .product_vitrine__group-text{
    display: none;
}

.product_vitrine_grid__module .product_vitrine__group-placeholder{
    display: flex;
    align-items: center;
    justify-content: center;
    color: rgba(39, 39, 39, 0.56);
    font-size: 27.2px;
    font-weight: 600;
    letter-spacing: 0.04em;
}

.product_vitrine_grid__module .product_vitrine__group-body{
    display: grid;
    gap: 3.52px;
    flex: 1;
    min-width: 0;
    padding: 14.4px 16px 14.4px 17.6px;
}

.product_vitrine_grid__module .product_vitrine__group-title{
    color: #1b1f32;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.2;
}

.product_vitrine_grid__module .product_vitrine__group-text{
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    color: var(--product-vitrine-ink);
    font-size: 14px;
    line-height: 1.25;
}

.product_vitrine_grid__module .product_vitrine__pagination{
    display: grid;
    justify-items: center;
    gap: 10.4px;
    margin-top: 32px;
}

.product_vitrine_grid__module .product_vitrine__pagination + .product_vitrine__footer-text{
    margin-top: 24px;
}

.product_vitrine_grid__module .product_vitrine__pagination[data-next-url=""]{
    display: none;
}

.product_vitrine_grid__module .product_vitrine__load-more{
    min-width: min(100%, 240px);
    min-height: 45.6px;
    padding: 12px 20px;
    border: 1px solid var(--product-vitrine-line-strong);
    border-radius: var(--product-vitrine-control-radius);
    background: var(--product-vitrine-surface);
    color: var(--product-vitrine-ink);
    font-size: 14px;
    font-weight: 500;
    line-height: 1.2;
    cursor: pointer;
    transition:
        border-color 0.22s ease,
        background-color 0.22s ease,
        color 0.22s ease,
        opacity 0.22s ease;
}

.product_vitrine_grid__module .product_vitrine__load-more:hover:not(:disabled){
    border-color: var(--product-vitrine-ink);
    background: #f7f7f7;
}

.product_vitrine_grid__module .product_vitrine__load-more:disabled{
    cursor: wait;
    opacity: 0.7;
}

.product_vitrine_grid__module .product_vitrine__load-more-status{
    min-height: 17.6px;
    color: var(--product-vitrine-muted);
    font-size: 13px;
    line-height: 1.35;
    text-align: center;
}

.product_vitrine_grid__module .product_vitrine__load-more-status:empty{
    display: none;
}

.product_vitrine_grid__module .product_vitrine__load-more-sentinel{
    width: 100%;
    height: 1px;
}

.product_vitrine_grid__module .product_vitrine__record{
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 100%;
    padding: 0 0 24px;
    border: 0;
    border-bottom: 1px solid var(--product-vitrine-line-strong);
    border-radius: 0;
    background: var(--product-vitrine-surface);
    box-shadow: none;
    transition:
        border-color 0.22s ease,
        opacity 0.22s ease;
}

.product_vitrine_grid__module .product_vitrine__record:hover{
    border-color: var(--product-vitrine-ink);
}

.product_vitrine_grid__module .product_vitrine__record .product-card__badges, .product_vitrine_grid__module .product_vitrine__detail .product-card__badges{
    display: flex;
    flex-wrap: wrap;
    gap: 7.2px;
}

.product_vitrine_grid__module .product_vitrine__record .product-card__badges{
    position: absolute;
    top: 6.4px;
    left: 0;
    z-index: 2;
}

.product_vitrine_grid__module .product_vitrine__detail .product-card__badges{
    grid-column: 2;
    margin-bottom: 2.4px;
}

.product_vitrine_grid__module .product-card__badge{
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 0 11.2px;
    font-size: 11px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    white-space: nowrap;
}

.product_vitrine_grid__module .product-card__badge--hit{
    background: #1f1f1f;
    color: #fff;
}

.product_vitrine_grid__module .product-card__badge--new{
    background: #ebebeb;
    color: var(--product-vitrine-ink);
}

.product_vitrine_grid__module .product_vitrine__record .product-card__title{
    margin: 12px 0 0;
    font-size: 14px;
    line-height: 1.35;
    font-weight: 400;
    color: var(--product-vitrine-ink);
    min-height: calc(14px * 1.35 * 2);
}

.product_vitrine_grid__module .product_vitrine__record .product-card__title-link{
    display: -webkit-box;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    color: inherit;
    text-decoration: none;
    font-weight: 400;
    word-break: break-word;
    max-height: calc(14px * 1.35 * 2);
}

.product_vitrine_grid__module .product_vitrine__record .product-card__title-link:hover{
    opacity: 0.75;
}

.product_vitrine_grid__module .product_vitrine__record .product-card__image{
    position: relative;
    overflow: hidden;
    border-radius: 0;
    padding-top: 130%;
    background: transparent;
}

.product_vitrine_grid__module .product_vitrine__record .product-card__image-link{
    position: absolute;
    inset: 0;
    display: block;
    text-decoration: none;
}

.product_vitrine_grid__module .product_vitrine__record .product-card__image-media, .product_vitrine_grid__module .product_vitrine__detail .product-card__image-media{
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.product_vitrine_grid__module .product_vitrine__record .product-card__image-media{
    position: absolute;
    inset: 0;
    margin: auto;
    max-width: 100%;
    max-height: 100%;
    padding: 0;
    transition: transform 0.28s ease;
}

.product_vitrine_grid__module .product_vitrine__record:hover .product-card__image-media{
    transform: scale(1.02);
}

.product_vitrine_grid__module .product-card__favorite{
    position: absolute;
    top: 6.4px;
    right: 0;
    z-index: 3;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 28px;
    height: 28px;
    padding: 0 7.2px;
    border: 0;
    border-radius: 0;
    background: #ebebeb;
    color: var(--product-vitrine-ink);
    cursor: pointer;
    transition:
        opacity 0.2s ease,
        background 0.2s ease,
        color 0.2s ease,
        border-color 0.2s ease,
        box-shadow 0.2s ease;
}

.product_vitrine_grid__module .product-card__favorite:hover{
    opacity: 0.78;
}

.product_vitrine_grid__module .product-card__favorite.is-active{
    background: #1f1f1f;
    color: #fff;
}

.product_vitrine_grid__module .product-card__favorite-icon{
    font-size: 13.12px;
    line-height: 1;
}

.product_vitrine_grid__module .product-card__favorite-label{
    display: none;
}

.product_vitrine_grid__module .product-card__favorite-icon--active{
    display: none;
}

.product_vitrine_grid__module .product-card__favorite.is-active .product-card__favorite-icon--idle{
    display: none;
}

.product_vitrine_grid__module .product-card__favorite.is-active .product-card__favorite-icon--active{
    display: inline;
}

.product_vitrine_grid__module .product-card__favorite.is-active .product-card__favorite-label--idle{
    display: none;
}

/* Листинг: активное избранное = только иконка + смена цвета (текст — в hint/aria-label,
   не наезжает на фото). Текстовый лейбл в карточке скрыт; в detail-виде остаётся (ниже). */
.product_vitrine_grid__module .product-card__favorite.is-active .product-card__favorite-label--active{
    display: none;
}

.product_vitrine_grid__module .product_vitrine__record .product-card__favorite.is-active{
    padding: 0 7.2px;
}

/* Кнопка «в сравнение» — иконка под избранным (правый верх), активное = смена цвета,
   текст в hint (aria-label/title), как у избранного. */
.product_vitrine_grid__module .product-card__compare{
    position: absolute;
    top: 40px;
    right: 0;
    z-index: 3;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 28px;
    height: 28px;
    padding: 0 7.2px;
    border: 0;
    border-radius: 0;
    background: #ebebeb;
    color: var(--product-vitrine-ink);
    cursor: pointer;
    transition: opacity 0.2s ease, background 0.2s ease, color 0.2s ease;
}

.product_vitrine_grid__module .product-card__compare:hover{
    opacity: 0.78;
}

.product_vitrine_grid__module .product-card__compare.is-active{
    background: #1f1f1f;
    color: #fff;
}

.product_vitrine_grid__module .product-card__compare-icon{
    font-size: 14.4px;
    line-height: 1;
}

.product_vitrine_grid__module .product_vitrine__detail .product-card__compare{
    position: static;
    align-self: start;
}

.product_vitrine_grid__module .product_vitrine__detail .product-card__favorite{
    position: static;
    justify-self: end;
    align-self: start;
    gap: 7.2px;
    min-width: auto;
    min-height: 38.4px;
    height: auto;
    padding: 8.8px 13.6px;
    border: 1px solid var(--product-vitrine-border);
    border-radius: var(--product-vitrine-control-radius);
    background: var(--product-vitrine-secondary-bg);
    color: var(--product-vitrine-ink);
    box-shadow: var(--product-vitrine-control-shadow);
    opacity: 1;
}

.product_vitrine_grid__module .product_vitrine__detail .product-card__favorite:hover{
    opacity: 1;
    border-color: var(--product-vitrine-border-active);
    background: var(--product-vitrine-secondary-bg-hover);
    box-shadow: var(--product-vitrine-control-shadow-hover);
}

.product_vitrine_grid__module .product_vitrine__detail .product-card__favorite-icon{
    font-size: 14.72px;
}

.product_vitrine_grid__module .product_vitrine__detail .product-card__favorite-label{
    display: inline;
    font-size: 13.44px;
    font-weight: 600;
    line-height: 1;
}

.product_vitrine_grid__module .product_vitrine__detail .product-card__favorite-label--active{
    display: none;
}

.product_vitrine_grid__module .product_vitrine__detail .product-card__favorite.is-active .product-card__favorite-label--active{
    display: inline;
}

.product_vitrine_grid__module .product_vitrine__detail .product-card__favorite.is-active{
    border-color: rgba(0, 91, 255, 0.24);
    background: rgba(0, 91, 255, 0.08);
    color: #16202a;
    box-shadow:
        var(--product-vitrine-control-shadow-active),
        0 8.8px 20px rgba(0, 91, 255, 0.08);
}

.product_vitrine_grid__module .product_vitrine__record-title{
    margin: 16px 0 0;
    font-size: 18px;
    line-height: 1.35;
    font-weight: 400;
    color: var(--product-vitrine-ink);
}

.product_vitrine_grid__module .product_vitrine__record-title-link{
    color: inherit;
    text-decoration: none;
    font-weight: 500;
}

.product_vitrine_grid__module .product_vitrine__record-title-link:hover{
    opacity: 0.75;
}

.product_vitrine_grid__module .product_vitrine__record-image{
    position: relative;
    overflow: hidden;
    border-radius: 0;
    padding-top: 130%;
    background: transparent;
}

.product_vitrine_grid__module .product_vitrine__record-image-link{
    position: absolute;
    inset: 0;
    display: block;
    text-decoration: none;
}

.product_vitrine_grid__module .product_vitrine__record-image img, .product_vitrine_grid__module .product_vitrine__show-image img{
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.product_vitrine_grid__module .product_vitrine__record-image img{
    position: absolute;
    inset: 0;
    margin: auto;
    max-width: 100%;
    max-height: 100%;
    padding: 0;
    transition: transform 0.28s ease;
}

.product_vitrine_grid__module .product_vitrine__record:hover .product_vitrine__record-image img{
    transform: scale(1.02);
}

.product_vitrine_grid__module .product_vitrine__record-note{
    display: none;
}

.product_vitrine_grid__module .product_vitrine__record-note > :first-child, .product_vitrine_grid__module .product_vitrine__show-note > :first-child, .product_vitrine_grid__module .product_vitrine__show-text > :first-child, .product_vitrine_grid__module .product_vitrine__detail .product-card__note > :first-child, .product_vitrine_grid__module .product_vitrine__detail .product-card__text > :first-child, .product_vitrine_grid__module .product_vitrine__text > :first-child{
    margin-top: 0;
}

.product_vitrine_grid__module .product_vitrine__record-note > :last-child, .product_vitrine_grid__module .product_vitrine__show-note > :last-child, .product_vitrine_grid__module .product_vitrine__show-text > :last-child, .product_vitrine_grid__module .product_vitrine__detail .product-card__note > :last-child, .product_vitrine_grid__module .product_vitrine__detail .product-card__text > :last-child, .product_vitrine_grid__module .product_vitrine__text > :last-child{
    margin-bottom: 0;
}

.product_vitrine_grid__module .product_vitrine__commerce{
    display: grid;
    gap: 7.2px;
    margin-top: auto;
    padding-top: 16px;
    border-top: 0;
}

.product_vitrine_grid__module .product-card__commerce{
    display: grid;
    gap: 7.2px;
    margin-top: auto;
    padding-top: 16px;
    border-top: 0;
}

.product_vitrine_grid__module .product_vitrine__prices{
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 7.2px 11.2px;
}

.product_vitrine_grid__module .product-card__prices{
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 7.2px 11.2px;
}

.product_vitrine_grid__module .product-card__price-line{
    display: inline-flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 5.6px 8.8px;
}

.product_vitrine_grid__module .product_vitrine__price{
    display: inline-block;
    font-size: 20px;
    font-weight: 400;
    color: var(--product-vitrine-ink);
    line-height: 1.1;
}

.product_vitrine_grid__module .product-card__price{
    display: inline-block;
    font-size: 20px;
    font-weight: 400;
    color: var(--product-vitrine-ink);
    line-height: 1.1;
}

.product_vitrine_grid__module .product-card__discount{
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 0 11.2px;
    border-radius: 0;
    background: #ebebeb;
    color: var(--product-vitrine-ink);
    font-size: 11px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.02em;
    white-space: nowrap;
}

.product_vitrine_grid__module .product-card__discount:empty{
    display: none;
}

.product_vitrine_grid__module .product_vitrine__price-old{
    position: relative;
    display: inline-block;
    color: var(--product-vitrine-muted);
    font-size: 13px;
    font-weight: 500;
    text-decoration: none;
}

.product_vitrine_grid__module .product-card__old-price{
    position: relative;
    display: inline-block;
    color: var(--product-vitrine-muted);
    font-size: 13px;
    font-weight: 500;
    text-decoration: none;
}

.product_vitrine_grid__module .product_vitrine__price-old::after{
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    right: 3.2px;
    height: 1px;
    background: #919191;
}

.product_vitrine_grid__module .product-card__old-price::after{
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    right: 3.2px;
    height: 1px;
    background: #919191;
}

.product_vitrine_grid__module .product_vitrine__price-old:empty{
    display: none;
}

.product_vitrine_grid__module .product-card__old-price:empty, .product_vitrine_grid__module .product-card__presence:empty, .product_vitrine_grid__module .product-card__summary:empty, .product_vitrine_grid__module .product-card__meta:empty, .product-card__gallery-slot:empty, .product-card__gallery:empty, .product_vitrine_grid__module .product-card__note:empty, .product_vitrine_grid__module .product-card__text:empty, .product_vitrine_grid__module .product-card__back:empty{
    display: none;
}

.product_vitrine_grid__module .product-card__summary{
    display: flex;
    flex-wrap: wrap;
    gap: 13.6px;
    align-items: center;
    margin: 5.6px 0 1.6px;
}

.product_vitrine_grid__module .product_vitrine__record .product-card__summary{
    gap: 5.6px;
    margin: 7.2px 0 0;
}

.product_vitrine_grid__module .product-card__model-summary{
    display: inline-flex;
    flex-wrap: wrap;
    gap: 3.2px 8.8px;
    align-items: center;
    color: rgba(34, 34, 34, 0.68);
    font-size: 12px;
    line-height: 1.35;
}

.product_vitrine_grid__module .product-card__model-chip{
    display: inline;
    min-height: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: inherit;
    font-size: inherit;
    font-weight: 500;
    line-height: inherit;
    white-space: normal;
}

.product_vitrine_grid__module .product-card__model-chip + .product-card__model-chip::before{
    content: "\2022";
    display: inline-block;
    margin-right: 8.8px;
    color: rgba(111, 125, 120, 0.52);
}

.product_vitrine_grid__module .product-card__model-chip--accent{
    color: #3f7d56;
    font-weight: 600;
}

.product_vitrine_grid__module .product_vitrine__record .product-card__model-summary{
    gap: 2.4px 7.2px;
    font-size: 11px;
}

.product_vitrine_grid__module .product_vitrine__record .product-card__model-chip{
    font-size: inherit;
}

.product_vitrine_grid__module .product_vitrine__record .product-card__model-chip + .product-card__model-chip::before{
    margin-right: 7.2px;
}

.product_vitrine_grid__module .product-card__brand{
    display: inline-grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: 11.2px;
    min-height: 48px;
    padding: 7.36px 11.52px;
    border: 0;
    border-radius: 5.12px;
    background: transparent;
}

.product_vitrine_grid__module .product-card__brand-media{
    display: grid;
    place-items: center;
    width: 41.6px;
    height: 41.6px;
    overflow: hidden;
    border: 0;
    border-radius: 4.48px;
    background: rgba(246, 249, 252, 0.96);
    box-shadow: none;
}

.product_vitrine_grid__module .product-card__brand-media.is-placeholder{
    background:
        linear-gradient(135deg, rgba(247, 250, 252, 0.98), rgba(232, 238, 245, 0.98));
}

.product_vitrine_grid__module .product-card__brand-image{
    display: block;
    width: 100%;
    height: 100%;
    padding: 5.44px;
    object-fit: contain;
}

.product_vitrine_grid__module .product-card__brand-copy{
    display: grid;
    gap: 1.92px;
    min-width: 0;
}

.product_vitrine_grid__module .product-card__brand-caption{
    color: #7a8794;
    font-size: 9.92px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    line-height: 1;
}

.product_vitrine_grid__module .product-card__brand-name{
    color: var(--product-vitrine-ink);
    font-size: 14.08px;
    font-weight: 600;
    line-height: 1.15;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.product_vitrine_grid__module .product-card__brand-placeholder{
    display: grid;
    place-items: center;
    width: 100%;
    height: 100%;
    color: #52606d;
    font-size: 12.16px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    line-height: 1;
}

.product_vitrine_grid__module .product_vitrine__record .product-card__brand{
    min-height: 42.4px;
    padding: 5.44px 8.32px;
    gap: 8.8px;
}

.product_vitrine_grid__module .product_vitrine__record .product-card__brand-media{
    width: 34.4px;
    height: 34.4px;
}

.product_vitrine_grid__module .product_vitrine__record .product-card__brand-caption{
    font-size: 8.96px;
}

.product_vitrine_grid__module .product_vitrine__record .product-card__brand-name{
    font-size: 12.8px;
}

.product_vitrine_grid__module .product_vitrine__record .product-card__brand-placeholder{
    font-size: 10.88px;
}

.product_vitrine_grid__module .product-card__review-summary{
    display: inline-flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8.8px;
    min-height: 48px;
    padding: 8px 12.8px;
    border: 1px solid rgba(214, 223, 220, 0.9);
    border-radius: 5.12px;
    background: rgba(250, 252, 251, 0.92);
}

.product_vitrine_grid__module .product_vitrine__record .product-card__review-summary{
    min-height: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    gap: 5.6px;
}

.product_vitrine_grid__module .product-card__review-stars{
    position: relative;
    display: inline-block;
    width: 86.4px;
    height: 14.4px;
    color: rgba(31, 31, 31, 0.16);
    font-size: 14.4px;
    line-height: 1;
}

.product_vitrine_grid__module .product_vitrine__record .product-card__review-stars{
    width: 72.8px;
    height: 12.8px;
    font-size: 12.8px;
}

.product_vitrine_grid__module .product-card__review-stars::before, .product_vitrine_grid__module .product-card__review-stars-fill::before{
    content: "★★★★★";
    letter-spacing: 0.08em;
}

.product_vitrine_grid__module .product-card__review-stars-fill{
    position: absolute;
    inset: 0 auto 0 0;
    overflow: hidden;
    color: #d49b32;
    white-space: nowrap;
}

.product_vitrine_grid__module .product-card__review-rating{
    color: var(--product-vitrine-ink);
    font-size: 15.2px;
    font-weight: 700;
}

.product_vitrine_grid__module .product_vitrine__record .product-card__review-rating{
    font-size: 13.12px;
    font-weight: 600;
}

.product_vitrine_grid__module .product-card__review-count{
    color: var(--product-vitrine-muted);
    font-size: 14.08px;
}

.product_vitrine_grid__module .product_vitrine__record .product-card__review-count{
    font-size: 12.48px;
    white-space: nowrap;
}

.product_vitrine_grid__module .product_vitrine__presence{
    display: inline-flex;
    align-items: center;
    width: fit-content;
    min-height: 30px;
    padding: 0 15.2px;
    border-radius: 0;
    background: var(--product-vitrine-surface-soft);
    color: #000;
    font-size: 11px;
    font-weight: 500;
    line-height: 1;
    white-space: nowrap;
}

.product_vitrine_grid__module .product-card__presence{
    display: inline-flex;
    align-items: center;
    width: fit-content;
    min-height: 30px;
    padding: 0 15.2px;
    border-radius: 0;
    background: var(--product-vitrine-surface-soft);
    color: #000;
    font-size: 11px;
    font-weight: 500;
    line-height: 1;
    white-space: nowrap;
}

.product_vitrine_grid__module .product-card__availability{
    display: grid;
    gap: 7.2px;
}

.product_vitrine_grid__module .product-card__stock{
    color: var(--product-vitrine-muted);
    font-size: 13.12px;
    line-height: 1.35;
}

.product_vitrine_grid__module .product-card__stock:empty{
    display: none;
}

.product_vitrine_grid__module [data-product-selected-options]:empty{
    display: none;
}

.product_vitrine_grid__module .product-card--min .product-card__stock{
    display: none;
}

.product_vitrine_grid__module .product-card__selected-options{
    display: flex;
    flex-wrap: wrap;
    gap: 7.2px;
    margin: 7.2px 0 2.4px;
}

.product_vitrine_grid__module .product-card__selected-option{
    display: inline-flex;
    align-items: baseline;
    gap: 5.6px;
    padding: 6.08px 9.92px;
    border: 1px solid rgba(214, 223, 220, 0.95);
    border-radius: 5.12px;
    background: rgba(248, 250, 249, 0.98);
    line-height: 1.2;
}

.product_vitrine_grid__module .product-card__selected-option-label{
    color: var(--product-vitrine-muted);
    font-size: 11.84px;
    font-weight: 600;
}

.product_vitrine_grid__module .product-card__selected-option-value{
    color: var(--product-vitrine-ink);
    font-size: 12.8px;
    font-weight: 600;
}

.product_vitrine_grid__module .product-card__meta{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    gap: 12px;
    margin: 5.6px 0 3.2px;
}

.product_vitrine_grid__module .product-card__meta-item{
    display: grid;
    gap: 4.8px;
    padding: 13.6px 15.2px;
    border: 0;
    border-radius: 5.12px;
    background: rgba(247, 250, 252, 0.92);
}

.product_vitrine_grid__module .product-card__meta-label{
    color: var(--product-vitrine-muted);
    font-size: 11.2px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.product_vitrine_grid__module .product-card__meta-value{
    color: var(--product-vitrine-ink);
    font-size: 15.2px;
    font-weight: 500;
    line-height: 1.35;
}

.product_vitrine_grid__module .product_vitrine__mount--card, .product_vitrine_grid__module .product_vitrine__mount--detail{
    margin-top: 3.2px;
}

.product_vitrine_grid__module .product-card__mount--card, .product_vitrine_grid__module .product-card__mount--detail{
    margin-top: 3.2px;
}

.product_vitrine_grid__module .product_vitrine__record-more{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 44px;
    margin-top: 16px;
    padding: 12px 24px;
    border-radius: 0;
    border: 0;
    background: #1f1f1f;
    color: #fff;
    font-weight: 400;
    font-size: 14px;
    line-height: 1;
    text-decoration: none;
    transition:
        background-color 0.18s ease,
        color 0.18s ease,
        opacity 0.18s ease;
}

.product_vitrine_grid__module .product-card__cta{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 44px;
    margin-top: 16px;
    padding: 12px 24px;
    border-radius: 0;
    border: 0;
    background: #1f1f1f;
    color: #fff;
    font-weight: 400;
    font-size: 14px;
    line-height: 1;
    text-decoration: none;
    transition:
        background-color 0.18s ease,
        color 0.18s ease,
        opacity 0.18s ease;
}

.product_vitrine_grid__module .product_vitrine__record-more:hover{
    background: #414141;
    color: #fff;
}

.product_vitrine_grid__module .product-card__cta:hover{
    background: #414141;
    color: #fff;
}

.product_vitrine_grid__module .product_vitrine__record-more.is-disabled, .product_vitrine_grid__module .product_vitrine__record-more.is-loading{
    opacity: 0.62;
    pointer-events: none;
}

.product_vitrine_grid__module .product-card__cta.is-disabled, .product_vitrine_grid__module .product-card__cta.is-loading{
    opacity: 0.62;
    pointer-events: none;
}

.product_vitrine_grid__module .product_vitrine__record-more.is-added{
    background: var(--product-vitrine-cart-added-bg);
    color: var(--product-vitrine-cart-added-text);
}

.product_vitrine_grid__module .product-card__cta.is-added{
    background: var(--product-vitrine-cart-added-bg);
    color: var(--product-vitrine-cart-added-text);
}

.product_vitrine_grid__module .product_vitrine__record-more.is-added:hover, .product_vitrine_grid__module .product-card__cta.is-added:hover{
    background: var(--product-vitrine-cart-added-bg-hover);
    color: var(--product-vitrine-cart-added-text);
}

.product_vitrine_grid__module .product_vitrine--detail{
    margin-top: 8px;
}

.product_vitrine_grid__module .product_vitrine__detail{
    display: grid;
    gap: 21.6px;
    padding: clamp(16px, 2.6vw, 27.2px);
    border: 1px solid rgba(220, 226, 232, 0.95);
    border-radius: 7.68px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.98)),
        var(--product-vitrine-surface);
    box-shadow:
        0 20px 48px rgba(34, 48, 62, 0.08),
        0 5.6px 16px rgba(34, 48, 62, 0.04);
}

.product_vitrine_grid__module .product-card__hero{
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.95fr) minmax(288px, 352px);
    gap: 20px 21.6px;
    align-items: start;
}

.product_vitrine_grid__module .product-card__hero-media, .product_vitrine_grid__module .product-card__hero-main, .product_vitrine_grid__module .product-card__hero-buy, .product_vitrine_grid__module .product-card__content{
    min-width: 0;
}

.product_vitrine_grid__module .product-card__hero-media{
    display: grid;
    width: min(100%, 528px);
    justify-self: center;
}

.product_vitrine_grid__module .product-card__media-stage{
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 16px;
    align-items: start;
}

.product_vitrine_grid__module .product-card__media-stage:has(.product-card__gallery){
    grid-template-columns: 88px minmax(0, 1fr);
}

.product_vitrine_grid__module .product_vitrine__detail .product-card__gallery{
    display: grid;
    grid-template-rows: auto minmax(0, 1fr) auto;
    gap: 8.8px;
    align-content: start;
    justify-items: center;
    position: sticky;
    top: 16px;
    width: 88px;
    max-height: 600px;
}

.product-card__gallery-viewport{
    width: 100%;
    min-height: 0;
    max-height: calc(600px - 80px);
    overflow: hidden;
}

.product-card__gallery-track{
    display: grid;
    gap: 11.2px;
    align-content: start;
    overflow-y: auto;
    overflow-x: hidden;
    max-height: 100%;
    padding-right: 1.6px;
    scrollbar-width: none;
}

.product-card__gallery-track::-webkit-scrollbar{
    width: 0;
    height: 0;
}

.product-card__gallery-nav{
    position: relative;
    width: 100%;
    height: 30.4px;
    border: 1px solid var(--product-vitrine-border);
    border-radius: var(--product-vitrine-control-radius);
    background: rgba(255, 255, 255, 0.96);
    box-shadow: var(--product-vitrine-control-shadow);
    cursor: pointer;
    transition:
        border-color 0.18s ease,
        background 0.18s ease,
        box-shadow 0.18s ease,
        opacity 0.18s ease;
}

.product-card__gallery-nav::before{
    content: "";
    position: absolute;
    inset: 0;
    margin: auto;
    width: 11.2px;
    height: 11.2px;
    border-top: 2px solid currentColor;
    border-right: 2px solid currentColor;
}

.product-card__gallery-nav--prev::before{
    transform: rotate(-45deg);
    top: 3.2px;
}

.product-card__gallery-nav--next::before{
    transform: rotate(135deg);
    bottom: 3.2px;
}

.product-card__gallery-nav:hover{
    border-color: var(--product-vitrine-border-active);
    background: #fff;
    box-shadow: var(--product-vitrine-control-shadow-hover);
}

.product-card__gallery-nav:disabled{
    opacity: 0.42;
    cursor: default;
    box-shadow: none;
}

.product_vitrine_grid__module .product-card__image-button{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: zoom-in;
}

.product_vitrine_grid__module .product-card__image-button:focus-visible{
    outline: 2px solid var(--product-vitrine-border-active);
    outline-offset: 3.2px;
}

.product_vitrine_grid__module .product_vitrine__detail .product-card__image{
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border-radius: 7.68px;
    height: 600px;
    min-height: 600px;
    padding: clamp(12px, 1.3vw, 16px);
    background:
        radial-gradient(circle at top left, rgba(248, 251, 255, 0.96), transparent 45%),
        linear-gradient(180deg, #ffffff, #f3f6f9);
    border: 1px solid rgba(225, 231, 237, 0.95);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9);
    position: sticky;
    top: 16px;
}

.product_vitrine_grid__module .product_vitrine__detail .product-card__image-button .product-card__image-media{
    width: 100%;
    height: 100%;
}

.product_vitrine_grid__module .product_vitrine__detail .product-card__image-media{
    display: block;
    width: 100%;
    height: 100%;
    min-height: 0;
    max-width: 100%;
    max-height: 100%;
    margin: 0;
    padding: 0;
    object-fit: contain;
    object-position: center center;
}

.product-card__gallery-item{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 80px;
    height: 80px;
    padding: 5.6px;
    border: 1px solid var(--product-vitrine-border);
    border-radius: var(--product-vitrine-control-radius);
    background: #fff;
    cursor: pointer;
    box-shadow: var(--product-vitrine-control-shadow);
    transition:
        border-color 0.18s ease,
        transform 0.18s ease,
        box-shadow 0.18s ease;
}

.product-card__gallery-item:hover{
    border-color: rgba(0, 91, 255, 0.34);
    transform: translateY(-1px);
    box-shadow: var(--product-vitrine-control-shadow-hover);
}

.product-card__gallery-item.is-active{
    border-color: var(--product-vitrine-border-active);
    box-shadow:
        var(--product-vitrine-control-shadow-active),
        0 8.8px 20px rgba(0, 91, 255, 0.12);
}

.product-card__gallery-image{
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.product-gallery-viewer{
    position: fixed;
    inset: 0;
    z-index: 1000;
    display: grid;
    place-items: center;
    padding: 24px;
}

.product-gallery-viewer[hidden]{
    display: none !important;
}

.product-gallery-viewer__backdrop{
    position: absolute;
    inset: 0;
    background: rgba(15, 23, 42, 0.64);
    backdrop-filter: blur(3.2px);
}

.product-gallery-viewer__dialog{
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    grid-template-rows: minmax(0, 1fr) auto;
    gap: 16px;
    width: min(94vw, 1248px);
    height: min(88vh, 832px);
    padding: 16px;
    border-radius: var(--product-vitrine-panel-radius);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(245, 248, 251, 0.98)),
        #fff;
    box-shadow:
        0 32px 64px rgba(15, 23, 42, 0.28),
        0 8px 24px rgba(15, 23, 42, 0.12);
}

.product-gallery-viewer__close{
    position: absolute;
    top: 16px;
    right: 16px;
    z-index: 2;
    min-height: 36px;
    padding: 0 12.8px;
    border: 1px solid var(--product-vitrine-border);
    border-radius: var(--product-vitrine-control-radius);
    background: rgba(255, 255, 255, 0.94);
    cursor: pointer;
}

.product-gallery-viewer__stage{
    overflow: hidden;
    border: 1px solid rgba(225, 231, 237, 0.95);
    border-radius: var(--product-vitrine-panel-radius);
    background:
        radial-gradient(circle at top left, rgba(248, 251, 255, 0.96), transparent 45%),
        linear-gradient(180deg, #ffffff, #f3f6f9);
}

.product-gallery-viewer__track{
    display: flex;
    height: 100%;
    transition: transform 0.28s ease;
    will-change: transform;
}

.product-gallery-viewer__slide{
    flex: 0 0 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
    min-height: 0;
    padding: 24px;
}

.product-gallery-viewer__image{
    display: block;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

.product-gallery-viewer__nav{
    align-self: center;
    width: 44.8px;
    height: 44.8px;
    border: 1px solid var(--product-vitrine-border);
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: var(--product-vitrine-control-shadow);
    cursor: pointer;
}

.product-gallery-viewer__nav::before{
    content: "";
    display: block;
    width: 12.48px;
    height: 12.48px;
    margin: auto;
    border-top: 2px solid currentColor;
    border-right: 2px solid currentColor;
}

.product-gallery-viewer__nav--prev::before{
    transform: rotate(-135deg);
}

.product-gallery-viewer__nav--next::before{
    transform: rotate(45deg);
}

.product-gallery-viewer__nav:disabled{
    opacity: 0.35;
    cursor: default;
    box-shadow: none;
}

.product-gallery-viewer__thumbs{
    grid-column: 1 / -1;
    display: flex;
    gap: 11.2px;
    overflow-x: auto;
    padding-bottom: 1.6px;
    scrollbar-width: none;
}

.product-gallery-viewer__thumbs::-webkit-scrollbar{
    width: 0;
    height: 0;
}

.product-gallery-viewer__thumb{
    flex: 0 0 86.4px;
    height: 86.4px;
    padding: 5.6px;
    border: 1px solid var(--product-vitrine-border);
    border-radius: var(--product-vitrine-control-radius);
    background: #fff;
    cursor: pointer;
}

.product-gallery-viewer__thumb.is-active{
    border-color: var(--product-vitrine-border-active);
    box-shadow: var(--product-vitrine-control-shadow-active);
}

.product-gallery-viewer__thumb-image{
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

body.product-gallery-viewer-open{
    overflow: hidden;
}

.product_vitrine_grid__module .product-card__hero-main{
    display: grid;
    gap: 16px;
    align-content: start;
}

.product_vitrine_grid__module .product-card__hero-options{
    display: grid;
    gap: 14.4px;
}

.product_vitrine_grid__module .product-card__hero-options:empty{
    display: none;
}

.product_vitrine_grid__module .product-card__hero-options .product-vitrine-variant-picker{
    padding: 16px 16.8px;
    border: 1px solid var(--product-vitrine-border-soft);
    border-radius: var(--product-vitrine-panel-radius);
    background: rgba(255, 255, 255, 0.96);
}

.product_vitrine_grid__module .product-card__hero-header{
    display: grid;
    gap: 12.8px;
}

.product_vitrine_grid__module .product-card__title-wrap{
    display: grid;
    gap: 7.2px;
}

.product_vitrine_grid__module .product_vitrine__detail .product-card__badges{
    display: flex;
    flex-wrap: wrap;
    gap: 8.8px;
}

.product_vitrine_grid__module .product_vitrine__detail .product-card__title{
    margin: 0;
    color: #16202a;
    font-size: clamp(19.2px, 1.9vw, 26.4px);
    line-height: 1.28;
    font-weight: 700;
    letter-spacing: -0.02em;
    display: -webkit-box;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    max-height: calc(clamp(19.2px, 1.9vw, 26.4px) * 1.28 * 3);
}

.product_vitrine_grid__module .product_vitrine__detail .product-card__title-wrap.is-expanded .product-card__title{
    display: block;
    overflow: visible;
    text-overflow: clip;
    -webkit-line-clamp: unset;
    max-height: none;
}

.product_vitrine_grid__module .product-card__title-more{
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    width: fit-content;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--product-vitrine-muted);
    font-size: 13.12px;
    font-weight: 600;
    line-height: 1.2;
    cursor: pointer;
}

.product_vitrine_grid__module .product-card__title-more:hover{
    color: var(--product-vitrine-ink);
}

.product_vitrine_grid__module .product-card__title-more[hidden]{
    display: none;
}

.product_vitrine_grid__module .product_vitrine__detail .product-card__summary{
    display: flex;
    flex-wrap: wrap;
    gap: 10.4px 16px;
    padding: 13.6px 15.2px;
    border: 1px solid var(--product-vitrine-border-soft);
    border-radius: var(--product-vitrine-panel-radius);
    background: rgba(248, 250, 252, 0.9);
}

.product_vitrine_grid__module .product_vitrine__detail .product-card__meta{
    display: grid;
    gap: 11.2px;
    margin: 0;
    padding: 16px 16.8px;
    border: 1px solid var(--product-vitrine-border-soft);
    border-radius: var(--product-vitrine-panel-radius);
    background: #fff;
}

.product_vitrine_grid__module .product-card__buy-meta{
    display: grid;
    gap: 11.2px;
}

.product_vitrine_grid__module .product-card__buy-meta .product-card__meta{
    gap: 8.8px;
    padding: 13.6px 15.2px;
    border-radius: calc(var(--product-vitrine-panel-radius) - 1.6px);
    background: var(--product-vitrine-secondary-bg);
}

.product_vitrine_grid__module .product-card__meta-item{
    display: grid;
    grid-template-columns: minmax(112px, auto) minmax(0, 1fr);
    gap: 8px 14.4px;
    align-items: baseline;
}

.product_vitrine_grid__module .product-card__meta-label{
    color: #7a8794;
    font-size: 14.08px;
    font-weight: 600;
}

.product_vitrine_grid__module .product-card__meta-value{
    color: #16202a;
    font-size: 15.2px;
    font-weight: 600;
}

.product_vitrine_grid__module .product-card__buy-meta .product-card__meta-item{
    grid-template-columns: minmax(83.2px, auto) minmax(0, 1fr);
    gap: 5.6px 12px;
}

.product_vitrine_grid__module .product-card__buy-meta .product-card__meta-label{
    font-size: 12.48px;
    letter-spacing: 0.01em;
    text-transform: uppercase;
}

.product_vitrine_grid__module .product-card__buy-meta .product-card__meta-value{
    font-size: 14.08px;
}

.product_vitrine_grid__module .product-card__buy-meta .product-card__brand--meta{
    min-height: 0;
    padding: 0;
    gap: 10.4px;
}

.product_vitrine_grid__module .product-card__buy-meta .product-card__brand--meta .product-card__brand-media{
    width: 35.2px;
    height: 35.2px;
}

.product_vitrine_grid__module .product-card__buy-meta .product-card__brand--meta .product-card__brand-caption{
    font-size: 9.6px;
}

.product_vitrine_grid__module .product-card__buy-meta .product-card__brand--meta .product-card__brand-name{
    font-size: 14.4px;
}

.product_vitrine_grid__module .product_vitrine__detail .product-card__selected-options{
    margin-top: 12px;
}

.product_vitrine_grid__module .product_vitrine__detail .product-card__note{
    padding: 16px 16.8px;
    border: 1px solid var(--product-vitrine-border-soft);
    border-radius: var(--product-vitrine-panel-radius);
    background: rgba(255, 255, 255, 0.92);
    color: #4a5866;
    line-height: 1.65;
    font-size: 15.68px;
}

.product_vitrine_grid__module .product-card__hero-buy{
    position: sticky;
    top: 16px;
    display: grid;
    gap: 13.6px;
}

.product_vitrine_grid__module .product-card__buy-panel{
    position: relative;
    display: grid;
    gap: 16px;
    padding: 17.6px 17.6px 18.4px;
    border-radius: 9.92px;
    background: #fff;
    border: 1px solid var(--product-vitrine-border);
    box-shadow:
        0 15.2px 32px rgba(34, 48, 62, 0.07),
        0 4px 8.8px rgba(34, 48, 62, 0.04);
}

.product_vitrine_grid__module .product_vitrine__detail .product-card__commerce{
    display: grid;
    gap: 10.4px;
}

.product_vitrine_grid__module .product_vitrine__detail .product-card__prices{
    display: grid;
    gap: 5.6px;
}

.product_vitrine_grid__module .product_vitrine__detail .product-card__price-line{
    gap: 7.2px 11.2px;
}

.product_vitrine_grid__module .product_vitrine__detail .product-card__price{
    color: #16202a;
    font-size: clamp(32px, 3vw, 43.2px);
    line-height: 1;
    font-weight: 800;
    letter-spacing: -0.04em;
}

.product_vitrine_grid__module .product_vitrine__detail .product-card__discount{
    min-height: 30.4px;
    padding: 0 12.8px;
    font-size: 12px;
}

.product_vitrine_grid__module .product_vitrine__detail .product-card__old-price{
    color: #8d98a4;
    font-size: 16px;
    text-decoration: line-through;
    min-height: 18.4px;
}

.product_vitrine_grid__module .product_vitrine__detail .product-card__presence{
    display: inline-flex;
    align-items: center;
    width: fit-content;
    min-height: 32px;
    padding: 7.2px 12px;
    border-radius: 8.32px;
    background: rgba(34, 197, 94, 0.12);
    color: #157347;
    font-size: 14.4px;
    font-weight: 700;
}

.product_vitrine_grid__module .product_vitrine__detail .product-card__stock{
    color: #667281;
    font-size: 14.72px;
    font-weight: 500;
}

.product_vitrine_grid__module .product_vitrine__detail .product-card__mount--detail{
    margin: 0;
}

.product_vitrine_grid__module .product-card__content{
    display: grid;
    gap: 16px;
    padding: 19.2px 20.8px;
    border: 1px solid var(--product-vitrine-border);
    border-radius: var(--product-vitrine-panel-radius);
    background: #fff;
}

.product_vitrine_grid__module .product_vitrine__detail .product-card__text{
    display: grid;
    gap: 16px;
    color: #4a5866;
    line-height: 1.68;
}

.product_vitrine_grid__module .product-card__tabs{
    display: grid;
    gap: 20px;
    margin-top: 24px;
}

.product_vitrine_grid__module .product-card__tabs-nav{
    display: flex;
    flex-wrap: wrap;
    gap: 0;
    border-bottom: 1px solid var(--product-vitrine-line);
    margin: 0;
    padding: 0 4px;
    position: relative;
    align-items: stretch;
}

/* Прочие кнопки (naviborslick / back / select / input / variant-picker)
   оставляем на старом «кнопочном» стиле. Табы выводим как underline-nav. */
.product_vitrine_grid__module .product_vitrine__show-text button.naviborslick, .product_vitrine_grid__module .product_vitrine__show-text button.naviborkromkaslick, .product_vitrine_grid__module .product_vitrine__detail .product-card__text button.naviborslick, .product_vitrine_grid__module .product_vitrine__detail .product-card__text button.naviborkromkaslick, .product_vitrine_grid__module .product_vitrine__detail .product-card__back, .product_vitrine_grid__module .product-vitrine-payment__select, .product_vitrine_grid__module .product-vitrine-payment__input, .product_vitrine_grid__module .product-vitrine-variant-picker__value{
    appearance: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 11.52px 16px;
    border: 1px solid var(--product-vitrine-border);
    border-radius: var(--product-vitrine-control-radius);
    background: var(--product-vitrine-secondary-bg);
    color: #304050;
    font: inherit;
    font-size: 14.4px;
    line-height: 1;
    cursor: pointer;
    box-shadow: var(--product-vitrine-control-shadow);
    transition:
        border-color 0.18s ease,
        background-color 0.18s ease,
        color 0.18s ease,
        box-shadow 0.18s ease,
        transform 0.18s ease;
}

.product_vitrine_grid__module .product_vitrine__show-text button.naviborslick:hover, .product_vitrine_grid__module .product_vitrine__show-text button.naviborkromkaslick:hover, .product_vitrine_grid__module .product_vitrine__detail .product-card__text button.naviborslick:hover, .product_vitrine_grid__module .product_vitrine__detail .product-card__text button.naviborkromkaslick:hover, .product_vitrine_grid__module .product_vitrine__detail .product-card__back:hover, .product_vitrine_grid__module .product-vitrine-payment__select:hover, .product_vitrine_grid__module .product-vitrine-payment__input:hover, .product_vitrine_grid__module .product-vitrine-variant-picker__value:hover:not(:disabled){
    border-color: rgba(0, 91, 255, 0.28);
    background: var(--product-vitrine-secondary-bg-hover);
    transform: translateY(-1px);
    box-shadow: var(--product-vitrine-control-shadow-hover);
}

/* Sleek underline-навигация для табов */
.product_vitrine_grid__module .product-card__tab{
    appearance: none;
    display: inline-flex;
    align-items: center;
    gap: 6.4px;
    padding: 13.6px 17.6px;
    margin: 0 1.6px -1px;
    border: 0;
    background: transparent;
    color: var(--product-vitrine-muted);
    font: inherit;
    font-size: 15.04px;
    font-weight: 500;
    line-height: 1.25;
    letter-spacing: 0.005em;
    cursor: pointer;
    border-bottom: 2px solid transparent;
    transition:
        color 0.18s ease,
        border-color 0.18s ease,
        background-color 0.18s ease;
    position: relative;
    white-space: nowrap;
}

.product_vitrine_grid__module .product-card__tab:hover{
    color: var(--product-vitrine-ink);
    background: rgba(0, 91, 255, 0.04);
    border-radius: 6.4px 6.4px 0 0;
}

.product_vitrine_grid__module .product-card__tab:focus-visible{
    outline: 2px solid rgba(0, 91, 255, 0.35);
    outline-offset: 2px;
    border-radius: 6.4px;
}

.product_vitrine_grid__module .product-card__tab.is-active{
    color: var(--product-vitrine-primary);
    border-bottom-color: var(--product-vitrine-primary);
    background: transparent;
}

.product_vitrine_grid__module .product-card__tabs-panels{
    display: block;
}

.product_vitrine_grid__module .product-card__tab-panel{
    display: none;
    padding: 21.6px 36px;
    border: 1px solid var(--product-vitrine-border);
    border-radius: var(--product-vitrine-panel-radius);
    background: #ffffff;
    box-shadow: 0 1px 2px rgba(15, 20, 32, 0.02);
    overflow: hidden;
    animation: product-card-tab-fade 0.25s ease-out;
}

.product_vitrine_grid__module .product-card__tab-panel.is-active{
    display: block;
}

@keyframes product-card-tab-fade{
    from { opacity: 0; transform: translateY(4px); }
    to   { opacity: 1; transform: translateY(0); }
}

.product_vitrine_grid__module .product-card__tab-panel-body{
    display: grid;
    gap: 12.8px;
    min-width: 0;
    max-width: 100%;
    color: #2a3440;
    font-size: 15.2px;
    line-height: 1.62;
}

.product_vitrine_grid__module .product-card__tab-panel-body h1, .product_vitrine_grid__module .product-card__tab-panel-body h2, .product_vitrine_grid__module .product-card__tab-panel-body h3, .product_vitrine_grid__module .product-card__tab-panel-body h4, .product_vitrine_grid__module .product-card__tab-panel-body h5, .product_vitrine_grid__module .product-card__tab-panel-body h6{
    margin: 4px 0 5.6px;
    color: var(--product-vitrine-ink);
    font-weight: 600;
    line-height: 1.3;
}

.product_vitrine_grid__module .product-card__tab-panel-body h3{ font-size: 16.8px; }
.product_vitrine_grid__module .product-card__tab-panel-body h4{ font-size: 15.68px; }

/* Списки во вкладках — привычные маркеры disc/decimal, аккуратный spacing */
.product_vitrine_grid__module .product-card__tab-panel-body ul, .product_vitrine_grid__module .product-card__tab-panel-body ol{
    margin: 5.6px 0;
    padding-left: 32px;
}

.product_vitrine_grid__module .product-card__tab-panel-body ul{
    list-style: disc outside;
}

.product_vitrine_grid__module .product-card__tab-panel-body ol{
    list-style: decimal outside;
}

.product_vitrine_grid__module .product-card__tab-panel-body ul ul{
    list-style: circle outside;
}

.product_vitrine_grid__module .product-card__tab-panel-body ul ul ul{
    list-style: square outside;
}

.product_vitrine_grid__module .product-card__tab-panel-body ol ol{
    list-style: lower-alpha outside;
}

.product_vitrine_grid__module .product-card__tab-panel-body ul ul, .product_vitrine_grid__module .product-card__tab-panel-body ul ol, .product_vitrine_grid__module .product-card__tab-panel-body ol ul, .product_vitrine_grid__module .product-card__tab-panel-body ol ol{
    margin: 4.8px 0 1.6px;
    padding-left: 25.6px;
}

.product_vitrine_grid__module .product-card__tab-panel-body li{
    color: #2a3440;
    line-height: 1.55;
    padding-left: 3.2px;
}

.product_vitrine_grid__module .product-card__tab-panel-body li + li{
    margin-top: 4.48px;
}

.product_vitrine_grid__module .product-card__tab-panel-body li::marker{
    color: var(--product-vitrine-primary);
}

.product_vitrine_grid__module .product-card__tab-panel-body li > p:first-child{
    margin-top: 0;
}

.product_vitrine_grid__module .product-card__tab-panel-body li > p:last-child{
    margin-bottom: 0;
}

.product_vitrine_grid__module .product-card__tab-panel-body a{
    color: var(--product-vitrine-primary);
    text-decoration: none;
    border-bottom: 1px dashed rgba(0, 91, 255, 0.35);
    transition: color 0.15s ease, border-color 0.15s ease;
}

.product_vitrine_grid__module .product-card__tab-panel-body a:hover{
    color: var(--product-vitrine-primary-hover);
    border-bottom-color: var(--product-vitrine-primary-hover);
}

.product_vitrine_grid__module .product-card__tab-panel-body blockquote{
    margin: 0;
    padding: 9.6px 16px;
    border-left: 3px solid var(--product-vitrine-primary);
    background: rgba(0, 91, 255, 0.04);
    color: var(--product-vitrine-ink);
    border-radius: 0 6.4px 6.4px 0;
}

/* Таблицы характеристик (ключ-значение) — часто именно вкладка «Технические характеристики» */
.product_vitrine_grid__module .product-card__tab-panel-body table{
    display: table;
    width: 100%;
    max-width: 100%;
    border-collapse: collapse;
    overflow-x: auto;
    font-size: 14.4px;
}

.product_vitrine_grid__module .product-card__tab-panel-body table tr + tr{
    border-top: 1px solid var(--product-vitrine-line);
}

.product_vitrine_grid__module .product-card__tab-panel-body table th, .product_vitrine_grid__module .product-card__tab-panel-body table td{
    padding: 8.8px 12px;
    text-align: left;
    vertical-align: top;
    color: #2a3440;
}

.product_vitrine_grid__module .product-card__tab-panel-body table th{
    width: 44%;
    font-weight: 500;
    color: var(--product-vitrine-muted);
    background: #fafbfc;
}

.product_vitrine_grid__module .product-card__tab-panel-body table tbody tr:hover td, .product_vitrine_grid__module .product-card__tab-panel-body table tbody tr:hover th{
    background: rgba(0, 91, 255, 0.03);
}

/* Частый шаблон «список характеристик» через <dl> */
.product_vitrine_grid__module .product-card__tab-panel-body dl{
    display: grid;
    grid-template-columns: minmax(140px, 1fr) 2fr;
    gap: 6.4px 16px;
    margin: 0;
}

.product_vitrine_grid__module .product-card__tab-panel-body dt{
    color: var(--product-vitrine-muted);
    font-weight: 500;
}

.product_vitrine_grid__module .product-card__tab-panel-body dd{
    margin: 0;
    color: #2a3440;
}

@media (max-width: 640px){
    .product_vitrine_grid__module .product-card__tabs-nav{
        overflow-x: auto;
        flex-wrap: nowrap;
        scrollbar-width: thin;
        -webkit-overflow-scrolling: touch;
    }
    .product_vitrine_grid__module .product-card__tab{
        font-size: 14.4px;
        padding: 11.2px 13.6px;
    }
    .product_vitrine_grid__module .product-card__tab-panel{
        padding: 16.8px 16px;
    }
    .product_vitrine_grid__module .product-card__tab-panel-body dl{
        grid-template-columns: 1fr;
        gap: 3.2px 0;
    }
    .product_vitrine_grid__module .product-card__tab-panel-body dl dt{
        margin-top: 4.8px;
    }}

.product_vitrine_grid__module .product-card__tab-panel-body > *{
    max-width: 100%;
}

.product_vitrine_grid__module .product-card__tab-panel-body p, .product_vitrine_grid__module .product-card__tab-panel-body ul, .product_vitrine_grid__module .product-card__tab-panel-body ol{
    margin: 0;
}

.product_vitrine_grid__module .product-card__tab-panel-body .mobile-skroller{
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
}

.product_vitrine_grid__module .product-card__tab-panel-body .mobile-skroller-wrapper, .product_vitrine_grid__module .product-card__tab-panel-body .list-img-pogonaz{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(192px, 1fr));
    gap: 15.2px;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    margin: 0;
    padding: 0;
    list-style: none;
}

.product_vitrine_grid__module .product-card__tab-panel-body .list-img-pogonaz__item{
    display: grid;
    align-content: start;
    gap: 8.8px;
    min-width: 0;
}

.product_vitrine_grid__module .product-card__tab-panel-body .list-img-pogonaz__img-wrapper{
    display: grid;
    place-items: center;
    width: 100%;
    min-width: 0;
}

.product_vitrine_grid__module .product-card__tab-panel-body .list-img-pogonaz__img{
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
    max-height: 224px;
    object-fit: contain;
}

.product_vitrine_grid__module .product-card__tab-panel-body .list-img-pogonaz__text{
    display: block;
    color: var(--product-vitrine-ink);
    font-size: 14.08px;
    line-height: 1.35;
    overflow-wrap: anywhere;
}

.product_vitrine_grid__module .product-card__tab-panel-body img{
    max-width: 100%;
    height: auto;
}

.product_vitrine_grid__module .product-card__tab-panel-body table{
    display: block;
    max-width: 100%;
    overflow-x: auto;
}

.product_vitrine_grid__module .product_vitrine__show-text tab{
    display: block;
    padding: 16px 17.6px;
    border: 1px solid var(--product-vitrine-border);
    border-radius: var(--product-vitrine-control-radius);
    background: #f8fafc;
}

.product_vitrine_grid__module .product_vitrine__detail .product-card__text tab{
    display: block;
    padding: 16px 17.6px;
    border: 1px solid var(--product-vitrine-border);
    border-radius: var(--product-vitrine-control-radius);
    background: #f8fafc;
}

.product_vitrine_grid__module .product_vitrine__show-text p{
    margin: 10.4px 0;
}

.product_vitrine_grid__module .product_vitrine__detail .product-card__text p{
    margin: 10.4px 0;
}

.product_vitrine_grid__module .product_vitrine__detail .product-card__text .mobile-skroller{
    max-width: 100%;
    overflow-x: hidden;
}

.product_vitrine_grid__module .product_vitrine__detail .product-card__text .mobile-skroller-wrapper{
    min-width: 0;
    width: 100%;
    max-width: 100%;
}

.product_vitrine_grid__module .product_vitrine__show-text strong, .product_vitrine_grid__module .product_vitrine__show-text b{
    color: var(--product-vitrine-ink);
    font-weight: 600;
}

.product_vitrine_grid__module .product_vitrine__detail .product-card__text strong, .product_vitrine_grid__module .product_vitrine__detail .product-card__text b{
    color: var(--product-vitrine-ink);
    font-weight: 600;
}

/* Inline-форматирование внутри вкладок карточки товара */
.product_vitrine_grid__module .product-card__tab-panel-body strong, .product_vitrine_grid__module .product-card__tab-panel-body b{
    font-weight: 600;
    color: var(--product-vitrine-ink);
}

.product_vitrine_grid__module .product-card__tab-panel-body em, .product_vitrine_grid__module .product-card__tab-panel-body i{
    font-style: italic;
    color: #2a3440;
}

.product_vitrine_grid__module .product-card__tab-panel-body u{
    text-decoration: underline;
    text-underline-offset: 2px;
}

.product_vitrine_grid__module .product-card__tab-panel-body mark{
    background: rgba(255, 221, 87, 0.55);
    color: var(--product-vitrine-ink);
    padding: 0.05em 0.25em;
    border-radius: 0.2em;
}

.product_vitrine_grid__module .product-card__tab-panel-body code, .product_vitrine_grid__module .product-card__tab-panel-body kbd, .product_vitrine_grid__module .product-card__tab-panel-body samp{
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
    font-size: 0.88em;
    background: #f4f5f7;
    color: #0e0f0f;
    padding: 0.08em 0.35em;
    border-radius: 0.28em;
    border: 1px solid var(--product-vitrine-line);
}

.product_vitrine_grid__module .product-card__tab-panel-body pre{
    background: #0e141a;
    color: #e6edf3;
    padding: 13.6px 16px;
    border-radius: 6.4px;
    overflow-x: auto;
    font-size: 13.6px;
    line-height: 1.5;
}

.product_vitrine_grid__module .product-card__tab-panel-body pre code{
    background: transparent;
    border: 0;
    color: inherit;
    padding: 0;
    font-size: inherit;
}

.product_vitrine_grid__module .product-card__tab-panel-body sup{
    vertical-align: super;
    font-size: 0.72em;
    line-height: 1;
}

.product_vitrine_grid__module .product-card__tab-panel-body sub{
    vertical-align: sub;
    font-size: 0.72em;
    line-height: 1;
}

.product_vitrine_grid__module .product-card__tab-panel-body small{
    font-size: 0.85em;
    color: var(--product-vitrine-muted);
}

.product_vitrine_grid__module .product-card__tab-panel-body hr{
    border: 0;
    height: 1px;
    background: var(--product-vitrine-line);
    margin: 8px 0;
}

.product_vitrine_grid__module .product_vitrine__detail .product-card__back{
    gap: 8px;
    width: 100%;
    font-size: 14.72px;
    font-weight: 600;
    text-decoration: none;
}

.product_vitrine_grid__module .product_vitrine__detail .product-card__back::before{
    content: "\2190";
    font-size: 16px;
}

.product_vitrine_grid__module .product-vitrine-variant-picker{
    display: grid;
    gap: 15.2px;
    padding: 2.4px 0;
}

.product_vitrine_grid__module .product-vitrine-variant-picker__group{
    display: grid;
    gap: 7.2px;
}

.product_vitrine_grid__module .product-vitrine-variant-picker__group-head{
    display: flex;
    align-items: baseline;
    gap: 12px;
}

.product_vitrine_grid__module .product-vitrine-variant-picker__label{
    font-size: 14.4px;
    font-weight: 700;
    color: var(--product-vitrine-ink);
}

.product_vitrine_grid__module .product-vitrine-variant-picker__values{
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    grid-auto-rows: 54.4px;
    gap: 6.4px;
    align-items: stretch;
}

.product_vitrine_grid__module .product_vitrine__detail .product-vitrine-variant-picker__values{
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.product_vitrine_grid__module .product-vitrine-variant-picker__value{
    position: relative;
    isolation: isolate;
    display: grid;
    grid-template-rows: 1fr;
    align-items: end;
    justify-items: stretch;
    width: 100%;
    min-width: 0;
    height: 100%;
    min-height: 44.8px;
    padding: 1.28px;
    gap: 1.6px;
    color: var(--variant-picker-text-color, var(--product-vitrine-ink));
    text-align: center;
    overflow: hidden;
    background-color: var(--variant-picker-background-color, var(--product-vitrine-secondary-bg));
    background-image: var(--variant-picker-background-image, none);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.product_vitrine_grid__module .product-vitrine-variant-picker__value:hover:not(:disabled), .product_vitrine_grid__module .product-vitrine-variant-picker__value:focus-visible{
    background-color: var(--variant-picker-background-color, var(--product-vitrine-secondary-bg-hover));
    background-image: var(--variant-picker-background-image, none);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.product_vitrine_grid__module .product-vitrine-variant-picker__value.has-preview{
    min-height: 41.6px;
    padding: 1.6px;
    background-size: contain;
    background-position: center;
    background-origin: content-box;
}

.product_vitrine_grid__module .product-vitrine-variant-picker__value.has-preview:hover:not(:disabled), .product_vitrine_grid__module .product-vitrine-variant-picker__value.has-preview:focus-visible{
    background-size: contain;
    background-position: center;
    background-origin: content-box;
}

/* Без перекрытия — иначе swatch-цвет/фотка показывается искажённо.
   Раньше тут был полупрозрачный градиент чтобы текст value был читаем
   поверх фото; теперь текст скрыт (см. .has-preview .__value-text),
   поэтому overlay не нужен. */
.product_vitrine_grid__module .product-vitrine-variant-picker__value.has-preview::before{
    content: none;
}

.product_vitrine_grid__module .product-vitrine-variant-picker__value[data-description]:not([data-description=""])::after{
    content: attr(data-description);
    position: absolute;
    left: 50%;
    bottom: calc(100% + 7.2px);
    z-index: 5;
    width: min(240px, calc(100vw - 32px));
    padding: 8px 10.4px;
    border-radius: 7.2px;
    background: rgba(15, 23, 42, 0.92);
    color: #fff;
    font-size: 11.36px;
    font-weight: 500;
    line-height: 1.35;
    text-align: left;
    box-shadow: 0 12.8px 28.8px rgba(15, 23, 42, 0.22);
    transform: translate(-50%, 5.6px);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition:
        opacity 0.16s ease,
        transform 0.16s ease,
        visibility 0.16s ease;
}

.product_vitrine_grid__module .product-vitrine-variant-picker__value[data-description]:not([data-description=""]):hover::after, .product_vitrine_grid__module .product-vitrine-variant-picker__value[data-description]:not([data-description=""]):focus-visible::after{
    opacity: 1;
    visibility: visible;
    transform: translate(-50%, 0);
}

.product_vitrine_grid__module .product-vitrine-variant-picker__value.is-selected{
    border-color: var(--product-vitrine-border-active);
    color: #16202a;
    box-shadow:
        var(--product-vitrine-control-shadow-active),
        0 8.8px 20px rgba(0, 91, 255, 0.1);
}

/* Аналогично без overlay в selected-state. */
.product_vitrine_grid__module .product-vitrine-variant-picker__value.has-preview.is-selected::before{
    content: none;
}

.product_vitrine_grid__module .product-vitrine-variant-picker__value.is-unavailable{
    opacity: 0.42;
    cursor: not-allowed;
}

.product_vitrine_grid__module .product-vitrine-variant-picker__preview{
    display: none;
}

.product_vitrine_grid__module .product-vitrine-variant-picker__preview-image{
    display: none;
}

.product_vitrine_grid__module .product-vitrine-variant-picker__value-body{
    display: grid;
    align-content: center;
    justify-items: center;
    min-width: 0;
    min-height: 0;
    width: 100%;
    height: 100%;
    padding: 0.8px 1.6px;
    border-radius: calc(var(--product-vitrine-control-radius) - 2.4px);
    background: var(--variant-picker-chip-background, rgba(255, 255, 255, 0.9));
    backdrop-filter: blur(2.88px);
    position: relative;
    z-index: 1;
}

.product_vitrine_grid__module .product-vitrine-variant-picker__value-text{
    display: -webkit-box;
    max-width: 100%;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-height: 1.12;
    font-size: 9.6px;
    font-weight: 500;
    letter-spacing: 0.01em;
    text-wrap: balance;
}

/* На swatch-кнопках с заливкой цветом/картинкой текст value прячем —
   при hover/focus его покажет tooltip через data-description (см.
   .product-vitrine-variant-picker__value[data-description]::after выше). */
.product_vitrine_grid__module .product-vitrine-variant-picker__value.has-preview .product-vitrine-variant-picker__value-text{
    display: none;
}
.product_vitrine_grid__module .product-vitrine-variant-picker__value.has-preview .product-vitrine-variant-picker__value-body{
    background: transparent;
    padding: 0;
}

.product_vitrine_grid__module .product-vitrine-variant-picker__meta{
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    font-size: 14.72px;
    color: var(--product-vitrine-muted);
}

.product_vitrine_grid__module .product-vitrine-variant-picker__actions{
    display: grid;
    gap: 9.6px;
    margin-top: 5.6px;
}

.product_vitrine_grid__module .product-vitrine-variant-picker__cta{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 14.4px 20px;
    border: 1px solid var(--product-vitrine-primary);
    border-radius: var(--product-vitrine-control-radius);
    background: var(--product-vitrine-primary);
    color: #fff;
    font-size: 15.2px;
    font-weight: 600;
    line-height: 1;
    cursor: pointer;
    box-shadow: var(--product-vitrine-primary-shadow);
    transition:
        background-color 0.18s ease,
        opacity 0.18s ease,
        transform 0.18s ease,
        box-shadow 0.18s ease;
}

.product_vitrine_grid__module .product-vitrine-variant-picker__cta:hover:not(:disabled){
    border-color: var(--product-vitrine-primary-hover);
    background: var(--product-vitrine-primary-hover);
    transform: translateY(-1px);
    box-shadow: 0 14.4px 28px rgba(0, 71, 199, 0.2);
}

.product_vitrine_grid__module .product-vitrine-variant-picker__cta.is-added{
    border-color: var(--product-vitrine-cart-added-border);
    background: var(--product-vitrine-cart-added-bg);
    color: var(--product-vitrine-cart-added-text);
    box-shadow: none;
}

.product_vitrine_grid__module .product-vitrine-variant-picker__cta.is-added:hover:not(:disabled){
    border-color: var(--product-vitrine-cart-added-border);
    background: var(--product-vitrine-cart-added-bg-hover);
    color: var(--product-vitrine-cart-added-text);
    box-shadow: none;
}

.product_vitrine_grid__module .product-vitrine-variant-picker__cta.is-disabled, .product_vitrine_grid__module .product-vitrine-variant-picker__cta.is-loading, .product_vitrine_grid__module .product-vitrine-payment__button.is-disabled{
    opacity: 0.62;
    cursor: not-allowed;
}

.product_vitrine_grid__module .product-vitrine-variant-picker__status{
    font-size: 14.4px;
    color: var(--product-vitrine-muted);
}

.product_vitrine_grid__module .product-vitrine-payment{
    display: grid;
    gap: 14.4px;
    margin-top: 8.8px;
    padding: 16px 16.8px 16.8px;
    border: 1px solid var(--product-vitrine-border-soft);
    border-radius: var(--product-vitrine-panel-radius);
    background: #f8fafc;
}

.product_vitrine_grid__module .product-vitrine-payment__header{
    display: grid;
    gap: 5.6px;
}

.product_vitrine_grid__module .product-vitrine-payment__head{
    color: var(--product-vitrine-ink);
    font-size: 16px;
    font-weight: 700;
}

.product_vitrine_grid__module .product-vitrine-payment__subhead{
    color: #6d7a88;
    font-size: 13.44px;
    line-height: 1.5;
}

.product_vitrine_grid__module .product-vitrine-payment__section, .product_vitrine_grid__module .product-vitrine-payment__form-shell{
    display: grid;
    gap: 12.8px;
    padding: 15.2px 16px;
    border: 1px solid var(--product-vitrine-border-soft);
    border-radius: calc(var(--product-vitrine-panel-radius) - 0.64px);
    background: #ffffff;
}

.product_vitrine_grid__module .product-vitrine-payment__section--action{
    gap: 13.6px;
}

.product_vitrine_grid__module .product-vitrine-payment__section-title{
    color: #7a8794;
    font-size: 11.68px;
    font-weight: 700;
    letter-spacing: 0.08em;
    line-height: 1.2;
    text-transform: uppercase;
}

.product_vitrine_grid__module .product-vitrine-payment__controls{
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 11.2px;
    align-items: end;
}

.product_vitrine_grid__module .product-vitrine-payment__select{
    width: 100%;
    min-height: 48px;
    padding: 11.2px 15.2px;
    color: var(--product-vitrine-ink);
    font: inherit;
}

.product_vitrine_grid__module .product-vitrine-payment__input{
    width: 100%;
    min-height: 48px;
    padding: 11.2px 15.2px;
    color: var(--product-vitrine-ink);
    font: inherit;
}

.product_vitrine_grid__module .product-vitrine-payment__input:focus, .product_vitrine_grid__module .product-vitrine-payment__input:focus-visible, .product_vitrine_grid__module .product-vitrine-payment__select:focus, .product_vitrine_grid__module .product-vitrine-payment__select:focus-visible{
    outline: none;
    border-color: rgba(0, 91, 255, 0.35);
    box-shadow:
        var(--product-vitrine-control-shadow-hover),
        0 0 0 2.88px rgba(0, 91, 255, 0.12);
}

.product_vitrine_grid__module .product-vitrine-payment__button{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    min-width: 200px;
    padding: 12px 21.6px;
    border: 1px solid var(--product-vitrine-primary);
    border-radius: var(--product-vitrine-control-radius);
    background: var(--product-vitrine-primary);
    color: #fff;
    font-size: 14.72px;
    font-weight: 600;
    cursor: pointer;
    box-shadow: 0 8.8px 17.6px rgba(0, 71, 199, 0.16);
    transition:
        background-color 0.18s ease,
        opacity 0.18s ease,
        transform 0.18s ease;
}

.product_vitrine_grid__module .product-vitrine-payment__button:hover:not(:disabled){
    border-color: var(--product-vitrine-primary-hover);
    background: var(--product-vitrine-primary-hover);
    transform: translateY(-1px);
}

.product_vitrine_grid__module .product-vitrine-payment__message{
    padding: 13.6px 15.2px;
    border: 1px solid rgba(182, 56, 56, 0.18);
    border-radius: calc(var(--product-vitrine-panel-radius) - 1.28px);
    background: #fff6f6;
    color: #9c3434;
    font-size: 14.4px;
    line-height: 1.5;
}

.product_vitrine_grid__module .product-vitrine-payment__auth{
    display: grid;
    gap: 12px;
}

.product_vitrine_grid__module .product-vitrine-payment__auth-text, .product_vitrine_grid__module .product-vitrine-payment__auth-state{
    font-size: 14.08px;
    line-height: 1.45;
    color: #5d6a78;
}

.product_vitrine_grid__module .product-vitrine-payment__auth-state{
    display: grid;
    gap: 5.6px;
    padding: 13.6px 15.2px;
    border: 1px dashed rgba(128, 141, 155, 0.38);
    border-radius: calc(var(--product-vitrine-panel-radius) - 1.28px);
    background: #f7f9fb;
}

.product_vitrine_grid__module .product-vitrine-payment__auth-state-label{
    color: #16202a;
    font-size: 12.32px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.product_vitrine_grid__module .product-vitrine-payment__auth-grid{
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.product_vitrine_grid__module .product-vitrine-payment__field{
    display: grid;
    gap: 6.4px;
    min-width: 0;
}

.product_vitrine_grid__module .product-vitrine-payment__field--wide{
    grid-column: 1 / -1;
}

.product_vitrine_grid__module .product-vitrine-payment__label{
    font-size: 12.48px;
    font-weight: 600;
    color: #6d7a88;
}

.product_vitrine_grid__module .product-vitrine-payment__form{
    overflow: auto;
    min-width: 0;
}

.product_vitrine_grid__module .product-vitrine-payment__form > :first-child{
    margin-top: 0;
}

.product_vitrine_grid__module .product-vitrine-payment__form > :last-child{
    margin-bottom: 0;
}

.product_vitrine_grid__module .product_vitrine--grid-5 .product_vitrine__records{
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.product_vitrine_grid__module .product_vitrine--grid-4 .product_vitrine__records{
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.product_vitrine_grid__module .product_vitrine--grid-3 .product_vitrine__records{
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.product_vitrine_grid__module .product_vitrine--grid-2 .product_vitrine__records{
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.product_vitrine_grid__module .product_vitrine--align-center .product_vitrine__record, .product_vitrine_grid__module .product_vitrine--align-center .product_vitrine__detail{
    text-align: center;
}

.product_vitrine_grid__module .product_vitrine--align-center .product_vitrine__record-more, .product_vitrine_grid__module .product_vitrine--align-center .product_vitrine__presence, .product_vitrine_grid__module .product_vitrine--align-center .product-vitrine-variant-picker__meta{
    margin-left: auto;
    margin-right: auto;
}

.product_vitrine_grid__module .product_vitrine--align-center .product-card__cta, .product_vitrine_grid__module .product_vitrine--align-center .product-card__presence{
    margin-left: auto;
    margin-right: auto;
}

.product_vitrine_grid__module .product_vitrine--align-center .product_vitrine__prices, .product_vitrine_grid__module .product_vitrine--align-center .product-vitrine-variant-picker__values{
    justify-content: center;
}

.product_vitrine_grid__module .product_vitrine--align-center .product-vitrine-variant-picker__group-head{
    justify-content: center;
}

.product_vitrine_grid__module .product_vitrine--align-center .product-card__prices{
    justify-content: center;
}

.product_vitrine_grid__module .product_vitrine--ratio-portrait .product_vitrine__record-image{
    padding-top: 140%;
}

.product_vitrine_grid__module .product_vitrine--ratio-portrait .product_vitrine__record .product-card__image{
    padding-top: 140%;
}

.product_vitrine_grid__module .product_vitrine--ratio-landscape .product_vitrine__record-image{
    padding-top: 110%;
}

.product_vitrine_grid__module .product_vitrine--ratio-landscape .product_vitrine__record .product-card__image{
    padding-top: 110%;
}

.product_vitrine_grid__module .product_vitrine--skin-outline .product_vitrine__record{
    background: #fff;
    box-shadow: none;
    border-bottom-color: var(--product-vitrine-line);
}

.product_vitrine_grid__module .product_vitrine--skin-outline .product_vitrine__record-image{
    background: #fff;
    border: 0;
}

.product_vitrine_grid__module .product_vitrine--skin-outline .product_vitrine__record .product-card__image{
    background: #fff;
    border: 0;
}

.product_vitrine_grid__module .product_vitrine--skin-accent .product_vitrine__record{
    background: #fff;
    border-bottom-color: var(--product-vitrine-accent-strong);
    box-shadow: none;
}

.product_vitrine_grid__module .product_vitrine--skin-accent .product_vitrine__record-more{
    background: #1f1f1f;
    color: #fff;
}

.product_vitrine_grid__module .product_vitrine--skin-accent .product_vitrine__record-more:hover{
    background: #414141;
}

.product_vitrine_grid__module .product_vitrine--skin-accent .product-card__cta{
    background: #1f1f1f;
    color: #fff;
}

.product_vitrine_grid__module .product_vitrine--skin-accent .product-card__cta:hover{
    background: #414141;
}

.product_vitrine_grid__module .product_vitrine__detail--stacked{
    gap: 16px;
}

.product_vitrine_grid__module .product_vitrine__detail--stacked .product-card__hero{
    grid-template-columns: 1fr;
}

.product_vitrine_grid__module .product_vitrine__detail--stacked .product-card__hero-buy{
    position: static;
}

.product_vitrine_grid__module .product_vitrine__detail--stacked .product-card__media-stage, .product_vitrine_grid__module .product_vitrine__detail--stacked .product-card__media-stage:has(.product-card__gallery){
    grid-template-columns: 1fr;
}

.product_vitrine_grid__module .product_vitrine__detail--stacked .product-card__gallery, .product_vitrine_grid__module .product_vitrine__detail--stacked .product-card__image{
    position: static;
}

.product_vitrine_grid__module .product_vitrine__detail--stacked .product-card__gallery{
    width: auto;
    max-height: none;
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: minmax(0, 1fr);
}

.product_vitrine_grid__module .product_vitrine__detail--stacked .product-card__gallery-nav{
    display: none;
}

.product_vitrine_grid__module .product_vitrine__detail--stacked .product-card__gallery-viewport{
    max-height: none;
    overflow-x: auto;
    overflow-y: hidden;
}

.product_vitrine_grid__module .product_vitrine__detail--stacked .product-card__gallery-track{
    grid-auto-flow: column;
    grid-auto-columns: 76px;
    overflow: visible;
    padding-bottom: 3.2px;
}

@media (max-width: 1180px){
    .product_vitrine_grid__module .product_vitrine__groups-list{
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .product_vitrine_grid__module .product_vitrine__records{
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .product_vitrine_grid__module .product_vitrine--grid-5 .product_vitrine__records, .product_vitrine_grid__module .product_vitrine--grid-4 .product_vitrine__records{
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .product_vitrine_grid__module .product_vitrine--grid-3 .product_vitrine__records{
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .product_vitrine_grid__module .product_vitrine--grid-2 .product_vitrine__records{
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .product_vitrine_grid__module .product-card__hero{
        grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
    }

    .product_vitrine_grid__module .product-card__hero-buy{
        grid-column: 1 / -1;
        grid-row: auto;
        position: static;
    }

    .product_vitrine_grid__module .product-card__buy-panel{
        grid-template-columns: minmax(0, 1fr);
    }}

@media (max-width: 900px){
    .product_vitrine_grid__module .bnx-breadcrumbs{
        margin-bottom: 16px;
        font-size: 12px;
    }

    .product_vitrine_grid__module .bnx-breadcrumbs .bnx-breadcrumbs__list{
        gap: 4px 8px;
    }

    .product_vitrine_grid__module .bnx-breadcrumbs .bnx-breadcrumbs__item{
        gap: 8px;
    }

    .product_vitrine_grid__module .product_vitrine__filters-head{
        grid-template-columns: minmax(0, 1fr);
    }

    .product_vitrine_grid__module .product_vitrine__filters-actions{
        justify-content: flex-start;
    }

    .product_vitrine_grid__module .product_vitrine__groups-list{
        grid-template-columns: minmax(0, 1fr);
    }

    .product_vitrine_grid__module .product_vitrine__group-media{
        flex-basis: 92px;
        width: 92px;
    }

    .product_vitrine_grid__module .product_vitrine__records{
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .product_vitrine_grid__module .product_vitrine--grid-5 .product_vitrine__records, .product_vitrine_grid__module .product_vitrine--grid-4 .product_vitrine__records, .product_vitrine_grid__module .product_vitrine--grid-3 .product_vitrine__records, .product_vitrine_grid__module .product_vitrine--grid-2 .product_vitrine__records{
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .product_vitrine_grid__module .product_vitrine--grid-2 .product_vitrine__records{
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .product_vitrine_grid__module .product-card__hero{
        grid-template-columns: minmax(0, 1fr);
    }

    .product_vitrine_grid__module .product-card__hero-buy{
        position: static;
    }

    .product_vitrine_grid__module .product-card__media-stage, .product_vitrine_grid__module .product-card__media-stage:has(.product-card__gallery){
        grid-template-columns: minmax(0, 1fr);
    }

    .product_vitrine_grid__module .product_vitrine__detail .product-card__gallery, .product_vitrine_grid__module .product_vitrine__detail .product-card__image{
        position: static;
    }

    .product_vitrine_grid__module .product_vitrine__detail .product-card__gallery{
        width: auto;
        max-height: none;
        grid-template-columns: minmax(0, 1fr);
        grid-template-rows: minmax(0, 1fr);
    }

    .product_vitrine_grid__module .product_vitrine__detail .product-card__gallery-nav{
        display: none;
    }

    .product_vitrine_grid__module .product_vitrine__detail .product-card__gallery-viewport{
        max-height: none;
        overflow-x: auto;
        overflow-y: hidden;
    }

    .product_vitrine_grid__module .product_vitrine__detail .product-card__gallery-track{
        grid-auto-flow: column;
        grid-auto-columns: 77.6px;
        overflow: visible;
        padding-bottom: 3.2px;
    }

    .product_vitrine_grid__module .product-card__meta-item{
        grid-template-columns: 1fr;
    }

    .product_vitrine_grid__module .product-card__tabs-nav{
        overflow-x: auto;
        flex-wrap: nowrap;
        padding-bottom: 2.4px;
    }

    .product-gallery-viewer{
        padding: 14.4px;
    }

    .product-gallery-viewer__dialog{
        grid-template-columns: minmax(0, 1fr);
        grid-template-rows: auto minmax(0, 1fr) auto;
        gap: 12px;
        width: min(96vw, 736px);
        height: min(88vh, 672px);
        padding: 13.6px;
    }

    .product-gallery-viewer__nav{
        display: none;
    }

    .product-gallery-viewer__thumbs{
        gap: 8.8px;
    }

    .product-gallery-viewer__thumb{
        flex-basis: 73.6px;
        height: 73.6px;
    }}

@media (max-width: 640px){
    .product_vitrine__module.product_vitrine_grid__module .cont-text-container.container{
        padding-top: 16px;
        padding-bottom: 28px;
    }

    .product_vitrine_grid__module .product_vitrine__filters{
        padding: 16px;
    }

    .product_vitrine_grid__module .product_vitrine__filters-grid, .product_vitrine_grid__module .product_vitrine__filter-range{
        grid-template-columns: minmax(0, 1fr);
    }

    .product_vitrine_grid__module .product_vitrine__filters-submit, .product_vitrine_grid__module .product_vitrine__filters-reset{
        width: 100%;
    }

    .product_vitrine_grid__module .product_vitrine__records{
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 16px;
    }

    .product_vitrine_grid__module .product_vitrine--grid-5 .product_vitrine__records, .product_vitrine_grid__module .product_vitrine--grid-4 .product_vitrine__records, .product_vitrine_grid__module .product_vitrine--grid-3 .product_vitrine__records, .product_vitrine_grid__module .product_vitrine--grid-2 .product_vitrine__records{
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .product_vitrine_grid__module .product_vitrine__record{
        padding-bottom: 16px;
    }

    .product_vitrine_grid__module .product_vitrine__group-card{
        min-height: 89.6px;
    }

    .product_vitrine_grid__module .product_vitrine__group-media{
        flex-basis: 80px;
        width: 80px;
        min-height: 89.6px;
    }

    .product_vitrine_grid__module .product_vitrine__group-body{
        padding: 12.8px 13.6px 12.8px 14.4px;
    }

    .product_vitrine_grid__module .product_vitrine__group-title{
        font-size: 15px;
    }

    .product_vitrine_grid__module .product_vitrine__group-text{
        font-size: 13px;
    }

    .product_vitrine_grid__module .product_vitrine__record-title{
        font-size: 16px;
    }

    .product_vitrine_grid__module .product_vitrine__record .product-card__title{
        font-size: 13px;
        line-height: 1.3;
        min-height: calc(13px * 1.3 * 2);
    }

    .product_vitrine_grid__module .product_vitrine__record .product-card__title-link{
        max-height: calc(13px * 1.3 * 2);
    }

    .product_vitrine_grid__module .product_vitrine__detail{
        gap: 19.2px;
        padding: 16px;
        border-radius: 7.2px;
    }

    .product_vitrine_grid__module .product-card__content, .product_vitrine_grid__module .product-card__buy-panel, .product_vitrine_grid__module .product_vitrine__detail .product-card__meta, .product_vitrine_grid__module .product_vitrine__detail .product-card__note, .product_vitrine_grid__module .product_vitrine__detail .product-card__summary{
        padding-left: 15.2px;
        padding-right: 15.2px;
    }

    .product_vitrine_grid__module .product_vitrine__price{
        font-size: 19.2px;
    }

    .product_vitrine_grid__module .product_vitrine__detail .product-card__price{
        font-size: 26.4px;
    }

    .product_vitrine_grid__module .product_vitrine__detail .product-card__title{
        font-size: 17.28px;
        line-height: 1.3;
        max-height: calc(17.28px * 1.3 * 3);
    }

    .product_vitrine_grid__module .product-card__title-more{
        font-size: 12.48px;
    }

    .product_vitrine_grid__module .product_vitrine__detail .product-card__favorite{
        min-height: 35.2px;
        padding: 8px 12px;
        gap: 6.4px;
    }

    .product_vitrine_grid__module .product_vitrine__detail .product-card__favorite-label{
        font-size: 12.8px;
    }

    .product_vitrine_grid__module .product_vitrine__detail .product-card__discount{
        min-height: 28px;
        padding: 0 11.2px;
        font-size: 11px;
    }

    .product-gallery-viewer{
        padding: 8px;
    }

    .product-gallery-viewer__dialog{
        height: min(92vh, 576px);
        padding: 12px;
    }

    .product-gallery-viewer__slide{
        padding: 16px;
    }

    .product-gallery-viewer__thumb{
        flex-basis: 64px;
        height: 64px;
    }

    .product_vitrine_grid__module .product-vitrine-variant-picker__values{
        grid-template-columns: repeat(5, minmax(0, 1fr));
        grid-auto-rows: 51.2px;
        gap: 5.6px;
    }

    .product_vitrine_grid__module .product_vitrine__detail .product-vitrine-variant-picker__values{
        grid-template-columns: repeat(5, minmax(0, 1fr));
    }

    .product_vitrine_grid__module .product-vitrine-variant-picker__value{
        width: 100%;
        min-height: 41.6px;
        padding: 1.28px;
        border-radius: 5.6px;
    }

    .product_vitrine_grid__module .product-vitrine-variant-picker__value-body{
        padding: 0.8px 1.6px;
    }

    .product_vitrine_grid__module .product-vitrine-variant-picker__value-text{
        font-size: 9.28px;
    }

    .product_vitrine_grid__module .product-vitrine-variant-picker__group-head{
        flex-direction: column;
        align-items: flex-start;
    }

    .product_vitrine_grid__module .product-vitrine-payment__controls{
        grid-template-columns: 1fr;
    }

    .product_vitrine_grid__module .product-vitrine-payment__section, .product_vitrine_grid__module .product-vitrine-payment__form-shell{
        padding: 14.4px;
    }

    .product_vitrine_grid__module .product-vitrine-payment__auth-grid{
        grid-template-columns: 1fr;
    }

    .product_vitrine_grid__module .product-vitrine-payment__button, .product_vitrine_grid__module .product-vitrine-variant-picker__cta{
        width: 100%;
    }}

@media (max-width: 480px){
    .product_vitrine_grid__module .product_vitrine__records, .product_vitrine_grid__module .product_vitrine--grid-5 .product_vitrine__records, .product_vitrine_grid__module .product_vitrine--grid-4 .product_vitrine__records, .product_vitrine_grid__module .product_vitrine--grid-3 .product_vitrine__records, .product_vitrine_grid__module .product_vitrine--grid-2 .product_vitrine__records{
        grid-template-columns: 1fr;
    }

    .product_vitrine_grid__module .product_vitrine__detail .product-vitrine-variant-picker__values{
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }}

/* ==============================
   Rating & Reviews (Ozon-style)
   ============================== */

.product_vitrine_grid__module .shop-rating{
    display: inline-flex;
    align-items: center;
    line-height: 1;
    vertical-align: middle;
}

.product_vitrine_grid__module .shop-rating__track{
    position: relative;
    display: inline-block;
    font-size: 1em;
    color: #d9d9d9;
    letter-spacing: 1px;
    white-space: nowrap;
}

.product_vitrine_grid__module .shop-rating__track::before{
    content: "★★★★★";
}

.product_vitrine_grid__module .shop-rating__fill{
    position: absolute;
    top: 0;
    left: 0;
    overflow: hidden;
    color: #f7a92b;
    white-space: nowrap;
}

.product_vitrine_grid__module .shop-rating__fill::before{
    content: "★★★★★";
    letter-spacing: 1px;
}

.product_vitrine_grid__module .shop-rating--compact{
    font-size: 15.2px;
}

.product_vitrine_grid__module .shop-rating--large{
    font-size: 24px;
}

/* Compact badge in product card */
.product_vitrine_grid__module .product-rating{
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin: 4px 0 8px;
    font-size: 13.6px;
    color: #1c1c1c;
    white-space: nowrap;
}

.product_vitrine_grid__module .product-rating__value{
    font-weight: 600;
    color: #0e0f0f;
}

.product_vitrine_grid__module .product-rating__count{
    color: #7a7a7a;
    font-size: 13px;
}

.product_vitrine_grid__module .product-rating__count::before{
    content: "· ";
    color: #bdbdbd;
}

/* Summary in detail hero */
.product_vitrine_grid__module .shop-reviews-summary{
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 8px 0 12px;
    padding: 6px 12px;
    background: #fff8eb;
    border-radius: 8px;
    font-size: 15.2px;
}

.product_vitrine_grid__module .shop-reviews-summary__value{
    font-weight: 700;
    font-size: 17.6px;
    color: #1a1a1a;
}

.product_vitrine_grid__module .shop-reviews-summary__count{
    color: #6d7074;
}

.product_vitrine_grid__module .shop-reviews-summary--empty{
    background: transparent;
    padding: 0;
    color: #9a9a9a;
    font-size: 14.4px;
}

/* Full reviews block (detail) */
.product_vitrine_grid__module .shop-reviews{
    margin: 32px 0 0;
    padding: 24px;
    background: #ffffff;
    border: 1px solid #ececec;
    border-radius: 12px;
}

.product_vitrine_grid__module .shop-reviews__header{
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0 0 20px;
    padding-bottom: 12px;
    border-bottom: 1px solid #f1f1f1;
}

.product_vitrine_grid__module .shop-reviews__title{
    margin: 0;
    font-size: 22px;
    font-weight: 700;
    color: #141414;
}

.product_vitrine_grid__module .shop-reviews__overview{
    display: grid;
    grid-template-columns: minmax(160px, 220px) 1fr;
    gap: 24px;
    align-items: center;
    margin: 0 0 24px;
    padding: 16px 20px;
    background: #fafafa;
    border-radius: 10px;
}

.product_vitrine_grid__module .shop-reviews__score{
    text-align: center;
}

.product_vitrine_grid__module .shop-reviews__score-value{
    font-size: 40px;
    font-weight: 800;
    line-height: 1;
    color: #111111;
    margin-bottom: 6px;
}

.product_vitrine_grid__module .shop-reviews__score-count{
    margin-top: 6px;
    color: #6d7074;
    font-size: 14px;
}

.product_vitrine_grid__module .shop-reviews__score--empty .shop-reviews__score-value{
    color: #b8b8b8;
    font-weight: 500;
}

.product_vitrine_grid__module .shop-reviews__distribution{
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.product_vitrine_grid__module .shop-reviews__distribution-row{
    display: grid;
    grid-template-columns: auto auto 1fr auto auto;
    align-items: center;
    gap: 10px;
    font-size: 14px;
    color: #454545;
}

.product_vitrine_grid__module .shop-reviews__distribution-mark{
    font-weight: 600;
    min-width: 12px;
    text-align: right;
    color: #111;
}

.product_vitrine_grid__module .shop-reviews__distribution-star{
    color: #f7a92b;
    font-size: 14px;
    line-height: 1;
}

.product_vitrine_grid__module .shop-reviews__distribution-bar{
    position: relative;
    height: 8px;
    background: #ececec;
    border-radius: 999px;
    overflow: hidden;
}

.product_vitrine_grid__module .shop-reviews__distribution-fill{
    position: absolute;
    inset: 0 auto 0 0;
    background: linear-gradient(90deg, #ffb020 0%, #f7a92b 100%);
    border-radius: inherit;
}

.product_vitrine_grid__module .shop-reviews__distribution-count{
    color: #7a7a7a;
    font-size: 13px;
    min-width: 24px;
    text-align: right;
}

.product_vitrine_grid__module .shop-reviews__distribution-percent{
    color: #a8a8a8;
    font-size: 12px;
    min-width: 36px;
    text-align: right;
}

/* Review list */
.product_vitrine_grid__module .shop-reviews__list{
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.product_vitrine_grid__module .shop-review{
    padding: 16px 18px;
    background: #ffffff;
    border: 1px solid #efefef;
    border-radius: 10px;
    transition: border-color 0.15s ease-out;
}

.product_vitrine_grid__module .shop-review:hover{
    border-color: #dedede;
}

.product_vitrine_grid__module .shop-review__head{
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 10px;
}

.product_vitrine_grid__module .shop-review__avatar{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: linear-gradient(135deg, #ffd580, #f7a92b);
    color: #fff;
    font-weight: 600;
    font-size: 15.2px;
    flex-shrink: 0;
}

.product_vitrine_grid__module .shop-review__meta{
    flex: 1 1 auto;
    min-width: 0;
}

.product_vitrine_grid__module .shop-review__author{
    font-weight: 600;
    color: #1a1a1a;
    font-size: 15.2px;
    line-height: 1.2;
}

.product_vitrine_grid__module .shop-review__date{
    margin-top: 2px;
    font-size: 13px;
    color: #9a9a9a;
}

.product_vitrine_grid__module .shop-review__mark{
    flex: 0 0 auto;
    font-size: 16.8px;
}

.product_vitrine_grid__module .shop-review__body{
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.product_vitrine_grid__module .shop-review__section{
    padding-left: 10px;
    border-left: 2px solid transparent;
}

.product_vitrine_grid__module .shop-review__section--pros{
    border-left-color: #3aa55c;
}

.product_vitrine_grid__module .shop-review__section--cons{
    border-left-color: #d96262;
}

.product_vitrine_grid__module .shop-review__section--comment{
    border-left-color: #c8c8c8;
}

.product_vitrine_grid__module .shop-review__section-title{
    font-size: 13px;
    font-weight: 600;
    color: #4b4b4b;
    margin-bottom: 3px;
    letter-spacing: 0.01em;
}

.product_vitrine_grid__module .shop-review__section-text{
    color: #333;
    font-size: 15px;
    line-height: 1.5;
    white-space: pre-line;
    word-wrap: break-word;
}

.product_vitrine_grid__module .shop-review__footer{
    margin-top: 12px;
    padding-top: 10px;
    border-top: 1px dashed #f0f0f0;
}

.product_vitrine_grid__module .shop-review__vote{
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.product_vitrine_grid__module .shop-review__vote-button{
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px 8px;
    border: 1px solid #e5e5e5;
    border-radius: 999px;
    background: #fff;
    color: #5c5c5c;
    font-size: 13px;
    cursor: pointer;
    transition: all 0.15s ease-out;
}

.product_vitrine_grid__module .shop-review__vote-button:hover{
    border-color: #c0c0c0;
    color: #222;
}

.product_vitrine_grid__module .shop-review__vote-button--up:hover{
    border-color: #86d19d;
    color: #257f45;
    background: #f2fbf5;
}

.product_vitrine_grid__module .shop-review__vote-button--down:hover{
    border-color: #e8a8a8;
    color: #a23838;
    background: #fdf3f3;
}

.product_vitrine_grid__module .shop-review__vote-icon{
    font-size: 11.2px;
    line-height: 1;
}

.product_vitrine_grid__module .shop-review__vote-count{
    font-variant-numeric: tabular-nums;
}

.product_vitrine_grid__module .shop-reviews__more{
    margin-top: 20px;
    text-align: center;
}

.product_vitrine_grid__module .shop-reviews__more-button{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px 24px;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    background: #ffffff;
    color: #1a1a1a;
    font-size: 15px;
    font-weight: 500;
    cursor: pointer;
    transition: border-color 0.15s ease-out, background 0.15s ease-out;
}

.product_vitrine_grid__module .shop-reviews__more-button:hover{
    border-color: #bfbfbf;
    background: #fafafa;
}

.product_vitrine_grid__module .shop-reviews__empty{
    padding: 24px 16px;
    text-align: center;
    color: #7a7a7a;
    background: #fafafa;
    border-radius: 10px;
}

.product_vitrine_grid__module .shop-reviews__empty p{
    margin: 0 0 6px;
    font-size: 15.2px;
}

.product_vitrine_grid__module .shop-reviews__empty-hint{
    font-size: 14px;
    color: #a3a3a3;
}

@media (max-width: 760px){
    .product_vitrine_grid__module .shop-reviews{
        padding: 16px;
    }

    .product_vitrine_grid__module .shop-reviews__overview{
        grid-template-columns: 1fr;
        padding: 14px 16px;
    }

    .product_vitrine_grid__module .shop-reviews__score{
        display: grid;
        grid-template-columns: auto auto 1fr;
        align-items: center;
        gap: 10px;
        text-align: left;
    }

    .product_vitrine_grid__module .shop-reviews__score-value{
        font-size: 32px;
        margin: 0;
    }

    .product_vitrine_grid__module .shop-reviews__score-count{
        margin: 0;
        text-align: right;
    }}

/* ==============================
   «По запросу» mode + quote modal
   ============================== */

/* По умолчанию показываем detail-CTA, скрываем запрос-CTA */
.product_vitrine_grid__module .product-card__cta--on-request{
    display: none;
}

/* Карточка в режиме on-request: цены скрываем, меняем CTA */
.product_vitrine_grid__module [data-on-request="1"] .product-card__price, .product_vitrine_grid__module [data-on-request="1"] .product-card__old-price, .product_vitrine_grid__module [data-on-request="1"] .product-card__discount{
    /* цена всё равно заменена на «По запросу» в token'е,
       но дисконт/старую цену прячем принудительно */
}

.product_vitrine_grid__module [data-on-request="1"] .product-card__old-price, .product_vitrine_grid__module [data-on-request="1"] .product-card__discount{
    display: none !important;
}

.product_vitrine_grid__module [data-on-request="1"] .product-card__price{
    color: #1a7f54;
    font-weight: 600;
    font-size: 13.6px;
    line-height: 1.2;
    white-space: nowrap;
    letter-spacing: 0.01em;
}

.product_vitrine_grid__module .product_vitrine__detail [data-on-request="1"] .product-card__price, .product_vitrine_grid__module [data-on-request="1"] .product_vitrine__detail .product-card__price{
    font-size: 16px;
}

.product_vitrine_grid__module [data-on-request="1"] .product-card__cta--detail{
    display: none;
}

.product_vitrine_grid__module [data-on-request="1"] .product-card__cta--on-request{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    background: linear-gradient(135deg, #1a7f54, #2ca674);
    color: #ffffff;
    border: 0;
    padding: 8.8px 16px;
    border-radius: 8px;
    font-weight: 600;
    cursor: pointer;
    transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.product_vitrine_grid__module [data-on-request="1"] .product-card__cta--on-request:hover{
    transform: translateY(-1px);
    box-shadow: 0 6px 16px rgba(26, 127, 84, 0.25);
}

.product_vitrine_grid__module [data-on-request="1"] .product-card__cta--on-request:active{
    transform: translateY(0);
}

/* Badge на карточке товара */
.product_vitrine_grid__module .product-card__on-request-badge{
    display: none;
}

.product_vitrine_grid__module [data-on-request="1"] .product-card__on-request-badge{
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 3.2px 8px;
    background: #fff5e6;
    color: #a26b00;
    border: 1px solid #ffd799;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 600;
    margin-left: 8px;
    vertical-align: middle;
}

/* Quote modal */
.product-vitrine-quote-overlay{
    position: fixed;
    inset: 0;
    background: rgba(15, 20, 32, 0.56);
    backdrop-filter: blur(2px);
    z-index: 9980;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.18s ease-out;
}

.product-vitrine-quote-overlay.is-open{
    opacity: 1;
    pointer-events: auto;
}

.product_vitrine_grid__module .product-vitrine-quote{
    width: min(520px, 100%);
    max-height: min(90vh, 720px);
    overflow: auto;
    background: #ffffff;
    border-radius: 14px;
    box-shadow: 0 20px 50px rgba(15, 20, 32, 0.25);
    padding: 24px 24px 20px;
    transform: translateY(8px);
    transition: transform 0.18s ease-out;
}

.product-vitrine-quote-overlay.is-open .product-vitrine-quote{
    transform: translateY(0);
}

.product_vitrine_grid__module .product-vitrine-quote__header{
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 12px;
}

.product_vitrine_grid__module .product-vitrine-quote__title{
    margin: 0;
    font-size: 18.4px;
    font-weight: 700;
    color: #0e0f0f;
}

.product_vitrine_grid__module .product-vitrine-quote__subtitle{
    margin: 2px 0 0;
    font-size: 14px;
    color: #6b7280;
}

.product_vitrine_grid__module .product-vitrine-quote__close{
    background: transparent;
    border: 0;
    color: #6b7280;
    font-size: 24px;
    line-height: 1;
    cursor: pointer;
    padding: 4px 6px;
    border-radius: 6px;
}

.product_vitrine_grid__module .product-vitrine-quote__close:hover{
    color: #0e0f0f;
    background: #f4f5f7;
}

/* Страж скрытия для модалки запроса цены. Она вешается на document.body, поэтому предковые
   селекторы модуля до неё не достают — правило именное. Без него авторский display перебивал
   браузерное [hidden]{display:none} (это спор ПРОИСХОЖДЕНИЙ каскада, а не специфичностей), и при
   вызове модалки без товара оставалась висеть пустая серая плашка, которую код считал скрытой. */
.product_vitrine_grid__module .product-vitrine-quote[hidden], .product_vitrine_grid__module .product-vitrine-quote__product[hidden], .product_vitrine_grid__module .product-vitrine-quote__field[hidden]{
    display: none;
}

.product_vitrine_grid__module .product-vitrine-quote__product{
    display: flex;
    gap: 12px;
    align-items: center;
    padding: 10px 12px;
    background: #f8f9fb;
    border: 1px solid #eceef2;
    border-radius: 10px;
    margin-bottom: 16px;
}

.product_vitrine_grid__module .product-vitrine-quote__product-image{
    width: 48px;
    height: 48px;
    object-fit: contain;
    border-radius: 6px;
    background: #fff;
    flex-shrink: 0;
}

.product_vitrine_grid__module .product-vitrine-quote__product-title{
    font-weight: 600;
    color: #0e0f0f;
    font-size: 15px;
    line-height: 1.3;
}

.product_vitrine_grid__module .product-vitrine-quote__form{
    display: grid;
    gap: 10px;
}

.product_vitrine_grid__module .product-vitrine-quote__field{
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.product_vitrine_grid__module .product-vitrine-quote__label{
    font-size: 13px;
    color: #4b4f57;
    font-weight: 500;
}

.product_vitrine_grid__module .product-vitrine-quote__input, .product_vitrine_grid__module .product-vitrine-quote__textarea{
    font: inherit;
    width: 100%;
    padding: 8.8px 12px;
    border: 1px solid #d7dae0;
    border-radius: 8px;
    background: #fff;
    color: #0e0f0f;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.product_vitrine_grid__module .product-vitrine-quote__input:focus, .product_vitrine_grid__module .product-vitrine-quote__textarea:focus{
    outline: none;
    border-color: #1a7f54;
    box-shadow: 0 0 0 3px rgba(26, 127, 84, 0.15);
}

.product_vitrine_grid__module .product-vitrine-quote__textarea{
    min-height: 80px;
    resize: vertical;
}

.product_vitrine_grid__module .product-vitrine-quote__actions{
    display: flex;
    gap: 8px;
    justify-content: flex-end;
    margin-top: 4px;
}

.product_vitrine_grid__module .product-vitrine-quote__button{
    padding: 9.6px 17.6px;
    font: inherit;
    font-weight: 600;
    border-radius: 8px;
    border: 0;
    cursor: pointer;
    transition: transform 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
}

.product_vitrine_grid__module .product-vitrine-quote__button--cancel{
    background: #f4f5f7;
    color: #0e0f0f;
}

.product_vitrine_grid__module .product-vitrine-quote__button--cancel:hover{
    background: #e8eaef;
}

.product_vitrine_grid__module .product-vitrine-quote__button--submit{
    background: linear-gradient(135deg, #1a7f54, #2ca674);
    color: #fff;
}

.product_vitrine_grid__module .product-vitrine-quote__button--submit:hover{
    transform: translateY(-1px);
    box-shadow: 0 6px 16px rgba(26, 127, 84, 0.3);
}

.product_vitrine_grid__module .product-vitrine-quote__button:disabled{
    opacity: 0.6;
    cursor: not-allowed;
    transform: none !important;
    box-shadow: none !important;
}

.product_vitrine_grid__module .product-vitrine-quote__message{
    margin-top: 8px;
    padding: 8.8px 12px;
    border-radius: 8px;
    font-size: 14px;
}

.product_vitrine_grid__module .product-vitrine-quote__message--error{
    background: #fff0f0;
    color: #a32e2e;
    border: 1px solid #f5c4c4;
}

.product_vitrine_grid__module .product-vitrine-quote__message--success{
    background: #ecf9f2;
    color: #1a7f54;
    border: 1px solid #bbe3cc;
}

@media (max-width: 520px){
    .product_vitrine_grid__module .product-vitrine-quote{
        padding: 18px 16px;
    }}

/* ============================================================
   Блоки «Похожие» / «Сопутствующие» товары на detail-карточке
   (SSR baseline + Vue-остров: режим list = grid, carousel = scroll-snap)
   ============================================================ */
.product_vitrine_grid__module .product_vitrine__related{
    margin-top: 32px;
    padding-top: 24px;
    border-top: 1px solid var(--product-vitrine-border, #e5e7eb);
}

.product_vitrine_grid__module .product_vitrine__related-head{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 16px;
}

.product_vitrine_grid__module .product_vitrine__related-title{
    margin: 0;
    font-size: 21.6px;
    font-weight: 700;
    line-height: 1.25;
    color: var(--product-vitrine-ink, #1f2937);
}

.product_vitrine_grid__module .product_vitrine__related-nav{
    display: inline-flex;
    gap: 8px;
    flex: 0 0 auto;
}

.product_vitrine_grid__module .product_vitrine__related-arrow{
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 1px solid var(--product-vitrine-border, #e5e7eb);
    background: var(--product-vitrine-surface, #fff);
    color: var(--product-vitrine-ink, #1f2937);
    font-size: 20px;
    line-height: 1;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: border-color 0.2s, color 0.2s, box-shadow 0.2s;
}

.product_vitrine_grid__module .product_vitrine__related-arrow:hover{
    border-color: var(--product-vitrine-primary, #1a7f54);
    color: var(--product-vitrine-primary, #1a7f54);
    box-shadow: var(--product-vitrine-control-shadow-hover, 0 4px 12px rgba(0, 0, 0, 0.1));
}

/* --- Раскладки трека --- */
.product_vitrine_grid__module .product_vitrine__related--mode-list .product_vitrine__related-track{
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    gap: 16px;
}

.product_vitrine_grid__module .product_vitrine__related--mode-carousel .product_vitrine__related-track{
    display: flex;
    gap: 16px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 8px;
}

.product_vitrine_grid__module .product_vitrine__related--mode-carousel .product_vitrine__related-track::-webkit-scrollbar{
    height: 6px;
}

.product_vitrine_grid__module .product_vitrine__related--mode-carousel .product_vitrine__related-track::-webkit-scrollbar-thumb{
    background: var(--product-vitrine-border, #e5e7eb);
    border-radius: 999px;
}

.product_vitrine_grid__module .product_vitrine__related--mode-carousel .product_vitrine__related-card{
    flex: 0 0 auto;
    width: clamp(160px, 45vw, 220px);
    scroll-snap-align: start;
}

/* --- Карточка связанного товара --- */
.product_vitrine_grid__module .product_vitrine__related-card{
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 12px;
    background: var(--product-vitrine-surface, #fff);
    border: 1px solid var(--product-vitrine-border, #e5e7eb);
    border-radius: var(--product-vitrine-panel-radius, 14px);
    transition: box-shadow 0.2s, transform 0.2s, border-color 0.2s;
}

.product_vitrine_grid__module .product_vitrine__related-card:hover{
    border-color: var(--product-vitrine-border-active, #c8d0d8);
    box-shadow: var(--product-vitrine-shadow, 0 8px 24px rgba(0, 0, 0, 0.08));
    transform: translateY(-2px);
}

.product_vitrine_grid__module .product_vitrine__related-card-media{
    display: block;
    aspect-ratio: 1 / 1;
    border-radius: 10px;
    overflow: hidden;
    background: var(--product-vitrine-surface-soft, #f5f6f8);
}

.product_vitrine_grid__module .product_vitrine__related-card-img{
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
}

.product_vitrine_grid__module .product_vitrine__related-card-body{
    display: flex;
    flex-direction: column;
    gap: 4.8px;
    flex: 1 1 auto;
}

.product_vitrine_grid__module .product_vitrine__related-card-brand{
    font-size: 11.52px;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    color: var(--product-vitrine-muted, #6b7280);
}

.product_vitrine_grid__module .product_vitrine__related-card-title{
    font-size: 14.4px;
    font-weight: 600;
    line-height: 1.3;
    color: var(--product-vitrine-ink, #1f2937);
    text-decoration: none;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.product_vitrine_grid__module .product_vitrine__related-card-title:hover{
    color: var(--product-vitrine-primary, #1a7f54);
}

.product_vitrine_grid__module .product_vitrine__related-card-prices{
    display: flex;
    align-items: baseline;
    gap: 8px;
    flex-wrap: wrap;
    margin-top: auto;
}

.product_vitrine_grid__module .product_vitrine__related-card-price{
    font-size: 16px;
    font-weight: 700;
    color: var(--product-vitrine-ink, #1f2937);
}

.product_vitrine_grid__module .product_vitrine__related-card-old-price{
    font-size: 12.8px;
    color: var(--product-vitrine-muted, #9ca3af);
    text-decoration: line-through;
}

.product_vitrine_grid__module .product_vitrine__related-card-presence{
    font-size: 12.48px;
    color: var(--product-vitrine-muted, #6b7280);
}

.product_vitrine_grid__module .product_vitrine__related-card-cta{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 12px;
    border-radius: var(--product-vitrine-control-radius, 10px);
    border: 1px solid var(--product-vitrine-border, #e5e7eb);
    background: var(--product-vitrine-secondary-bg, #f3f4f6);
    color: var(--product-vitrine-ink, #1f2937);
    font-size: 13.6px;
    font-weight: 600;
    text-decoration: none;
    text-align: center;
    transition: background 0.2s, border-color 0.2s, color 0.2s;
}

.product_vitrine_grid__module .product_vitrine__related-card-cta:hover{
    background: var(--product-vitrine-secondary-bg-hover, #e5e7eb);
    border-color: var(--product-vitrine-primary, #1a7f54);
    color: var(--product-vitrine-primary, #1a7f54);
}

@media (max-width: 640px){
    .product_vitrine_grid__module .product_vitrine__related--mode-list .product_vitrine__related-track{
        grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
        gap: 12px;
    }

    .product_vitrine_grid__module .product_vitrine__related-title{
        font-size: 18.4px;
    }}

/* ------------------------------------------------------------------ тулбар
 * Сортировка, «показывать по» и вид — как у донора se над списком товаров.
 * Своё оформление здесь намеренно скромное: донорский CSS этих классов не
 * знает (у него тулбар собран таблицей), а спорить с ним из-за рамки кнопки
 * не стоит. Цвета не задаём — пусть наследуются от скина магазина.
 */
/* ------------------------------------------------- полоса управления витриной
 * Разметка донора: .blockPanel с .vitrineSort слева и .changeView/.productsLimit
 * справа. Фон полосы, отступ и раскладку по краям даёт перенесённый CSS донора,
 * кнопки и глифы — его же bootstrap. Здесь только то, чего у донора нет.
 *
 * Активную кнопку донор помечает атрибутом disabled. Нам он не годится: на время
 * запроса мы гасим все кнопки тем же атрибутом, и после ответа отметка выбранного
 * пропала бы. Поэтому активность — классами is-active (наш признак) и active
 * (его рисует bootstrap, своего правила не нужно).
 */
.product_vitrine_grid__module .product_vitrine .blockPanel label{ margin: 0 5px 0 0; vertical-align: middle; }
.product_vitrine_grid__module .product_vitrine .blockPanel .btn-group{ vertical-align: middle; }
.product_vitrine_grid__module .product_vitrine .productsLimit{ margin-left: 20px; }

/* Пока идёт запрос — контролы недоступны, и это должно быть видно. */
.product_vitrine_grid__module .product_vitrine .blockPanel.is-loading{ opacity: 0.6; }


/* Селекторы ниже включают .e_shopvit намеренно: скин донора подключается ПОСЛЕ стилей
 * модулей, и при равной специфичности побеждает он. Лишний класс области — ровно то, что
 * нужно, чтобы наша раскладка ленты пересилила его inline-block.
 */
/* Заголовок раздела карточки (Характеристики и далее). У донора .titleHead оформлен только
 * внутри блока комментариев — берём оттуда его же величины, чтобы разделы карточки выглядели
 * одинаково и по-донорски, а не платформенным h3.
 */
.product_vitrine_grid__module .e_shopvit .titleHead { font-size: 160%; font-weight: normal; margin-top: 30px; margin-bottom: 20px; }

/* ------------------------------------------------------- карточка товара: фото
 * Разметка донора (.goodsLinkPhoto с аспект-боксом, лента .imageList), но кликабельные
 * узлы у нас КНОПКИ, а не ссылки: остров сам меняет главный снимок и открывает просмотр,
 * а ссылка при этом ещё и уводила бы со страницы. Донор красит именно ссылку, поэтому те
 * же размеры переносим на кнопку — иначе она блочная и лента встаёт столбиком.
 */
.product_vitrine_grid__module .e_shopvit .goodsLinkPhoto .goodsPhotoOpen { position: absolute; top: 0; left: 0; width: 100%; height: 100%; padding: 0; border: 0; background: none; cursor: zoom-in; }
/* hidden у стрелок обязан гасить их: правило донора .e_shopvit .morephotos .prev несёт
 * display:inline-block и перебивает общий [hidden] { display: none } из скина. */
.product_vitrine_grid__module .e_shopvit .morephotos [hidden] { display: none; }
.product_vitrine_grid__module .e_shopvit .morephotos { display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-align-items: center; -ms-flex-align: center; align-items: center; }
.product_vitrine_grid__module .e_shopvit .morephotos .photoSlider { -webkit-flex: 1 1 auto; -ms-flex: 1 1 auto; flex: 1 1 auto; overflow: hidden; scroll-behavior: smooth; }
.product_vitrine_grid__module .e_shopvit .imageList { display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: nowrap; -ms-flex-wrap: nowrap; flex-wrap: nowrap; margin: 0; padding: 0; list-style: none; }
.product_vitrine_grid__module .e_shopvit .imageList > * { -webkit-flex: 0 0 auto; -ms-flex: 0 0 auto; flex: 0 0 auto; display: block; width: 70px; margin: 0 6px 6px 0; }
.product_vitrine_grid__module .e_shopvit .imageList button { display: block; width: 70px; height: 70px; overflow: hidden; padding: 0; border: 0; background: none; cursor: pointer; }
/* Отметка выбранной миниатюры — рамкой ВНУТРИ кнопки (outline со смещением
 * внутрь). Донор рисовал внешнее свечение (box-shadow 0 0 0 2px #fa570a), но
 * у нас лента прокручивается и обрезает всё, что вышло за её край: рамка
 * получалась неполной — со стороны соседей её срезало. Тон взят спокойный,
 * из текста скина: ярко-оранжевый донора рядом с красными кнопками карточки
 * спорит с ними за внимание. */
.product_vitrine_grid__module .e_shopvit .imageList .activeImg button { outline: 2px solid #57514d; outline-offset: -2px; }
.product_vitrine_grid__module .e_shopvit .imageList img { width: 100%; height: 100%; -o-object-fit: cover; object-fit: cover; }

/* ------------------------------------------------------------- вид «Таблица»
 * Переключатель вида меняет класс КОНТЕЙНЕРА записей: goodsGoods vitrina против
 * goodsGoods table — механизм донора, и ширину карточки (100 %) с нижней рамкой
 * даёт его же перенесённое правило .e_shopvit .table .productItem.
 *
 * Дальше собираем строку сами: у донора табличный вид печатал НАСТОЯЩУЮ <table>
 * отдельным шаблоном, а у нас шаблон карточки один на оба вида — ядро рисует
 * записи одним card-компонентом. Поэтому те же узлы просто раскладываются в ряд.
 *
 * Ширина картинки задаётся явно: у донора высоту блоку даёт .blockImage > a:before
 * с padding-bottom 120 %, а проценты считаются от ШИРИНЫ. В строке флекс-элемент
 * без basis сжимается в ноль — и картинка пропадала совсем.
 */
.product_vitrine_grid__module .table .productItem { flex-wrap: nowrap; align-items: center; gap: 20px; }
.product_vitrine_grid__module .table .productItem .blockImage { order: -1; flex: 0 0 110px; margin-bottom: 0; }
.product_vitrine_grid__module .table .productItem .objectTitle { flex: 1 1 auto; height: auto; margin: 0; }
.product_vitrine_grid__module .table .productItem .priceBox { flex: 0 0 auto; display: flex; align-items: center; gap: 16px; }
.product_vitrine_grid__module .table .productItem .priceStyle,
.product_vitrine_grid__module .table .productItem .buttonBox { width: auto; margin: 0; }

/* --------------------------------------------------------- карточка витрины
 * Своя (templates/_shared/components/card-min.tpl.html) вместо общей: у ковра
 * несколько размеров, цена базового меньше всех прочих и обещает не то, а
 * выпадающий список в карточке заставляет выбирать до того, как человек
 * посмотрел товар. Поэтому здесь цена «от и до» и кнопка «Выбрать» на
 * страницу товара — ни островного монтажа опций, ни «в корзину»: корзина
 * живёт на детальной, где размер уже выбран.
 */
/* Карточка и её сетка — целиком донорские: секция несёт класс e_shopvit, а список —
 * goodsGoods vitrina, и дальше всё делает перенесённый CSS. Он же даёт четыре в ряд
 * (.productItem width 24 %) и свою адаптивность — 32 % / 49 % / 99 % по медиазапросам.
 * Зазор сетки модуля здесь обнуляется: в донорской раскладке расстояние между карточками
 * дают их собственные поля (margin-left 1 %), а column-gap прибавлялся сверху и выдавливал
 * четвёртую карточку на следующую строку — получалось три в ряд вместо четырёх.
 *
 * Остальное своё — прижать цену к низу, чтобы кнопки стояли в одну линию при разной
 * длине названий. */
.product_vitrine_grid__module .e_shopvit .product_vitrine__records{ gap: 0; }
.product_vitrine_grid__module .e_shopvit .vitrina .productItem .priceBox{ margin-top: auto; }
.product_vitrine_grid__module .e_shopvit .vitrina .productItem .buttonBox{ margin-top: 8px; }