/* Compact catalog cards; IDs and add-to-cart handlers stay unchanged. */
body .product-grid-holder .product-item-holder {
    min-height: 0; border: 1px solid #e5e9ec !important; border-radius: 10px;
    background: #fff; overflow: hidden; box-shadow: 0 2px 5px #182b3a03;
}
body .product-grid-holder .product-item-holder:hover {
    transform: none; border-color: #a9bac5 !important; box-shadow: 0 6px 22px #182b3a0b;
}
body .product-grid-holder .product-item-holder .product-item,
body .product-grid-holder .product-item-holder.hover:hover .product-item {
    display: grid; grid-template-columns: minmax(0,1fr) auto; column-gap: 10px;
    position: relative; width: 100%; height: 100%; padding: 18px;
    box-shadow: none; z-index: auto; border: 0;
}
body .product-grid-holder .product-item-holder .image {
    grid-column: 1 / -1; height: 176px; padding: 8px 10px 18px !important;
    border: 0; border-radius: 0; background: #fff;
}
body .product-grid-holder .product-item-holder .image a { display: block; width: 100%; height: 100%; }
body .product-grid-holder .product-item-holder .image img {
    width: 100% !important; height: 150px !important; object-fit: contain;
}
body .product-grid-holder .product-item-holder .body {
    grid-column: 1 / -1; display: flex; flex-direction: column; gap: 7px;
    min-height: 85px !important; margin: 12px 0 16px !important; padding: 0; border: 0;
}
body .product-grid-holder .product-item-holder .body .brand {
    order: -1; margin: 0; font-size: 10px; font-weight: 650; letter-spacing: .09em;
    color: #778691; line-height: 1.4;
}
body .product-grid-holder .product-item-holder .body .title { margin: 0; min-height: 0; }
body .product-grid-holder .product-item-holder .body .title a {
    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
    color: #203544; font-size: 13px; line-height: 1.65; font-weight: 600;
}
body .product-grid-holder .product-item-holder .body .title a:hover { color: #b94418; }
body .product-grid-holder .product-item-holder .body > div[style*="height: 16px"] { display: none; }
body .product-grid-holder .product-item-holder .prices {
    display: flex; flex-direction: column; justify-content: center; align-items: flex-start;
    align-self: end; height: auto !important; min-height: 40px; padding: 0 !important;
    margin: 0 !important; border: 0; line-height: 1.35;
}
body .product-grid-holder .product-item-holder .price-current {
    float: none !important; font-size: 20px !important; color: #182b3a !important;
    font-weight: 700; letter-spacing: -.04em;
}
body .product-grid-holder .product-item-holder .price-prev { float: none; font-size: 11px; }
body .product-grid-holder .product-item-holder .price-prev:empty { display: none; }
body .product-grid-holder .product-item-holder.hover .hover-area {
    align-self: end; width: auto; min-width: 0; margin: 0; padding: 0 !important;
}
body .product-grid-holder .product-item-holder.hover .hover-area .add-cart-button:before { content: none; }
body .product-grid-holder .product-item-holder.hover .hover-area .add-cart-button a {
    display: flex; align-items: center; justify-content: center; gap: 7px;
    min-height: 40px; padding: 10px 12px !important; background: #203947; color: #fff;
    font-size: 11px; font-weight: 600; border: 0; border-radius: 7px; white-space: nowrap;
}
body .product-grid-holder .product-item-holder.hover .hover-area .add-cart-button a:before {
    content: "\f07a"; font-family: FontAwesome; font-size: 14px; position: static;
}
body .product-grid-holder .product-item-holder.hover .hover-area .add-cart-button a:hover {
    background: #b94418; color: #fff;
}
/* Legacy category builders insert a wrapper after every third product. */
body #productList { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
body #productList > .row { display: contents; }
body #productList:before, body #productList:after, body #productList > .row:before, body #productList > .row:after { display: none; }
body #productList .product-item-holder { width: auto; float: none; max-width: none; }
body #productList > .alert { grid-column: 1 / -1; }
@media(max-width:991px) { body #productList { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; } }
@media(max-width:767px) {
    body .product-grid-holder .product-item-holder .product-item,
    body .product-grid-holder .product-item-holder.hover:hover .product-item { padding: 12px; gap: 6px; }
    body .product-grid-holder .product-item-holder .image { height: 132px; padding: 4px 0 12px !important; }
    body .product-grid-holder .product-item-holder .image img { height: 116px !important; }
    body .product-grid-holder .product-item-holder .body { min-height: 78px !important; margin: 8px 0 12px !important; gap: 5px; }
    body .product-grid-holder .product-item-holder .body .title a { font-size: 12px; line-height: 1.5; }
    body .product-grid-holder .product-item-holder .body .brand { font-size: 9px; }
    body .product-grid-holder .product-item-holder .price-current { font-size: 16px !important; }
    body .product-grid-holder .product-item-holder.hover .hover-area .add-cart-button a { font-size: 0 !important; width: 38px; min-height: 40px; padding: 8px !important; gap: 0; }
    body .product-grid-holder .product-item-holder.hover .hover-area .add-cart-button a:before { font-size: 16px !important; }
}
