/* Shared product card used by all storefront product listings. */
.product-card { position:relative; display:flex; flex-direction:column; min-width:0; height:100%; overflow:hidden; border:1px solid var(--mtp-line,#dce5ee); border-radius:9px; background:#fff; box-shadow:0 1px 2px rgba(9,45,83,.04); transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease; }
.product-card:hover { border-color:#b8cce0; box-shadow:0 10px 24px rgba(9,45,83,.12); transform:translateY(-3px); }
.product-media { position:relative; display:grid; width:100%; aspect-ratio:1; place-items:center; overflow:hidden; padding:12px; background:#f7f9fc; }
.product-media img { width:100%; height:100%; object-fit:contain; transition:transform .25s ease; }.product-card:hover .product-media img { transform:scale(1.04); }.product-media__placeholder { display:grid; width:64px; height:64px; place-items:center; border-radius:50%; background:#e7eef6; color:var(--mtp-navy,#06376f); font-weight:700; }
.product-card .product-badge,.product-card .rank-badge { position:absolute; top:10px; left:10px; z-index:3; padding:5px 8px; border-radius:4px; background:var(--mtp-blue,#0868b9); color:#fff; font-size:11px; font-weight:700; line-height:1; }.product-card .rank-badge { border-radius:50%; }.product-card .product-badge--giamgia { background:#d93b32; }.product-card .product-badge--moi { background:#b98227; }
.product-card .wishlist-btn { display:inline-flex!important; width:36px; height:36px; flex:0 0 36px; border-color:var(--mtp-line,#dce5ee); color:var(--mtp-navy,#06376f); }.product-card .wishlist-btn--overlay { top:10px; right:10px; }
.product-info { display:flex; flex:1; flex-direction:column; min-width:0; padding:14px; }.product-title { display:-webkit-box; min-height:42px; overflow:hidden; color:var(--mtp-ink,#17283b); font-size:15px; font-weight:650; line-height:1.4; -webkit-box-orient:vertical; -webkit-line-clamp:2; }.product-title:hover { color:var(--mtp-blue,#0868b9); }.product-sku,.product-desc,.product-rating { margin:7px 0 0; }.product-sku { color:#65768a; font-size:11px; line-height:1.3; }.product-desc { display:-webkit-box; min-height:32px; overflow:hidden; color:#52657d; font-size:12px; line-height:1.35; -webkit-box-orient:vertical; -webkit-line-clamp:2; }.product-rating { color:#65768a; font-size:12px; line-height:1.25; }.product-rating .fa { color:#f0ad28; }
.product-bottom { display:flex; flex-direction:column; gap:10px; margin-top:auto; padding-top:12px; }.product-pricing { min-height:40px; }.product-price { display:block; color:var(--mtp-navy,#06376f); font-size:17px; font-weight:750; line-height:1.2; }.product-pricing del { display:block; margin-top:3px; color:#7c8b9b; font-size:12px; line-height:1.2; }.product-actions { display:flex; width:100%; gap:7px; }.product-card .add-cart,.product-contact { display:inline-flex; min-width:38px; height:38px; align-items:center; justify-content:center; border:1px solid #ffc0a5; border-radius:5px; background:#fff; color:var(--mtp-orange,#fa4d12); font-size:13px; font-weight:700; text-align:center; }.product-card .add-cart--primary { flex:1; border-color:var(--mtp-orange,#fa4d12); background:var(--mtp-orange,#fa4d12); color:#fff; }.product-card .add-cart:not(.add-cart--primary) { flex:0 0 38px; }.product-card .add-cart:not(.add-cart--primary)::before { content:"\f07a"; font-family:FontAwesome; font-size:13px; }.product-contact { width:100%; border-color:var(--mtp-navy,#06376f); color:var(--mtp-navy,#06376f); }.product-card .add-cart:hover,.product-contact:hover { filter:brightness(.96); }.product-card .add-cart:focus-visible,.product-contact:focus-visible,.product-title:focus-visible,.product-media:focus-visible { outline:3px solid rgba(8,104,185,.28); outline-offset:2px; }.product-card .add-cart.is-loading { cursor:wait; opacity:.7; }
.product-card .product-info { display:flex!important; padding:14px; }.product-card .product-title { display:-webkit-box!important; min-height:42px; font-size:15px; font-weight:650; }.product-card .product-desc,.product-card .product-rating { display:-webkit-box!important; }.product-card .product-rating { display:block!important; }.product-card .product-bottom { display:flex!important; flex-direction:column; }.product-card .product-bottom > .product-pricing { display:block!important; min-width:0; flex:initial; }
.sc-product-grid.list-view .product-card { display:grid; grid-template-columns:200px minmax(0,1fr); align-items:stretch; min-height:200px; }.sc-product-grid.list-view .product-media { height:200px; aspect-ratio:auto; }.sc-product-grid.list-view .product-info { padding:20px; }.sc-product-grid.list-view .product-bottom { flex-direction:row; align-items:end; }.sc-product-grid.list-view .product-actions { min-width:190px; }
.pd-related__grid,.not-found-products,.account-product-grid { display:grid; gap:14px; }.account-product-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
@media (max-width:760px) { .product-info { padding:10px; }.product-title { min-height:38px; font-size:13px; }.product-desc { display:none; }.product-price { font-size:14px; }.product-card .add-cart,.product-contact { height:35px; font-size:11px; }.product-card .add-cart:not(.add-cart--primary) { flex-basis:35px; min-width:35px; }.sc-product-grid.list-view .product-card { grid-template-columns:130px minmax(0,1fr); min-height:130px; }.sc-product-grid.list-view .product-media { height:130px; padding:8px; }.sc-product-grid.list-view .product-info { padding:12px; }.sc-product-grid.list-view .product-bottom { flex-direction:column; align-items:stretch; }.sc-product-grid.list-view .product-actions { min-width:0; }.account-product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (prefers-reduced-motion:reduce) { .product-card,.product-media img { transition:none; } }