/**
 * ==========================================================
 * GM DESIGN SYSTEM
 * File: commerce-page.css
 * Description: Cart, Wishlist and Commerce Page Layout
 *
 * Depends:
 * tokens.css
 * spacing.css
 * typography.css
 * controls.css
 *
 * Version:
 * 1.0.0
 *
 * Last Update:
 * 17.08.2026
 * ==========================================================
 */


/* ==========================================================
   COMMERCE TOKENS
========================================================== */

.gm-page--commerce {

	--gm-commerce-ink: #1d2f41;
	--gm-commerce-muted: #727b83;
	--gm-commerce-line: #e5e0d9;
	--gm-commerce-soft: #f7f4ef;

	max-width: 1500px;

}


/* ==========================================================
   COMMERCE PAGE HEADER
========================================================== */

.gm-page__header {

	max-width: 700px;

	margin-bottom:
		clamp(
			36px,
			5vw,
			64px
		);

}

.gm-page__eyebrow {

	margin:
		0
		0
		10px;

	color: #bc6b2b;

	font-size: 12px;

	font-weight: 600;

	letter-spacing: .16em;

	text-transform: uppercase;

}

.gm-page__title {

	margin: 0;

	color: var(--gm-commerce-ink);

	font-size:
		clamp(
			36px,
			5vw,
			64px
		);

	font-weight: 500;

	letter-spacing: -.045em;

	line-height: 1.04;

}

.gm-page__intro {

	max-width: 620px;

	margin:
		18px
		0
		0;

	color: var(--gm-commerce-muted);

	font-size: 16px;

	line-height: 1.75;

}


/* ==========================================================
   COMMERCE REFINEMENT
========================================================== */

.gm-page--commerce .woocommerce-message,
.gm-page--commerce .woocommerce-info,
.gm-page--commerce .woocommerce-error,
.gm-page--commerce .button,
.gm-page--commerce button.button,
.gm-page--commerce a.button,
.gm-page--commerce
.wc-proceed-to-checkout
a.checkout-button {

	border-radius: 12px;

}

.gm-page--commerce
.product-thumbnail img {

	border-radius: 10px;

}

.gm-page--commerce
.cart_totals {

	border-radius: 18px;

}


/* ==========================================================
   PAYMENTS — HEADER
========================================================== */

.gm-page--commerce
.gm-payments {

	margin:
		6px
		0
		0;

	padding: 0;

	border: 0;

}

.gm-page--commerce
.gm-payments__header span {

	color: #bc6b2b;

	font-size: 10px;

	font-weight: 600;

	letter-spacing: .15em;

	text-transform: uppercase;

}

.gm-page--commerce
.gm-payments__header h3 {

	margin:
		5px
		0
		18px;

	font-size: 19px;

	font-weight: 500;

}

.gm-page--commerce
.gm-payments__empty,
.gm-page--commerce
.gm-payments__note {

	margin:
		16px
		0
		0;

	color: var(--gm-commerce-muted);

	font-size: 12px;

	line-height: 1.65;

}


/* ==========================================================
   PAYMENT OPTIONS
========================================================== */

.gm-page--commerce
.gm-payment-options,
.gm-page--commerce
.gm-payment-options--two {

	margin-top: 18px;

	border: 0;

}

.gm-page--commerce
.gm-payment-option {

	display: grid;

	grid-template-columns:
		minmax(0, 1fr)
		auto;

	gap:
		4px
		18px;

	align-items: center;

	margin-top: 10px;

	padding:
		15px
		16px;

	border:
		1px solid var(--gm-commerce-line);

	border-radius: 12px;

	background: #fff;

}

.gm-page--commerce
.gm-payment-option:first-child {

	margin-top: 0;

}

.gm-page--commerce
.gm-payment-option span,
.gm-page--commerce
.gm-payment-option small {

	display: block;

	color: var(--gm-commerce-muted);

	font-size: 12px;

	line-height: 1.5;

}

.gm-page--commerce
.gm-payment-option small {

	grid-column: 1 / -1;

}

.gm-page--commerce
.gm-payment-option strong {

	margin: 0;

	color: var(--gm-commerce-ink);

	font-size: 16px;

	font-weight: 600;

	text-align: right;

	white-space: nowrap;

}


/* ==========================================================
   WOOCOMMERCE BASE
========================================================== */

.gm-page--commerce
.woocommerce {

	color: var(--gm-commerce-ink);

}

.gm-page--commerce
.woocommerce-notices-wrapper:empty {

	display: none;

}


/* ==========================================================
   WOOCOMMERCE NOTICES
========================================================== */

.gm-page--commerce
.woocommerce-message,
.gm-page--commerce
.woocommerce-info,
.gm-page--commerce
.woocommerce-error {

	margin:
		0
		0
		28px;

	padding:
		17px
		20px;

	border:
		1px solid var(--gm-commerce-line);

	border-radius: 0;

	background: var(--gm-commerce-soft);

	box-shadow: none;

}


/* ==========================================================
   CART — DESKTOP LAYOUT
========================================================== */

.woocommerce-cart
.gm-page--commerce
.woocommerce-cart-form {

	float: left;

	width:
		calc(
			100% -
			444px
		);

	min-width: 760px;

}

.woocommerce-cart
.gm-page--commerce
.cart-collaterals {

	float: right;

	width: 400px;

	min-width: 400px;

}

.gm-page--commerce
.cart-collaterals::after,
.gm-page--commerce
.woocommerce::after {

	display: table;

	clear: both;

	content: "";

}


/* ==========================================================
   SHOP TABLE
========================================================== */

.gm-page--commerce
table.shop_table {

	width: 100%;

	margin: 0;

	border: 0;

	border-collapse: collapse;

	border-radius: 0;

	background: transparent;

}

.gm-page--commerce
table.shop_table th,
.gm-page--commerce
table.shop_table td {

	padding:
		22px
		14px;

	border-width:
		0
		0
		1px;

	border-color:
		var(--gm-commerce-line);

	background: transparent;

	text-align: left;

}

.gm-page--commerce
table.shop_table th {

	color: var(--gm-commerce-muted);

	font-size: 11px;

	font-weight: 600;

	letter-spacing: .12em;

	text-transform: uppercase;

}


/* ==========================================================
   CART TABLE COLUMNS
========================================================== */

.woocommerce-cart
.gm-page--commerce
.woocommerce-cart-form
table.shop_table {

	table-layout: auto;

}

.woocommerce-cart
.gm-page--commerce
.woocommerce-cart-form
table.shop_table th,
.woocommerce-cart
.gm-page--commerce
.woocommerce-cart-form
table.shop_table td {

	padding-inline: 10px;

}

.woocommerce-cart
.gm-page--commerce
.product-remove {

	width: 52px;

	min-width: 52px;

	padding-inline: 8px;

	text-align: center;

}

.woocommerce-cart
.gm-page--commerce
.product-thumbnail {

	width: 120px;

	min-width: 120px;

}

.woocommerce-cart
.gm-page--commerce
.product-thumbnail img {

	width: 120px;

	max-width: 120px;

}

.woocommerce-cart
.gm-page--commerce
.product-name {

	min-width: 280px;

	word-break: normal;

	overflow-wrap: break-word;

	white-space: normal;

}

.woocommerce-cart
.gm-page--commerce
.product-quantity {

	width: 140px;

	min-width: 140px;

	text-align: center;

	white-space: nowrap;

}

.woocommerce-cart
.gm-page--commerce
.product-subtotal {

	width: 130px;

	min-width: 130px;

	text-align: right;

	white-space: nowrap;

}


/* ==========================================================
   PRODUCT PRESENTATION
========================================================== */

.gm-page--commerce
.product-thumbnail img {

	width: 132px;

	max-width: 132px;

	aspect-ratio: 4 / 3;

	border-radius: 2px;

	object-fit: cover;

}

.gm-page--commerce
.product-name a {

	color: var(--gm-commerce-ink);

	font-size: 16px;

	font-weight: 500;

	line-height: 1.5;

	word-break: normal;

	overflow-wrap: break-word;

	white-space: normal;

}

.gm-page--commerce
.product-name dl.variation {

	margin:
		8px
		0
		0;

	color: var(--gm-commerce-muted);

	font-size: 13px;

}

.gm-page--commerce
.product-name dl.variation dt,
.gm-page--commerce
.product-name dl.variation dd,
.gm-page--commerce
.product-name dl.variation p {

	display: inline;

	float: none;

	margin:
		0
		4px
		0
		0;

}


/* ==========================================================
   CART ACTIONS
========================================================== */

.gm-page--commerce
table.shop_table
.actions {

	padding:
		26px
		0
		0;

	border: 0;

}

.woocommerce-cart
.gm-page--commerce
table.shop_table
.actions {

	padding:
		22px
		0
		0;

	text-align: right;

}

.woocommerce-cart
.gm-page--commerce
table.shop_table
.actions
.button {

	width: auto;

	min-width: 0;

}


/* ==========================================================
   COMMERCE BUTTON BASE
========================================================== */

.gm-page--commerce .button,
.gm-page--commerce button.button,
.gm-page--commerce a.button,
.gm-page--commerce
.wc-proceed-to-checkout
a.checkout-button {

	min-height: 50px;

	padding:
		15px
		24px;

	border:
		1px solid var(--gm-commerce-ink);

	border-radius: 12px;

	background: var(--gm-commerce-ink);

	box-shadow: none;

	color: #fff;

	font-size: 12px;

	font-weight: 500;

	letter-spacing: .1em;

	line-height: 1.4;

	text-transform: uppercase;

}

.gm-page--commerce .button:hover,
.gm-page--commerce button.button:hover,
.gm-page--commerce a.button:hover,
.gm-page--commerce
.wc-proceed-to-checkout
a.checkout-button:hover {

	border-color: #bc6b2b;

	background: #bc6b2b;

	color: #fff;

}


/* ==========================================================
   CART TOTALS
========================================================== */

.gm-page--commerce
.cart_totals {

	width: 100%;

	padding:
		clamp(
			22px,
			3vw,
			36px
		);

	border:
		1px solid var(--gm-commerce-line);

	background: #fff;

}

.woocommerce-cart
.gm-page--commerce
.cart-collaterals
.cart_totals {

	width: 100%;

}

.gm-page--commerce
.cart_totals > h2 {

	margin:
		0
		0
		22px;

	font-size: 22px;

	font-weight: 500;

}

.gm-page--commerce
.cart_totals
table.shop_table th,
.gm-page--commerce
.cart_totals
table.shop_table td {

	padding:
		16px
		0;

	font-size: 14px;

}

.gm-page--commerce
.cart_totals
table.shop_table td {

	text-align: right;

}


/* ==========================================================
   PAYMENT DETAILS
========================================================== */

.gm-page--commerce
.gm-payments {

	margin-top: 24px;

	padding-top: 24px;

	border-top:
		1px solid var(--gm-commerce-line);

}

.gm-page--commerce
.gm-payments h3 {

	margin:
		0
		0
		16px;

	font-size: 17px;

	font-weight: 500;

}

.gm-page--commerce
.gm-payments p {

	margin:
		10px
		0;

	color: var(--gm-commerce-muted);

	font-size: 13px;

	line-height: 1.65;

}

.gm-page--commerce
.gm-installments {

	width: 100%;

	margin:
		18px
		0;

	border-collapse: collapse;

}

.gm-page--commerce
.gm-installments th,
.gm-page--commerce
.gm-installments td {

	padding:
		9px
		0 !important;

	font-size:
		12px !important;

}


/*
 * Layout-only fallback.
 * commerce-ui.css is the final visual authority
 * for WhatsApp button presentation.
 */

.gm-page--commerce
.gm-whatsapp-order {

	display: flex;

	min-height: 48px;

	margin-top: 20px;

	align-items: center;

	justify-content: center;

}


/* ==========================================================
   TI WISHLIST — LAYOUT
========================================================== */

.gm-page--commerce
.tinv-wishlist {

	margin: 0;

	padding:
		clamp(
			24px,
			3vw,
			42px
		);

	border:
		1px solid var(--gm-commerce-line);

	border-radius: 18px;

	background: #fff;

}

.gm-page--commerce
.tinv-header,
.gm-page--commerce
.tinv-wishlist > h2 {

	display: none;

}

.gm-page--commerce
.tinv-wishlist table {

	width: 100%;

	border: 0;

	border-collapse: collapse;

	table-layout: auto;

}

.gm-page--commerce
.tinv-wishlist
table th,
.gm-page--commerce
.tinv-wishlist
table td {

	padding:
		20px
		12px;

	border-width:
		0
		0
		1px;

	border-color:
		var(--gm-commerce-line);

	background: #fff;

}

.gm-page--commerce
.tinv-wishlist
.product-cb {

	width: 44px;

	min-width: 44px;

}

.gm-page--commerce
.tinv-wishlist
.product-remove {

	width: 52px;

	min-width: 52px;

	text-align: center;

}

.gm-page--commerce
.tinv-wishlist
.product-thumbnail {

	width: 120px;

	min-width: 120px;

}

.gm-page--commerce
.tinv-wishlist
.product-thumbnail img {

	width: 120px;

	max-width: 120px;

}

.gm-page--commerce
.tinv-wishlist
.product-name {

	min-width: 360px;

	word-break: normal;

	overflow-wrap: break-word;

	white-space: normal;

}

.gm-page--commerce
.tinv-wishlist
.product-date {

	width: 150px;

	min-width: 150px;

	white-space: nowrap;

}

.gm-page--commerce
.tinv-wishlist
.product-action {

	width: 170px;

	min-width: 170px;

}

.gm-page--commerce
.tinv-wishlist
.product-action
.button {

	min-width: 170px;

	white-space: nowrap;

}

.gm-page--commerce
.tinv-wishlist
input[type="checkbox"] {

	width: 18px;

	height: 18px;

	accent-color:
		var(--gm-commerce-ink);

}

.gm-page--commerce
.tinv-wishlist
.product-remove a {

	display: inline-flex;

	width: 44px;
	height: 44px;

	align-items: center;

	justify-content: center;

	border-radius: 50%;

	color: var(--gm-commerce-ink);

}

.gm-page--commerce
.tinv-wishlist
.tinvwl-to-left,
.gm-page--commerce
.tinv-wishlist
.tinvwl-to-right {

	margin-top: 28px;

}

.gm-page--commerce
.tinv-wishlist
.social-buttons {

	margin-top: 30px;

	padding-top: 26px;

	border-top:
		1px solid var(--gm-commerce-line);

}


/* ==========================================================
   EMPTY STATES
========================================================== */

.gm-page--commerce
.cart-empty,
.gm-page--commerce
.tinvwl-wishlist-empty {

	margin:
		0
		0
		28px;

	padding: 44px;

	border:
		1px solid var(--gm-commerce-line);

	background: var(--gm-commerce-soft);

	color: var(--gm-commerce-muted);

	text-align: center;

}


/* ==========================================================
   TABLET / NARROW DESKTOP
========================================================== */

@media (min-width: 1181px) {

	.woocommerce-cart
	.gm-page--commerce
	.woocommerce-cart-form {

		width:
			calc(
				100% -
				472px
			);

		min-width: 0;

	}

	.woocommerce-cart
	.gm-page--commerce
	.cart-collaterals {

		width: 440px;

		min-width: 440px;

	}

	.woocommerce-cart
	.gm-page--commerce
	.woocommerce-cart-form
	table.shop_table th,
	.woocommerce-cart
	.gm-page--commerce
	.woocommerce-cart-form
	table.shop_table td {

		padding:
			var(--gm-space-lg)
			var(--gm-space-md);

		vertical-align: middle;

	}

	.woocommerce-cart
	.gm-page--commerce
	.product-thumbnail img {

		border-radius: var(--gm-radius-md);

	}

	.woocommerce-cart
	.gm-page--commerce
	.product-name dl.variation {

		font-size: var(--gm-font-size-sm);

		line-height: var(--gm-line-height-normal);

	}

	.woocommerce-cart
	.gm-page--commerce
	.product-price,
	.woocommerce-cart
	.gm-page--commerce
	.product-subtotal {

		font-size: var(--gm-font-size-md);

		font-weight: var(--gm-font-weight-medium);

	}

	.woocommerce-cart
	.gm-page--commerce
	.cart_totals {

		padding: var(--gm-card-padding);

		border-color: var(--gm-color-border);

		border-radius: var(--gm-card-radius);

		background: var(--gm-color-white);

		box-shadow: none;

	}

	.woocommerce-cart
	.gm-page--commerce
	.cart_totals > h2 {

		margin-bottom: var(--gm-space-lg);

		font-size: var(--gm-heading-md);

		line-height: var(--gm-line-height-tight);

	}

	.woocommerce-cart
	.gm-page--commerce
	.cart_totals
	table.shop_table th,
	.woocommerce-cart
	.gm-page--commerce
	.cart_totals
	table.shop_table td {

		padding:
			var(--gm-space-md)
			0;

		font-size: var(--gm-font-size-sm);

	}

	.woocommerce-cart
	.gm-page--commerce
	.cart_totals
	tr.order-total th,
	.woocommerce-cart
	.gm-page--commerce
	.cart_totals
	tr.order-total td {

		font-size: var(--gm-font-size-md);

		font-weight: var(--gm-font-weight-semibold);

	}

	.woocommerce-cart
	.gm-page--commerce
	.cart_totals
	.gm-payment-option span {

		font-size: var(--gm-font-size-sm);

	}

	.woocommerce-cart
	.gm-page--commerce
	.cart_totals
	.gm-payment-option small {

		font-size: var(--gm-font-size-xs);

	}

	.woocommerce-cart
	.gm-page--commerce
	.cart_totals
	.gm-payment-option strong {

		font-size: var(--gm-font-size-lg);

	}

	.woocommerce-cart
	.gm-page--commerce
	.wc-proceed-to-checkout {

		padding-top: var(--gm-space-lg);

	}

}

@media (max-width: 1180px) {

	.woocommerce-cart
	.gm-page--commerce
	.woocommerce-cart-form,
	.woocommerce-cart
	.gm-page--commerce
	.cart-collaterals {

		float: none;

		width: 100%;

		min-width: 0;

	}

	.woocommerce-cart
	.gm-page--commerce
	.cart-collaterals {

		margin-top: 44px;

	}

}


@media (min-width: 768px) and (max-width: 1023px) {

	.woocommerce-cart
	.gm-page--commerce
	.woocommerce-cart-form
	table.shop_table th,
	.woocommerce-cart
	.gm-page--commerce
	.woocommerce-cart-form
	table.shop_table td {

		padding:
			var(--gm-space-md)
			var(--gm-space-xs);

		vertical-align: middle;

	}

	.woocommerce-cart
	.gm-page--commerce
	.product-remove {

		width: 48px;

		min-width: 48px;

		padding-inline: var(--gm-space-2xs);

	}

	.woocommerce-cart
	.gm-page--commerce
	.product-thumbnail {

		width: 96px;

		min-width: 96px;

	}

	.woocommerce-cart
	.gm-page--commerce
	.product-thumbnail img {

		width: 96px;

		max-width: 96px;

		border-radius: var(--gm-radius-md);

	}

	.woocommerce-cart
	.gm-page--commerce
	.product-name {

		min-width: 180px;

	}

	.woocommerce-cart
	.gm-page--commerce
	.product-price {

		width: 104px;

		min-width: 104px;

		font-size: var(--gm-font-size-md);

		font-weight: var(--gm-font-weight-medium);

	}

	.woocommerce-cart
	.gm-page--commerce
	.product-quantity {

		width: 124px;

		min-width: 124px;

	}

	.woocommerce-cart
	.gm-page--commerce
	.product-subtotal {

		width: 112px;

		min-width: 112px;

		font-size: var(--gm-font-size-md);

		font-weight: var(--gm-font-weight-medium);

	}

	.woocommerce-cart
	.gm-page--commerce
	.product-name dl.variation {

		font-size: var(--gm-font-size-sm);

		line-height: var(--gm-line-height-normal);

	}

	.woocommerce-cart
	.gm-page--commerce
	.cart-collaterals {

		margin-top: var(--gm-space-xl);

	}

	.woocommerce-cart
	.gm-page--commerce
	.cart_totals {

		padding: var(--gm-card-padding);

		border-color: var(--gm-color-border);

		border-radius: var(--gm-card-radius);

		background: var(--gm-color-white);

		box-shadow: none;

	}

	.woocommerce-cart
	.gm-page--commerce
	.cart_totals > h2 {

		margin-bottom: var(--gm-space-lg);

		font-size: var(--gm-heading-md);

		line-height: var(--gm-line-height-tight);

	}

	.woocommerce-cart
	.gm-page--commerce
	.cart_totals
	table.shop_table th,
	.woocommerce-cart
	.gm-page--commerce
	.cart_totals
	table.shop_table td {

		padding:
			var(--gm-space-md)
			0;

		font-size: var(--gm-font-size-sm);

	}

	.woocommerce-cart
	.gm-page--commerce
	.cart_totals
	tr.order-total th,
	.woocommerce-cart
	.gm-page--commerce
	.cart_totals
	tr.order-total td {

		font-size: var(--gm-font-size-md);

		font-weight: var(--gm-font-weight-semibold);

	}

	.woocommerce-cart
	.gm-page--commerce
	.cart_totals
	.gm-payment-option span {

		font-size: var(--gm-font-size-sm);

	}

	.woocommerce-cart
	.gm-page--commerce
	.cart_totals
	.gm-payment-option small {

		font-size: var(--gm-font-size-xs);

	}

	.woocommerce-cart
	.gm-page--commerce
	.cart_totals
	.gm-payment-option strong {

		font-size: var(--gm-font-size-lg);

	}

	.woocommerce-cart
	.gm-page--commerce
	.wc-proceed-to-checkout {

		padding-top: var(--gm-space-lg);

	}

}


/* ==========================================================
   MOBILE
========================================================== */

@media (max-width: 767px) {

	.gm-page {

		width:
			min(
				calc(
					100% -
					28px
				),
				1760px
			);

		padding-block:
			34px
			60px;

	}

	.gm-page__header {

		margin-bottom: 30px;

	}

	.gm-page__title {

		font-size: 38px;

	}

	.gm-page__intro {

		font-size: 14px;

	}


	/* ======================================================
	   Payment Options
	====================================================== */

	.gm-page--commerce
	.gm-payment-options,
	.gm-page--commerce
	.gm-payment-options--two {

		margin-top: 14px;

	}

	.gm-page--commerce
	.gm-payment-option {

		grid-template-columns: 1fr;

		min-height: 44px;

	}

	.gm-page--commerce
	.gm-payment-option strong {

		text-align: left;

	}


	/* ======================================================
	   Cart / Wishlist Tables
	====================================================== */

	.woocommerce-cart
	.gm-page--commerce
	table.shop_table_responsive > thead,
	.gm-page--commerce
	.tinv-wishlist
	table thead {

		display: none;

	}

	.woocommerce-cart
	.gm-page--commerce
	table.shop_table_responsive >
	tbody >
	tr.woocommerce-cart-form__cart-item,
	.gm-page--commerce
	.tinv-wishlist
	table >
	tbody >
	tr.wishlist_item {

		position: relative;

		display: block;

		min-height: 116px;

		margin-bottom: 14px;

		padding:
			16px
			54px
			16px
			112px;

		border:
			1px solid var(--gm-commerce-line);

		border-radius: 14px;

		background: #fff;

	}

	.gm-page--commerce
	.tinv-wishlist {

		padding: 14px;

		border-radius: 14px;

	}

	.woocommerce-cart
	.gm-page--commerce
	table.shop_table_responsive >
	tbody >
	tr.woocommerce-cart-form__cart-item >
	td,
	.gm-page--commerce
	.tinv-wishlist
	table >
	tbody >
	tr.wishlist_item >
	td {

		display: block;

		padding:
			5px
			0;

		border: 0;

		text-align:
			left !important;

	}

	.woocommerce-cart
	.gm-page--commerce
	table.shop_table_responsive >
	tbody >
	tr.woocommerce-cart-form__cart-item >
	td.product-thumbnail,
	.gm-page--commerce
	.tinv-wishlist
	table >
	tbody >
	tr.wishlist_item >
	td.product-thumbnail {

		position: absolute;

		top: 16px;
		left: 16px;

		width: 80px;

		min-width: 80px;

		padding: 0;

	}

	.gm-page--commerce
	.product-thumbnail img,
	.gm-page--commerce
	.tinv-wishlist
	.product-thumbnail img {

		width: 80px;

		max-width: 80px;

	}

	.woocommerce-cart
	.gm-page--commerce
	table.shop_table_responsive >
	tbody >
	tr.woocommerce-cart-form__cart-item >
	td::before {

		display: none;

	}

	.woocommerce-cart
	.gm-page--commerce
	table.shop_table_responsive >
	tbody >
	tr.woocommerce-cart-form__cart-item >
	td.product-remove,
	.gm-page--commerce
	.tinv-wishlist
	table >
	tbody >
	tr.wishlist_item >
	td.product-remove {

		position: absolute;

		top: 10px;
		right: 10px;

		width: 44px;

		min-width: 44px;

		min-height: 44px;

		padding: 0;

	}

	.woocommerce-cart
	.gm-page--commerce
	table.shop_table_responsive >
	tbody >
	tr.woocommerce-cart-form__cart-item >
	td.product-name,
	.gm-page--commerce
	.tinv-wishlist
	table >
	tbody >
	tr.wishlist_item >
	td.product-name {

		min-width: auto;

		word-break: normal;

		overflow-wrap: break-word;

		white-space: normal;

	}

	.woocommerce-cart
	.gm-page--commerce
	table.shop_table_responsive >
	tbody >
	tr.woocommerce-cart-form__cart-item >
	td.product-quantity,
	.woocommerce-cart
	.gm-page--commerce
	table.shop_table_responsive >
	tbody >
	tr.woocommerce-cart-form__cart-item >
	td.product-subtotal,
	.gm-page--commerce
	.tinv-wishlist
	table >
	tbody >
	tr.wishlist_item >
	td.product-date,
	.gm-page--commerce
	.tinv-wishlist
	table >
	tbody >
	tr.wishlist_item >
	td.product-action {

		width: auto;

		min-width: auto;

		white-space: normal;

	}

	.woocommerce-cart
	.gm-page--commerce
	table.shop_table_responsive >
	tbody >
	tr.woocommerce-cart-form__cart-item >
	td.product-quantity,
	.woocommerce-cart
	.gm-page--commerce
	table.shop_table_responsive >
	tbody >
	tr.woocommerce-cart-form__cart-item >
	td.product-subtotal {

		display: inline-block;

		margin:
			8px
			14px
			0
			0;

		vertical-align: middle;

	}

	.woocommerce-cart
	.gm-page--commerce
	table.shop_table_responsive >
	tbody >
	tr.woocommerce-cart-form__cart-item >
	td.product-subtotal {

		font-weight: 600;

	}

	.woocommerce-cart
	.gm-page--commerce
	table.shop_table_responsive >
	tbody >
	tr.woocommerce-cart-form__cart-item >
	td.product-remove a,
	.gm-page--commerce
	.tinv-wishlist
	table >
	tbody >
	tr.wishlist_item >
	td.product-remove a {

		display: inline-flex;

		width: 44px;
		height: 44px;

		align-items: center;

		justify-content: center;

	}

	.woocommerce-cart
	.gm-page--commerce
	table.shop_table_responsive
	.actions {

		display: block;

		padding-top: 22px;

	}

	.woocommerce-cart
	.gm-page--commerce
	table.shop_table_responsive
	.actions
	.button,
	.gm-page--commerce
	.tinv-wishlist
	.product-action
	.button {

		width: 100%;

		min-width: 0;

		min-height: 44px;

	}

	.gm-page--commerce
	.cart_totals {

		padding:
			22px
			18px;

	}

	.gm-page--commerce
	.tinv-wishlist
	.product-cb {

		position: absolute;

		bottom: 16px;
		left: 16px;

		display: flex;

		width: 44px;

		min-width: 44px;

		min-height: 44px;

		padding: 0;

		align-items: center;

		justify-content: center;

	}

	.gm-page--commerce
	.tinv-wishlist
	.tinvwl-to-left,
	.gm-page--commerce
	.tinv-wishlist
	.tinvwl-to-right {

		margin-top: 16px;

	}

	.gm-page--commerce
	.tinv-wishlist
	.tinvwl-to-left
	.button,
	.gm-page--commerce
	.tinv-wishlist
	.tinvwl-to-right
	.button {

		width: 100%;

		min-height: 44px;

		margin:
			4px
			0;

	}

}
