/* Сетка каталога */
.pc-grid{
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 16px;
}

/* Карточка: одинаковая высота, аккуратные тени */
.product-card{
    height: 100%;
    border: 1px solid #e5e8ef;
    border-radius: 12px;
    background: #fff;
    overflow: hidden;
    transition: box-shadow .2s ease, transform .18s ease;
    display: flex;                 /* ключ: сам контейнер растягиваем */
}
.product-card:hover{
    transform: translateY(-2px);
    box-shadow: 0 8px 22px rgba(0,0,0,.06);
}

/* Внутренняя колонка тянется */
.product-card__inner{
    display: flex;
    flex-direction: column;
    width: 100%;
}

/* Блок картинки: фиксированное соотношение, резерв высоты */
.product-card__img-link{
    position: relative;
    display: block;
    overflow: hidden;
    background: #f7f9fc;           /* чтобы пустые не белели */
}
.product-card__img-ratio{
    display: block;
    width: 100%;
    padding-top: 100%;              /* квадрат; хочешь 4:5 — сделай 125% */
}
.product-card__img{
    position: absolute; inset: 0;
    width: 100%; height: 100%;
    object-fit: cover;
}

/* Контент: растягиваем, кнопки прижимаем книзу */
.product-card__body{
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 10px 12px 14px;
    flex: 1 1 auto;                 /* тянем тело */
    min-height: 0;                  /* чтобы line-clamp не лезло */
}

/* Заголовок: две строки, одинаковая высота */
.product-card__title{
    color: #1a1a1a; text-decoration: none;
    font-weight: 600; line-height: 1.3;
    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;
    overflow: hidden; min-height: calc(1.3em * 2);
}
.product-card__title:hover{ color:#0f4d8a; }

/* Блок с двумя ценами: фиксированная высота чтобы выровнять */
.product-card__price2{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    align-items: end;
    min-height: 44px;               /* выравнивает карточки по цене */
}
.pc-price{display:flex; gap:6px; align-items:baseline; min-width:0;}
.pc-price__label{font-size:.8rem; color:#6b7b93; white-space:nowrap;}
.pc-price__val{font-weight:800; overflow:hidden; text-overflow:ellipsis;}

/* Офферы: ограничим высоту, чтобы ряд не прыгал */
.product-card__offers{
    display:flex; flex-direction:column; gap:6px;
    max-height: 56px; overflow: hidden;  /* фиксируем, чтобы карты были равны */
}
.pc-offer{display:flex; gap:8px; align-items:center}
.pc-offer__label{min-width:58px; color:#6b7b93; font-size:.85rem}
.pc-offer__values{display:flex; gap:6px; flex-wrap:wrap}
.pc-chip,.pc-size{
    display:inline-flex; align-items:center; justify-content:center;
    padding:4px 8px; border:1px solid #e1e6ef; background:#fff;
    border-radius:14px; font-size:.8rem; cursor:pointer;
}
.pc-size{min-width:34px; height:26px; border-radius:6px}
.pc-chip.is-active,.pc-size.is-active{border-color:#9cc6ff; background:#edf5ff}

/* Кнопки: всегда на одной линии внизу */
.product-card__actions{
    margin-top: auto;               /* прибили к низу */
    display:flex; gap:6px; justify-content:space-between;
}

/* Мелкая адаптация */
@media (max-width: 480px){
    .pc-grid{ gap: 12px; }
    .product-card__price2{ min-height: 40px; }
}
