/* Cart: a composed item card and a calm, readable order summary. */
body.woocommerce-cart .js-internal-body { padding-top:clamp(2.5rem,4vw,4.5rem); }
body.woocommerce-cart .wp-block-woocommerce-cart { margin:0; }
body.woocommerce-cart .wc-block-cart {
	display:grid;
	grid-template-columns:minmax(0,1.65fr) minmax(340px,.72fr);
	gap:clamp(2rem,4vw,4.5rem);
	align-items:start;
	margin:0;
}
body.woocommerce-cart .wc-block-cart__main,
body.woocommerce-cart .wc-block-cart__sidebar {
	width:auto;
	max-width:none;
	margin:0;
	padding:0;
}

/* Undo the general editorial-table treatment for the interactive cart. */
body.woocommerce-cart .entry-content table.wc-block-cart-items {
	display:table;
	width:100%;
	margin:0;
	border:1px solid #cbd4c4;
	border-collapse:separate;
	border-spacing:0;
	border-radius:10px;
	overflow:hidden;
	background:#fbfbf5;
	font-size:1rem;
}
body.woocommerce-cart .entry-content table.wc-block-cart-items th,
body.woocommerce-cart .entry-content table.wc-block-cart-items td {
	border:0;
	background:transparent;
	text-align:left;
}
body.woocommerce-cart .wc-block-cart-items thead {
	background:#edf0e5;
}
body.woocommerce-cart .wc-block-cart-items thead th {
	padding:1rem 1.25rem;
	border-bottom:1px solid #cbd4c4;
	color:#28483b;
	font-size:.72rem;
	font-weight:700;
	letter-spacing:.11em;
	line-height:1.3;
	text-transform:uppercase;
}
body.woocommerce-cart .wc-block-cart-items thead th:last-child { text-align:right; }
body.woocommerce-cart .wc-block-cart-items__row td {
	padding:1.4rem 1.25rem;
	border-bottom:1px solid #d9ded3;
	vertical-align:top;
}
body.woocommerce-cart .wc-block-cart-items__row:last-child td { border-bottom:0; }
body.woocommerce-cart .wc-block-cart-item__image { width:112px; }
body.woocommerce-cart .wc-block-cart-item__image img {
	display:block;
	width:96px;
	height:96px;
	border:1px solid #d9ded3;
	border-radius:6px;
	background:#fff;
	object-fit:cover;
}
body.woocommerce-cart .wc-block-cart-item__product { padding-left:.25rem; }
body.woocommerce-cart .wc-block-components-product-name {
	display:inline;
	color:#173f30;
	font-size:1rem;
	font-weight:650;
	line-height:1.45;
	text-decoration:none;
	text-underline-offset:4px;
}
body.woocommerce-cart .wc-block-components-product-name:hover { text-decoration:underline; }
body.woocommerce-cart .wc-block-components-product-price { margin:.35rem 0; color:#43594d; }
body.woocommerce-cart .wc-block-components-product-metadata,
body.woocommerce-cart .wc-block-components-product-details {
	max-width:60ch;
	margin:.45rem 0 0;
	color:#657368;
	font-size:.84rem;
	line-height:1.55;
}
body.woocommerce-cart .wc-block-cart-item__quantity { margin-top:.8rem; }
body.woocommerce-cart .wc-block-components-quantity-selector {
	min-height:42px;
	border:1px solid #aebaaa;
	border-radius:5px;
	background:#f9faf3;
}
body.woocommerce-cart .wc-block-components-quantity-selector input,
body.woocommerce-cart .wc-block-components-quantity-selector button {
	min-width:40px;
	min-height:40px;
	color:#29483b;
}
body.woocommerce-cart .wc-block-components-quantity-selector button:hover { background:#e7ecdf; }
body.woocommerce-cart .wc-block-cart-item__remove-link {
	min-width:42px;
	min-height:42px;
	margin-left:.55rem;
	color:#4a6053;
	text-decoration:none;
}
body.woocommerce-cart .wc-block-cart-item__remove-link:hover { color:#7c2e2a; }
body.woocommerce-cart .wc-block-cart-item__total {
	min-width:110px;
	color:#173f30;
	font-size:1rem;
	font-weight:650;
	text-align:right!important;
}

body.woocommerce-cart .js-internal--transaction .wc-block-cart__sidebar {
	position:sticky;
	top:1.5rem;
	padding:clamp(1.5rem,2.4vw,2.25rem);
	border:1px solid #c8d1be;
	border-radius:10px;
	background:#e8ebde;
}
body.woocommerce-cart .wc-block-cart__totals-title {
	margin:0 0 1.4rem;
	padding:0 0 1.25rem;
	border-bottom:1px solid #c3ccba;
	color:#12362a;
	font:700 clamp(1.7rem,2.6vw,2.5rem)/1.1 var(--headline);
	letter-spacing:-.02em;
	text-align:left;
}
body.woocommerce-cart .wc-block-components-totals-wrapper {
	padding:1rem 0;
	border-color:#c8d1be;
}
body.woocommerce-cart .wc-block-components-totals-coupon { padding-top:0; }
body.woocommerce-cart .wc-block-components-totals-item {
	align-items:center;
	color:#43594d;
	font-size:.95rem;
}
body.woocommerce-cart .wc-block-components-totals-item__value { color:#193f31; font-weight:650; }
body.woocommerce-cart .wc-block-components-totals-footer-item {
	padding-top:1.35rem;
	color:#173f30;
	font-size:1.25rem;
}
body.woocommerce-cart .wc-block-cart__submit-container { margin-top:1.25rem; }
body.woocommerce-cart .wc-block-cart__submit-button,
body.woocommerce-cart .entry-content .wc-block-cart__submit-button {
	min-height:54px;
	border:1px solid #123f30;
	border-radius:4px;
	background:#123f30;
	color:#f7f3e5!important;
	font-size:.95rem;
	font-weight:700;
	letter-spacing:.01em;
	text-decoration:none;
}
body.woocommerce-cart .wc-block-cart__submit-button span { color:inherit!important; }
body.woocommerce-cart .wc-block-cart__submit-button:hover { background:#285641; color:#fff!important; }
body.woocommerce-cart .wc-block-cart__submit-button:disabled { opacity:.58; color:#f7f3e5!important; }
body.woocommerce-cart .wc-block-components-totals-coupon-link {
	color:#294c3d;
	font-weight:600;
	text-underline-offset:4px;
}

@media(max-width:900px) {
	body.woocommerce-cart .wc-block-cart {
		grid-template-columns:minmax(0,1fr) minmax(300px,.7fr);
		gap:1.75rem;
	}
	body.woocommerce-cart .wc-block-cart-item__image { width:92px; }
	body.woocommerce-cart .wc-block-cart-item__image img { width:76px; height:76px; }
}
@media(max-width:720px) {
	body.woocommerce-cart .wc-block-cart { display:block; }
	body.woocommerce-cart .wc-block-cart__sidebar { margin-top:1.5rem; }
	body.woocommerce-cart .js-internal--transaction .wc-block-cart__sidebar { position:static; padding:1.25rem; }
	body.woocommerce-cart .entry-content table.wc-block-cart-items { display:table; overflow:visible; }
	body.woocommerce-cart .wc-block-cart-items__row td { padding:1rem; }
	body.woocommerce-cart .wc-block-cart-item__image { width:76px; }
	body.woocommerce-cart .wc-block-cart-item__image img { width:64px; height:64px; }
	body.woocommerce-cart .wc-block-cart-item__total { min-width:0; }
}
