/*
 * Smart Building Solutions WooCommerce design layer.
 * Scoped to WooCommerce pages to avoid Elementor header/footer conflicts.
 */

:root {
	--sbs-wc-primary: var(--e-global-color-primary, #56B947);
	--sbs-wc-secondary: var(--e-global-color-secondary, #000000);
	--sbs-wc-text: var(--e-global-color-text, #101828);
	--sbs-wc-muted: var(--e-global-color-fa05f9d, #7B7B7B);
	--sbs-wc-accent: var(--e-global-color-accent, #C19031);
	--sbs-wc-border: var(--e-global-color-937f010, #DBDBDB);
	--sbs-wc-soft-bg: var(--e-global-color-3776683, #F7F7F7);
	--sbs-wc-white: var(--e-global-color-23effff, #FFFFFF);
	--sbs-wc-price: var(--e-global-color-primary, #56B947);
	--sbs-wc-dark: var(--e-global-color-28a1828, #1B1B1B);
	--sbs-wc-radius: 0px;
	--sbs-wc-button-radius: 0px;
	--sbs-wc-container: 1290px;
}

.sbs-wc-page,
.sbs-wc-page button,
.sbs-wc-page input,
.sbs-wc-page select,
.sbs-wc-page textarea {
	font-family: var(--e-global-typography-text-font-family, "Roboto"), Sans-serif;
}

.sbs-wc-page .site-main,
.sbs-wc-page main.site-main,
.sbs-wc-page .woocommerce {
	color: var(--sbs-wc-text);
}

.sbs-wc-page .woocommerce,
.sbs-wc-page.woocommerce-page .site-main > .page-content,
.sbs-wc-page.woocommerce-page main > .page-content {
	max-width: var(--sbs-wc-container);
	margin-left: auto;
	margin-right: auto;
	padding-left: 20px;
	padding-right: 20px;
}

.sbs-wc-page a {
	color: inherit;
}

.sbs-wc-page .button,
.sbs-wc-page button.button,
.sbs-wc-page input.button,
.sbs-wc-page #respond input#submit,
.sbs-wc-page .woocommerce button.button,
.sbs-wc-page .woocommerce a.button,
.sbs-wc-page .woocommerce input.button,
.sbs-wc-page .woocommerce #respond input#submit,
.sbs-wc-page .added_to_cart,
.sbs-request-price-button,
.sbs-wishlist-button {
	border-radius: var(--sbs-wc-button-radius) !important;
	border: 1px solid var(--sbs-wc-primary) !important;
	background: var(--sbs-wc-primary) !important;
	color: #fff !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	min-height: 44px;
	padding: 13px 26px !important;
	text-decoration: none !important;
	transition: all .22s ease;
}

.sbs-wc-page .button:hover,
.sbs-wc-page button.button:hover,
.sbs-wc-page input.button:hover,
.sbs-wc-page #respond input#submit:hover,
.sbs-wc-page .woocommerce button.button:hover,
.sbs-wc-page .woocommerce a.button:hover,
.sbs-wc-page .woocommerce input.button:hover,
.sbs-wc-page .added_to_cart:hover {
	background: #fff !important;
	color: var(--sbs-wc-primary) !important;
}

.sbs-wc-page input[type="text"],
.sbs-wc-page input[type="email"],
.sbs-wc-page input[type="tel"],
.sbs-wc-page input[type="password"],
.sbs-wc-page input[type="number"],
.sbs-wc-page input[type="search"],
.sbs-wc-page select,
.sbs-wc-page textarea,
.sbs-wc-page .select2-container .select2-selection--single {
	min-height: 50px;
	border: 1px solid var(--sbs-wc-border) !important;
	border-radius: var(--sbs-wc-radius) !important;
	background: #fff !important;
	box-shadow: none !important;
	color: var(--sbs-wc-text);
	font-size: 15px;
	padding: 12px 16px;
}

.sbs-wc-page .select2-container .select2-selection--single {
	display: flex;
	align-items: center;
	padding: 0 16px;
}

.sbs-wc-page .select2-container--default .select2-selection--single .select2-selection__rendered {
	padding-left: 0;
	color: var(--sbs-wc-text);
}

.sbs-wc-page .select2-container--default .select2-selection--single .select2-selection__arrow {
	height: 48px;
}

.sbs-wc-page ::placeholder {
	color: #b8b8b8;
}

/* Shop archive */
.sbs-shop-archive-page .woocommerce-notices-wrapper,
.sbs-shop-archive-page .woocommerce-breadcrumb {
	max-width: var(--sbs-wc-container);
	margin-left: auto;
	margin-right: auto;
	padding-left: 20px;
	padding-right: 20px;
}

.sbs-shop-hero {
	padding: 68px 0 30px;
	border-bottom: 1px dashed #9e9e9e;
	margin-bottom: 34px;
}

.sbs-shop-eyebrow,
.sbs-cart-eyebrow,
.sbs-checkout-eyebrow,
.sbs-account-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	margin-bottom: 24px;
	color: var(--sbs-wc-text);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.sbs-shop-eyebrow-icon {
	display: inline-grid;
	place-items: center;
	width: 22px;
	height: 22px;
	border: 1px solid var(--sbs-wc-primary);
	color: var(--sbs-wc-primary);
	font-size: 13px;
}

.sbs-shop-hero h1,
.sbs-cart-header h1,
.sbs-checkout-header h1,
.sbs-account-header h1 {
	margin: 0 0 18px;
	font-family: var(--e-global-typography-primary-font-family, "Roboto"), Sans-serif;
	font-size: clamp(36px, 4vw, 46px);
	font-weight: 700;
	line-height: 1.08;
	letter-spacing: -.04em;
	color: var(--sbs-wc-text);
}

.sbs-shop-hero p,
.sbs-cart-header p,
.sbs-account-header p {
	max-width: 720px;
	margin: 0 0 34px;
	color: #616161;
	font-size: 16px;
	line-height: 1.55;
}

.sbs-shop-tabs {
	display: flex;
	align-items: center;
	gap: 32px;
	flex-wrap: wrap;
}

.sbs-shop-tab {
	position: relative;
	font-size: 14px;
	font-weight: 600;
	color: #616161;
	text-decoration: none !important;
}

.sbs-shop-tab.is-active,
.sbs-shop-tab:hover {
	color: var(--sbs-wc-text);
}

.sbs-shop-tab.is-active::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: -4px;
	height: 1px;
	background: currentColor;
}

.sbs-shop-layout {
	display: grid;
	grid-template-columns: 285px minmax(0, 1fr);
	gap: 28px;
}

.sbs-shop-sidebar {
	border-right: 1px dashed #9e9e9e;
	padding-right: 28px;
}

.sbs-shop-sidebar-heading {
	margin: 0 0 32px;
	font-size: 13px !important;
	font-weight: 800 !important;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--sbs-wc-text);
}

.sbs-filter-block {
	border-bottom: 1px solid #e9e9e9;
	padding: 0 0 24px;
	margin: 0 0 24px;
}

.sbs-filter-title,
.sbs-shop-sidebar .widget-title {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 0 0 16px;
	font-size: 12px !important;
	font-weight: 800 !important;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--sbs-wc-text);
}

.sbs-filter-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 12px;
}

.sbs-filter-list a {
	display: flex;
	align-items: center;
	gap: 10px;
	color: #616161;
	font-size: 14px;
	font-weight: 500;
	text-decoration: none !important;
}

.sbs-filter-list a:hover {
	color: var(--sbs-wc-primary);
}

.sbs-filter-check {
	width: 14px;
	height: 14px;
	border: 1px solid #cfcfcf;
	background: #fff;
	flex: 0 0 auto;
}

.sbs-shop-toolbar {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 18px;
	align-items: center;
	padding-bottom: 34px;
	margin-bottom: 24px;
	border-bottom: 1px dashed #9e9e9e;
}

.sbs-shop-count {
	text-align: left;
	color: #616161;
	font-size: 14px;
	font-weight: 700;
}

.sbs-shop-tools {
	display: flex;
	align-items: center;
	gap: 18px;
}

.sbs-shop-tools .woocommerce-ordering {
	margin: 0;
}

.sbs-shop-tools .orderby {
	min-width: 170px;
	height: 46px;
	font-size: 13px;
	font-weight: 600;
	background: #fff;
}

.sbs-shop-tools .woocommerce-product-search {
	position: relative;
	margin: 0;
}

.sbs-shop-tools .woocommerce-product-search::before {
	content: "⌕";
	position: absolute;
	left: 16px;
	top: 50%;
	transform: translateY(-50%);
	color: var(--sbs-wc-primary);
	font-size: 19px;
	z-index: 1;
}

.sbs-shop-tools .search-field {
	width: 260px;
	padding-left: 45px !important;
	border-color: transparent !important;
	background: #fff !important;
}

.sbs-shop-tools .woocommerce-product-search button {
	display: none !important;
}

.sbs-shop-results ul.products {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 26px 20px !important;
	margin: 0 !important;
}

.sbs-shop-results ul.products::before,
.sbs-shop-results ul.products::after {
	display: none !important;
}

.sbs-shop-results ul.products li.product,
.sbs-wc-page ul.products li.product {
	float: none !important;
	width: auto !important;
	margin: 0 !important;
	background: transparent;
	list-style: none;
	position: relative;
	display: flex;
	flex-direction: column;
	min-width: 0;
}

.sbs-shop-results ul.products li.product a.woocommerce-LoopProduct-link {
	color: inherit;
	text-decoration: none !important;
}

.sbs-product-card__media {
	position: relative;
	background: #f2f2f2;
	aspect-ratio: 1 / .96;
	overflow: hidden;
	margin-bottom: 18px;
}

.sbs-product-card__media img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover;
	display: block;
	transition: transform .45s ease;
}

.sbs-shop-results li.product:hover .sbs-product-card__media img {
	transform: scale(1.035);
}

.sbs-product-card__brand {
	position: absolute;
	top: 16px;
	right: 14px;
	background: rgba(0,0,0,.68);
	color: #fff;
	padding: 8px 11px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.sbs-product-card__title,
.sbs-wc-page .woocommerce-loop-product__title {
	margin: 0 0 6px !important;
	padding: 0 !important;
	font-size: 20px !important;
	font-weight: 800;
	line-height: 1.16;
	color: var(--sbs-wc-text);
}

.sbs-product-card__excerpt {
	min-height: 42px;
	margin-bottom: 12px;
	color: #737373;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.45;
}

.sbs-product-card__meta {
	margin-bottom: 22px;
	color: #9a9a9a;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .02em;
}

.sbs-shop-results li.product .price,
.sbs-wc-page ul.products li.product .price {
	margin-top: auto;
	padding-top: 17px;
	border-top: 1px solid #e5e5e5;
	color: var(--sbs-wc-text) !important;
	font-size: 22px !important;
	font-weight: 800 !important;
}

.sbs-shop-results li.product .price del,
.sbs-shop-results li.product .price ins {
	font-weight: inherit;
}

.sbs-shop-results li.product .button,
.sbs-wc-page ul.products li.product .button,
.sbs-shop-results li.product .added_to_cart {
	position: absolute;
    right: 0;
    bottom: 0;
    min-height: 40px;
    padding: 10px 20px !important;
    background: #fff !important;
    color: var(--sbs-wc-primary) !important;
    font-size: 14px !important;
    border-color: var(--sbs-wc-primary) !important;
    height: 40px;
    line-height: 1 !important;
    display: flex;
    align-items: center;
    justify-content: center;
}

.sbs-shop-results li.product .button:hover,
.sbs-wc-page ul.products li.product .button:hover {
	background: var(--sbs-wc-primary) !important;
	color: #fff !important;
}

.sbs-wc-page nav.woocommerce-pagination {
	margin-top: 46px;
}

.sbs-wc-page nav.woocommerce-pagination ul {
	border: none !important;
	display: inline-flex;
	gap: 8px;
}

.sbs-wc-page nav.woocommerce-pagination ul li {
	border: none !important;
}

.sbs-wc-page nav.woocommerce-pagination ul li a,
.sbs-wc-page nav.woocommerce-pagination ul li span {
	border: 1px solid var(--sbs-wc-border);
	background: #fff;
	color: var(--sbs-wc-text);
	min-width: 42px;
	min-height: 42px;
	display: grid;
	place-items: center;
}

.sbs-wc-page nav.woocommerce-pagination ul li span.current,
.sbs-wc-page nav.woocommerce-pagination ul li a:hover {
	background: var(--sbs-wc-primary);
	border-color: var(--sbs-wc-primary);
	color: #fff;
}

/* Single product */
.sbs-product-layout-page.single-product .woocommerce {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 0 70px !important;
}

body.single-product.sbs-wc-page .sbs-product {
	width: 100%;
	padding: 0 0 34px;
}

body.single-product.sbs-wc-page .sbs-product > .sbs-wc-container {
	max-width: var(--sbs-wc-container) !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 20px !important;
	padding-right: 20px !important;
}

.sbs-product-layout-page .woocommerce-breadcrumb {
	margin: 0;
	color: #777;
	font-size: 12px;
	font-weight: 500;
}

.sbs-single-topbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 30px;
	border-bottom: 1px solid var(--sbs-wc-border);
	margin: 0 0 34px;
	padding: 18px 0 16px;
}

.sbs-single-breadcrumb {
	min-width: 0;
	flex: 1 1 auto;
}

.sbs-product-layout-page div.product {
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(430px, .95fr);
	gap: 34px;
	align-items: start;
}

.sbs-product-layout-page div.product div.images,
.sbs-product-layout-page div.product div.summary {
	float: none !important;
	width: auto !important;
}

.sbs-product-layout-page div.product div.images {
	margin-bottom: 0 !important;
}

.sbs-product-layout-page .woocommerce-product-gallery__wrapper,
.sbs-product-layout-page .woocommerce-product-gallery__image {
	background: #f5f5f5;
}

.sbs-product-layout-page .woocommerce-product-gallery__image img {
	width: 100%;
	aspect-ratio: 1.08 / 1;
	object-fit: cover;
}

.sbs-product-layout-page .flex-control-thumbs {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 10px;
	margin-top: 12px !important;
}

.sbs-product-layout-page .flex-control-thumbs li {
	width: auto !important;
	float: none !important;
	background: #f3f3f3;
	border: 1px solid transparent;
}

.sbs-product-layout-page .flex-control-thumbs li img {
	aspect-ratio: 1 / .82;
	object-fit: cover;
	opacity: 1 !important;
}

.sbs-product-layout-page .flex-control-thumbs li img.flex-active,
.sbs-product-layout-page .flex-control-thumbs li:hover {
	border-color: var(--sbs-wc-accent);
}

.sbs-product-layout-page div.product div.summary {
	padding-left: 0;
}

.sbs-single-actions {
	display: grid;
	grid-template-columns: repeat(3, max-content);
	justify-content: end;
	align-items: center;
	flex: 0 0 auto;
	margin: 0;
}

.sbs-single-action {
	display: flex;
	align-items: center;
	gap: 9px;
	justify-content: center;
	min-height: 38px;
	border: 0;
	border-right: 1px solid var(--sbs-wc-border);
	background: transparent;
	color: var(--sbs-wc-text) !important;
	padding: 2px 18px;
	text-decoration: none !important;
	cursor: pointer;
}

.sbs-single-action:last-child {
	border-right: 0;
}

.sbs-single-action span {
	font-size: 14px;
	font-weight: 800;
}

.sbs-single-action strong {
	display: block;
	font-size: 11px;
	font-weight: 700;
	line-height: 1.2;
	color: #616161;
}

.sbs-single-action:hover strong,
.sbs-single-action:hover span {
	color: var(--sbs-wc-primary);
}

.sbs-single-action.is-disabled {
	opacity: .45;
}

.sbs-single-brand {
	margin-bottom: 8px;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: #616161;
}

.sbs-product-layout-page div.product .product_title {
	margin: 0 0 12px;
	font-size: clamp(34px, 4vw, 46px);
	font-weight: 800;
	line-height: 1.06;
	letter-spacing: -.04em;
	color: var(--sbs-wc-text);
}

.sbs-single-meta-row {
	display: flex;
	align-items: center;
	gap: 14px;
	flex-wrap: wrap;
	padding-bottom: 18px;
	margin-bottom: 24px;
	border-bottom: 1px solid var(--sbs-wc-border);
	color: #616161;
	font-size: 13px;
	font-weight: 600;
}

.sbs-single-meta-row a {
	color: inherit;
	text-decoration: none;
}

.sbs-single-rating {
	color: var(--sbs-wc-accent);
}

.sbs-rate-now {
	color: var(--sbs-wc-primary) !important;
	font-weight: 800;
}

.sbs-product-layout-page div.product .summary .price {
	margin: 0 0 6px;
	color: var(--sbs-wc-price) !important;
	font-size: 42px;
	font-weight: 800;
	line-height: 1;
}

.sbs-product-layout-page div.product .summary .price .amount {
	color: #3D8332 !important;
	font-family: "Roboto Condensed";
	font-size: 40px;
	font-style: normal;
	font-weight: 500;
	line-height: 120%;
	letter-spacing: -0.4px;
}

.sbs-product-layout-page div.product .woocommerce-product-details__short-description {
	margin-bottom: 18px;
	color: #616161;
	font-size: 15px;
	line-height: 1.55;
}

.sbs-product-layout-page form.cart {
	display: grid;
	gap: 16px;
	margin-top: 22px !important;
}

.sbs-product-layout-page table.variations {
	margin-bottom: 12px !important;
}

.sbs-product-layout-page table.variations tr {
	display: grid;
	gap: 8px;
	margin-bottom: 12px;
}

.sbs-product-layout-page table.variations th,
.sbs-product-layout-page table.variations td {
	display: block;
	padding: 0 !important;
	line-height: 1.2;
	background: transparent !important;
}

.sbs-product-layout-page table.variations label,
.sbs-product-layout-page .wapf-field-label label,
.sbs-product-layout-page .variations .label label {
	margin-bottom: 8px;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: #8d8d8d;
}

.sbs-product-layout-page table.variations select {
	width: 100%;
	height: 56px;
}

.sbs-product-layout-page .reset_variations {
	font-size: 12px;
	font-weight: 700;
	color: var(--sbs-wc-primary) !important;
}

/* Variation Swatches for WooCommerce + Advanced Product Fields Pro support */
.sbs-product-layout-page .variable-items-wrapper,
.sbs-product-layout-page .woo-variation-items-wrapper .variable-items-wrapper {
	display: flex !important;
	flex-wrap: wrap;
	gap: 10px;
}

.sbs-product-layout-page .variable-items-wrapper .variable-item,
.sbs-product-layout-page .woo-variation-swatches .variable-items-wrapper .variable-item,
.sbs-product-layout-page .wapf-swatch {
	box-shadow: none !important;
	border: 1px solid var(--sbs-wc-border) !important;
	border-radius: 0 !important;
	background: #f1f1f1 !important;
	min-width: 44px !important;
	min-height: 34px !important;
	padding: 7px 12px !important;
	font-size: 12px;
	font-weight: 700;
}

.sbs-product-layout-page .variable-items-wrapper .variable-item.selected,
.sbs-product-layout-page .woo-variation-swatches .variable-items-wrapper .variable-item.selected,
.sbs-product-layout-page .wapf-swatch--selected {
	background: #000 !important;
	border-color: #000 !important;
	color: #fff !important;
}

.sbs-option-chip-group {
	margin: 14px 0;
}

.sbs-option-chip-label {
	display: block;
	margin-bottom: 8px;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: #9a9a9a;
}

.sbs-option-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.sbs-option-chip {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 30px;
	padding: 7px 13px;
	background: #f1f1f1;
	color: #616161;
	font-size: 11px;
	font-weight: 700;
}

.sbs-option-chip.is-active {
	background: #000;
	color: #fff;
}

.sbs-variable-summary-box {
	border: 1px solid var(--sbs-wc-border);
	padding: 18px 20px;
	margin: 12px 0 4px;
	display: grid;
	gap: 10px;
}

.sbs-variable-summary-box div {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 20px;
	align-items: center;
	font-size: 13px;
	color: #777;
}

.sbs-variable-summary-box strong {
	color: var(--sbs-wc-text);
	font-weight: 800;
	text-align: right;
}

.sbs-product-layout-page .single_variation_wrap {
	display: grid;
	gap: 14px;
}

.sbs-product-layout-page .woocommerce-variation-price .price {
	font-size: 30px !important;
}

.sbs-product-layout-page div.product form.cart div.quantity,
.sbs-product-layout-page .sbs-qty-control {
	float: none !important;
	margin: 0 !important;
}

.sbs-product-layout-page div.product form.cart .button.single_add_to_cart_button {
	width: 100%;
	margin: 0 !important;
	min-height: 50px;
}

.sbs-product-layout-page .sbs-request-price-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: #fff !important;
	color: var(--sbs-wc-text) !important;
	border-color: var(--sbs-wc-text) !important;
	width: 100%;
}

.sbs-product-layout-page .sbs-request-price-button:hover {
	background: var(--sbs-wc-text) !important;
	color: #fff !important;
}

.sbs-product-layout-page .sbs-wishlist-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 9px;
	background: #fff !important;
	color: var(--sbs-wc-text) !important;
	border-color: var(--sbs-wc-text) !important;
	width: 100%;
	grid-column: 1 / -1;
}

.sbs-product-layout-page .sbs-wishlist-button:hover {
	background: var(--sbs-wc-text) !important;
	color: #fff !important;
}

.sbs-qty-control {
	display: inline-grid;
	grid-template-columns: 38px 50px 38px;
	align-items: center;
	background: #f6f6f6;
	width: max-content;
}

.sbs-qty-control .qty {
	width: 50px !important;
	min-height: 38px !important;
	height: 38px !important;
	border: 0 !important;
	padding: 0 !important;
	text-align: center;
	background: #f6f6f6 !important;
	font-weight: 700;
	-moz-appearance: textfield;
}

.sbs-qty-control .qty::-webkit-outer-spin-button,
.sbs-qty-control .qty::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

.sbs-qty-btn {
	width: 38px;
	height: 38px;
	min-height: 38px;
	padding: 0 !important;
	border: 0 !important;
	background: #efefef !important;
	color: #616161 !important;
	font-size: 20px;
	font-weight: 600;
	cursor: pointer;
}

.sbs-qty-btn:hover {
	background: var(--sbs-wc-primary) !important;
	color: #fff !important;
}

.sbs-product-layout-page .sbs-single-section {
	grid-column: 1 / -1;
	border-top: 1px solid var(--sbs-wc-border);
	padding-top: 36px;
	margin-top: 36px;
}

.sbs-product-layout-page .sbs-single-section h2,
.sbs-product-layout-page .related.products > h2,
.sbs-reviews-panel h2 {
	margin: 0 0 24px;
	font-size: clamp(30px, 3vw, 40px);
	font-weight: 800;
	line-height: 1.1;
	letter-spacing: -.04em;
	color: var(--sbs-wc-text);
}

.sbs-single-description__content {
	max-width: 760px;
	color: #616161;
	font-size: 15px;
	line-height: 1.62;
}

.sbs-finish-box {
	background: var(--sbs-wc-soft-bg);
	padding: 28px 22px;
}

.sbs-finish-collection {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 24px;
	font-size: 12px;
}

.sbs-finish-collection span {
	margin-right: 12px;
	font-weight: 700;
}

.sbs-finish-collection strong,
.sbs-finish-collection em {
	padding: 8px 12px;
	font-style: normal;
	font-size: 11px;
	font-weight: 700;
	background: #fff;
}

.sbs-finish-collection strong {
	background: #000;
	color: #fff;
}

.sbs-finish-row {
	display: grid;
	grid-template-columns: 130px 1fr;
	align-items: center;
	gap: 22px;
	margin-top: 20px;
}

.sbs-finish-label {
	font-size: 14px;
	font-weight: 800;
	color: var(--sbs-wc-text);
}

.sbs-finish-swatches {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(84px, 1fr));
	gap: 18px;
}

.sbs-finish-swatch {
	display: grid;
	place-items: center;
	height: 62px;
	background: #c9c9c9;
	color: transparent;
	border: 2px solid transparent;
	box-shadow: inset 0 0 0 1px rgba(0,0,0,.05);
}

.sbs-finish-swatch:nth-child(2n) { background: #4d5578; }
.sbs-finish-swatch:nth-child(3n) { background: #777b53; }
.sbs-finish-swatch:nth-child(4n) { background: #a65038; }
.sbs-finish-swatch:nth-child(5n) { background: #9ab1c2; }
.sbs-finish-swatch:nth-child(6n) { background: #efefef; }
.sbs-finish-swatch.is-active {
	border-color: #fff;
	outline: 1px solid #9b9b9b;
}

.sbs-product-layout-page .related.products {
	grid-column: 1 / -1;
	margin-top: 46px;
}

.sbs-product-layout-page .related.products ul.products {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 20px !important;
}

.sbs-product-layout-page .related.products li.product {
	background: #f7f7f7;
	padding: 0 0 24px;
}

.sbs-product-layout-page .related.products .sbs-product-card__media {
	background: #f7f7f7;
	margin-bottom: 18px;
	aspect-ratio: 1 / .82;
}

.sbs-reviews-panel .commentlist {
	padding: 0 !important;
	margin: 0 !important;
	list-style: none;
	max-width: 680px;
}

.sbs-reviews-panel .comment_container {
	display: grid;
	grid-template-columns: 54px minmax(0, 1fr);
	gap: 16px;
	margin-bottom: 34px;
}

.sbs-reviews-panel .avatar {
	width: 48px !important;
	height: 48px !important;
	border-radius: 0;
}

.sbs-reviews-panel .comment-text {
	border: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
}

.sbs-reviews-panel .woocommerce-review__author {
	font-size: 20px;
	font-weight: 800;
	color: var(--sbs-wc-text);
}

.sbs-reviews-panel .star-rating,
.sbs-wc-page .star-rating {
	color: var(--sbs-wc-accent);
}

/* Cart */
.sbs-cart-header,
.sbs-checkout-header,
.sbs-account-header {
	padding: 58px 0 26px;
	border-bottom: 1px dashed #9e9e9e;
	margin-bottom: 32px;
}

.sbs-wc-page.woocommerce-cart .woocommerce-cart-form {
	float: left;
	width: calc(100% - 390px);
	padding-right: 34px;
}

.sbs-wc-page.woocommerce-cart .cart-collaterals {
	float: right;
	width: 390px;
}

.sbs-wc-page.woocommerce-cart .cart-collaterals::after,
.sbs-wc-page.woocommerce-cart .woocommerce::after {
	content: "";
	display: table;
	clear: both;
}

.sbs-wc-page.woocommerce-cart table.shop_table {
	border: 0 !important;
	border-collapse: collapse !important;
	border-radius: 0 !important;
}

.sbs-wc-page.woocommerce-cart table.shop_table th {
	padding: 16px 12px !important;
	border-bottom: 1px dashed #9e9e9e;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: #616161;
}

.sbs-wc-page.woocommerce-cart table.shop_table td {
	padding: 20px 12px !important;
	border-top: 0 !important;
	border-bottom: 1px solid #ededed;
	vertical-align: middle;
}

.sbs-wc-page.woocommerce-cart .product-thumbnail img {
	width: 86px !important;
	height: 86px !important;
	object-fit: cover;
	background: #f5f5f5;
}

.sbs-wc-page.woocommerce-cart .product-name a {
	font-size: 17px;
	font-weight: 800;
	color: var(--sbs-wc-text);
	text-decoration: none;
}

.sbs-cart-item-tech {
	margin-top: 7px;
	font-size: 12px;
	font-weight: 600;
	color: #9a9a9a;
}

.sbs-wc-page.woocommerce-cart .product-remove a.remove {
	color: #999 !important;
	font-size: 24px;
	font-weight: 400;
	line-height: 1;
}

.sbs-wc-page.woocommerce-cart .product-remove a.remove:hover {
	background: transparent !important;
	color: #d63638 !important;
}

.sbs-wc-page.woocommerce-cart .coupon {
	display: flex;
	gap: 10px;
}

.sbs-wc-page.woocommerce-cart .coupon #coupon_code {
	width: 260px;
}

.sbs-wc-page.woocommerce-cart .cart_totals {
	float: none !important;
	width: 100% !important;
	background: var(--sbs-wc-soft-bg);
	padding: 26px;
}

.sbs-wc-page.woocommerce-cart .cart_totals h2 {
	margin: 0 0 20px;
	font-size: 28px;
	font-weight: 800;
}

.sbs-wc-page.woocommerce-cart .cart_totals table {
	border: 0 !important;
}

.sbs-wc-page.woocommerce-cart .cart_totals th,
.sbs-wc-page.woocommerce-cart .cart_totals td {
	border: 0 !important;
	padding: 10px 0 !important;
	font-size: 14px;
}

.sbs-wc-page.woocommerce-cart .order-total th,
.sbs-wc-page.woocommerce-cart .order-total td {
	font-size: 24px !important;
	font-weight: 800;
	color: var(--sbs-wc-text);
}

.sbs-wc-page.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
	width: 100%;
	text-align: center;
}

/* Checkout */
.sbs-wc-page.woocommerce-checkout form.checkout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(360px, 520px);
	gap: 64px;
	align-items: start;
}

.sbs-wc-page.woocommerce-checkout #customer_details {
	grid-column: 1;
	grid-row: 1;
}

.sbs-wc-page.woocommerce-checkout #payment {
	grid-column: 1;
	grid-row: 2;
	background: transparent;
	border-radius: 0;
	padding: 0;
}

.sbs-wc-page.woocommerce-checkout #order_review_heading {
	grid-column: 2;
	grid-row: 1;
	margin: 0 0 18px;
	font-size: 22px;
	font-weight: 800;
	color: var(--sbs-wc-text);
}

.sbs-wc-page.woocommerce-checkout #order_review {
	grid-column: 2;
	grid-row: 2 / span 2;
	background: #fff;
	padding: 0;
}

.sbs-wc-page.woocommerce-checkout .col2-set {
	width: 100%;
}

.sbs-wc-page.woocommerce-checkout .col2-set .col-1,
.sbs-wc-page.woocommerce-checkout .col2-set .col-2 {
	float: none;
	width: 100%;
}

.sbs-wc-page.woocommerce-checkout .woocommerce-billing-fields h3,
.sbs-wc-page.woocommerce-checkout .woocommerce-shipping-fields h3,
.sbs-wc-page.woocommerce-checkout .woocommerce-additional-fields h3 {
	margin: 0 0 22px;
	font-size: 18px;
	font-weight: 800;
	color: var(--sbs-wc-text);
}

.sbs-wc-page.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
.sbs-wc-page.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px 16px;
}

.sbs-wc-page.woocommerce-checkout .form-row {
	padding: 0 !important;
	margin: 0 0 16px !important;
}

.sbs-wc-page.woocommerce-checkout .form-row-first,
.sbs-wc-page.woocommerce-checkout .form-row-last {
	float: none !important;
	width: auto !important;
}

.sbs-wc-page.woocommerce-checkout #billing_address_1_field,
.sbs-wc-page.woocommerce-checkout #billing_country_field,
.sbs-wc-page.woocommerce-checkout #shipping_address_1_field,
.sbs-wc-page.woocommerce-checkout #shipping_country_field {
	grid-column: 1 / -1;
}

.sbs-wc-page.woocommerce-checkout label {
	font-size: 14px;
	font-weight: 600;
	color: var(--sbs-wc-text);
}

.sbs-wc-page.woocommerce-checkout .woocommerce-checkout-review-order-table {
	border: 0 !important;
	border-collapse: collapse;
	margin-bottom: 22px !important;
}

.sbs-wc-page.woocommerce-checkout .woocommerce-checkout-review-order-table thead {
	display: none;
}

.sbs-wc-page.woocommerce-checkout .woocommerce-checkout-review-order-table td,
.sbs-wc-page.woocommerce-checkout .woocommerce-checkout-review-order-table th {
	border: 0 !important;
	padding: 9px 0 !important;
	font-size: 15px;
	font-weight: 700;
}

.sbs-wc-page.woocommerce-checkout .woocommerce-checkout-review-order-table .cart_item td {
	padding-bottom: 22px !important;
	border-bottom: 1px solid #e5e5e5 !important;
}

.sbs-wc-page.woocommerce-checkout .woocommerce-checkout-review-order-table .product-name {
	color: var(--sbs-wc-text);
}

.sbs-wc-page.woocommerce-checkout .woocommerce-checkout-review-order-table .product-total,
.sbs-wc-page.woocommerce-checkout .woocommerce-checkout-review-order-table td:last-child {
	text-align: right;
}

.sbs-wc-page.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total th,
.sbs-wc-page.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total td {
	padding-top: 22px !important;
	font-size: 30px;
	font-weight: 900;
	color: var(--sbs-wc-text);
}

.sbs-wc-page.woocommerce-checkout .woocommerce-checkout-payment ul.payment_methods {
	border-bottom: 0 !important;
	padding: 0 !important;
	display: grid;
	gap: 12px;
	margin-bottom: 20px !important;
}

.sbs-wc-page.woocommerce-checkout .woocommerce-checkout-payment ul.payment_methods li {
	border: 1px solid var(--sbs-wc-border);
	padding: 16px !important;
	background: #fff;
}

.sbs-wc-page.woocommerce-checkout .woocommerce-checkout-payment ul.payment_methods li label {
	font-size: 16px;
	font-weight: 800;
}

.sbs-wc-page.woocommerce-checkout .woocommerce-checkout-payment div.payment_box {
	background: var(--sbs-wc-soft-bg) !important;
	color: #616161;
	font-size: 14px;
	line-height: 1.5;
}

.sbs-wc-page.woocommerce-checkout .woocommerce-checkout-payment div.payment_box::before {
	border-bottom-color: var(--sbs-wc-soft-bg) !important;
}

.sbs-wc-page.woocommerce-checkout .place-order {
	padding: 0 !important;
	margin-top: 18px;
}

.sbs-wc-page.woocommerce-checkout .place-order .button {
	width: 100%;
	min-height: 58px;
	font-size: 16px !important;
}

.sbs-wc-page.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper {
	color: #616161;
	font-size: 14px;
	line-height: 1.5;
}

.sbs-wc-page.woocommerce-checkout .checkout_coupon.woocommerce-form-coupon {
	max-width: 520px;
	margin-left: auto !important;
	border: 0 !important;
	padding: 0 !important;
	display: grid !important;
	grid-template-columns: 1fr auto;
	gap: 10px;
}

.sbs-wc-page.woocommerce-checkout .checkout_coupon p:first-child {
	grid-column: 1 / -1;
}

.sbs-wc-page.woocommerce-checkout .checkout_coupon .form-row {
	margin: 0 !important;
	float: none;
	width: auto;
}

/* My Account */
.sbs-wc-page.woocommerce-account .woocommerce {
	max-width: var(--sbs-wc-container);
	margin: 0 auto;
	padding: 0 20px 70px;
}

.sbs-wc-page.woocommerce-account .woocommerce-MyAccount-navigation {
	float: left;
	width: 280px;
	padding-right: 28px;
	border-right: 1px dashed #9e9e9e;
}

.sbs-wc-page.woocommerce-account .woocommerce-MyAccount-content {
	float: right;
	width: calc(100% - 320px);
	padding-left: 10px;
}

.sbs-wc-page.woocommerce-account .woocommerce::after {
	content: "";
	display: table;
	clear: both;
}

.sbs-wc-page.woocommerce-account .woocommerce-MyAccount-navigation ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 8px;
}

.sbs-wc-page.woocommerce-account .woocommerce-MyAccount-navigation-link a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 48px;
	padding: 13px 16px;
	border: 1px solid var(--sbs-wc-border);
	background: #fff;
	text-decoration: none !important;
	color: var(--sbs-wc-text);
	font-size: 14px;
	font-weight: 800;
}

.sbs-wc-page.woocommerce-account .woocommerce-MyAccount-navigation-link a::after {
	content: "→";
	color: #b4b4b4;
}

.sbs-wc-page.woocommerce-account .woocommerce-MyAccount-navigation-link.is-active a,
.sbs-wc-page.woocommerce-account .woocommerce-MyAccount-navigation-link a:hover {
	border-color: var(--sbs-wc-primary);
	background: var(--sbs-wc-primary);
	color: #fff;
}

.sbs-wc-page.woocommerce-account .woocommerce-MyAccount-navigation-link.is-active a::after,
.sbs-wc-page.woocommerce-account .woocommerce-MyAccount-navigation-link a:hover::after {
	color: #fff;
}

.sbs-wc-page.woocommerce-account .woocommerce-MyAccount-content p,
.sbs-wc-page.woocommerce-account .woocommerce-MyAccount-content address {
	color: #616161;
	font-size: 15px;
	line-height: 1.7;
}

.sbs-wc-page.woocommerce-account .woocommerce-MyAccount-content h2,
.sbs-wc-page.woocommerce-account .woocommerce-MyAccount-content h3,
.sbs-wc-page.woocommerce-account .woocommerce-Address-title h3 {
	margin: 0 0 18px;
	font-size: 24px;
	font-weight: 800;
	color: var(--sbs-wc-text);
}

.sbs-account-quick-cards {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
	margin-top: 28px;
}

.sbs-account-quick-card {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 92px;
	padding: 22px;
	background: var(--sbs-wc-soft-bg);
	border: 1px solid var(--sbs-wc-border);
	text-decoration: none !important;
	color: var(--sbs-wc-text) !important;
}

.sbs-account-quick-card span {
	font-size: 18px;
	font-weight: 800;
}

.sbs-account-quick-card strong {
	font-size: 22px;
	color: var(--sbs-wc-primary);
}

.sbs-account-quick-card:hover {
	border-color: var(--sbs-wc-primary);
}

.sbs-wc-page.woocommerce-account table.shop_table,
.sbs-wc-page.woocommerce-account .woocommerce-orders-table {
	border: 0 !important;
	border-collapse: collapse !important;
}

.sbs-wc-page.woocommerce-account table.shop_table th,
.sbs-wc-page.woocommerce-account table.shop_table td {
	border: 0 !important;
	border-bottom: 1px solid #ededed !important;
	padding: 16px 12px !important;
}

.sbs-wc-page.woocommerce-account table.shop_table th {
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: #616161;
}

.sbs-wc-page.woocommerce-account fieldset {
	border: 1px solid var(--sbs-wc-border);
	padding: 22px;
	margin-top: 28px;
}

.sbs-wc-page.woocommerce-account legend {
	padding: 0 8px;
	font-size: 18px;
	font-weight: 800;
	color: var(--sbs-wc-text);
}

/* Notices */
.sbs-wc-page .woocommerce-message,
.sbs-wc-page .woocommerce-info,
.sbs-wc-page .woocommerce-error {
	border-top: 0;
	background: var(--sbs-wc-soft-bg);
	color: var(--sbs-wc-text);
	font-weight: 600;
}

.sbs-wc-page .woocommerce-message::before,
.sbs-wc-page .woocommerce-info::before {
	color: var(--sbs-wc-primary);
}

/* Responsive */
@media (max-width: 1180px) {
	.sbs-shop-layout {
		grid-template-columns: 250px minmax(0, 1fr);
	}
	.sbs-shop-results ul.products,
	.sbs-product-layout-page .related.products ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	.sbs-product-layout-page div.product {
		grid-template-columns: minmax(0, 1fr) minmax(360px, .85fr);
	}
	.sbs-wc-page.woocommerce-checkout form.checkout {
		gap: 38px;
	}
}

@media (max-width: 991px) {
	.sbs-shop-layout,
	.sbs-product-layout-page div.product,
	.sbs-wc-page.woocommerce-checkout form.checkout {
		grid-template-columns: 1fr;
	}
	.sbs-shop-sidebar {
		border-right: 0;
		padding-right: 0;
	}
	.sbs-shop-toolbar {
		grid-template-columns: 1fr;
	}
	.sbs-shop-tools {
		justify-content: space-between;
		flex-wrap: wrap;
	}
	.sbs-product-layout-page div.product div.summary {
		grid-column: 1;
	}
	.sbs-product-layout-page .sbs-single-section,
	.sbs-product-layout-page .related.products {
		grid-column: 1;
	}
	.sbs-wc-page.woocommerce-checkout #customer_details,
	.sbs-wc-page.woocommerce-checkout #payment,
	.sbs-wc-page.woocommerce-checkout #order_review_heading,
	.sbs-wc-page.woocommerce-checkout #order_review {
		grid-column: 1;
		grid-row: auto;
	}
	.sbs-wc-page.woocommerce-cart .woocommerce-cart-form,
	.sbs-wc-page.woocommerce-cart .cart-collaterals,
	.sbs-wc-page.woocommerce-account .woocommerce-MyAccount-navigation,
	.sbs-wc-page.woocommerce-account .woocommerce-MyAccount-content {
		float: none;
		width: 100%;
		padding: 0;
		border-right: 0;
	}
	.sbs-wc-page.woocommerce-account .woocommerce-MyAccount-navigation {
		margin-bottom: 28px;
	}
}

@media (max-width: 767px) {
	.sbs-wc-page .woocommerce,
	.sbs-product-layout-page.single-product .woocommerce,
	.sbs-wc-page.woocommerce-account .woocommerce {
		padding-left: 15px;
		padding-right: 15px;
	}
	.sbs-shop-hero,
	.sbs-cart-header,
	.sbs-checkout-header,
	.sbs-account-header {
		padding-top: 42px;
	}
	.sbs-shop-tabs {
		gap: 18px;
	}
	.sbs-shop-results ul.products,
	.sbs-product-layout-page .related.products ul.products,
	.sbs-account-quick-cards {
		grid-template-columns: 1fr;
	}
	.sbs-shop-tools .search-field {
		width: 100%;
	}
	.sbs-shop-tools,
	.sbs-shop-tools .woocommerce-product-search,
	.sbs-shop-tools .woocommerce-ordering,
	.sbs-shop-tools .orderby {
		width: 100%;
	}
	.sbs-single-topbar {
		align-items: flex-start;
		flex-direction: column;
		gap: 14px;
	}
	.sbs-single-actions {
		width: 100%;
		grid-template-columns: 1fr;
		justify-content: stretch;
	}
	.sbs-single-action {
		border-right: 0;
		border-bottom: 1px solid var(--sbs-wc-border);
		justify-content: flex-start;
		padding-left: 0;
	}
	.sbs-product-layout-page .flex-control-thumbs {
		grid-template-columns: repeat(4, 1fr);
	}
	.sbs-product-layout-page .woocommerce-billing-fields__field-wrapper,
	.sbs-product-layout-page .woocommerce-shipping-fields__field-wrapper,
	.sbs-wc-page.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
	.sbs-wc-page.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper {
		grid-template-columns: 1fr;
	}
	.sbs-finish-row {
		grid-template-columns: 1fr;
		gap: 12px;
	}
	.sbs-finish-swatches {
		grid-template-columns: repeat(3, 1fr);
	}
	.sbs-wc-page.woocommerce-cart table.shop_table_responsive tr td::before {
		font-weight: 800;
		color: var(--sbs-wc-text);
	}
	.sbs-wc-page.woocommerce-checkout .checkout_coupon.woocommerce-form-coupon {
		grid-template-columns: 1fr;
	}
}

/* v1.1.1 stronger fallback layer: works even when WooCommerce output is inside Elementor/shortcode wrappers. */
body.sbs-wc-page.woocommerce-page,
body.sbs-wc-page.woocommerce,
body.sbs-wc-page {
	background: #fff;
	color: var(--sbs-wc-text);
}

body.sbs-wc-page .woocommerce,
body.sbs-wc-page .woocommerce-page,
body.woocommerce-page .woocommerce,
body.woocommerce .woocommerce {
	font-family: var(--e-global-typography-text-font-family, "Roboto"), Sans-serif;
}

body.sbs-wc-page main.site-main,
body.sbs-wc-page .site-main,
body.sbs-wc-page .page-content,
body.woocommerce-page main.site-main,
body.woocommerce-page .site-main,
body.woocommerce-page .page-content {
	max-width: var(--sbs-wc-container) !important;
	width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 20px !important;
	padding-right: 20px !important;
}

body.sbs-shop-archive-page .woocommerce ul.products,
body.sbs-wc-page .woocommerce ul.products,
body.woocommerce-page .woocommerce ul.products {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: 28px 20px !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.sbs-shop-archive-page .woocommerce ul.products::before,
body.sbs-shop-archive-page .woocommerce ul.products::after,
body.sbs-wc-page .woocommerce ul.products::before,
body.sbs-wc-page .woocommerce ul.products::after {
	display: none !important;
	content: none !important;
}

body.sbs-shop-archive-page .woocommerce ul.products li.product,
body.sbs-wc-page .woocommerce ul.products li.product,
body.woocommerce-page .woocommerce ul.products li.product {
	float: none !important;
	clear: none !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
}

body.sbs-wc-page .woocommerce ul.products li.product a img,
body.woocommerce-page .woocommerce ul.products li.product a img,
body.sbs-wc-page .sbs-product-card__media img {
	width: 100% !important;
	aspect-ratio: 1 / 1 !important;
	height: auto !important;
	object-fit: cover !important;
	display: block !important;
	margin: 0 !important;
}

body.sbs-wc-page .woocommerce ul.products li.product .woocommerce-loop-product__title,
body.sbs-wc-page .woocommerce ul.products li.product .sbs-product-card__title {
	font-size: 19px !important;
	line-height: 1.2 !important;
	font-weight: 800 !important;
	color: var(--sbs-wc-text) !important;
	padding: 14px 0 4px !important;
	margin: 0 !important;
}

body.sbs-wc-page .woocommerce ul.products li.product .price {
	display: block !important;
	font-size: 20px !important;
	font-weight: 800 !important;
	color: var(--sbs-wc-text) !important;
	margin: 14px 0 0 !important;
}

body.sbs-wc-page .woocommerce ul.products li.product .button,
body.sbs-wc-page .woocommerce a.button,
body.sbs-wc-page .woocommerce button.button,
body.sbs-wc-page .woocommerce input.button,
body.sbs-wc-page .woocommerce #respond input#submit,
body.woocommerce-page .woocommerce a.button,
body.woocommerce-page .woocommerce button.button,
body.woocommerce-page .woocommerce input.button {
	border: 1px solid var(--sbs-wc-primary) !important;
	background: transparent !important;
	color: var(--sbs-wc-primary) !important;
	border-radius: var(--sbs-wc-button-radius) !important;
	font-weight: 800 !important;
	line-height: 1 !important;
	padding: 14px 22px !important;
	text-decoration: none !important;
}

body.sbs-wc-page .woocommerce ul.products li.product .button:hover,
body.sbs-wc-page .woocommerce a.button:hover,
body.sbs-wc-page .woocommerce button.button:hover,
body.sbs-wc-page .woocommerce input.button:hover,
body.woocommerce-page .woocommerce a.button:hover,
body.woocommerce-page .woocommerce button.button:hover,
body.woocommerce-page .woocommerce input.button:hover {
	background: var(--sbs-wc-primary) !important;
	color: #fff !important;
}

body.single-product.sbs-wc-page div.product {
	display: grid !important;
	grid-template-columns: minmax(0, 1.06fr) minmax(360px, .94fr) !important;
	gap: 56px !important;
	align-items: start !important;
}

body.single-product.sbs-wc-page div.product div.images,
body.single-product.sbs-wc-page div.product div.summary {
	float: none !important;
	width: 100% !important;
	margin: 0 !important;
}

body.single-product.sbs-wc-page .product_title,
body.single-product.sbs-wc-page div.product .product_title {
	font-size: 42px !important;
	line-height: 1.08 !important;
	font-weight: 800 !important;
	color: var(--sbs-wc-text) !important;
	margin: 0 0 12px !important;
}

body.single-product.sbs-wc-page div.product p.price,
body.single-product.sbs-wc-page div.product span.price {
	color: var(--sbs-wc-price) !important;
	font-size: 42px !important;
	line-height: 1 !important;
	font-weight: 800 !important;
	margin: 24px 0 !important;
}

body.single-product.sbs-wc-page .woocommerce-product-gallery__image img {
	width: 100% !important;
	height: auto !important;
	object-fit: cover !important;
}

body.sbs-checkout-page .woocommerce-checkout,
body.sbs-wc-page.woocommerce-checkout .woocommerce-checkout,
body.woocommerce-checkout .woocommerce-checkout {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) 520px !important;
	gap: 72px !important;
	align-items: start !important;
}

body.sbs-wc-page .woocommerce form .form-row input.input-text,
body.sbs-wc-page .woocommerce form .form-row textarea,
body.sbs-wc-page .woocommerce form .form-row select,
body.sbs-wc-page .select2-container .select2-selection--single {
	min-height: 58px !important;
	border: 1px solid var(--sbs-wc-border) !important;
	border-radius: 0 !important;
	background: #fff !important;
	padding: 0 18px !important;
	box-shadow: none !important;
}

body.sbs-cart-page .woocommerce-cart-form,
body.sbs-wc-page .woocommerce-cart-form {
	background: #fff !important;
	border: 1px solid #e5e5e5 !important;
	padding: 20px !important;
}

body.sbs-account-page .woocommerce-MyAccount-navigation,
body.sbs-wc-page .woocommerce-MyAccount-navigation {
	float: left !important;
	width: 260px !important;
	margin-right: 40px !important;
}
body.sbs-account-page .woocommerce-MyAccount-content,
body.sbs-wc-page .woocommerce-MyAccount-content {
	float: none !important;
	width: auto !important;
	overflow: hidden !important;
}

@media (max-width: 1024px) {
	body.sbs-shop-archive-page .woocommerce ul.products,
	body.sbs-wc-page .woocommerce ul.products,
	body.woocommerce-page .woocommerce ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
	body.single-product.sbs-wc-page div.product,
	body.sbs-checkout-page .woocommerce-checkout,
	body.sbs-wc-page.woocommerce-checkout .woocommerce-checkout,
	body.woocommerce-checkout .woocommerce-checkout {
		grid-template-columns: 1fr !important;
		gap: 32px !important;
	}
}
@media (max-width: 640px) {
	body.sbs-shop-archive-page .woocommerce ul.products,
	body.sbs-wc-page .woocommerce ul.products,
	body.woocommerce-page .woocommerce ul.products {
		grid-template-columns: 1fr !important;
	}
	body.sbs-account-page .woocommerce-MyAccount-navigation,
	body.sbs-wc-page .woocommerce-MyAccount-navigation,
	body.sbs-account-page .woocommerce-MyAccount-content,
	body.sbs-wc-page .woocommerce-MyAccount-content {
		float: none !important;
		width: 100% !important;
		margin-right: 0 !important;
	}
}

/* ==========================================================
   SBS WooCommerce priority layer
   Loaded late and scoped to Woo pages so Elementor page/global CSS
   does not break the WooCommerce shop/product/cart/checkout UI.
   ========================================================== */
body.sbs-wc-page .woocommerce,
body.sbs-wc-page.woocommerce-page .site-main > .page-content,
body.sbs-wc-page.woocommerce-page main > .page-content {
	max-width: var(--sbs-wc-container) !important;
	width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 20px !important;
	padding-right: 20px !important;
	box-sizing: border-box !important;
}

body.sbs-wc-page .woocommerce *,
body.sbs-wc-page .woocommerce *::before,
body.sbs-wc-page .woocommerce *::after {
	box-sizing: border-box;
}

body.sbs-wc-page .woocommerce ul.products,
body.sbs-wc-page .woocommerce-page ul.products {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: 26px 18px !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.sbs-wc-page .woocommerce ul.products::before,
body.sbs-wc-page .woocommerce ul.products::after,
body.sbs-wc-page .woocommerce-page ul.products::before,
body.sbs-wc-page .woocommerce-page ul.products::after {
	display: none !important;
	content: none !important;
}

body.sbs-wc-page .woocommerce ul.products li.product,
body.sbs-wc-page .woocommerce-page ul.products li.product {
	float: none !important;
	clear: none !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.sbs-wc-page .sbs-shop-layout {
	display: grid !important;
	grid-template-columns: 285px minmax(0, 1fr) !important;
	gap: 28px !important;
	align-items: start !important;
}

body.sbs-wc-page .sbs-shop-main,
body.sbs-wc-page .sbs-shop-sidebar,
body.sbs-wc-page .sbs-single-summary,
body.sbs-wc-page .sbs-single-gallery-wrap {
	min-width: 0 !important;
}

body.sbs-wc-page.single-product .product,
body.sbs-wc-page .sbs-single-layout {
	display: grid !important;
	grid-template-columns: minmax(0, 1.05fr) minmax(360px, .95fr) !important;
	gap: 40px !important;
	align-items: start !important;
}

body.sbs-wc-page .sbs-single-topbar {
	display: flex !important;
	justify-content: space-between !important;
	align-items: center !important;
	gap: 24px !important;
}

body.sbs-wc-page .sbs-single-actions {
	display: flex !important;
	justify-content: flex-end !important;
	align-items: center !important;
	gap: 24px !important;
	margin-left: auto !important;
}

body.sbs-wc-page .woocommerce-cart-form,
body.sbs-wc-page .cart-collaterals,
body.sbs-wc-page form.checkout,
body.sbs-wc-page .woocommerce-MyAccount-content,
body.sbs-wc-page .woocommerce-MyAccount-navigation {
	font-family: var(--e-global-typography-text-font-family, "Roboto"), Sans-serif !important;
	color: var(--sbs-wc-text) !important;
}

body.sbs-wc-page .button,
body.sbs-wc-page button.button,
body.sbs-wc-page input.button,
body.sbs-wc-page .woocommerce button.button,
body.sbs-wc-page .woocommerce a.button,
body.sbs-wc-page .woocommerce input.button,
body.sbs-wc-page .added_to_cart,
body.sbs-wc-page .sbs-request-price-button,
body.sbs-wc-page .sbs-wishlist-button {
	font-family: var(--e-global-typography-accent-font-family, "Roboto"), Sans-serif !important;
	border-radius: var(--sbs-wc-button-radius) !important;
	text-decoration: none !important;
	box-shadow: none !important;
}

@media (max-width: 1024px) {
	body.sbs-wc-page .woocommerce ul.products,
	body.sbs-wc-page .woocommerce-page ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	body.sbs-wc-page .sbs-shop-layout,
	body.sbs-wc-page.single-product .product,
	body.sbs-wc-page .sbs-single-layout {
		grid-template-columns: 1fr !important;
	}
}

@media (max-width: 767px) {
	body.sbs-wc-page .woocommerce ul.products,
	body.sbs-wc-page .woocommerce-page ul.products {
		grid-template-columns: 1fr !important;
	}

	body.sbs-wc-page .sbs-single-topbar,
	body.sbs-wc-page .sbs-single-actions {
		align-items: flex-start !important;
		justify-content: flex-start !important;
		flex-direction: column !important;
		margin-left: 0 !important;
	}
}

/* v1.1.4 - priority fixes for product buttons + visible/ajax shop controls */
body.sbs-wc-page .sbs-filter-block,
body.sbs-shop-archive-page .sbs-filter-block,
body.sbs-wc-page .sbs-shop-sidebar .widget {
	display: block !important;
	content: normal !important;
}

body.sbs-shop-archive-page .sbs-shop-results {
	position: relative !important;
	min-width: 0 !important;
}

body.sbs-shop-archive-page .sbs-shop-results.sbs-is-loading::before {
	content: "";
	position: absolute;
	inset: -8px;
	background: rgba(255,255,255,.72);
	z-index: 20;
	pointer-events: none;
}

body.sbs-shop-archive-page .sbs-shop-results.sbs-is-loading::after {
	content: "Loading products...";
	position: absolute;
	top: 90px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 21;
	background: #fff;
	border: 1px solid var(--sbs-wc-border);
	box-shadow: 0 12px 30px rgba(16,24,40,.08);
	padding: 12px 18px;
	font-size: 13px;
	font-weight: 800;
	color: var(--sbs-wc-text);
}

body.sbs-shop-archive-page .sbs-shop-tools .woocommerce-ordering,
body.sbs-shop-archive-page .sbs-shop-tools .woocommerce-product-search {
	display: flex !important;
	align-items: center !important;
	margin: 0 !important;
}

body.sbs-shop-archive-page .sbs-shop-tools .orderby,
body.sbs-shop-archive-page .sbs-shop-tools .search-field {
	height: 46px !important;
	min-height: 46px !important;
	box-shadow: none !important;
}

body.sbs-shop-archive-page .woocommerce ul.products li.product,
body.sbs-shop-archive-page .sbs-shop-results ul.products li.product {
	position: relative !important;
	display: flex !important;
	flex-direction: column !important;
	min-height: 100% !important;
	padding-bottom: 58px !important;
}

body.sbs-shop-archive-page .woocommerce ul.products li.product .price,
body.sbs-shop-archive-page .sbs-shop-results li.product .price {
	position: static !important;
	min-height: 50px !important;
	padding-right: 145px !important;
	margin-top: auto !important;
}

body.sbs-shop-archive-page .woocommerce ul.products li.product a.button,
body.sbs-shop-archive-page .woocommerce ul.products li.product button.button,
body.sbs-shop-archive-page .woocommerce ul.products li.product .added_to_cart,
body.sbs-shop-archive-page .sbs-shop-results li.product a.button,
body.sbs-shop-archive-page .sbs-shop-results li.product button.button,
body.sbs-shop-archive-page .sbs-shop-results li.product .added_to_cart {
	position: absolute !important;
	right: 0 !important;
	bottom: 8px !important;
	top: auto !important;
	left: auto !important;
	width: 128px !important;
	max-width: 128px !important;
	height: 42px !important;
	min-height: 42px !important;
	padding: 0 14px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	white-space: nowrap !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
	border: 1px solid var(--sbs-wc-primary) !important;
	background: #fff !important;
	color: var(--sbs-wc-primary) !important;
	font-size: 13px !important;
	font-weight: 800 !important;
	line-height: 1 !important;
	text-align: center !important;
	text-decoration: none !important;
	border-radius: 0 !important;
}

body.sbs-shop-archive-page .woocommerce ul.products li.product a.button:hover,
body.sbs-shop-archive-page .woocommerce ul.products li.product button.button:hover,
body.sbs-shop-archive-page .woocommerce ul.products li.product .added_to_cart:hover,
body.sbs-shop-archive-page .sbs-shop-results li.product a.button:hover,
body.sbs-shop-archive-page .sbs-shop-results li.product button.button:hover,
body.sbs-shop-archive-page .sbs-shop-results li.product .added_to_cart:hover {
	background: var(--sbs-wc-primary) !important;
	color: #fff !important;
}

body.sbs-shop-archive-page .woocommerce ul.products li.product a.button.added,
body.sbs-shop-archive-page .sbs-shop-results li.product a.button.added {
	display: none !important;
}

body.sbs-shop-archive-page .woocommerce ul.products li.product .added_to_cart {
	background: var(--sbs-wc-primary) !important;
	color: #fff !important;
}

body.sbs-shop-archive-page .woocommerce ul.products li.product .button.loading::after,
body.sbs-shop-archive-page .sbs-shop-results li.product .button.loading::after {
	top: 50% !important;
	right: 9px !important;
	transform: translateY(-50%) !important;
}

@media (max-width: 767px) {
	body.sbs-shop-archive-page .woocommerce ul.products li.product .price,
	body.sbs-shop-archive-page .sbs-shop-results li.product .price {
		padding-right: 0 !important;
	}

	body.sbs-shop-archive-page .woocommerce ul.products li.product a.button,
	body.sbs-shop-archive-page .woocommerce ul.products li.product button.button,
	body.sbs-shop-archive-page .woocommerce ul.products li.product .added_to_cart,
	body.sbs-shop-archive-page .sbs-shop-results li.product a.button,
	body.sbs-shop-archive-page .sbs-shop-results li.product button.button,
	body.sbs-shop-archive-page .sbs-shop-results li.product .added_to_cart {
		position: static !important;
		width: 100% !important;
		max-width: none !important;
		margin-top: 10px !important;
	}
}

/* v1.1.5 - product card price/button row + AJAX cart status icon */
body.sbs-shop-archive-page .woocommerce ul.products li.product,
body.sbs-shop-archive-page .sbs-shop-results ul.products li.product {
	padding-bottom: 0 !important;
}

body.sbs-shop-archive-page .sbs-product-card__footer,
body.sbs-wc-page .sbs-product-card__footer {
	margin-top: auto !important;
	padding-top: 16px !important;
	border-top: 1px solid #e5e5e5 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 14px !important;
	width: 100% !important;
}

body.sbs-shop-archive-page .sbs-product-card__price,
body.sbs-shop-archive-page .sbs-product-card__price .price,
body.sbs-wc-page .sbs-product-card__price,
body.sbs-wc-page .sbs-product-card__price .price {
	position: static !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	color: var(--sbs-wc-text) !important;
	font-size: 22px !important;
	font-weight: 800 !important;
	line-height: 1.2 !important;
}

body.sbs-shop-archive-page .sbs-product-card__button-wrap,
body.sbs-wc-page .sbs-product-card__button-wrap {
	position: relative !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: flex-end !important;
	min-width: 128px !important;
	flex: 0 0 auto !important;
}

body.sbs-shop-archive-page .woocommerce ul.products li.product .sbs-product-card__button-wrap a.button,
body.sbs-shop-archive-page .woocommerce ul.products li.product .sbs-product-card__button-wrap button.button,
body.sbs-shop-archive-page .woocommerce ul.products li.product .sbs-product-card__button-wrap .added_to_cart,
body.sbs-shop-archive-page .sbs-shop-results li.product .sbs-product-card__button-wrap a.button,
body.sbs-shop-archive-page .sbs-shop-results li.product .sbs-product-card__button-wrap button.button,
body.sbs-shop-archive-page .sbs-shop-results li.product .sbs-product-card__button-wrap .added_to_cart {
	position: static !important;
	inset: auto !important;
	width: 128px !important;
	max-width: 128px !important;
	height: 42px !important;
	min-height: 42px !important;
	margin: 0 !important;
	padding: 0 14px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	border: 1px solid var(--sbs-wc-primary) !important;
	background: #fff !important;
	color: var(--sbs-wc-primary) !important;
	font-size: 13px !important;
	font-weight: 800 !important;
	line-height: 1 !important;
	text-align: center !important;
	text-decoration: none !important;
	white-space: nowrap !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
	border-radius: 0 !important;
	box-shadow: none !important;
}

body.sbs-shop-archive-page .woocommerce ul.products li.product .sbs-product-card__button-wrap a.button:hover,
body.sbs-shop-archive-page .woocommerce ul.products li.product .sbs-product-card__button-wrap button.button:hover,
body.sbs-shop-archive-page .woocommerce ul.products li.product .sbs-product-card__button-wrap .added_to_cart:hover {
	background: var(--sbs-wc-primary) !important;
	color: #fff !important;
}

body.sbs-shop-archive-page .woocommerce ul.products li.product .sbs-product-card__button-wrap a.button.added,
body.sbs-shop-archive-page .sbs-shop-results li.product .sbs-product-card__button-wrap a.button.added {
	display: none !important;
}

body.sbs-shop-archive-page .woocommerce ul.products li.product .sbs-product-card__button-wrap .added_to_cart,
body.sbs-shop-archive-page .sbs-shop-results li.product .sbs-product-card__button-wrap .added_to_cart {
	background: var(--sbs-wc-primary) !important;
	color: #fff !important;
}

body.sbs-shop-archive-page .sbs-product-card__cart-status,
body.sbs-wc-page .sbs-product-card__cart-status {
	position: absolute !important;
	top: -13px !important;
	right: -9px !important;
	width: 24px !important;
	height: 24px !important;
	border-radius: 999px !important;
	background: var(--sbs-wc-primary) !important;
	color: #fff !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	z-index: 3 !important;
	opacity: 0 !important;
	visibility: hidden !important;
	transform: scale(.65) !important;
	transition: opacity .18s ease, visibility .18s ease, transform .18s ease !important;
	box-shadow: 0 8px 18px rgba(86,185,71,.28) !important;
}

body.sbs-shop-archive-page .sbs-product-card__cart-status svg,
body.sbs-wc-page .sbs-product-card__cart-status svg {
	width: 14px !important;
	height: 14px !important;
	fill: currentColor !important;
	display: block !important;
}

body.sbs-shop-archive-page li.product.sbs-product-added .sbs-product-card__cart-status,
body.sbs-shop-archive-page li.product:has(.added_to_cart) .sbs-product-card__cart-status,
body.sbs-shop-archive-page li.product:has(a.button.added) .sbs-product-card__cart-status {
	opacity: 1 !important;
	visibility: visible !important;
	transform: scale(1) !important;
}

body.sbs-shop-archive-page .sbs-product-card__button-wrap .button.loading::after {
	top: 50% !important;
	right: 8px !important;
	transform: translateY(-50%) !important;
}

@media (max-width: 767px) {
	body.sbs-shop-archive-page .sbs-product-card__footer,
	body.sbs-wc-page .sbs-product-card__footer {
		align-items: stretch !important;
		flex-direction: column !important;
		gap: 12px !important;
	}

	body.sbs-shop-archive-page .sbs-product-card__button-wrap,
	body.sbs-wc-page .sbs-product-card__button-wrap,
	body.sbs-shop-archive-page .woocommerce ul.products li.product .sbs-product-card__button-wrap a.button,
	body.sbs-shop-archive-page .woocommerce ul.products li.product .sbs-product-card__button-wrap button.button,
	body.sbs-shop-archive-page .woocommerce ul.products li.product .sbs-product-card__button-wrap .added_to_cart {
		width: 100% !important;
		max-width: none !important;
	}
}

/* v1.1.6 - persistent active/selected sidebar filter states */
body.sbs-wc-page .sbs-shop-sidebar .sbs-filter-list a.is-active,
body.sbs-wc-page .sbs-shop-sidebar .sbs-filter-list li.is-active > a,
body.sbs-wc-page .sbs-shop-sidebar .sbs-filter-list li.current-cat > a,
body.sbs-wc-page .sbs-shop-sidebar .sbs-filter-list li.current-cat-parent > a,
body.sbs-wc-page .sbs-shop-sidebar .sbs-filter-list li.chosen > a,
body.sbs-wc-page .sbs-shop-sidebar .sbs-filter-list li.wc-layered-nav-term.chosen > a,
body.sbs-wc-page .sbs-shop-sidebar .widget_layered_nav_filters ul li.chosen a,
body.sbs-wc-page .sbs-shop-sidebar .widget_layered_nav ul li.chosen a,
body.sbs-wc-page .sbs-shop-sidebar .widget_product_categories ul li.current-cat > a,
body.sbs-wc-page .sbs-shop-sidebar .widget_product_categories ul li.current-cat-parent > a,
body.sbs-shop-archive-page .sbs-shop-sidebar .sbs-filter-list a.is-active,
body.sbs-shop-archive-page .sbs-shop-sidebar .sbs-filter-list li.is-active > a,
body.sbs-shop-archive-page .sbs-shop-sidebar .sbs-filter-list li.current-cat > a,
body.sbs-shop-archive-page .sbs-shop-sidebar .sbs-filter-list li.chosen > a {
	color: var(--sbs-wc-primary, var(--e-global-color-primary, #56B947)) !important;
	font-weight: 700 !important;
}

body.sbs-wc-page .sbs-shop-sidebar .sbs-filter-check,
body.sbs-shop-archive-page .sbs-shop-sidebar .sbs-filter-check,
body.sbs-wc-page .sbs-shop-sidebar .widget_layered_nav ul li a:before,
body.sbs-wc-page .sbs-shop-sidebar .widget_product_categories ul li a:before {
	content: '' !important;
	display: inline-flex !important;
	width: 14px !important;
	height: 14px !important;
	min-width: 14px !important;
	margin-right: 10px !important;
	border: 1px solid var(--sbs-wc-border, #dbdbdb) !important;
	background: #fff !important;
	box-sizing: border-box !important;
	vertical-align: -2px !important;
}

body.sbs-wc-page .sbs-shop-sidebar .sbs-filter-list a.is-active .sbs-filter-check,
body.sbs-wc-page .sbs-shop-sidebar .sbs-filter-list li.is-active > a .sbs-filter-check,
body.sbs-wc-page .sbs-shop-sidebar .sbs-filter-list li.current-cat > a .sbs-filter-check,
body.sbs-wc-page .sbs-shop-sidebar .sbs-filter-list li.chosen > a .sbs-filter-check,
body.sbs-wc-page .sbs-shop-sidebar .widget_layered_nav ul li.chosen a:before,
body.sbs-wc-page .sbs-shop-sidebar .widget_product_categories ul li.current-cat > a:before,
body.sbs-shop-archive-page .sbs-shop-sidebar .sbs-filter-list a.is-active .sbs-filter-check,
body.sbs-shop-archive-page .sbs-shop-sidebar .sbs-filter-list li.is-active > a .sbs-filter-check,
body.sbs-shop-archive-page .sbs-shop-sidebar .sbs-filter-list li.current-cat > a .sbs-filter-check,
body.sbs-shop-archive-page .sbs-shop-sidebar .sbs-filter-list li.chosen > a .sbs-filter-check {
	border-color: var(--sbs-wc-primary, var(--e-global-color-primary, #56B947)) !important;
	background: var(--sbs-wc-primary, var(--e-global-color-primary, #56B947)) !important;
	box-shadow: inset 0 0 0 3px #fff !important;
}

body.sbs-wc-page .sbs-shop-sidebar .sbs-filter-list li.is-active,
body.sbs-wc-page .sbs-shop-sidebar .sbs-filter-list li.current-cat,
body.sbs-wc-page .sbs-shop-sidebar .sbs-filter-list li.chosen,
body.sbs-wc-page .sbs-shop-sidebar .widget_layered_nav ul li.chosen,
body.sbs-wc-page .sbs-shop-sidebar .widget_product_categories ul li.current-cat,
body.sbs-shop-archive-page .sbs-shop-sidebar .sbs-filter-list li.is-active,
body.sbs-shop-archive-page .sbs-shop-sidebar .sbs-filter-list li.current-cat,
body.sbs-shop-archive-page .sbs-shop-sidebar .sbs-filter-list li.chosen {
	background: rgba(86, 185, 71, 0.07) !important;
	border-radius: 2px !important;
}

body.sbs-wc-page .sbs-shop-sidebar .widget_layered_nav_filters ul li a,
body.sbs-shop-archive-page .sbs-shop-sidebar .widget_layered_nav_filters ul li a {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	border: 1px solid rgba(86, 185, 71, 0.35) !important;
	background: rgba(86, 185, 71, 0.08) !important;
	color: var(--sbs-wc-primary, var(--e-global-color-primary, #56B947)) !important;
	padding: 6px 10px !important;
	font-weight: 700 !important;
}

/* v1.1.7 - combined checkbox-style sidebar filter states */
body.sbs-shop-archive-page .sbs-shop-sidebar .sbs-filter-list li.is-active > a,
body.sbs-shop-archive-page .sbs-shop-sidebar .sbs-filter-list li.chosen > a {
    color: var(--sbs-wc-primary, #56B947) !important;
    font-weight: 700 !important;
}
body.sbs-shop-archive-page .sbs-shop-sidebar .sbs-filter-list li.is-active .sbs-filter-check,
body.sbs-shop-archive-page .sbs-shop-sidebar .sbs-filter-list li.chosen .sbs-filter-check {
    border-color: var(--sbs-wc-primary, #56B947) !important;
    background: var(--sbs-wc-primary, #56B947) !important;
    box-shadow: inset 0 0 0 3px #fff !important;
}


/* v1.1.8 - keep no-product filter results inside the shop layout */
body.sbs-shop-archive-page .sbs-shop-results .woocommerce-info,
body.sbs-shop-archive-page .sbs-shop-results .woocommerce-message,
body.sbs-shop-archive-page .sbs-shop-results .woocommerce-error {
	margin: 24px 0 0 !important;
	border-top: 0 !important;
	background: var(--sbs-wc-soft-bg, #F7F7F7) !important;
	color: var(--sbs-wc-text, #101828) !important;
	font-family: var(--e-global-typography-text-font-family, Roboto, Arial, sans-serif) !important;
	font-weight: 600 !important;
	padding: 24px 28px 24px 58px !important;
}
body.sbs-shop-archive-page .sbs-shop-results .woocommerce-info::before {
	color: var(--sbs-wc-primary, #56B947) !important;
}

/* v1.1.9 - related products card should match shop product card */
body.sbs-product-layout-page .related.products {
	grid-column: 1 / -1 !important;
	margin-top: 52px !important;
	padding-top: 36px !important;
	border-top: 1px solid var(--sbs-wc-border) !important;
}

body.sbs-product-layout-page .related.products > h2 {
	margin-bottom: 34px !important;
}

body.sbs-product-layout-page .related.products ul.products {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: 26px 20px !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.sbs-product-layout-page .related.products ul.products::before,
body.sbs-product-layout-page .related.products ul.products::after {
	display: none !important;
	content: none !important;
}

body.sbs-product-layout-page .related.products ul.products li.product {
	float: none !important;
	clear: none !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	list-style: none !important;
	display: flex !important;
	flex-direction: column !important;
	min-width: 0 !important;
	position: relative !important;
}

body.sbs-product-layout-page .related.products ul.products li.product a.woocommerce-LoopProduct-link {
	color: inherit !important;
	text-decoration: none !important;
	display: block !important;
}

body.sbs-product-layout-page .related.products .sbs-product-card__media {
	position: relative !important;
	background: #f2f2f2 !important;
	aspect-ratio: 1 / .96 !important;
	overflow: hidden !important;
	margin: 0 0 18px !important;
}

body.sbs-product-layout-page .related.products .sbs-product-card__media img,
body.sbs-product-layout-page .related.products ul.products li.product a img {
	width: 100% !important;
	height: 100% !important;
	aspect-ratio: auto !important;
	object-fit: cover !important;
	display: block !important;
	margin: 0 !important;
	transition: transform .45s ease !important;
}

body.sbs-product-layout-page .related.products li.product:hover .sbs-product-card__media img {
	transform: scale(1.035) !important;
}

body.sbs-product-layout-page .related.products .sbs-product-card__brand {
	position: absolute !important;
	top: 16px !important;
	right: 14px !important;
	background: rgba(0,0,0,.68) !important;
	color: #fff !important;
	padding: 8px 11px !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	letter-spacing: .06em !important;
	text-transform: uppercase !important;
}

body.sbs-product-layout-page .related.products .sbs-product-card__title,
body.sbs-product-layout-page .related.products .woocommerce-loop-product__title {
	margin: 0 0 6px !important;
	padding: 0 !important;
	font-size: 20px !important;
	font-weight: 800 !important;
	line-height: 1.16 !important;
	color: var(--sbs-wc-text) !important;
}

body.sbs-product-layout-page .related.products .sbs-product-card__excerpt {
	min-height: 42px !important;
	margin: 0 0 12px !important;
	color: #737373 !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 1.45 !important;
}

body.sbs-product-layout-page .related.products .sbs-product-card__meta {
	margin: 0 0 22px !important;
	color: #9a9a9a !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	letter-spacing: .02em !important;
}

body.sbs-product-layout-page .related.products .sbs-product-card__footer {
	margin-top: auto !important;
	padding-top: 16px !important;
	border-top: 1px solid #e5e5e5 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 14px !important;
	width: 100% !important;
}

body.sbs-product-layout-page .related.products .sbs-product-card__price,
body.sbs-product-layout-page .related.products .sbs-product-card__price .price {
	position: static !important;
	display: block !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	color: var(--sbs-wc-text) !important;
	font-size: 22px !important;
	font-weight: 800 !important;
	line-height: 1.2 !important;
}

body.sbs-product-layout-page .related.products .sbs-product-card__button-wrap {
	position: relative !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: flex-end !important;
	min-width: 128px !important;
	flex: 0 0 auto !important;
}

body.sbs-product-layout-page .related.products .sbs-product-card__button-wrap a.button,
body.sbs-product-layout-page .related.products .sbs-product-card__button-wrap button.button,
body.sbs-product-layout-page .related.products .sbs-product-card__button-wrap .added_to_cart {
	position: static !important;
	inset: auto !important;
	width: 128px !important;
	max-width: 128px !important;
	height: 42px !important;
	min-height: 42px !important;
	margin: 0 !important;
	padding: 0 14px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	border: 1px solid var(--sbs-wc-primary) !important;
	background: #fff !important;
	color: var(--sbs-wc-primary) !important;
	font-size: 13px !important;
	font-weight: 800 !important;
	line-height: 1 !important;
	text-align: center !important;
	text-decoration: none !important;
	white-space: nowrap !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
	border-radius: 0 !important;
	box-shadow: none !important;
}

body.sbs-product-layout-page .related.products .sbs-product-card__button-wrap a.button:hover,
body.sbs-product-layout-page .related.products .sbs-product-card__button-wrap button.button:hover,
body.sbs-product-layout-page .related.products .sbs-product-card__button-wrap .added_to_cart:hover,
body.sbs-product-layout-page .related.products .sbs-product-card__button-wrap .added_to_cart {
	background: var(--sbs-wc-primary) !important;
	color: #fff !important;
}

body.sbs-product-layout-page .related.products .sbs-product-card__button-wrap a.button.added {
	display: none !important;
}

body.sbs-product-layout-page .related.products .sbs-product-card__cart-status {
	position: absolute !important;
	top: -13px !important;
	right: -9px !important;
	width: 24px !important;
	height: 24px !important;
	border-radius: 999px !important;
	background: var(--sbs-wc-primary) !important;
	color: #fff !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	z-index: 3 !important;
	opacity: 0 !important;
	visibility: hidden !important;
	transform: scale(.65) !important;
	transition: opacity .18s ease, visibility .18s ease, transform .18s ease !important;
	box-shadow: 0 8px 18px rgba(86,185,71,.28) !important;
}

body.sbs-product-layout-page .related.products .sbs-product-card__cart-status svg {
	width: 14px !important;
	height: 14px !important;
	fill: currentColor !important;
	display: block !important;
}

body.sbs-product-layout-page .related.products li.product.sbs-product-added .sbs-product-card__cart-status,
body.sbs-product-layout-page .related.products li.product:has(.added_to_cart) .sbs-product-card__cart-status,
body.sbs-product-layout-page .related.products li.product:has(a.button.added) .sbs-product-card__cart-status {
	opacity: 1 !important;
	visibility: visible !important;
	transform: scale(1) !important;
}

@media (max-width: 1024px) {
	body.sbs-product-layout-page .related.products ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 640px) {
	body.sbs-product-layout-page .related.products ul.products {
		grid-template-columns: 1fr !important;
	}

	body.sbs-product-layout-page .related.products .sbs-product-card__footer {
		align-items: stretch !important;
		flex-direction: column !important;
	}

	body.sbs-product-layout-page .related.products .sbs-product-card__button-wrap,
	body.sbs-product-layout-page .related.products .sbs-product-card__button-wrap a.button,
	body.sbs-product-layout-page .related.products .sbs-product-card__button-wrap button.button,
	body.sbs-product-layout-page .related.products .sbs-product-card__button-wrap .added_to_cart {
		width: 100% !important;
		max-width: none !important;
	}
}


/* v1.2.0 - single product action button group */
body.sbs-product-layout-page .sbs-variable-summary-box {
	display: none !important;
}

body.sbs-product-layout-page div.product form.cart .sbs-single-button-wrap {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
	gap: 14px 18px !important;
	width: 100% !important;
	margin-top: 18px !important;
	padding: 0 !important;
	clear: both !important;
}

body.sbs-product-layout-page div.product form.cart .sbs-single-button-wrap .single_add_to_cart_button,
body.sbs-product-layout-page div.product form.cart .sbs-single-button-wrap .sbs-request-price-button,
body.sbs-product-layout-page div.product form.cart .sbs-single-button-wrap .sbs-wishlist-button {
	width: 100% !important;
	min-height: 54px !important;
	height: 54px !important;
	margin: 0 !important;
	border-radius: 0 !important;
	font-family: var(--sbs-wc-font, "Roboto", sans-serif) !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	text-decoration: none !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	box-shadow: none !important;
	float: none !important;
}

body.sbs-product-layout-page div.product form.cart .sbs-single-button-wrap .single_add_to_cart_button {
	background: var(--sbs-wc-primary) !important;
	border: 1px solid var(--sbs-wc-primary) !important;
	color: #fff !important;
}

body.sbs-product-layout-page div.product form.cart .sbs-single-button-wrap .single_add_to_cart_button:hover {
	background: #43a934 !important;
	border-color: #43a934 !important;
	color: #fff !important;
}

body.sbs-product-layout-page div.product form.cart .sbs-single-button-wrap .sbs-request-price-button {
	background: #fff !important;
	border: 1px solid var(--sbs-wc-text) !important;
	color: var(--sbs-wc-text) !important;
}

body.sbs-product-layout-page div.product form.cart .sbs-single-button-wrap .sbs-request-price-button:hover {
	background: var(--sbs-wc-text) !important;
	border-color: var(--sbs-wc-text) !important;
	color: #fff !important;
}

body.sbs-product-layout-page div.product form.cart .sbs-single-button-wrap .sbs-wishlist-button {
	grid-column: 1 / -1 !important;
	background: #fff !important;
	border: 1px solid var(--sbs-wc-text) !important;
	color: var(--sbs-wc-text) !important;
	gap: 12px !important;
}

body.sbs-product-layout-page div.product form.cart .sbs-single-button-wrap .sbs-wishlist-button span {
	font-size: 30px !important;
	font-weight: 300 !important;
	line-height: 1 !important;
}

body.sbs-product-layout-page div.product form.cart .sbs-single-button-wrap .sbs-wishlist-button:hover {
	background: var(--sbs-wc-text) !important;
	border-color: var(--sbs-wc-text) !important;
	color: #fff !important;
}

body.sbs-product-layout-page div.product form.cart .sbs-qty-control,
body.sbs-product-layout-page div.product form.cart div.quantity {
	margin-bottom: 0 !important;
}

@media (max-width: 767px) {
	body.sbs-product-layout-page div.product form.cart .sbs-single-button-wrap {
		grid-template-columns: 1fr !important;
		gap: 12px !important;
	}

	body.sbs-product-layout-page div.product form.cart .sbs-single-button-wrap .sbs-wishlist-button {
		grid-column: auto !important;
	}
}

/* Dynamic single product rating - no fake stars/value. */
body.sbs-product-layout-page .sbs-single-meta-row .sbs-single-rating {
	display: inline-flex !important;
	align-items: center !important;
	gap: 7px !important;
	color: var(--sbs-wc-accent) !important;
	font-weight: 800 !important;
	line-height: 1 !important;
	text-decoration: none !important;
}

body.sbs-product-layout-page .sbs-single-meta-row .sbs-single-rating .star-rating {
	float: none !important;
	display: inline-block !important;
	margin: 0 !important;
	font-size: 13px !important;
	line-height: 1 !important;
	color: var(--sbs-wc-accent) !important;
}

body.sbs-product-layout-page .sbs-single-meta-row .sbs-single-rating__value {
	color: var(--sbs-wc-text) !important;
	font-size: 13px !important;
	font-weight: 700 !important;
}

body.sbs-product-layout-page .sbs-single-meta-row .sbs-single-rating__count {
	color: var(--sbs-wc-muted) !important;
	font-size: 12px !important;
	font-weight: 600 !important;
}

/* v1.2.2 fluid main + section/container structure
   Keep Hello/Elementor main full-width, then constrain each WooCommerce content section. */
body.sbs-wc-page main.site-main,
body.sbs-wc-page .site-main,
body.sbs-wc-page .page-content,
body.woocommerce-page main.site-main,
body.woocommerce-page .site-main,
body.woocommerce-page .page-content {
	max-width: none !important;
	width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

body.sbs-wc-page .woocommerce,
body.woocommerce-page .woocommerce {
	max-width: none !important;
	width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

body.sbs-wc-page .sbs-wc-container,
body.sbs-wc-page .woocommerce-breadcrumb,
body.sbs-wc-page .woocommerce-notices-wrapper,
body.sbs-wc-page .woocommerce-error,
body.sbs-wc-page .woocommerce-info,
body.sbs-wc-page .woocommerce-message,
body.sbs-product-layout-page.single-product .woocommerce > div.product,
body.sbs-product-layout-page.single-product .woocommerce > .product,
body.sbs-product-layout-page .sbs-single-topbar,
body.sbs-product-layout-page .sbs-single-section,
body.sbs-product-layout-page .related.products,
body.sbs-product-layout-page .sbs-reviews-panel,
body.woocommerce-cart .woocommerce-cart-form,
body.woocommerce-cart .cart-collaterals,
body.woocommerce-checkout form.checkout,
body.woocommerce-account .woocommerce-MyAccount-navigation,
body.woocommerce-account .woocommerce-MyAccount-content,
body.sbs-wc-page .woocommerce > .cart-empty,
body.sbs-wc-page .woocommerce > .return-to-shop {
	max-width: var(--sbs-wc-container) !important;
	width: calc(100% - 40px) !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

body.sbs-shop-archive-page .sbs-shop-hero {
	width: 100% !important;
}

body.sbs-shop-archive-page .sbs-shop-main-section {
	width: 100% !important;
}

body.sbs-shop-archive-page .sbs-shop-layout {
	width: 100% !important;
}

body.sbs-product-layout-page .woocommerce-breadcrumb {
	width: auto !important;
	max-width: none !important;
	margin: 0 !important;
}

body.sbs-product-layout-page .sbs-single-topbar {
	box-sizing: border-box !important;
}

body.sbs-wc-page .sbs-single-actions {
	margin-left: auto !important;
}

@media (max-width: 767px) {
	body.sbs-wc-page .sbs-wc-container,
	body.sbs-wc-page .woocommerce-breadcrumb,
	body.sbs-wc-page .woocommerce-notices-wrapper,
	body.sbs-wc-page .woocommerce-error,
	body.sbs-wc-page .woocommerce-info,
	body.sbs-wc-page .woocommerce-message,
	body.sbs-product-layout-page.single-product .woocommerce > div.product,
	body.sbs-product-layout-page.single-product .woocommerce > .product,
	body.sbs-product-layout-page .sbs-single-topbar,
	body.sbs-product-layout-page .sbs-single-section,
	body.sbs-product-layout-page .related.products,
	body.sbs-product-layout-page .sbs-reviews-panel,
	body.woocommerce-cart .woocommerce-cart-form,
	body.woocommerce-cart .cart-collaterals,
	body.woocommerce-checkout form.checkout,
	body.woocommerce-account .woocommerce-MyAccount-navigation,
	body.woocommerce-account .woocommerce-MyAccount-content,
	body.sbs-wc-page .woocommerce > .cart-empty,
	body.sbs-wc-page .woocommerce > .return-to-shop {
		width: calc(100% - 32px) !important;
	}
}


/* v1.2.4: keep Woo pages fluid, then wrap each content area as section > .sbs-wc-container. */
body.sbs-wc-page .sbs-cart-header,
body.sbs-wc-page .sbs-checkout-header,
body.sbs-wc-page .sbs-account-header,
body.sbs-wc-page .sbs-cart-section,
body.sbs-wc-page .sbs-checkout-section,
body.sbs-wc-page .sbs-account-section {
	width: 100% !important;
	max-width: none !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

body.sbs-wc-page .sbs-cart-header > .sbs-wc-container,
body.sbs-wc-page .sbs-checkout-header > .sbs-wc-container,
body.sbs-wc-page .sbs-account-header > .sbs-wc-container,
body.sbs-wc-page .sbs-cart-section > .sbs-wc-container,
body.sbs-wc-page .sbs-checkout-section > .sbs-wc-container,
body.sbs-wc-page .sbs-account-section > .sbs-wc-container,
body.sbs-wc-page .sbs-product > .sbs-wc-container {
	max-width: var(--sbs-wc-container) !important;
	width: calc(100% - 40px) !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

body.woocommerce-cart .sbs-cart-section .woocommerce-cart-form,
body.woocommerce-cart .sbs-cart-section .cart-collaterals,
body.woocommerce-checkout .sbs-checkout-section form.checkout,
body.woocommerce-account .sbs-account-section .woocommerce-MyAccount-navigation,
body.woocommerce-account .sbs-account-section .woocommerce-MyAccount-content {
	max-width: none !important;
	width: auto !important;
}

body.woocommerce-cart .sbs-cart-header,
body.woocommerce-checkout .sbs-checkout-header,
body.woocommerce-account .sbs-account-header {
	padding-top: 56px !important;
	padding-bottom: 24px !important;
}

body.woocommerce-cart .sbs-cart-section,
body.woocommerce-checkout .sbs-checkout-section,
body.woocommerce-account .sbs-account-section {
	padding-bottom: 80px !important;
}

@media (max-width: 767px) {
	body.sbs-wc-page .sbs-cart-header > .sbs-wc-container,
	body.sbs-wc-page .sbs-checkout-header > .sbs-wc-container,
	body.sbs-wc-page .sbs-account-header > .sbs-wc-container,
	body.sbs-wc-page .sbs-cart-section > .sbs-wc-container,
	body.sbs-wc-page .sbs-checkout-section > .sbs-wc-container,
	body.sbs-wc-page .sbs-account-section > .sbs-wc-container,
	body.sbs-wc-page .sbs-product > .sbs-wc-container {
		width: calc(100% - 30px) !important;
	}
}

/* v1.2.5 - stronger shop tab states */
body.sbs-shop-archive-page .sbs-shop-hero .sbs-shop-tabs .sbs-shop-tab,
body.sbs-wc-page .sbs-shop-hero .sbs-shop-tabs .sbs-shop-tab {
	position: relative !important;
	display: inline-flex !important;
	align-items: center !important;
	min-height: 30px !important;
	padding: 0 0 7px !important;
	color: var(--sbs-wc-muted, #7B7B7B) !important;
	border-bottom: 2px solid transparent !important;
	transition: color .18s ease, border-color .18s ease !important;
}
body.sbs-shop-archive-page .sbs-shop-hero .sbs-shop-tabs .sbs-shop-tab:hover,
body.sbs-shop-archive-page .sbs-shop-hero .sbs-shop-tabs .sbs-shop-tab:focus,
body.sbs-shop-archive-page .sbs-shop-hero .sbs-shop-tabs .sbs-shop-tab.is-active,
body.sbs-shop-archive-page .sbs-shop-hero .sbs-shop-tabs .sbs-shop-tab[aria-current="page"] {
	color: var(--sbs-wc-text, #101828) !important;
	border-bottom-color: var(--sbs-wc-primary, #56B947) !important;
}
body.sbs-shop-archive-page .sbs-shop-hero .sbs-shop-tabs .sbs-shop-tab.is-active::after {
	display: none !important;
}

/* v1.2.5 - cart page layout inspired by the provided reference */
body.sbs-cart-page {
	background: #e9eef1 !important;
}
body.sbs-cart-page .sbs-cart-header {
	display: none !important;
}
body.sbs-cart-page .sbs-cart-section {
	padding: clamp(34px, 7vw, 96px) 16px !important;
	background: #e9eef1 !important;
}
body.sbs-cart-page .sbs-cart-section > .sbs-wc-container {
	max-width: min(1120px, calc(100vw - 32px)) !important;
	padding: clamp(28px, 5vw, 70px) clamp(22px, 5vw, 70px) !important;
	background: #fff !important;
	box-shadow: 0 22px 60px rgba(16, 24, 40, .08) !important;
	border-radius: 0 !important;
	position: relative !important;
	overflow: hidden !important;
}
body.sbs-cart-page .sbs-cart-section > .sbs-wc-container::before {
	content: "My Cart";
	display: block;
	margin: 0 0 42px;
	font-family: var(--e-global-typography-primary-font-family, "Roboto"), Sans-serif;
	font-size: clamp(38px, 5vw, 58px);
	font-weight: 800;
	letter-spacing: -.05em;
	line-height: 1;
	color: var(--sbs-wc-text, #101828);
}
body.sbs-cart-page .sbs-cart-section > .sbs-wc-container::after {
	content: "";
	position: absolute;
	inset: 0 auto auto 48%;
	width: 560px;
	height: 560px;
	background: radial-gradient(circle, rgba(247,247,247,.92) 0%, rgba(247,247,247,.9) 42%, rgba(255,255,255,0) 43%);
	pointer-events: none;
	z-index: 0;
}
body.sbs-cart-page .woocommerce {
	position: relative !important;
	z-index: 1 !important;
}
body.sbs-cart-page .woocommerce-cart-form {
	float: none !important;
	width: 100% !important;
	padding: 0 !important;
	margin: 0 !important;
}
body.sbs-cart-page .woocommerce-cart-form::before {
	content: "";
	display: table;
	clear: both;
}
body.sbs-cart-page .woocommerce-cart-form .shop_table {
	width: 100% !important;
	border: 0 !important;
	border-collapse: collapse !important;
	background: transparent !important;
}
body.sbs-cart-page .woocommerce-cart-form table.shop_table th {
	padding: 0 12px 18px !important;
	border: 0 !important;
	border-bottom: 1px solid #e5e7eb !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	letter-spacing: .08em !important;
	text-transform: uppercase !important;
	color: #333 !important;
}
body.sbs-cart-page .woocommerce-cart-form table.shop_table td {
	padding: 18px 12px !important;
	border: 0 !important;
	border-bottom: 1px solid #e5e7eb !important;
	background: transparent !important;
	vertical-align: middle !important;
}
body.sbs-cart-page .woocommerce-cart-form .product-thumbnail {
	width: 112px !important;
}
body.sbs-cart-page .woocommerce-cart-form .product-thumbnail img {
	width: 86px !important;
	height: 86px !important;
	object-fit: cover !important;
	background: #f2f4f7 !important;
}
body.sbs-cart-page .woocommerce-cart-form .product-name a {
	font-size: 17px !important;
	font-weight: 800 !important;
	line-height: 1.25 !important;
	color: var(--sbs-wc-text, #101828) !important;
}
body.sbs-cart-page .woocommerce-cart-form .product-price,
body.sbs-cart-page .woocommerce-cart-form .product-subtotal {
	font-size: 17px !important;
	font-weight: 800 !important;
	color: var(--sbs-wc-text, #101828) !important;
}
body.sbs-cart-page .woocommerce-cart-form .sbs-qty-control {
	justify-content: center !important;
	gap: 14px !important;
	border: 0 !important;
	background: transparent !important;
}
body.sbs-cart-page .woocommerce-cart-form .sbs-qty-btn {
	width: 26px !important;
	height: 26px !important;
	border: 0 !important;
	background: transparent !important;
	font-size: 18px !important;
	font-weight: 700 !important;
	color: var(--sbs-wc-text, #101828) !important;
}
body.sbs-cart-page .woocommerce-cart-form input.qty {
	width: 36px !important;
	border: 0 !important;
	background: transparent !important;
	font-weight: 700 !important;
	box-shadow: none !important;
}
body.sbs-cart-page .woocommerce-cart-form .product-remove a.remove {
	font-size: 17px !important;
	font-weight: 600 !important;
	color: #101828 !important;
	background: transparent !important;
}
body.sbs-cart-page .woocommerce-cart-form .actions {
	padding-top: 26px !important;
	border-bottom: 0 !important;
}
body.sbs-cart-page .woocommerce-cart-form .coupon {
	float: left !important;
	display: flex !important;
	gap: 10px !important;
}
body.sbs-cart-page .woocommerce-cart-form button[name="update_cart"] {
	float: right !important;
}
body.sbs-cart-page .cart-collaterals {
	float: none !important;
	width: 100% !important;
	margin-top: 34px !important;
	background: #eef3f6 !important;
	border-radius: 28px !important;
	padding: 28px clamp(22px, 4vw, 58px) !important;
	box-shadow: 0 14px 36px rgba(16,24,40,.08) !important;
}
body.sbs-cart-page .cart_totals {
	float: none !important;
	width: 100% !important;
	max-width: none !important;
	padding: 0 !important;
	background: transparent !important;
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) minmax(280px, 360px) !important;
	column-gap: 56px !important;
	align-items: center !important;
}
body.sbs-cart-page .cart_totals h2 {
	grid-column: 1;
	margin: 0 0 14px !important;
	font-size: 22px !important;
	font-weight: 800 !important;
}
body.sbs-cart-page .cart_totals table.shop_table {
	grid-column: 2 !important;
	margin: 0 0 16px !important;
	border: 0 !important;
	background: transparent !important;
}
body.sbs-cart-page .cart_totals table th,
body.sbs-cart-page .cart_totals table td {
	padding: 8px 0 !important;
	border: 0 !important;
	border-bottom: 1px solid rgba(16,24,40,.08) !important;
	font-size: 12px !important;
	text-transform: uppercase !important;
	color: #3a3a3a !important;
}
body.sbs-cart-page .cart_totals table td {
	text-align: right !important;
	font-weight: 800 !important;
	text-transform: none !important;
}
body.sbs-cart-page .wc-proceed-to-checkout {
	grid-column: 2 !important;
	padding: 0 !important;
}
body.sbs-cart-page .wc-proceed-to-checkout a.checkout-button {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	width: 100% !important;
	min-height: 48px !important;
	padding: 0 24px !important;
	border: 0 !important;
	border-radius: 10px !important;
	background: var(--sbs-wc-primary, #56B947) !important;
	color: #fff !important;
	font-size: 15px !important;
	font-weight: 800 !important;
}
body.sbs-cart-page .return-to-shop,
body.sbs-cart-page .woocommerce-notices-wrapper + .return-to-shop {
	margin-top: 24px !important;
}
body.sbs-cart-page .sbs-cart-section .sbs-wc-container > .woocommerce::before {
	content: "← Continue shopping";
	position: absolute;
	top: clamp(38px, 5vw, 72px);
	right: clamp(22px, 5vw, 70px);
	display: inline-flex;
	align-items: center;
	min-height: 34px;
	padding: 0 16px;
	border: 1px solid #e6e9ee;
	border-radius: 8px;
	background: #fff;
	box-shadow: 0 5px 15px rgba(16,24,40,.04);
	font-size: 12px;
	font-weight: 800;
	color: #101828;
	pointer-events: none;
}

/* v1.2.5 - AJAX side cart */
.sbs-side-cart {
	position: fixed !important;
	inset: 0 !important;
	z-index: 999999 !important;
	pointer-events: none !important;
	visibility: hidden !important;
}
.sbs-side-cart.is-open {
	pointer-events: auto !important;
	visibility: visible !important;
}
.sbs-side-cart__overlay {
	position: absolute !important;
	inset: 0 !important;
	background: rgba(16,24,40,.42) !important;
	opacity: 0 !important;
	transition: opacity .25s ease !important;
}
.sbs-side-cart.is-open .sbs-side-cart__overlay {
	opacity: 1 !important;
}
.sbs-side-cart__panel {
	position: absolute !important;
	top: 0 !important;
	right: 0 !important;
	width: min(430px, 92vw) !important;
	height: 100% !important;
	background: #fff !important;
	box-shadow: -24px 0 60px rgba(16,24,40,.18) !important;
	transform: translateX(103%) !important;
	transition: transform .3s ease !important;
	display: flex !important;
	flex-direction: column !important;
}
.sbs-side-cart.is-open .sbs-side-cart__panel {
	transform: translateX(0) !important;
}
.sbs-side-cart__head {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	padding: 22px 24px !important;
	border-bottom: 1px solid #eee !important;
}
.sbs-side-cart__head strong {
	font-size: 22px !important;
	font-weight: 800 !important;
	color: var(--sbs-wc-text, #101828) !important;
}
.sbs-side-cart-count {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-width: 24px !important;
	height: 24px !important;
	margin-left: 8px !important;
	border-radius: 999px !important;
	background: var(--sbs-wc-primary, #56B947) !important;
	color: #fff !important;
	font-size: 12px !important;
}
.sbs-side-cart__close {
	width: 38px !important;
	height: 38px !important;
	border: 1px solid #e5e7eb !important;
	background: #fff !important;
	font-size: 24px !important;
	line-height: 1 !important;
	cursor: pointer !important;
}
.sbs-side-cart-inner {
	min-height: 0 !important;
	flex: 1 !important;
	display: flex !important;
	flex-direction: column !important;
}
.sbs-side-cart__items {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: auto !important;
	flex: 1 !important;
}
.sbs-side-cart__item {
	display: grid !important;
	grid-template-columns: 76px minmax(0, 1fr) 24px !important;
	gap: 14px !important;
	padding: 18px 24px !important;
	border-bottom: 1px solid #f0f0f0 !important;
}
.sbs-side-cart__thumb img {
	width: 76px !important;
	height: 76px !important;
	object-fit: cover !important;
	background: #f7f7f7 !important;
}
.sbs-side-cart__title {
	display: block !important;
	font-size: 14px !important;
	font-weight: 800 !important;
	line-height: 1.35 !important;
	color: var(--sbs-wc-text, #101828) !important;
	text-decoration: none !important;
}
.sbs-side-cart__meta {
	margin-top: 5px !important;
	font-size: 12px !important;
	color: #7B7B7B !important;
}
.sbs-side-cart__price {
	margin-top: 8px !important;
	font-size: 14px !important;
	font-weight: 800 !important;
	color: var(--sbs-wc-text, #101828) !important;
}
.sbs-side-cart__remove {
	font-size: 20px !important;
	line-height: 1 !important;
	color: #777 !important;
	text-decoration: none !important;
}
.sbs-side-cart__summary {
	padding: 20px 24px 24px !important;
	border-top: 1px solid #eee !important;
	background: #fafafa !important;
}
.sbs-side-cart__summary > div {
	display: flex !important;
	justify-content: space-between !important;
	margin-bottom: 16px !important;
	font-size: 15px !important;
}
.sbs-side-cart__checkout,
.sbs-side-cart__view {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	min-height: 46px !important;
	margin-top: 10px !important;
	text-decoration: none !important;
	font-weight: 800 !important;
}
.sbs-side-cart__checkout {
	background: var(--sbs-wc-primary, #56B947) !important;
	color: #fff !important;
}
.sbs-side-cart__view {
	border: 1px solid #101828 !important;
	background: #fff !important;
	color: #101828 !important;
}
.sbs-side-cart__empty {
	padding: 28px 24px !important;
	color: #666 !important;
}

/* v1.2.5 - single product gallery slider polish */
body.sbs-product-layout-page div.product div.images.woocommerce-product-gallery {
	position: relative !important;
}
body.sbs-product-layout-page div.product div.images .flex-control-thumbs,
body.sbs-product-layout-page div.product div.images ol.flex-control-thumbs {
	display: flex !important;
	flex-wrap: nowrap !important;
	gap: 10px !important;
	overflow-x: auto !important;
	scroll-snap-type: x mandatory !important;
	padding: 12px 44px 4px 0 !important;
	margin: 0 !important;
	list-style: none !important;
	-webkit-overflow-scrolling: touch !important;
}
body.sbs-product-layout-page div.product div.images .flex-control-thumbs li {
	float: none !important;
	width: 92px !important;
	min-width: 92px !important;
	scroll-snap-align: start !important;
}
body.sbs-product-layout-page div.product div.images .flex-control-thumbs img {
	width: 92px !important;
	height: 74px !important;
	object-fit: cover !important;
	background: #f4f4f4 !important;
	border: 1px solid transparent !important;
	opacity: 1 !important;
}
body.sbs-product-layout-page div.product div.images .flex-control-thumbs img.flex-active,
body.sbs-product-layout-page div.product div.images .flex-control-thumbs img:hover {
	border-color: var(--sbs-wc-accent, #C19031) !important;
}
.sbs-gallery-arrow {
	position: absolute !important;
	bottom: 24px !important;
	z-index: 4 !important;
	width: 34px !important;
	height: 34px !important;
	border: 1px solid #ddd !important;
	background: rgba(255,255,255,.9) !important;
	color: #101828 !important;
	cursor: pointer !important;
}
.sbs-gallery-arrow--prev { left: 12px !important; }
.sbs-gallery-arrow--next { right: 12px !important; }

@media (max-width: 991px) {
	body.sbs-cart-page .cart_totals {
		grid-template-columns: 1fr !important;
	}
	body.sbs-cart-page .cart_totals table.shop_table,
	body.sbs-cart-page .wc-proceed-to-checkout {
		grid-column: 1 !important;
	}
}
@media (max-width: 767px) {
	body.sbs-cart-page .sbs-cart-section > .sbs-wc-container {
		padding: 28px 16px !important;
	}
	body.sbs-cart-page .sbs-cart-section .sbs-wc-container > .woocommerce::before {
		position: static;
		display: inline-flex;
		margin-bottom: 20px;
	}
	body.sbs-cart-page .woocommerce-cart-form table.shop_table_responsive tr {
		border-bottom: 1px solid #e5e7eb !important;
	}
}

.sbs-side-cart-inner.sbs-is-loading{opacity:.55!important;pointer-events:none!important;}
body.sbs-side-cart-open{overflow:hidden!important;}

/* v1.2.6 - Request Price form modal + button normalization */
body.sbs-product-layout-page .sbs-single-button-wrap .sbs-request-price-button,
body.sbs-product-layout-page .sbs-single-button-wrap button.sbs-request-price-button {
	appearance: none !important;
	-webkit-appearance: none !important;
	text-decoration: none !important;
	cursor: pointer !important;
}

.sbs-request-modal {
	position: fixed !important;
	inset: 0 !important;
	z-index: 999999 !important;
	display: none !important;
}
.sbs-request-modal.is-open {
	display: block !important;
}
.sbs-request-modal__overlay {
	position: absolute !important;
	inset: 0 !important;
	background: rgba(16, 24, 40, .62) !important;
	backdrop-filter: blur(4px) !important;
}
.sbs-request-modal__dialog {
	position: relative !important;
	width: min(720px, calc(100vw - 32px)) !important;
	max-height: calc(100vh - 48px) !important;
	overflow: auto !important;
	margin: 24px auto !important;
	background: var(--sbs-wc-white, #fff) !important;
	border: 1px solid var(--sbs-wc-border, #DBDBDB) !important;
	box-shadow: 0 24px 80px rgba(16, 24, 40, .22) !important;
	padding: 34px !important;
}
.sbs-request-modal__close {
	position: absolute !important;
	top: 12px !important;
	right: 12px !important;
	width: 36px !important;
	height: 36px !important;
	border: 1px solid var(--sbs-wc-border, #DBDBDB) !important;
	background: #fff !important;
	color: var(--sbs-wc-text, #101828) !important;
	font-size: 24px !important;
	line-height: 1 !important;
	cursor: pointer !important;
}
.sbs-request-modal__header {
	margin-bottom: 24px !important;
	padding-right: 38px !important;
}
.sbs-request-modal__header span {
	display: block !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	letter-spacing: .08em !important;
	text-transform: uppercase !important;
	color: var(--sbs-wc-primary, #56B947) !important;
	margin-bottom: 6px !important;
}
.sbs-request-modal__header strong {
	display: block !important;
	font-size: 28px !important;
	line-height: 1.18 !important;
	color: var(--sbs-wc-text, #101828) !important;
}
body.sbs-request-modal-open {
	overflow: hidden !important;
}
.sbs-request-modal .elementor-form .elementor-field-group,
.sbs-request-modal form .elementor-field-group {
	margin-bottom: 14px !important;
}
.sbs-request-modal input,
.sbs-request-modal textarea,
.sbs-request-modal select {
	border-color: var(--sbs-wc-border, #DBDBDB) !important;
}
.sbs-request-modal button[type="submit"],
.sbs-request-modal .elementor-button[type="submit"] {
	background: var(--sbs-wc-primary, #56B947) !important;
	color: #fff !important;
	border-color: var(--sbs-wc-primary, #56B947) !important;
}

@media (max-width: 767px) {
	.sbs-request-modal__dialog {
		padding: 26px 18px !important;
		margin: 16px auto !important;
	}
	.sbs-request-modal__header strong {
		font-size: 22px !important;
	}
}

/* v1.2.7 - dynamic wishlist or fallback Add to Cart button */
body.sbs-product-layout-page div.product form.cart .sbs-single-button-wrap .sbs-wishlist-button--cart {
	appearance: none !important;
	-webkit-appearance: none !important;
	cursor: pointer !important;
}

body.sbs-product-layout-page div.product form.cart .sbs-single-button-wrap .sbs-wishlist-button--dynamic {
	padding: 0 !important;
	min-height: 54px !important;
	height: auto !important;
}

body.sbs-product-layout-page div.product form.cart .sbs-single-button-wrap .sbs-wishlist-button--dynamic > *,
body.sbs-product-layout-page div.product form.cart .sbs-single-button-wrap .sbs-wishlist-button--dynamic a,
body.sbs-product-layout-page div.product form.cart .sbs-single-button-wrap .sbs-wishlist-button--dynamic button,
body.sbs-product-layout-page div.product form.cart .sbs-single-button-wrap .sbs-wishlist-button--dynamic .yith-wcwl-add-button,
body.sbs-product-layout-page div.product form.cart .sbs-single-button-wrap .sbs-wishlist-button--dynamic .yith-wcwl-wishlistaddedbrowse,
body.sbs-product-layout-page div.product form.cart .sbs-single-button-wrap .sbs-wishlist-button--dynamic .yith-wcwl-wishlistexistsbrowse,
body.sbs-product-layout-page div.product form.cart .sbs-single-button-wrap .sbs-wishlist-button--dynamic .tinv-wraper,
body.sbs-product-layout-page div.product form.cart .sbs-single-button-wrap .sbs-wishlist-button--dynamic .tinvwl_add_to_wishlist_button {
	width: 100% !important;
	min-height: 54px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	text-align: center !important;
	color: inherit !important;
	font-family: var(--sbs-wc-font, "Roboto", sans-serif) !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	text-decoration: none !important;
}

body.sbs-product-layout-page div.product form.cart .sbs-single-button-wrap .sbs-wishlist-button--dynamic:hover > *,
body.sbs-product-layout-page div.product form.cart .sbs-single-button-wrap .sbs-wishlist-button--dynamic:hover a,
body.sbs-product-layout-page div.product form.cart .sbs-single-button-wrap .sbs-wishlist-button--dynamic:hover button {
	color: #fff !important;
}


/* v1.2.9 - WooCommerce breadcrumb styling */
body.sbs-wc-page .woocommerce-breadcrumb,
body.sbs-wc-page nav.woocommerce-breadcrumb,
body.sbs-wc-page .sbs-single-breadcrumb .woocommerce-breadcrumb {
	box-sizing: border-box !important;
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	gap: 8px !important;
	font-family: var(--sbs-wc-font, "Roboto", sans-serif) !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	line-height: 1.4 !important;
	color: var(--sbs-wc-muted, #7B7B7B) !important;
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	padding-top: 16px !important;
	padding-bottom: 16px !important;
	background: transparent !important;
	border: 0 !important;
}

body.sbs-wc-page .woocommerce-breadcrumb a,
body.sbs-wc-page nav.woocommerce-breadcrumb a,
body.sbs-wc-page .sbs-single-breadcrumb .woocommerce-breadcrumb a {
	color: var(--sbs-wc-text, #101828) !important;
	font: inherit !important;
	text-decoration: none !important;
	transition: color .18s ease !important;
}

body.sbs-wc-page .woocommerce-breadcrumb a:hover,
body.sbs-wc-page nav.woocommerce-breadcrumb a:hover,
body.sbs-wc-page .sbs-single-breadcrumb .woocommerce-breadcrumb a:hover {
	color: var(--sbs-wc-primary, #56B947) !important;
}

body.sbs-wc-page .woocommerce-breadcrumb .breadcrumb-separator,
body.sbs-wc-page nav.woocommerce-breadcrumb .breadcrumb-separator,
body.sbs-wc-page .woocommerce-breadcrumb span.separator,
body.sbs-wc-page nav.woocommerce-breadcrumb span.separator {
	color: var(--sbs-wc-muted, #A4A4A4) !important;
	font-weight: 400 !important;
}

body.sbs-shop-archive-page > .woocommerce-breadcrumb,
body.sbs-shop-archive-page .woocommerce > .woocommerce-breadcrumb,
body.sbs-wc-page .woocommerce > .woocommerce-breadcrumb {
	max-width: var(--sbs-wc-container, 1200px) !important;
	width: calc(100% - 40px) !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

body.sbs-product-layout-page .sbs-single-breadcrumb {
	min-width: 0 !important;
	flex: 1 1 auto !important;
}

body.sbs-product-layout-page .sbs-single-breadcrumb .woocommerce-breadcrumb {
	width: 100% !important;
	max-width: none !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

body.sbs-product-layout-page .sbs-single-topbar {
	align-items: center !important;
}

@media (max-width: 767px) {
	body.sbs-wc-page .woocommerce-breadcrumb,
	body.sbs-wc-page nav.woocommerce-breadcrumb,
	body.sbs-wc-page .sbs-single-breadcrumb .woocommerce-breadcrumb {
		font-size: 12px !important;
		gap: 6px !important;
		padding-top: 12px !important;
		padding-bottom: 12px !important;
	}
}

/* SBS v1.3.0 - shop parent tabs as dropdowns */
body.sbs-shop-archive-page .sbs-shop-hero .sbs-shop-tabs.sbs-shop-tabs--dropdown,
body.sbs-wc-page .sbs-shop-hero .sbs-shop-tabs.sbs-shop-tabs--dropdown {
	position: relative;
	display: flex !important;
	align-items: center !important;
	gap: 14px !important;
	flex-wrap: wrap !important;
	z-index: 20;
}

body.sbs-shop-archive-page .sbs-shop-tab-dropdown,
body.sbs-wc-page .sbs-shop-tab-dropdown {
	position: relative;
	display: inline-flex;
	align-items: center;
}

body.sbs-shop-archive-page .sbs-shop-tab-dropdown > .sbs-shop-tab,
body.sbs-wc-page .sbs-shop-tab-dropdown > .sbs-shop-tab {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 8px !important;
	min-height: 42px !important;
	padding: 10px 18px !important;
	border-radius: 999px !important;
	border: 1px solid rgba(16, 24, 40, .12) !important;
	background: #fff !important;
	box-shadow: 0 8px 20px rgba(16, 24, 40, .04) !important;
	color: var(--sbs-wc-muted, #7B7B7B) !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	line-height: 1.1 !important;
	text-decoration: none !important;
	transition: all .18s ease !important;
}

body.sbs-shop-archive-page .sbs-shop-tab-dropdown > .sbs-shop-tab::after,
body.sbs-wc-page .sbs-shop-tab-dropdown > .sbs-shop-tab::after {
	display: none !important;
	content: none !important;
}

body.sbs-shop-archive-page .sbs-shop-tab-dropdown:hover > .sbs-shop-tab,
body.sbs-shop-archive-page .sbs-shop-tab-dropdown:focus-within > .sbs-shop-tab,
body.sbs-shop-archive-page .sbs-shop-tab-dropdown.is-active > .sbs-shop-tab,
body.sbs-wc-page .sbs-shop-tab-dropdown:hover > .sbs-shop-tab,
body.sbs-wc-page .sbs-shop-tab-dropdown:focus-within > .sbs-shop-tab,
body.sbs-wc-page .sbs-shop-tab-dropdown.is-active > .sbs-shop-tab {
	background: var(--sbs-wc-primary, #56B947) !important;
	border-color: var(--sbs-wc-primary, #56B947) !important;
	color: #fff !important;
	box-shadow: 0 12px 28px rgba(86, 185, 71, .18) !important;
}

body.sbs-shop-archive-page .sbs-shop-tab__chevron,
body.sbs-wc-page .sbs-shop-tab__chevron {
	font-size: 14px;
	line-height: 1;
	transform: translateY(-1px);
	transition: transform .18s ease;
}

body.sbs-shop-archive-page .sbs-shop-tab-dropdown:hover .sbs-shop-tab__chevron,
body.sbs-shop-archive-page .sbs-shop-tab-dropdown:focus-within .sbs-shop-tab__chevron,
body.sbs-wc-page .sbs-shop-tab-dropdown:hover .sbs-shop-tab__chevron,
body.sbs-wc-page .sbs-shop-tab-dropdown:focus-within .sbs-shop-tab__chevron {
	transform: translateY(-1px) rotate(180deg);
}

body.sbs-shop-archive-page .sbs-shop-tab-menu,
body.sbs-wc-page .sbs-shop-tab-menu {
	position: absolute;
	left: 0;
	top: calc(100% + 10px);
	min-width: 220px;
	padding: 8px;
	border: 1px solid rgba(16, 24, 40, .10);
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 18px 45px rgba(16, 24, 40, .14);
	opacity: 0;
	visibility: hidden;
	transform: translateY(8px);
	pointer-events: none;
	transition: opacity .18s ease, transform .18s ease, visibility .18s ease;
	z-index: 999;
}

body.sbs-shop-archive-page .sbs-shop-tab-dropdown:hover > .sbs-shop-tab-menu,
body.sbs-shop-archive-page .sbs-shop-tab-dropdown:focus-within > .sbs-shop-tab-menu,
body.sbs-wc-page .sbs-shop-tab-dropdown:hover > .sbs-shop-tab-menu,
body.sbs-wc-page .sbs-shop-tab-dropdown:focus-within > .sbs-shop-tab-menu {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
	pointer-events: auto;
}

body.sbs-shop-archive-page .sbs-shop-tab-menu__item,
body.sbs-wc-page .sbs-shop-tab-menu__item {
	display: flex !important;
	align-items: center !important;
	width: 100% !important;
	padding: 11px 12px !important;
	border-radius: 10px !important;
	color: var(--sbs-wc-text, #101828) !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	line-height: 1.25 !important;
	text-decoration: none !important;
	white-space: nowrap;
	transition: all .16s ease;
}

body.sbs-shop-archive-page .sbs-shop-tab-menu__item:hover,
body.sbs-shop-archive-page .sbs-shop-tab-menu__item:focus,
body.sbs-shop-archive-page .sbs-shop-tab-menu__item.is-active,
body.sbs-wc-page .sbs-shop-tab-menu__item:hover,
body.sbs-wc-page .sbs-shop-tab-menu__item:focus,
body.sbs-wc-page .sbs-shop-tab-menu__item.is-active {
	background: rgba(86, 185, 71, .10) !important;
	color: var(--sbs-wc-primary, #56B947) !important;
}

@media (max-width: 767px) {
	body.sbs-shop-archive-page .sbs-shop-hero .sbs-shop-tabs.sbs-shop-tabs--dropdown,
	body.sbs-wc-page .sbs-shop-hero .sbs-shop-tabs.sbs-shop-tabs--dropdown {
		gap: 10px !important;
	}

	body.sbs-shop-archive-page .sbs-shop-tab-dropdown,
	body.sbs-wc-page .sbs-shop-tab-dropdown {
		width: 100%;
		display: flex;
	}

	body.sbs-shop-archive-page .sbs-shop-tab-dropdown > .sbs-shop-tab,
	body.sbs-wc-page .sbs-shop-tab-dropdown > .sbs-shop-tab {
		width: 100%;
		justify-content: space-between !important;
	}

	body.sbs-shop-archive-page .sbs-shop-tab-menu,
	body.sbs-wc-page .sbs-shop-tab-menu {
		left: 0;
		right: 0;
		width: 100%;
		min-width: 0;
	}
}

/* SBS v1.3.1 - unified dropdown style like design reference */
body.sbs-wc-page .sbs-shop-tools .woocommerce-ordering {
	position: relative !important;
}

body.sbs-shop-archive-page .sbs-shop-tabs .sbs-shop-tab-menu,
body.sbs-wc-page .sbs-shop-tabs .sbs-shop-tab-menu,
body.sbs-wc-page .sbs-select-dropdown__menu,
body.sbs-wc-page .select2-container--open .select2-dropdown,
body.sbs-wc-page .woocommerce .select2-container--open .select2-dropdown {
	background: #fff !important;
	border: 1px solid rgba(16, 24, 40, .18) !important;
	border-radius: 0 !important;
	box-shadow: 0 14px 34px rgba(16, 24, 40, .18) !important;
	padding: 0 !important;
	overflow: hidden !important;
	min-width: 178px !important;
	z-index: 99999 !important;
}

body.sbs-shop-archive-page .sbs-shop-tabs .sbs-shop-tab-menu__item,
body.sbs-wc-page .sbs-shop-tabs .sbs-shop-tab-menu__item,
body.sbs-wc-page .sbs-select-dropdown__option,
body.sbs-wc-page .select2-results__option {
	display: flex !important;
	align-items: center !important;
	width: 100% !important;
	min-height: 46px !important;
	padding: 0 18px !important;
	border-radius: 0 !important;
	border-bottom: 1px solid rgba(16, 24, 40, .10) !important;
	background: #fff !important;
	color: var(--sbs-wc-muted, #616161) !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	line-height: 1.25 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	text-decoration: none !important;
	white-space: nowrap !important;
	transition: background .15s ease, color .15s ease !important;
	cursor: pointer !important;
}

body.sbs-shop-archive-page .sbs-shop-tabs .sbs-shop-tab-menu__item:last-child,
body.sbs-wc-page .sbs-shop-tabs .sbs-shop-tab-menu__item:last-child,
body.sbs-wc-page .sbs-select-dropdown__option:last-child,
body.sbs-wc-page .select2-results__option:last-child {
	border-bottom: 0 !important;
}

body.sbs-shop-archive-page .sbs-shop-tabs .sbs-shop-tab-menu__item:hover,
body.sbs-shop-archive-page .sbs-shop-tabs .sbs-shop-tab-menu__item:focus,
body.sbs-shop-archive-page .sbs-shop-tabs .sbs-shop-tab-menu__item.is-active,
body.sbs-wc-page .sbs-shop-tabs .sbs-shop-tab-menu__item:hover,
body.sbs-wc-page .sbs-shop-tabs .sbs-shop-tab-menu__item:focus,
body.sbs-wc-page .sbs-shop-tabs .sbs-shop-tab-menu__item.is-active,
body.sbs-wc-page .sbs-select-dropdown__option:hover,
body.sbs-wc-page .sbs-select-dropdown__option:focus,
body.sbs-wc-page .sbs-select-dropdown__option.is-active,
body.sbs-wc-page .select2-results__option--highlighted,
body.sbs-wc-page .select2-results__option[aria-selected="true"] {
	background: var(--sbs-wc-light, #F7F7F7) !important;
	color: var(--sbs-wc-text, #101828) !important;
}

body.sbs-wc-page .sbs-select-dropdown {
	position: relative !important;
	display: inline-block !important;
	min-width: 178px !important;
}

body.sbs-wc-page .sbs-select-dropdown select {
	position: absolute !important;
	inset: 0 !important;
	width: 100% !important;
	height: 100% !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

body.sbs-wc-page .sbs-select-dropdown__toggle {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 12px !important;
	width: 100% !important;
	height: 44px !important;
	padding: 0 16px !important;
	border: 1px solid rgba(16, 24, 40, .10) !important;
	border-radius: 0 !important;
	background: #fff !important;
	color: var(--sbs-wc-muted, #616161) !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	line-height: 1 !important;
	box-shadow: none !important;
	cursor: pointer !important;
}

body.sbs-wc-page .sbs-select-dropdown__toggle::after {
	content: "⌄" !important;
	font-size: 14px !important;
	line-height: 1 !important;
	color: var(--sbs-wc-muted, #616161) !important;
	transition: transform .15s ease !important;
}

body.sbs-wc-page .sbs-select-dropdown.is-open .sbs-select-dropdown__toggle::after {
	transform: rotate(180deg) !important;
}

body.sbs-wc-page .sbs-select-dropdown__menu {
	position: absolute !important;
	left: 0 !important;
	top: calc(100% + 8px) !important;
	width: 100% !important;
	opacity: 0 !important;
	visibility: hidden !important;
	transform: translateY(6px) !important;
	pointer-events: none !important;
	transition: opacity .15s ease, transform .15s ease, visibility .15s ease !important;
}

body.sbs-wc-page .sbs-select-dropdown.is-open .sbs-select-dropdown__menu {
	opacity: 1 !important;
	visibility: visible !important;
	transform: translateY(0) !important;
	pointer-events: auto !important;
}

body.sbs-wc-page .sbs-select-dropdown__option {
	border: 0 !important;
	border-bottom: 1px solid rgba(16, 24, 40, .10) !important;
	text-align: left !important;
}

@media (max-width: 767px) {
	body.sbs-wc-page .sbs-select-dropdown {
		width: 100% !important;
	}
}

/* v1.3.2 - Related products 4-column carousel */
body.sbs-product-layout-page .related.products {
	position: relative !important;
}

body.sbs-product-layout-page .related.products ul.products {
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 24px !important;
}

body.sbs-product-layout-page .related.products.sbs-related-carousel-enabled ul.products {
	display: flex !important;
	grid-template-columns: none !important;
	gap: 24px !important;
	overflow-x: auto !important;
	overflow-y: visible !important;
	scroll-snap-type: x mandatory !important;
	scroll-behavior: smooth !important;
	padding-bottom: 8px !important;
	-ms-overflow-style: none !important;
	scrollbar-width: none !important;
}

body.sbs-product-layout-page .related.products.sbs-related-carousel-enabled ul.products::-webkit-scrollbar {
	display: none !important;
}

body.sbs-product-layout-page .related.products.sbs-related-carousel-enabled ul.products li.product {
	flex: 0 0 calc((100% - 72px) / 4) !important;
	max-width: calc((100% - 72px) / 4) !important;
	scroll-snap-align: start !important;
}

body.sbs-product-layout-page .related.products .sbs-related-carousel__controls {
	position: absolute !important;
	top: 4px !important;
	right: 0 !important;
	display: flex !important;
	align-items: center !important;
	gap: 10px !important;
	z-index: 3 !important;
}

body.sbs-product-layout-page .related.products .sbs-related-carousel__arrow {
	width: 42px !important;
	height: 42px !important;
	border: 1px solid var(--sbs-line, #dbdbdb) !important;
	background: #fff !important;
	color: var(--sbs-text, #101828) !important;
	border-radius: 0 !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	font-size: 18px !important;
	line-height: 1 !important;
	padding: 0 !important;
	box-shadow: none !important;
	cursor: pointer !important;
	transition: color .2s ease, border-color .2s ease, background-color .2s ease !important;
}

body.sbs-product-layout-page .related.products .sbs-related-carousel__arrow:hover,
body.sbs-product-layout-page .related.products .sbs-related-carousel__arrow:focus {
	border-color: var(--sbs-primary, #56B947) !important;
	background: var(--sbs-primary, #56B947) !important;
	color: #fff !important;
}

@media (max-width: 1024px) {
	body.sbs-product-layout-page .related.products ul.products,
	body.sbs-product-layout-page .related.products.sbs-related-carousel-enabled ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	body.sbs-product-layout-page .related.products.sbs-related-carousel-enabled ul.products li.product {
		flex-basis: calc((100% - 24px) / 2) !important;
		max-width: calc((100% - 24px) / 2) !important;
	}
}

@media (max-width: 767px) {
	body.sbs-product-layout-page .related.products .sbs-related-carousel__controls {
		position: static !important;
		justify-content: flex-end !important;
		margin: -10px 0 18px !important;
	}

	body.sbs-product-layout-page .related.products ul.products,
	body.sbs-product-layout-page .related.products.sbs-related-carousel-enabled ul.products {
		grid-template-columns: 1fr !important;
	}

	body.sbs-product-layout-page .related.products.sbs-related-carousel-enabled ul.products li.product {
		flex-basis: 86% !important;
		max-width: 86% !important;
	}
}

/* v1.3.3 - keep parent shop tabs as clean inline text like design reference */
body.sbs-shop-archive-page .sbs-shop-hero .sbs-shop-tabs.sbs-shop-tabs--dropdown,
body.sbs-wc-page .sbs-shop-hero .sbs-shop-tabs.sbs-shop-tabs--dropdown {
	display: flex !important;
	align-items: center !important;
	justify-content: flex-start !important;
	flex-wrap: wrap !important;
	gap: 28px !important;
	padding: 0 !important;
	margin: 26px 0 0 !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

body.sbs-shop-archive-page .sbs-shop-tabs .sbs-shop-tab-dropdown,
body.sbs-wc-page .sbs-shop-tabs .sbs-shop-tab-dropdown {
	position: relative !important;
	display: inline-flex !important;
	align-items: center !important;
	padding: 0 !important;
	margin: 0 !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.sbs-shop-archive-page .sbs-shop-hero .sbs-shop-tabs .sbs-shop-tab,
body.sbs-wc-page .sbs-shop-hero .sbs-shop-tabs .sbs-shop-tab,
body.sbs-shop-archive-page .sbs-shop-tabs .sbs-shop-tab-dropdown > .sbs-shop-tab,
body.sbs-wc-page .sbs-shop-tabs .sbs-shop-tab-dropdown > .sbs-shop-tab {
	display: inline-flex !important;
	align-items: center !important;
	gap: 9px !important;
	min-height: auto !important;
	padding: 0 0 4px !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	color: var(--sbs-wc-muted) !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 1.25 !important;
	text-decoration: none !important;
	white-space: nowrap !important;
}

body.sbs-shop-archive-page .sbs-shop-hero .sbs-shop-tabs .sbs-shop-tab:hover,
body.sbs-shop-archive-page .sbs-shop-hero .sbs-shop-tabs .sbs-shop-tab:focus,
body.sbs-shop-archive-page .sbs-shop-hero .sbs-shop-tabs .sbs-shop-tab.is-active,
body.sbs-shop-archive-page .sbs-shop-hero .sbs-shop-tabs .sbs-shop-tab[aria-current="page"],
body.sbs-wc-page .sbs-shop-hero .sbs-shop-tabs .sbs-shop-tab:hover,
body.sbs-wc-page .sbs-shop-hero .sbs-shop-tabs .sbs-shop-tab:focus,
body.sbs-wc-page .sbs-shop-hero .sbs-shop-tabs .sbs-shop-tab.is-active,
body.sbs-wc-page .sbs-shop-hero .sbs-shop-tabs .sbs-shop-tab[aria-current="page"] {
	color: var(--sbs-wc-text) !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: inset 0 -1px 0 currentColor !important;
}

body.sbs-shop-archive-page .sbs-shop-tabs .sbs-shop-tab__chevron,
body.sbs-wc-page .sbs-shop-tabs .sbs-shop-tab__chevron {
	font-size: 18px !important;
	line-height: 1 !important;
	color: currentColor !important;
	transform: translateY(-1px) !important;
}

body.sbs-shop-archive-page .sbs-shop-tabs .sbs-shop-tab-menu,
body.sbs-wc-page .sbs-shop-tabs .sbs-shop-tab-menu {
	top: calc(100% + 10px) !important;
	left: 0 !important;
}

@media (max-width: 767px) {
	body.sbs-shop-archive-page .sbs-shop-hero .sbs-shop-tabs.sbs-shop-tabs--dropdown,
	body.sbs-wc-page .sbs-shop-hero .sbs-shop-tabs.sbs-shop-tabs--dropdown {
		gap: 16px 20px !important;
	}
}

/* v1.3.3 - Swiper product gallery */
body.sbs-product-layout-page div.product div.images.woocommerce-product-gallery.sbs-gallery-swiper-ready {
	position: relative !important;
	display: block !important;
	float: none !important;
	width: 100% !important;
}

body.sbs-product-layout-page .sbs-product-main-swiper {
	position: relative !important;
	width: 100% !important;
	background: #f7f7f7 !important;
	overflow: hidden !important;
}

body.sbs-product-layout-page .sbs-product-main-swiper .swiper-wrapper,
body.sbs-product-layout-page .sbs-product-main-swiper .woocommerce-product-gallery__wrapper {
	align-items: stretch !important;
}

body.sbs-product-layout-page .sbs-product-main-swiper .swiper-slide,
body.sbs-product-layout-page .sbs-product-main-swiper .woocommerce-product-gallery__image {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	height: auto !important;
	margin: 0 !important;
	background: #f7f7f7 !important;
}

body.sbs-product-layout-page .sbs-product-main-swiper .woocommerce-product-gallery__image a,
body.sbs-product-layout-page .sbs-product-main-swiper .woocommerce-product-gallery__image img {
	display: block !important;
	width: 100% !important;
}

body.sbs-product-layout-page .sbs-product-main-swiper .woocommerce-product-gallery__image img {
	height: 560px !important;
	object-fit: cover !important;
}

body.sbs-product-layout-page .sbs-product-main-swiper .swiper-button-prev,
body.sbs-product-layout-page .sbs-product-main-swiper .swiper-button-next {
	width: 42px !important;
	height: 42px !important;
	margin-top: -21px !important;
	background: rgba(255,255,255,.92) !important;
	border: 1px solid var(--sbs-wc-border) !important;
	color: var(--sbs-wc-text) !important;
	box-shadow: 0 8px 22px rgba(16, 24, 40, .08) !important;
}

body.sbs-product-layout-page .sbs-product-main-swiper .swiper-button-prev:after,
body.sbs-product-layout-page .sbs-product-main-swiper .swiper-button-next:after {
	font-size: 15px !important;
	font-weight: 700 !important;
}

body.sbs-product-layout-page .sbs-product-main-swiper .swiper-pagination {
	left: 50% !important;
	bottom: 18px !important;
	width: auto !important;
	padding: 7px 12px !important;
	transform: translateX(-50%) !important;
	background: rgba(255,255,255,.86) !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	color: var(--sbs-wc-text) !important;
}

body.sbs-product-layout-page .sbs-product-thumb-swiper,
body.sbs-product-layout-page .sbs-product-thumb-swiper .swiper,
body.sbs-product-layout-page .sbs-product-thumb-swiper .swiper-wrapper {
	overflow: hidden !important;
	scrollbar-width: none !important;
}

body.sbs-product-layout-page .sbs-product-thumb-swiper::-webkit-scrollbar,
body.sbs-product-layout-page .sbs-product-thumb-swiper .swiper::-webkit-scrollbar,
body.sbs-product-layout-page .sbs-product-thumb-swiper .swiper-wrapper::-webkit-scrollbar {
	display: none !important;
}

body.sbs-product-layout-page div.product div.images .flex-control-thumbs,
body.sbs-product-layout-page div.product div.images ol.flex-control-thumbs {
	overflow: hidden !important;
	scrollbar-width: none !important;
	padding-bottom: 0 !important;
}

body.sbs-product-layout-page div.product div.images .flex-control-thumbs::-webkit-scrollbar,
body.sbs-product-layout-page div.product div.images ol.flex-control-thumbs::-webkit-scrollbar {
	display: none !important;
}
body.sbs-product-layout-page .sbs-gallery-arrow {
	display: none !important;
}

@media (max-width: 1024px) {
	body.sbs-product-layout-page .sbs-product-main-swiper .woocommerce-product-gallery__image img {
		height: 460px !important;
	}
}

@media (max-width: 767px) {
	body.sbs-product-layout-page .sbs-product-main-swiper .woocommerce-product-gallery__image img {
		height: 340px !important;
	}
	body.sbs-product-layout-page .sbs-product-thumb-swiper .flex-control-thumbs li,
	body.sbs-product-layout-page .sbs-product-thumb-swiper .swiper-slide {
		width: 78px !important;
		min-width: 78px !important;
		height: 72px !important;
	}
}

/* v1.3.4 - Customizer-controlled checkout field and column layout */
body.sbs-wc-page.woocommerce-checkout .sbs-checkout-section form.checkout,
body.sbs-checkout-page .sbs-checkout-section form.checkout,
body.woocommerce-checkout .sbs-checkout-section form.checkout,
body.sbs-wc-page.woocommerce-checkout form.checkout,
body.sbs-checkout-page .woocommerce-checkout,
body.sbs-wc-page.woocommerce-checkout .woocommerce-checkout,
body.woocommerce-checkout .woocommerce-checkout {
	display: grid !important;
	grid-template-columns: minmax(0, var(--sbs-wc-checkout-left-width, 58%)) minmax(280px, var(--sbs-wc-checkout-right-width, 42%)) !important;
	gap: var(--sbs-wc-checkout-column-gap, 64px) !important;
	align-items: start !important;
}

body.sbs-wc-page.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
body.sbs-wc-page.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper {
	display: grid !important;
	grid-template-columns: repeat(var(--sbs-wc-checkout-field-columns, 2), minmax(0, 1fr)) !important;
	gap: 18px 16px !important;
}

body.sbs-wc-page.woocommerce-checkout #billing_address_1_field,
body.sbs-wc-page.woocommerce-checkout #billing_address_2_field,
body.sbs-wc-page.woocommerce-checkout #billing_country_field,
body.sbs-wc-page.woocommerce-checkout #shipping_address_1_field,
body.sbs-wc-page.woocommerce-checkout #shipping_address_2_field,
body.sbs-wc-page.woocommerce-checkout #shipping_country_field,
body.woocommerce-checkout #billing_address_1_field,
body.woocommerce-checkout #billing_address_2_field,
body.woocommerce-checkout #billing_country_field,
body.woocommerce-checkout #shipping_address_1_field,
body.woocommerce-checkout #shipping_address_2_field,
body.woocommerce-checkout #shipping_country_field {
	grid-column: 1 / -1 !important;
}

@media (max-width: 991px) {
	body.sbs-wc-page.woocommerce-checkout .sbs-checkout-section form.checkout,
	body.sbs-checkout-page .sbs-checkout-section form.checkout,
	body.woocommerce-checkout .sbs-checkout-section form.checkout,
	body.sbs-wc-page.woocommerce-checkout form.checkout,
	body.sbs-checkout-page .woocommerce-checkout,
	body.sbs-wc-page.woocommerce-checkout .woocommerce-checkout,
	body.woocommerce-checkout .woocommerce-checkout {
		grid-template-columns: 1fr !important;
		gap: 32px !important;
	}
}

@media (max-width: 767px) {
	body.sbs-wc-page.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
	body.sbs-wc-page.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
	body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
	body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper {
		grid-template-columns: 1fr !important;
	}
}


/* v1.3.5 - Quantity buttons for single product, cart, checkout and side cart */
body.sbs-product-layout-page div.product form.cart .sbs-qty-control,
body.sbs-product-layout-page div.product form.cart div.quantity {
	display: inline-flex !important;
	visibility: visible !important;
	opacity: 1 !important;
}

body.sbs-product-layout-page div.product form.cart .sbs-qty-control {
	margin: 0 0 18px !important;
}

body.sbs-product-layout-page div.product form.cart .sbs-single-button-wrap {
	display: flex !important;
	flex-wrap: wrap !important;	
	gap: 12px 14px !important;
	width: 100% !important;
	margin-top: 16px !important;
	padding: 0 !important;
	clear: both !important;
}

body.sbs-product-layout-page div.product form.cart .sbs-single-button-wrap .single_add_to_cart_button,
body.sbs-product-layout-page div.product form.cart .sbs-single-button-wrap .sbs-request-price-button {
	flex: 0 0 calc(50% - 7px) !important;
	max-width: calc(50% - 7px) !important;
	width: calc(50% - 7px) !important;
}

body.sbs-product-layout-page div.product form.cart .sbs-single-button-wrap .sbs-wishlist-button,
body.sbs-product-layout-page div.product form.cart .sbs-single-button-wrap .sbs-add-to-cart-fallback {
	flex: 0 0 100% !important;
	max-width: 100% !important;
	width: 100% !important;
}

body.sbs-product-layout-page div.product form.cart .sbs-single-button-wrap .single_add_to_cart_button,
body.sbs-product-layout-page div.product form.cart .sbs-single-button-wrap .sbs-request-price-button,
body.sbs-product-layout-page div.product form.cart .sbs-single-button-wrap .sbs-wishlist-button,
body.sbs-product-layout-page div.product form.cart .sbs-single-button-wrap .sbs-add-to-cart-fallback {
	height: 48px !important;
	min-height: 48px !important;
	margin: 0 !important;
	border-radius: 0 !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	text-decoration: none !important;
	float: none !important;
	box-shadow: none !important;
}

.sbs-qty-control,
body.sbs-cart-page .woocommerce-cart-form .sbs-qty-control,
.sbs-checkout-qty-control {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: max-content !important;
	max-width: 100% !important;
	border: 1px solid var(--sbs-wc-border, #dbdbdb) !important;
	background: #fff !important;
	gap: 0 !important;
}

.sbs-qty-control .qty,
body.sbs-cart-page .woocommerce-cart-form input.qty,
.sbs-checkout-qty-input {
	width: 48px !important;
	height: 42px !important;
	min-height: 42px !important;
	padding: 0 !important;
	margin: 0 !important;
	border: 0 !important;
	border-left: 1px solid var(--sbs-wc-border, #dbdbdb) !important;
	border-right: 1px solid var(--sbs-wc-border, #dbdbdb) !important;
	background: #fff !important;
	text-align: center !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	color: var(--sbs-wc-text, #101828) !important;
	box-shadow: none !important;
	-moz-appearance: textfield;
}

.sbs-qty-control .qty::-webkit-outer-spin-button,
.sbs-qty-control .qty::-webkit-inner-spin-button,
.sbs-checkout-qty-input::-webkit-outer-spin-button,
.sbs-checkout-qty-input::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

.sbs-qty-btn,
body.sbs-cart-page .woocommerce-cart-form .sbs-qty-btn,
.sbs-checkout-qty-btn {
	width: 42px !important;
	height: 42px !important;
	min-height: 42px !important;
	padding: 0 !important;
	margin: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: #fff !important;
	color: var(--sbs-wc-text, #101828) !important;
	font-size: 18px !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	cursor: pointer !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	box-shadow: none !important;
}

.sbs-qty-btn:hover,
.sbs-checkout-qty-btn:hover {
	background: var(--sbs-wc-primary, #56B947) !important;
	color: #fff !important;
}

body.woocommerce-checkout .sbs-checkout-qty-control {
	margin-left: 8px !important;
	vertical-align: middle !important;
	transform: scale(.86);
	transform-origin: right center;
}

body.woocommerce-checkout .sbs-checkout-qty-control.is-loading {
	opacity: .55 !important;
	pointer-events: none !important;
}

body.sbs-cart-page button[name="update_cart"] {
	display: none !important;
}

@media (max-width: 767px) {
	body.sbs-product-layout-page div.product form.cart .sbs-single-button-wrap {
		flex-direction: column !important;
	}

	body.sbs-product-layout-page div.product form.cart .sbs-single-button-wrap .single_add_to_cart_button,
	body.sbs-product-layout-page div.product form.cart .sbs-single-button-wrap .sbs-request-price-button,
	body.sbs-product-layout-page div.product form.cart .sbs-single-button-wrap .sbs-wishlist-button,
	body.sbs-product-layout-page div.product form.cart .sbs-single-button-wrap .sbs-add-to-cart-fallback {
		flex: 1 1 auto !important;
		max-width: 100% !important;
		width: 100% !important;
	}
}

/* v1.3.6 - imported user-added CSS that was missing from the theme file */
.sbs-product-variable div.product form.cart {
	border: 1px solid #C4C4C4 !important;
	padding: 16px !important;
}

body.sbs-product-layout-page div.product form.cart .sbs-single-button-wrap .single_add_to_cart_button,
body.sbs-product-layout-page div.product form.cart .sbs-single-button-wrap .sbs-request-price-button {
	flex: 0 0 calc(47% - 6px) !important;
	max-width: calc(47% - 6px) !important;
	width: calc(47% - 6px) !important;
	height: 56px !important;
    min-height: 56px !important;
    max-height: 56px !important;
    padding: 0px 15px !important;
}

/* v1.3.7 - product gallery matches reference slider layout */
body.sbs-product-layout-page div.product div.images.woocommerce-product-gallery.sbs-gallery-swiper-ready {
	position: relative !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
}

body.sbs-product-layout-page div.product div.images.woocommerce-product-gallery.sbs-gallery-swiper-ready .sbs-product-main-swiper {
	position: relative !important;
	width: 100% !important;
	aspect-ratio: 1 / 1.16 !important;
	height: auto !important;
	background: #f5f5f5 !important;
	overflow: hidden !important;
}

body.sbs-product-layout-page div.product div.images.woocommerce-product-gallery.sbs-gallery-swiper-ready .sbs-product-main-swiper .swiper-wrapper,
body.sbs-product-layout-page div.product div.images.woocommerce-product-gallery.sbs-gallery-swiper-ready .sbs-product-main-swiper .swiper-slide,
body.sbs-product-layout-page div.product div.images.woocommerce-product-gallery.sbs-gallery-swiper-ready .sbs-product-main-swiper .woocommerce-product-gallery__image,
body.sbs-product-layout-page div.product div.images.woocommerce-product-gallery.sbs-gallery-swiper-ready .sbs-product-main-swiper .woocommerce-product-gallery__image a {
	height: 100% !important;
	width: 100% !important;
}

body.sbs-product-layout-page div.product div.images.woocommerce-product-gallery.sbs-gallery-swiper-ready .sbs-product-main-swiper .woocommerce-product-gallery__image img {
	width: 100% !important;
	height: 100% !important;
	max-height: none !important;
	aspect-ratio: auto !important;
	object-fit: cover !important;
	object-position: center center !important;
	margin: 0 !important;
	display: block !important;
}

body.sbs-product-layout-page div.product div.images.woocommerce-product-gallery.sbs-gallery-swiper-ready .sbs-product-main-swiper .swiper-button-prev,
body.sbs-product-layout-page div.product div.images.woocommerce-product-gallery.sbs-gallery-swiper-ready .sbs-product-main-swiper .swiper-button-next {
	position: absolute !important;
	top: 50% !important;
	width: 32px !important;
	height: 32px !important;
	min-width: 32px !important;
	min-height: 32px !important;
	margin: -16px 0 0 !important;
	padding: 0 !important;
	border: 1px solid rgba(16, 24, 40, .08) !important;
	border-radius: 0 !important;
	background: rgba(255, 255, 255, .92) !important;
	color: var(--sbs-wc-text, #101828) !important;
	box-shadow: none !important;
	z-index: 5 !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	transition: background .18s ease, color .18s ease, border-color .18s ease !important;
}

body.sbs-product-layout-page div.product div.images.woocommerce-product-gallery.sbs-gallery-swiper-ready .sbs-product-main-swiper .swiper-button-prev {
	left: 16px !important;
	right: auto !important;
}

body.sbs-product-layout-page div.product div.images.woocommerce-product-gallery.sbs-gallery-swiper-ready .sbs-product-main-swiper .swiper-button-next {
	right: 16px !important;
	left: auto !important;
}

body.sbs-product-layout-page div.product div.images.woocommerce-product-gallery.sbs-gallery-swiper-ready .sbs-product-main-swiper .swiper-button-prev::after,
body.sbs-product-layout-page div.product div.images.woocommerce-product-gallery.sbs-gallery-swiper-ready .sbs-product-main-swiper .swiper-button-next::after {
	font-size: 15px !important;
	font-weight: 400 !important;
	line-height: 1 !important;
}

body.sbs-product-layout-page div.product div.images.woocommerce-product-gallery.sbs-gallery-swiper-ready .sbs-product-main-swiper .swiper-button-prev:hover,
body.sbs-product-layout-page div.product div.images.woocommerce-product-gallery.sbs-gallery-swiper-ready .sbs-product-main-swiper .swiper-button-next:hover {
	background: var(--sbs-wc-primary, #56B947) !important;
	border-color: var(--sbs-wc-primary, #56B947) !important;
	color: #fff !important;
}

body.sbs-product-layout-page div.product div.images.woocommerce-product-gallery.sbs-gallery-swiper-ready .sbs-product-main-swiper .swiper-pagination {
	position: absolute !important;
	left: 50% !important;
	right: auto !important;
	bottom: 16px !important;
	width: auto !important;
	min-width: 44px !important;
	height: 32px !important;
	padding: 0 10px !important;
	transform: translateX(-50%) !important;
	background: rgba(255, 255, 255, .86) !important;
	border: 0 !important;
	border-radius: 0 !important;
	color: var(--sbs-wc-text, #101828) !important;
	font-size: 12px !important;
	font-weight: 500 !important;
	line-height: 32px !important;
	z-index: 5 !important;
}

body.sbs-product-layout-page div.product div.images.woocommerce-product-gallery.sbs-gallery-swiper-ready .sbs-product-thumb-swiper {
	width: 100% !important;
	margin: 10px 0 0 !important;
	overflow: hidden !important;
	background: transparent !important;
}

body.sbs-product-layout-page div.product div.images.woocommerce-product-gallery.sbs-gallery-swiper-ready .sbs-product-thumb-swiper .flex-control-thumbs,
body.sbs-product-layout-page div.product div.images.woocommerce-product-gallery.sbs-gallery-swiper-ready .sbs-product-thumb-swiper .swiper-wrapper {
	display: flex !important;
	align-items: stretch !important;
	gap: 8px !important;
	padding: 0 !important;
	margin: 0 !important;
	list-style: none !important;
}

body.sbs-product-layout-page div.product div.images.woocommerce-product-gallery.sbs-gallery-swiper-ready .sbs-product-thumb-swiper .flex-control-thumbs li,
body.sbs-product-layout-page div.product div.images.woocommerce-product-gallery.sbs-gallery-swiper-ready .sbs-product-thumb-swiper .swiper-slide {
	width: calc((100% - 32px) / 5) !important;
	min-width: calc((100% - 32px) / 5) !important;
	height: auto !important;
	aspect-ratio: 1 / .78 !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 2px solid transparent !important;
	background: #f2f2f2 !important;
	box-sizing: border-box !important;
	overflow: hidden !important;
	cursor: pointer !important;
	opacity: 1 !important;
}

body.sbs-product-layout-page div.product div.images.woocommerce-product-gallery.sbs-gallery-swiper-ready .sbs-product-thumb-swiper img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	object-position: center !important;
	margin: 0 !important;
	display: block !important;
	opacity: 1 !important;
}

body.sbs-product-layout-page div.product div.images.woocommerce-product-gallery.sbs-gallery-swiper-ready .sbs-product-thumb-swiper .swiper-slide-thumb-active,
body.sbs-product-layout-page div.product div.images.woocommerce-product-gallery.sbs-gallery-swiper-ready .sbs-product-thumb-swiper li.swiper-slide-thumb-active,
body.sbs-product-layout-page div.product div.images.woocommerce-product-gallery.sbs-gallery-swiper-ready .sbs-product-thumb-swiper img.flex-active,
body.sbs-product-layout-page div.product div.images.woocommerce-product-gallery.sbs-gallery-swiper-ready .sbs-product-thumb-swiper li:hover {
	border-color: var(--sbs-wc-primary, #56B947) !important;
}

body.sbs-product-layout-page div.product div.images.woocommerce-product-gallery.sbs-gallery-swiper-ready .sbs-product-thumb-swiper .swiper-slide-thumb-active img,
body.sbs-product-layout-page div.product div.images.woocommerce-product-gallery.sbs-gallery-swiper-ready .sbs-product-thumb-swiper img.flex-active {
	opacity: 1 !important;
}

@media (max-width: 767px) {
	body.sbs-product-layout-page div.product div.images.woocommerce-product-gallery.sbs-gallery-swiper-ready .sbs-product-main-swiper {
		aspect-ratio: 1 / 1.16 !important;
	}

	body.sbs-product-layout-page div.product div.images.woocommerce-product-gallery.sbs-gallery-swiper-ready .sbs-product-thumb-swiper .flex-control-thumbs li,
	body.sbs-product-layout-page div.product div.images.woocommerce-product-gallery.sbs-gallery-swiper-ready .sbs-product-thumb-swiper .swiper-slide {
		width: calc((100% - 24px) / 4) !important;
		min-width: calc((100% - 24px) / 4) !important;
	}
}
