/* =============================================================================
   Cart page — mobile redesign (2026 wireframe)

   Markup: woocommerce/cart/cart.php (+ cart-totals.php, untouched). Desktop is
   deliberately unchanged: every layout rule lives in the max-width:767px block;
   outside it only the new mobile-only bits are hidden.

   CSS-only on purpose: WooCommerce's cart.js swaps .woocommerce-cart-form and
   .cart_totals with fresh server HTML after coupon/qty updates, and the
   parent's qty scripts reload the page — nothing here depends on JS state.

   Palette: the MDPT checkout/Figma token set (see checkout-redesign.css).
   ============================================================================= */

.mdpt-cart-head,
.mdpt-cart-item__label,
.mdpt-cart-item__remove svg {
	display: none;
}

/* Shipping row in the cart totals (woocommerce/cart/cart-shipping.php), all
   widths: right-aligned like Subtotal / Coupon / Total, and no list bullet —
   the theme made #shipping_method a shrink-wrapped flex box whose li bullet
   landed beside the "Shipment 1" label and left the rate short of the edge. */
body.woocommerce-cart .cart_totals tr.woocommerce-shipping-totals td {
	text-align: right !important;
}

body.woocommerce-cart .cart_totals #shipping_method {
	display: block !important;
	width: 100%;
	margin: 0;
	padding-top: 0;
	padding-bottom: 0;
	padding-left: 0; /* right padding = the inset rule below */
	list-style: none;
}

body.woocommerce-cart .cart_totals #shipping_method li {
	display: block;
	margin: 0;
	padding: 0;
	list-style: none;
	text-align: right;
}

body.woocommerce-cart .cart_totals #shipping_method li::marker {
	content: none;
}

body.woocommerce-cart .cart_totals #shipping_method .shipping-notice {
	margin: 4px 0 0;
}

/* Same right inset as the other amounts (theme style.css gives Subtotal/Total,
   coupon and savings values margin-right 25px ≥1024px, 15px below). Its own
   shipping-cell margin never applies: the cell is a table cell there. */
body.woocommerce-cart .cart_totals tr.woocommerce-shipping-totals td > * {
	box-sizing: border-box;
	padding-right: 25px;
}

@media (max-width: 1023px) {
	body.woocommerce-cart .cart_totals tr.woocommerce-shipping-totals td > * {
		padding-right: 15px;
	}
}

@media (max-width: 767px) {

	body.woocommerce-cart {
		--cr-navy: #22396a;
		--cr-link: #3952d0;
		--cr-bg: #f3f7fa;
		--cr-border: #cddaf5;
		--cr-muted: #5f6f91; /* secondary text — 5:1 on white */
		--cr-disabled: #b4bccc;
		--cr-error: #de4346;
		--cr-error-bg: #fdf2f2;
		--cr-error-text: #c0272b; /* #de4346 is ~4.2:1 on white — too light for 14px text */
		--cr-step: 36px;
		--cr-thumb: 104px;
		background: var(--cr-bg);
	}

	/* Child style.css has unscoped `p` / `a:hover { font-family:'Open Sans' }`. */
	body.woocommerce-cart .mdpt-cart-form :where(p, a, span, th, td, dt, dd, button, input, label),
	body.woocommerce-cart .cart_totals :where(p, a, span, th, td, strong, small),
	body.woocommerce-cart .second-row-cart :where(a) {
		font-family: 'Lato', sans-serif;
	}

	.mdpt-cart-desktop-only {
		display: none;
	}

	/* ---- Heading --------------------------------------------------------- */

	body.woocommerce-cart .mdpt-cart-head {
		display: flex;
		align-items: baseline;
		justify-content: space-between;
		gap: 16px;
		margin: 8px 0 16px;
	}

	body.woocommerce-cart .mdpt-cart-head__title {
		margin: 0;
		font-family: 'Syncopate', sans-serif;
		font-size: 20px;
		font-weight: 400;
		line-height: 28px;
		letter-spacing: 0;
		text-transform: uppercase;
		color: var(--cr-navy);
	}

	body.woocommerce-cart .mdpt-cart-head__count {
		font-family: 'Lato', sans-serif;
		font-size: 12px;
		font-weight: 700;
		line-height: 16px;
		letter-spacing: 0.1em;
		text-transform: uppercase;
		white-space: nowrap;
		color: var(--cr-muted);
	}

	/* ---- Table → stacked cards ------------------------------------------- */

	body.woocommerce-cart form.mdpt-cart-form table.shop_table.cart {
		display: block;
		width: 100%;
		margin: 0;
		border: 0;
		background: transparent;
	}

	body.woocommerce-cart form.mdpt-cart-form table.shop_table.cart thead {
		display: none;
	}

	body.woocommerce-cart form.mdpt-cart-form table.shop_table.cart tbody {
		display: flex;
		flex-direction: column;
		gap: 12px;
	}

	body.woocommerce-cart form.mdpt-cart-form table.shop_table.cart tbody > tr {
		display: block;
		margin: 0;
		padding: 0;
		border: 0;
		background: transparent;
	}

	body.woocommerce-cart form.mdpt-cart-form table.shop_table.cart tr.cart_item:not(.mdpt-cart-bundle-row) {
		display: grid;
		grid-template-columns: var(--cr-thumb) minmax(0, 1fr);
		grid-template-areas:
			"thumb qty"
			"thumb price"
			"thumb subtotal"
			"name  remove";
		column-gap: 16px;
		align-items: center;
		padding: 16px;
		background: #fff;
		border: 1px solid var(--cr-border);
		border-radius: 4px;
	}

	/* parent cart.css: `table.shop_table_responsive tr td { display:flex !important }`
	   and `.product-name { min-height:150px }` — hence the !important here. */
	body.woocommerce-cart form.mdpt-cart-form table.shop_table.cart tr.cart_item:not(.mdpt-cart-bundle-row) > td {
		display: block !important;
		float: none;
		width: auto;
		min-width: 0;
		min-height: 0;
		height: auto;
		margin: 0;
		padding: 0;
		border: 0;
		background: transparent;
		text-align: left;
		vertical-align: top;
	}

	body.woocommerce-cart form.mdpt-cart-form table.shop_table.cart tr.cart_item:not(.mdpt-cart-bundle-row) > td::before {
		content: none;
	}

	/* Production-only "bundles" upsell row (US customers): a cart_item row with
	   one colspan cell, tagged .mdpt-cart-bundle-row in cart.php. Excluded from the
	   card rules below via :not() so it keeps the theme's own bundle panel styling.
	   Only fix: the panel is a flex item whose content has min-width:63vw plus
	   25px side padding, so it overflowed narrow phones — let it shrink. */
	body.woocommerce-cart form.mdpt-cart-form tr.mdpt-cart-bundle-row > td > .cross-sell-bundels-wrap {
		flex: 1 1 100%;
		box-sizing: border-box;
		min-width: 0;
		max-width: 100%;
	}

	body.woocommerce-cart form.mdpt-cart-form tr.mdpt-cart-bundle-row .cart-bundle-wrap {
		float: none;
		width: 100%;
	}

	body.woocommerce-cart form.mdpt-cart-form tr.mdpt-cart-bundle-row .bundle.card-new {
		min-width: 0;
	}

	/* Invisible hover tooltip (opacity:0, absolute, width:100% + left:5px) that
	   caused a 5px sideways scroll on phones; the name is shown beside the image. */
	body.woocommerce-cart form.mdpt-cart-form tr.mdpt-cart-bundle-row .bundle-thum-name {
		display: none;
	}

	/* Thumbnail */
	body.woocommerce-cart form.mdpt-cart-form table.shop_table.cart tr.cart_item > td.product-thumbnail {
		grid-area: thumb;
		align-self: start;
		width: var(--cr-thumb);
		height: var(--cr-thumb);
		overflow: hidden;
		border: 1px solid var(--cr-border);
		border-radius: 4px;
		background: #fff;
	}

	body.woocommerce-cart form.mdpt-cart-form table.shop_table.cart td.product-thumbnail a {
		display: block;
		width: 100%;
		height: 100%;
	}

	body.woocommerce-cart form.mdpt-cart-form table.shop_table.cart td.product-thumbnail img {
		display: block;
		width: 100% !important;
		height: 100% !important;
		max-width: none;
		max-height: none;
		margin: 0;
		object-fit: contain;
	}

	/* Name (under the thumbnail, beside Remove) */
	body.woocommerce-cart form.mdpt-cart-form table.shop_table.cart tr.cart_item > td.product-name {
		grid-area: name;
		align-self: start;
		padding-top: 12px;
	}

	body.woocommerce-cart form.mdpt-cart-form table.shop_table.cart td.product-name p {
		margin: 0;
	}

	body.woocommerce-cart form.mdpt-cart-form table.shop_table.cart td.product-name p:empty {
		display: none;
	}

	body.woocommerce-cart form.mdpt-cart-form table.shop_table.cart td.product-name .wc-product-title,
	body.woocommerce-cart form.mdpt-cart-form table.shop_table.cart td.product-name .wc-product-title a,
	body.woocommerce-cart form.mdpt-cart-form table.shop_table.cart td.product-name .wc-product-title a:visited {
		display: inline;
		margin: 0;
		font-size: 15px;
		font-weight: 700;
		line-height: 20px;
		color: var(--cr-navy);
		text-decoration: none;
		overflow-wrap: break-word;
		hyphens: auto;
	}

	body.woocommerce-cart form.mdpt-cart-form table.shop_table.cart td.product-name .variation,
	body.woocommerce-cart form.mdpt-cart-form table.shop_table.cart td.product-name .backorder_notification {
		margin: 4px 0 0;
		padding: 0;
		font-size: 13px;
		line-height: 18px;
		color: var(--cr-muted);
	}

	body.woocommerce-cart form.mdpt-cart-form table.shop_table.cart td.product-name .variation dt,
	body.woocommerce-cart form.mdpt-cart-form table.shop_table.cart td.product-name .variation dd,
	body.woocommerce-cart form.mdpt-cart-form table.shop_table.cart td.product-name .variation dd p {
		display: inline;
		float: none;
		width: auto;
		margin: 0;
		font-weight: 400;
	}

	/* Quantity cell dissolves so its two wrappers become grid items. */
	body.woocommerce-cart form.mdpt-cart-form table.shop_table.cart tr.cart_item > td.product-quantity {
		display: contents !important;
	}

	body.woocommerce-cart form.mdpt-cart-form .mdpt-cart-item__qty {
		grid-area: qty;
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
		padding-bottom: 12px;
		margin-bottom: 4px;
		border-bottom: 1px solid var(--cr-border);
		font-size: 15px;
		font-weight: 700;
		color: var(--cr-navy);
	}

	body.woocommerce-cart form.mdpt-cart-form .mdpt-cart-item__label {
		display: block;
		font-size: 12px;
		font-weight: 700;
		line-height: 16px;
		letter-spacing: 0.1em;
		text-transform: uppercase;
		color: var(--cr-muted);
	}

	/* Stepper — markup from woocommerce/global/quantity-input.php. */
	body.woocommerce-cart form.mdpt-cart-form .mdpt-cart-item__qty .quantity {
		display: block;
		width: auto;
		margin: 0;
		padding: 0;
	}

	body.woocommerce-cart form.mdpt-cart-form .mdpt-cart-item__qty .input-group {
		display: flex;
		flex-wrap: nowrap;
		align-items: stretch;
		width: auto;
		height: var(--cr-step);
		margin: 0;
		padding: 0;
		border: 0;
	}

	body.woocommerce-cart form.mdpt-cart-form .mdpt-cart-item__qty .cart-plus-minus-icon {
		display: flex;
		flex: 0 0 var(--cr-step);
		align-items: center;
		justify-content: center;
		width: var(--cr-step);
		height: var(--cr-step);
		margin: 0;
		padding: 0;
		background: var(--cr-navy);
		border: 0;
		border-radius: 0;
		font-size: 18px;
		font-weight: 700;
		line-height: 1;
		color: #fff;
		cursor: pointer;
	}

	body.woocommerce-cart form.mdpt-cart-form .mdpt-cart-item__qty .cart-plus-minus-icon span {
		margin: 0;
		padding: 0;
		font-size: inherit;
		line-height: 1;
		color: inherit;
	}

	body.woocommerce-cart form.mdpt-cart-form .mdpt-cart-item__qty .cart-plus-minus-icon:hover {
		background: var(--cr-link);
	}

	body.woocommerce-cart form.mdpt-cart-form .mdpt-cart-item__qty .cart-plus-minus-icon:focus-visible,
	body.woocommerce-cart form.mdpt-cart-form .mdpt-cart-item__qty input.qty:focus-visible {
		position: relative;
		z-index: 1;
		outline: 2px solid var(--cr-link);
		outline-offset: 2px;
	}

	/* Site-wide `input { height:auto !important }` — hence the !important. */
	body.woocommerce-cart form.mdpt-cart-form .mdpt-cart-item__qty input.qty {
		box-sizing: border-box;
		flex: 0 0 48px;
		width: 48px !important;
		min-width: 0;
		height: var(--cr-step) !important;
		margin: 0;
		padding: 0 4px;
		background: #fff;
		border: solid var(--cr-navy);
		border-width: 1px 0;
		border-radius: 0;
		box-shadow: none;
		font-size: 15px;
		font-weight: 700;
		line-height: 1;
		text-align: center;
		color: var(--cr-navy);
		-moz-appearance: textfield;
		appearance: textfield;
	}

	body.woocommerce-cart form.mdpt-cart-form .mdpt-cart-item__qty input.qty::-webkit-outer-spin-button,
	body.woocommerce-cart form.mdpt-cart-form .mdpt-cart-item__qty input.qty::-webkit-inner-spin-button {
		margin: 0;
		-webkit-appearance: none;
	}

	body.woocommerce-cart form.mdpt-cart-form .mdpt-cart-item__qty .screen-reader-text {
		position: absolute !important;
		width: 1px;
		height: 1px;
		margin: -1px;
		padding: 0;
		overflow: hidden;
		clip: rect(0, 0, 0, 0);
		white-space: nowrap;
		border: 0;
	}

	/* Price "1 × $136.00" and Subtotal rows — label from data-title. */
	body.woocommerce-cart form.mdpt-cart-form table.shop_table.cart tr.cart_item > td.product-price,
	body.woocommerce-cart form.mdpt-cart-form table.shop_table.cart tr.cart_item > td.product-subtotal {
		display: flex !important;
		align-items: baseline;
		justify-content: flex-end;
		flex-wrap: wrap;
		gap: 0 4px;
		padding: 6px 0 !important;
		font-size: 14px;
		font-weight: 400;
		line-height: 20px;
		color: var(--cr-navy);
		text-align: right;
	}

	body.woocommerce-cart form.mdpt-cart-form table.shop_table.cart tr.cart_item > td.product-price {
		grid-area: price;
	}

	body.woocommerce-cart form.mdpt-cart-form table.shop_table.cart tr.cart_item > td.product-subtotal {
		grid-area: subtotal;
		font-size: 18px;
		font-weight: 700;
		line-height: 24px;
	}

	body.woocommerce-cart form.mdpt-cart-form table.shop_table.cart tr.cart_item > td.product-price::before,
	body.woocommerce-cart form.mdpt-cart-form table.shop_table.cart tr.cart_item > td.product-subtotal::before {
		content: attr(data-title);
		display: block;
		margin-right: auto;
		float: none;
		font-size: 14px;
		font-weight: 400;
		line-height: 20px;
		color: var(--cr-muted);
	}

	body.woocommerce-cart form.mdpt-cart-form table.shop_table.cart td.product-price .cart-item-quantity-span {
		font-size: 14px;
		color: var(--cr-navy);
	}

	body.woocommerce-cart form.mdpt-cart-form table.shop_table.cart td.product-price .amount,
	body.woocommerce-cart form.mdpt-cart-form table.shop_table.cart td.product-subtotal .amount {
		margin: 0;
		padding: 0;
		font-size: inherit !important;
		font-weight: inherit;
		color: inherit;
	}

	body.woocommerce-cart form.mdpt-cart-form table.shop_table.cart td.product-price del,
	body.woocommerce-cart form.mdpt-cart-form table.shop_table.cart td.product-price del .amount {
		font-size: 13px !important;
		opacity: 0.7;
	}

	body.woocommerce-cart form.mdpt-cart-form table.shop_table.cart td.product-price ins {
		text-decoration: none;
	}

	/* Remove */
	body.woocommerce-cart form.mdpt-cart-form .mdpt-cart-item__remove {
		grid-area: remove;
		align-self: start;
		padding-top: 10px;
		text-align: left !important; /* Bootstrap .text-center is !important */
	}

	body.woocommerce-cart form.mdpt-cart-form .mdpt-cart-item__remove a.remove,
	body.woocommerce-cart form.mdpt-cart-form .mdpt-cart-item__remove a.remove:visited {
		display: inline-flex;
		align-items: center;
		gap: 6px;
		width: auto;
		height: auto;
		padding: 4px 0;
		background: transparent;
		border: 0;
		border-radius: 0;
		font-size: 12px;
		font-weight: 700;
		line-height: 16px;
		letter-spacing: 0.08em;
		text-decoration: none;
		text-transform: uppercase;
		color: var(--cr-link);
	}

	body.woocommerce-cart form.mdpt-cart-form .mdpt-cart-item__remove a.remove:hover {
		color: #de4346;
	}

	body.woocommerce-cart form.mdpt-cart-form .mdpt-cart-item__remove svg {
		display: block;
		flex-shrink: 0;
	}

	/* ---- Coupon (actions row) --------------------------------------------- */

	body.woocommerce-cart form.mdpt-cart-form table.shop_table.cart td.actions {
		display: block !important;
		width: 100%;
		padding: 4px 0 0;
		border: 0;
		background: transparent;
	}

	body.woocommerce-cart form.mdpt-cart-form td.actions::before {
		content: none;
	}

	/* .coupon carries an inline `float:right; padding:8px`.
	   It wraps: field + Apply share line 1, anything else WooCommerce or a
	   plugin appends to the row (WC 11's p.coupon-error-notice, the
	   woocommerce_cart_coupon hook) drops to its own full-width line below. */
	body.woocommerce-cart form.mdpt-cart-form td.actions .coupon {
		display: flex;
		flex-wrap: wrap;
		align-items: stretch;
		gap: 8px;
		float: none !important;
		width: 100%;
		margin: 0;
		padding: 0 !important;
	}

	body.woocommerce-cart form.mdpt-cart-form td.actions .coupon > :not(#coupon_code):not([name="apply_coupon"]):not(label) {
		flex: 0 0 100%;
		order: 1;
		min-width: 0;
	}

	body.woocommerce-cart form.mdpt-cart-form td.actions .coupon label {
		display: none;
	}

	/* Invalid coupon: WC 11 cart.js appends p#coupon-error-notice inside .coupon
	   and flags the field with .has-error / aria-invalid (cleared on input). */
	body.woocommerce-cart form.mdpt-cart-form td.actions .coupon .coupon-error-notice {
		display: flex;
		align-items: flex-start;
		gap: 6px;
		margin: 0 !important; /* acfwf-cart.js may set margin-top:10px inline */
		padding: 0;
		font-size: 14px;
		font-weight: 400;
		line-height: 20px;
		text-align: left;
		color: var(--cr-error-text);
	}

	body.woocommerce-cart form.mdpt-cart-form td.actions .coupon .coupon-error-notice::before {
		content: '';
		flex: 0 0 16px;
		width: 16px;
		height: 16px;
		margin-top: 2px;
		background: no-repeat center / 16px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23de4346' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M12 8v4'/%3E%3Cpath d='M12 16h.01'/%3E%3C/svg%3E");
	}

	/* :focus variants too — WC re-focuses the field after the cart refresh. */
	body.woocommerce-cart form.mdpt-cart-form td.actions .coupon input#coupon_code.has-error,
	body.woocommerce-cart form.mdpt-cart-form td.actions .coupon input#coupon_code.has-error:focus,
	body.woocommerce-cart form.mdpt-cart-form td.actions .coupon input#coupon_code[aria-invalid="true"],
	body.woocommerce-cart form.mdpt-cart-form td.actions .coupon input#coupon_code[aria-invalid="true"]:focus {
		border-color: var(--cr-error);
		background: var(--cr-error-bg);
	}

	body.woocommerce-cart form.mdpt-cart-form td.actions .coupon input#coupon_code {
		flex: 1 1 0;
		width: auto !important;
		min-width: 0;
		height: 48px !important;
		margin: 0;
		padding: 0 12px;
		background: #fff;
		border: 1px solid var(--cr-border);
		border-radius: 0;
		box-shadow: none;
		font-size: 16px; /* 16px stops iOS zooming on focus */
		color: var(--cr-navy);
	}

	body.woocommerce-cart form.mdpt-cart-form td.actions .coupon input#coupon_code::placeholder {
		color: var(--cr-muted);
		opacity: 1;
	}

	body.woocommerce-cart form.mdpt-cart-form td.actions .coupon input#coupon_code:focus {
		border-color: var(--cr-link);
		outline: 0;
	}

	body.woocommerce-cart form.mdpt-cart-form td.actions .coupon button[name="apply_coupon"] {
		flex: 0 0 auto;
		height: 48px;
		margin: 0;
		padding: 0 20px;
		background: #fff;
		border: 1px solid var(--cr-navy);
		border-radius: 0;
		font-size: 14px;
		font-weight: 700;
		letter-spacing: 0.04em;
		color: var(--cr-navy);
	}

	body.woocommerce-cart form.mdpt-cart-form td.actions .coupon button[name="apply_coupon"]:hover {
		background: var(--cr-bg);
	}

	/* ---- Totals card ------------------------------------------------------ */

	body.woocommerce-cart .pricing-table-row.cart-row-right {
		display: block;
		margin: 16px 0 0;
	}

	/* parent cart.css: `.page-cart .total-cart-wrp { border-top:1px solid #081228; margin-bottom:40px }` */
	body.woocommerce-cart .cart-collaterals.total-cart-wrp {
		width: 100%;
		max-width: none;
		margin: 0;
		padding: 0;
		border-top: 0;
		float: none;
	}

	body.woocommerce-cart .cart_totals {
		width: 100%;
		margin: 0;
		padding: 0 16px;
		background: #fff;
		border: 1px solid var(--cr-border) !important;
		border-radius: 4px;
		float: none;
	}

	body.woocommerce-cart .cart_totals table.shop_table {
		display: block;
		width: 100%;
		margin: 0;
		border: 0;
		background: transparent;
	}

	body.woocommerce-cart .cart_totals table.shop_table tbody {
		display: block;
	}

	body.woocommerce-cart .cart_totals table.shop_table tr {
		display: flex;
		align-items: baseline;
		justify-content: space-between;
		gap: 12px;
		padding: 12px 0;
		background: transparent;
		border: 0;
	}

	body.woocommerce-cart .cart_totals table.shop_table tr + tr {
		border-top: 1px solid var(--cr-border);
	}

	body.woocommerce-cart .cart_totals table.shop_table th,
	body.woocommerce-cart .cart_totals table.shop_table td {
		display: block !important;
		width: auto;
		margin: 0;
		padding: 0;
		background: transparent;
		border: 0;
		font-size: 14px;
		font-weight: 400;
		line-height: 20px;
		color: var(--cr-navy);
	}

	body.woocommerce-cart .cart_totals table.shop_table th {
		flex: 0 1 auto;
		text-align: left;
		color: var(--cr-muted);
	}

	body.woocommerce-cart .cart_totals table.shop_table td {
		flex: 1 1 auto;
		text-align: right !important;
	}

	body.woocommerce-cart .cart_totals table.shop_table td::before {
		content: none !important;
		display: none !important;
	}

	body.woocommerce-cart .cart_totals table.shop_table th strong,
	body.woocommerce-cart .cart_totals table.shop_table td strong,
	body.woocommerce-cart .cart_totals .discount-value {
		font-size: inherit;
		font-weight: inherit;
	}

	body.woocommerce-cart .cart_totals .amount {
		margin: 0;
		padding: 0 !important;
		font-size: inherit !important;
	}

	body.woocommerce-cart .cart_totals tr.cart-subtotal:not(.order-total) td {
		font-size: 18px;
		font-weight: 700;
	}

	body.woocommerce-cart .cart_totals tr.order-total th {
		font-weight: 700;
		color: var(--cr-navy);
	}

	body.woocommerce-cart .cart_totals tr.order-total td {
		font-size: 20px;
		font-weight: 700;
		line-height: 28px;
	}

	body.woocommerce-cart .cart_totals tr.woocommerce-shipping-totals th {
		white-space: nowrap;
	}

	body.woocommerce-cart .cart_totals #shipping_method label {
		display: block;
		margin: 0;
		font-size: 14px;
		line-height: 20px;
		color: var(--cr-navy);
	}

	body.woocommerce-cart .cart_totals #shipping_method .shipping-notice {
		font-size: 13px;
		line-height: 18px;
		color: var(--cr-muted);
	}

	body.woocommerce-cart .cart_totals .woocommerce-remove-coupon {
		margin-left: 6px;
		font-size: 12px;
		color: var(--cr-link);
	}

	/* ---- Proceed to checkout --------------------------------------------- */

	body.woocommerce-cart .second-row-cart {
		margin: 0;
	}

	body.woocommerce-cart .second-row-cart > [class*="col-"] {
		width: 100%;
		padding: 0;
	}

	body.woocommerce-cart .second-row-cart .wc-proceed-to-checkout {
		display: flex !important;
		flex-direction: column !important;
		gap: 12px;
		margin: 16px 0 24px !important;
		padding: 0;
	}

	body.woocommerce-cart .second-row-cart .wc-proceed-to-checkout a.checkout-button,
	body.woocommerce-cart .second-row-cart .wc-proceed-to-checkout a.checkout-button:visited {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 100% !important;
		max-width: none;
		height: 52px;
		margin: 0 !important;
		padding: 0 16px;
		background: var(--cr-navy) !important;
		border: 0 !important;
		border-radius: 0;
		font-size: 15px;
		font-weight: 700;
		letter-spacing: 0.02em;
		text-decoration: none;
		text-transform: none;
		color: #fff !important;
	}

	body.woocommerce-cart .second-row-cart .wc-proceed-to-checkout a.checkout-button:hover {
		background: var(--cr-link) !important;
	}

	/* Not in the mobile wireframe. */
	body.woocommerce-cart .second-row-cart .wc-proceed-to-checkout a.wc-btn-secondary {
		display: none;
	}
}

@media (max-width: 359px) {
	body.woocommerce-cart {
		--cr-thumb: 84px;
	}

	body.woocommerce-cart form.mdpt-cart-form table.shop_table.cart tr.cart_item:not(.mdpt-cart-bundle-row) {
		column-gap: 12px;
		padding: 12px;
	}

	body.woocommerce-cart form.mdpt-cart-form tr.mdpt-cart-bundle-row > td > .cross-sell-bundels-wrap {
		padding-right: 16px;
		padding-left: 16px;
	}
}
