/* Reveal amounts already rendered by WooCommerce; retain server-side trade access. */
body.woocommerce-cart .cie-basket--logged-in .cart-price-col,
body.woocommerce-cart .cie-basket--logged-in .cart-subtotal-col,
body.woocommerce-cart .cie-basket--logged-in .cart-heading-row > div:nth-child(2),
body.woocommerce-cart .cie-basket--logged-in .cart-heading-row > div:nth-child(4) {
	display: block;
}

body.woocommerce-cart .cie-basket--logged-in .cart-heading-row,
body.woocommerce-cart .cie-basket--logged-in .custom-cart-item {
	column-gap: clamp(8px, 0.833333vw, 16px);
	grid-template-columns: minmax(0, 1fr) minmax(70px, 0.2fr) minmax(140px, 0.35fr) minmax(80px, 0.2fr);
}

body.woocommerce-cart .cie-basket--logged-in .custom-cart-item {
	grid-template-areas: "product price quantity subtotal";
}

body.woocommerce-cart .cie-basket--logged-in .cart-product-col {
	grid-area: product;
}

body.woocommerce-cart .cie-basket--logged-in .cart-price-col {
	grid-area: price;
}

body.woocommerce-cart .cie-basket--logged-in .cart-qty-col {
	grid-area: quantity;
	justify-self: start;
}

body.woocommerce-cart .cie-basket--logged-in .cart-subtotal-col {
	grid-area: subtotal;
}

body.woocommerce-cart .cie-basket--logged-in .cart-price-col,
body.woocommerce-cart .cie-basket--logged-in .cart-subtotal-col {
	min-width: 0;
	overflow-wrap: anywhere;
	padding-right: 0;
}

/* Tablet's former two-column layout adds a quantity label even above 900px. */
@media (min-width: 901px) {
	body.woocommerce-cart .cie-basket--logged-in .cart-qty-col::before {
		display: none;
	}
}

@media (max-width: 900px) {
	body.woocommerce-cart .cie-basket--logged-in .custom-cart-item {
		grid-template-areas: "product product product" "price quantity subtotal";
		grid-template-columns: minmax(0, 1fr) minmax(140px, 1.4fr) minmax(0, 1fr);
		row-gap: clamp(14px, 2.083333vw, 20px);
	}

	body.woocommerce-cart .cie-basket--logged-in .cart-qty-col {
		display: block;
		min-width: 0;
	}

	body.woocommerce-cart .cie-basket--logged-in .cart-qty-col::before {
		display: block;
		margin: 0 0 6px;
		text-align: left;
	}
}

@media (max-width: 560px) {
	body.woocommerce-cart .cie-basket--logged-in .custom-cart-item {
		grid-template-areas: "product product" "price subtotal" "quantity quantity";
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	body.woocommerce-cart .cie-basket--logged-in .cart-qty-col {
		display: flex;
		justify-self: stretch;
	}

	body.woocommerce-cart .cie-basket--logged-in .cart-qty-col::before {
		margin: 0;
	}
}

body.woocommerce-checkout #order_review .checkout-product-price {
	display: block;
	color: var(--cie-checkout-charcoal);
	font-family: "Source Sans Pro", sans-serif;
	font-size: clamp(15px, 0.9375vw, 18px);
	font-weight: 400;
	line-height: 1.5;
	white-space: nowrap;
}

body.woocommerce-checkout #order_review .checkout-product-price .woocommerce-Price-amount {
	display: inline;
}

@media (max-width: 767px) {
	body.woocommerce-checkout #order_review .checkout-product-meta {
		flex-wrap: wrap;
	}
}
