/* Shared WooCommerce product card used by Home, Shop and Related Products. */
.product-card { position: relative; width: auto !important; min-width: 0; display: flex !important; flex-direction: column; overflow: hidden; margin: 0 !important; border: 1px solid var(--cb-border); border-radius: var(--cb-radius-md); background: linear-gradient(155deg, #161920, #0e1015 58%); transition: transform .25s, border-color .25s; }
.product-card:hover { transform: translateY(-.3rem); border-color: rgb(244 165 28 / 42%); }
.product-card.featured { border-color: rgb(244 165 28 / 42%); }
.card-badge { position: absolute; z-index: 2; top: 1rem; left: 1rem; padding: .4rem .6rem; border-radius: 2rem; background: var(--cb-accent); color: #08090c; font-size: .65rem; font-weight: 900; }
.product-image { position: relative; height: clamp(15.625rem, 26vw, 23.75rem); display: flex; align-items: center; justify-content: center; overflow: hidden; background: radial-gradient(ellipse at 50% 48%, rgb(245 166 35 / 10%), rgb(120 125 135 / 8%) 28%, rgb(20 22 27 / 20%) 56%, transparent 78%), linear-gradient(145deg, #16181d, #0d0f13); text-decoration: none; }
.product-image::after { content: ""; position: absolute; left: 20%; right: 20%; bottom: 12%; height: 8%; border-radius: 50%; background: rgb(0 0 0 / 50%); filter: blur(.875rem); }
.product-image img { position: relative; z-index: 1; width: 82% !important; height: 100% !important; margin: 0 !important; object-fit: contain; filter: drop-shadow(0 1.125rem 1.125rem rgb(0 0 0 / 42%)); transition: transform .45s; }
.product-card:hover .product-image img { transform: scale(1.035); }
.product-card-body { flex: 1; display: flex; flex-direction: column; padding: 0 1.75rem 1.75rem; text-align: center; }
.product-label { margin: 0 0 .375rem; color: var(--cb-accent); font-size: .66rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.product-card h2, .product-card h3 { margin: 0; font-size: 1.18rem; letter-spacing: .02em; text-transform: uppercase; }
.product-card h2 a, .product-card h3 a { text-decoration: none; }
.product-card-body > p:not(.price):not(.product-label):not(.stock) { min-height: 3rem; max-width: 22.5rem; margin: .5rem auto .875rem; color: var(--cb-text-muted); font-size: .84rem; }
.product-card .price { margin: auto 0 1.25rem; color: var(--cb-accent); font-size: 1.15rem; font-weight: 900; }
.product-card .price del { margin-right: .4375rem; color: #737986; font-size: .78rem; font-weight: 500; }
.product-card .price ins { color: var(--cb-accent); font-weight: 900; text-decoration: none; }
.woocommerce ul.products li.product.product-card .price { margin: auto 0 1.25rem; color: var(--cb-accent); font-size: 1.15rem; font-weight: 900; line-height: 1.2; }
.woocommerce ul.products li.product.product-card .price del { color: #737986; opacity: 1; }
.woocommerce ul.products li.product.product-card .price ins { color: var(--cb-accent); font-weight: 900; text-decoration: none; }
.product-page .related ul.products li.product.product-card .price { margin: auto 0 1.25rem; color: var(--cb-accent); font-size: 1.15rem; font-weight: 900; line-height: 1.2; }
.product-page .related ul.products li.product.product-card .price del { color: #737986; opacity: 1; }
.product-page .related ul.products li.product.product-card .price ins { color: var(--cb-accent); font-weight: 900; text-decoration: none; }
.product-page .product-compare-grid .product-card .price { margin: auto 0 1.25rem; color: var(--cb-accent); font-size: 1.15rem; font-weight: 900; line-height: 1.2; }
.product-page .product-compare-grid .product-card .price del { color: #737986; opacity: 1; }
.product-page .product-compare-grid .product-card .price ins { color: var(--cb-accent); font-weight: 900; text-decoration: none; }
.product-card > .product-card-body > .button { width: 100%; margin-top: auto; }
.product-card .button-primary { border-color: var(--cb-accent); background: var(--cb-accent); color: #141006; }
.product-card .button-primary:hover { border-color: var(--cb-accent-hover); background: var(--cb-accent-hover); color: #141006; }
.card-actions { display: grid; grid-template-columns: 1fr 1fr; gap: .625rem; }
.card-actions .button { width: 100%; min-height: 2.75rem; display: inline-flex; align-items: center; justify-content: center; padding: 0 .75rem; line-height: 1.2; text-align: center; white-space: nowrap; }
.woocommerce ul.products li.product.product-card .card-actions .button { display: inline-flex; align-items: center; justify-content: center; margin: 0; padding-block: 0; border-radius: var(--cb-control-radius); font-size: inherit; font-weight: 800; line-height: 1.2; text-align: center; }
.woocommerce ul.products li.product.product-card .card-actions .button-secondary { border: 1px solid var(--cb-border-strong); background: transparent; color: var(--cb-text); }
.woocommerce ul.products li.product.product-card .card-actions .button-secondary:hover { border-color: var(--cb-accent); background: transparent; color: var(--cb-accent); }
.woocommerce ul.products li.product.product-card .card-actions .button-primary { border: 1px solid var(--cb-accent); background: var(--cb-accent); color: #141006; }
.woocommerce ul.products li.product.product-card .card-actions .button-primary:hover { border-color: var(--cb-accent-hover); background: var(--cb-accent-hover); color: #141006; }
.product-page .related ul.products li.product.product-card .card-actions .button { margin: 0; border-radius: var(--cb-control-radius); font-size: inherit; font-weight: 800; line-height: 1; }
.product-page .related ul.products li.product.product-card .card-actions .button-secondary { border: 1px solid var(--cb-border-strong); background: transparent; color: var(--cb-text); }
.product-page .related ul.products li.product.product-card .card-actions .button-secondary:hover { border-color: var(--cb-accent); background: transparent; color: var(--cb-accent); }
.product-page .related ul.products li.product.product-card .card-actions .button-primary { border: 1px solid var(--cb-accent); background: var(--cb-accent); color: #141006; }
.product-page .related ul.products li.product.product-card .card-actions .button-primary:hover { border-color: var(--cb-accent-hover); background: var(--cb-accent-hover); color: #141006; }
.product-page .product-compare-grid .product-card .card-actions .button { display: inline-flex; align-items: center; justify-content: center; margin: 0; padding-block: 0; border-radius: var(--cb-control-radius); font-size: inherit; font-weight: 800; line-height: 1.2; text-align: center; }
.product-page .product-compare-grid .product-card .card-actions .button-secondary { border: 1px solid var(--cb-border-strong); background: transparent; color: var(--cb-text); }
.product-page .product-compare-grid .product-card .card-actions .button-secondary:hover { border-color: var(--cb-accent); background: transparent; color: var(--cb-accent); }
.product-page .product-compare-grid .product-card .card-actions .button-primary { border: 1px solid var(--cb-accent); background: var(--cb-accent); color: #141006; }
.product-page .product-compare-grid .product-card .card-actions .button-primary:hover { border-color: var(--cb-accent-hover); background: var(--cb-accent-hover); color: #141006; }
.product-card .added_to_cart, body .product-card a.added_to_cart.wc-forward { display: none; }

@media (max-width: 48rem) {
	.product-image { height: 18.75rem; }
}
@media (max-width: 32.5rem) {
	.product-card-body { padding-inline: 1.125rem; }
	.card-actions .button { padding-inline: .625rem; }
}
