.mom-frictionless-checkout {
	--mom-plum: #190333;
	--mom-violet: #580a71;
	--mom-lavender: #734390;
	--mom-lavender-soft: rgba(115, 67, 144, 0.12);
	--mom-border: rgba(115, 67, 144, 0.28);
	color: var(--mom-plum);
	font-family: Arial, sans-serif;
	padding-bottom: 16px;
}

.mom-frictionless-checkout .woocommerce-form-coupon-toggle,
.mom-frictionless-checkout form.checkout_coupon,
.mom-frictionless-checkout .woocommerce-billing-fields > h3,
.mom-frictionless-checkout .woocommerce-additional-fields {
	display: none !important;
}

.mom-frictionless-checkout .woocommerce-form-login-toggle,
.mom-frictionless-checkout form.woocommerce-form-login {
	max-width: 760px;
	margin-right: auto;
	margin-left: auto;
}

.mom-frictionless-checkout .woocommerce-form-login-toggle .woocommerce-info {
	margin: 0 0 14px;
	padding: 14px 18px;
	color: var(--mom-plum);
	background: rgba(115, 67, 144, 0.08);
	border: 1px solid rgba(115, 67, 144, 0.2);
	border-radius: 12px;
	line-height: 1.5;
}

.mom-frictionless-checkout .woocommerce-form-login-toggle .woocommerce-info::before {
	display: none;
}

.mom-frictionless-checkout .woocommerce-form-login-toggle .showlogin {
	color: var(--mom-violet);
	font-weight: 700;
}

.mom-frictionless-checkout form.woocommerce-form-login {
	margin-top: 0;
	margin-bottom: 18px;
	padding: 20px;
	background: #fff;
	border: 1px solid var(--mom-border);
	border-radius: 12px;
}

.mom-frictionless-checkout form.checkout,
.mom-frictionless-checkout form.woocommerce-checkout {
	display: block !important;
	grid-template-columns: 1fr !important;
	max-width: 760px;
	margin: 0 auto;
	padding: clamp(20px, 4vw, 38px);
	background: #fff;
	border: 1px solid var(--mom-border);
	border-radius: 18px;
	box-shadow: 0 14px 36px rgba(41, 8, 71, 0.1);
}

.mom-frictionless-checkout #customer_details,
.mom-frictionless-checkout #order_review_heading,
.mom-frictionless-checkout #order_review,
.mom-frictionless-checkout .col2-set,
.mom-frictionless-checkout .col2-set .col-1 {
	float: none !important;
	clear: both !important;
	width: 100% !important;
	max-width: none !important;
}

.mom-frictionless-checkout .col2-set .col-2 {
	display: none !important;
}

.mom-frictionless-checkout .form-row {
	margin: 0 0 18px;
	padding: 0;
}

.mom-frictionless-checkout .form-row label,
.mom-frictionless-checkout .mom-coupon__label {
	display: block;
	margin: 0 0 7px;
	color: var(--mom-plum);
	font-size: 15px;
	font-weight: 700;
	line-height: 1.4;
}

.mom-frictionless-checkout .form-row .input-text,
.mom-frictionless-checkout .mom-coupon__input {
	box-sizing: border-box;
	width: 100%;
	min-height: 50px;
	padding: 12px 15px;
	color: var(--mom-plum);
	background: #fff;
	border: 1px solid var(--mom-border);
	border-radius: 10px;
	box-shadow: none;
	font-size: 16px;
	line-height: 1.4;
	transition: border-color 160ms ease, box-shadow 160ms ease;
}

.mom-frictionless-checkout .form-row .input-text:focus,
.mom-frictionless-checkout .mom-coupon__input:focus {
	outline: none;
	border-color: var(--mom-lavender) !important;
	box-shadow: 0 0 0 3px var(--mom-lavender-soft);
}

.mom-frictionless-checkout .mom-coupon {
	margin: 4px 0 28px;
	padding: 16px;
	background: rgba(115, 67, 144, 0.06);
	border: 1px solid rgba(115, 67, 144, 0.18);
	border-radius: 12px;
}

.mom-frictionless-checkout .mom-coupon__optional {
	color: #5b5468;
	font-size: 13px;
	font-weight: 400;
}

.mom-frictionless-checkout .mom-coupon__controls {
	display: flex;
	align-items: stretch;
	gap: 10px;
}

.mom-frictionless-checkout .mom-coupon__input {
	flex: 1 1 auto;
	min-width: 0;
}

.mom-frictionless-checkout .mom-coupon__button,
.mom-frictionless-checkout #place_order {
	min-height: 50px;
	padding: 12px 24px;
	color: #fff !important;
	background: var(--mom-violet) !important;
	border: 1px solid var(--mom-violet) !important;
	border-radius: 999px;
	box-shadow: none;
	font-weight: 700;
	line-height: 1;
	text-decoration: none;
	transition: background-color 160ms ease, border-color 160ms ease, transform 160ms ease;
}

.mom-frictionless-checkout .mom-coupon__button:hover,
.mom-frictionless-checkout .mom-coupon__button:focus,
.mom-frictionless-checkout #place_order:hover,
.mom-frictionless-checkout #place_order:focus {
	color: #fff !important;
	background: var(--mom-plum) !important;
	border-color: var(--mom-plum) !important;
	transform: translateY(-1px);
}

.mom-frictionless-checkout .mom-coupon__button:disabled {
	cursor: wait;
	opacity: 0.65;
	transform: none;
}

.mom-frictionless-checkout .mom-coupon__message:empty {
	display: none;
}

.mom-frictionless-checkout .mom-coupon__message {
	margin-top: 10px;
}

.mom-frictionless-checkout .mom-coupon__message > :last-child {
	margin-bottom: 0;
}

.mom-frictionless-checkout #order_review_heading {
	margin: 4px 0 14px;
	color: var(--mom-violet);
	font-family: "EB Garamond", Georgia, serif;
	font-size: clamp(27px, 4vw, 34px);
	font-weight: 600;
	line-height: 1.2;
}

.mom-frictionless-checkout table.shop_table {
	margin: 0 0 24px;
	border: 1px solid rgba(115, 67, 144, 0.18);
	border-radius: 12px;
	border-collapse: separate;
	overflow: hidden;
}

.mom-frictionless-checkout table.shop_table th,
.mom-frictionless-checkout table.shop_table td {
	padding: 13px 15px;
	border-color: rgba(115, 67, 144, 0.14);
}

.mom-frictionless-checkout table.woocommerce-checkout-review-order-table thead,
.mom-frictionless-checkout table.woocommerce-checkout-review-order-table tbody .product-total,
.mom-frictionless-checkout table.woocommerce-checkout-review-order-table .cart-subtotal {
	display: none;
}

.mom-frictionless-checkout table.woocommerce-checkout-review-order-table tbody .product-name {
	width: 100%;
	font-weight: 600;
}

.mom-frictionless-checkout #payment {
	color: var(--mom-plum);
	background: rgba(115, 67, 144, 0.06);
	border: 1px solid rgba(115, 67, 144, 0.18);
	border-radius: 12px;
}

.mom-frictionless-checkout #payment ul.payment_methods {
	margin: 0;
	padding: 24px !important;
	border-bottom: 1px solid rgba(115, 67, 144, 0.18);
}

.mom-frictionless-checkout #payment ul.payment_methods > li {
	margin: 0;
	padding: 0;
}

.mom-frictionless-checkout #payment ul.payment_methods > li + li {
	margin-top: 15px;
}

.mom-frictionless-checkout #payment ul.payment_methods > li > label {
	display: inline-block;
	margin-left: 8px;
	color: var(--mom-plum);
	font-weight: 600;
	line-height: 1.45;
	cursor: pointer;
}

.mom-frictionless-checkout #payment div.payment_box {
	display: none;
	margin: 16px 0 22px;
	padding: 18px;
	background: #fff;
	border: 1px solid rgba(115, 67, 144, 0.15);
	border-radius: 10px;
}

.mom-frictionless-checkout #payment div.payment_box::before {
	border-bottom-color: rgba(115, 67, 144, 0.15);
}

.mom-frictionless-checkout #payment .place-order {
	box-sizing: border-box;
	width: 100%;
	margin: 0;
	padding: 28px 28px 38px !important;
}

.mom-frictionless-checkout .mom-email-consent {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	margin: 0 0 18px;
	color: var(--mom-plum);
	font-weight: 600;
	line-height: 1.45;
}

.mom-frictionless-checkout .mom-email-consent input[type="checkbox"] {
	flex: 0 0 auto;
	margin: 3px 0 0;
}

.mom-frictionless-checkout #place_order {
	float: none;
	width: 100%;
	margin-top: 12px;
}

@media (max-width: 600px) {
	.mom-frictionless-checkout form.checkout,
	.mom-frictionless-checkout form.woocommerce-checkout {
		padding: 18px;
		border-radius: 14px;
	}

	.mom-frictionless-checkout .mom-coupon__controls {
		align-items: stretch;
		flex-direction: column;
	}

	.mom-frictionless-checkout .mom-coupon__button {
		width: 100%;
	}

	.mom-frictionless-checkout #payment ul.payment_methods {
		padding: 18px !important;
	}

	.mom-frictionless-checkout #payment .place-order {
		padding: 22px 18px 30px !important;
	}
}
