/* MyTickets cart/checkout brand layer for standard WooCommerce shortcode pages. */

:root {
	--mt-cart-gold: #d8a54b;
	--mt-cart-gold-dark: #c4923b;
	--mt-cart-black: #161616;
	--mt-cart-white: #fff;
	--mt-cart-light: #f4f4f4;
	--mt-cart-pink: #f7c6d0;
	--mt-cart-peach: #ffd6a5;
	--mt-cart-line: #e6e6e6;
	--mt-cart-muted: #6b6b6b;
	--mt-cart-danger: #b00020;
	--mt-cart-shadow: 0 1px 2px rgba(0, 0, 0, .04), 0 8px 24px rgba(0, 0, 0, .06);
	--mt-cart-radius: 8px;
	--mt-cart-max: 1040px;
	--mt-cart-font: "Manrope", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

body.woocommerce-cart,
body.woocommerce-checkout,
body.woocommerce-order-received {
	background: var(--mt-cart-light);
	color: var(--mt-cart-black);
	font-family: var(--mt-cart-font);
	line-height: 1.5;
	-webkit-font-smoothing: antialiased;
}

body.woocommerce-cart::before {
	content: "";
	position: fixed;
	z-index: 0;
	top: 0;
	left: 0;
	width: 100%;
	height: 80px;
	pointer-events: none;
	background: var(--mt-cart-black);
}

body.woocommerce-checkout::before {
	content: "";
	position: fixed;
	z-index: 0;
	top: 0;
	left: 0;
	width: 100%;
	height: 80px;
	pointer-events: none;
	background: var(--mt-cart-black);
}

body.woocommerce-cart .woocommerce,
body.woocommerce-checkout .woocommerce,
body.woocommerce-order-received .woocommerce {
	font-family: var(--mt-cart-font);
}

body.woocommerce-cart .woocommerce a,
body.woocommerce-checkout .woocommerce a,
body.woocommerce-order-received .woocommerce a {
	color: inherit;
}

.breakdance .bde-code-block:has(.mt-cart-shell) {
	align-items: center;
}

.mt-cart-shell {
	max-width: var(--mt-cart-max);
	margin: 0 auto;
	padding: 24px 20px 64px;
}

.mt-cart-steps {
	display: flex;
	gap: 10px;
	align-items: center;
	margin: 0 0 28px;
	color: var(--mt-cart-muted);
	font-size: 13px;
}

.mt-cart-step {
	display: flex;
	align-items: center;
	gap: 8px;
	white-space: nowrap;
}

.mt-cart-step.is-active {
	color: var(--mt-cart-black);
	font-weight: 700;
}

.mt-cart-step__dot {
	display: grid;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	place-items: center;
	background: #e3e3e3;
	color: var(--mt-cart-muted);
	font-size: 12px;
	font-weight: 700;
	line-height: 1;
}

.mt-cart-step.is-active .mt-cart-step__dot {
	background: var(--mt-cart-gold);
	color: var(--mt-cart-black);
}

.mt-cart-step__line {
	flex: 1;
	min-width: 16px;
	height: 1px;
	background: var(--mt-cart-line);
}

.mt-cart-header {
	margin: 0 0 22px;
}

.mt-cart-header h1 {
	margin: 0 0 4px;
	color: var(--mt-cart-black);
	font-family: var(--mt-cart-font);
	font-size: clamp(26px, 4vw, 36px);
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.15;
}

body.woocommerce-cart .mt-cart-shell .mt-cart-header h1 {
	font-size: clamp(26px, 4vw, 36px) !important;
	font-weight: 800 !important;
	letter-spacing: 0 !important;
	line-height: 1.15 !important;
}

body.woocommerce-checkout .mt-checkout-shell .mt-cart-header h1 {
	font-size: clamp(26px, 4vw, 36px) !important;
	font-weight: 800 !important;
	letter-spacing: 0 !important;
	line-height: 1.15 !important;
}

.mt-cart-header p {
	margin: 0;
	color: var(--mt-cart-muted);
	font-size: 15px;
}

.mt-cart-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 360px;
	gap: 28px;
	align-items: start;
}

.mt-cart-layout .woocommerce-cart-form {
	min-width: 0;
}

.mt-cart-items,
.mt-cart-summary,
body.woocommerce-cart .cart-empty,
body.woocommerce-cart .return-to-shop {
	background: var(--mt-cart-white);
	border: 1px solid var(--mt-cart-line);
	border-radius: var(--mt-cart-radius);
	box-shadow: var(--mt-cart-shadow);
}

.mt-cart-items {
	padding: 22px;
}

.mt-cart-items .cart_item {
	display: grid;
	grid-template-columns: 64px minmax(0, 1fr) auto;
	gap: 16px;
	align-items: center;
	padding: 16px 0;
	border-bottom: 1px solid var(--mt-cart-line);
}

.mt-cart-items .cart_item:first-child {
	padding-top: 0;
}

.mt-cart-items .cart_item:last-of-type {
	border-bottom: 0;
}

.mt-cart-item__thumb,
.mt-cart-item__thumb a {
	display: grid;
	width: 64px;
	height: 64px;
	place-items: center;
}

.mt-cart-item__thumb img {
	width: 64px;
	height: 64px;
	border-radius: var(--mt-cart-radius);
	object-fit: cover;
	background: linear-gradient(135deg, var(--mt-cart-pink), var(--mt-cart-peach));
}

.mt-ticket-thumb {
	display: grid;
	width: 48px;
	height: 48px;
	border-radius: var(--mt-cart-radius);
	place-items: center;
	background: linear-gradient(135deg, var(--mt-cart-pink), var(--mt-cart-peach));
	font-size: 22px;
	line-height: 1;
}

.mt-cart-item__thumb .mt-ticket-thumb {
	width: 64px;
	height: 64px;
}

.mt-cart-item__main {
	min-width: 0;
}

.mt-cart-item__name {
	display: block;
	color: var(--mt-cart-black);
	font-size: 16px;
	font-weight: 600;
	line-height: 1.35;
	text-decoration: none;
	overflow-wrap: anywhere;
}

.mt-cart-item__name:hover {
	text-decoration: underline;
}

.mt-cart-item__meta {
	display: flex;
	flex-wrap: nowrap;
	gap: 4px 10px;
	margin: 3px 0 0;
	color: var(--mt-cart-muted);
	font-size: 13px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.mt-cart-item__meta span + span::before {
	content: "";
	display: inline-block;
	width: 4px;
	height: 4px;
	margin: 0 10px 2px 0;
	border-radius: 50%;
	background: var(--mt-cart-line);
}

.mt-cart-item__controls {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 9px;
}

.mt-cart-item__pricing {
	align-self: start;
	min-width: 0;
}

.mt-cart-item__pricing .product-price {
	color: var(--mt-cart-black);
	font-weight: 700;
	white-space: nowrap;
}

.mt-cart-item__pricing .product-subtotal {
	margin-top: 2px;
	color: var(--mt-cart-muted);
	font-size: 13px;
	font-weight: 400;
	line-height: 1.3;
	white-space: nowrap;
}

.mt-cart-qty-control,
.mt-cart-items .product-quantity .quantity {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 34px;
}

.mt-cart-qty-control {
	border: 1px solid var(--mt-cart-line);
	border-radius: 999px;
	background: var(--mt-cart-white);
	overflow: hidden;
}

.mt-cart-items .product-quantity .quantity {
	border: 0;
}

.mt-cart-items .product-quantity > button,
.mt-cart-items .product-quantity > .quantity + button,
.mt-cart-items .product-quantity button.plus,
.mt-cart-items .product-quantity button.minus {
	display: none !important;
}

.mt-cart-qty-button {
	display: grid;
	width: 34px;
	height: 34px;
	padding: 0;
	border: 0;
	place-items: center;
	background: var(--mt-cart-white);
	color: var(--mt-cart-black);
	font: inherit;
	font-size: 18px;
	font-weight: 700;
	line-height: 1;
	cursor: pointer;
}

.mt-cart-qty-button:hover:not(:disabled),
.mt-cart-qty-button:focus-visible:not(:disabled) {
	background: var(--mt-cart-light);
}

.mt-cart-qty-button:disabled {
	color: #c6c6c6;
	cursor: not-allowed;
}

.mt-cart-items .product-quantity input.qty {
	width: 38px;
	min-height: 34px;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--mt-cart-black);
	font: inherit;
	font-weight: 700;
	text-align: center;
	-moz-appearance: textfield;
}

.mt-cart-items .product-quantity input.qty::-webkit-outer-spin-button,
.mt-cart-items .product-quantity input.qty::-webkit-inner-spin-button {
	margin: 0;
	-webkit-appearance: none;
}

.mt-cart-items .product-remove a.remove {
	display: inline-flex;
	min-height: 28px;
	align-items: center;
	padding: 0 2px;
	border: 0;
	background: transparent;
	color: var(--mt-cart-muted) !important;
	font-size: 12px;
	font-weight: 400;
	line-height: 1.3;
	text-decoration: underline;
	text-decoration-color: currentColor;
	text-decoration-thickness: 1px;
	text-underline-offset: 2px;
}

.mt-cart-items .product-remove a.remove:hover,
.mt-cart-items .product-remove a.remove:focus {
	background: transparent;
	color: var(--mt-cart-danger) !important;
	text-decoration-color: currentColor;
}

body.woocommerce-cart .mt-cart-items .product-remove a.remove {
	color: var(--mt-cart-muted) !important;
	opacity: 1 !important;
	font-size: 12px;
	text-decoration: underline;
}

body.woocommerce-cart .mt-cart-summary a.woocommerce-remove-coupon {
	color: var(--mt-cart-muted) !important;
	opacity: 1 !important;
	font-size: 12px;
	font-weight: 400;
	text-decoration: underline;
	text-decoration-color: currentColor;
	text-decoration-thickness: 1px;
	text-underline-offset: 2px;
}

body.woocommerce-cart .mt-cart-summary a.woocommerce-remove-coupon:hover,
body.woocommerce-cart .mt-cart-summary a.woocommerce-remove-coupon:focus {
	color: var(--mt-cart-danger) !important;
	text-decoration-color: currentColor;
}

.mt-cart-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	align-items: end;
	padding-top: 16px;
	border-top: 1px solid var(--mt-cart-line);
}

.mt-cart-actions .coupon {
	display: flex;
	flex: 1 1 320px;
	gap: 10px;
	align-items: center;
}

.mt-cart-actions .coupon .input-text {
	min-height: 42px;
	min-width: 0;
	flex: 1;
	padding: 0 14px;
	border: 1.5px solid var(--mt-cart-line);
	border-radius: var(--mt-cart-radius);
	background: var(--mt-cart-white);
	color: var(--mt-cart-black);
	font: inherit;
}

.mt-cart-actions .coupon .input-text::placeholder {
	color: #9a9a9a;
}

.mt-cart-actions .coupon .input-text:focus {
	border-color: var(--mt-cart-gold);
	outline: 0;
	box-shadow: 0 0 0 3px rgba(216, 165, 75, .2);
}

.mt-cart-actions .mt-cart-coupon-button {
	min-height: 42px;
	padding: 0 4px;
	border-radius: 0;
	background: transparent;
	color: var(--mt-cart-black) !important;
	font-size: 13px;
	text-decoration: underline;
	text-decoration-color: var(--mt-cart-gold);
	text-decoration-thickness: 2px;
	text-underline-offset: 4px;
}

.mt-cart-actions .mt-cart-coupon-button:hover,
.mt-cart-actions .mt-cart-coupon-button:focus {
	background: transparent;
	color: var(--mt-cart-gold-dark) !important;
	text-decoration-color: currentColor;
}

.mt-cart-actions .button:not(.mt-cart-coupon-button),
body.woocommerce-cart .button,
body.woocommerce-cart a.button,
.mt-cart-summary .wc-proceed-to-checkout a.checkout-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 0 22px;
	border: 0;
	border-radius: 999px;
	background: var(--mt-cart-gold);
	color: var(--mt-cart-black) !important;
	font-family: var(--mt-cart-font);
	font-size: 15px;
	font-weight: 600;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	transition: background .15s ease, transform .05s ease;
}

.mt-cart-actions .button:not(.mt-cart-coupon-button):hover,
body.woocommerce-cart .button:hover,
body.woocommerce-cart a.button:hover,
.mt-cart-summary .wc-proceed-to-checkout a.checkout-button:hover {
	background: var(--mt-cart-gold-dark);
	color: var(--mt-cart-black) !important;
	text-decoration: none;
}

.mt-cart-actions .button:not(.mt-cart-coupon-button):active,
body.woocommerce-cart .button:active,
body.woocommerce-cart a.button:active,
.mt-cart-summary .wc-proceed-to-checkout a.checkout-button:active {
	transform: translateY(1px);
}

.mt-cart-actions .button[disabled],
body.woocommerce-cart .button[disabled] {
	background: #e7d8bd;
	color: #7d7669 !important;
	cursor: not-allowed;
	opacity: 1;
}

.mt-cart-actions .mt-cart-coupon-button,
body.woocommerce-cart .mt-cart-actions .mt-cart-coupon-button {
	min-height: 42px;
	padding: 0 4px;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: var(--mt-cart-black) !important;
	font-size: 13px;
	text-decoration: underline;
	text-decoration-color: var(--mt-cart-gold);
	text-decoration-thickness: 2px;
	text-underline-offset: 4px;
}

.mt-cart-actions .mt-cart-coupon-button:hover,
.mt-cart-actions .mt-cart-coupon-button:focus,
body.woocommerce-cart .mt-cart-actions .mt-cart-coupon-button:hover,
body.woocommerce-cart .mt-cart-actions .mt-cart-coupon-button:focus {
	background: transparent;
	color: var(--mt-cart-gold-dark) !important;
	text-decoration-color: currentColor;
}

body.woocommerce-cart.mt-cart-auto-update-enabled .mt-cart-actions .mt-cart-update--fallback {
	display: none;
}

.mt-cart-back-link {
	display: inline-block;
	margin-top: 14px;
	color: var(--mt-cart-muted);
	font-size: 13px;
	font-weight: 400;
	text-decoration: underline;
	text-decoration-color: currentColor;
	text-decoration-thickness: 1px;
	text-underline-offset: 2px;
}

body.woocommerce-cart .mt-cart-shell .mt-cart-back-link {
	color: var(--mt-cart-muted) !important;
	font-weight: 400 !important;
}

.cart-collaterals {
	position: sticky;
	top: 98px;
	min-width: 0;
}

.mt-cart-summary {
	position: sticky;
	top: 98px;
	float: none;
	width: auto;
	padding: 22px;
}

.mt-cart-summary h2 {
	margin: 0 0 14px;
	color: var(--mt-cart-black);
	font-family: var(--mt-cart-font);
	font-size: 20px;
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1.25;
}

body.woocommerce-cart .mt-cart-shell .mt-cart-summary h2 {
	font-size: 20px !important;
	font-weight: 600 !important;
	letter-spacing: 0 !important;
	line-height: 1.25 !important;
}

.mt-cart-summary table.shop_table,
.mt-cart-summary table.shop_table tbody,
.mt-cart-summary table.shop_table tr,
.mt-cart-summary table.shop_table th,
.mt-cart-summary table.shop_table td {
	display: block;
	width: 100%;
	margin: 0;
	padding: 0;
	border: 0 !important;
	background: transparent;
}

.mt-cart-summary table.shop_table tr {
	display: flex;
	justify-content: space-between;
	gap: 16px;
	padding: 8px 0;
	border: 0 !important;
	color: var(--mt-cart-muted);
	font-size: 14px;
}

.mt-cart-summary table.shop_table th {
	border: 0 !important;
	color: inherit;
	font-weight: 500;
	text-align: left;
}

.mt-cart-summary table.shop_table td {
	border: 0 !important;
	color: inherit;
	font-weight: 700;
	text-align: right;
}

.mt-cart-summary table.shop_table .order-total {
	margin-top: 8px;
	padding-top: 14px;
	border-top: 1px solid var(--mt-cart-line) !important;
	color: var(--mt-cart-black);
}

.mt-cart-summary table.shop_table .order-total th,
.mt-cart-summary table.shop_table .order-total td {
	font-size: 20px;
	font-weight: 800;
}

.mt-cart-summary .wc-proceed-to-checkout {
	padding: 0;
}

.mt-cart-summary .wc-proceed-to-checkout a.checkout-button {
	width: 100%;
	margin: 14px 0 0;
}

.mt-cart-secure-note {
	margin: 10px 0 0;
	color: var(--mt-cart-muted);
	font-size: 12px;
	text-align: center;
}

body.woocommerce-cart .woocommerce-notices-wrapper {
	max-width: var(--mt-cart-max);
	margin: 0 auto 16px;
}

body.woocommerce-cart .woocommerce-message,
body.woocommerce-cart .woocommerce-info,
body.woocommerce-cart .woocommerce-error {
	border-top-color: var(--mt-cart-gold);
	background: var(--mt-cart-white);
	color: var(--mt-cart-black);
	font-family: var(--mt-cart-font);
}

body.woocommerce-cart .cart-empty {
	max-width: 720px;
	margin: 36px auto 0;
	padding: 38px 24px;
	border-top: 1px solid var(--mt-cart-line);
	color: var(--mt-cart-black);
	font-size: 17px;
	font-weight: 700;
	text-align: center;
}

body.woocommerce-cart .return-to-shop {
	max-width: 720px;
	margin: 16px auto 64px;
	border-top: 0;
	box-shadow: none;
	text-align: center;
}

body.woocommerce-cart .return-to-shop a.button {
	width: min(100%, 280px);
}

.mt-cart-shell :where(a, button, input, select, textarea):focus-visible,
body.woocommerce-cart :where(a, button, input, select, textarea):focus-visible,
body.woocommerce-checkout :where(a, button, input, select, textarea, summary):focus-visible {
	outline: 3px solid rgba(216, 165, 75, .45);
	outline-offset: 3px;
}

.mt-checkout-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 360px;
	gap: 28px;
	align-items: start;
}

.mt-checkout-main {
	float: none;
	width: auto;
	min-width: 0;
	margin: 0;
}

/*
 * Breakdance WooCommerce subplugin (css/breakdance-woocommerce.css, partials
 * _checkout.scss / _a-root.scss) ships rules scoped under
 * `.breakdance-woocommerce .woocommerce-checkout .col2-set` (specificity 0,3,0)
 * that force this column to display:flex / width:60%, overriding the MT
 * checkout grid layout above. Re-assert the intended layout with matching
 * specificity so the code-based checkout wins regardless of the Breakdance
 * Woo base stylesheet load order.
 */
body.woocommerce-checkout .col2-set.mt-checkout-main {
	display: block;
	width: auto;
	gap: normal;
}

/*
 * Same Breakdance Woo base stylesheet (_a-root.scss) draws a 1px ring on the
 * review-order table via `box-shadow: inset ... border-width` scoped under
 * `.breakdance-woocommerce ... .woocommerce-checkout-review-order-table tbody`
 * (specificity 0,2,1). Match it on the two classes the table actually carries
 * (0,2,2) and drop the border.
 */
body.woocommerce-checkout .shop_table.woocommerce-checkout-review-order-table tbody {
	box-shadow: none;
}

.mt-checkout-card {
	background: var(--mt-cart-white);
	border: 1px solid var(--mt-cart-line);
	border-radius: var(--mt-cart-radius);
	box-shadow: var(--mt-cart-shadow);
	padding: 22px;
}

.mt-checkout-card + .mt-checkout-card,
.mt-checkout-main > .mt-checkout-card + .mt-checkout-card {
	margin-top: 18px;
}

.mt-checkout-card__title {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0 0 14px;
	color: var(--mt-cart-black);
	font-family: var(--mt-cart-font);
	font-size: 18px;
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1.25;
}

body.woocommerce-checkout .mt-checkout-card .mt-checkout-card__title {
	color: var(--mt-cart-black) !important;
	font-family: var(--mt-cart-font) !important;
	font-size: 18px !important;
	font-weight: 600 !important;
	letter-spacing: 0 !important;
	line-height: 1.25 !important;
}

.mt-checkout-card__num {
	display: grid;
	width: 26px;
	height: 26px;
	border-radius: 50%;
	place-items: center;
	flex: 0 0 26px;
	background: var(--mt-cart-black);
	color: var(--mt-cart-white);
	font-size: 13px;
	font-weight: 700;
	line-height: 1;
}

body.woocommerce-checkout .mt-checkout-card .mt-checkout-card__num {
	color: var(--mt-cart-white) !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	line-height: 1 !important;
}

.mt-checkout-field-row {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 16px;
	margin: 0;
	padding: 0;
}

body.woocommerce-checkout .woocommerce .mt-checkout-field-row::before,
body.woocommerce-checkout .woocommerce .mt-checkout-field-row::after {
	display: none;
}

body.woocommerce-checkout .woocommerce .mt-checkout-field-row .form-row,
body.woocommerce-checkout .woocommerce .mt-checkout-card .form-row {
	float: none;
	width: 100%;
	margin: 0 0 16px;
	padding: 0;
}

body.woocommerce-checkout .woocommerce .mt-checkout-card label {
	display: block;
	margin: 0 0 6px;
	color: var(--mt-cart-black);
	font-size: 14px;
	font-weight: 600;
	line-height: 1.35;
}

body.woocommerce-checkout .woocommerce .mt-checkout-card abbr.required {
	color: var(--mt-cart-gold-dark);
	text-decoration: none;
}

body.woocommerce-checkout .woocommerce .mt-checkout-card input.input-text,
body.woocommerce-checkout .woocommerce .mt-checkout-card textarea,
body.woocommerce-checkout .woocommerce .mt-checkout-card select {
	width: 100%;
	min-height: 48px;
	padding: 12px 14px;
	border: 1.5px solid var(--mt-cart-line);
	border-radius: 10px;
	background: var(--mt-cart-white);
	color: var(--mt-cart-black);
	font: inherit;
	transition: border-color .15s ease, box-shadow .15s ease;
}

body.woocommerce-checkout .woocommerce .mt-checkout-details-card input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]) {
	width: 100%;
	min-height: 48px;
	padding: 12px 14px;
	border: 1.5px solid var(--mt-cart-line);
	border-radius: 10px;
	background: var(--mt-cart-white);
	color: var(--mt-cart-black);
	font: inherit;
}

body.woocommerce-checkout .woocommerce .mt-checkout-details-card #birth_date_field .optional {
	display: none;
}

body.woocommerce-checkout .woocommerce .mt-checkout-card textarea {
	min-height: 84px;
	resize: vertical;
}

body.woocommerce-checkout .woocommerce .mt-checkout-card input.input-text:focus,
body.woocommerce-checkout .woocommerce .mt-checkout-details-card input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):focus,
body.woocommerce-checkout .woocommerce .mt-checkout-card textarea:focus,
body.woocommerce-checkout .woocommerce .mt-checkout-card select:focus {
	border-color: var(--mt-cart-gold);
	outline: 0;
	box-shadow: 0 0 0 3px rgba(216, 165, 75, .2);
}

.mt-checkout-optional {
	margin-top: 4px;
	padding: 4px 16px 0;
	border: 1px dashed var(--mt-cart-line);
	border-radius: 10px;
}

.mt-checkout-optional > summary {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 12px 0;
	color: var(--mt-cart-muted);
	font-size: 14px;
	font-weight: 700;
	cursor: pointer;
	list-style: none;
}

.mt-checkout-optional > summary::-webkit-details-marker,
.mt-checkout-order-summary > summary::-webkit-details-marker {
	display: none;
}

.mt-checkout-optional__chev {
	transition: transform .2s ease;
}

.mt-checkout-optional[open] > summary .mt-checkout-optional__chev {
	transform: rotate(90deg);
}

.mt-checkout-optional__body {
	padding-bottom: 12px;
}

.mt-checkout-consents {
	display: grid;
	gap: 10px;
}

body.woocommerce-checkout .woocommerce .mt-checkout-consents .form-row {
	margin-bottom: 0;
}

body.woocommerce-checkout .woocommerce .mt-checkout-consents label,
body.woocommerce-checkout .woocommerce .mt-checkout-consents .woocommerce-form__label {
	display: flex;
	gap: 12px;
	align-items: flex-start;
	margin: 0;
	color: var(--mt-cart-black);
	font-size: 14px;
	font-weight: 400;
}

body.woocommerce-checkout .woocommerce .mt-checkout-consents input[type="checkbox"] {
	width: 18px;
	height: 18px;
	margin: 3px 0 0;
	flex: 0 0 18px;
	accent-color: var(--mt-cart-gold);
}

body.woocommerce-checkout .woocommerce .mt-checkout-consents a {
	color: var(--mt-cart-gold-dark);
	font-weight: 600;
}

body.woocommerce-checkout .woocommerce .woocommerce-terms-and-conditions-wrapper {
	margin: 0;
}

body.woocommerce-checkout .woocommerce .woocommerce-terms-and-conditions-wrapper p {
	margin: 0;
	color: var(--mt-cart-muted);
	font-size: 13px;
}

body.woocommerce-checkout .woocommerce #payment {
	border: 0;
	border-radius: 0;
	background: transparent;
}

body.woocommerce-checkout .woocommerce #payment ul.payment_methods {
	display: flex;
	flex-direction: column;
	gap: 10px;
	margin: 0;
	padding: 0;
	border: 0;
}

body.woocommerce-checkout .woocommerce #payment ul.payment_methods li {
	list-style: none;
	margin: 0;
	padding: 14px 16px;
	border: 1.5px solid var(--mt-cart-line);
	border-radius: 10px;
	background: var(--mt-cart-white);
	transition: border-color .15s ease, background .15s ease;
}

body.woocommerce-checkout .woocommerce #payment ul.payment_methods li:hover,
body.woocommerce-checkout .woocommerce #payment ul.payment_methods li:has(> input.input-radio:checked) {
	border-color: var(--mt-cart-gold);
}

body.woocommerce-checkout .woocommerce #payment ul.payment_methods li:has(> input.input-radio:checked) {
	background: none;
}

body.woocommerce-checkout .woocommerce #payment ul.payment_methods li > input.input-radio {
	width: 18px;
	height: 18px;
	margin: 2px 12px 0 0;
	accent-color: var(--mt-cart-gold);
	vertical-align: top;
}

body.woocommerce-checkout .woocommerce #payment ul.payment_methods li > label {
	display: inline-flex;
	max-width: calc(100% - 36px);
	align-items: center;
	gap: 8px;
	margin: 0;
	font-size: 15px;
	font-weight: 600;
	vertical-align: top;
}

body.woocommerce-checkout .woocommerce #payment ul.payment_methods li img {
	max-height: 20px;
	margin: 0 0 0 6px;
	vertical-align: middle;
}

body.woocommerce-checkout .woocommerce #payment div.payment_box {
	margin: 14px 0 0;
	padding: 0;
	background: transparent;
	color: var(--mt-cart-muted);
	font-size: 14px;
}

body.woocommerce-checkout .woocommerce #payment div.payment_box::before {
	display: none;
}

body.woocommerce-checkout .woocommerce #payment fieldset {
	margin-top: 20px;
	border: none;
}

body.woocommerce-checkout .woocommerce .mt-checkout-payment-card #wc-stripe-express-checkout-element {
	margin: 0 0 14px !important;
	clear: both;
}

body.woocommerce-checkout .woocommerce .mt-checkout-payment-card #wc-stripe-express-checkout-button-separator {
	margin: 0 0 14px !important;
	color: var(--mt-cart-muted);
	font-size: 12px;
	text-align: center;
}

ul.woocommerce-SavedPaymentMethods.wc-saved-payment-methods {
	padding-left: 0;
}

body.woocommerce-checkout .woocommerce .mt-checkout-payment-card .woocommerce-SavedPaymentMethods-saveNew {
	margin: 12px 0 0;
	color: var(--mt-cart-muted);
	font-size: 13px;
	line-height: 1.35;
}

body.woocommerce-checkout .woocommerce .mt-checkout-payment-card .woocommerce-SavedPaymentMethods-saveNew label {
	display: inline;
	margin: 0;
	color: inherit;
	font-size: inherit;
	font-weight: 400;
}

body.woocommerce-checkout .woocommerce .mt-checkout-payment-card .woocommerce-SavedPaymentMethods-saveNew input[type="checkbox"] {
	width: 16px;
	height: 16px;
	margin: 0 8px 0 0;
	accent-color: var(--mt-cart-gold);
	vertical-align: -3px;
}

body.woocommerce-checkout .woocommerce #payment .place-order {
	margin: 14px 0 0;
	padding: 0;
}

body.woocommerce-checkout .woocommerce #payment #place_order {
	display: inline-flex;
	width: 100%;
	min-height: 52px;
	align-items: center;
	justify-content: center;
	padding: 0 22px;
	border: 0;
	border-radius: 999px;
	background: var(--mt-cart-gold);
	color: var(--mt-cart-black) !important;
	font-family: var(--mt-cart-font);
	font-size: 15px;
	font-weight: 600;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	transition: background .15s ease, transform .05s ease;
}

body.woocommerce-checkout .woocommerce #payment #place_order:hover {
	background: var(--mt-cart-gold-dark);
	color: var(--mt-cart-black) !important;
}

body.woocommerce-checkout .woocommerce #payment #place_order:active {
	transform: translateY(1px);
}

body.woocommerce-checkout .woocommerce #payment #place_order:disabled,
body.woocommerce-checkout .woocommerce #payment #place_order.disabled {
	background: #e7d8bd;
	color: #7d7669 !important;
	cursor: not-allowed;
	opacity: 1;
}

.mt-checkout-secure-note {
	margin: 10px 0 0;
	color: var(--mt-cart-muted);
	font-size: 12px;
	text-align: center;
}

.mt-checkout-order-summary {
	position: sticky;
	top: 98px;
	min-width: 0;
}

.mt-checkout-order-summary > summary {
	display: none;
}

.mt-checkout-order-summary:not([open]) > :not(summary) {
	display: block;
}

.mt-checkout-summary-card {
	padding: 22px;
}

.mt-checkout-summary-card .mt-checkout-card__title {
	font-size: 20px;
	font-weight: 600;
}

body.woocommerce-checkout .mt-checkout-summary-card .mt-checkout-card__title {
	font-size: 20px !important;
	font-weight: 600 !important;
}

body.woocommerce-checkout .woocommerce .woocommerce-checkout-review-order-table,
body.woocommerce-checkout .woocommerce .woocommerce-checkout-review-order-table tbody,
body.woocommerce-checkout .woocommerce .woocommerce-checkout-review-order-table tfoot,
body.woocommerce-checkout .woocommerce .woocommerce-checkout-review-order-table tr,
body.woocommerce-checkout .woocommerce .woocommerce-checkout-review-order-table th,
body.woocommerce-checkout .woocommerce .woocommerce-checkout-review-order-table td {
	display: block;
	width: 100%;
	margin: 0;
	padding: 0;
	border: 0 !important;
	background: transparent;
}

body.woocommerce-checkout .woocommerce .woocommerce-checkout-review-order-table thead {
	display: none;
}

body.woocommerce-checkout .woocommerce .woocommerce-checkout-review-order-table tr {
	display: flex;
	justify-content: space-between;
	gap: 14px;
	padding: 8px 0;
	color: var(--mt-cart-muted);
	font-size: 14px;
}

body.woocommerce-checkout .woocommerce .woocommerce-checkout-review-order-table tbody tr {
	border-bottom: 1px solid var(--mt-cart-line) !important;
	color: var(--mt-cart-black);
}

body.woocommerce-checkout .woocommerce .woocommerce-checkout-review-order-table tbody tr:last-child {
	border-bottom: 0 !important;
}

body.woocommerce-checkout .woocommerce .woocommerce-checkout-review-order-table .product-name {
	display: grid;
	grid-template-columns: 40px minmax(0, 1fr);
	flex: 1 1 auto;
	gap: 10px;
	align-items: center;
	min-width: 0;
	color: var(--mt-cart-black);
	font-weight: 600;
	text-align: left;
}

body.woocommerce-checkout .woocommerce .woocommerce-checkout-review-order-table .mt-checkout-review-item__thumb {
	display: grid;
	width: 40px;
	height: 40px;
	place-items: center;
}

body.woocommerce-checkout .woocommerce .woocommerce-checkout-review-order-table .mt-checkout-review-item__thumb .mt-ticket-thumb {
	width: 40px;
	height: 40px;
	font-size: 18px;
}

body.woocommerce-checkout .woocommerce .woocommerce-checkout-review-order-table .mt-checkout-review-item__content {
	min-width: 0;
}

body.woocommerce-checkout .woocommerce .woocommerce-checkout-review-order-table .mt-checkout-review-item__name {
	display: block;
	font-weight: 600;
	line-height: 1.35;
	overflow-wrap: anywhere;
}

body.woocommerce-checkout .woocommerce .woocommerce-checkout-review-order-table .mt-checkout-review-item__meta,
body.woocommerce-checkout .woocommerce .woocommerce-checkout-review-order-table .product-name .product-quantity,
body.woocommerce-checkout .woocommerce .woocommerce-checkout-review-order-table .product-name dl.variation {
	display: block;
	margin: 2px 0 0;
	color: var(--mt-cart-muted);
	font-size: 12px;
	font-weight: 400;
}

body.woocommerce-checkout .woocommerce .woocommerce-checkout-review-order-table .product-total,
body.woocommerce-checkout .woocommerce .woocommerce-checkout-review-order-table td {
	flex: 0 1 auto;
	width: auto;
	color: inherit;
	font-weight: 700;
	text-align: right;
	white-space: normal;
}

body.woocommerce-checkout .woocommerce .woocommerce-checkout-review-order-table tfoot tr {
	color: var(--mt-cart-muted);
}

body.woocommerce-checkout .woocommerce .woocommerce-checkout-review-order-table tfoot th {
	flex: 1 1 auto;
	min-width: 0;
	width: auto;
	color: inherit;
	font-weight: 500;
	text-align: left;
}

body.woocommerce-checkout .woocommerce .woocommerce-checkout-review-order-table .order-total {
	margin-top: 8px;
	padding-top: 14px;
	border-top: 1px solid var(--mt-cart-line) !important;
	color: var(--mt-cart-black);
}

body.woocommerce-checkout .woocommerce .woocommerce-checkout-review-order-table .order-total th,
body.woocommerce-checkout .woocommerce .woocommerce-checkout-review-order-table .order-total td {
	font-size: 20px;
	font-weight: 600;
}

body.woocommerce-checkout .woocommerce-notices-wrapper {
	max-width: var(--mt-cart-max);
	margin: 0 auto 16px;
}

body.woocommerce-checkout .woocommerce-message,
body.woocommerce-checkout .woocommerce-info,
body.woocommerce-checkout .woocommerce-error {
	border-top-color: var(--mt-cart-gold);
	background: var(--mt-cart-white);
	color: var(--mt-cart-black);
	font-family: var(--mt-cart-font);
}

body.woocommerce-checkout .woocommerce-form-coupon-toggle {
	width: 100%;
	max-width: var(--mt-cart-max);
	margin: 0 auto 0;
	padding: 0 20px;
}

body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info {
	display: flex;
	min-height: 72px;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	margin: 0;
	padding: 18px 24px 18px 48px;
	border: 1px solid var(--mt-cart-line);
	border-top: 1px solid var(--mt-cart-line);
	background: #fffaf3;
	box-shadow: none;
	font-size: 15px;
	line-height: 1.4;
}

body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info::before {
	top: 50%;
	left: 24px;
	color: var(--mt-cart-gold);
	transform: translateY(-50%);
}

body.woocommerce-checkout .woocommerce-form-coupon-toggle .showcoupon {
	display: flex;
	align-items: center;
	margin-left: auto;
	color: var(--mt-cart-black);
	font-weight: 400;
	text-align: right;
	text-decoration: underline;
	text-underline-offset: 2px;
	white-space: nowrap;
}

body.woocommerce-checkout .woocommerce-form-coupon-toggle .showcoupon::after {
	content: " \2192";
}

body.woocommerce-checkout form.checkout_coupon {
	width: 100%;
	max-width: calc(var(--mt-cart-max) - 40px);
	margin: 0 auto 18px;
	padding: 24px;
	border: 1px solid var(--mt-cart-line);
	border-top: 0;
	background: var(--mt-cart-white);
	box-shadow: none;
}

body.woocommerce-checkout form.checkout_coupon p {
	margin: 0;
}

body.woocommerce-checkout form.checkout_coupon .form-row-first,
body.woocommerce-checkout form.checkout_coupon .form-row-last {
	float: none;
	width: 100%;
	padding: 0;
}

body.woocommerce-checkout form.checkout_coupon .form-row-first {
	margin: 0 0 8px;
}

body.woocommerce-checkout form.checkout_coupon #coupon_code {
	width: 100%;
	min-height: 44px;
	padding: 10px 14px;
	border: 1px solid var(--mt-cart-gold);
	border-radius: 4px;
	background: var(--mt-cart-white);
	color: var(--mt-cart-black);
	font: inherit;
}

body.woocommerce-checkout form.checkout_coupon button[name="apply_coupon"] {
	display: inline-flex;
	min-height: 40px;
	align-items: center;
	justify-content: center;
	padding: 0 20px;
	border: 0;
	border-radius: 4px;
	background: var(--mt-cart-gold);
	color: var(--mt-cart-white) !important;
	font-family: var(--mt-cart-font);
	font-size: 14px;
	font-weight: 600;
	line-height: 1.2;
	text-transform: uppercase;
}

body.woocommerce-checkout form.checkout_coupon button[name="apply_coupon"]:hover,
body.woocommerce-checkout form.checkout_coupon button[name="apply_coupon"]:focus {
	background: var(--mt-cart-gold-dark);
	color: var(--mt-cart-white) !important;
}

/* === MT-CART-4: order-received === */
body.woocommerce-order-received::before {
	content: "";
	position: fixed;
	z-index: 0;
	top: 0;
	left: 0;
	width: 100%;
	height: 80px;
	pointer-events: none;
	background: var(--mt-cart-black);
}

body.woocommerce-order-received .mt-thankyou-shell {
	position: relative;
	z-index: 1;
}

body.woocommerce-order-received .mt-thankyou-shell .mt-cart-steps {
	margin-bottom: 28px;
}

body.woocommerce-order-received .thanks {
	max-width: 720px;
	margin: 0 auto;
}

body.woocommerce-order-received .thanks-hero {
	padding: 8px 0 22px;
	text-align: center;
}

body.woocommerce-order-received .thanks-hero .check,
body.woocommerce-order-received .check {
	display: grid;
	width: 76px;
	height: 76px;
	margin: 0 auto 16px;
	border-radius: 50%;
	place-items: center;
	background: var(--mt-cart-gold);
	box-shadow: 0 8px 24px rgba(216, 165, 75, .35);
	color: var(--mt-cart-black);
	font-size: 38px;
	font-weight: 800;
	line-height: 1;
}

body.woocommerce-order-received .thanks-hero h1 {
	margin: 0 0 8px;
	color: var(--mt-cart-black);
	font-family: var(--mt-cart-font);
	font-size: clamp(26px, 4vw, 34px);
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.15;
}

body.woocommerce-order-received .thanks-hero p,
body.woocommerce-order-received .thanks-hero .woocommerce-thankyou-order-received {
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--mt-cart-muted);
	font-size: 15px;
	line-height: 1.5;
}

body.woocommerce-order-received .thanks-hero .order-no,
body.woocommerce-order-received .order-no {
	color: var(--mt-cart-black);
	font-weight: 700;
}

body.woocommerce-order-received .card,
body.woocommerce-order-received .mt-thankyou-card {
	padding: 22px;
	border: 1px solid var(--mt-cart-line);
	border-radius: var(--mt-cart-radius);
	background: var(--mt-cart-white);
	box-shadow: var(--mt-cart-shadow);
}

body.woocommerce-order-received .card + .card,
body.woocommerce-order-received .mt-thankyou-card + .mt-thankyou-card {
	margin-top: 18px;
}

body.woocommerce-order-received .card__title,
body.woocommerce-order-received .mt-thankyou-card .card__title {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0 0 14px;
	color: var(--mt-cart-black);
	font-family: var(--mt-cart-font);
	font-size: 18px;
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1.25;
}

body.woocommerce-order-received .woocommerce-order-mt-tickets a.button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: auto;
	min-height: 40px;
	padding: 0 16px;
	border: 0;
	border-radius: 999px;
	background: var(--mt-cart-gold) !important;
	color: var(--mt-cart-black) !important;
	font-family: var(--mt-cart-font);
	font-size: 14px;
	font-weight: 600;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
}

body.woocommerce-order-received .woocommerce-order-mt-tickets a.button:hover,
body.woocommerce-order-received .woocommerce-order-mt-tickets a.button:focus {
	background: var(--mt-cart-gold-dark) !important;
	color: var(--mt-cart-black) !important;
	text-decoration: none;
}

body.woocommerce-order-received .woocommerce-customer-details,
body.woocommerce-order-received .woocommerce-column--billing-address {
	display: none;
}

body.woocommerce-order-received .kv {
	display: flex;
	justify-content: space-between;
	gap: 12px;
	padding: 9px 0;
	border-bottom: 1px solid var(--mt-cart-line);
	color: var(--mt-cart-black);
	font-size: 15px;
	line-height: 1.4;
}

body.woocommerce-order-received .kv .k {
	color: var(--mt-cart-muted);
}

body.woocommerce-order-received .kv .v {
	font-weight: 700;
	text-align: right;
}

body.woocommerce-order-received .summary {
	position: static;
	margin-top: 14px;
}

body.woocommerce-order-received .summary .row {
	display: flex;
	justify-content: space-between;
	gap: 16px;
	padding: 8px 0;
	color: var(--mt-cart-black);
	font-size: 15px;
	line-height: 1.35;
}

body.woocommerce-order-received .summary .row.muted {
	color: var(--mt-cart-muted);
	font-size: 14px;
}

body.woocommerce-order-received .summary .row span:last-child {
	font-weight: 700;
	text-align: right;
	white-space: nowrap;
}

body.woocommerce-order-received .summary .total {
	margin-top: 8px;
	padding-top: 14px;
	border-top: 1px solid var(--mt-cart-line);
	color: var(--mt-cart-black);
}

body.woocommerce-order-received .summary .total .row {
	font-family: var(--mt-cart-font);
	font-size: 20px;
	font-weight: 800;
}

body.woocommerce-order-received .ticket {
	display: grid;
	grid-template-columns: 48px minmax(0, 1fr) auto;
	gap: 14px;
	align-items: center;
	padding: 14px 0;
	border-bottom: 1px solid var(--mt-cart-line);
}

body.woocommerce-order-received .ticket:last-of-type {
	border-bottom: 0;
}

body.woocommerce-order-received .ticket__body {
	min-width: 0;
}

body.woocommerce-order-received .ticket__name {
	color: var(--mt-cart-black);
	font-weight: 700;
	overflow-wrap: anywhere;
}

body.woocommerce-order-received .ticket__meta {
	margin-top: 2px;
	color: var(--mt-cart-muted);
	font-size: 13px;
	line-height: 1.35;
	overflow-wrap: anywhere;
}

body.woocommerce-order-received .btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 52px;
	padding: 0 22px;
	border: 0;
	border-radius: 999px;
	color: var(--mt-cart-black) !important;
	font-family: var(--mt-cart-font);
	font-size: 15px;
	font-weight: 600;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	transition: background .15s ease, transform .05s ease;
}

body.woocommerce-order-received .btn:hover,
body.woocommerce-order-received .btn:focus {
	color: var(--mt-cart-black) !important;
	text-decoration: none;
}

body.woocommerce-order-received .btn:active {
	transform: translateY(1px);
}

body.woocommerce-order-received .btn--primary {
	background: var(--mt-cart-gold);
}

body.woocommerce-order-received .btn--primary:hover,
body.woocommerce-order-received .btn--primary:focus {
	background: var(--mt-cart-gold-dark);
}

body.woocommerce-order-received .btn--ghost {
	border: 1.5px solid var(--mt-cart-black);
	background: transparent;
}

body.woocommerce-order-received .btn--block {
	width: 100%;
}

body.woocommerce-order-received .btn--sm {
	width: auto;
	min-height: 40px;
	padding: 0 16px;
	font-size: 14px;
	white-space: nowrap;
}

body.woocommerce-order-received .mt-thankyou-back {
	margin-top: 18px;
}

body.woocommerce-order-received :where(a, button, input, select, textarea):focus-visible {
	outline: 3px solid rgba(216, 165, 75, .45);
	outline-offset: 3px;
}

@media (max-width: 860px) {
	.mt-cart-shell {
		padding: 20px 16px 48px;
	}

	.mt-cart-steps {
		margin-bottom: 22px;
		overflow-x: auto;
	}

	.mt-cart-layout {
		grid-template-columns: minmax(0, 1fr);
		gap: 18px;
	}

	.mt-cart-items {
		padding: 16px;
	}

	.mt-cart-items .cart_item {
		grid-template-columns: 56px minmax(0, 1fr);
		grid-template-areas:
			"thumb name"
			"thumb meta"
			"controls pricing";
		gap: 12px 14px;
		padding: 16px 0;
		align-items: start;
	}

	.mt-cart-item__thumb,
	.mt-cart-item__thumb a,
	.mt-cart-item__thumb img,
	.mt-cart-item__thumb .mt-ticket-thumb {
		grid-area: thumb;
		width: 56px;
		height: 56px;
	}

	.mt-cart-item__main {
		display: contents;
	}

	.mt-cart-item__name {
		grid-area: name;
	}

	.mt-cart-item__meta {
		grid-area: meta;
		margin-top: 0;
	}

	.mt-cart-item__controls {
		grid-area: controls;
		align-items: flex-start;
	}

	.mt-cart-item__pricing {
		grid-area: pricing;
		align-self: center;
		text-align: right;
	}

	.mt-cart-actions,
	.mt-cart-actions .coupon {
		display: grid;
		grid-template-columns: 1fr;
		width: 100%;
	}

	.mt-cart-actions .mt-cart-coupon-button {
		justify-self: start;
		width: auto;
		min-height: 32px;
		padding: 0;
	}

	.mt-cart-actions .button:not(.mt-cart-coupon-button),
	body.woocommerce-cart .button,
	body.woocommerce-cart a.button,
	.mt-cart-summary .wc-proceed-to-checkout a.checkout-button {
		width: 100%;
		min-height: 52px;
	}

	.mt-cart-summary {
		position: static;
		padding: 18px;
	}

	.cart-collaterals {
		position: static;
	}

	body.woocommerce-checkout .woocommerce-form-coupon-toggle {
		max-width: var(--mt-cart-max);
		margin: 0 auto 0;
		padding: 0;
	}

	body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info {
		padding: 18px 20px 18px 20px;
	}

	.mt-checkout-grid {
		grid-template-columns: minmax(0, 1fr);
		gap: 18px;
	}

	.mt-checkout-field-row {
		grid-template-columns: minmax(0, 1fr);
		gap: 0;
	}

	.mt-checkout-card,
	.mt-checkout-summary-card {
		padding: 18px;
	}

	.mt-checkout-order-summary {
		position: static;
		order: -1;
		border: 1px dashed var(--mt-cart-line);
		border-radius: 10px;
		background: var(--mt-cart-white);
		box-shadow: var(--mt-cart-shadow);
	}

	.mt-checkout-order-summary > summary {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
		padding: 14px 16px;
		color: var(--mt-cart-muted);
		font-size: 14px;
		font-weight: 700;
		cursor: pointer;
		list-style: none;
	}

	.mt-checkout-order-summary > summary::before {
		content: "▸";
		transition: transform .2s ease;
	}

	.mt-checkout-order-summary[open] > summary::before {
		transform: rotate(90deg);
	}

	.mt-checkout-order-summary__total {
		margin-left: auto;
		color: var(--mt-cart-black);
		font-weight: 600;
		white-space: nowrap;
	}

	.mt-checkout-order-summary:not([open]) > :not(summary) {
		display: none !important;
	}

	.mt-checkout-order-summary[open] > #order_review {
		display: block;
		padding: 0 16px 16px;
	}

	.mt-checkout-order-summary .mt-checkout-summary-card {
		border: 0;
		box-shadow: none;
		padding: 0;
	}

	.mt-checkout-summary-card .mt-checkout-card__title {
		display: none;
	}

	body.woocommerce-checkout .woocommerce .woocommerce-checkout-review-order-table tr {
		align-items: flex-start;
	}

	body.woocommerce-checkout .woocommerce .woocommerce-checkout-review-order-table .product-name {
		overflow-wrap: anywhere;
	}

	body.woocommerce-checkout .woocommerce .woocommerce-checkout-review-order-table .product-total,
	body.woocommerce-checkout .woocommerce .woocommerce-checkout-review-order-table td {
		flex: 0 1 auto;
		max-width: 42%;
		width: auto;
		white-space: normal;
	}

	body.woocommerce-order-received .ticket {
		grid-template-columns: 40px minmax(0, 1fr);
		grid-template-areas:
			"ic body"
			"btn btn";
		row-gap: 8px;
	}

	body.woocommerce-order-received .ticket__ic {
		grid-area: ic;
		width: 40px;
		height: 40px;
	}

	body.woocommerce-order-received .ticket__body {
		grid-area: body;
	}

	body.woocommerce-order-received .ticket .btn--sm {
		grid-area: btn;
		width: 100%;
	}

	body.woocommerce-order-received .summary .row,
	body.woocommerce-order-received .kv {
		align-items: flex-start;
	}

}

@media (max-width: 420px) {
	body.woocommerce-cart .mt-cart-shell .mt-cart-header h1 {
		font-size: 28px;
	}

	.mt-cart-items .cart_item {
		grid-template-columns: 48px minmax(0, 1fr);
	}

	.mt-cart-item__thumb,
	.mt-cart-item__thumb a,
	.mt-cart-item__thumb img,
	.mt-cart-item__thumb .mt-ticket-thumb {
		width: 48px;
		height: 48px;
	}

	.mt-cart-item__meta {
		display: block;
		overflow: visible;
		text-overflow: clip;
		white-space: normal;
	}

	.mt-cart-item__meta span {
		display: block;
	}

	.mt-cart-item__meta span + span::before {
		display: none;
	}
}
