/* ================================================================
   CATALOG.CSS — Единый файл стилей каталога товаров
   ================================================================
   Версия: 1.0.0
   Назначение: Все стили трёх режимов отображения каталога в одном файле.
   Режимы:
     • TILE  (плитка) — карточки в сетке
     • LINE  (строка) — компактная горизонтальная строка
     • LIST  (список) — подробный список с описанием
   ================================================================
   СТРУКТУРА:
     1. ОБЩИЕ / SHARED — стили, общие для всех режимов
     2. TILE (плитка) — сетка карточек
     3. LINE (строка) — компактный горизонтальный вид
     4. LIST (список) — детальный список товаров
     5. КОМПОНЕНТЫ — кнопки, счётчик, избранное, копирование кода
     6. АДАПТИВ — @media-запросы
   ================================================================ */

/* ================================================================
   1. ОБЩИЕ СТИЛИ (SHARED)
   Применяются во всех трёх режимах отображения
   ================================================================ */

/* --- Сброс переполнения контента --- */
.content {
    overflow: visible !important;
}

section.content_area {
    overflow: visible;
}

/* --- Обёртка карточки товара (единая для всех режимов) --- */
.rc-product-card {
    position: relative;
    border: 1px solid #E5E5E5;
    border-radius: 24px;
    background: #FFFFFF;
    transition: all 0.35s ease;
    overflow: hidden;
}

.rc-product-card:hover {
    box-shadow: 0px 0px 4px 0px #235e45;
    outline: none;
}

/* --- Затемнение при обработке (loading overlay) --- */
.rc-product-card.is-loading::after {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(255,255,255, 0.7);
    z-index: 10;
}

/* --- Индикатор загрузки (три точки) --- */
.rc-loading-dots {
    display: none;
    gap: 4px;
    align-items: center;
    padding: 0 4px;
}

.rc-loading-dots span {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #235E45;
    animation: rc-dot-pulse 1.4s infinite ease-in-out both;
}

.rc-loading-dots span:nth-child(1) { animation-delay: -0.32s; }
.rc-loading-dots span:nth-child(2) { animation-delay: -0.16s; }
.rc-loading-dots span:nth-child(3) { animation-delay: 0s; }

@keyframes rc-dot-pulse {
    0%, 80%, 100% { transform: scale(0); }
    40% { transform: scale(1); }
}

/* --- Артикул (CATALOG_ID) --- */
.rc-catalog-id {
    display: flex;
    align-items: center;
    gap: 6px;
    margin: 5px 0;
    font-size: 14px;
    color: #666;
}

.rc-catalog-id span {
    font-weight: 500;
}

/* --- Кнопка копирования артикула --- */
.rc-copy-btn {
    width: 18px;
    height: 18px;
    padding: 0;
    border: none;
    background: url(/local/images/svg/copy-icon.svg) no-repeat center / contain;
    cursor: pointer;
    opacity: 0.6;
    transition: opacity 0.2s;
    flex-shrink: 0;
}

.rc-copy-btn:hover {
    opacity: 1;
}

.rc-copy-btn.copied {
    background-image: url(/local/images/svg/check-icon.svg);
    opacity: 1;
}

/* --- Название товара (ссылка) --- */
.rc-product-name {
    font-weight: 600;
    font-size: 18px;
    color: #333;
    text-decoration: none;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.rc-product-name:hover,
.rc-product-name:visited,
.rc-product-name:active {
    color: #333;
    text-decoration: underline;
}

/* --- Цена --- */
.rc-product-price {
    font-weight: 600;
    font-size: 20px;
    color: #000;
    white-space: nowrap;
}

.rc-product-price.rc-price--request {
    color: #999;
    font-weight: 400;
    font-size: 18px;
}

/* --- Общая стоимость --- */
.rc-total-price {
    font-size: 16px;
    color: #666;
    min-width: 117px;
}

.rc-total-price span {
    color: #295e45;
    font-size: 18px;
    font-weight: bold;
}

.rc-total-price p {
    padding: 0;
    margin: 0;
    color: #666;
    font-size: 14px;
}

.rc-total-price.is-empty {
    visibility: hidden;
}

/* --- Рейтинг в карточке каталога --- */
.catalog-card__rating {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    font-size: 14px;
    white-space: nowrap;
    flex-shrink: 0;
}
.catalog-card__rating-star {
    color: #F5A623;
    font-size: 16px;
    line-height: 1;
}
.catalog-card__rating-value {
    color: #333;
    font-weight: bold;
    font-size: 14px;
    line-height: 1;
}
/* В плитке — рейтинг прижат вправо */
.plate-place .plate-place__catalog-id .catalog-card__rating {
    margin-left: auto;
}

/* --- Кнопка «В корзину» (зелёная, с иконкой) --- */
.rc-btn-cart {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    height: 40px;
    padding: 0 24px;
    background: #235E45;
    color: #fff;
    border: 1px solid #235E45;
    border-radius: 24px;
    font-size: 18px;
    cursor: pointer;
    transition: background 0.2s ease;
    white-space: nowrap;
    font-family: inherit;
    gap: 8px;
    text-decoration: none;
}

.rc-btn-cart::before {
    content: "";
    display: inline-block;
    width: 26px;
    height: 26px;
    flex-shrink: 0;
    background: url(/local/images/svg/basket_icon.svg) no-repeat center / contain;
    filter: brightness(0) invert(1);
}

.rc-btn-cart:hover {
    background: #2d7758;
    text-decoration: none;
    color: #fff;
}

.rc-btn-cart.is-added {
    background: #235E45;
    color: #fff;
}

.rc-btn-cart.is-added:hover {
    background: #2d7758;
}

/* --- Блок «Товар в корзине»: удалить + счётчик --- */
.rc-in-cart-block {
    display: none;
    align-items: center;
    gap: 10px;
}

.rc-product-card.is-in-cart .rc-in-cart-block {
    display: flex;
}

.rc-product-card.is-in-cart .rc-btn-cart {
    display: none;
}

/* --- Кнопка удаления из корзины (красная круглая) --- */
.rc-btn-remove {
    width: 40px;
    height: 40px;
    border: 1px solid #C0392B;
    border-radius: 50%;
    background: transparent;
    cursor: pointer;
    position: relative;
    flex-shrink: 0;
    padding: 0;
}

.rc-btn-remove::before {
    content: "";
    display: block;
    width: 20px;
    height: 22px;
    margin: auto;
    background: url(/local/images/svg/to-trash.svg) no-repeat center / contain;
}

.rc-btn-remove:hover {
    background: #ffe8e6;
}

/* --- Счётчик количества (pill) --- */
.rc-qty-counter {
    display: flex;
    align-items: center;
    gap: 2px;
    border: 1px solid #d1d1d1;
    border-radius: 24px;
    height: 40px;
    padding-inline: 2px;
    background: #fff;
}

.rc-qty-btn {
    cursor: pointer;
    width: 32px;
    height: 32px;
    min-width: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    position: relative;
    border: none;
    background: transparent;
    user-select: none;
    transition: background 0.2s ease;
    padding: 0;
    flex: none;
}

.rc-qty-btn:hover {
    background: transparent;
}

/* Плюс (крестик) */
.rc-qty-btn--plus::before,
.rc-qty-btn--plus::after {
    content: '';
    position: absolute;
    background-color: #235E45;
    border-radius: 2px;
}

.rc-qty-btn--plus::before {
    width: 12px;
    height: 2px;
}

.rc-qty-btn--plus::after {
    width: 2px;
    height: 12px;
}

/* Минус (чёрточка) */
.rc-qty-btn--minus::after {
    content: '';
    position: absolute;
    width: 12px;
    height: 2px;
    background-color: #235E45;
    border-radius: 2px;
}

/* Поле ввода */
.rc-qty-input {
    width: 40px;
    text-align: center;
    border: none;
    padding: 2px;
    outline: none;
    font-size: 20px;
    color: #000;
    background: transparent;
    -moz-appearance: textfield;
}

.rc-qty-input::-webkit-outer-spin-button,
.rc-qty-input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.rc-qty-input:focus {
    border: 1px solid #ddd;
    border-radius: 4px;
    outline: none;
}

/* --- Кнопка «Купить в 1 клик» --- */
.rc-btn-oneclick {
    cursor: pointer;
    background-color: transparent;
    border: 1px solid #d1d1d1;
    border-radius: 50px;
    text-align: center;
    padding: 5px 10px;
    font-size: 17px;
    color: #000;
    min-height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 1;
    transition: background 0.2s;
}

.rc-btn-oneclick:hover {
    text-decoration: none;
    color: #000;
    background: #f5f5f5;
}

/* --- Кнопка «В избранное» (сердце) --- */
.rc-btn-fav {
    width: 40px;
    height: 40px;
    border: 1px solid #d1d1d1;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    cursor: pointer;
    flex-shrink: 0;
    transition: background 0.2s;
}

.rc-btn-fav svg {
    position: relative;
    top: 2px;
    pointer-events: none;
}

.rc-btn-fav.is-active svg {
    fill: #235E45;
}

.rc-btn-fav:hover {
    background: #f9f9f9;
}

/* --- Картинка товара --- */
.rc-product-img {
    display: block;
    overflow: hidden;
    flex-shrink: 0;
}

.rc-product-img img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

/* --- Действия с товаром (кнопки в ряд) --- */
.rc-actions-row {
    display: flex;
    align-items: center;
    gap: 10px;
    justify-content: center;
    min-height: 40px;
}

/* --- Нет в наличии --- */
.rc-out-of-stock {
    font-size: 16px;
    color: #999;
}

/* --- Цена «По запросу» --- */
.rc-price-request {
    font-size: 18px;
    color: #999;
}

/* --- Иконка корзины в кнопке --- */
.rc-btn-cart svg,
.rc-btn-cart input {
    display: none;
}

/* ================================================================
   2. TILE (ПЛИТКА) — сетка карточек 4×N
   Селектор-обёртка: .rc-catalog--tile
   ================================================================ */

/* --- Сетка плиток --- */
.rc-catalog--tile {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 15px;
    height: auto !important;
}

/* --- Карточка в режиме плитки --- */
.rc-catalog--tile .rc-product-card {
    display: flex;
    flex-direction: column;
    padding: 15px;
    margin: 0;
    width: auto;
    font-size: 18px;
}

/* --- Контейнер контента внутри плитки --- */
.rc-catalog--tile .rc-card-inner {
    display: flex;
    flex-direction: column;
    height: 100%;
}

/* --- Картинка в плитке --- */
.rc-catalog--tile .rc-product-img {
    height: 148px;
    margin: 0 0 10px;
}

/* --- Название в плитке --- */
.rc-catalog--tile .rc-product-name {
    -webkit-line-clamp: 3;
    line-clamp: 3;
    margin: 0 0 10px;
    height: 60px;
    font-weight: bold;
}

/* --- Цена в плитке --- */
.rc-catalog--tile .rc-product-price {
    margin: 0;
}

/* --- Строка цены --- */
.rc-catalog--tile .rc-price-row {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

/* --- Общая стоимость в плитке --- */
.rc-catalog--tile .rc-total-price {
    height: 19px;
    margin: 0 0 5px;
    overflow: hidden;
}

.rc-catalog--tile .rc-total-price p {
    font-size: 16px;
    color: #666;
}

/* --- Нижний блок с кнопками (прижат к низу) --- */
.rc-catalog--tile .rc-card-footer {
    margin: auto 0 0;
}

/* --- Строка действий в плитке --- */
.rc-catalog--tile .rc-actions-row {
    display: grid;
    grid-template-columns: 100px 1fr;
    gap: 8px;
}

.rc-catalog--tile .rc-actions-row.rc-actions-row--bottom {
    grid-template-columns: 1fr min-content;
    margin: 10px 0 0;
    align-items: center;
}

/* --- Кнопка «В корзину» в плитке --- */
.rc-catalog--tile .rc-btn-cart {
    width: auto;
    min-width: 105px;
    height: auto;
    border-radius: 32px;
    font-size: 18px;
}

/* --- Счётчик в плитке --- */
.rc-catalog--tile .rc-qty-counter {
    width: 106px;
}

.rc-catalog--tile .rc-qty-counter .rc-qty-btn {
    border-radius: 0;
}

.rc-catalog--tile .rc-qty-counter .rc-qty-btn:hover {
    background: none;
}


/* ================================================================
   3. LINE (СТРОКА) — компактный горизонтальный вид
   Селектор-обёртка: .rc-catalog--line
   ================================================================ */

/* --- Обёртка строк (вертикальный список) --- */
.rc-catalog--line {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

/* --- Карточка в режиме строки --- */
.rc-catalog--line .rc-product-card {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 14px 16px;
}

.rc-catalog--line .rc-product-card.is-loading::after {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(255,255,255, 0.7);
    z-index: 10;
}

/* --- Картинка в строке --- */
.rc-catalog--line .rc-product-img {
    width: 68px;
    height: 52px;
}

/* --- Текстовая часть в строке --- */
.rc-catalog--line .rc-line-text {
    display: flex;
    align-items: center;
    flex: 1;
    gap: 34px;
}

/* --- Блок названия в строке --- */
.rc-catalog--line .rc-line-name {
    flex: 1;
    max-width: 430px;
    overflow: hidden;
    text-overflow: ellipsis;
}

.rc-catalog--line .rc-line-name .rc-catalog-id span {
    margin: 0 0 5px;
}

/* --- Название в строке --- */
.rc-catalog--line .rc-product-name {
    -webkit-line-clamp: 3;
    line-clamp: 3;
    font-weight: 600;
}

.rc-catalog--line .rc-product-name a {
    font-size: 18px;
}

/* --- Блок данных в строке (цена + кнопки) --- */
.rc-catalog--line .rc-line-data {
    display: grid;
    grid-template-columns: 1fr auto;
    flex: 1;
    gap: 34px;
    align-items: center;
    justify-content: space-between;
}

/* --- Левая часть данных (цена) --- */
.rc-catalog--line .rc-line-data-left {
    display: flex;
    align-items: center;
    flex: 1;
    justify-content: space-around;
}

/* --- Цена в строке --- */
.rc-catalog--line .rc-product-price {
    min-width: 145px;
    padding: 0 10px 0 0;
}

/* --- Общая стоимость в строке --- */
.rc-catalog--line .rc-total-price {
    font-weight: normal;
    color: #666;
    font-size: 16px;
    margin: 0 0 5px;
}

.rc-catalog--line .rc-total-price span {
    color: #295e45;
    font-size: 16px;
    font-weight: bold;
}

/* --- Счётчик в строке --- */
.rc-catalog--line .rc-qty-counter {
    margin: 0 34px 0 0;
}

/* --- Группа кнопок «В корзину» + счётчик --- */
.rc-catalog--line .rc-cart-group {
    display: flex;
    gap: 8px;
    margin: 0 0 8px;
}

.rc-catalog--line .rc-cart-group .rc-btn-cart {
    flex: 1;
}

/* --- Правая группа кнопок (1 клик + избранное) --- */
.rc-catalog--line .rc-line-actions {
    display: flex;
    gap: 8px;
    justify-content: flex-end;
}


/* ================================================================
   4. LIST (СПИСОК) — детальный список с описанием
   Селектор-обёртка: .rc-catalog--list
   ================================================================ */

/* --- Обёртка списка --- */
.rc-catalog--list {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-bottom: 30px;
}

/* --- Карточка в режиме списка --- */
.rc-catalog--list .rc-product-card {
    display: flex;
    gap: 12px;
    padding: 28px 16px;
    border-radius: 24px;
}

/* --- Картинка в списке (крупнее) --- */
.rc-catalog--list .rc-product-img {
    width: 196px;
    height: 152px;
}

/* --- Текстовый блок в списке --- */
.rc-catalog--list .rc-list-text {
    display: flex;
    flex: 1;
    gap: 34px;
    align-items: flex-start;
}

/* --- Блок названия в списке --- */
.rc-catalog--list .rc-list-name {
    width: 613px;
    max-width: none;
    flex: none;
}

.rc-catalog--list .rc-list-name .rc-catalog-id p {
    color: #666;
    font-size: 16px;
    padding: 0;
    margin: 0 0 5px;
}

/* --- Название в списке --- */
.rc-catalog--list .rc-product-name {
    white-space: normal;
    -webkit-line-clamp: 2;
    line-clamp: 2;
}

/* --- Описание (превью-текст) --- */
.rc-catalog--list .rc-list-preview {
    white-space: normal;
    margin: 6px 0 0;
    overflow: hidden;
    color: #666;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 5;
    -webkit-box-orient: vertical;
    line-height: 1.4;
    font-size: 15px;
}

/* --- Блок данных в списке --- */
.rc-catalog--list .rc-list-data {
    width: auto;
    flex: 1;
    display: block;
}

/* --- Левая часть данных в списке --- */
.rc-catalog--list .rc-list-data-left {
    display: block;
}

/* --- Цена в списке --- */
.rc-catalog--list .rc-product-price {
    padding: 0;
}

/* --- Общая стоимость в списке --- */
.rc-catalog--list .rc-total-price {
    font-weight: normal;
    color: #666;
    font-size: 16px;
    height: 17px;
    margin: 0 0 5px;
}

.rc-catalog--list .rc-total-price span {
    color: #295e45;
    font-size: 16px;
    font-weight: bold;
}

/* --- Группа кнопок в списке --- */
.rc-catalog--list .rc-cart-group {
    display: flex;
    gap: 8px;
    margin: 0 0 8px;
}

/* --- Счётчик в списке --- */
.rc-catalog--list .rc-qty-counter {
    margin: 0;
}

/* --- Правая группа кнопок в списке --- */
.rc-catalog--list .rc-list-actions {
    display: flex;
    gap: 8px;
    justify-content: flex-end;
}

/* --- Кнопка «В корзину» в списке --- */
.rc-catalog--list .rc-btn-cart {
    width: auto;
    height: auto;
    border-radius: 32px;
    font-size: 18px;
}


/* ================================================================
   5. ЗАГОЛОВОК КАТАЛОГА (скачать каталог и т.д.)
   ================================================================ */

.rc-catalog-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 1em;
}

.rc-catalog-download {
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #235E45;
    border-radius: 30px;
    padding: 5px 20px;
    gap: 10px;
    font-size: 16px;
    font-weight: 500;
    min-height: 32px;
    color: #235E45;
    white-space: nowrap;
    cursor: pointer;
    text-decoration: none;
    transition: background 0.2s;
}

.rc-catalog-download:hover,
.rc-catalog-download:focus {
    text-decoration: none;
    color: #235E45;
    background: #E9EFEC;
}

/* Скрываем сайдбар при наличии товаров */
.rc-catalog--has-items ~ .bx_sidebar.new-bl {
    display: none;
}

.rc-catalog--has-items ~ .catalog-search-place {
    display: none;
}


/* ================================================================
   6. АДАПТИВ (RESPONSIVE)
   ================================================================ */

/* --- TILE: 3 колонки (≤860px) --- */
@media (max-width: 860px) {
    .rc-catalog--tile {
        grid-template-columns: repeat(3, 1fr);
    }
}

/* --- TILE: 2 колонки (≤650px) --- */
@media (max-width: 650px) {
    .rc-catalog--tile {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* --- TILE: 1 колонка (≤470px) --- */
@media (max-width: 470px) {
    .rc-catalog--tile {
        grid-template-columns: 1fr;
    }
}

/* --- TILE: перестроение кнопок на узких экранах --- */
@media (max-width: 1070px) and (min-width: 861px),
       (max-width: 810px) and (min-width: 651px),
       (max-width: 540px) and (min-width: 470px) {

    .rc-catalog--tile .rc-btn-fav {
        position: absolute;
        top: 10px;
        right: 10px;
        background: #fff;
    }

    .rc-catalog--tile .rc-actions-row--bottom {
        gap: 0;
    }

    .rc-catalog--tile .rc-actions-row {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .rc-catalog--tile .rc-qty-counter {
        margin: 0;
        width: 100%;
    }
}

/* --- LINE: перестроение на планшетах (≤1023px) --- */
@media (max-width: 1023px) {
    .rc-catalog--line .rc-line-data {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .rc-catalog--line .rc-line-data-left {
        flex-wrap: wrap;
        justify-content: flex-start;
        align-items: start;
        gap: 5px;
    }
}

/* --- LINE/LIST: адаптация на мобильных (≤740px) --- */
@media (max-width: 740px) {
    .rc-catalog--line .rc-product-img,
    .rc-catalog--list .rc-product-img {
        width: 115px;
        height: 90px;
    }

    .rc-catalog--line .rc-line-text {
        flex-direction: column;
        align-items: flex-start;
    }

    .rc-catalog--line .rc-line-data-left {
        align-items: center;
    }

    .rc-catalog--line .rc-total-price span {
        color: #979797;
        font-size: 14px;
        font-weight: 400;
    }

    .rc-catalog--line .rc-line-name {
        white-space: normal;
    }
}

/* --- LIST: описание на мобильных (≤730px) --- */
@media (max-width: 730px) {
    .rc-catalog--list .rc-list-text {
        display: flex !important;
        flex-direction: column;
    }

    .rc-catalog--list .rc-list-preview {
        height: auto;
        max-height: 95px;
    }

    .rc-catalog--list .rc-product-img {
        width: 115px;
        height: 90px;
    }

    .rc-catalog--list .rc-product-card {
        align-items: flex-start;
    }
}

/* --- LINE/LIST: компактно на телефонах (≤650px) --- */
@media (max-width: 650px) {
    .rc-catalog--line .rc-product-price,
    .rc-catalog--list .rc-product-price {
        min-width: 110px;
    }

    .rc-catalog--line .rc-qty-counter {
        margin: 0 20px 0 0;
    }

    .rc-catalog--line .rc-total-price,
    .rc-catalog--list .rc-total-price {
        display: flex;
        gap: 5px;
    }

    .rc-catalog-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 25px;
    }
}

/* --- LIST: блок данных на всю ширину (≤600px) --- */
@media (max-width: 600px) {
    .rc-catalog--list .rc-list-data {
        width: 100% !important;
    }
}

/* --- LIST: перестроение на средних экранах (≤1300px) --- */
@media (max-width: 1300px) {
    .rc-catalog--list .rc-list-name {
        width: auto;
    }

    .rc-catalog--list .rc-list-text {
        display: grid !important;
        grid-template-columns: 1fr 205px;
    }
}


/* ================================================================
   7. СОВМЕСТИМОСТЬ СО СТАРЫМИ КЛАССАМИ
   (Эти стили можно удалить после полного перехода на .rc-* классы)
   ================================================================ */

/* --- Заглушка: старые классы получают те же стили через новый CSS --- */
/* При полном переходе удалить блок ниже и заменить классы в шаблонах */

/* Старые общие классы → новый CSS */
.product_list_catalog {
    width: 100%;
    float: none;
    font-size: 0;
}

/* --- Устаревшая сетка (col3/col2/col1) — заменена на CSS Grid --- */
.product_list_catalog .col3 { width: 31%; }
.product_list_catalog .col2 { width: 47%; }
.product_list_catalog .col1 { width: 94%; }

.product_list_catalog .product-item {
    margin-right: 5px;
    float: left;
}

.product_list_catalog .product-item > div {
    padding: 10px;
}

.product_list_catalog .image-wrapper {
    float: left;
    width: 90%;
    height: 100px;
    text-align: center;
}

.product_list_catalog .s5_browseProductContainer h2 {
    height: 150px;
}

.product_list_catalog .s5_browseProductContainer h2 a {
    font-size: 12px;
    font-weight: bold;
    word-break: break-all;
}

.product_list_catalog .product-price-wrapper {
    text-align: center;
    font-size: 16px;
}

.product_list_catalog .button-submit-wrapper {
    float: left;
    width: 90%;
    margin-top: 3px;
    text-align: center;
}

/* --- Старые product-line-wrap (через новый CSS) --- */
.product-line-wrap.in-proccess::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: #fff;
    opacity: .7;
}

/* --- dotted разделитель --- */
.dotted_section_list {
    border-bottom: dotted 2px #CCCCCC;
    margin-bottom: 30px;
}
