body.qms-cart-open { overflow: hidden; }

.added_to_cart.wc-forward { display: none !important; }

.qms-page {
	min-height: 55vh;
	padding: clamp(32px, 5vw, 72px) 20px clamp(56px, 7vw, 96px);
	background: #fff;
}

.qms-page__inner {
	width: min(100%, 1240px);
	margin-inline: auto;
}

.qms-page__header { margin-bottom: 28px; }
.qms-page__title { margin: 0; font-size: clamp(28px, 3vw, 42px); line-height: 1.14; }
.qms-page__content > :first-child { margin-top: 0; }

.qms-floating-cart {
	position: fixed;
	right: 20px;
	top: auto;
	bottom: 79px;
	z-index: 990;
	display: grid;
	place-items: center;
	width: 58px;
	height: 58px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	color: #fff;
	background: var(--qms-pink, #c4005f);
	box-shadow: 0 10px 30px rgba(42, 8, 25, .24);
	cursor: pointer;
	transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease;
}

.qms-floating-cart svg { width: 25px; height: 25px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }

.qms-floating-cart__count {
	position: absolute;
	top: -4px;
	right: -3px;
	display: grid;
	place-items: center;
	min-width: 23px;
	height: 23px;
	padding: 0 5px;
	border: 2px solid #fff;
	border-radius: 999px;
	font-size: 11px;
	font-weight: 700;
	line-height: 1;
	color: #fff;
	background: #202020;
}

@media (hover: hover) and (pointer: fine) {
	.qms-floating-cart:hover { transform: translateY(-2px); background: var(--qms-pink-hover, #9f004d); box-shadow: 0 14px 34px rgba(42, 8, 25, .3); }
}

.qms-floating-cart:focus-visible,
.qms-cart-drawer button:focus-visible,
.qms-cart-drawer a:focus-visible,
.qms-page--cart a:focus-visible,
.qms-page--cart button:focus-visible,
.qms-page--cart input:focus-visible,
.qms-page--checkout a:focus-visible,
.qms-page--checkout button:focus-visible,
.qms-page--checkout input:focus-visible,
.qms-page--checkout select:focus-visible,
.qms-page--checkout textarea:focus-visible { outline: 3px solid rgba(196, 0, 95, .28); outline-offset: 2px; }

.qms-cart-drawer__overlay {
	position: fixed;
	inset: 0;
	z-index: 10040;
	background: rgba(12, 12, 12, .48);
	backdrop-filter: blur(2px);
	opacity: 0;
	transition: opacity .24s ease;
}

body.qms-cart-open .qms-cart-drawer__overlay { opacity: 1; }

.qms-cart-drawer {
	position: fixed;
	top: 0;
	right: 0;
	z-index: 10050;
	display: flex;
	flex-direction: column;
	width: min(450px, 100vw);
	height: 100dvh;
	color: #171717;
	background: #fff;
	box-shadow: -16px 0 45px rgba(0, 0, 0, .17);
	transform: translateX(102%);
	visibility: hidden;
	transition: transform .28s cubic-bezier(.22, 1, .36, 1), visibility 0s linear .28s;
}

.qms-cart-drawer[aria-hidden="false"] { transform: translateX(0); visibility: visible; transition-delay: 0s; }

.qms-cart-drawer__header {
	display: grid;
	grid-template-columns: 32px minmax(0, 1fr) 28px;
	align-items: center;
	min-height: 70px;
	padding: 14px 20px;
	border-bottom: 1px solid #ece8ea;
}

.qms-cart-drawer__header h2 { margin: 0; font-size: 22px; font-weight: 750; line-height: 1.2; text-align: center; }
.qms-cart-drawer__header-count { display: grid; place-items: center; min-width: 26px; height: 26px; padding: 0 6px; border-radius: 5px; color: #383136; background: #eaebed; font-size: 12px; font-weight: 750; }

.qms-cart-drawer__close,
.qms-cart-drawer__remove {
	display: grid;
	place-items: center;
	padding: 0;
	border: 0;
	color: #323232;
	background: transparent;
	cursor: pointer;
}

.qms-cart-drawer__close { width: 32px; height: 32px; border-radius: 50%; background: transparent; }
.qms-cart-drawer__close svg { width: 24px; height: 24px; fill: none; stroke: currentColor; stroke-width: 1.55; }
.qms-cart-drawer__remove { flex: 0 0 32px; width: 32px; height: 32px; color: #777; }
.qms-cart-drawer__remove svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }

.qms-cart-drawer__body { display: flex; min-height: 0; flex: 1; flex-direction: column; overflow-y: auto; overscroll-behavior: contain; }
.qms-cart-drawer.is-loading .qms-cart-drawer__body { pointer-events: none; opacity: .58; }

.qms-cart-drawer__items { padding: 10px 20px 0; }
.qms-cart-drawer__item { display: grid; grid-template-columns: 82px minmax(0, 1fr); gap: 15px; padding: 16px 0; border-bottom: 1px solid #eee9eb; }
.qms-cart-drawer__thumb { display: block; overflow: hidden; width: 82px; aspect-ratio: 1; border: 1px solid #eee9eb; border-radius: 9px; background: #faf8f9; }
.qms-cart-drawer__thumb img { display: block; width: 100%; height: 100%; object-fit: contain; }
.qms-cart-drawer__item-copy { min-width: 0; }
.qms-cart-drawer__item-head { display: flex; align-items: flex-start; gap: 5px; }
.qms-cart-drawer__name { flex: 1; color: #181818; font-size: 13px; font-weight: 700; line-height: 1.38; text-decoration: none; }
.qms-cart-drawer__item .variation { margin: 6px 0 0; color: #6b6467; font-size: 11px; }
.qms-cart-drawer__item .variation dt, .qms-cart-drawer__item .variation dd { display: inline; float: none; margin: 0; }
.qms-cart-drawer__item .variation dd::after { content: " "; display: block; }
.qms-cart-drawer__item .variation p { display: inline; margin: 0; }
.qms-cart-drawer__item-bottom { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 15px; }

.qms-cart-drawer__quantity { display: grid; grid-template-columns: 30px 38px 30px; align-items: stretch; overflow: hidden; height: 34px; border: 1px solid #d8d2d5; border-radius: 7px; }
.qms-cart-drawer__quantity button { padding: 0; border: 0; color: #222; background: #f8f6f7; font-size: 18px; cursor: pointer; }
.qms-cart-drawer__quantity input { width: 38px; padding: 0; border: 0; border-inline: 1px solid #e2dde0; border-radius: 0; color: #222; background: #fff; font: inherit; font-size: 13px; font-weight: 650; text-align: center; -moz-appearance: textfield; }
.qms-cart-drawer__quantity input::-webkit-outer-spin-button, .qms-cart-drawer__quantity input::-webkit-inner-spin-button { margin: 0; -webkit-appearance: none; }
.qms-cart-drawer__unit-price { color: #202020; font-size: 13px; font-weight: 700; white-space: nowrap; }
.qms-cart-drawer__unit-price small { color: #7c7478; font-size: 10px; font-weight: 500; }

.qms-cart-drawer__summary { flex: 0 0 auto; margin-top: auto; padding: 15px 20px 11px; border-top: 1px solid #e9e3e6; background: #fff; }
.qms-cart-drawer__summary > div { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; padding: 4px 0; font-size: 13px; }
.qms-cart-drawer__summary strong { text-align: right; }
.qms-cart-drawer__discount strong { color: #23713a; }
.qms-cart-drawer__tax { color: #716a6e; font-size: 11px !important; }
.qms-cart-drawer__free strong { color: #23713a; }
.qms-cart-drawer__summary .qms-cart-drawer__total { margin-top: 7px; padding-top: 13px; border-top: 1px solid #ddd6d9; font-size: 18px; }
.qms-cart-drawer__actions { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; padding: 10px 20px 20px; background: #fff; }
.qms-cart-drawer__actions a, .qms-cart-drawer__empty a { display: inline-flex; align-items: center; justify-content: center; min-height: 46px; padding: 10px 15px; border: 1px solid var(--qms-pink, #c4005f); border-radius: 7px; font-size: 13px; font-weight: 700; line-height: 1.2; text-align: center; text-decoration: none; }
.qms-cart-drawer__secondary { color: var(--qms-pink, #c4005f); background: #fff; }
.qms-cart-drawer__primary { color: #fff !important; background: var(--qms-pink, #c4005f); }

.qms-cart-drawer__empty { display: flex; flex: 1; flex-direction: column; align-items: center; justify-content: center; padding: 45px 28px; text-align: center; }
.qms-cart-drawer__empty svg { width: 58px; height: 58px; color: #aaa1a5; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.qms-cart-drawer__empty p { margin: 18px 0 24px; font-size: 16px; }
.qms-cart-drawer__empty a { min-width: 190px; }
.qms-cart-drawer__notices { padding: 14px 22px 0; }
.qms-cart-drawer__notices .woocommerce-error, .qms-cart-drawer__notices .woocommerce-message, .qms-cart-drawer__notices .woocommerce-info { margin: 0; padding: 11px 13px; border: 0; border-left: 3px solid var(--qms-pink, #c4005f); border-radius: 5px; font-size: 12px; background: #fbf2f6; list-style: none; }
.qms-cart-drawer__notices .woocommerce-error::before, .qms-cart-drawer__notices .woocommerce-message::before, .qms-cart-drawer__notices .woocommerce-info::before { display: none; }

/* One server-authoritative free-shipping component, with contextual variants. */
.qms-free-shipping {
	--qms-free-shipping-progress: 0%;
	display: grid;
	gap: 9px;
	margin: 0;
	padding: 13px 14px;
	border: 1px solid #eadbc1;
	border-radius: 10px;
	background: linear-gradient(135deg, #fffaf1 0%, #f8f0e2 100%);
}

.qms-free-shipping__copy { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
.qms-free-shipping__copy strong { color: #3e3428; font-size: 12px; font-weight: 800; line-height: 1.35; }
.qms-free-shipping__copy span { flex: 0 0 auto; color: #7a6a54; font-size: 9px; font-weight: 650; white-space: nowrap; }
.qms-free-shipping__track { overflow: hidden; height: 7px; border-radius: 999px; background: rgba(126, 99, 57, .14); }
.qms-free-shipping__fill { display: block; width: var(--qms-free-shipping-progress); height: 100%; border-radius: inherit; background: linear-gradient(90deg, #bea05f 0%, #d1ac66 74%, #c4005f 100%); transition: width .42s cubic-bezier(.22, 1, .36, 1); }
.qms-free-shipping.is-reached { border-color: #cfe3d3; background: linear-gradient(135deg, #f8fcf8, #f1f8f2); }
.qms-free-shipping.is-reached .qms-free-shipping__copy strong { color: #236636; }
.qms-free-shipping.is-reached .qms-free-shipping__fill { background: linear-gradient(90deg, #3d9255, #26743d); }
.qms-free-shipping--drawer { flex: 0 0 auto; margin: 12px 20px 2px; }
.qms-free-shipping--drawer .qms-free-shipping__copy { align-items: flex-start; flex-direction: column; gap: 2px; }
.qms-free-shipping--cart,
.qms-free-shipping--checkout { gap: 7px; padding: 11px 12px; background: #fcf8f0; }

.qms-summary-coupon { border-block: 1px solid #eee8eb; }
.qms-summary-coupon summary,
.qms-summary-coupon > .showcoupon {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 44px;
	padding: 10px 0;
	color: #393337;
	font-size: 12px;
	font-weight: 750;
	line-height: 1.3;
	text-decoration: none;
	cursor: pointer;
	list-style: none;
}
.qms-summary-coupon summary::-webkit-details-marker { display: none; }
.qms-summary-coupon summary span,
.qms-summary-coupon > .showcoupon span { width: 8px; height: 8px; margin-right: 3px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg); transition: transform .18s ease; }
.qms-summary-coupon[open] summary span,
.qms-summary-coupon > .showcoupon[aria-expanded="true"] span { transform: rotate(225deg) translate(-2px, -2px); }
.qms-summary-coupon__form { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; padding: 2px 0 13px; }
.qms-summary-coupon__form .input-text { min-width: 0; min-height: 42px; padding: 9px 11px; border: 1px solid #dcd5d8; border-radius: 7px; font: inherit; font-size: 12px; }
.qms-summary-coupon__form .button { min-height: 42px !important; padding: 8px 13px !important; }
.qms-summary-coupon__form.is-processing { opacity: .58; pointer-events: none; }
.qms-summary-coupon__status { grid-column: 1 / -1; min-height: 0; margin: 0; color: #6c6468; font-size: 10px; line-height: 1.4; }
.qms-cart-savings { margin: 10px 0 0; padding: 9px 11px; border-radius: 7px; color: #1f6534; background: #f0f8f2; font-size: 11px; font-weight: 650; text-align: center; }
.qms-cart-savings strong { font-size: 13px; }

.qms-cart-toast { position: fixed; top: 116px; right: 24px; z-index: 10070; max-width: min(330px, calc(100vw - 32px)); padding: 12px 16px; border-left: 4px solid #2f8044; border-radius: 6px; color: #fff; background: #222; box-shadow: 0 10px 30px rgba(0, 0, 0, .2); font-size: 13px; font-weight: 600; opacity: 0; transform: translateY(-8px); transition: opacity .18s ease, transform .18s ease; }
.qms-cart-toast.is-visible { opacity: 1; transform: translateY(0); }
.qms-cart-toast.is-error { border-left-color: #d43737; }

/* Classic cart page */
.qms-page--cart {
	padding-top: clamp(32px, 4vw, 58px);
	color: #222;
	font-family: "Work Sans", Arial, sans-serif;
}

.qms-page--cart .woocommerce-notices-wrapper { margin-bottom: 18px; }
.qms-page--cart .woocommerce-error,
.qms-page--cart .woocommerce-info,
.qms-page--cart .woocommerce-message {
	margin: 0 0 14px;
	padding: 14px 18px 14px 48px;
	border: 1px solid #eadfe4;
	border-left: 4px solid #c4005f;
	border-radius: 9px;
	color: #292426;
	background: #fff9fb;
	font-size: 13px;
	line-height: 1.5;
}

.qms-page--cart .woocommerce-error::before,
.qms-page--cart .woocommerce-info::before,
.qms-page--cart .woocommerce-message::before { top: 14px; left: 18px; color: #c4005f; }

.qms-page--cart .woocommerce-message { border-left-color: #2f7d32; background: #f7fcf8; }
.qms-page--cart .woocommerce-message::before { color: #2f7d32; }

.qms-cart-page {
	display: grid;
	grid-template-columns: minmax(0, 1.72fr) minmax(330px, .78fr);
	gap: 34px;
	align-items: start;
}

.qms-cart-page__form { grid-column: 1; grid-row: 1; min-width: 0; }
.qms-cart-page__summary { display: contents; }

.qms-page--cart table.shop_table.qms-cart-table {
	width: 100%;
	margin: 0;
	border: 1px solid #e9e4e6;
	border-collapse: separate;
	border-spacing: 0;
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 12px 34px rgba(47, 21, 33, .045);
}

.qms-cart-table caption { padding: 0 0 22px; text-align: left; }
.qms-cart-table caption h1 { margin: 0; color: #1d1d1d; font-size: clamp(27px, 2.5vw, 36px); font-weight: 850; line-height: 1.12; }

.qms-page--cart table.shop_table.qms-cart-table th {
	padding: 15px 11px;
	border: 0;
	border-bottom: 1px solid #e9e4e6;
	color: #71696d;
	background: #faf8f9;
	font-size: 10px;
	font-weight: 750;
	letter-spacing: .07em;
	text-align: left;
	text-transform: uppercase;
}

.qms-page--cart table.shop_table.qms-cart-table th:first-child { border-radius: 13px 0 0; }
.qms-page--cart table.shop_table.qms-cart-table th:last-child { border-radius: 0 13px 0 0; text-align: right; }

.qms-page--cart table.shop_table.qms-cart-table td {
	padding: 20px 11px;
	border: 0;
	border-bottom: 1px solid #eee9eb;
	vertical-align: middle;
}

.qms-page--cart .qms-cart-table .product-remove { width: 42px; padding-right: 2px; }
.qms-page--cart .qms-cart-table .product-remove a {
	display: grid;
	place-items: center;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	color: #777 !important;
	background: #f6f3f4;
	font-size: 22px;
	font-weight: 400;
	line-height: 1;
	text-decoration: none;
}

.qms-page--cart .qms-cart-table .product-thumbnail { width: 106px; padding-inline: 4px 14px; }
.qms-page--cart .qms-cart-table .product-thumbnail a { display: block; }
.qms-page--cart .qms-cart-table .product-thumbnail img {
	display: block;
	width: 88px;
	height: 88px;
	margin: 0;
	border-radius: 10px;
	background: #f7f5f6;
	object-fit: contain;
}

.qms-page--cart .qms-cart-table .product-name { min-width: 190px; }
.qms-cart-product__copy { display: flex; align-items: flex-start; flex-direction: column; gap: 7px; }
.qms-cart-product__name { color: #1e1e1e; font-size: 13px; font-weight: 750; line-height: 1.38; text-decoration: none; }
.qms-cart-product__badge {
	display: inline-flex;
	align-items: center;
	min-height: 22px;
	padding: 5px 9px;
	border-radius: 999px;
	color: #fff;
	background: #d30066;
	font-size: 9px;
	font-weight: 850;
	line-height: 1;
	letter-spacing: .055em;
}

.qms-cart-product__badge--economic { color: #171717; background: #a5a5a5; }
.qms-cart-product__badge--standard { color: #111; background: #7799b3; }
.qms-cart-product__badge--extra { color: #171717; background: #ffb800; }
.qms-cart-product__badge--premium { background: #1e1e1e; }
.qms-cart-product__badge--premium-plus { background: #7b0053; }
.qms-cart-product__badge--bio-eko { background: #2f7d32; }

.qms-page--cart .qms-cart-table .variation { margin: 0; color: #716a6d; font-size: 10px; line-height: 1.4; }
.qms-page--cart .qms-cart-table .variation dt,
.qms-page--cart .qms-cart-table .variation dd { display: inline; float: none; margin: 0; }
.qms-page--cart .qms-cart-table .variation dd::after { content: ""; display: block; }
.qms-page--cart .qms-cart-table .variation p { display: inline; margin: 0; }

.qms-page--cart .qms-cart-table .product-price,
.qms-page--cart .qms-cart-table .product-subtotal { color: #222; font-size: 13px; font-weight: 800; white-space: nowrap; }
.qms-page--cart .qms-cart-table .product-price { width: 105px; }
.qms-page--cart .qms-cart-table .product-price small { display: block; margin-top: 3px; color: #6f686b; font-size: 9px; font-weight: 500; }
.qms-page--cart .qms-cart-table .product-subtotal { width: 105px; text-align: right; }
.qms-page--cart .qms-cart-table .product-quantity { width: 126px; }

.qms-cart-quantity {
	display: grid;
	grid-template-columns: 34px 44px 34px;
	align-items: stretch;
	overflow: hidden;
	width: 112px;
	height: 40px;
	border: 1px solid #d9d2d5;
	border-radius: 8px;
	background: #fff;
}

.qms-cart-quantity button {
	padding: 0;
	border: 0;
	color: #252525;
	background: #f8f6f7;
	font: inherit;
	font-size: 18px;
	cursor: pointer;
}

.qms-cart-quantity .quantity { display: contents; }
.qms-page--cart .qms-cart-quantity input.qty {
	width: 44px;
	min-height: 38px;
	padding: 0;
	border: 0;
	border-inline: 1px solid #e4dfe1;
	border-radius: 0;
	color: #222;
	background: #fff;
	font: inherit;
	font-size: 13px;
	font-weight: 700;
	text-align: center;
	-moz-appearance: textfield;
}

.qms-page--cart .qms-cart-quantity input.qty::-webkit-inner-spin-button,
.qms-page--cart .qms-cart-quantity input.qty::-webkit-outer-spin-button { margin: 0; -webkit-appearance: none; }

.qms-page--cart .qms-cart-actions-row td.actions { padding: 17px 18px !important; border-bottom: 0 !important; }
.qms-cart-actions { display: flex; align-items: center; justify-content: flex-end; gap: 18px; }
.qms-cart-actions__right { display: flex; align-items: center; justify-content: flex-end; gap: 13px; }
.qms-cart-continue,
.qms-cart-summary__continue { color: #6a6266; font-size: 12px; font-weight: 700; text-decoration: none; }

.qms-cart-coupon { position: relative; }
.qms-cart-coupon summary {
	color: #c4005f;
	font-size: 12px;
	font-weight: 750;
	cursor: pointer;
	list-style-position: outside;
}

.qms-cart-coupon .coupon {
	position: absolute;
	top: calc(100% + 10px);
	left: 0;
	z-index: 10;
	display: grid;
	grid-template-columns: minmax(150px, 1fr) auto;
	gap: 8px;
	width: min(410px, calc(100vw - 40px));
	padding: 14px;
	border: 1px solid #e5dce0;
	border-radius: 10px;
	background: #fff;
	box-shadow: 0 16px 34px rgba(36, 17, 26, .14);
}

.qms-cart-coupon .coupon label { grid-column: 1 / -1; color: #5c5558; font-size: 11px; font-weight: 700; }
.qms-cart-coupon .coupon input {
	min-width: 0;
	min-height: 42px;
	padding: 9px 12px;
	border: 1px solid #d8d1d4;
	border-radius: 7px;
	font: inherit;
	font-size: 12px;
}

.qms-page--cart button.button,
.qms-page--cart a.button,
.qms-page--checkout button.button,
.qms-page--checkout a.button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 10px 18px;
	border: 1px solid var(--qms-pink, #c4005f);
	border-radius: 8px;
	color: #fff;
	background: var(--qms-pink, #c4005f);
	font-family: inherit;
	font-size: 12px;
	font-weight: 750;
	line-height: 1.2;
	cursor: pointer;
	text-decoration: none;
}

.qms-page--cart .qms-cart-update { min-height: 40px; padding-block: 8px; color: #c4005f; background: #fff; }
.qms-page--cart button.button:disabled { opacity: .45; }
.qms-cart-update-status { min-height: 0; margin: 7px 0 0; color: #756d71; font-size: 10px; text-align: right; }
.qms-cart-page__form[aria-busy="true"] { opacity: .65; pointer-events: none; }

.qms-page--cart .cart-collaterals .qms-cart-summary {
	position: sticky;
	top: 150px;
	grid-column: 2;
	grid-row: 1;
	float: none !important;
	box-sizing: border-box;
	width: 100% !important;
	margin: 0;
	padding: 25px;
	border: 1px solid #e8e3e5;
	border-radius: 15px;
	background: #fff;
	box-shadow: 0 14px 38px rgba(42, 15, 28, .07);
}

.qms-page--cart .qms-cart-summary h2 { margin: 0 0 18px; color: #222; font-size: 21px; font-weight: 850; line-height: 1.2; }
.qms-page--cart .qms-cart-summary .qms-free-shipping { margin-bottom: 12px; }
.qms-page--cart .qms-cart-summary .qms-summary-coupon { margin-bottom: 3px; }
.qms-page--cart .qms-cart-summary table,
.qms-page--cart .qms-cart-summary table tbody { display: block; width: 100%; margin: 0; border: 0; border-collapse: collapse; border-radius: 0; background: transparent; }
.qms-page--cart .qms-cart-summary table tr { display: grid; grid-template-columns: minmax(0, 1fr) auto; width: 100%; }
.qms-page--cart .qms-cart-summary table th,
.qms-page--cart .qms-cart-summary table td {
	padding: 11px 0;
	border: 0;
	border-bottom: 1px solid #ebe5e8;
	color: #5f585b;
	font-size: 12px;
	line-height: 1.4;
	vertical-align: top;
}

.qms-page--cart .qms-cart-summary table th { width: 42%; font-weight: 650; text-align: left; }
.qms-page--cart .qms-cart-summary table td { color: #222; font-weight: 750; text-align: right; }
.qms-page--cart .qms-cart-summary .cart-discount th,
.qms-page--cart .qms-cart-summary .cart-discount td,
.qms-page--cart .qms-cart-summary .qms-volume-discount th,
.qms-page--cart .qms-cart-summary .qms-volume-discount td { color: #2f7d32; }
.qms-page--cart .qms-cart-summary .qms-cart-tax-summary th,
.qms-page--cart .qms-cart-summary .qms-cart-tax-summary td { color: #7a7276; font-size: 10px; }
.qms-page--cart .qms-cart-summary .qms-free-shipping-row th,
.qms-page--cart .qms-cart-summary .qms-free-shipping-row td { color: #23713a; }
.qms-page--cart .qms-cart-summary .woocommerce-remove-coupon { display: block; margin-top: 3px; color: #81797d; font-size: 9px; font-weight: 600; }
.qms-page--cart .qms-cart-summary .order-total th,
.qms-page--cart .qms-cart-summary .order-total td { padding-block: 17px 8px; border-bottom: 0; color: #1e1e1e; font-size: 17px; font-weight: 850; }
.qms-page--cart .qms-cart-summary .order-total td .amount { color: #c4005f; font-size: 22px; }
.qms-page--cart .qms-cart-summary .order-total small { display: block; margin-top: 5px; color: #5f585b !important; font-size: 9px; font-weight: 500; }
.qms-page--cart .qms-cart-summary .order-total small .amount { color: inherit !important; font-size: inherit; }

.qms-page--cart .qms-cart-summary .woocommerce-shipping-totals { display: block; width: 100%; }
.qms-page--cart .qms-cart-summary .woocommerce-shipping-totals th,
.qms-page--cart .qms-cart-summary .woocommerce-shipping-totals td { display: block; width: 100% !important; text-align: left; }
.qms-page--cart .qms-cart-summary .woocommerce-shipping-totals th { padding-bottom: 7px; border-bottom: 0; }
.qms-page--cart .qms-cart-summary .woocommerce-shipping-totals td { padding-top: 0; }
.qms-page--cart .qms-cart-summary .woocommerce-shipping-methods { display: grid; gap: 8px; width: 100%; margin: 0; padding: 0; list-style: none; }
.qms-page--cart .qms-cart-summary .woocommerce-shipping-methods li {
	position: relative;
	display: grid;
	grid-template-columns: 17px minmax(0, 1fr);
	align-items: start;
	gap: 8px;
	margin: 0;
	padding: 11px;
	border: 1px solid #e7e2e4;
	border-radius: 9px;
	background: #fff;
}

.qms-page--cart .qms-cart-summary .woocommerce-shipping-methods li:has(input:checked) { border-color: #ff0a7a; background: #fff8fb; box-shadow: 0 0 0 1px rgba(255, 10, 122, .07); }
.qms-page--cart .qms-cart-summary .woocommerce-shipping-methods input { margin-top: 2px; }
.qms-page--cart .qms-cart-summary .woocommerce-shipping-methods label { font-size: 10px; font-weight: 750; line-height: 1.45; cursor: pointer; }
.qms-page--cart .qms-cart-summary .woocommerce-shipping-methods img { grid-column: 2; max-width: 55px; max-height: 27px; margin-top: 5px; object-fit: contain; }
.qms-page--cart .qms-cart-summary .woocommerce-shipping-destination,
.qms-page--cart .qms-cart-summary .woocommerce-shipping-calculator { color: #736b6f; font-size: 10px; line-height: 1.45; }
.qms-page--cart .qms-cart-summary .shipping-calculator-button { color: #c4005f; font-weight: 700; }

.qms-page--cart .wc-proceed-to-checkout { display: grid; gap: 12px; padding: 18px 0 0; }
.qms-page--cart .wc-proceed-to-checkout a.checkout-button {
	display: flex;
	width: 100%;
	min-height: 56px;
	margin: 0;
	border-radius: 9px;
	background: #c4005f;
	border-color: #c4005f;
	font-size: 14px;
	font-weight: 800;
	text-align: center;
	text-transform: uppercase;
}
.qms-cart-summary__continue { justify-self: center; padding: 3px; }
.qms-cart-summary__trust { display: flex; justify-content: center; gap: 16px; margin-top: 17px; padding-top: 15px; border-top: 1px solid #ece7e9; color: #777075; font-size: 9px; font-weight: 650; }
.qms-cart-summary__trust span::before { content: "✓"; margin-right: 5px; color: #2f7d32; font-weight: 900; }

.qms-cart-cross-sells { grid-column: 1; grid-row: 2; min-width: 0; margin-top: 8px; }
.qms-cart-cross-sells > h2 { margin: 0 0 22px; color: #222; font-size: 22px; font-weight: 850; }
.qms-cart-cross-sells.qms-product-cards ul.products { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.qms-cart-cross-sells.qms-product-cards ul.products li.product a img { height: 180px; }
.qms-page--cart .cart-empty,
.qms-page--cart .return-to-shop { text-align: center; }

@media (hover: hover) and (pointer: fine) {
	.qms-page--cart .qms-cart-table .product-remove a:hover { color: #c4005f !important; background: #fff0f6; }
	.qms-page--cart .qms-cart-update:hover { color: #fff; background: #c4005f; }
	.qms-page--cart .wc-proceed-to-checkout a.checkout-button:hover { background: #9f004d; border-color: #9f004d; transform: translateY(-1px); box-shadow: 0 10px 22px rgba(196, 0, 95, .2); }
}

@media (max-width: 1080px) {
	.qms-cart-page { grid-template-columns: minmax(0, 1.45fr) minmax(315px, .8fr); gap: 24px; }
	.qms-page--cart .qms-cart-table .product-thumbnail { width: 84px; }
	.qms-page--cart .qms-cart-table .product-thumbnail img { width: 72px; height: 72px; }
	.qms-page--cart .qms-cart-table .product-price { display: none; }
}

@media (max-width: 900px) {
	.qms-cart-page { display: flex; flex-direction: column; gap: 28px; }
	.qms-cart-page__form,
	.qms-page--cart .qms-cart-summary,
	.qms-cart-cross-sells { width: 100%; }
	.qms-page--cart .qms-cart-summary { position: static; order: 2; }
	.qms-cart-page__form { order: 1; }
	.qms-cart-cross-sells { order: 3; }
	.qms-cart-page__summary { display: contents; }
}

@media (max-width: 640px) {
	.qms-page { padding: 26px 14px 60px; }
	.qms-floating-cart { right: 13px; top: auto; bottom: 76px; width: 54px; height: 54px; }
	.qms-cart-drawer { width: 100vw; }
	.qms-cart-drawer__header { min-height: 74px; padding: 14px 16px; }
	.qms-cart-drawer__items, .qms-cart-drawer__summary { padding-inline: 16px; }
	.qms-cart-drawer__actions { padding: 10px 16px max(16px, env(safe-area-inset-bottom)); }
	.qms-cart-drawer__item { grid-template-columns: 72px minmax(0, 1fr); gap: 11px; }
	.qms-cart-drawer__thumb { width: 72px; }
	.qms-cart-drawer__item-bottom { align-items: flex-end; flex-direction: column-reverse; }
	.qms-free-shipping--drawer { margin-inline: 16px; }
	.qms-free-shipping__copy { align-items: flex-start; flex-direction: column; gap: 2px; }
	.qms-summary-coupon__form { grid-template-columns: 1fr; }
	.qms-summary-coupon__form .button { width: 100%; }
	.qms-cart-toast { top: 88px; right: 16px; }
	.qms-page--cart { padding-top: 24px; }
	.qms-cart-table caption { padding-bottom: 18px; }
	.qms-cart-table caption h1 { font-size: 27px; }
	.qms-page--cart table.shop_table.qms-cart-table { border: 0; box-shadow: none; background: transparent; }
	.qms-page--cart table.shop_table.qms-cart-table thead { display: none; }
	.qms-page--cart table.shop_table.qms-cart-table,
	.qms-page--cart table.shop_table.qms-cart-table tbody,
	.qms-page--cart table.shop_table.qms-cart-table tr,
	.qms-page--cart table.shop_table.qms-cart-table td { display: block; width: 100%; }
	.qms-page--cart table.shop_table.qms-cart-table tr.cart_item {
		position: relative;
		display: grid;
		grid-template-columns: 86px minmax(0, 1fr);
		gap: 0 13px;
		margin-bottom: 12px;
		padding: 14px;
		border: 1px solid #e9e4e6;
		border-radius: 12px;
		background: #fff;
		box-shadow: 0 8px 22px rgba(47, 21, 33, .04);
	}
	.qms-page--cart table.shop_table.qms-cart-table tr.cart_item td { padding: 0; border: 0; text-align: left !important; }
	.qms-page--cart table.shop_table.qms-cart-table tr.cart_item td::before { display: none !important; content: none !important; }
	.qms-page--cart .qms-cart-table .product-remove { position: absolute; top: 9px; right: 9px; z-index: 2; width: auto; }
	.qms-page--cart .qms-cart-table .product-thumbnail { display: block !important; grid-column: 1; grid-row: 1 / span 4; padding: 0; }
	.qms-page--cart .qms-cart-table .product-thumbnail img { width: 86px; height: 86px; }
	.qms-page--cart .qms-cart-table .product-name { grid-column: 2; min-width: 0; padding-right: 32px !important; }
	.qms-page--cart .qms-cart-table .product-price { display: block; grid-column: 2; margin-top: 8px; }
	.qms-page--cart .qms-cart-table .product-price small { display: inline; }
	.qms-page--cart .qms-cart-table .product-quantity { grid-column: 2; margin-top: 12px; }
	.qms-page--cart .qms-cart-table .product-subtotal { grid-column: 2; margin-top: 11px; padding-top: 10px !important; border-top: 1px solid #eee9eb !important; text-align: right !important; }
	.qms-page--cart .qms-cart-table .product-subtotal::before { content: attr(data-title); float: left; color: #746d70; font-size: 10px; font-weight: 650; text-transform: uppercase; }
	.qms-page--cart .qms-cart-actions-row { display: block !important; }
	.qms-page--cart .qms-cart-actions-row td.actions { padding: 15px 0 0 !important; }
	.qms-cart-actions { align-items: stretch; flex-direction: column; }
	.qms-cart-actions__right { align-items: stretch; flex-direction: column-reverse; }
	.qms-cart-continue { align-self: center; padding: 5px; }
	.qms-page--cart .qms-cart-update { width: 100%; }
	.qms-cart-coupon { width: 100%; }
	.qms-cart-coupon summary { display: flex; align-items: center; justify-content: space-between; min-height: 44px; padding: 11px 13px; border: 1px solid #e5dce0; border-radius: 8px; }
	.qms-cart-coupon .coupon { position: static; grid-template-columns: 1fr; width: 100%; margin-top: 8px; box-shadow: none; }
	.qms-cart-coupon .coupon button { width: 100%; }
	.qms-cart-update-status { text-align: center; }
	.qms-page--cart .qms-cart-summary { padding: 20px 16px; border-radius: 13px; }
	.qms-page--cart .qms-cart-summary h2 { font-size: 20px; }
	.qms-page--cart .qms-cart-summary .woocommerce-shipping-methods li { padding: 12px 10px; }
	.qms-page--cart .wc-proceed-to-checkout a.checkout-button { min-height: 56px; font-size: 13px; }
	.qms-cart-summary__trust { align-items: center; flex-direction: column; gap: 6px; }
	.qms-cart-cross-sells.qms-product-cards ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
	.qms-cart-cross-sells.qms-product-cards ul.products li.product a img { height: 145px; }
}

@media (prefers-reduced-motion: reduce) {
	.qms-floating-cart, .qms-cart-drawer, .qms-cart-drawer__overlay, .qms-cart-toast,
	.qms-page--cart *, .qms-page--cart *::before, .qms-page--cart *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; }
}
