/* =========================================================
   Kvapų studija – Krepšelis & Apmokėjimas (premium)
   ========================================================= */
body.ksc-page {
	--k-ivory: #F7F4EF;
	--k-paper: #FFFDF9;
	--k-sand: #EDE8E1;
	--k-sand-2: #E4DDD3;
	--k-ink: #15120F;
	--k-ink-2: #2E2822;
	--k-muted: #6E655B;
	--k-muted-2: #9A9086;
	--k-gold: #A5805A;
	--k-gold-2: #C9A87E;
	--k-gold-3: #E4CFAF;
	--k-gold-text: #83623F;
	--k-line: rgba(21, 18, 15, .10);
	--k-line-2: rgba(21, 18, 15, .18);
	--k-serif: "League Spartan", "Futura", "Avenir Next", system-ui, sans-serif;
	--k-sans: "Manrope", system-ui, -apple-system, "Segoe UI", sans-serif;
	--k-r: 20px;
	--k-r-sm: 12px;
	--k-ease: cubic-bezier(.22, 1, .36, 1);
	--k-shadow: 0 1px 2px rgba(21, 18, 15, .04), 0 12px 40px -18px rgba(21, 18, 15, .18);
	background: var(--k-ivory);
}
body.ksc-page .page_content_wrap,
body.ksc-page .page_wrap { background: var(--k-ivory); }
body.ksc-page .page_content_wrap { padding-top: clamp(28px, 4vw, 56px); padding-bottom: clamp(56px, 7vw, 110px); }

body.ksc-page .woocommerce,
body.ksc-page .woocommerce input,
body.ksc-page .woocommerce select,
body.ksc-page .woocommerce textarea,
body.ksc-page .woocommerce button,
body.ksc-page .select2-container { font-family: var(--k-sans); }
body.ksc-page .woocommerce { color: var(--k-ink); font-size: 15px; line-height: 1.55; }
body.ksc-page .woocommerce h2,
body.ksc-page .woocommerce h3 { font-family: var(--k-serif); font-weight: 300; letter-spacing: -.01em; color: var(--k-ink); }

/* ---------- hero (theme title band) ---------- */
body.ksc-page .elementor-element-d7574ea {
	position: relative; min-height: 0 !important; overflow: hidden;
	background-color: var(--k-sand) !important; background-size: cover !important; background-position: center 62% !important; background-repeat: no-repeat !important;
}
body.ksc-page .elementor-element-d7574ea > .elementor-background-overlay {
	opacity: 1 !important; background-color: transparent !important;
	background-image:
		radial-gradient(ellipse 42% 70% at 50% 52%, rgba(247, 244, 239, .78) 0%, rgba(247, 244, 239, .35) 55%, rgba(247, 244, 239, 0) 100%),
		linear-gradient(180deg, var(--k-ivory) 0%, rgba(247, 244, 239, 0) 22%, rgba(247, 244, 239, 0) 78%, var(--k-ivory) 100%) !important;
}
body.ksc-page .elementor-element-d7574ea::after { content: none !important; }
body.ksc-page .elementor-element-d7574ea > .elementor-container {
	position: relative; z-index: 2; min-height: clamp(260px, 27vw, 380px) !important; align-items: center;
}
body.ksc-page .elementor-element-d7574ea .sc_layouts_title_content { display: flex; flex-direction: column; align-items: center; gap: 0; }
body.ksc-page .sc_layouts_title_caption {
	font-family: var(--k-serif) !important; font-weight: 300 !important; letter-spacing: -.02em !important; line-height: 1 !important;
	font-size: clamp(40px, 5.6vw, 72px) !important; color: var(--k-ink) !important; margin: 0 !important;
}
body.ksc-page .sc_layouts_title_title::before {
	content: "Kvapų studija"; display: block; margin-bottom: 16px;
	font: 500 11px/1 var(--k-sans); letter-spacing: .36em; text-transform: uppercase; color: var(--k-gold-text);
}
body.ksc-page .sc_layouts_title_title::after {
	content: ""; display: block; width: 46px; height: 1px; margin: 22px auto 0; background: var(--k-gold);
}

/* steps inside hero */
body.ksc-page.ksc-steps-hero .sc_layouts_title_content > .woocommerce_status_bar {
	display: inline-flex !important; margin: 24px 0 0 !important; padding: 9px 20px !important;
	border: 1px solid rgba(21, 18, 15, .08) !important; border-radius: 999px !important;
	background: rgba(255, 253, 249, .72) !important; -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px);
	box-shadow: 0 10px 30px -18px rgba(21, 18, 15, .35);
}
body.ksc-page.ksc-steps-hero .sc_layouts_title_content > .woocommerce_status_bar > div { font-size: 11px !important; }
body.ksc-page.ksc-steps-hero .sc_layouts_title_content > .woocommerce_status_bar .num { width: 26px !important; height: 26px !important; font-size: 11px !important; }

/* benefits strip */
.ksc-benefits {
	display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); max-width: 1040px; margin: 0 auto clamp(22px, 3vw, 34px) !important; padding: 0 !important;
	list-style: none; border-top: 1px solid var(--k-line); border-bottom: 1px solid var(--k-line);
}
.ksc-benefits li {
	display: flex; align-items: center; justify-content: center; gap: 12px; margin: 0 !important; padding: 16px 18px !important;
	font: 400 13.5px/1.35 var(--k-sans); color: var(--k-muted); text-align: left;
}
.ksc-benefits li::before { display: none !important; }
.ksc-benefits li + li { border-left: 1px solid var(--k-line); }
.ksc-benefits b { display: block; font-weight: 600; color: var(--k-ink); }
.ksc-bi { flex: 0 0 auto; display: grid; place-items: center; width: 38px; height: 38px; border-radius: 50%; background: var(--k-paper); border: 1px solid var(--k-gold-3); }
.ksc-bi svg { width: 18px; height: 18px; fill: none; stroke: var(--k-gold-text); stroke-width: 1.4; stroke-linecap: round; stroke-linejoin: round; }
body.woocommerce-cart.ksc-page .woocommerce > .ksc-benefits { width: 100%; justify-self: center; }

/* coupon toggle – quieter */
body.ksc-page .woocommerce-form-coupon-toggle .woocommerce-info {
	border: 0 !important; background: transparent !important; padding: 0 !important; margin: 0 auto 22px !important; font-size: 13.5px !important; color: var(--k-muted) !important;
}

/* gift block on checkout – full width, horizontal */
body.ksc-page form.checkout > .kvs-gift--checkout { grid-column: 1 / -1 !important; grid-row: 2; margin: 0 0 24px !important; }
@media (min-width: 768px) {
	body.ksc-page form.checkout > .kvs-gift--checkout { display: flex !important; align-items: center !important; gap: 22px !important; padding: 22px 28px !important; }
	body.ksc-page .kvs-gift--checkout .kvs-gift__body { flex: 1 1 auto; display: grid !important; grid-template-columns: minmax(0, 1fr) minmax(260px, 380px); column-gap: 36px; align-items: center; }
	body.ksc-page .kvs-gift--checkout .kvs-gift__body > * { grid-column: 1; }
	body.ksc-page .kvs-gift--checkout .kvs-gift__body > .kvs-gift__form { grid-column: 2; grid-row: 1 / span 4; margin: 0 !important; }
	body.ksc-page .kvs-gift--checkout .kvs-gift__title { margin-bottom: 0 !important; }
}

/* ---------- ribbon ---------- */
.ksc-ribbon {
	display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 4px 8px;
	margin: 0 auto 26px; padding: 12px 22px; max-width: 920px;
	border: 1px solid var(--k-gold-3); border-radius: 999px;
	background: linear-gradient(90deg, rgba(228, 207, 175, .22), rgba(255, 253, 249, .9), rgba(228, 207, 175, .22));
	font-size: 13.5px; color: var(--k-ink-2); text-align: center;
}
.ksc-ribbon b { font-weight: 600; color: var(--k-ink); }
.ksc-ribbon > span:first-child { color: var(--k-gold); }
.ksc-ribbon .ksc-dot { color: var(--k-gold); margin: 0 4px; }

/* ---------- step bar ---------- */
body.ksc-page .woocommerce_status_bar {
	display: flex; justify-content: center; align-items: center; gap: clamp(10px, 3vw, 36px);
	margin: 0 0 clamp(28px, 4vw, 48px) !important; padding: 0 !important; border: 0 !important; background: none !important;
}
body.ksc-page .woocommerce_status_bar > div {
	display: flex; align-items: center; gap: 10px; position: relative;
	font: 500 12px/1 var(--k-sans) !important; letter-spacing: .14em; text-transform: uppercase;
	color: var(--k-muted-2) !important; padding: 0 !important; margin: 0 !important; background: none !important;
}
body.ksc-page .woocommerce_status_bar > div::before,
body.ksc-page .woocommerce_status_bar > div::after { display: none !important; }
body.ksc-page .woocommerce_status_bar > div + div { padding-left: clamp(10px, 3vw, 36px) !important; }
body.ksc-page .woocommerce_status_bar > div + div::before {
	content: "" !important; display: block !important; position: absolute; left: calc(-1 * clamp(10px, 3vw, 36px) / 2); top: 50%;
	width: clamp(14px, 3vw, 36px); height: 1px; background: var(--k-line-2); border: 0 !important; transform: none !important;
}
body.ksc-page .woocommerce_status_bar .num {
	display: inline-grid !important; place-items: center; width: 30px !important; height: 30px !important; line-height: 1 !important;
	margin: 0 !important; border-radius: 50%; border: 1px solid var(--k-line-2) !important;
	background: transparent !important; color: var(--k-muted) !important; font: 500 12px/1 var(--k-sans) !important; letter-spacing: 0;
}
body.ksc-page .woocommerce_status_bar > div.active { color: var(--k-ink) !important; }
body.ksc-page .woocommerce_status_bar > div.active .num { background: var(--k-ink) !important; border-color: var(--k-ink) !important; color: var(--k-gold-3) !important; }

/* ---------- notices & coupon toggle ---------- */
body.ksc-page .woocommerce-info,
body.ksc-page .woocommerce-message,
body.ksc-page .woocommerce-error {
	border: 1px solid var(--k-line) !important; border-radius: var(--k-r-sm) !important; background: var(--k-paper) !important;
	color: var(--k-ink-2) !important; box-shadow: none !important; font-size: 14px;
}
body.ksc-page .woocommerce-error { border-color: rgba(176, 58, 46, .35) !important; }
body.ksc-page .woocommerce-info::before,
body.ksc-page .woocommerce-message::before { color: var(--k-gold) !important; }
body.ksc-page .woocommerce-form-coupon-toggle .woocommerce-info {
	display: flex; justify-content: center; gap: 6px; max-width: 520px; margin: 0 auto 18px !important;
	padding: 12px 18px !important; border-style: dashed !important; border-color: var(--k-gold-3) !important; background: transparent !important; text-align: center;
}
body.ksc-page .woocommerce-form-coupon-toggle .woocommerce-info::before { display: none; }
body.ksc-page .woocommerce-form-coupon-toggle a { color: var(--k-gold-text) !important; text-decoration: underline; text-underline-offset: 3px; }
body.ksc-page form.checkout_coupon {
	max-width: 520px; margin: 0 auto 28px !important; padding: 18px !important; border: 1px solid var(--k-line) !important;
	border-radius: var(--k-r) !important; background: var(--k-paper);
}

/* ---------- inputs ---------- */
body.ksc-page .woocommerce form .form-row { margin: 0 0 18px; padding: 0; }
body.ksc-page .woocommerce form .form-row label,
body.ksc-page .ksc-terminal-label {
	display: block; margin: 0 0 8px; font: 500 12px/1.3 var(--k-sans) !important; letter-spacing: .08em; text-transform: uppercase; color: var(--k-muted) !important;
}
body.ksc-page .woocommerce form .form-row label .optional { text-transform: none; letter-spacing: 0; color: var(--k-muted-2); font-weight: 400; }
body.ksc-page .woocommerce form .form-row .required,
body.ksc-page .ksc-terminal-label .required { color: var(--k-gold) !important; text-decoration: none; border: 0; }
body.ksc-page .woocommerce form .input-text,
body.ksc-page .woocommerce form select,
body.ksc-page .woocommerce form textarea,
body.ksc-page .woocommerce .coupon .input-text,
body.ksc-page .ksc-terminal .select2-selection--single {
	width: 100%; height: 54px; padding: 0 18px !important; margin: 0;
	border: 1px solid var(--k-line-2) !important; border-radius: var(--k-r-sm) !important;
	background: #fff !important; color: var(--k-ink) !important; box-shadow: none !important;
	font: 400 15px/1.2 var(--k-sans) !important; transition: border-color .25s var(--k-ease), box-shadow .25s var(--k-ease);
}
body.ksc-page .woocommerce form textarea { height: 110px; padding: 15px 18px !important; line-height: 1.5 !important; resize: vertical; }
body.ksc-page .woocommerce form .input-text::placeholder,
body.ksc-page .woocommerce form textarea::placeholder { color: #B3AAA0; opacity: 1; }
body.ksc-page .woocommerce form .input-text:focus,
body.ksc-page .woocommerce form textarea:focus,
body.ksc-page .ksc-terminal .select2-container--open .select2-selection--single {
	outline: none; border-color: var(--k-gold) !important; box-shadow: 0 0 0 4px rgba(201, 168, 126, .18) !important;
}
body.ksc-page .woocommerce form .form-row.woocommerce-invalid .input-text { border-color: #C0574A !important; }
body.ksc-page .woocommerce form .form-row.woocommerce-validated .input-text { border-color: var(--k-line-2) !important; }
body.ksc-page .woocommerce form .form-row .description,
body.ksc-page .woocommerce-input-wrapper .description {
	display: block !important; position: static !important; margin: 7px 2px 0; padding: 0 !important; background: none !important;
	color: var(--k-muted-2) !important; font-size: 12.5px; line-height: 1.4;
}
body.ksc-page .woocommerce-input-wrapper .description::before { display: none !important; }
body.ksc-page .ksc-hide,
body.ksc-page #billing_country_field,
body.ksc-page #billing_state_field,
body.ksc-page #billing_postcode_field,
body.ksc-page .woocommerce-shipping-fields { display: none !important; }
body.ksc-page:not(.ksc-mode-courier) .ksc-addr { display: none !important; }

/* ---------- buttons ---------- */
body.ksc-page .woocommerce a.button,
body.ksc-page .woocommerce button.button,
body.ksc-page .woocommerce input.button,
body.ksc-page .woocommerce #place_order,
body.ksc-page .woocommerce .checkout-button {
	display: inline-flex; align-items: center; justify-content: center; gap: 10px;
	height: 52px; padding: 0 26px !important; border-radius: 999px !important; border: 1px solid var(--k-ink) !important;
	background: var(--k-ink) !important; color: var(--k-ivory) !important; box-shadow: none !important;
	font: 500 14px/1 var(--k-sans) !important; letter-spacing: .04em; text-transform: none;
	transition: background .35s var(--k-ease), color .35s var(--k-ease), border-color .35s var(--k-ease), transform .35s var(--k-ease);
}
body.ksc-page .woocommerce a.button:hover,
body.ksc-page .woocommerce button.button:hover,
body.ksc-page .woocommerce input.button:hover,
body.ksc-page .woocommerce #place_order:hover,
body.ksc-page .woocommerce .checkout-button:hover {
	background: var(--k-gold) !important; border-color: var(--k-gold) !important; color: #fff !important; transform: translateY(-1px);
}
body.ksc-page .woocommerce button.button:disabled,
body.ksc-page .woocommerce button.button:disabled[disabled] { opacity: .35 !important; background: var(--k-ink) !important; color: var(--k-ivory) !important; transform: none; }
body.ksc-page .woocommerce .cart .actions .button[name="update_cart"],
body.ksc-page .woocommerce .ksc-btn-ghost,
body.ksc-page .woocommerce .cart .actions a.button {
	background: transparent !important; color: var(--k-ink) !important; border-color: var(--k-line-2) !important;
}
body.ksc-page .woocommerce .cart .actions .button[name="update_cart"]:hover:not(:disabled),
body.ksc-page .woocommerce .cart .actions a.button:hover { background: var(--k-ink) !important; color: var(--k-ivory) !important; border-color: var(--k-ink) !important; }

/* =========================================================
   CART
   ========================================================= */
body.woocommerce-cart.ksc-page .woocommerce { display: grid; grid-template-columns: minmax(0, 1fr) minmax(320px, 400px); gap: 0 clamp(24px, 3.5vw, 48px); align-items: start; }
body.woocommerce-cart.ksc-page .woocommerce > .ksc-ribbon { justify-self: center; }
body.woocommerce-cart.ksc-page .woocommerce > * { grid-column: 1 / -1; }
body.woocommerce-cart.ksc-page .woocommerce > .woocommerce-cart-form { grid-column: 1; }
body.woocommerce-cart.ksc-page .woocommerce > .cart-collaterals { grid-column: 2; position: sticky; top: 110px; width: auto; float: none; margin: 0; }
body.woocommerce-cart.ksc-page .cart-collaterals .cart_totals { width: 100% !important; float: none !important; }
body.woocommerce-cart.ksc-page .cart-collaterals .cross-sells { display: none; }

body.ksc-page .kvs-gift { margin-bottom: 22px !important; border-radius: var(--k-r) !important; }

body.ksc-page table.shop_table.cart {
	border: 1px solid var(--k-line) !important; border-radius: var(--k-r) !important; border-collapse: separate !important; border-spacing: 0;
	background: var(--k-paper); overflow: hidden; box-shadow: var(--k-shadow); margin: 0 0 22px !important;
}
body.ksc-page table.shop_table.cart thead th {
	background: transparent !important; border: 0 !important; border-bottom: 1px solid var(--k-line) !important; padding: 18px 20px !important;
	font: 500 11px/1 var(--k-sans) !important; letter-spacing: .16em; text-transform: uppercase; color: var(--k-muted) !important;
}
body.ksc-page table.shop_table.cart td {
	border: 0 !important; border-top: 1px solid var(--k-line) !important; padding: 22px 20px !important; vertical-align: middle; background: transparent !important;
}
body.ksc-page table.shop_table.cart tbody tr:first-child td { border-top: 0 !important; }
body.ksc-page table.shop_table.cart td.product-thumbnail { width: 112px; }
body.ksc-page table.shop_table.cart td.product-thumbnail a { display: block; }
body.ksc-page table.shop_table.cart td.product-thumbnail img {
	width: 88px !important; height: 104px !important; max-width: none; object-fit: contain; padding: 8px;
	border-radius: 14px; background: linear-gradient(160deg, #F4EFE8, #E9E2D8); box-shadow: none;
}
body.ksc-page table.shop_table.cart td.product-name a {
	font-family: var(--k-serif); font-weight: 400; font-size: 19px; line-height: 1.2; letter-spacing: -.005em; color: var(--k-ink) !important; text-decoration: none;
}
body.ksc-page table.shop_table.cart td.product-name a:hover { color: var(--k-gold-text) !important; }
body.ksc-page table.shop_table.cart td.product-price,
body.ksc-page table.shop_table.cart td.product-subtotal { font-variant-numeric: tabular-nums; color: var(--k-ink-2); white-space: nowrap; }
body.ksc-page table.shop_table.cart td.product-subtotal { font-weight: 600; color: var(--k-ink); }
body.ksc-page table.shop_table.cart td.product-remove a.remove {
	display: inline-grid !important; place-items: center; width: 34px !important; height: 34px !important; border-radius: 50%;
	border: 1px solid var(--k-line) !important; color: var(--k-muted) !important; background: transparent !important; font-size: 18px !important; line-height: 1 !important;
	transition: all .3s var(--k-ease);
}
body.ksc-page table.shop_table.cart td.product-remove a.remove:hover { background: var(--k-ink) !important; color: var(--k-ivory) !important; border-color: var(--k-ink) !important; }
body.ksc-page .woocommerce .quantity { display: inline-flex; }
body.ksc-page .woocommerce .quantity .qty {
	width: 96px !important; height: 44px !important; border-radius: 999px !important; border: 1px solid var(--k-line-2) !important;
	background: #fff !important; text-align: center; font: 500 15px/1 var(--k-sans) !important; padding: 0 28px 0 18px !important; box-shadow: none !important;
}
body.ksc-page table.shop_table.cart td.actions { background: transparent !important; padding: 18px 20px !important; }
body.ksc-page .cart .coupon { display: flex; gap: 10px; align-items: center; }
body.ksc-page .cart .coupon .input-text { height: 52px; min-width: 210px; border-radius: 999px !important; }
body.ksc-page .cart .coupon .button { white-space: nowrap; }

/* cart totals */
body.ksc-page .cart_totals {
	padding: clamp(22px, 3vw, 32px) !important; border: 1px solid var(--k-line); border-radius: var(--k-r); background: var(--k-paper); box-shadow: var(--k-shadow);
}
body.ksc-page .cart_totals > h2 { margin: 0 0 14px !important; font-size: 26px !important; }
body.ksc-page .cart_totals table.shop_table { border: 0 !important; margin: 0 0 6px !important; background: none !important; border-radius: 0 !important; }
body.ksc-page .cart_totals table.shop_table th,
body.ksc-page .cart_totals table.shop_table td {
	border: 0 !important; border-top: 1px solid var(--k-line) !important; background: none !important; padding: 15px 0 !important;
	font: 400 15px/1.4 var(--k-sans) !important; color: var(--k-ink-2) !important; vertical-align: top;
}
body.ksc-page .cart_totals table.shop_table tr:first-child th,
body.ksc-page .cart_totals table.shop_table tr:first-child td { border-top: 0 !important; }
body.ksc-page .cart_totals table.shop_table td { text-align: right; }
body.ksc-page .cart_totals .order-total th,
body.ksc-page .cart_totals .order-total td { padding-top: 20px !important; color: var(--k-ink) !important; }
body.ksc-page .cart_totals .order-total td,
body.ksc-page .cart_totals .order-total td strong,
body.ksc-page .cart_totals .order-total .amount { font: 400 28px/1 var(--k-serif) !important; letter-spacing: -.01em; color: var(--k-ink) !important; }
body.ksc-page .cart_totals .wc-proceed-to-checkout { padding: 14px 0 0 !important; }
body.ksc-page .cart_totals .checkout-button { width: 100%; height: 58px !important; font-size: 15px !important; margin: 0 !important; }
body.ksc-page .cart_totals .checkout-button::after { content: "→"; font-size: 17px; transition: transform .35s var(--k-ease); }
body.ksc-page .cart_totals .checkout-button:hover::after { transform: translateX(4px); }
.ksc-ship-row td small,
.ksc-ship-row th small { display: block; margin-top: 4px; font-size: 12.5px; line-height: 1.4; color: var(--k-muted-2); font-weight: 400; text-transform: none; letter-spacing: 0; }
.ksc-free { color: var(--k-gold-text); font-weight: 600; letter-spacing: .01em; }

.ksc-perks { list-style: none; margin: 18px 0 0 !important; padding: 18px 4px 0 !important; border-top: 1px solid var(--k-line); display: grid; gap: 12px; }
.ksc-perks li { display: flex; gap: 12px; align-items: flex-start; margin: 0 !important; padding: 0 !important; font-size: 13.5px; line-height: 1.45; color: var(--k-muted); }
.ksc-perks li::before { display: none !important; }
.ksc-perks b { color: var(--k-ink); font-weight: 600; }
.ksc-perks .ksc-ico { flex: 0 0 auto; color: var(--k-gold); font-size: 12px; line-height: 1.7; }

/* empty cart */
body.ksc-page .cart-empty.woocommerce-info { max-width: 560px; margin: 10px auto 18px !important; justify-content: center; text-align: center; font: 300 22px/1.3 var(--k-serif) !important; padding: 36px !important; }
body.ksc-page .return-to-shop { text-align: center; }

/* =========================================================
   CHECKOUT
   ========================================================= */
body.ksc-page form.checkout.woocommerce-checkout {
	display: grid; grid-template-columns: minmax(0, 1fr) minmax(340px, 440px); gap: 0 clamp(24px, 4vw, 56px); align-items: start;
}
body.ksc-page form.checkout > * { grid-column: 1; }
body.ksc-page form.checkout.woocommerce-checkout::before,
body.ksc-page form.checkout.woocommerce-checkout::after,
body.woocommerce-cart.ksc-page .woocommerce::before,
body.woocommerce-cart.ksc-page .woocommerce::after,
body.ksc-page #customer_details::before,
body.ksc-page #customer_details::after { display: none !important; content: none !important; }
body.ksc-page form.checkout > .woocommerce-NoticeGroup { grid-column: 1 / -1; grid-row: 1; margin-bottom: 22px; }
body.ksc-page .woocommerce-NoticeGroup .woocommerce-error { text-align: left; padding: 18px 22px 18px 52px !important; }
body.ksc-page form.checkout > .ksc-delivery { grid-row: 3; }
body.ksc-page form.checkout > #customer_details { grid-column: 1; grid-row: 3 / span 3; width: auto !important; float: none !important; margin: 0 !important; padding: 0 !important; box-sizing: border-box; }
body.ksc-page form.checkout > #order_review_heading { grid-column: 2; grid-row: 3; margin: 0 0 14px !important; font-size: 26px !important; float: none !important; width: auto !important; }
body.ksc-page form.checkout > #order_review { grid-column: 2; grid-row: 4; position: sticky; top: 100px; float: none !important; width: auto !important; margin: 0 !important; }
body.ksc-page #customer_details .col-1,
body.ksc-page #customer_details .col-2 { float: none !important; width: 100% !important; max-width: none !important; padding: 0 !important; margin: 0 !important; }

/* panels */
.ksc-delivery,
body.ksc-page .woocommerce-billing-fields,
body.ksc-page .woocommerce-additional-fields {
	padding: clamp(20px, 3vw, 34px) !important; margin: 0 0 20px !important;
	border: 1px solid var(--k-line); border-radius: var(--k-r); background: var(--k-paper); box-shadow: var(--k-shadow);
}
.ksc-sec-head { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; margin-bottom: 20px; }
.ksc-delivery h3,
body.ksc-page .woocommerce-billing-fields > h3,
body.ksc-page .woocommerce-additional-fields > h3 {
	display: flex; align-items: baseline; gap: 12px; margin: 0 !important; font-size: clamp(22px, 2.4vw, 28px) !important; line-height: 1.1 !important;
}
body.ksc-page .woocommerce-billing-fields > h3,
body.ksc-page .woocommerce-additional-fields > h3 { margin-bottom: 22px !important; }
.ksc-step,
body.ksc-page .woocommerce-billing-fields > h3::before,
body.ksc-page .woocommerce-additional-fields > h3::before {
	font: 500 11px/1 var(--k-sans); letter-spacing: .2em; color: var(--k-gold); transform: translateY(-4px);
}
body.ksc-page .woocommerce-billing-fields > h3::before { content: "02"; }
body.ksc-page .woocommerce-additional-fields > h3::before { content: "03"; }
.ksc-badge {
	display: inline-flex; align-items: center; gap: 8px; padding: 8px 14px; border-radius: 999px;
	background: var(--k-ink); color: var(--k-gold-3); font: 500 11px/1 var(--k-sans); letter-spacing: .14em; text-transform: uppercase;
}
.ksc-badge::before { content: "✦"; font-size: 10px; color: var(--k-gold-2); }

/* delivery cards */
.ksc-cards { display: grid; grid-template-columns: minmax(0, 1fr); gap: 10px; }
.ksc-card {
	position: relative; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 14px;
	min-height: 80px; margin: 0 !important; padding: 14px 18px 14px 14px; cursor: pointer;
	border: 1px solid var(--k-line-2); border-radius: 16px; background: #fff;
	transition: border-color .3s var(--k-ease), box-shadow .3s var(--k-ease), transform .3s var(--k-ease), background .3s var(--k-ease);
	text-transform: none !important; letter-spacing: 0 !important;
}
.ksc-card:hover { border-color: var(--k-gold-2); transform: translateY(-1px); }
.ksc-card.is-active { border-color: var(--k-ink); background: linear-gradient(180deg, #fff, #FBF8F3); box-shadow: 0 0 0 1px var(--k-ink), 0 14px 30px -18px rgba(21, 18, 15, .35); }
.ksc-card input.ksc-proxy { position: absolute !important; top: 0 !important; left: 0 !important; width: 1px !important; height: 1px !important; margin: 0 !important; opacity: 0 !important; pointer-events: none; }
.ksc-card::before, .ksc-card::after, .ksc-card input.ksc-proxy::before, .ksc-card input.ksc-proxy::after { display: none !important; content: none !important; }
.ksc-card input.ksc-proxy:focus-visible ~ .ksc-tick { outline: 2px solid var(--k-gold); outline-offset: 2px; }
.ksc-logo {
	display: grid; place-items: center; width: 52px; height: 52px; border-radius: 14px; flex: 0 0 auto;
	background: var(--k-ivory); border: 1px solid var(--k-line); color: var(--k-ink);
	font: 700 13px/1 var(--k-sans); letter-spacing: -.02em; text-transform: lowercase;
}
.ksc-logo b { font-weight: 800; }
.ksc-logo--dpd b { color: #DC0032; font-size: 16px; }
.ksc-logo--omniva b { color: #F05A22; font-size: 12px; }
.ksc-logo--lpexpress b { display: flex; flex-direction: column; align-items: center; color: #1B2A6B; font-size: 14px; text-transform: none; line-height: .95; }
.ksc-logo--lpexpress i { font-style: normal; font-size: 7.5px; letter-spacing: .06em; color: #1B2A6B; }
.ksc-logo--lpexpress { background: #FFE14D; border-color: rgba(0, 0, 0, .04); }
.ksc-logo--vilnius { background: var(--k-ink); color: var(--k-gold-3); border-color: var(--k-ink); }
.ksc-card-txt { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.ksc-card-name { font: 600 14.5px/1.25 var(--k-sans); color: var(--k-ink); }
.ksc-card-sub { font: 400 12.5px/1.35 var(--k-sans); color: var(--k-muted); }
.ksc-card-price { font-size: 13.5px; white-space: nowrap; padding-right: 36px; }
.ksc-tick {
	position: absolute; top: 50%; right: 18px; margin-top: -10px; width: 20px; height: 20px; box-sizing: border-box; border-radius: 50%;
	border: 1px solid var(--k-line-2); background: #fff; transition: all .3s var(--k-ease);
}
.ksc-card.is-active .ksc-tick { border-color: var(--k-ink); background: var(--k-ink); box-shadow: inset 0 0 0 4px #fff; }

/* terminal picker */
.ksc-terminal { margin-top: 20px; padding: 20px; border-radius: 16px; background: var(--k-ivory); border: 1px solid var(--k-line); position: relative; animation: kscIn .45s var(--k-ease); }
.ksc-terminal[hidden],
.ksc-courier-note[hidden] { display: none !important; }
.ksc-terminal.is-loading::after {
	content: "Kraunamas paštomatų sąrašas…"; position: absolute; inset: 0; display: grid; place-items: center; border-radius: 16px;
	background: rgba(247, 244, 239, .85); font-size: 13px; color: var(--k-muted); letter-spacing: .04em;
}
.ksc-terminal .ksc-hint { margin: 10px 2px 0; font-size: 12.5px; color: var(--k-muted); }
.ksc-terminal .ksc-hint a { color: var(--k-gold-text); text-decoration: underline; text-underline-offset: 3px; }
.ksc-terminal .select2-container { width: 100% !important; }
.ksc-terminal .select2-selection--single { display: flex !important; align-items: center; padding-right: 44px !important; }
.ksc-terminal .select2-selection__rendered { padding: 0 !important; line-height: 1.3 !important; color: var(--k-ink) !important; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ksc-terminal .select2-selection__placeholder { color: #B3AAA0 !important; }
.ksc-terminal .select2-selection__arrow { height: 52px !important; right: 14px !important; }
.ksc-s2 .select2-dropdown { border: 1px solid var(--k-line-2) !important; border-radius: var(--k-r-sm) !important; overflow: hidden; box-shadow: 0 24px 48px -20px rgba(21, 18, 15, .3); background: #fff; }
.ksc-s2 .select2-search--dropdown { padding: 10px !important; }
.ksc-s2 .select2-search__field { height: 44px; border: 1px solid var(--k-line-2) !important; border-radius: 10px !important; padding: 0 14px !important; font: 400 14.5px var(--k-sans) !important; }
.ksc-s2 .select2-results__options { max-height: 300px !important; }
.ksc-s2 .select2-results__group { padding: 12px 14px 6px !important; font: 600 11px/1 var(--k-sans) !important; letter-spacing: .16em; text-transform: uppercase; color: var(--k-gold-text) !important; background: #fff; }
.ksc-s2 .select2-results__option { padding: 10px 14px !important; font-size: 14px; line-height: 1.35; color: var(--k-ink-2); }
.ksc-s2 .select2-results__option--highlighted[aria-selected] { background: var(--k-ivory) !important; color: var(--k-ink) !important; }
.ksc-s2 .select2-results__option[aria-selected="true"] { background: var(--k-sand) !important; color: var(--k-ink) !important; }
.ksc-courier-note { margin-top: 16px; padding: 14px 18px; border-radius: 14px; background: var(--k-ink); color: var(--k-sand); font-size: 13.5px; line-height: 1.5; animation: kscIn .45s var(--k-ease); }
.ksc-courier-note span { color: var(--k-gold-2); margin-right: 6px; }
@keyframes kscIn { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }

/* billing grid */
body.ksc-page .woocommerce-billing-fields__field-wrapper { display: grid; grid-template-columns: 1fr 1fr; gap: 0 16px; }
body.ksc-page .woocommerce-billing-fields__field-wrapper > .form-row { width: auto !important; float: none !important; grid-column: auto; }
body.ksc-page .woocommerce-billing-fields__field-wrapper > .form-row-wide { grid-column: 1 / -1; }
body.ksc-page .woocommerce-billing-fields__field-wrapper::before,
body.ksc-page .woocommerce-billing-fields__field-wrapper::after { display: none !important; }
body.ksc-page .woocommerce-additional-fields .form-row { margin-bottom: 0; }
body.ksc-page.ksc-mode-courier #billing_address_1_field { animation: kscIn .45s var(--k-ease); }

/* order review */
body.ksc-page #order_review {
	padding: clamp(20px, 3vw, 30px) !important; border: 1px solid var(--k-line) !important; border-radius: var(--k-r) !important;
	background: var(--k-paper) !important; box-shadow: var(--k-shadow);
}
body.ksc-page #order_review .shop_table,
body.ksc-page #order_review .shop_table_in,
body.ksc-page #order_review table { border: 0 !important; background: none !important; margin: 0 !important; padding: 0 !important; border-radius: 0 !important; width: 100%; }
body.ksc-page #order_review table th,
body.ksc-page #order_review table td {
	border: 0 !important; border-top: 1px solid var(--k-line) !important; background: none !important; padding: 14px 0 !important;
	font: 400 14.5px/1.4 var(--k-sans) !important; color: var(--k-ink-2) !important; vertical-align: middle;
}
body.ksc-page #order_review table tr:first-child th,
body.ksc-page #order_review table tr:first-child td { border-top: 0 !important; }
body.ksc-page #order_review table td:last-child { text-align: right; white-space: nowrap; font-variant-numeric: tabular-nums; }
body.ksc-page #order_review .cart_item td.product-name { display: flex; align-items: center; gap: 14px; padding-right: 12px !important; white-space: normal; text-align: left; }
.ksc-thumb { position: relative; flex: 0 0 auto; width: 58px; height: 68px; display: grid; place-items: center; border-radius: 12px; background: linear-gradient(160deg, #F4EFE8, #E9E2D8); }
.ksc-thumb img { width: 46px !important; height: 58px !important; object-fit: contain; margin: 0 !important; }
.ksc-item-name { font-weight: 500; color: var(--k-ink); }
body.ksc-page #order_review .product-quantity { font-weight: 400; color: var(--k-muted-2); white-space: nowrap; }
body.ksc-page #order_review tr.woocommerce-shipping-totals { display: none !important; }
body.ksc-page #order_review .order-total th,
body.ksc-page #order_review .order-total td { padding-top: 18px !important; color: var(--k-ink) !important; }
body.ksc-page #order_review .order-total td,
body.ksc-page #order_review .order-total td strong,
body.ksc-page #order_review .order-total .amount { font: 400 28px/1 var(--k-serif) !important; color: var(--k-ink) !important; letter-spacing: -.01em; }

/* payment */
body.ksc-page #payment { background: none !important; border: 0 !important; border-radius: 0 !important; padding: 0 !important; margin: 18px 0 0 !important; }
body.ksc-page #payment > h3,
body.ksc-page #order_review_heading_payment { margin: 6px 0 14px !important; padding-top: 18px; border-top: 1px solid var(--k-line); font-size: 22px !important; }
body.ksc-page #payment ul.payment_methods { padding: 0 !important; margin: 0 0 16px !important; border: 0 !important; list-style: none; }
body.ksc-page #payment ul.payment_methods > li {
	margin: 0 0 10px !important; padding: 16px !important; border: 1px solid var(--k-line-2) !important; border-radius: 14px !important; background: #fff !important; list-style: none;
}
body.ksc-page #payment ul.payment_methods > li::before { display: none; }
body.ksc-page #payment ul.payment_methods > li > label { font: 600 14.5px/1.3 var(--k-sans) !important; color: var(--k-ink) !important; text-transform: none !important; letter-spacing: 0 !important; }
body.ksc-page #payment .payment_box {
	margin: 14px 0 0 !important; padding: 0 !important; background: none !important; border: 0 !important; color: var(--k-muted) !important; font-size: 13px; line-height: 1.5;
}
body.ksc-page #payment .payment_box::before { display: none !important; }
body.ksc-page #payment .payment_box a { color: var(--k-gold-text) !important; }
body.ksc-page #payment .place-order { padding: 4px 0 0 !important; margin: 0 !important; border: 0 !important; background: none !important; }
body.ksc-page #payment .woocommerce-terms-and-conditions-wrapper,
body.ksc-page #payment .woocommerce-privacy-policy-text { font-size: 12.5px; color: var(--k-muted); line-height: 1.5; margin-bottom: 14px; }
body.ksc-page #place_order { width: 100% !important; height: 60px !important; font-size: 15.5px !important; float: none !important; }
body.ksc-page #place_order::before {
	content: ""; width: 14px; height: 16px; margin-right: 2px; flex: 0 0 auto; background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 16'%3E%3Cpath d='M3 7V5a4 4 0 1 1 8 0v2h1a1 1 0 0 1 1 1v7a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V8a1 1 0 0 1 1-1h1zm1.5 0h5V5a2.5 2.5 0 0 0-5 0v2z'/%3E%3C/svg%3E") center/contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 16'%3E%3Cpath d='M3 7V5a4 4 0 1 1 8 0v2h1a1 1 0 0 1 1 1v7a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V8a1 1 0 0 1 1-1h1zm1.5 0h5V5a2.5 2.5 0 0 0-5 0v2z'/%3E%3C/svg%3E") center/contain no-repeat;
}
body.ksc-page #order_review .blockUI.blockOverlay { background: rgba(255, 253, 249, .7) !important; border-radius: var(--k-r); }

/* =========================================================
   RESPONSIVE
   ========================================================= */
@media (max-width: 1199px) {
	body.woocommerce-cart.ksc-page .woocommerce { display: block; }
	body.woocommerce-cart.ksc-page .woocommerce > .cart-collaterals { position: static; max-width: 480px; margin-left: auto !important; }
}
@media (max-width: 1023px) {
	body.woocommerce-cart.ksc-page .woocommerce,
	body.ksc-page form.checkout.woocommerce-checkout { display: block; }
	body.woocommerce-cart.ksc-page .woocommerce > .cart-collaterals,
	body.ksc-page form.checkout > #order_review { position: static; }
	body.ksc-page form.checkout > #order_review_heading { margin-top: 8px !important; }
	body.woocommerce-cart.ksc-page .cart-collaterals { margin-top: 8px; }
}
@media (max-width: 767px) {
	body.ksc-page .page_content_wrap { padding-top: 20px; }
	.ksc-ribbon { border-radius: 16px; font-size: 12.5px; padding: 11px 14px; margin-bottom: 20px; }
	body.ksc-page .woocommerce_status_bar > div { font-size: 0 !important; gap: 0; }
	body.ksc-page .woocommerce_status_bar > div.active { font-size: 11px !important; gap: 8px; }
	.ksc-card { min-height: 74px; gap: 2px 14px; grid-template-columns: 48px minmax(0, 1fr); padding: 14px 46px 14px 14px; }
	.ksc-logo { width: 48px; height: 48px; grid-row: 1 / span 2; }
	.ksc-card-txt { align-self: end; }
	.ksc-card-price { grid-column: 2; padding: 0; font-size: 12.5px; align-self: start; }
	.ksc-card-sub { font-size: 12px; }
	.ksc-tick { right: 14px; }
	body.ksc-page .woocommerce-billing-fields__field-wrapper { grid-template-columns: 1fr; }
	body.ksc-page .woocommerce form .input-text,
	body.ksc-page .woocommerce form select { font-size: 16px !important; }

	/* cart rows as cards */
	body.ksc-page table.shop_table.cart thead { display: none; }
	body.ksc-page table.shop_table.cart,
	body.ksc-page table.shop_table.cart tbody { display: block; }
	body.ksc-page table.shop_table.cart tr.cart_item { display: block; border-top: 1px solid var(--k-line); }
	body.ksc-page table.shop_table.cart tr.cart_item:first-child { border-top: 0; }
	body.ksc-page table.shop_table.cart tr.cart_item td { display: block !important; padding: 0 !important; border: 0 !important; text-align: left !important; width: auto !important; }
	body.ksc-page table.shop_table.cart tr.cart_item td::before { display: none !important; }
	body.ksc-page table.shop_table.cart td.product-thumbnail { grid-area: img; display: block !important; }
	body.ksc-page table.shop_table.cart td.product-thumbnail img { width: 84px !important; height: 96px !important; }
	body.ksc-page table.shop_table.cart td.product-name { grid-area: name; }
	body.ksc-page table.shop_table.cart td.product-name a { font-size: 17px; }
	body.ksc-page table.shop_table.cart td.product-price { display: none !important; }
	body.ksc-page table.shop_table.cart td.product-quantity { grid-area: qty; }
	body.ksc-page table.shop_table.cart td.product-subtotal { grid-area: sub; text-align: right !important; }
	body.ksc-page table.shop_table.cart td.product-remove { grid-area: rm; text-align: right !important; }
	body.ksc-page table.shop_table.cart tr:not(.cart_item) { display: block; }
	body.ksc-page table.shop_table.cart td.actions { display: block !important; border-top: 1px solid var(--k-line) !important; padding: 16px !important; }
	body.ksc-page .cart .coupon { width: 100%; max-width: none; margin-bottom: 4px; }
	body.ksc-page .cart td.cart-coupon, body.ksc-page .cart td.actions { display: block !important; width: auto !important; padding: 12px 16px !important; border-top: 0 !important; }
	body.ksc-page .cart td.actions .woo-actions-inner { justify-content: stretch; } body.ksc-page .cart td.actions .woo-actions-inner .button { flex: 1 1 0; }
	body.ksc-page .cart .actions .button { width: 100% !important; margin: 0 0 8px !important; }
}

/* ---------- fixes: theme overrides ---------- */
body.ksc-page .ksc-terminal .select_container { width: 100%; }
body.ksc-page .ksc-terminal .select_container::before,
body.ksc-page .ksc-terminal .select_container::after { display: none !important; content: none !important; }
body.ksc-page .ksc-terminal .select2-container .select2-selection--single {
	display: flex !important; align-items: center !important; height: 54px !important; min-height: 54px; padding: 0 44px 0 18px !important;
	border: 1px solid var(--k-line-2) !important; border-radius: var(--k-r-sm) !important; background: #fff !important;
}
body.ksc-page .ksc-terminal .select2-container .select2-selection__rendered { font: 400 15px/1.3 var(--k-sans) !important; padding: 0 !important; }
body.ksc-page .ksc-terminal .select2-container .select2-selection__arrow { top: 0 !important; height: 52px !important; width: 20px !important; right: 16px !important; }
body.ksc-page .ksc-terminal .select2-container .select2-selection__arrow b { border-color: var(--k-muted) transparent transparent !important; }
body.ksc-page .ksc-terminal.is-picked .select2-selection--single { border-color: var(--k-ink) !important; }

/* field order: name, surname, phone, email, address */
body.ksc-page #billing_first_name_field { order: 1; }
body.ksc-page #billing_last_name_field { order: 2; }
body.ksc-page #billing_phone_field { order: 3; grid-column: auto !important; }
body.ksc-page #billing_email_field { order: 4; }
body.ksc-page #billing_address_1_field { order: 5; }
body.ksc-page #billing_address_2_field { order: 6; }
body.ksc-page .woocommerce-billing-fields__field-wrapper > .form-row { order: 9; }
body.ksc-page .woocommerce-billing-fields__field-wrapper > #billing_first_name_field { order: 1; }
body.ksc-page .woocommerce-billing-fields__field-wrapper > #billing_last_name_field { order: 2; }
body.ksc-page .woocommerce-billing-fields__field-wrapper > #billing_phone_field { order: 3; }
body.ksc-page .woocommerce-billing-fields__field-wrapper > #billing_email_field { order: 4; }
body.ksc-page .woocommerce-billing-fields__field-wrapper > #billing_address_1_field { order: 5; }
body.ksc-page .woocommerce-billing-fields__field-wrapper > #billing_address_2_field { order: 6; }

/* totals colour */
body.ksc-page .order-total .amount,
body.ksc-page .order-total .amount bdi,
body.ksc-page .order-total bdi { color: var(--k-ink) !important; }

/* Paysera methods */
body.ksc-page .paysera-payment-methods__container .radio-control { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin: 12px 0; }
body.ksc-page .paysera-payment-methods__container .radio-control > * { margin: 0 !important; }
body.ksc-page .paysera-payment-methods__container label.radio-control__option {
	display: flex !important; align-items: center; width: auto !important; min-height: 58px; margin: 0 !important; padding: 10px 12px !important;
	border: 1px solid var(--k-line-2) !important; border-radius: 12px !important; background: #fff !important; cursor: pointer;
	text-transform: none !important; letter-spacing: 0 !important; transition: border-color .25s var(--k-ease), box-shadow .25s var(--k-ease);
}
body.ksc-page .paysera-payment-methods__container label.radio-control__option:hover { border-color: var(--k-gold-2) !important; }
body.ksc-page .paysera-payment-methods__container label.radio-control__option:has(input:checked) { border-color: var(--k-ink) !important; box-shadow: 0 0 0 1px var(--k-ink); }
body.ksc-page .paysera-payment-methods__container .radio-control__icon img { width: 30px !important; height: 30px !important; object-fit: contain; }
body.ksc-page .paysera-payment-methods__container .radio-control__label-group,
body.ksc-page .paysera-payment-methods__container .radio-control__label-group * { font: 600 13.5px/1.2 var(--k-sans) !important; color: var(--k-ink) !important; }
body.ksc-page .paysera-payment-methods__country-select select,
body.ksc-page .paysera-payment-methods__country-select .select2-selection { border-radius: 10px !important; border-color: var(--k-line-2) !important; }
body.ksc-page .woocommerce-Price-currencySymbol { color: inherit !important; }
body.ksc-page #billing_address_1_field label .optional { display: none; }
body.ksc-page #billing_address_1_field label::after { content: " *"; color: var(--k-gold); }

/* cart fixes */
body.ksc-page .cart_totals tr.shipping,
body.ksc-page .cart_totals tr.woocommerce-shipping-totals { display: none !important; }
body.ksc-page .cart_totals table,
body.ksc-page .cart_totals table tbody,
body.ksc-page .cart_totals table tr { border: 0 !important; background: none !important; box-shadow: none !important; }
body.ksc-page .woocommerce .cart_totals table.shop_table tr th,
body.ksc-page .woocommerce .cart_totals table.shop_table tr td { border: 0 !important; border-top: 1px solid var(--k-line) !important; }
body.ksc-page .woocommerce .cart_totals table.shop_table tr:first-child th,
body.ksc-page .woocommerce .cart_totals table.shop_table tr:first-child td { border-top: 0 !important; }
body.ksc-page .cart_totals table th::before, body.ksc-page .cart_totals table td::before { display: none !important; }
body.ksc-page .cart_totals table th { width: 40%; font-weight: 500 !important; color: var(--k-muted) !important; }
body.ksc-page table.shop_table.cart { width: 100% !important; table-layout: auto; }
body.ksc-page table.shop_table.cart th,
body.ksc-page table.shop_table.cart td { padding-left: 14px !important; padding-right: 14px !important; }
body.ksc-page table.shop_table.cart td.product-thumbnail { width: 104px; padding-left: 20px !important; }
body.ksc-page .cart td.actions { display: table-cell; }
body.ksc-page .cart td.actions .woo-actions-inner { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 10px; }
body.ksc-page .cart td.cart-coupon { padding: 18px 20px !important; }
body.ksc-page .woocommerce .cart .button.continue_shopping,
body.ksc-page .woocommerce .cart .button[name="update_cart"] { background: transparent !important; color: var(--k-ink) !important; border: 1px solid var(--k-line-2) !important; height: 48px; }
body.ksc-page .woocommerce .cart .button.continue_shopping:hover { background: var(--k-ink) !important; color: var(--k-ivory) !important; border-color: var(--k-ink) !important; }
body.ksc-page .cart .coupon {
	flex: 1 1 340px; max-width: 460px; display: flex !important; align-items: center; gap: 6px; float: none !important;
	padding: 5px !important; border: 1px solid var(--k-line-2); border-radius: 999px; background: #fff;
}
body.ksc-page .cart .coupon::before { display: none !important; }
body.ksc-page .cart .coupon label { display: none !important; }
body.ksc-page .woocommerce .cart .coupon .input-text {
	flex: 1 1 auto; width: auto !important; min-width: 0; height: 44px !important; border: 0 !important; background: transparent !important; padding: 0 14px !important; box-shadow: none !important;
}
body.ksc-page .cart .coupon .button { height: 44px !important; padding: 0 20px !important; font-size: 13px !important; flex: 0 0 auto; }
body.ksc-page .cart .actions > .button,
body.ksc-page .cart .actions > a.button { height: 50px; }
body.ksc-page .woocommerce table.shop_table.cart tr td.cart-coupon { padding: 16px 20px !important; }
body.ksc-page .woocommerce table.shop_table.cart tr td.product-thumbnail { padding-left: 20px !important; }
body.ksc-page .woocommerce .cart .coupon { border: 1px solid var(--k-line-2) !important; background: #fff !important; border-radius: 999px !important; padding: 4px 4px 4px 8px !important; }
body.ksc-page .woocommerce .cart .coupon .button { background: var(--k-ink) !important; color: var(--k-ivory) !important; border-color: var(--k-ink) !important; }
body.ksc-page .woocommerce .cart .button.continue_shopping,
body.ksc-page .woocommerce .cart .button[name="update_cart"] { display: inline-flex !important; align-items: center !important; justify-content: center !important; line-height: 1 !important; padding-top: 0 !important; padding-bottom: 0 !important; }
body.ksc-page .woocommerce .cart-collaterals .cart_totals { padding: clamp(22px, 3vw, 32px) !important; box-sizing: border-box; }
@media (max-width: 767px) {
	body.ksc-page .woocommerce .quantity .qty { width: 84px !important; height: 40px !important; }
	body.woocommerce-cart.ksc-page .woocommerce > .cart-collaterals { max-width: none; margin: 8px 0 0 !important; }
	body.ksc-page .woocommerce .cart .coupon .button { padding: 0 16px !important; }
}

/* theme mobile cart cell */
body.ksc-page .woocommerce table.shop_table.cart td.mobile_cell { display: block !important; padding: 18px 16px !important; border: 0 !important; }
body.ksc-page .woocommerce table.shop_table.cart td.mobile_cell::before { display: none !important; }
body.ksc-page td.mobile_cell table { width: 100%; margin: 0 !important; border: 0 !important; background: none !important; }
body.ksc-page td.mobile_cell table tr { display: flex !important; align-items: center; gap: 12px; border: 0 !important; background: none !important; }
body.ksc-page td.mobile_cell table td { display: block !important; padding: 0 !important; border: 0 !important; background: none !important; text-align: left !important; }
body.ksc-page td.mobile_cell table td::before { display: none !important; }
body.ksc-page td.mobile_cell tr.first_row td.product-name { flex: 1 1 auto; }
body.ksc-page td.mobile_cell tr.first_row td.product-price { display: none !important; }
body.ksc-page td.mobile_cell tr.second_row { margin-top: 12px; padding-left: 88px; }
body.ksc-page td.mobile_cell tr.second_row td.product-subtotal { margin-left: auto; font-weight: 600; }
body.ksc-page td.mobile_cell .product-name-inner { display: flex; align-items: center; gap: 14px; }
body.ksc-page td.mobile_cell .product-name-inner > a:first-child { flex: 0 0 74px; }
body.ksc-page td.mobile_cell .product-name-inner img { width: 74px !important; height: 86px !important; object-fit: contain; padding: 6px; border-radius: 12px; background: linear-gradient(160deg, #F4EFE8, #E9E2D8); margin: 0 !important; }
body.ksc-page td.mobile_cell .product-info a { font-family: var(--k-serif); font-weight: 400; font-size: 17px; line-height: 1.2; color: var(--k-ink) !important; text-decoration: none; }
body.ksc-page td.mobile_cell a.remove { position: static !important; display: inline-grid !important; place-items: center; width: 32px !important; height: 32px !important; border-radius: 50%; border: 1px solid var(--k-line) !important; color: var(--k-muted) !important; background: transparent !important; font-size: 16px !important; }
body.ksc-page table.shop_table.cart .product-name-inner { display: flex; align-items: center; gap: 18px; }
body.ksc-page table.shop_table.cart .product-name-inner > a:first-child { flex: 0 0 auto; }
body.ksc-page table.shop_table.cart .product-name-inner img { width: 84px !important; height: 98px !important; max-width: none; object-fit: contain; padding: 8px; border-radius: 14px !important; background: linear-gradient(160deg, #F4EFE8, #E9E2D8) !important; margin: 0 !important; }
body.ksc-page table.shop_table.cart .product-info a { font-family: var(--k-serif); font-weight: 400; font-size: 19px; line-height: 1.2; color: var(--k-ink) !important; text-decoration: none; }
body.ksc-page .ksc-terminal .select2-selection__arrow::before,
body.ksc-page .ksc-terminal .select2-selection__arrow::after { display: none !important; content: none !important; }
body.ksc-page .ksc-terminal .select2-selection__arrow b { display: block !important; position: absolute !important; top: 50% !important; left: 50% !important; width: 0 !important; height: 0 !important; margin: -2px 0 0 -5px !important; border-style: solid !important; border-width: 6px 5px 0 !important; border-color: var(--k-muted) transparent transparent !important; }
body.ksc-page .ksc-terminal .select2-container--open .select2-selection__arrow b { border-width: 0 5px 6px !important; border-color: transparent transparent var(--k-muted) !important; }
.ksc-s2, .ksc-s2 * { font-family: var(--k-sans); }
body.ksc-page .ksc-terminal .select2-container .select2-selection__arrow { top: 50% !important; height: 20px !important; margin-top: -10px; }

@media (max-width: 900px) {
	.ksc-benefits { grid-template-columns: 1fr; border: 1px solid var(--k-line); border-radius: 16px; background: var(--k-paper); }
	.ksc-benefits li { justify-content: flex-start; padding: 12px 16px !important; }
	.ksc-benefits li + li { border-left: 0; border-top: 1px solid var(--k-line); }
	.ksc-benefits b { display: inline; }
}
@media (max-width: 767px) {
	body.ksc-page .elementor-element-d7574ea { background-position: 58% 60% !important; }
	body.ksc-page .elementor-element-d7574ea > .elementor-container { min-height: 230px !important; }
	body.ksc-page.ksc-steps-hero .sc_layouts_title_content > .woocommerce_status_bar { margin-top: 18px !important; padding: 7px 14px !important; }
	body.ksc-page.ksc-steps-hero .sc_layouts_title_content > .woocommerce_status_bar > div:not(.active) { font-size: 0 !important; gap: 0 !important; }
}
body.ksc-page .woocommerce-form-coupon-toggle .woocommerce-info { display: block !important; text-align: center !important; }
@media (max-width: 767px) {
	body.ksc-page.ksc-steps-hero .sc_layouts_title_content > .woocommerce_status_bar > div.active { white-space: nowrap; font-size: 10px !important; letter-spacing: .1em; }
}

/* clickable steps */
body.ksc-page .woocommerce_status_bar > div { position: relative; }
body.ksc-page .woocommerce_status_bar .ksc-step-link { position: absolute; inset: -8px -6px; z-index: 2; border-radius: 999px; }
body.ksc-page .woocommerce_status_bar .ksc-step-link:focus-visible { outline: 2px solid var(--k-gold); outline-offset: 2px; }
body.ksc-page .woocommerce_status_bar > div.ksc-step-clickable { cursor: pointer; transition: color .3s var(--k-ease); }
body.ksc-page .woocommerce_status_bar > div.ksc-step-clickable .num { transition: background .3s var(--k-ease), color .3s var(--k-ease), border-color .3s var(--k-ease); }
body.ksc-page .woocommerce_status_bar > div.ksc-step-clickable:hover { color: var(--k-gold-text) !important; }
body.ksc-page .woocommerce_status_bar > div.ksc-step-clickable:hover .num { background: var(--k-gold) !important; border-color: var(--k-gold) !important; color: #fff !important; }
body.ksc-page .woocommerce_status_bar > div.active:not(.ksc-step-current) .num { background: var(--k-paper) !important; color: var(--k-ink) !important; border-color: var(--k-ink) !important; }
body.ksc-page .woocommerce_status_bar > div.ksc-step-current .num { background: var(--k-ink) !important; border-color: var(--k-ink) !important; color: var(--k-gold-3) !important; }
body.ksc-page .woocommerce_status_bar > div.ksc-step-current { color: var(--k-ink) !important; }
/* hero photo framing */
body.ksc-page .elementor-element-d7574ea { background-position: center 52% !important; }
@media (max-width: 767px) {
	body.ksc-page.ksc-steps-hero .sc_layouts_title_content > .woocommerce_status_bar > div:not(.ksc-step-current) { font-size: 0 !important; gap: 0 !important; }
	body.ksc-page.ksc-steps-hero .sc_layouts_title_content > .woocommerce_status_bar > div.ksc-step-current { font-size: 10px !important; white-space: nowrap; }
}


/* === Paštomatų sąrašas: tvarkingas dropdown (2026-11) === */
.ksc-s2 .select2-results > .select2-results__options { max-height: min(380px, 55vh) !important; overflow-y: auto !important; overscroll-behavior: contain; -webkit-overflow-scrolling: touch; }
.ksc-s2 .select2-results__options--nested { max-height: none !important; overflow: visible !important; }
.ksc-s2 .select2-results__option[role="list"], .ksc-s2 .select2-results__option[role="group"] { padding: 0 !important; background: #fff !important; }
.ksc-s2 .select2-results__group { position: sticky; top: 0; z-index: 2; padding: 11px 14px 8px !important; border-bottom: 1px solid var(--k-line); }
.ksc-s2 .select2-results__options--nested > .select2-results__option { padding: 10px 14px !important; border-bottom: 1px solid var(--k-line); }
.ksc-s2 .ksc-opt { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.ksc-s2 .ksc-opt-n { font-weight: 500; font-size: 14px; line-height: 1.3; color: var(--k-ink); }
.ksc-s2 .ksc-opt-a { font-size: 12.5px; line-height: 1.3; color: var(--k-muted); }
.ksc-s2 .select2-search__field { font-size: 16px !important; }
.ksc-s2 .select2-results__message { padding: 14px !important; color: var(--k-muted); }
body.ksc-page .ksc-terminal .select2-container .select2-selection__rendered { display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-width: 0; }


/* === Pristatymo būdai: Omniva rekomenduojama + kurjeris visoje LT (2026-11) === */
.ksc-card--reco { border-color: var(--k-gold-2) !important; background: linear-gradient(135deg, #FFFDF9 0%, #F8F1E6 100%) !important; box-shadow: 0 0 0 1px rgba(184, 146, 92, .35), 0 16px 32px -22px rgba(131, 98, 63, .55); }
.ksc-card--reco.is-active { border-color: var(--k-ink) !important; box-shadow: 0 0 0 1px var(--k-ink), 0 16px 32px -20px rgba(21, 18, 15, .45); }
.ksc-tag { display: inline-flex; align-items: center; gap: 5px; margin-left: 8px; padding: 4px 9px 4px 8px; border-radius: 999px; background: var(--k-ink); color: var(--k-gold-3); font: 600 10px/1 var(--k-sans); letter-spacing: .12em; text-transform: uppercase; vertical-align: 2px; white-space: nowrap; }
.ksc-tag::before { content: "✦"; font-size: 8px; color: var(--k-gold-2); letter-spacing: 0; }
.ksc-logo--courier { background: var(--k-ivory); color: var(--k-ink); border-color: var(--k-line-2); }
body.ksc-page.ksc-mode-lt #billing_city_field, body.ksc-page.ksc-mode-lt #billing_postcode_field { display: block !important; animation: kscIn .45s var(--k-ease); }
.ksc-terminal-manual .ksc-hint a { font-weight: 600; color: var(--k-ink); text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 520px) {
	.ksc-tag { display: flex; width: max-content; margin: 6px 0 0; }
	body.ksc-page.ksc-mode-lt #billing_city_field, body.ksc-page.ksc-mode-lt #billing_postcode_field { width: 100% !important; float: none !important; }
}

/* Kurjerio adresas: miestas + pašto kodas greta, miestas privalomas */
body.ksc-page.ksc-mode-lt #billing_city_field .optional { display: none !important; }
body.ksc-page.ksc-mode-lt #billing_city_field label::after { content: " *"; color: rgb(165, 128, 90); font-weight: 500; }
@media (min-width: 521px) {
	body.ksc-page.ksc-mode-lt #billing_city_field, body.ksc-page.ksc-mode-lt #billing_postcode_field { grid-column: auto !important; }
}
