/* Product cards: always render the image in a 1:1 box, upscaling small images to fill it. */
ul.products li.product .woocommerce-image__wrapper,
ul.products li.product .woocommerce-LoopProduct-link > img {
	aspect-ratio: 1 / 1;
}
ul.products li.product .woocommerce-image__wrapper {
	display: block;
	overflow: hidden;
}
ul.products li.product .woocommerce-image__wrapper a:not(.button) {
	display: block;
	width: 100%;
	height: 100%;
}
ul.products li.product .woocommerce-image__wrapper img,
ul.products li.product .woocommerce-LoopProduct-link > img {
	display: block;
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: contain;
}

/* Product card prices: bold and a step larger, with or without a sale. The struck-through regular price stays light. */
ul.products li.product .price {
	font-size: 1.0625em;
	font-weight: 700;
	line-height: 1.3;
}
ul.products li.product .price .amount,
ul.products li.product .price ins {
	font-weight: 700;
	text-decoration: none;
}
ul.products li.product .price del,
ul.products li.product .price del .amount {
	font-weight: 400;
	font-size: 0.9em;
	opacity: 0.6;
}
