/* Product card image fill refinement — 2026-08-11 */
/* Prioritise the product visual: full-width image top, compact information base. */
.product-card {
    overflow: hidden !important;
}

.product-card .product-media {
    height: clamp(340px, 31vw, 390px) !important;
    padding: 0 !important;
    overflow: visible !important;
    background: #f8f6f1 !important;
}

.product-card .product-media > a {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
}

.product-card .product-media img {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: cover !important;
    object-position: center center !important;
}

/* The actions overlap the image edge instead of consuming a separate white row. */
.product-card .product-actions {
    position: absolute !important;
    z-index: 5 !important;
    right: 14px !important;
    bottom: -24px !important;
    left: 14px !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
}

.product-card .product-actions .action-btn:not(.wish),
.product-card .product-actions .action-btn.wish {
    min-height: 48px !important;
    border-radius: 14px !important;
}

/* Keep just the essential name and price in a concise, readable base. */
.product-card .product-info {
    display: flex !important;
    flex: 0 0 94px !important;
    min-height: 94px !important;
    box-sizing: border-box !important;
    gap: 0 !important;
    padding: 35px 16px 10px !important;
    background: #fff !important;
}

.product-card .product-sku {
    display: none !important;
}

.product-card .product-name {
    overflow: hidden !important;
    min-height: 21px !important;
    max-height: 21px !important;
    font-size: .96rem !important;
    line-height: 1.35 !important;
    white-space: nowrap !important;
    text-overflow: ellipsis !important;
    -webkit-line-clamp: 1 !important;
}

.product-card .product-pricing {
    min-height: 24px !important;
    margin-top: auto !important;
}

.product-card .product-price {
    font-size: 1.18rem !important;
    line-height: 1.15 !important;
}

@media (max-width: 640px) {
    .product-card .product-media {
        height: clamp(292px, 92vw, 370px) !important;
    }

    .product-card .product-actions {
        right: 12px !important;
        bottom: -22px !important;
        left: 12px !important;
    }

    .product-card .product-info {
        flex-basis: 88px !important;
        min-height: 88px !important;
        padding: 33px 14px 9px !important;
    }
}
