/* Skinstudio 3-step checkout + upsell + side-cart cart-only */
:root {
	--ss-blue: #1631B0;
	--ss-blue-hover: #10248a;
	--ss-blue-soft: #e8ecfa;
	--ss-text: #1a1a1a;
	/* Headings / emphasis. Mockup 01 uses near-black, NOT the brand blue. */
	--ss-navy: #16181d;
	--ss-muted: #6b7280;
	--ss-label: #374151;
	--ss-line: #e5e7eb;
	--ss-line-soft: #eceef2;
	--ss-bg: #f7f8fb;
	--ss-danger: #dc2626;
	--ss-radius: 0;
}

/* Side cart: hide pay/checkout button everywhere */
.xoo-wsc-ft-buttons-cont .xoo-wsc-ft-btn-checkout,
.xoo-wsc-ft-btn-checkout {
	display: none !important;
}

/* Hide leftover side-cart overlay on checkout / upsell so it cannot trap clicks */
body.ss-checkout-page .xoo-wsc-markup,
body.ss-checkout-page .xoo-wsc-modal,
body.ss-checkout-page .xoo-wsc-opac,
body.ss-checkout-page .xoo-wsc-basket,
body.ss-checkout-page .xoo-wsc-overlay,
body.ss-upsell-flow .xoo-wsc-markup,
body.ss-upsell-flow .xoo-wsc-modal,
body.ss-upsell-flow .xoo-wsc-opac,
body.ss-upsell-flow .xoo-wsc-basket,
body.ss-upsell-flow .xoo-wsc-overlay {
	display: none !important;
	pointer-events: none !important;
	visibility: hidden !important;
}

/* Focused checkout / upsell / thank-you chrome: hide theme header/footer */
body.ss-checkout-page .elementor-location-header,
body.ss-upsell-flow .elementor-location-header,
body.ss-order-received-page .elementor-location-header,
body.ss-checkout-page .elementor-location-footer,
body.ss-upsell-flow .elementor-location-footer,
body.ss-order-received-page .elementor-location-footer,
body.ss-checkout-page header.site-header,
body.ss-upsell-flow header.site-header,
body.ss-order-received-page header.site-header {
	display: none !important;
}

body.ss-checkout-page,
body.ss-upsell-flow,
body.ss-cart-page {
	background: #fff;
}

body.ss-upsell-flow {
	padding-bottom: 92px;
	overflow-y: auto !important;
	overflow-x: hidden;
}
html:has(body.ss-upsell-flow),
html:has(body.ss-upsell-flow).xoo-wsc-cart-active,
html:has(body.ss-upsell-flow).xoo-wsc-open,
body.ss-upsell-flow.xoo-wsc-cart-active,
body.ss-upsell-flow.xoo-wsc-slider-active,
body.ss-upsell-flow.xoo-wsc-open,
body.ss-upsell-flow.modal-open {
	overflow: visible !important;
	overflow-y: auto !important;
	position: static !important;
	height: auto !important;
}

/* Shared horizontal alignment for header chrome + checkout form (1440 canvas). */
body.ss-checkout-page,
body.ss-checkout-doc,
body.ss-upsell-flow,
body.ss-order-received-page,
body.ss-cart-page {
	--ss-checkout-max: 1440px;
	--ss-checkout-pad: 40px;
	letter-spacing: normal;
}
.ss-checkout-chrome-inner {
	max-width: var(--ss-checkout-max);
	margin-left: auto;
	margin-right: auto;
	padding-left: var(--ss-checkout-pad);
	padding-right: var(--ss-checkout-pad);
	width: 100%;
	box-sizing: border-box;
}

/* Top contact strip (mockup 01) — full viewport width */
.ss-checkout-contactbar {
	background: var(--ss-blue);
	color: #fff;
	width: 100%;
}
.ss-checkout-contactbar-inner {
	display: flex;
	align-items: center;
	gap: 24px;
	padding-top: 8px;
	padding-bottom: 8px;
	font-size: 13px;
}
.ss-checkout-topbar-actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 12px;
	justify-self: end;
}
.ss-checkout-lang {
	flex-shrink: 0;
	position: relative;
	z-index: 30;
}
.ss-checkout-lang .wpml-ls {
	margin: 0;
	padding: 0;
}
.ss-checkout-lang .wpml-ls-legacy-dropdown-click {
	width: auto;
}
.ss-checkout-lang .wpml-ls-legacy-dropdown-click a {
	padding: 4px !important;
	border: none !important;
	background: transparent !important;
}
.ss-checkout-lang .wpml-ls-legacy-dropdown-click a.wpml-ls-item-toggle:before {
	background-image: url("/wp-content/uploads/2023/10/Group-40-1.svg");
	background-size: 36px;
	background-repeat: no-repeat !important;
	background-position: center !important;
	display: inline-block;
	width: 44px;
	height: 28px;
	content: "";
}
.ss-checkout-lang .wpml-ls-legacy-dropdown-click a.wpml-ls-item-toggle:after {
	display: none !important;
}
.ss-checkout-lang .wpml-ls-legacy-dropdown-click .wpml-ls-sub-menu {
	width: 70px !important;
	right: 0;
	left: auto;
	margin-top: 2px;
}
.ss-checkout-lang .wpml-ls-sub-menu li {
	padding: 10px !important;
	text-align: center;
	background: #fff;
	border: 1px solid #cdcdcd;
}
.ss-checkout-lang .wpml-ls-sub-menu a {
	color: var(--ss-text) !important;
}
.ss-checkout-lang .wpml-ls-legacy-dropdown-click a:hover,
.ss-checkout-lang .wpml-ls-legacy-dropdown-click a:focus {
	background: #fff !important;
}
.ss-cbar-item {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	color: #fff !important;
	text-decoration: none;
}
.ss-cbar-item:hover {
	color: #fff !important;
	opacity: 0.85;
}
.ss-cbar-ico {
	width: 14px;
	height: 14px;
	display: inline-block;
	background: currentColor;
}
.ss-cbar-ico-mail {
	-webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='black' d='M20 4H4a2 2 0 00-2 2v12a2 2 0 002 2h16a2 2 0 002-2V6a2 2 0 00-2-2zm0 4l-8 5-8-5V6l8 5 8-5v2z'/></svg>") center / contain no-repeat;
	mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='black' d='M20 4H4a2 2 0 00-2 2v12a2 2 0 002 2h16a2 2 0 002-2V6a2 2 0 00-2-2zm0 4l-8 5-8-5V6l8 5 8-5v2z'/></svg>") center / contain no-repeat;
}
.ss-cbar-ico-phone {
	-webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='black' d='M6.6 10.8a15.5 15.5 0 006.6 6.6l2.2-2.2a1 1 0 011-.24 11.4 11.4 0 003.6.58 1 1 0 011 1V20a1 1 0 01-1 1A17 17 0 013 4a1 1 0 011-1h3.5a1 1 0 011 1 11.4 11.4 0 00.58 3.6 1 1 0 01-.24 1l-2.24 2.2z'/></svg>") center / contain no-repeat;
	mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='black' d='M6.6 10.8a15.5 15.5 0 006.6 6.6l2.2-2.2a1 1 0 011-.24 11.4 11.4 0 003.6.58 1 1 0 011 1V20a1 1 0 01-1 1A17 17 0 013 4a1 1 0 011-1h3.5a1 1 0 011 1 11.4 11.4 0 00.58 3.6 1 1 0 01-.24 1l-2.24 2.2z'/></svg>") center / contain no-repeat;
}

.ss-checkout-topbar {
	border-bottom: 1px solid var(--ss-line);
	background: #fff;
	width: 100%;
	padding: 18px 0;
}
.ss-checkout-topbar-inner {
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	align-items: center;
	gap: 16px;
}
.ss-checkout-logo img {
	height: 40px;
	width: auto;
	display: block;
}
.ss-checkout-topbar-title {
	font-weight: 700;
	font-size: 16px;
	color: var(--ss-text);
	text-align: center;
}
.ss-checkout-home,
a.ss-checkout-home {
	white-space: nowrap;
	text-transform: uppercase;
	font-size: 13px;
	padding: 10px 16px;
	min-height: auto;
	line-height: 1.2;
}
.ss-checkout-home-mobile {
	display: none !important;
}
.ss-stepper-actions {
	display: block;
	grid-column: 1;
	grid-row: 1;
}
.ss-stepper-actions .ss-checkout-home-mobile {
	display: none !important;
}
.ss-secure-pay {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 8px;
	color: var(--ss-muted);
	font-size: 13px;
}
.ss-lock {
	width: 14px;
	height: 14px;
	display: inline-block;
	background: currentColor;
	-webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='black' d='M12 2a5 5 0 00-5 5v3H6a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2v-8a2 2 0 00-2-2h-1V7a5 5 0 00-5-5zm-3 5a3 3 0 016 0v3H9V7z'/></svg>") center / contain no-repeat;
	mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='black' d='M12 2a5 5 0 00-5 5v3H6a2 2 0 00-2 2v8a2 2 0 002 2h12a2 2 0 002-2v-8a2 2 0 00-2-2h-1V7a5 5 0 00-5-5zm-3 5a3 3 0 016 0v3H9V7z'/></svg>") center / contain no-repeat;
}

.ss-checkout-stepper {
	width: 100%;
	margin: 0;
	padding: 22px 0 8px;
}
.ss-checkout-stepper-inner {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	grid-template-rows: auto;
	align-items: center;
	gap: 16px 24px;
}
.ss-checkout-stepper-track {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	flex-wrap: nowrap;
	min-width: 0;
	grid-column: 2;
	grid-row: 1;
}
.ss-stepper-back {
	justify-self: start;
	white-space: nowrap;
	text-transform: uppercase;
	font-size: 13px;
	padding: 10px 16px;
	min-height: auto;
	line-height: 1.2;
	flex-shrink: 0;
}
.ss-step {
	display: flex;
	align-items: center;
	gap: 8px;
	text-decoration: none;
	color: var(--ss-muted);
	font-size: 14px;
	font-weight: 600;
}
a.ss-step {
	cursor: pointer;
}
.ss-step-num {
	width: 28px;
	height: 28px;
	border-radius: 50%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: #e8ecfa;
	color: var(--ss-blue);
	border: 1px solid #c7d2fe;
	font-size: 13px;
	font-weight: 700;
}
.ss-step.is-current {
	color: var(--ss-blue);
	font-weight: 700;
}
.ss-step.is-current .ss-step-num {
	background: var(--ss-blue);
	color: #fff;
	border-color: var(--ss-blue);
	box-shadow: 0 0 0 3px var(--ss-blue-soft);
}
.ss-step.is-done {
	color: var(--ss-text);
}
.ss-step.is-done .ss-step-num {
	background: var(--ss-blue);
	color: #fff;
	border-color: var(--ss-blue);
}
.ss-step.is-upcoming {
	color: var(--ss-muted);
}
.ss-step.is-upcoming .ss-step-num {
	background: #e8ecfa;
	color: var(--ss-blue);
	border-color: #c7d2fe;
}
.ss-step-line {
	flex: 0 1 48px;
	min-width: 24px;
	max-width: 48px;
	height: 3px;
	background: #dbe4ff;
	border-radius: 0;
}
.ss-step-line.is-done {
	background: var(--ss-blue);
}

.ss-upsell-intro {
	text-align: center;
	padding: 28px 20px 8px;
}
.ss-upsell-title {
	font-size: 28px;
	line-height: 1.25;
	margin: 0 0 8px;
	color: var(--ss-text);
}
.ss-upsell-sub {
	margin: 0;
	color: var(--ss-muted);
	font-size: 15px;
}
.ss-upsell-footer {
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 90;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 16px;
	padding: 14px 28px;
	background: #fff;
	border-top: 1px solid var(--ss-line);
	box-shadow: 0 -6px 20px rgba(22, 49, 176, 0.06);
}
.ss-upsell-footer-right {
	display: flex;
	align-items: center;
	gap: 16px;
}
.ss-upsell-total-label {
	color: var(--ss-muted);
	font-size: 14px;
	text-align: center;
}
.ss-upsell-total-amount {
	font-weight: 700;
	font-size: 16px;
	text-align: center;
}

.ss-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: var(--ss-radius);
	padding: 12px 22px;
	font-weight: 400;
	font-size: 14px;
	text-decoration: none;
	border: 1px solid transparent;
	cursor: pointer;
	font-family: inherit;
	text-transform: uppercase;
}
.ss-btn-primary,
a.ss-btn-primary,
button.ss-btn-primary,
.ss-btn-primary span,
.ss-upsell-footer .ss-btn-primary,
body.ss-upsell-flow a.ss-btn-primary,
body.ss-checkout-page .ss-btn-primary {
	background: var(--ss-blue) !important;
	color: #fff !important;
	border-color: var(--ss-blue) !important;
	fill: #fff !important;
}
.ss-btn-primary:hover,
a.ss-btn-primary:hover {
	background: var(--ss-blue-hover) !important;
	color: #fff !important;
}
.ss-btn-ghost {
	background: #fff;
	color: var(--ss-text);
	border-color: #111;
}
.ss-btn-secondary,
a.ss-btn-secondary,
button.ss-btn-secondary {
	background: #fff !important;
	color: var(--ss-text) !important;
	border: 1px solid #c8c8cc !important;
	text-decoration: none;
}
.ss-btn-secondary:hover,
a.ss-btn-secondary:hover,
button.ss-btn-secondary:hover {
	border-color: #111 !important;
	color: var(--ss-text) !important;
}
body.ss-checkout-page a.ss-btn.ss-checkout-home,
body.ss-checkout-doc a.ss-btn.ss-checkout-home,
body.ss-upsell-flow a.ss-btn.ss-checkout-home,
body.ss-cart-page a.ss-btn.ss-checkout-home,
a.ss-btn.ss-btn-primary.ss-checkout-home {
	background: var(--ss-blue) !important;
	color: #fff !important;
	border-color: var(--ss-blue) !important;
}
body.ss-checkout-page a.ss-btn.ss-checkout-home:hover,
body.ss-checkout-doc a.ss-btn.ss-checkout-home:hover,
body.ss-upsell-flow a.ss-btn.ss-checkout-home:hover,
body.ss-cart-page a.ss-btn.ss-checkout-home:hover,
a.ss-btn.ss-btn-primary.ss-checkout-home:hover {
	background: var(--ss-blue-hover) !important;
	color: #fff !important;
	border-color: var(--ss-blue-hover) !important;
}
.ss-btn-back::before {
	content: "\2190\00a0";
}
.ss-btn-next::after,
.ss-login-next::after {
	content: "\00a0\2192";
}
.ss-btn-next {
	width: 100%;
	margin-top: 8px;
}

/* ------------------------------------------------------------------
   Kill leftover Elementor / Royal checkout chrome
   ------------------------------------------------------------------ */
body.ss-checkout-page .elementor-widget-shortcode,
body.ss-checkout-page .elementor-add-section,
body.ss-checkout-page .elementor-empty-view,
body.ss-checkout-page .elementor-element-overlay,
body.ss-checkout-page .elementor-editor-element-settings {
	display: none !important;
}

body.ss-checkout-page .elementor-widget-wpr-page-checkout,
body.ss-checkout-page .elementor-widget-wpr-page-checkout > .elementor-widget-container,
body.ss-checkout-page .wpr-customer-details-wrapper,
body.ss-checkout-page .wpr-checkout-order-review-table,
body.ss-checkout-page .wpr-checkout-order-review-table-inner,
body.ss-checkout-page .wpr-checkout-order-review {
	display: contents !important;
	background: transparent !important;
	border: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	box-shadow: none !important;
}

/* One order summary only — hide any review table that is not ours */
body.ss-checkout-page .woocommerce-checkout-review-order-table {
	/* styled below inside .ss-order-card */
}
body.ss-checkout-page .wpr-checkout-order-review-table .shop_table:not(.woocommerce-checkout-review-order-table) {
	display: none !important;
}

.ss-checkout-form {
	max-width: var(--ss-checkout-max, 1440px);
	margin: 0 auto;
	padding: 24px var(--ss-checkout-pad, 40px) 64px;
}
.ss-checkout-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 5px minmax(280px, 520px);
	gap: 0;
	align-items: start;
}
.ss-checkout-primary {
	padding-right: 32px;
	min-width: 0;
}
.ss-checkout-col-divider {
	display: block;
	width: 5px;
	min-width: 5px;
	background: #f9f9fa;
	align-self: stretch;
	margin: 0;
	padding: 0;
	border: 0;
}
.ss-checkout-sidebar {
	padding-left: 32px;
	min-width: 0;
}

/* ------------------------------------------------------------------
   Distraction-free document (custom template, no Elementor/Royal).
   Neutralise any box a parent theme/kit might try to draw around the
   billing columns, order review or payment — the mockup has none.
   ------------------------------------------------------------------ */
body.ss-checkout-doc .ss-checkout-form .col2-set,
body.ss-checkout-doc .ss-checkout-form .col-1,
body.ss-checkout-doc .ss-checkout-form .col-2,
body.ss-checkout-doc .ss-checkout-form .woocommerce-billing-fields,
body.ss-checkout-doc .ss-checkout-form .woocommerce-billing-fields__field-wrapper,
body.ss-checkout-doc #order_review,
body.ss-checkout-doc .ss-payment-slot #payment {
	border: 0 !important;
	background: transparent !important;
	padding: 0 !important;
	margin: 0;
	box-shadow: none !important;
	border-radius: 0 !important;
}

/* Keep the checkout distraction-free: hide share-cart + any stray footer. */
body.ss-checkout-doc .wpcss-footer-btn,
body.ss-checkout-doc .wpcss-area,
body.ss-checkout-doc .wpcss-popup,
body.ss-checkout-doc .elementor-location-footer,
body.ss-checkout-doc .elementor-location-header,
body.ss-checkout-doc .xoo-wsc-modal,
body.ss-checkout-doc .xoo-wsc-basket {
	display: none !important;
}

/* Headings: mockup 01 sentence-case, not shouty Elementor all-caps */
body.ss-checkout-page .ss-panel h2,
body.ss-checkout-page .ss-order-card h2,
body.ss-checkout-page #order_review_heading,
body.ss-checkout-page .woocommerce-billing-fields h3,
body.ss-checkout-page .woocommerce-additional-fields h3 {
	font-size: 22px !important;
	font-weight: 500 !important;
	line-height: 1.3 !important;
	margin: 0 0 20px !important;
	color: #3b3b3f !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
	background: none !important;
	border: 0 !important;
	padding: 0 !important;
}
.ss-panel {
	background: #fff;
	margin-bottom: 28px;
}
.ss-panel-head {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: 12px;
	margin-bottom: 12px;
}
.ss-panel-head h2 {
	margin: 0 !important;
}
.ss-login-wrap {
	display: inline-flex;
	align-items: baseline;
	gap: 4px;
	font-size: 13px;
	white-space: nowrap;
}
.ss-login-hint {
	color: var(--ss-muted);
	font-weight: 400;
}
.ss-login-link {
	color: var(--ss-blue);
	font-size: 13px;
	text-decoration: none;
	white-space: nowrap;
	font-weight: 400;
}
.ss-login-link:hover {
	text-decoration: underline;
}

#customer_details {
	width: 100%;
	float: none;
	display: block;
}
#customer_details .col-1 {
	width: 100%;
	float: none;
	max-width: none;
}
#customer_details .col-2,
.ss-checkout-form .woocommerce-shipping-fields,
.ss-checkout-form #ship-to-different-address,
.ss-checkout-form .ss-field-optional-extra {
	display: none !important;
}
.ss-checkout-form .woocommerce-billing-fields > h3,
.ss-checkout-form .woocommerce-additional-fields > h3 {
	display: none;
}

/* Contact: first + last on one row, then email, phone, country */
.ss-checkout-form .woocommerce-billing-fields__field-wrapper {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 4px 16px;
}
.ss-checkout-form .woocommerce-billing-fields__field-wrapper .form-row {
	width: 100% !important;
	float: none !important;
	margin: 0 0 12px;
}
.ss-checkout-form #billing_first_name_field {
	grid-column: 1;
}
.ss-checkout-form #billing_last_name_field {
	grid-column: 2;
}
.ss-checkout-form #billing_email_field,
.ss-checkout-form #billing_phone_field,
.ss-checkout-form #billing_country_field,
.ss-checkout-form .form-row-wide,
.ss-checkout-form .ss-field-address,
.ss-checkout-form .ss-field-country {
	grid-column: 1 / -1;
}
.ss-checkout-form .form-row input.input-text,
.ss-checkout-form .form-row textarea,
.ss-checkout-form .form-row select,
.ss-checkout-form .select2-container .select2-selection--single {
	border: 0;
	border-bottom: 1px solid #bcbcbc;
	border-radius: 0;
	min-height: 46px;
	height: 46px;
	padding: 10px 0;
	background: #fff;
	box-sizing: border-box;
	box-shadow: none;
}
.ss-checkout-form .form-row input.input-text:focus,
.ss-checkout-form .form-row textarea:focus,
.ss-checkout-form .form-row select:focus {
	border-bottom-color: var(--ss-blue);
	outline: none;
	box-shadow: none;
}
.ss-checkout-form #billing_country_field .select2-container .select2-selection--single {
	padding: 0 !important;
}
.ss-checkout-form #billing_country_field .select2-container {
	width: 100% !important;
}
.ss-checkout-form #billing_country_field .select2-container .select2-selection--single {
	width: 100%;
	height: 46px !important;
	min-height: 46px !important;
	max-height: 46px !important;
	display: flex;
	align-items: center;
}
.ss-checkout-form #billing_country_field .select2-selection__rendered {
	line-height: 44px !important;
	padding-left: 0 !important;
	padding-right: 28px !important;
}
.ss-checkout-form #billing_country_field .select2-selection__arrow {
	height: 46px !important;
	top: 0 !important;
	right: 10px !important;
}
.ss-checkout-form .required,
.ss-checkout-form abbr.required {
	color: var(--ss-danger) !important;
	text-decoration: none;
	border: 0;
}

/* Address extras hidden until courier */
.ss-checkout-form:not(.ss-needs-address) .ss-field-address {
	display: none !important;
}
.ss-checkout-form.ss-needs-address .ss-field-address.validate-required .optional {
	display: none !important;
}
.ss-checkout-form.ss-needs-address .ss-field-address.validate-required abbr.required {
	display: inline;
	color: var(--ss-danger);
	text-decoration: none;
	border: 0;
}

/* ------------------------------------------------------------------
   Shipping methods: stacked full-width rounded cards (mockup 04 + 01)
   ------------------------------------------------------------------ */
.ss-shipping-slot ul#shipping_method,
.ss-shipping-slot .woocommerce-shipping-methods {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0;
}
.ss-shipping-slot li {
	margin: 0;
	border: 0;
	border-bottom: 1px solid var(--ss-line);
	border-radius: 0;
	padding: 16px 0;
	display: grid;
	grid-template-columns: 18px minmax(0, 1fr);
	column-gap: 12px;
	row-gap: 10px;
	align-items: start;
	background: transparent;
	cursor: pointer;
	overflow: visible;
}
.ss-shipping-slot li:has(input:checked),
.ss-shipping-slot li.ss-is-selected {
	border-color: transparent;
	border-bottom-color: var(--ss-line);
	box-shadow: none;
}
.ss-shipping-slot input[type="radio"] {
	accent-color: var(--ss-blue);
	width: 18px;
	height: 18px;
	margin: 0;
	grid-column: 1;
	grid-row: 1;
	align-self: center;
}
.ss-checkout-form .ss-shipping-slot label,
.ss-shipping-slot label {
	grid-column: 2;
	grid-row: 1;
	min-width: 0;
	margin: 0;
	font-weight: 600;
	color: var(--ss-text);
	cursor: pointer;
	display: grid !important;
	grid-template-columns: 56px minmax(0, 1fr) auto auto;
	grid-template-rows: auto;
	align-items: center;
	column-gap: 10px;
	row-gap: 8px;
}
/* Locker rows: button on its own full-width row so nothing gets clipped. */
.ss-shipping-slot li.ss-is-locker label {
	grid-template-columns: 56px minmax(0, 1fr) auto;
	grid-template-rows: auto auto auto;
}
.ss-shipping-slot .ss-ship-logo,
.ss-shipping-slot label > img,
.ss-shipping-slot .wc-venipak-shipping-logo {
	display: inline-block !important;
	grid-column: 1;
	grid-row: 1;
	justify-self: start;
	height: 16px;
	width: auto;
	max-width: 64px;
	object-fit: contain;
	object-position: left center;
}
.ss-shipping-slot .ss-ship-name {
	grid-column: 2;
	grid-row: 1;
	min-width: 0;
	font-weight: 600;
	font-size: 14px;
	line-height: 1.3;
	color: var(--ss-text);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.ss-shipping-slot .woocommerce-Price-amount,
.ss-shipping-slot .amount,
.ss-shipping-slot .ss-ship-free {
	grid-column: 3;
	grid-row: 1;
	justify-self: end;
	font-weight: 700;
	color: var(--ss-text);
	white-space: nowrap;
}
.ss-shipping-slot .ss-ship-eta {
	grid-column: 4;
	grid-row: 1;
	justify-self: end;
	font-size: 13px;
	font-weight: 400;
	color: var(--ss-muted);
	white-space: nowrap;
}
.ss-shipping-slot li.ss-is-locker .ss-ship-eta {
	grid-column: 2 / 4;
	grid-row: 2;
	justify-self: start;
}
.ss-shipping-slot .itella-shipping-container,
.ss-shipping-slot .venipak-pickup-points,
.ss-shipping-slot .venipak-terminals,
.ss-shipping-slot .omnivalt-terminal-container,
.ss-shipping-slot .omnivalt-terminal-select,
.ss-shipping-slot li > label > .ss-pick-locker {
	grid-column: 1 / -1;
	grid-row: 3;
	justify-self: stretch;
	width: 100%;
	min-width: 0;
}
.ss-shipping-slot li > .ss-pick-locker {
	grid-column: 2;
	grid-row: 2;
	width: 100%;
	margin: 0;
}
.ss-shipping-slot li:not(.ss-is-selected) > .ss-pick-locker {
	display: none !important;
}
/* Smartposti / Itella parcel locker picker under the selected row. */
.ss-shipping-slot li.ss-is-locker:not(.ss-is-selected) > #itella-pickup-block,
.ss-shipping-slot li.ss-is-locker:not(.ss-is-selected) > .ss-itella-mount {
	display: none !important;
}
.ss-shipping-slot li.ss-is-locker.ss-is-selected > #itella-pickup-block,
.ss-shipping-slot li.ss-is-locker.ss-is-selected > .ss-itella-mount {
	display: block !important;
	grid-column: 1 / -1;
	grid-row: 3;
	width: 100%;
	min-width: 0;
	margin-top: 4px;
}
.ss-shipping-slot li.ss-is-locker.ss-is-selected .itella-shipping-container {
	display: block !important;
	width: 100%;
}
.ss-shipping-slot li.ss-is-locker.ss-is-selected .itella-modal-btn,
.ss-shipping-slot li.ss-is-locker.ss-is-selected > .ss-pick-locker-fallback {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
}
/* Hide Omniva/other plugin chrome in Tarneviis rows; Venipak shown under selected row via JS. */
.ss-shipping-slot li:not(.ss-has-venipak-picker) > .venipak-pickup-wrapper,
.ss-shipping-slot li.ss-has-venipak-picker:not(.ss-is-selected) > .venipak-pickup-wrapper,
.ss-shipping-slot li > .terminal-container,
.ss-shipping-slot li > .omnivalt_terminal_container,
.ss-shipping-slot li > #venipak_pickup_block,
.ss-shipping-slot li > .venipak-shipping-options {
	display: none !important;
}
.ss-order-card .terminal-container,
.ss-order-card .omnivalt_terminal_container,
#order_review .terminal-container,
#order_review .omnivalt_terminal_container {
	display: none !important;
}
/* Sidebar table row stays empty — widget lives under Venipak in Tarneviis. */
body.ss-checkout-page tr.wc-venipak-shipping-terminals,
body.ss-checkout-doc tr.wc-venipak-shipping-terminals {
	display: none !important;
}
/* Venipak dropdown under the selected shipping method row. */
.ss-shipping-slot li.ss-has-venipak-picker label .venipak-pickup-wrapper {
	display: none !important;
}
.ss-shipping-slot li.ss-has-venipak-picker.ss-is-selected > .venipak-pickup-wrapper {
	display: block !important;
	grid-column: 1 / -1;
	grid-row: 2;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 4px 0 0 30px;
	box-sizing: border-box;
	cursor: default;
	pointer-events: auto;
	--venipak-pickup-width: 100%;
}
.ss-shipping-slot li.ss-has-venipak-picker.ss-is-selected {
	cursor: default;
}
.ss-shipping-slot li.ss-has-venipak-picker > .venipak-pickup-wrapper {
	min-width: 0;
}
.ss-shipping-slot li.ss-has-venipak-picker > .venipak-pickup-wrapper label[for="venipak_pickup_point"],
body.ss-checkout-page .ss-shipping-slot li.ss-has-venipak-picker label[for="venipak_pickup_point"] {
	display: block !important;
	width: 100%;
	margin: 0 0 8px;
	padding: 0;
	font-weight: 600;
	font-size: 14px;
	line-height: 1.4;
	color: var(--ss-text);
	white-space: normal;
}
.ss-shipping-slot li.ss-has-venipak-picker > .venipak-pickup-wrapper #venipak-map,
.ss-shipping-slot li.ss-has-venipak-picker > .venipak-pickup-wrapper #selected-pickup-info,
.ss-shipping-slot li.ss-has-venipak-picker > .venipak-pickup-wrapper #show-venipak-map {
	display: none !important;
}
.ss-shipping-slot li.ss-has-venipak-picker select.venipak_pickup_point,
body.ss-checkout-page .ss-shipping-slot li.ss-has-venipak-picker select.venipak_pickup_point {
	width: 100%;
	min-height: 46px;
	border: 1px solid #d1d5db;
	border-radius: var(--ss-radius);
	padding: 10px 12px;
	box-sizing: border-box;
	background: #fff;
}
.ss-shipping-slot li.ss-has-venipak-picker .select2-container {
	width: 100% !important;
	max-width: none !important;
}
.ss-shipping-slot li.ss-has-venipak-picker .select2-selection--single {
	min-height: 46px !important;
	height: 46px !important;
	border: 1px solid #d1d5db !important;
	border-radius: var(--ss-radius) !important;
	box-shadow: none !important;
	display: flex;
	align-items: center;
}
.ss-shipping-slot li.ss-has-venipak-picker .select2-selection__rendered {
	line-height: 44px !important;
	padding-left: 12px !important;
}
.ss-shipping-slot li.ss-has-venipak-picker.ss-venipak-error .select2-selection--single,
body.ss-checkout-page.ss-locker-missing.ss-venipak-shipping .ss-shipping-slot li.ss-has-venipak-picker .select2-selection--single {
	border-color: var(--ss-danger) !important;
	box-shadow: 0 0 0 1px var(--ss-danger);
}
/* Off-screen pool: Omniva widgets only; modals detach to body via JS. */
#ss-locker-pool,
.ss-locker-pool {
	position: fixed;
	left: 0;
	top: 0;
	width: 0;
	height: 0;
	overflow: visible;
	opacity: 0;
	z-index: -1;
	pointer-events: none;
}
body.ss-checkout-page .select2-container--open,
body.ss-checkout-doc .select2-container--open {
	z-index: 100000 !important;
}
body.ss-checkout-page .select2-dropdown,
body.ss-checkout-doc .select2-dropdown {
	z-index: 100001 !important;
}
body.ss-checkout-page .tmjs-modal,
body.ss-checkout-doc .tmjs-modal {
	z-index: 100001 !important;
}
.ss-shipping-slot .itella-chosen-point {
	display: none;
}
.ss-pick-locker,
.ss-shipping-slot .ss-pick-locker {
	margin: 0;
	border: 1.5px solid var(--ss-blue);
	color: var(--ss-blue);
	background: #fff;
	border-radius: var(--ss-radius);
	padding: 10px 14px;
	font-weight: 400;
	font-size: 13px;
	cursor: pointer;
	text-transform: uppercase;
	white-space: nowrap;
	width: 100%;
	box-sizing: border-box;
	text-align: center;
}
.ss-locker-missing .ss-is-selected .ss-pick-locker,
.ss-locker-missing .ss-pick-locker,
.ss-pick-locker.ss-pick-locker-error {
	border-color: var(--ss-danger) !important;
	color: var(--ss-danger) !important;
	box-shadow: 0 0 0 1px var(--ss-danger);
}
.ss-locker-msg {
	color: var(--ss-danger);
	font-size: 13px;
	margin: 8px 0 0;
	font-weight: 600;
}

/* Hide stray shipping lists that Woo/Royal left in the review table */
.ss-checkout-sidebar ul#shipping_method,
.ss-checkout-sidebar .woocommerce-shipping-methods,
body.ss-checkout-page #order_review ul#shipping_method {
	display: none !important;
}
.ss-shipping-slot ul#shipping_method,
.ss-shipping-slot .woocommerce-shipping-methods {
	display: flex !important;
	overflow: visible;
}
.ss-shipping-slot {
	overflow: visible;
	min-width: 0;
}

/* ------------------------------------------------------------------
   Payment methods as radio cards (mockup 02) — real gateways only
   ------------------------------------------------------------------ */
.ss-payment-slot .wc_payment_methods {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.ss-payment-slot .wc_payment_method {
	border: 1px solid var(--ss-line);
	border-radius: var(--ss-radius);
	padding: 16px 18px;
	margin: 0;
	background: #fff;
}
.ss-payment-slot .wc_payment_method:has(input:checked) {
	border-color: var(--ss-blue);
	box-shadow: 0 0 0 1px var(--ss-blue);
}
.ss-payment-slot .wc_payment_method > label {
	font-weight: 700;
	cursor: pointer;
	display: flex;
	align-items: center;
	gap: 10px;
	color: var(--ss-text);
}
.ss-payment-slot .wc_payment_method > label img {
	height: 22px;
	width: auto;
	margin-left: auto;
}
.ss-payment-slot .payment_box {
	background: transparent;
	padding: 10px 0 0;
	margin: 0;
	border: 0;
}
.ss-payment-slot .payment_box::before {
	display: none;
}

.ss-panel-extras .woocommerce-additional-fields,
.ss-notes-slot #order_comments_field textarea {
	width: 100%;
}

/* Gift wrap — mockup 02 checkbox + helper, not buried */
#gift_wrap_option,
.ss-giftwrap-slot #gift_wrap_option {
	margin: 0 0 18px !important;
	margin-left: 0 !important;
	padding: 0;
}
#gift_wrap_option h3 {
	display: none;
}
#wrap_as_gift_field {
	margin: 0 !important;
}
#wrap_as_gift_field label,
.ss-giftwrap-slot label[for="wrap_as_gift"] {
	font-weight: 600;
	font-size: 14px;
	color: var(--ss-text);
	display: flex;
	align-items: flex-start;
	gap: 12px;
	cursor: pointer;
	line-height: 1.45;
}
#wrap_as_gift_field input[type="checkbox"] {
	flex: 0 0 auto;
	margin: 1px 0 0;
}
.ss-gift-help {
	margin: 4px 0 0 32px !important;
	color: var(--ss-muted);
	font-size: 13px;
	font-weight: 400;
}
.ss-giftwrap-slot .gift-message {
	margin-left: 28px;
}

.ss-notes-toggle {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	background: transparent !important;
	border: 0 !important;
	border-top: 1px solid var(--ss-line) !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	padding: 14px 0 10px;
	margin-top: 8px;
	cursor: pointer;
	font: inherit;
	font-weight: 600;
	color: var(--ss-text) !important;
	text-align: left;
	transition: color 0.15s ease;
}
body.ss-checkout-page .ss-notes-toggle:hover,
body.ss-checkout-page .ss-notes-toggle:focus-visible {
	color: var(--ss-blue) !important;
	background: transparent !important;
	outline: none;
}
body.ss-checkout-page .ss-notes-toggle[aria-expanded="true"] {
	color: var(--ss-blue) !important;
}
.ss-notes-slot {
	border: 0;
}
.ss-terms-slot {
	margin: 0 0 14px;
	padding: 0;
	border: 0;
}
.ss-checkout-sidebar .ss-terms-slot .woocommerce-terms-and-conditions-wrapper,
.ss-checkout-sidebar .ss-terms-slot .form-row {
	margin: 0;
	padding: 0;
	border: 0;
}
.ss-terms-slot label {
	display: block;
	position: relative;
	padding-left: 32px;
	font-size: 13px;
	line-height: 1.45;
	color: var(--ss-text) !important;
	cursor: pointer;
}
.ss-terms-slot label::before {
	content: "";
	position: absolute;
	left: 0;
	top: 1px;
	width: 20px;
	height: 20px;
	border: 1.5px solid #c5c5c9;
	border-radius: 0;
	background: #fff;
	box-sizing: border-box;
	pointer-events: none;
}
.ss-terms-slot label:has(#terms:checked)::before {
	background-color: var(--ss-blue);
	border-color: var(--ss-blue);
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 10'%3E%3Cpath fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M1 5.2 4.2 8.4 11 1.6'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: 11px 9px;
}
.ss-terms-slot .woocommerce-terms-and-conditions-checkbox-text {
	color: var(--ss-text);
	display: inline;
}
.ss-terms-slot input[type="checkbox"],
.ss-terms-slot #terms {
	position: absolute !important;
	left: 0 !important;
	top: 1px !important;
	opacity: 0 !important;
	width: 20px !important;
	height: 20px !important;
	min-width: 20px !important;
	max-width: 20px !important;
	min-height: 20px !important;
	max-height: 20px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	appearance: none !important;
	-webkit-appearance: none !important;
	cursor: pointer;
	z-index: 2;
	flex: none !important;
}
.ss-terms-slot a {
	color: var(--ss-blue);
	text-decoration: none;
}
.ss-terms-slot a:hover {
	text-decoration: underline;
}
.ss-terms-slot .required,
.ss-terms-slot abbr.required {
	color: var(--ss-danger);
	text-decoration: none;
	border: 0;
}
body.ss-checkout-page .ss-terms-slot .form-row.validate-required,
body.ss-checkout-doc .ss-terms-slot .form-row.validate-required,
body.ss-checkout-page .ss-terms-slot .woocommerce-invalid label,
body.ss-checkout-doc .ss-terms-slot .woocommerce-invalid label {
	color: var(--ss-text) !important;
}
.ss-notes-toggle::after {
	content: "▾";
	color: var(--ss-muted);
	font-weight: 400;
}

/* ------------------------------------------------------------------
   Order summary card — mockup 05 (no vertical grid)
   ------------------------------------------------------------------ */
.ss-checkout-sidebar {
	background: transparent;
	padding-left: 32px;
	position: sticky;
	top: 0;
	align-self: start;
}
.ss-order-card {
	background: transparent;
	border: 0;
	border-radius: 0;
	padding: 0;
}
body.ss-checkout-page .ss-order-card #order_review,
body.ss-checkout-page .ss-order-card .woocommerce-checkout-review-order {
	border: 0 !important;
	background: transparent !important;
	padding: 0 !important;
	margin: 0 !important;
	box-shadow: none !important;
}

body.ss-checkout-page .ss-order-card table.shop_table,
body.ss-checkout-page .ss-order-card table.woocommerce-checkout-review-order-table {
	width: 100%;
	border: 0 !important;
	border-collapse: collapse !important;
	border-spacing: 0 !important;
	background: transparent !important;
	margin: 0 !important;
}
body.ss-checkout-page .ss-order-card table.shop_table thead {
	display: none !important;
}
body.ss-checkout-page .ss-order-card table.shop_table th,
body.ss-checkout-page .ss-order-card table.shop_table td,
body.ss-checkout-page.woocommerce-checkout .ss-order-card table.shop_table tbody th,
body.ss-checkout-page.woocommerce-checkout .ss-order-card table.shop_table tbody td,
body.ss-checkout-page.woocommerce-checkout .ss-order-card table.shop_table tfoot th,
body.ss-checkout-page.woocommerce-checkout .ss-order-card table.shop_table tfoot td,
body.ss-checkout-page .elementor-widget-wpr-page-checkout table.shop_table th,
body.ss-checkout-page .elementor-widget-wpr-page-checkout table.shop_table td {
	border: 0 !important;
	border-top: 0 !important;
	border-left: 0 !important;
	border-right: 0 !important;
	border-bottom: 1px solid var(--ss-line-soft) !important;
	border-width: 0 0 1px 0 !important;
	border-style: solid !important;
	background: transparent !important;
	box-shadow: none !important;
	padding: 12px 0 !important;
	vertical-align: middle;
}
body.ss-checkout-page .ss-order-card table.shop_table tr:last-child th,
body.ss-checkout-page .ss-order-card table.shop_table tr:last-child td {
	border-bottom: 0 !important;
}

.ss-recap-product {
	display: flex;
	align-items: center;
	gap: 12px;
}
.ss-recap-thumb {
	width: 52px;
	height: 52px;
	object-fit: cover;
	border-radius: var(--ss-radius);
	border: 1px solid var(--ss-line);
	flex: 0 0 52px;
}
.ss-recap-info {
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
}
.ss-recap-name {
	color: var(--ss-navy);
	font-weight: 600;
	font-size: 14px;
	line-height: 1.3;
}
.ss-recap-qty {
	color: var(--ss-muted);
	font-size: 12px;
	font-weight: 400;
}
body.ss-checkout-page .ss-order-card .cart_item .product-total {
	text-align: right;
	white-space: nowrap;
	font-weight: 700;
	color: var(--ss-navy);
	width: 1%;
}

body.ss-checkout-page .ss-order-card tfoot .woocommerce-shipping-totals th,
body.ss-checkout-page .ss-order-card tfoot .order-total th {
	text-transform: uppercase;
	color: var(--ss-navy) !important;
	font-size: 13px !important;
	font-weight: 700 !important;
}
body.ss-checkout-page .ss-order-card tfoot .order-total td {
	text-align: right;
	font-size: 18px;
	font-weight: 500;
	color: var(--ss-navy);
}
body.ss-checkout-page .ss-order-card tfoot .order-total td strong,
body.ss-checkout-page .ss-order-card tfoot .order-total td .woocommerce-Price-amount {
	font-weight: 500 !important;
}
body.ss-checkout-page .ss-order-card tfoot .order-total small,
body.ss-checkout-page .ss-order-card tfoot .order-total .includes_tax,
body.ss-checkout-page .ss-order-card tfoot .order-total .tax_label {
	display: inline;
	font-size: 12px;
	font-weight: 500;
	color: var(--ss-muted);
	text-transform: none;
	letter-spacing: 0;
	margin-top: 0;
	margin-left: 0.35em;
	white-space: nowrap;
}
body.ss-checkout-page .ss-order-card tfoot .woocommerce-shipping-totals td {
	text-align: right;
	font-weight: 600;
	color: var(--ss-text);
}
body.ss-checkout-page .ss-order-card .ss-ship-recap {
	display: inline-block;
}
/* The theme hides cart-subtotal globally (style.css); the mockup shows it. */
body.ss-checkout-page .ss-order-card tr.cart-subtotal {
	display: table-row !important;
}
body.ss-checkout-page .ss-order-card .cart-subtotal th {
	color: var(--ss-muted);
	font-weight: 500;
	text-transform: none !important;
	letter-spacing: 0 !important;
	font-size: 14px !important;
}
body.ss-checkout-page .ss-order-card .cart-subtotal td {
	text-align: right;
	font-weight: 600;
	color: var(--ss-text);
}
body.ss-checkout-page .ss-order-card .fee th,
body.ss-checkout-page .ss-order-card .fee td {
	color: var(--ss-text);
}

.ss-promo {
	border: 0;
	border-top: 1px solid var(--ss-line);
	border-radius: 0;
	padding: 0;
	margin: 0;
	background: transparent;
}
.ss-promo-row {
	width: 100%;
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 16px;
	margin: 0;
	background: transparent !important;
	border: 0;
	cursor: pointer;
	font: inherit;
	color: var(--ss-text);
	text-align: left;
	transition: opacity 0.15s ease;
}
.ss-promo-row:hover,
.ss-promo-row:focus,
.ss-promo-row:focus-visible {
	background: transparent !important;
	opacity: 0.92;
	outline: none;
}
button.ss-promo-row {
	-webkit-appearance: none;
	appearance: none;
}
.ss-promo-label {
	flex: 1 1 auto;
	font-size: 13px;
	font-weight: 600;
	color: #757579;
}
.ss-promo-toggle {
	cursor: pointer;
}
button.ss-promo-link {
	margin-left: auto;
	padding: 0 !important;
	background: transparent !important;
	background-color: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	font: inherit;
	cursor: pointer;
	text-transform: none !important;
	letter-spacing: 0 !important;
}
button.ss-promo-link:hover,
button.ss-promo-link:focus,
button.ss-promo-link:focus-visible {
	background: transparent !important;
	background-color: transparent !important;
	box-shadow: none !important;
}
.ss-promo-link {
	margin-left: auto;
	color: #1631b0;
	font-weight: 400;
	font-size: 13px;
	text-decoration: none;
	white-space: nowrap;
	pointer-events: none;
}
button.ss-promo-row:hover .ss-promo-link,
button.ss-promo-row:focus .ss-promo-link,
button.ss-promo-row:focus-visible .ss-promo-link {
	color: var(--ss-blue);
	text-decoration: underline;
}
.ss-promo-link:hover {
	color: var(--ss-blue);
	text-decoration: underline;
}
.ss-promo-chevron {
	margin-left: auto;
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 24px;
	color: var(--ss-muted);
	font-size: 28px;
	line-height: 1;
	font-weight: 400;
}
.ss-promo-ico {
	color: #757579;
	font-weight: 700;
	font-size: 15px;
	flex: 0 0 auto;
}
.ss-promo-ico-img {
	width: 24px;
	height: 24px;
	flex: 0 0 24px;
	object-fit: contain;
	display: block;
}
.ss-promo-ico-tag,
.ss-promo-ico-gift {
	width: 24px;
	height: 24px;
	display: inline-block;
	flex: 0 0 24px;
	background: #757579;
}
.ss-promo-ico-tag {
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M20.59 13.41l-7.17 7.17a2 2 0 0 1-2.83 0L2 12V2h10l8.59 8.59a2 2 0 0 1 0 2.82zM7 7a2 2 0 1 0 0.001 3.999A2 2 0 0 0 7 7z'/%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 24 24'%3E%3Cpath fill='black' d='M20.59 13.41l-7.17 7.17a2 2 0 0 1-2.83 0L2 12V2h10l8.59 8.59a2 2 0 0 1 0 2.82zM7 7a2 2 0 1 0 0.001 3.999A2 2 0 0 0 7 7z'/%3E%3C/svg%3E") center/contain no-repeat;
}
.ss-promo-ico-gift {
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M20 12v8a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1v-8m18-4H3v4h18V8M12 8V21M12 8S9.2 3.5 6.5 5.2 8.5 12 12 8m0 0s2.8-4.5 5.5-2.8S15.5 12 12 8'/%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 24 24'%3E%3Cpath fill='black' d='M20 12v8a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1v-8m18-4H3v4h18V8M12 8V21M12 8S9.2 3.5 6.5 5.2 8.5 12 12 8m0 0s2.8-4.5 5.5-2.8S15.5 12 12 8'/%3E%3C/svg%3E") center/contain no-repeat;
}
.ss-promo-body {
	padding: 0 16px 16px;
}
.ss-promo-body[hidden] {
	display: none !important;
}
.ss-promo-body:not([hidden]) .ss-coupon-slot .checkout_coupon,
.ss-promo-body.is-open .ss-coupon-slot .checkout_coupon,
.ss-promo-body:not([hidden]) .ss-giftcard-slot .ywgc_enter_code,
.ss-promo-body.is-open .ss-giftcard-slot .ywgc_enter_code {
	display: flex !important;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: stretch;
	gap: 10px;
	width: 100%;
	border: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}
.ss-coupon-slot .checkout_coupon .clear {
	display: none !important;
}
.ss-coupon-slot .checkout_coupon .form-row-first,
.ss-coupon-slot .checkout_coupon .form-row-last,
.ss-giftcard-slot .ywgc_enter_code .form-row,
.ss-giftcard-slot .form-row {
	margin: 0 !important;
	padding: 0 !important;
	flex: 1 1 auto;
	min-width: 0;
	width: auto !important;
	max-width: none !important;
	float: none !important;
	clear: none !important;
}
.ss-coupon-slot .checkout_coupon .form-row-last,
.ss-giftcard-slot .ywgc_enter_code .form-row-last {
	flex: 0 0 auto;
}
.ss-giftcard-slot .ywgc_enter_code > div {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: stretch !important;
	gap: 10px;
	width: 100% !important;
	margin: 0 !important;
	position: static !important;
}
.ss-giftcard-slot .ywgc_enter_code .clear {
	display: none !important;
}
.ss-coupon-slot #coupon_code,
.ss-giftcard-slot input[type="text"],
.ss-giftcard-slot #giftcard_code {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	box-sizing: border-box !important;
	border: 0 !important;
	border-bottom: 1px solid #bcbcbc !important;
	border-radius: 0 !important;
	background: #fff !important;
	box-shadow: none !important;
	min-height: 46px !important;
	height: 46px;
	padding: 10px 0 !important;
}
.ss-coupon-slot #coupon_code:focus,
.ss-giftcard-slot input[type="text"]:focus,
.ss-giftcard-slot #giftcard_code:focus {
	border-bottom-color: var(--ss-blue) !important;
	outline: none;
	box-shadow: none !important;
}
.ss-coupon-slot .button,
.ss-giftcard-slot .button,
.ss-giftcard-slot .ywgc_apply_gift_card_button {
	flex: 0 0 auto;
	background: var(--ss-blue) !important;
	color: #fff !important;
	border: 0 !important;
	border-radius: var(--ss-radius) !important;
	padding: 0 20px !important;
	min-height: 44px;
	font-weight: 400;
	font-size: 14px;
	text-transform: uppercase;
	letter-spacing: 0;
	cursor: pointer;
	transition: background 0.15s ease;
}
.ss-coupon-slot .button:hover,
.ss-giftcard-slot .button:hover,
.ss-giftcard-slot .ywgc_apply_gift_card_button:hover {
	background: var(--ss-blue-hover) !important;
	color: #fff !important;
}

/* Free-shipping bar — inside order card, after totals */
.ss-order-card .ss-freeship {
	margin: 0;
	padding: 16px 0 0;
	border-top: 1px solid var(--ss-line);
}
.ss-freeship {
	margin: 0;
}
.ss-freeship .fsb-wrapper {
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	padding: 0 !important;
	box-shadow: none !important;
}
.ss-freeship .fsb__message {
	font-size: 13px;
	color: var(--ss-text);
	margin: 0 0 8px;
}
.ss-freeship .fsb__message .woocommerce-Price-amount,
.ss-freeship .fsb__message strong {
	font-weight: 700;
}
.ss-freeship .fsb__track {
	background: #d0d9f0 !important;
	border-radius: 0 !important;
	height: 6px !important;
	overflow: hidden;
	position: relative;
}
.ss-freeship .fsb__fill {
	background: var(--ss-blue) !important;
	height: 6px !important;
	border-radius: 0 !important;
}
.ss-freeship .fsb__percent {
	font-size: 11px;
	color: var(--ss-muted);
}

.ss-placeorder-slot .form-row.place-order {
	margin: 16px 0 0;
	padding: 0;
	border: 0;
	width: 100%;
	float: none;
}
.ss-placeorder-slot #place_order {
	width: 100%;
	background: var(--ss-blue);
	border-color: var(--ss-blue);
	color: #fff;
	font-weight: 400;
	text-transform: uppercase;
	border-radius: var(--ss-radius);
	padding: 14px 16px;
	min-height: 48px;
}
.ss-placeorder-slot #place_order:hover {
	background: var(--ss-blue-hover);
}
/* Never show a second place-order button */
body.ss-checkout-page #payment .form-row.place-order,
body.ss-checkout-page .ss-payment-slot .form-row.place-order {
	display: none !important;
}
body.ss-checkout-page #payment .woocommerce-terms-and-conditions-wrapper,
body.ss-checkout-page .ss-payment-slot .woocommerce-terms-and-conditions-wrapper {
	display: none !important;
}
body.ss-checkout-page .ss-placeorder-slot .form-row.place-order {
	display: block !important;
}
.ss-secure-pay {
	justify-content: center;
	margin: 10px 0 0;
}

.ss-sidebar-recap {
	font-size: 14px;
	color: var(--ss-text);
	padding: 12px 0 4px;
	border-top: 1px solid var(--ss-line);
	line-height: 1.45;
	margin-top: 8px;
}
.ss-sidebar-recap a {
	color: var(--ss-blue);
	font-weight: 600;
	text-decoration: none;
	float: right;
}

/* Hide default Woo coupon/login/giftcard at top — moved into sidebar */
body.ss-checkout-page .woocommerce-form-coupon-toggle,
body.ss-checkout-page form.checkout_coupon,
body.ss-checkout-page .ywgc_have_code,
body.ss-checkout-page .ywgc_enter_code,
body.ss-checkout-page .woocommerce-form-login-toggle {
	display: none;
}
body.ss-checkout-page .ss-promo-body .checkout_coupon,
body.ss-checkout-page .ss-promo-body .ywgc_enter_code {
	display: flex !important;
}
body.ss-cart-page .ywgc_have_code,
body.ss-checkout-page .ywgc_have_code,
body.ss-checkout-doc .ywgc_have_code,
body.ss-upsell-flow .ywgc_have_code {
	display: none !important;
}

/* Step visibility */
.ss-checkout-form[data-step="2"] .ss-panel-payment,
.ss-checkout-form[data-step="2"] .ss-panel-extras,
.ss-checkout-form[data-step="2"] .ss-placeorder-slot,
.ss-checkout-form[data-step="2"] .ss-terms-slot,
.ss-checkout-form[data-step="2"] .ss-secure-pay,
.ss-checkout-form[data-step="2"] #ss-step3-recap {
	display: none !important;
}

.ss-checkout-form[data-step="3"] .ss-panel-contact,
.ss-checkout-form[data-step="3"] .ss-panel-shipping,
.ss-checkout-form[data-step="3"] .ss-btn-next,
.ss-checkout-form[data-step="3"] .ss-sidebar-promos,
.ss-checkout-form[data-step="3"] .ss-freeship {
	display: none !important;
}

/* Keep hidden step-2 fields in DOM for submit but not visible */
.ss-checkout-form[data-step="3"] .ss-panel-contact {
	position: absolute !important;
	left: -9999px !important;
	height: 0 !important;
	overflow: hidden !important;
	display: block !important;
}

/* Notices */
body.ss-checkout-page .woocommerce-notices-wrapper,
body.ss-checkout-page .woocommerce-error,
body.ss-checkout-page .woocommerce-message {
	max-width: 1440px;
	margin-left: auto;
	margin-right: auto;
}

@media (max-width: 900px) {
	body.ss-checkout-page,
	body.ss-checkout-doc,
	body.ss-upsell-flow {
		--ss-checkout-pad: 10px;
	}
	.ss-checkout-contactbar-inner {
		justify-content: center;
		flex-wrap: wrap;
		gap: 8px 18px;
		padding-top: 7px;
		padding-bottom: 7px;
		font-size: 12px;
	}
	.ss-checkout-topbar {
		padding: 12px 0;
	}
	.ss-checkout-topbar-inner {
		grid-template-columns: 1fr auto;
		grid-template-rows: auto auto;
		align-items: center;
		column-gap: 12px;
		row-gap: 8px;
	}
	.ss-checkout-logo {
		justify-self: start;
		grid-column: 1;
		grid-row: 1;
	}
	.ss-checkout-topbar-actions {
		grid-column: 2;
		grid-row: 1;
		justify-self: end;
		gap: 0;
	}
	.ss-checkout-topbar-title {
		grid-column: 1 / -1;
		grid-row: 2;
		text-align: center;
		margin-top: 10px;
	}
	.ss-checkout-home-desktop {
		display: none !important;
	}
	.ss-checkout-home-mobile {
		display: inline-flex !important;
	}
	.ss-stepper-actions {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 10px;
		width: 100%;
		grid-column: 1 / -1;
		grid-row: 1;
	}
	.ss-stepper-actions .ss-checkout-home-mobile {
		display: inline-flex !important;
	}
	.ss-stepper-actions .ss-stepper-back,
	.ss-stepper-actions .ss-checkout-home-mobile {
		flex: 1 1 0;
		min-width: 0;
		justify-content: center;
	}
	.ss-checkout-stepper {
		padding-top: 12px;
		padding-bottom: 10px;
	}
	.ss-checkout-stepper-inner {
		grid-template-columns: 1fr;
		grid-template-rows: auto auto;
		gap: 0;
	}
	.ss-checkout-stepper-track {
		grid-column: 1 / -1;
		grid-row: 2;
		width: 100%;
		justify-content: space-between;
		flex-wrap: nowrap;
		gap: 0;
		margin-top: 16px;
		padding-bottom: 0;
		overflow-x: visible;
	}
	.ss-checkout-stepper-track .ss-step {
		flex: 0 0 auto;
	}
	.ss-checkout-stepper-track .ss-step-line {
		flex: 1 1 auto;
		min-width: 12px;
		max-width: none;
	}
	.ss-checkout-logo {
		display: flex;
		justify-content: center;
	}
	.ss-checkout-layout {
		grid-template-columns: 1fr;
		gap: 0;
	}
	.ss-checkout-col-divider {
		display: none !important;
	}
	.ss-checkout-primary {
		padding-right: 0;
		order: 1;
	}
	.ss-checkout-sidebar {
		position: static;
		order: 2;
		padding-left: 0;
		border-top: 1px solid var(--ss-line);
		padding-top: 28px;
		margin-top: 8px;
	}
	.ss-checkout-form {
		padding: 8px 10px 40px;
	}
	.ss-step-label {
		display: none;
	}
	.ss-upsell-title {
		font-size: 22px;
	}
	.ss-upsell-footer {
		flex-direction: column;
		align-items: stretch;
		padding: 10px;
		gap: 10px;
	}
	.ss-checkout-form .woocommerce-billing-fields__field-wrapper {
		grid-template-columns: 1fr;
	}
	.ss-checkout-form #billing_first_name_field,
	.ss-checkout-form #billing_last_name_field {
		grid-column: 1;
	}
}

.ss-checkout-form[data-step="2"] #payment,
.ss-checkout-form[data-step="2"] #place_order {
	display: none !important;
}
.ss-checkout-form[data-step="3"] .ss-placeorder-slot #place_order {
	display: block !important;
}


/* Martin mockup pass: Edasi, FSB language leftover, one shipping list, sidebar plaques */
body.ss-upsell-flow a.ss-btn-primary,
body.ss-upsell-flow .ss-btn-primary {
	color: #fff !important;
}
body.ss-checkout-page .ss-shipping-slot ul#shipping_method ~ ul#shipping_method,
body.ss-checkout-page .ss-shipping-slot ul.woocommerce-shipping-methods ~ ul.woocommerce-shipping-methods {
	display: none !important;
}
body.ss-checkout-page .ss-freeship ~ [class*="shipping-bar"],
body.ss-checkout-page .elementor-widget-shortcode:has([class*="shipping"]),
body.ss-checkout-page .elementor-element:has(.free-shipping-bar):not(:has(.ss-freeship)),
body.ss-checkout-page .wfsb-wrapper:not(.ss-freeship .wfsb-wrapper),
body.ss-checkout-page .elementor-location-single .free-shipping-progress,
body.ss-checkout-page .fsb-wrapper:not(.ss-freeship .fsb-wrapper),
body.ss-checkout-page .elementor-widget-shortcode:has(.fsb-wrapper),
body.ss-checkout-page .elementor-element:has(> .fsb-wrapper) {
	display: none !important;
}
body.ss-checkout-page .ss-freeship {
	display: block !important;
	background: transparent;
	border: 0;
	border-radius: 0;
	padding: 4px 2px 0;
	box-shadow: none;
}
body.ss-checkout-page .ss-order-card {
	background: transparent;
	border: 0;
	border-radius: 0;
	padding: 0;
}
body.ss-checkout-page .ss-sidebar-promos {
	background: #fff;
	border: 1px solid var(--ss-line);
	border-radius: 0;
	padding: 8px 16px;
}
/* ==================================================================
   Two-step mockup pass — Tarneandmed grid + divider, Tarneviis rows,
   free-shipping, Makseviis cards, Lisavalikud, Tarneandmed recap.
   ================================================================== */

/* Account creation isn't in the mockup. */
.ss-checkout-form .woocommerce-account-fields {
	display: none !important;
}

/* Divider under Kontaktandmed (step 2) and under Makseviis (step 3). */
.ss-checkout-form[data-step="2"] .ss-panel-contact,
.ss-checkout-form[data-step="3"] .ss-panel-payment {
	padding-bottom: 28px;
	border-bottom: 1px solid var(--ss-line);
}

/* Contact fields: a touch more air between rows. */
.ss-checkout-form .woocommerce-billing-fields__field-wrapper {
	gap: 2px 18px;
}
.ss-checkout-form .woocommerce-billing-fields__field-wrapper .form-row {
	margin: 0 0 16px;
}

/* Tarneviis: home icon for pickup ("Tulen ise järele") — no logo asset. */
.ss-shipping-slot li.ss-is-pickup > label::before {
	content: "";
	grid-column: 1;
	grid-row: 1;
	justify-self: start;
	width: 26px;
	height: 22px;
	background: var(--ss-navy);
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 3.2 3 11h2.4v9h5.1v-5.6h3V20h5.1v-9H21z'/%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 24 24'%3E%3Cpath fill='black' d='M12 3.2 3 11h2.4v9h5.1v-5.6h3V20h5.1v-9H21z'/%3E%3C/svg%3E") center/contain no-repeat;
}

/* Free shipping: truck icon on all langs except Estonian; thin bar + % to the right. */
.ss-freeship .fsb-wrapper { display: block !important; }
html:lang(et) .ss-freeship .fsb__icon { display: none !important; }
html:not(:lang(et)) .ss-freeship .fsb-wrapper {
	display: flex !important;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
}
html:not(:lang(et)) .ss-freeship .fsb__icon {
	display: inline-block !important;
	flex: 0 0 auto;
	font-size: 1.35em;
	line-height: 1;
}
html:not(:lang(et)) .ss-freeship .fsb__message {
	flex: 1 1 auto;
	min-width: 0;
}
html:not(:lang(et)) .ss-freeship .fsb__track {
	flex: 1 1 100%;
}
.ss-freeship .fsb__message { display: block; padding-left: 0 !important; margin-bottom: 10px; }
html:not(:lang(et)) .ss-freeship .fsb__message { margin-bottom: 0; }
.ss-freeship .fsb__track.ss-fsb-track-row,
.ss-freeship .fsb__track {
	display: flex;
	align-items: center;
	gap: 10px;
	overflow: visible !important;
	margin-right: 0 !important;
	height: auto !important;
	background: transparent !important;
}
.ss-freeship .ss-fsb-bar {
	flex: 1 1 auto;
	min-width: 0;
	height: 6px;
	background: #d0d9f0;
	border-radius: 0;
	overflow: hidden;
	position: relative;
}
.ss-freeship .ss-fsb-bar .fsb__fill {
	height: 100%;
	border-radius: 0;
}
.ss-freeship .fsb__percent {
	position: static !important;
	right: auto !important;
	top: auto !important;
	transform: none !important;
	flex: 0 0 auto;
	font-size: 12px;
	font-weight: 600;
	color: var(--ss-muted);
	line-height: 1;
	white-space: nowrap;
}

/* Makseviis: radio + label + expandable box on a grid (mockup). */
.ss-payment-slot .wc_payment_method {
	display: grid;
	grid-template-columns: auto 1fr;
	align-items: center;
	column-gap: 12px;
	padding: 16px 18px;
}
.ss-payment-slot .wc_payment_method > input[type="radio"] {
	grid-column: 1;
	width: 20px;
	height: 20px;
	min-width: 20px;
	margin: 0;
	flex-shrink: 0;
	appearance: none;
	-webkit-appearance: none;
	border: 1.5px solid #c5c5c9;
	border-radius: 50%;
	background: #fff;
	cursor: pointer;
	position: relative;
}
.ss-payment-slot .wc_payment_method > input[type="radio"]:checked {
	border-color: var(--ss-blue);
	box-shadow: inset 0 0 0 4px var(--ss-blue);
}
.ss-payment-slot .wc_payment_method > label {
	grid-column: 2;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 3px 10px;
	margin: 0;
}
.ss-payment-slot .wc_payment_method > .payment_box {
	grid-column: 1 / -1;
	margin-top: 12px;
}
.ss-payment-slot .wc_payment_method > label img {
	height: 22px;
	width: auto;
	max-width: 120px;
	margin-left: auto;
}
.ss-pay-sub {
	flex-basis: 100%;
	width: 100%;
	font-weight: 400;
	font-size: 13px;
	color: var(--ss-muted);
}
.ss-pay-cards {
	margin-left: auto;
	width: 70px;
	height: 22px;
	flex: 0 0 auto;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 72 22'%3E%3Crect x='0' y='1' width='34' height='20' rx='3' fill='%23ffffff' stroke='%23e5e7eb'/%3E%3Ctext x='17' y='15' font-family='Arial,Helvetica,sans-serif' font-size='11' font-weight='700' fill='%231a1f71' text-anchor='middle' letter-spacing='1'%3EVISA%3C/text%3E%3Ccircle cx='47' cy='11' r='8' fill='%23eb001b'/%3E%3Ccircle cx='57' cy='11' r='8' fill='%23f79e1b'/%3E%3Cpath d='M52 5.2a8 8 0 000 11.6 8 8 0 000-11.6z' fill='%23ff5f00'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right center;
	background-size: contain;
}
.ss-payment-slot #everypayPaymentElement { margin-top: 4px; }
.ss-payment-slot .payment_box p {
	margin: 0 0 6px;
	font-size: 13px;
	color: var(--ss-muted);
}

/* Tarneandmed recap (Makse step sidebar). */
.ss-recap-head {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 8px;
}
.ss-recap-title {
	font-weight: 700;
	font-size: 15px;
	color: var(--ss-navy);
}
.ss-recap-head a {
	float: none;
	color: var(--ss-blue);
	font-weight: 600;
	text-decoration: none;
}
.ss-recap-body {
	color: var(--ss-text);
	line-height: 1.5;
	font-size: 14px;
}
.ss-recap-name { font-weight: 600; }
.ss-recap-ship { margin-top: 8px; }

/* Order summary: labels sentence-case; Makse step shows the method name. */
body.ss-checkout-page .ss-order-card tfoot .woocommerce-shipping-totals th {
	text-transform: none !important;
	letter-spacing: 0 !important;
	color: var(--ss-muted) !important;
	font-size: 14px !important;
	font-weight: 500 !important;
}
body.ss-checkout-page .ss-order-card tfoot .order-total th {
	text-transform: none !important;
	letter-spacing: 0 !important;
	color: var(--ss-navy) !important;
	font-size: 15px !important;
	font-weight: 700 !important;
}
body.ss-checkout-step-3 .ss-order-card .woocommerce-shipping-totals th {
	color: var(--ss-text) !important;
	font-weight: 600 !important;
}
.ss-order-card .ss-ship-th-name { display: block; }
.ss-order-card .ss-ship-change {
	display: block;
	float: none;
	margin-top: 2px;
	font-size: 12px;
	font-weight: 600;
	color: var(--ss-blue);
	text-decoration: none;
}

/* ==================================================================
   ss-martin-pass-20260902-ui
   Extra borders off, forms = mockup, mobile shipping, upsell 4-col.
   ================================================================== */

/* Coupon / gift: divider rows, not nested boxes */
body.ss-checkout-page .ss-sidebar-promos {
	background: transparent;
	border: 0;
	border-radius: 0;
	padding: 0;
	box-shadow: none;
}
body.ss-checkout-page .ss-promo {
	border: 0;
	border-top: 1px solid var(--ss-line);
	border-radius: 0;
	padding: 0;
	margin: 0;
	background: transparent;
	box-shadow: none;
}
body.ss-checkout-page .ss-promo:first-child {
	border-top: 1px solid var(--ss-line);
}

/* Payment: mockup 02 — thin dividers, not extra cards */
body.ss-checkout-page .ss-payment-slot .wc_payment_methods {
	gap: 0;
}
body.ss-checkout-page .ss-payment-slot .wc_payment_method {
	border: 0 !important;
	border-bottom: 1px solid var(--ss-line) !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	padding: 16px 0;
	background: transparent;
}
body.ss-checkout-page .ss-payment-slot .wc_payment_method:has(input:checked) {
	border-color: transparent !important;
	border-bottom-color: var(--ss-line) !important;
	box-shadow: none !important;
}
body.ss-checkout-page .ss-payment-slot .wc_payment_method:last-child {
	border-bottom: 0 !important;
}
body.ss-checkout-page .ss-payment-slot .payment_box {
	background: #f9f9fa !important;
	border: 1px solid #ececee !important;
	border-radius: var(--ss-radius) !important;
	padding: 14px 16px !important;
	margin-top: 12px !important;
}
body.ss-checkout-page .ss-payment-slot .payment_method_everypay_sdk .payment_box,
body.ss-checkout-page .ss-payment-slot .payment_method_everypay .payment_box {
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	padding: 0 !important;
	margin-top: 8px !important;
	box-shadow: none !important;
}
body.ss-checkout-page .ss-payment-slot .everypay-wrapper {
	background: transparent !important;
	border: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
}
body.ss-checkout-page #everypayPaymentElement,
body.ss-checkout-page #everypayPaymentElement iframe {
	background: transparent !important;
}
body.ss-checkout-page #everypayPaymentElement img,
body.ss-checkout-page .everypay-wrapper img,
body.ss-checkout-page .ss-pay-cards {
	display: none !important;
}
body.ss-checkout-page .ss-payment-slot .payment_box input[type="text"],
body.ss-checkout-page .ss-payment-slot .payment_box input[type="tel"],
body.ss-checkout-page .ss-payment-slot .payment_box input[type="number"] {
	background: #fff !important;
}

/* Contact inputs: underline fields */
body.ss-checkout-page .ss-checkout-form .form-row input.input-text,
body.ss-checkout-page .ss-checkout-form .form-row textarea,
body.ss-checkout-page .ss-checkout-form .form-row select,
body.ss-checkout-page .ss-payment-slot input.input-text {
	border: 0 !important;
	border-bottom: 1px solid #bcbcbc !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	background: #fff !important;
	min-height: 46px !important;
	height: 46px;
	padding: 10px 0 !important;
	box-sizing: border-box;
}
body.ss-checkout-page .ss-checkout-form .form-row input.input-text:focus,
body.ss-checkout-page .ss-checkout-form .form-row textarea:focus,
body.ss-checkout-page .ss-checkout-form .form-row select:focus,
body.ss-checkout-page .ss-payment-slot input.input-text:focus {
	border-bottom-color: var(--ss-blue) !important;
	outline: none;
	box-shadow: none !important;
}
body.ss-checkout-page .ss-coupon-slot input,
body.ss-checkout-page .ss-giftcard-slot input,
body.ss-checkout-doc .ss-coupon-slot input,
body.ss-checkout-doc .ss-giftcard-slot input {
	border: 0 !important;
	border-bottom: 1px solid #bcbcbc !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	background: #fff !important;
	min-height: 46px !important;
	height: 46px;
	padding: 10px 0 !important;
	box-sizing: border-box;
}
body.ss-checkout-page .ss-coupon-slot input:focus,
body.ss-checkout-page .ss-giftcard-slot input:focus,
body.ss-checkout-doc .ss-coupon-slot input:focus,
body.ss-checkout-doc .ss-giftcard-slot input:focus {
	border-bottom-color: var(--ss-blue) !important;
	outline: none;
	box-shadow: none !important;
}

/* Gift/coupon apply */
body.ss-checkout-page .ss-coupon-slot .button,
body.ss-checkout-page .ss-giftcard-slot .button,
body.ss-checkout-page .ss-giftcard-slot .ywgc_apply_gift_card_button {
	border-radius: var(--ss-radius);
	min-height: 44px;
	text-transform: uppercase;
	font-weight: 400;
}

/* Mobile: tighter shipping rows on narrow screens */
@media (max-width: 900px) {
	.ss-shipping-slot label,
	.ss-checkout-form .ss-shipping-slot label {
		grid-template-columns: 48px minmax(0, 1fr) auto !important;
	}
	.ss-shipping-slot .ss-ship-eta {
		grid-column: 2 / 4 !important;
		grid-row: 2 !important;
		justify-self: start !important;
	}
	.ss-shipping-slot li:not(.ss-is-locker) .ss-ship-eta {
		grid-column: 2 / 4 !important;
		grid-row: 2 !important;
	}
	.ss-shipping-slot li:not(.ss-is-locker) .woocommerce-Price-amount,
	.ss-shipping-slot li:not(.ss-is-locker) .amount,
	.ss-shipping-slot li:not(.ss-is-locker) .ss-ship-free {
		grid-column: 3 !important;
		grid-row: 1 !important;
	}
	.ss-shipping-slot .itella-shipping-container,
	.ss-shipping-slot .venipak-pickup-points,
	.ss-shipping-slot .venipak-terminals,
	.ss-shipping-slot .omnivalt-terminal-container,
	.ss-shipping-slot li > label > .ss-pick-locker {
		grid-row: 3 !important;
	}
	.ss-shipping-slot li > .ss-pick-locker {
		grid-column: 2 !important;
		grid-row: 2 !important;
	}
	.ss-shipping-slot li {
		padding: 14px 0;
	}
	.ss-btn-next,
	.ss-placeorder-slot #place_order {
		min-height: 48px;
		width: 100%;
	}
}

/* Upsell (checkout flow only): no filters, 4 products per row.
   Elementor ids from page 67733 — catalog /allahindlus/ without ss-upsell-flow stays 3-col + sidebar. */
body.ss-upsell-flow .elementor-element-4091a19,
body.ss-upsell-flow .elementor-element-a93797c,
body.ss-upsell-flow .elementor-element-b6023c9,
body.ss-upsell-flow .elementor-element-7a8e6d1,
body.ss-upsell-flow .elementor-element-31cec9a,
body.ss-upsell-flow .elementor-element-6f7408c,
body.ss-upsell-flow .elementor-widget-jet-smart-filters-checkboxes,
body.ss-upsell-flow .elementor-widget-jet-smart-filters-range,
body.ss-upsell-flow .elementor-widget-jet-smart-filters-apply-button,
body.ss-upsell-flow .elementor-widget-jet-smart-filters-pagination,
body.ss-upsell-flow .jet-smart-filters-pagination,
body.ss-upsell-flow .elementor-widget-eael-adv-accordion,
body.ss-upsell-flow .elementor-widget-jet-woo-builder-products-result-count,
body.ss-upsell-flow .elementor-widget-jet-woo-builder-products-ordering,
body.ss-upsell-flow .elementor-widget-wpr-woo-category-grid-pro,
body.ss-upsell-flow .jet-filters-counter,
body.ss-upsell-flow .elementor-column:has(.jet-filter):not(:has(.jet-woo-products)) {
	display: none !important;
}
body.ss-upsell-flow .elementor-element-3a97701,
body.ss-upsell-flow .elementor-column:has(.jet-woo-products) {
	width: 100% !important;
	max-width: 100% !important;
}
body.ss-upsell-flow .jet-woo-products,
body.ss-upsell-flow .jet-woo-products.col-row {
	display: flex !important;
	flex-wrap: wrap !important;
	margin: 0 -12px !important;
	gap: 0 !important;
}
body.ss-upsell-flow .elementor-element-3d9446c .jet-woo-products .jet-woo-products__item,
body.ss-upsell-flow .jet-woo-products .jet-woo-products__item {
	--columns: 4 !important;
	width: calc(100% / var(--columns)) !important;
	max-width: calc(100% / var(--columns)) !important;
	flex: 0 0 calc(100% / var(--columns)) !important;
	padding: 0 12px 28px !important;
	border: 0 !important;
	box-shadow: none !important;
	background: transparent !important;
	display: flex !important;
	flex-direction: column !important;
	align-self: stretch !important;
}
body.ss-upsell-flow .jet-woo-products__inner-box,
body.ss-upsell-flow .jet-woo-product-thumbnail {
	border: 0 !important;
	box-shadow: none !important;
	background: transparent !important;
}

/* Equal-height cards: pin ATC / Konsulteeri to the bottom row */
body.ss-upsell-flow .jet-woo-products__inner-box {
	display: flex !important;
	flex-direction: column !important;
	flex: 1 1 auto !important;
	width: 100% !important;
	min-height: 100% !important;
}
body.ss-upsell-flow .jet-woo-product-title {
	min-height: 40px;
}
body.ss-upsell-flow .jet-woo-product-price {
	min-height: 47px;
	flex-shrink: 0;
}
body.ss-upsell-flow .jet-woo-product-price .price del {
	margin-right: 6px;
}
/* Consult-only cards have no price block — reserve the same space as sale price row */
body.ss-upsell-flow .jet-woo-products__inner-box:not(:has(.jet-woo-product-price)) .jet-woo-product-title::after {
	content: "";
	display: block;
	height: 47px;
	flex-shrink: 0;
}
body.ss-upsell-flow .jet-woo-product-title + .jet-woo-product-button::before {
	display: none !important;
}
body.ss-upsell-flow .jet-woo-product-button {
	margin-top: auto !important;
	flex-shrink: 0;
	width: 100%;
}
body.ss-upsell-flow .jet-woo-product-button .button {
	width: 100%;
	display: block;
	box-sizing: border-box;
}
@media (max-width: 767px) {
	body.ss-upsell-flow .elementor-element-3d9446c .jet-woo-products .jet-woo-products__item,
	body.ss-upsell-flow .jet-woo-products .jet-woo-products__item {
		--columns: 2 !important;
	}
}

/* Beat child style.css square inputs/buttons on checkout only */
body.ss-checkout-page .ss-checkout-form .form-row input.input-text,
body.ss-checkout-page .ss-checkout-form .form-row textarea,
body.ss-checkout-page .ss-checkout-form .form-row select,
body.ss-checkout-page .ss-checkout-form .select2-container .select2-selection--single,
body.ss-checkout-doc .ss-checkout-form .form-row input.input-text,
body.ss-checkout-doc .ss-checkout-form .form-row textarea,
body.ss-checkout-doc .ss-checkout-form .form-row select,
body.ss-checkout-doc .ss-checkout-form .select2-container .select2-selection--single {
	border: 0 !important;
	border-bottom: 1px solid #bcbcbc !important;
	border-radius: 0 !important;
	min-height: 46px !important;
	height: 46px !important;
	box-shadow: none !important;
	box-sizing: border-box !important;
	padding: 10px 0 !important;
}
body.ss-checkout-page .ss-coupon-slot #coupon_code,
body.ss-checkout-page .ss-giftcard-slot #giftcard_code,
body.ss-checkout-page .ss-giftcard-slot input[type="text"],
body.ss-checkout-doc .ss-coupon-slot #coupon_code,
body.ss-checkout-doc .ss-giftcard-slot #giftcard_code,
body.ss-checkout-doc .ss-giftcard-slot input[type="text"],
body.ss-cart-page .ss-cart-coupon-slot #coupon_code,
body.ss-cart-page .ss-giftcard-slot input.input-text,
body.ss-cart-page .ss-giftcard-slot #giftcard_code,
body.ss-cart-page .ss-giftcard-slot input[type="text"] {
	border: 0 !important;
	border-bottom: 1px solid #bcbcbc !important;
	border-radius: 0 !important;
	min-height: 46px !important;
	height: 46px !important;
	padding: 10px 0 !important;
	box-shadow: none !important;
	box-sizing: border-box !important;
	background: #fff !important;
}
body.ss-checkout-page .ss-coupon-slot .button,
body.ss-checkout-page .ss-giftcard-slot .button,
body.ss-checkout-page .ss-giftcard-slot .ywgc_apply_gift_card_button {
	border-radius: var(--ss-radius) !important;
	text-transform: uppercase !important;
	font-weight: 400 !important;
	padding: 10px 14px !important;
	letter-spacing: 0 !important;
}

/* Shipping logos must not overlay the method name; kill plugin absolute pos */
body.ss-checkout-page .ss-shipping-slot li {
	overflow: visible;
}
body.ss-checkout-page .ss-shipping-slot label > img,
body.ss-checkout-page .ss-shipping-slot .ss-ship-logo,
body.ss-checkout-page .ss-shipping-slot .wc-venipak-shipping-logo,
body.ss-checkout-page .ss-shipping-slot img {
	position: static !important;
	left: auto !important;
	right: auto !important;
	top: auto !important;
	float: none !important;
	inset: auto !important;
	margin: 0 !important;
}

body.ss-checkout-page,
body.ss-checkout-page .ss-checkout-form,
body.ss-checkout-page .ss-checkout-layout,
body.ss-checkout-page .ss-checkout-primary {
	max-width: 100%;
}
body.ss-checkout-page .ss-checkout-layout {
	overflow-x: clip;
}

@media (max-width: 900px) {
	body.ss-checkout-page .ss-checkout-form .col2-set,
	body.ss-checkout-page .ss-checkout-form .col-1,
	body.ss-checkout-page .ss-checkout-form .col-2,
	body.ss-checkout-page .ss-checkout-form .woocommerce-billing-fields,
	body.ss-checkout-page .ss-checkout-form .woocommerce-billing-fields__field-wrapper {
		width: 100% !important;
		max-width: 100% !important;
		float: none !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
	.ss-upsell-footer {
		display: flex !important;
		flex-direction: column;
		align-items: stretch !important;
		gap: 10px;
		padding: 10px !important;
	}
}

.ss-promo-ico-gift svg {
	display: none;
}

/* ======================================================================
   Figma layout lock — 914 | 5px #f9f9fa | 519 columns on 1440 canvas
   ====================================================================== */
body.ss-checkout-page .ss-checkout-shell,
body.ss-checkout-doc .ss-checkout-shell {
	max-width: none !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.ss-checkout-page .ss-checkout-form,
body.ss-checkout-doc .ss-checkout-form {
	max-width: 1440px !important;
}

body.ss-checkout-page .ss-checkout-layout,
body.ss-checkout-doc .ss-checkout-layout {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) 5px minmax(280px, 520px) !important;
	gap: 0 !important;
	align-items: start !important;
}

body.ss-checkout-page .ss-checkout-col-divider,
body.ss-checkout-doc .ss-checkout-col-divider {
	display: block !important;
	background-color: #f9f9fa !important;
	width: 5px !important;
	min-width: 5px !important;
	max-width: 5px !important;
	align-self: stretch !important;
	min-height: 480px;
}

body.ss-checkout-page .ss-checkout-primary,
body.ss-checkout-doc .ss-checkout-primary {
	padding-right: 32px !important;
}

body.ss-checkout-page .ss-checkout-sidebar,
body.ss-checkout-doc .ss-checkout-sidebar {
	padding-left: 32px !important;
	border: 0 !important;
	background: transparent !important;
}

/* Section headings — same style in left and right columns */
body.ss-checkout-page .ss-panel-contact h2,
body.ss-checkout-page .ss-panel-shipping h2,
body.ss-checkout-page .ss-panel-payment h2,
body.ss-checkout-page .ss-panel-extras h2,
body.ss-checkout-page #order_review_heading {
	font-size: 22px !important;
	font-weight: 500 !important;
	line-height: 1.3 !important;
	color: #3b3b3f !important;
	margin: 0 0 20px !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
}

body.ss-checkout-page .ss-panel-contact .ss-panel-head {
	margin-bottom: 20px;
}

body.ss-checkout-page .ss-panel-contact .ss-panel-head h2 {
	margin-bottom: 0 !important;
}

body.ss-checkout-page .ss-checkout-primary > .ss-panel,
body.ss-checkout-page .ss-order-card {
	margin-top: 0;
	padding-top: 0;
}

@media (max-width: 900px) {
	body.ss-checkout-page .ss-checkout-layout,
	body.ss-checkout-doc .ss-checkout-layout {
		grid-template-columns: 1fr !important;
	}
	body.ss-checkout-page .ss-checkout-col-divider,
	body.ss-checkout-doc .ss-checkout-col-divider {
		display: none !important;
	}
	body.ss-checkout-page .ss-checkout-form,
	body.ss-checkout-doc .ss-checkout-form {
		padding: 8px 10px 40px !important;
	}
	body.ss-checkout-page .ss-checkout-primary,
	body.ss-checkout-doc .ss-checkout-primary {
		padding-right: 0 !important;
		padding-left: 0 !important;
	}
	body.ss-checkout-page .ss-checkout-sidebar,
	body.ss-checkout-doc .ss-checkout-sidebar {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
}

/* ======================================================================
   Figma pass — header, country select, sidebar summary
   ====================================================================== */

/* Header: force white contact links (theme overrides) */
body.ss-checkout-page .ss-checkout-contactbar a.ss-cbar-item,
body.ss-checkout-doc .ss-checkout-contactbar a.ss-cbar-item,
body.ss-checkout-page .ss-checkout-contactbar .ss-cbar-item,
body.ss-checkout-doc .ss-checkout-contactbar .ss-cbar-item {
	color: #fff !important;
}
body.ss-checkout-page .ss-checkout-contactbar .ss-cbar-ico,
body.ss-checkout-doc .ss-checkout-contactbar .ss-cbar-ico {
	background-color: #fff !important;
}

/* Country Select2 — clean dropdown */
body.ss-checkout-page #billing_country_field .select2-container,
body.ss-checkout-doc #billing_country_field .select2-container {
	width: 100% !important;
}
body.ss-checkout-page #billing_country_field .select2-container--default .select2-selection--single,
body.ss-checkout-doc #billing_country_field .select2-container--default .select2-selection--single {
	border: 0 !important;
	border-bottom: 1px solid #bcbcbc !important;
	border-radius: 0 !important;
	height: 46px !important;
	min-height: 46px !important;
	max-height: 46px !important;
	padding: 0 !important;
	background: #fff !important;
	box-shadow: none !important;
	transition: border-color 0.15s ease;
	display: flex !important;
	align-items: center !important;
}
body.ss-checkout-page #billing_country_field .select2-container--default.select2-container--open .select2-selection--single,
body.ss-checkout-doc #billing_country_field .select2-container--default.select2-container--open .select2-selection--single,
body.ss-checkout-page #billing_country_field .select2-container--default.select2-container--focus .select2-selection--single,
body.ss-checkout-doc #billing_country_field .select2-container--default.select2-container--focus .select2-selection--single {
	border-bottom-color: var(--ss-blue) !important;
	box-shadow: none !important;
}
body.ss-checkout-page #billing_country_field .select2-selection__rendered,
body.ss-checkout-doc #billing_country_field .select2-selection__rendered {
	line-height: 44px !important;
	color: var(--ss-text) !important;
	padding-left: 0 !important;
	padding-right: 28px !important;
}
body.ss-checkout-page #billing_country_field .select2-selection__arrow,
body.ss-checkout-doc #billing_country_field .select2-selection__arrow {
	height: 46px !important;
	top: 0 !important;
	right: 10px !important;
}
body.ss-checkout-page .select2-container--default .select2-dropdown,
body.ss-checkout-doc .select2-container--default .select2-dropdown {
	border: 1px solid #e2e2e3 !important;
	border-radius: var(--ss-radius) !important;
	box-shadow: 0 8px 24px rgba(22, 49, 176, 0.1) !important;
	overflow: hidden;
}
body.ss-checkout-page .select2-container--default .select2-search--dropdown,
body.ss-checkout-doc .select2-container--default .select2-search--dropdown {
	padding: 10px !important;
	background: #fff;
}
body.ss-checkout-page .select2-container--default .select2-search--dropdown .select2-search__field,
body.ss-checkout-doc .select2-container--default .select2-search--dropdown .select2-search__field {
	border: 1px solid #e2e2e3 !important;
	border-radius: var(--ss-radius) !important;
	min-height: 40px !important;
	padding: 8px 12px !important;
	outline: none !important;
}
body.ss-checkout-page .select2-container--default .select2-search--dropdown .select2-search__field:focus,
body.ss-checkout-doc .select2-container--default .select2-search--dropdown .select2-search__field:focus {
	border-color: var(--ss-blue) !important;
}
body.ss-checkout-page .select2-container--default .select2-results__option,
body.ss-checkout-doc .select2-container--default .select2-results__option {
	padding: 10px 14px !important;
	font-size: 14px;
}
body.ss-checkout-page .select2-container--default .select2-results__option--highlighted[aria-selected],
body.ss-checkout-doc .select2-container--default .select2-results__option--highlighted[aria-selected] {
	background: var(--ss-blue) !important;
	color: #fff !important;
}
body.ss-checkout-page .select2-container--default .select2-results__option[aria-selected="true"],
body.ss-checkout-doc .select2-container--default .select2-results__option[aria-selected="true"] {
	background: #eef2ff !important;
	color: var(--ss-text) !important;
}

/* Sidebar — Figma order summary stack */
body.ss-checkout-page .ss-order-card .ss-sidebar-promos,
body.ss-checkout-doc .ss-order-card .ss-sidebar-promos {
	margin: 0;
	padding: 0;
}
body.ss-checkout-page .ss-order-card .ss-freeship,
body.ss-checkout-doc .ss-order-card .ss-freeship {
	border-top: 1px solid var(--ss-line);
	margin-top: 0;
	padding-top: 16px;
}
body.ss-checkout-page .ss-order-card table.shop_table tfoot tr.order-total th,
body.ss-checkout-page .ss-order-card table.shop_table tfoot tr.order-total td,
body.ss-checkout-doc .ss-order-card table.shop_table tfoot tr.order-total th,
body.ss-checkout-doc .ss-order-card table.shop_table tfoot tr.order-total td {
	border-bottom: 1px solid var(--ss-line) !important;
	padding-top: 14px !important;
	padding-bottom: 14px !important;
}
body.ss-checkout-page .ss-order-card tfoot .order-total td,
body.ss-checkout-doc .ss-order-card tfoot .order-total td {
	font-size: 22px !important;
	font-weight: 500 !important;
	color: #4c4c50 !important;
}
body.ss-checkout-page .ss-order-card tfoot .order-total td strong,
body.ss-checkout-page .ss-order-card tfoot .order-total td .woocommerce-Price-amount,
body.ss-checkout-doc .ss-order-card tfoot .order-total td strong,
body.ss-checkout-doc .ss-order-card tfoot .order-total td .woocommerce-Price-amount {
	font-weight: 500 !important;
}
body.ss-checkout-page .ss-order-card .cart_item .product-total,
body.ss-checkout-doc .ss-order-card .cart_item .product-total {
	font-weight: 400;
	color: #757679 !important;
	font-size: 14px;
}
body.ss-checkout-page .ss-order-card .ss-recap-name,
body.ss-checkout-doc .ss-order-card .ss-recap-name {
	color: #757679 !important;
	font-weight: 700;
	font-size: 13px;
}
body.ss-checkout-page .ss-order-card .ss-recap-qty,
body.ss-checkout-doc .ss-order-card .ss-recap-qty {
	color: #99999c;
	font-size: 15px;
}
body.ss-checkout-page .ss-order-card .ss-recap-thumb,
body.ss-checkout-doc .ss-order-card .ss-recap-thumb {
	width: 36px;
	height: auto;
	max-height: 76px;
	border: 0;
	border-radius: 0;
	object-fit: contain;
}
body.ss-checkout-page .ss-checkout-sidebar .ss-btn-next,
body.ss-checkout-doc .ss-checkout-sidebar .ss-btn-next {
	margin-top: 0;
	border-radius: var(--ss-radius);
	min-height: 48px;
	font-size: 14px;
	font-weight: 400;
	text-transform: uppercase;
	letter-spacing: 0;
}

/* Coupon / gift inputs — no outer box, inline row */
body.ss-checkout-page .ss-order-card .ss-promo-body .checkout_coupon,
body.ss-checkout-page .ss-order-card .ss-promo-body .ywgc_enter_code,
body.ss-checkout-doc .ss-order-card .ss-promo-body .checkout_coupon,
body.ss-checkout-doc .ss-order-card .ss-promo-body .ywgc_enter_code {
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}
body.ss-checkout-page .ss-coupon-slot input.input-text,
body.ss-checkout-page .ss-giftcard-slot input.input-text,
body.ss-checkout-doc .ss-coupon-slot input.input-text,
body.ss-checkout-doc .ss-giftcard-slot input.input-text {
	border: 0 !important;
	border-bottom: 1px solid #bcbcbc !important;
	border-radius: 0 !important;
	min-height: 44px !important;
	padding: 10px 0 !important;
	transition: border-color 0.15s ease;
	background: #fff !important;
	box-shadow: none !important;
}
body.ss-checkout-page .ss-coupon-slot input.input-text:hover,
body.ss-checkout-page .ss-giftcard-slot input.input-text:hover,
body.ss-checkout-doc .ss-coupon-slot input.input-text:hover,
body.ss-checkout-doc .ss-giftcard-slot input.input-text:hover {
	border-bottom-color: #bcbcbc !important;
}
body.ss-checkout-page .ss-coupon-slot input.input-text:focus,
body.ss-checkout-page .ss-giftcard-slot input.input-text:focus,
body.ss-checkout-doc .ss-coupon-slot input.input-text:focus,
body.ss-checkout-doc .ss-giftcard-slot input.input-text:focus {
	border-bottom-color: var(--ss-blue) !important;
	box-shadow: none !important;
	outline: none !important;
}
body.ss-checkout-page .ss-giftcard-slot .ywgc_enter_code > div > p:not(.form-row),
body.ss-checkout-page .ss-giftcard-slot .ywgc_enter_code > p:not(.form-row),
body.ss-checkout-doc .ss-giftcard-slot .ywgc_enter_code > div > p:not(.form-row),
body.ss-checkout-doc .ss-giftcard-slot .ywgc_enter_code > p:not(.form-row) {
	display: none !important;
}
body.ss-checkout-page .woocommerce .ss-coupon-slot .checkout_coupon .button,
body.ss-checkout-doc .woocommerce .ss-coupon-slot .checkout_coupon .button {
	border-radius: var(--ss-radius) !important;
}
body.ss-checkout-page .ss-coupon-slot .checkout_coupon,
body.ss-checkout-doc .ss-coupon-slot .checkout_coupon {
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: stretch !important;
	width: 100% !important;
}
body.ss-checkout-page .ss-coupon-slot .checkout_coupon .form-row-first,
body.ss-checkout-page .ss-coupon-slot .checkout_coupon .form-row-last,
body.ss-checkout-doc .ss-coupon-slot .checkout_coupon .form-row-first,
body.ss-checkout-doc .ss-coupon-slot .checkout_coupon .form-row-last {
	float: none !important;
	width: auto !important;
	clear: none !important;
}
body.ss-checkout-page .ss-coupon-slot .checkout_coupon .form-row-first,
body.ss-checkout-doc .ss-coupon-slot .checkout_coupon .form-row-first {
	flex: 1 1 auto !important;
	min-width: 0 !important;
}
body.ss-checkout-page .ss-coupon-slot .checkout_coupon .form-row-last,
body.ss-checkout-doc .ss-coupon-slot .checkout_coupon .form-row-last {
	flex: 0 0 auto !important;
}
body.ss-checkout-page .ss-coupon-slot .checkout_coupon .clear,
body.ss-checkout-doc .ss-coupon-slot .checkout_coupon .clear {
	display: none !important;
}

/* YITH kinkekrediit — same input+button row as coupon (override plugin 50% float cols) */
body.ss-checkout-page .ss-giftcard-slot .ywgc_enter_code,
body.ss-checkout-doc .ss-giftcard-slot .ywgc_enter_code {
	background: transparent !important;
	color: inherit !important;
	padding: 0 !important;
	margin: 0 !important;
	border: 0 !important;
	box-shadow: none !important;
	width: 100% !important;
}
body.ss-checkout-page .ss-promo-body:not([hidden]) .ss-giftcard-slot .ywgc_enter_code,
body.ss-checkout-page .ss-promo-body.is-open .ss-giftcard-slot .ywgc_enter_code,
body.ss-checkout-doc .ss-promo-body:not([hidden]) .ss-giftcard-slot .ywgc_enter_code,
body.ss-checkout-doc .ss-promo-body.is-open .ss-giftcard-slot .ywgc_enter_code {
	display: flex !important;
}
body.ss-checkout-page .ss-giftcard-slot .ywgc_enter_code:hover,
body.ss-checkout-doc .ss-giftcard-slot .ywgc_enter_code:hover {
	background: transparent !important;
	color: inherit !important;
}
body.ss-checkout-page .ss-giftcard-slot .ywgc_enter_code > div,
body.ss-checkout-doc .ss-giftcard-slot .ywgc_enter_code > div {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: stretch !important;
	gap: 10px !important;
	width: 100% !important;
	margin: 0 !important;
	position: static !important;
}
body.ss-checkout-page .ss-giftcard-slot .ywgc_enter_code > div:after,
body.ss-checkout-doc .ss-giftcard-slot .ywgc_enter_code > div:after {
	display: none !important;
}
body.ss-checkout-page .ss-giftcard-slot .ywgc_enter_code .form-row,
body.ss-checkout-doc .ss-giftcard-slot .ywgc_enter_code .form-row,
body.ss-cart-page .ss-giftcard-slot .ywgc_enter_code .form-row {
	float: none !important;
	width: auto !important;
	max-width: none !important;
	padding: 0 !important;
	margin: 0 !important;
}
body.ss-checkout-page .ss-giftcard-slot .ywgc_enter_code .form-row-first,
body.ss-checkout-page .ss-giftcard-slot .ywgc_enter_code .form-row-last,
body.ss-checkout-doc .ss-giftcard-slot .ywgc_enter_code .form-row-first,
body.ss-checkout-doc .ss-giftcard-slot .ywgc_enter_code .form-row-last {
	float: none !important;
	width: auto !important;
	max-width: none !important;
	padding: 0 !important;
	margin: 0 !important;
}
body.ss-checkout-page .ss-giftcard-slot .ywgc_enter_code .form-row-first,
body.ss-checkout-doc .ss-giftcard-slot .ywgc_enter_code .form-row-first,
body.ss-cart-page .ss-giftcard-slot .ywgc_enter_code .form-row-first {
	flex: 1 1 auto !important;
	min-width: 0 !important;
}
body.ss-checkout-page .ss-giftcard-slot .ywgc_enter_code .form-row-last,
body.ss-checkout-doc .ss-giftcard-slot .ywgc_enter_code .form-row-last,
body.ss-cart-page .ss-giftcard-slot .ywgc_enter_code .form-row-last {
	flex: 0 0 auto !important;
}
body.ss-checkout-page .ss-giftcard-slot .ywgc_enter_code .clear,
body.ss-checkout-doc .ss-giftcard-slot .ywgc_enter_code .clear,
body.ss-cart-page .ss-giftcard-slot .ywgc_enter_code .clear {
	display: none !important;
}
body.ss-checkout-page .ss-giftcard-slot .ywgc_enter_code #giftcard_code,
body.ss-checkout-doc .ss-giftcard-slot .ywgc_enter_code #giftcard_code,
body.ss-cart-page .ss-giftcard-slot .ywgc_enter_code #giftcard_code {
	width: 100% !important;
	max-width: none !important;
}
body.ss-checkout-page button.ss-promo-row,
body.ss-checkout-doc button.ss-promo-row {
	background: transparent !important;
	color: inherit !important;
	box-shadow: none !important;
}
body.ss-checkout-page button.ss-promo-row,
body.ss-checkout-doc button.ss-promo-row {
	padding: 16px !important;
}
body.ss-checkout-page .ss-promo-coupon .ss-promo-link,
body.ss-checkout-doc .ss-promo-coupon .ss-promo-link {
	color: #1631b0 !important;
}
body.ss-cart-page button.ss-promo-row {
	background: transparent !important;
	background-color: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
	color: inherit !important;
	padding: 16px !important;
}
body.ss-cart-page .ss-promo-coupon .ss-promo-link {
	color: #1631b0 !important;
	font-weight: 400 !important;
	text-decoration: none !important;
	text-transform: uppercase !important;
}
body.ss-cart-page button.ss-promo-row:hover .ss-promo-link,
body.ss-cart-page button.ss-promo-row:focus .ss-promo-link,
body.ss-cart-page button.ss-promo-row:focus-visible .ss-promo-link {
	color: var(--ss-blue) !important;
	text-decoration: underline !important;
}
body.ss-cart-page button.ss-promo-row:hover,
body.ss-cart-page button.ss-promo-row:focus,
body.ss-cart-page button.ss-promo-row:focus-visible {
	background: transparent !important;
	background-color: transparent !important;
}
body.ss-cart-page .ss-promo-body.is-open,
body.ss-cart-page .ss-promo-body:not([hidden]) {
	display: block !important;
}
body.ss-cart-page .ss-promo-body.is-open .coupon,
body.ss-cart-page .ss-promo-body:not([hidden]) .ss-cart-coupon-slot .coupon,
body.ss-cart-page .ss-promo-body.is-open .checkout_coupon,
body.ss-cart-page .ss-promo-body:not([hidden]) .checkout_coupon {
	display: flex !important;
	width: 100%;
}
body.ss-checkout-page .ss-freeship .fsb-wrapper,
body.ss-checkout-doc .ss-freeship .fsb-wrapper {
	overflow: hidden;
}

/* Login step (Logige sisse) */
body.ss-login-step .ss-login-step-wrap,
body.ss-checkout-doc.ss-login-step .ss-login-step-wrap {
	max-width: 560px;
	margin: 0 auto;
	padding: 48px 24px 80px;
}
.ss-login-step-card {
	text-align: center;
}
.ss-login-title {
	font-size: 28px;
	font-weight: 700;
	line-height: 1.25;
	margin: 0 0 12px;
	color: var(--ss-text);
}
.ss-login-sub {
	font-size: 15px;
	line-height: 1.5;
	color: var(--ss-muted);
	margin: 0 0 28px;
}
.ss-login-field {
	text-align: left;
	margin-bottom: 20px;
}
.ss-login-field label {
	display: block;
	font-weight: 700;
	font-size: 14px;
	margin-bottom: 8px;
	color: var(--ss-text);
}
.ss-login-field input[type="email"],
.ss-login-field input[type="password"] {
	width: 100%;
	min-height: 48px;
	border: 0;
	border-bottom: 1px solid #bcbcbc;
	border-radius: 0;
	padding: 10px 0;
	font-size: 16px;
	box-sizing: border-box;
	background: #fff;
	box-shadow: none;
}
.ss-login-field input:focus {
	border-bottom-color: var(--ss-blue);
	box-shadow: none;
	outline: none;
}
.ss-login-step-card .ss-btn {
	display: block;
	width: 100%;
	margin: 0 0 12px;
	box-sizing: border-box;
}
.ss-login-step-card .ss-btn-secondary,
.ss-login-step-card a.ss-btn-secondary {
	background: #fff !important;
	color: var(--ss-text) !important;
	border: 1px solid #c8c8cc !important;
	text-decoration: none;
	line-height: 1.2;
	padding-top: 14px;
	padding-bottom: 14px;
}
.ss-login-email-display {
	font-weight: 600;
	margin: 0 0 20px;
	color: var(--ss-text);
}
.ss-login-forgot {
	margin: -8px 0 16px;
	text-align: left;
	font-size: 14px;
}
.ss-login-forgot a {
	color: var(--ss-blue);
}
.ss-login-error {
	color: #b42318;
	font-size: 14px;
	margin-top: 12px;
}
.ss-link-btn {
	background: none;
	border: 0;
	color: var(--ss-muted);
	font-size: 14px;
	cursor: pointer;
	margin-top: 8px;
	text-decoration: underline;
}
.ss-link-btn:hover {
	color: var(--ss-blue);
}
@media (max-width: 767px) {
	.ss-checkout-stepper {
		padding-left: 0;
		padding-right: 0;
	}
	.ss-login-title {
		font-size: 22px;
	}
}

/* Unified checkout checkboxes (not terms — see .ss-terms-slot above) */
body.ss-checkout-page #wrap_as_gift,
body.ss-checkout-doc #wrap_as_gift,
body.ss-checkout-page .ss-check-ui:not(#terms),
body.ss-checkout-doc .ss-check-ui:not(#terms),
body.ss-checkout-page .ss-payment-slot .payment_box input[type="checkbox"],
body.ss-checkout-doc .ss-payment-slot .payment_box input[type="checkbox"] {
	appearance: none;
	-webkit-appearance: none;
	width: 20px !important;
	height: 20px !important;
	min-width: 20px !important;
	max-width: 20px !important;
	max-height: 20px !important;
	border: 1.5px solid #c5c5c9;
	border-radius: 0;
	background: #fff;
	cursor: pointer;
	position: relative;
	flex: 0 0 20px !important;
	flex-shrink: 0 !important;
	margin: 1px 0 0;
	padding: 0;
	vertical-align: top;
}
body.ss-checkout-page #wrap_as_gift:checked,
body.ss-checkout-doc #wrap_as_gift:checked,
body.ss-checkout-page .ss-check-ui:not(#terms):checked,
body.ss-checkout-doc .ss-check-ui:not(#terms):checked,
body.ss-checkout-page .ss-payment-slot .payment_box input[type="checkbox"]:checked,
body.ss-checkout-doc .ss-payment-slot .payment_box input[type="checkbox"]:checked {
	background-color: var(--ss-blue);
	border-color: var(--ss-blue);
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 10'%3E%3Cpath fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M1 5.2 4.2 8.4 11 1.6'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: 11px 9px;
}
body.ss-checkout-page #wrap_as_gift:focus-visible,
body.ss-checkout-doc #wrap_as_gift:focus-visible,
body.ss-checkout-page .ss-check-ui:not(#terms):focus-visible,
body.ss-checkout-doc .ss-check-ui:not(#terms):focus-visible,
body.ss-checkout-page .ss-payment-slot .wc_payment_method > input[type="radio"]:focus-visible,
body.ss-checkout-doc .ss-payment-slot .wc_payment_method > input[type="radio"]:focus-visible {
	outline: 2px solid rgba(22, 49, 176, 0.35);
	outline-offset: 2px;
}
body.ss-checkout-page .ss-terms-slot #terms:focus-visible,
body.ss-checkout-doc .ss-terms-slot #terms:focus-visible {
	outline: none;
}
body.ss-checkout-page .ss-terms-slot label:has(#terms:focus-visible)::before,
body.ss-checkout-doc .ss-terms-slot label:has(#terms:focus-visible)::before {
	outline: 2px solid rgba(22, 49, 176, 0.35);
	outline-offset: 2px;
}
body.ss-checkout-page .ss-shipping-slot input[type="radio"],
body.ss-checkout-doc .ss-shipping-slot input[type="radio"] {
	appearance: none;
	-webkit-appearance: none;
	width: 18px;
	height: 18px;
	border: 1.5px solid #c5c5c9;
	border-radius: 50%;
	background: #fff;
	accent-color: transparent;
}
body.ss-checkout-page .ss-shipping-slot input[type="radio"]:checked {
	border-color: var(--ss-blue);
	box-shadow: inset 0 0 0 4px var(--ss-blue);
}

/* ==================================================================
   Custom cart page layout
   ================================================================== */
body.ss-cart-page .wpcss-footer-btn,
body.ss-cart-page .wpcss-area,
body.ss-cart-page .woocommerce-cart-form .actions .wpcss-btn,
body.ss-cart-page button.wpcss-share {
	display: none !important;
}
body.ss-cart-page .elementor-widget-wpr-page-cart,
body.ss-cart-page .wpr-cart-wrapper .wpr-cart-section-wrap,
body.ss-cart-page table.wpr-shop-table {
	display: none !important;
}

.ss-cart-shell {
	width: 100%;
}

.ss-cart-form {
	max-width: var(--ss-checkout-max, 1440px);
	margin: 0 auto;
	padding: 24px var(--ss-checkout-pad, 40px) 64px;
}
.ss-cart-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 5px minmax(280px, 520px);
	gap: 0;
	align-items: start;
}
.ss-cart-primary {
	padding-right: 32px;
	min-width: 0;
}
.ss-cart-sidebar {
	padding-left: 32px;
	min-width: 0;
	position: sticky;
	top: 16px;
}
.ss-cart-heading,
.ss-cart-summary-title {
	font-size: 22px;
	font-weight: 500;
	line-height: 1.3;
	margin: 0 0 20px;
	color: var(--ss-navy);
	text-transform: none;
}
.ss-cart-summary-title {
	margin-bottom: 16px;
}
.ss-cart-items {
	display: flex;
	flex-direction: column;
	gap: 0;
	border-top: 1px solid var(--ss-line);
}
.ss-cart-item {
	display: grid;
	grid-template-columns: 88px minmax(0, 1fr);
	gap: 16px;
	padding: 20px 0;
	border-bottom: 1px solid var(--ss-line);
	align-items: start;
}
.ss-cart-item-thumb {
	border-radius: 6px;
	overflow: hidden;
}
.ss-cart-item-thumb img {
	width: 88px;
	height: 88px;
	object-fit: cover;
	border-radius: 6px !important;
	border: 1px solid var(--ss-line);
	display: block;
}
.ss-cart-item-top {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px;
}
.ss-cart-item-name {
	color: var(--ss-navy);
	font-weight: 600;
	font-size: 15px;
	line-height: 1.35;
	text-decoration: none;
}
.ss-cart-item-name:hover {
	color: var(--ss-blue);
}
.ss-cart-item-remove .remove {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	color: var(--ss-muted) !important;
	font-size: 22px;
	line-height: 1;
	text-decoration: none;
	background: transparent;
}
.ss-cart-item-remove .remove:hover {
	color: var(--ss-danger) !important;
	background: #fef2f2;
}
.ss-cart-item-meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	margin-top: 12px;
}
.ss-cart-item-price {
	font-weight: 700;
	font-size: 15px;
	color: var(--ss-navy);
	white-space: nowrap;
}
.ss-cart-item-qty .quantity {
	display: none !important;
}
body.ss-cart-page .ss-cart-item-qty .skinstudio-sidecart-qty.xoo-wsc-qty-box {
	display: grid !important;
	grid-template-columns: 28px 40px 28px;
	align-items: stretch;
	width: auto !important;
	max-width: 96px;
	border: 1px solid #d8dce6;
	border-radius: var(--ss-radius);
	overflow: hidden;
	background: #fff;
}
body.ss-cart-page .ss-cart-item-qty .skinstudio-sidecart-qty .xoo-wsc-qty-minus,
body.ss-cart-page .ss-cart-item-qty .skinstudio-sidecart-qty .xoo-wsc-qty-plus {
	display: flex !important;
	align-items: center;
	justify-content: center;
	appearance: none;
	border: 0 !important;
	border-radius: 0 !important;
	background: #f4f6fb !important;
	color: #1631b0 !important;
	width: 28px !important;
	min-width: 28px !important;
	height: 28px !important;
	padding: 0 !important;
	margin: 0 !important;
	font-size: 16px !important;
	font-weight: 600 !important;
	cursor: pointer;
}
body.ss-cart-page .ss-cart-item-qty .skinstudio-sidecart-qty .xoo-wsc-qty-minus:hover,
body.ss-cart-page .ss-cart-item-qty .skinstudio-sidecart-qty .xoo-wsc-qty-plus:hover {
	background: #1631b0 !important;
	color: #fff !important;
}
body.ss-cart-page .ss-cart-item-qty .skinstudio-sidecart-qty .xoo-wsc-qty-input {
	display: block !important;
	width: 40px !important;
	min-width: 40px !important;
	height: 28px !important;
	border: 0 !important;
	border-left: 1px solid #d8dce6 !important;
	border-right: 1px solid #d8dce6 !important;
	border-radius: 0 !important;
	background: #fff !important;
	text-align: center;
	font-size: 14px !important;
	font-weight: 600;
	padding: 0 !important;
	margin: 0 !important;
	-moz-appearance: textfield;
}
body.ss-cart-page .ss-cart-item-qty .skinstudio-sidecart-qty .xoo-wsc-qty-input::-webkit-outer-spin-button,
body.ss-cart-page .ss-cart-item-qty .skinstudio-sidecart-qty .xoo-wsc-qty-input::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}
body.ss-cart-page .ss-cart-form.ss-cart-updating,
body.ss-cart-page div.cart_totals.ss-cart-updating {
	opacity: 0.55;
	pointer-events: none;
}
.ss-cart-item-qty .quantity .qty {
	width: 48px;
	min-height: 40px;
	height: 40px;
	border: 0 !important;
	border-radius: 0 !important;
	text-align: center;
	padding: 0 4px !important;
	font-weight: 600;
	box-shadow: none !important;
}
body.ss-cart-page .ss-cart-item .skinstudio-cart-stock,
body.ss-cart-page .ss-cart-item .stock {
	display: block;
	margin-top: 6px;
	font-size: 12px;
}
.ss-cart-update-btn {
	position: absolute !important;
	left: -9999px !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
}
body.ss-cart-page .ss-cart-totals .shop_table {
	width: 100%;
	border: 0;
	margin: 0 0 16px;
}
body.ss-cart-page .ss-cart-totals tr.cart-subtotal {
	display: table-row !important;
}
body.ss-cart-page .ss-order-card .cart-subtotal th,
body.ss-cart-doc .ss-order-card .cart-subtotal th {
	color: var(--ss-muted);
	font-weight: 500;
	text-transform: none !important;
	letter-spacing: 0 !important;
	font-size: 14px !important;
	border-bottom: 0 !important;
}
body.ss-cart-page .ss-order-card .cart-subtotal td,
body.ss-cart-doc .ss-order-card .cart-subtotal td {
	text-align: right;
	font-weight: 600;
	color: var(--ss-text);
	border-bottom: 0 !important;
}
body.ss-cart-page .ss-order-card table.shop_table tr.order-total th,
body.ss-cart-page .ss-order-card table.shop_table tr.order-total td,
body.ss-cart-doc .ss-order-card table.shop_table tr.order-total th,
body.ss-cart-doc .ss-order-card table.shop_table tr.order-total td {
	border-top: 1px solid var(--ss-line) !important;
	border-bottom: 0 !important;
	padding-top: 14px !important;
}
body.ss-cart-page .ss-order-card .ss-freeship,
body.ss-cart-doc .ss-order-card .ss-freeship {
	border-top: 1px solid var(--ss-line);
	margin-top: 0;
	padding-top: 16px;
}
body.ss-cart-page .ss-order-card .ss-sidebar-promos,
body.ss-cart-doc .ss-order-card .ss-sidebar-promos {
	margin: 0;
	padding: 0;
}
/* Kinkekrediit — only hide the YITH banner; form lives in promo slot */
body.ss-cart-page .ywgc_have_code,
body.ss-cart-page .ss-giftcard-slot .ywgc_have_code {
	display: none !important;
}
body.ss-cart-page .ss-promo-body:not([hidden]) .ss-giftcard-slot .ywgc_enter_code {
	display: flex !important;
}
body.ss-cart-page .ss-promo-body[hidden] .ss-giftcard-slot .ywgc_enter_code {
	display: none !important;
}
body.ss-cart-page .ss-cart-totals th,
body.ss-cart-page .ss-cart-totals td {
	padding: 8px 0;
	border: 0;
	vertical-align: top;
	font-size: 14px;
}
body.ss-cart-page .ss-cart-totals th {
	color: var(--ss-muted);
	font-weight: 600;
	text-transform: none;
	letter-spacing: 0;
}
body.ss-cart-page .ss-cart-totals td {
	text-align: right;
	color: var(--ss-text);
	font-weight: 600;
}
body.ss-cart-page .ss-cart-totals .order-total th,
body.ss-cart-page .ss-cart-totals .order-total td {
	padding-top: 12px;
	font-size: 16px;
	color: var(--ss-navy);
}
body.ss-cart-page .ss-cart-totals .order-total td {
	font-weight: 500;
}
body.ss-cart-page .wc-proceed-to-checkout {
	margin-top: 8px;
}
body.ss-cart-page .wc-proceed-to-checkout .checkout-button {
	width: 100%;
	text-transform: uppercase;
	letter-spacing: 0;
	padding: 14px 18px;
	font-size: 15px;
	font-weight: 400;
}
body.ss-cart-page .ss-cart-coupon-slot .coupon {
	display: flex;
	gap: 8px;
	align-items: stretch;
	margin: 0;
}
body.ss-cart-page .ss-cart-coupon-slot .coupon #coupon_code {
	flex: 1 1 auto;
	min-width: 0;
}
body.ss-cart-page .ss-cart-coupon-slot .coupon .button {
	flex: 0 0 auto;
	white-space: nowrap;
	border-radius: var(--ss-radius) !important;
	text-transform: uppercase !important;
	font-weight: 400 !important;
	min-height: 46px;
	padding: 10px 14px !important;
}
body.ss-cart-page .ss-cart-promos {
	margin-top: 0;
}
body.ss-cart-page .ss-cart-promos .ss-promo:first-child {
	border-top: 1px solid var(--ss-line);
}
body.ss-cart-page .ss-giftcard-slot .ywgc_enter_code > div > p:not(.form-row),
body.ss-cart-page .ss-giftcard-slot .ywgc_enter_code > p:not(.form-row) {
	display: none !important;
}
body.ss-cart-page .ss-giftcard-slot .ywgc_enter_code,
body.ss-cart-doc .ss-giftcard-slot .ywgc_enter_code {
	background: transparent !important;
	color: inherit !important;
	border: 0 !important;
	box-shadow: none !important;
	padding: 0 !important;
	margin: 0 !important;
	width: 100% !important;
	display: block !important;
}
body.ss-cart-page .ss-giftcard-slot .ywgc_enter_code:hover {
	background: transparent !important;
	color: inherit !important;
}
body.ss-cart-page .ss-giftcard-slot .ywgc_enter_code > div {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: stretch !important;
	gap: 10px !important;
	width: 100% !important;
	margin: 0 !important;
	position: static !important;
}
body.ss-cart-page .ss-giftcard-slot .ywgc_enter_code > div:after {
	display: none !important;
}
body.ss-cart-page .ss-giftcard-slot .ywgc_enter_code .form-row {
	float: none !important;
	width: auto !important;
	max-width: none !important;
	padding: 0 !important;
	margin: 0 !important;
}
body.ss-cart-page .ss-giftcard-slot .ywgc_enter_code .form-row-first,
body.ss-cart-page .ss-giftcard-slot .ywgc_enter_code .form-row-last {
	float: none !important;
	width: auto !important;
	max-width: none !important;
	padding: 0 !important;
	margin: 0 !important;
}
body.ss-cart-page .ss-giftcard-slot .ywgc_enter_code .form-row-first {
	flex: 1 1 auto;
	min-width: 0;
}
body.ss-cart-page .ss-giftcard-slot .ywgc_enter_code .form-row-last {
	flex: 0 0 auto;
}
body.ss-cart-page .ss-giftcard-slot input.input-text,
body.ss-cart-page .ss-giftcard-slot #giftcard_code {
	border: 0 !important;
	border-bottom: 1px solid #bcbcbc !important;
	border-radius: 0 !important;
	min-height: 46px;
	padding: 10px 0 !important;
	box-shadow: none !important;
	background: #fff !important;
}
body.ss-cart-page .ss-giftcard-slot .button,
body.ss-cart-page .ss-giftcard-slot .ywgc_apply_gift_card_button {
	border-radius: var(--ss-radius) !important;
	min-height: 46px;
	padding: 10px 14px !important;
}
/* Cart page: keep Elementor header + FiboSearch bar visible after JS init */
body.ss-cart-page .elementor-location-header,
body.ss-cart-page .elementor-location-footer {
	display: block !important;
	visibility: visible !important;
	opacity: 1 !important;
}
body.ss-cart-page .elementor-location-header .elementor-section,
body.ss-cart-page .elementor-location-footer .elementor-section {
	visibility: visible !important;
	opacity: 1 !important;
}
body.ss-cart-page .ss-cart-shell {
	margin-bottom: 0;
}
@media (min-width: 768px) {
	body.ss-cart-page .elementor-location-header .dgwt-wcas-search-wrapp {
		max-width: none !important;
		min-width: 200px !important;
		width: 100% !important;
	}
	body.ss-cart-page .elementor-location-header .dgwt-wcas-search-wrapp .dgwt-wcas-search-form,
	body.ss-cart-page .elementor-location-header .dgwt-wcas-search-wrapp.dgwt-wcas-layout-icon .dgwt-wcas-search-form {
		display: block !important;
		opacity: 1 !important;
		position: relative !important;
		left: auto !important;
		top: auto !important;
		min-width: 200px !important;
	}
	body.ss-cart-page .elementor-location-header .dgwt-wcas-search-wrapp .dgwt-wcas-search-icon {
		display: none !important;
	}
}
body.ss-cart-page .cross-sells {
	margin-top: 40px;
	padding-top: 8px;
}
body.ss-cart-page .cross-sells > h2 {
	font-size: 20px;
	font-weight: 500;
	color: var(--ss-navy);
	margin: 0 0 16px;
}
body.ss-cart-page .cross-sells ul.products {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 16px;
	margin: 0;
	padding: 0;
	list-style: none;
}
body.ss-cart-page .cross-sells ul.products li.product {
	margin: 0 !important;
	width: auto !important;
}
.ss-cart-empty-wrap {
	max-width: var(--ss-checkout-max, 1440px);
	margin: 0 auto;
	padding: 48px var(--ss-checkout-pad, 40px) 80px;
}
.ss-cart-empty-card {
	max-width: 520px;
	margin: 0 auto;
	text-align: center;
	padding: 48px 24px;
	border: 1px solid var(--ss-line);
	border-radius: 0;
	background: #fff;
}
.ss-cart-empty-card .cart-empty,
.ss-cart-empty-card .woocommerce-info {
	margin: 0 0 24px;
	border: 0;
	background: transparent;
	padding: 0;
	color: var(--ss-text);
	font-size: 16px;
}
.ss-cart-empty-card .return-to-shop {
	margin: 0;
}
@media (max-width: 1024px) {
	.ss-cart-layout {
		grid-template-columns: 1fr;
	}
	.ss-cart-primary,
	.ss-cart-sidebar {
		padding: 0;
	}
	.ss-checkout-col-divider {
		display: none;
	}
	.ss-cart-sidebar {
		position: static;
		margin-top: 32px;
		padding-top: 24px;
		border-top: 1px solid var(--ss-line);
	}
	body.ss-cart-page .cross-sells ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}
@media (max-width: 767px) {
	.ss-cart-form,
	.ss-cart-empty-wrap {
		padding-left: 10px;
		padding-right: 10px;
	}
	.ss-cart-item {
		grid-template-columns: 72px minmax(0, 1fr);
		gap: 12px;
	}
	.ss-cart-item-thumb img {
		width: 72px;
		height: 72px;
	}
	.ss-cart-item-meta {
		flex-direction: column;
		align-items: flex-start;
		gap: 10px;
	}
}

.ss-upsell-total {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 4px;
	text-align: center;
}
.ss-upsell-footer-actions {
	display: flex;
	gap: 10px;
	position: absolute;
	right: 28px;
	top: 50%;
	transform: translateY(-50%);
}
.ss-upsell-toast {
	position: fixed;
	left: 50%;
	bottom: 96px;
	transform: translateX(-50%) translateY(12px);
	z-index: 120;
	max-width: min(92vw, 560px);
	padding: 18px 28px;
	background: var(--ss-blue);
	color: #fff;
	font-size: 17px;
	font-weight: 600;
	line-height: 1.45;
	text-align: center;
	border-radius: var(--ss-radius);
	box-shadow: 0 12px 36px rgba(22, 49, 176, 0.35);
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.2s ease, transform 0.2s ease;
}
.ss-upsell-toast.is-visible {
	opacity: 1;
	transform: translateX(-50%) translateY(0);
}
@media (max-width: 900px) {
	body.ss-upsell-flow .ss-upsell-toast {
		bottom: calc(158px + env(safe-area-inset-bottom, 0px));
		padding: 16px 22px;
		font-size: 15px;
	}
	body.ss-upsell-flow,
	body.ss-checkout-page,
	body.ss-checkout-doc,
	body.ss-cart-page {
		--ss-checkout-pad: 10px;
	}
	.ss-upsell-total {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		width: 100%;
		gap: 4px;
		text-align: center;
	}
	.ss-upsell-total-label {
		font-size: 13px;
		min-width: 0;
		text-align: center;
	}
	.ss-upsell-total-amount,
	.ss-upsell-total-amount .woocommerce-Price-amount,
	.ss-upsell-total-amount bdi {
		font-size: 20px !important;
		font-weight: 800 !important;
		color: var(--ss-navy) !important;
		white-space: nowrap;
	}
	body.ss-upsell-flow .ss-upsell-footer-actions {
		display: flex !important;
		position: static;
		transform: none;
		width: 100%;
		margin-left: 0;
	}
	body.ss-upsell-flow .ss-upsell-footer-actions .ss-btn {
		width: 100%;
		min-height: 46px;
		margin: 0;
	}
	.ss-panel-head {
		flex-wrap: wrap;
		align-items: center;
		gap: 4px 8px;
		min-width: 0;
	}
	.ss-panel-head h2 {
		flex: 1 1 auto;
		min-width: 0;
	}
	.ss-login-wrap {
		white-space: nowrap;
		min-width: 0;
		flex: 0 0 auto;
	}
	.ss-login-hint {
		display: none;
	}
	body.ss-checkout-page .ss-shipping-slot img,
	body.ss-checkout-page .ss-shipping-slot .itella-logo,
	body.ss-checkout-page .ss-shipping-slot .ss-ship-logo,
	body.ss-checkout-page .ss-shipping-slot .wc-venipak-shipping-logo,
	body.ss-checkout-doc .ss-shipping-slot img,
	body.ss-checkout-doc .ss-shipping-slot .itella-logo,
	body.ss-checkout-doc .ss-shipping-slot .ss-ship-logo,
	body.ss-checkout-doc .ss-shipping-slot .wc-venipak-shipping-logo {
		display: none !important;
	}
	body.ss-checkout-page .ss-shipping-slot li:not(.ss-is-pickup) > label,
	body.ss-checkout-doc .ss-shipping-slot li:not(.ss-is-pickup) > label {
		grid-template-columns: minmax(0, 1fr) auto !important;
	}
	body.ss-checkout-page .ss-shipping-slot li:not(.ss-is-pickup) .ss-ship-name,
	body.ss-checkout-doc .ss-shipping-slot li:not(.ss-is-pickup) .ss-ship-name {
		grid-column: 1 !important;
		white-space: normal !important;
		overflow: visible !important;
		text-overflow: unset !important;
	}
	body.ss-checkout-page .ss-shipping-slot li:not(.ss-is-pickup) .woocommerce-Price-amount,
	body.ss-checkout-page .ss-shipping-slot li:not(.ss-is-pickup) .amount,
	body.ss-checkout-page .ss-shipping-slot li:not(.ss-is-pickup) .ss-ship-free,
	body.ss-checkout-doc .ss-shipping-slot li:not(.ss-is-pickup) .woocommerce-Price-amount,
	body.ss-checkout-doc .ss-shipping-slot li:not(.ss-is-pickup) .amount,
	body.ss-checkout-doc .ss-shipping-slot li:not(.ss-is-pickup) .ss-ship-free {
		grid-column: 2 !important;
	}
	body.ss-checkout-page .ss-shipping-slot li:not(.ss-is-pickup) .ss-ship-eta,
	body.ss-checkout-doc .ss-shipping-slot li:not(.ss-is-pickup) .ss-ship-eta {
		grid-column: 1 / -1 !important;
		grid-row: 2 !important;
		justify-self: start !important;
	}
	/* Pickup row keeps a dedicated icon column so ::before home icon does not overlap text. */
	body.ss-checkout-page .ss-shipping-slot li.ss-is-pickup > label,
	body.ss-checkout-doc .ss-shipping-slot li.ss-is-pickup > label {
		grid-template-columns: 32px minmax(0, 1fr) auto !important;
	}
	body.ss-checkout-page .ss-shipping-slot li.ss-is-pickup > label::before,
	body.ss-checkout-doc .ss-shipping-slot li.ss-is-pickup > label::before {
		grid-column: 1;
		grid-row: 1;
		align-self: center;
		width: 22px;
		height: 18px;
	}
	body.ss-checkout-page .ss-shipping-slot li.ss-is-pickup .ss-ship-name,
	body.ss-checkout-doc .ss-shipping-slot li.ss-is-pickup .ss-ship-name {
		grid-column: 2 !important;
		white-space: normal !important;
		overflow: visible !important;
		text-overflow: unset !important;
	}
	body.ss-checkout-page .ss-shipping-slot li.ss-is-pickup .woocommerce-Price-amount,
	body.ss-checkout-page .ss-shipping-slot li.ss-is-pickup .amount,
	body.ss-checkout-page .ss-shipping-slot li.ss-is-pickup .ss-ship-free,
	body.ss-checkout-doc .ss-shipping-slot li.ss-is-pickup .woocommerce-Price-amount,
	body.ss-checkout-doc .ss-shipping-slot li.ss-is-pickup .amount,
	body.ss-checkout-doc .ss-shipping-slot li.ss-is-pickup .ss-ship-free {
		grid-column: 3 !important;
		grid-row: 1 !important;
	}
	body.ss-checkout-page .ss-shipping-slot li.ss-is-pickup .ss-ship-eta,
	body.ss-checkout-doc .ss-shipping-slot li.ss-is-pickup .ss-ship-eta {
		grid-column: 2 / 4 !important;
		grid-row: 2 !important;
		justify-self: start !important;
	}
}
body.ss-checkout-page .ss-shipping-slot img,
body.ss-checkout-page .ss-shipping-slot .itella-logo {
	position: static !important;
	inset: auto !important;
	float: none !important;
}
body.ss-checkout-page .itella-container {
	position: fixed !important;
	z-index: 100000 !important;
}

/* Mobile gutters: 10px left/right everywhere (form + header chrome). */
@media (max-width: 900px) {
	body.ss-checkout-page,
	body.ss-checkout-doc {
		overflow-x: hidden;
	}
	body.ss-checkout-page .ss-checkout-chrome-inner,
	body.ss-checkout-doc .ss-checkout-chrome-inner {
		padding-left: 10px !important;
		padding-right: 10px !important;
	}
	body.ss-checkout-page .ss-checkout-form,
	body.ss-checkout-doc .ss-checkout-form,
	body.ss-checkout-page .ss-checkout-layout,
	body.ss-checkout-doc .ss-checkout-layout,
	body.ss-checkout-page .ss-checkout-primary,
	body.ss-checkout-doc .ss-checkout-primary,
	body.ss-checkout-page .ss-checkout-sidebar,
	body.ss-checkout-doc .ss-checkout-sidebar {
		max-width: 100% !important;
		min-width: 0 !important;
		overflow-x: hidden;
	}
	body.ss-checkout-page .ss-shipping-slot li,
	body.ss-checkout-doc .ss-shipping-slot li {
		max-width: 100%;
		overflow: visible;
	}
	/* Select2 country dropdown was forcing horizontal scroll on narrow screens. */
	body.ss-checkout-page .select2-container,
	body.ss-checkout-doc .select2-container {
		max-width: 100% !important;
	}
}

/* Checkout buttons: weight 400 + uppercase (mockup). */
body.ss-checkout-page .ss-btn,
body.ss-checkout-doc .ss-btn,
body.ss-checkout-page .ss-btn-primary,
body.ss-checkout-doc .ss-btn-primary,
body.ss-checkout-page #place_order,
body.ss-checkout-doc #place_order,
body.ss-checkout-page .ss-pick-locker,
body.ss-checkout-doc .ss-pick-locker,
body.ss-checkout-page .ss-coupon-slot .button,
body.ss-checkout-page .ss-giftcard-slot .button,
body.ss-checkout-page .ss-giftcard-slot .ywgc_apply_gift_card_button,
body.ss-checkout-doc .ss-coupon-slot .button,
body.ss-checkout-doc .ss-giftcard-slot .button,
body.ss-checkout-doc .ss-giftcard-slot .ywgc_apply_gift_card_button {
	font-weight: 400 !important;
	text-transform: uppercase !important;
	border-radius: var(--ss-radius) !important;
}

/* Cart + promo action buttons — same weight/case as checkout CTAs. */
body.ss-cart-page .checkout-button,
body.ss-cart-page .ss-cart-coupon-slot .button,
body.ss-cart-page .ss-giftcard-slot .button,
body.ss-cart-page .ss-giftcard-slot .ywgc_apply_gift_card_button,
body.ss-checkout-page .ss-promo-coupon .ss-promo-link,
body.ss-checkout-doc .ss-promo-coupon .ss-promo-link {
	font-weight: 400 !important;
	text-transform: uppercase !important;
	border-radius: var(--ss-radius) !important;
}

/* Coupon / gift credit inputs. */
body.ss-checkout-page .ss-coupon-slot input,
body.ss-checkout-doc .ss-coupon-slot input,
body.ss-checkout-page .ss-giftcard-slot input,
body.ss-checkout-doc .ss-giftcard-slot input,
body.ss-cart-page .ss-cart-coupon-slot #coupon_code,
body.ss-cart-page .ss-cart-coupon-slot input,
body.ss-cart-page .ss-giftcard-slot input,
body.ss-cart-page .ss-giftcard-slot #giftcard_code {
	border: 0 !important;
	border-bottom: 1px solid #bcbcbc !important;
	border-radius: 0 !important;
	padding: 10px 0 !important;
	box-shadow: none !important;
}

/* Order received / thank you page */
body.ss-order-received-page {
	background: #fff;
}
body.ss-order-received-page .ss-thankyou-shell {
	max-width: var(--ss-checkout-max, 1440px);
	margin: 0 auto;
	padding: 24px var(--ss-checkout-pad, 40px) 64px;
	box-sizing: border-box;
}
body.ss-order-received-page .ss-thankyou {
	max-width: 760px;
	margin: 0 auto;
}
body.ss-order-received-page .ss-thankyou-message {
	margin: 0 0 24px;
	padding: 0;
	background: transparent;
	border: 0;
	color: var(--ss-text);
	font-size: 18px;
	font-weight: 600;
	line-height: 1.45;
	text-align: left;
}
body.ss-order-received-page .ss-thankyou-overview {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0;
	list-style: none;
	margin: 0 0 40px;
	padding: 0;
	border: 1px solid var(--ss-line);
	background: #fff;
}
body.ss-order-received-page .ss-thankyou-overview li {
	margin: 0;
	padding: 16px 18px;
	border-right: 1px solid var(--ss-line);
	color: var(--ss-muted);
	font-size: 11px;
	font-weight: 600;
	line-height: 1.35;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}
body.ss-order-received-page .ss-thankyou-overview li:last-child {
	border-right: 0;
}
body.ss-order-received-page .ss-thankyou-overview strong {
	display: block;
	margin-top: 8px;
	color: var(--ss-text);
	font-size: 15px;
	font-weight: 700;
	text-transform: none;
	letter-spacing: 0;
	word-break: break-word;
}
body.ss-order-received-page .ss-thankyou-section-title,
body.ss-order-received-page .woocommerce-order-details__title {
	margin: 0 0 12px;
	padding: 0;
	border: 0;
	color: var(--ss-navy);
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}
body.ss-order-received-page .woocommerce-order-details {
	margin: 0 0 32px;
	padding: 0;
	border: 0;
}
body.ss-order-received-page table.shop_table.order_details {
	width: 100%;
	border: 0 !important;
	border-collapse: collapse !important;
	border-spacing: 0 !important;
	margin: 0;
	background: transparent !important;
}
body.ss-order-received-page table.shop_table.order_details thead {
	display: none;
}
body.ss-order-received-page table.shop_table.order_details th,
body.ss-order-received-page table.shop_table.order_details td {
	padding: 14px 0 !important;
	border: 0 !important;
	border-bottom: 1px solid var(--ss-line-soft) !important;
	color: var(--ss-text);
	font-size: 14px;
	vertical-align: top;
	background: transparent !important;
}
body.ss-order-received-page table.shop_table.order_details tbody td.product-total,
body.ss-order-received-page table.shop_table.order_details tfoot td {
	text-align: right;
	white-space: nowrap;
}
body.ss-order-received-page table.shop_table.order_details tbody .product-name {
	font-weight: 600;
	line-height: 1.45;
}
body.ss-order-received-page table.shop_table.order_details tbody .wc-item-meta,
body.ss-order-received-page table.shop_table.order_details tbody .product-quantity {
	color: var(--ss-muted);
	font-size: 13px;
	font-weight: 400;
}
body.ss-order-received-page table.shop_table.order_details tfoot th {
	text-align: left;
	font-weight: 600;
	color: var(--ss-text);
}
body.ss-order-received-page table.shop_table.order_details tfoot tr:last-child th,
body.ss-order-received-page table.shop_table.order_details tfoot tr:last-child td {
	border-bottom: 0 !important;
	padding-top: 16px !important;
	font-size: 15px;
	font-weight: 700;
}
body.ss-order-received-page .woocommerce-customer-details,
body.ss-order-received-page .ss-thankyou-customer {
	margin: 0;
	padding: 0;
	border: 0;
}
body.ss-order-received-page .ss-thankyou-customer-card {
	padding: 18px 20px;
	border: 1px solid var(--ss-line);
	background: #fff;
}
body.ss-order-received-page .ss-thankyou-customer-card address {
	margin: 0 0 10px;
	font-style: normal;
	line-height: 1.6;
	color: var(--ss-text);
}
body.ss-order-received-page .ss-thankyou-customer-card p {
	margin: 0 0 6px;
	color: var(--ss-text);
	font-size: 14px;
	line-height: 1.5;
}
body.ss-order-received-page .ss-thankyou-customer-card p:last-child {
	margin-bottom: 0;
}
body.ss-order-received-page .ss-thankyou-addresses {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 24px;
}
body.ss-order-received-page .ss-thankyou-address-block {
	min-width: 0;
}
body.ss-order-received-page .woocommerce-order-again,
body.ss-order-received-page .woocommerce-thankyou-order-failed-actions {
	margin-top: 16px;
}

@media (max-width: 900px) {
	body.ss-order-received-page {
		--ss-checkout-pad: 16px;
	}
	body.ss-order-received-page .ss-thankyou-shell {
		padding-top: 16px;
		padding-bottom: 40px;
	}
	body.ss-order-received-page .ss-thankyou {
		max-width: none;
	}
	body.ss-order-received-page .ss-thankyou-message {
		font-size: 16px;
		margin-bottom: 20px;
	}
	body.ss-order-received-page .ss-thankyou-overview {
		grid-template-columns: 1fr;
		margin-bottom: 28px;
	}
	body.ss-order-received-page .ss-thankyou-overview li {
		border-right: 0;
		border-bottom: 1px solid var(--ss-line);
		padding: 14px 16px;
	}
	body.ss-order-received-page .ss-thankyou-overview li:last-child {
		border-bottom: 0;
	}
	body.ss-order-received-page .woocommerce-order-details {
		margin-bottom: 24px;
	}
	body.ss-order-received-page table.shop_table.order_details th,
	body.ss-order-received-page table.shop_table.order_details td {
		padding: 12px 0 !important;
		font-size: 13px;
	}
	body.ss-order-received-page table.shop_table.order_details tbody td.product-total,
	body.ss-order-received-page table.shop_table.order_details tfoot td {
		padding-left: 12px !important;
	}
	body.ss-order-received-page .ss-thankyou-addresses {
		grid-template-columns: 1fr;
		gap: 20px;
	}
	body.ss-order-received-page .ss-thankyou-customer-card {
		padding: 16px;
	}
}
