.product-card{border-color:#d4e7e3;border-radius:10px;transition:border-color .2s,box-shadow .2s}
.product-card>a{position:relative;display:flex;flex-direction:column;height:100%;text-decoration:none}
.product-card:hover{border-color:#8dc9be;box-shadow:0 3px 12px #2a645b0d}
.product-card>a:focus-visible{outline:none}
.product-card>a:focus-visible:not([data-pointer-focus])::after{content:"";position:absolute;inset:2px;border:2px solid var(--dark);border-radius:8px;pointer-events:none;z-index:1}
.product-photo-frame{position:relative;aspect-ratio:8/5;width:100%;overflow:hidden;background:white;flex:none;padding:0}
.product-discount{position:absolute;top:10px;right:10px;display:inline-block;width:auto;height:auto;padding:5px 8px;border:1px solid #c62828;border-radius:6px;background:transparent;color:#c62828;font-size:11px;font-weight:400;line-height:1.2;text-align:center;white-space:nowrap;pointer-events:none}
.product-card .product-photo{display:block;width:100%;height:100%;aspect-ratio:auto;object-fit:contain;margin:0;padding:0;transform:translateY(4%)}
/* Normalized 4:3 thumbnails keep the subject inside the central 80%; this 8:5 crop retains 83.3% of their height. Originals remain fully contained. */
.product-card .product-photo[src*="/storage/products/thumbnails/v2/"]{object-fit:cover}
.product-card .card-body{display:flex;flex-direction:column;align-items:center;flex:1;gap:6px;padding:4px 14px 12px}
.product-brand{display:flex;align-items:center;justify-content:center;width:100%;height:40px;flex:none;color:var(--dark);font-size:12px;line-height:1.3}
.product-card .product-brand-logo{display:block;width:var(--logo-width-desktop,auto);height:var(--logo-height-desktop,24px);max-width:min(110px,100%);aspect-ratio:auto;object-fit:contain;background:transparent;margin:0}
.product-card .price{font-size:22px;line-height:1.4}
.product-card .price del{display:inline-block;font-size:11px;white-space:nowrap}
.product-card .card-body h3{margin:0;font-size:14px;font-weight:500;line-height:1.45;overflow-wrap:anywhere}
.product-card .product-availability{margin:0;font-size:11px;line-height:1.5;color:#536b65}
.product-card .product-price-pending{margin:0;font-size:14px;line-height:1.4;color:var(--dark)}
.product-details{display:inline-flex;align-items:center;justify-content:center;gap:6px;margin-top:auto;min-height:36px;padding:6px 0;color:var(--dark);font-size:12px;line-height:1.4}
.product-details svg{width:15px;height:15px;fill:currentColor;flex:none}
.product-card>a:hover .product-details{text-decoration:underline;text-underline-offset:4px;color:#00877c}
@media(max-width:767px){.product-card .product-photo{transform:translateY(8%)}.product-card .card-body{padding:4px 10px 10px;gap:5px}.product-card .price{font-size:20px}.product-card .card-body h3{font-size:12px}.product-brand{height:36px}.product-card .product-brand-logo{width:var(--logo-width-mobile,auto);height:var(--logo-height-mobile,22px);max-width:min(95px,100%)}.product-details{font-size:11px}}
@media(max-width:767px){.product-discount{top:7px;right:7px;padding:4px 6px;font-size:10px}}
