/*
Theme: Global Aesthetics Portal / WooCommerce Extension
File: woocommerce-style.css
Purpose: Add-on styling for WooCommerce pages only. It follows the main site visual language
without replacing the existing theme styles.
*/

/*--------------------------------------------------------------
# GA WooCommerce variables - fallback only
--------------------------------------------------------------*/
:root {
	--ga-purple: #9333EA;
	--ga-purple-dark: #7C3AED;
	--ga-purple-deep: #6D28D9;
	--ga-black: #0a0a0a;
	--ga-charcoal: #1a1a1a;
	--ga-text: #404040;
	--ga-soft: #6a6a6a;
	--ga-medium: #808080;
	--ga-light: #E5E5E5;
	--ga-border: #E5E5E5;
	--ga-border-soft: #F0F0F0;
	--ga-off: #F5F5F5;
	--ga-cream: #FAFAFA;
	--ga-white: #fff;
	--ga-danger: #dc2626;
	--ga-success: #16a34a;
	--ga-warning: #d97706;
	--ga-radius-sm: 10px;
	--ga-radius: 16px;
	--ga-radius-lg: 24px;
	--ga-radius-xl: 32px;
	--ga-shadow-soft: 0 10px 28px rgba(0, 0, 0, .04);
	--ga-shadow: 0 20px 60px rgba(147, 51, 234, .15);
	--ga-shadow-lg: 0 30px 80px rgba(147, 51, 234, .24);
	--ga-gradient: linear-gradient(135deg, var(--ga-purple), var(--ga-purple-dark));
	--ga-gradient-soft: linear-gradient(135deg, rgba(147, 51, 234, .06), rgba(168, 85, 247, .08));
	--ga-font-sans: var(--font-sans, 'Manrope', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif);
	--ga-font-serif: var(--font-serif, 'Playfair Display', Georgia, serif);
}

/*--------------------------------------------------------------
# WooCommerce global layout
--------------------------------------------------------------*/
.woocommerce,
.woocommerce-page {
	font-family: var(--ga-font-sans);
	color: var(--ga-text);
}

.woocommerce main.site-main,
.woocommerce-page main.site-main,
.woocommerce #primary,
.woocommerce-page #primary {
	width: 100%;
	border-bottom: 1px solid rgb(239, 239, 239);
	background: rgb(242, 242, 247);
}

.woocommerce .woocommerce-breadcrumb,
.woocommerce-page .woocommerce-breadcrumb {
	gap: 7px;
	display: flex;
	align-items: center;
	margin: 0;
	font-weight: 700;
	font-size: calc(var(--text-sm) - 1px);
	line-height: 1.5;
	color: var(--ga-black);
}
@media (max-width: 1024px) {
	.woocommerce .woocommerce-breadcrumb,
	.woocommerce-page .woocommerce-breadcrumb {
		gap: 5px;
		font-size: var(--text-xs);
	}
}
@media (max-width: 767px) {
	.woocommerce .woocommerce-breadcrumb,
	.woocommerce-page .woocommerce-breadcrumb {
		gap: 3px;
		flex-wrap: wrap;
		font-size: calc(var(--text-xs) - 1px);
	}
}


.woocommerce .woocommerce-breadcrumb a,
.woocommerce-page .woocommerce-breadcrumb a {
	padding: 0px;
	font-weight: 500;
	color: #9a9a9a;
	cursor: pointer;
}
.woocommerce .woocommerce-breadcrumb a:first-of-type,
.woocommerce-page .woocommerce-breadcrumb a:first-of-type {
	margin-left: -7px;
}
@media (max-width: 1024px) {
	.woocommerce .woocommerce-breadcrumb a:first-of-type,
	.woocommerce-page .woocommerce-breadcrumb a:first-of-type {
		margin-left: -5px;
	}
}
@media (max-width: 767px) {
	.woocommerce .woocommerce-breadcrumb a:first-of-type,
	.woocommerce-page .woocommerce-breadcrumb a:first-of-type {
		margin-left: -3px;
	}
}

.woocommerce .woocommerce-breadcrumb a:hover,
.woocommerce-page .woocommerce-breadcrumb a:hover {
	
}

.woocommerce .woocommerce-products-header,
.woocommerce-page .woocommerce-products-header,
.woocommerce-account .woocommerce,
.woocommerce-cart .woocommerce,
.woocommerce-checkout .woocommerce {
	position: relative;
	margin-inline: auto;
	padding: calc(var(--spacing) * 6);
	max-width: var(--container-7xl);
}

.woocommerce .woocommerce-products-header__title,
.woocommerce-page .page-title,
.woocommerce-account .entry-title,
.woocommerce-cart .entry-title,
.woocommerce-checkout .entry-title,
.woocommerce-order-received .entry-title {
	/* margin: 0 0 28px;
	font-size: clamp(34px, 5vw, 64px);
	line-height: .95;
	letter-spacing: -.02em;
	font-weight: 800;
	color: #2a2a2a; */
}
.woocommerce-account .entry-title {
	display: none;
}


.woocommerce .woocommerce-result-count,
.woocommerce-page .woocommerce-result-count,
.woocommerce .woocommerce-ordering,
.woocommerce-page .woocommerce-ordering {
	float: none;
	margin: 0;
	
}

.woocommerce .woocommerce-result-count,
.woocommerce-page .woocommerce-result-count {
	font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
}
@media (max-width: 767px) {
	.woocommerce .woocommerce-result-count,
	.woocommerce-page .woocommerce-result-count {
		font-size: calc(var(--text-sm) - 1px);
	}
}
@media (max-width: 480px) {
	.woocommerce .woocommerce-result-count,
	.woocommerce-page .woocommerce-result-count {
		font-size: var(--text-xs);
    	line-height: var(--tw-leading, var(--text-xs--line-height));
	}
}

.woocommerce .woocommerce-ordering,
.woocommerce-page .woocommerce-ordering {
	width: 100%;
	max-width: 265px;
}
@media (max-width: 767px) {
	.woocommerce .woocommerce-ordering,
	.woocommerce-page .woocommerce-ordering {
		max-width: 230px;
	}
}
@media (max-width: 640px) {
	.woocommerce .woocommerce-ordering,
	.woocommerce-page .woocommerce-ordering {
		margin-top: calc(var(--spacing) * 2);
		max-width: none;
	}
}

 .woocommerce .woocommerce-ordering .orderby,
 .woocommerce-page .woocommerce-ordering .orderby {
	position: absolute !important;
	opacity: 0 !important;
	pointer-events: none !important;
	width: 0 !important;
	height: 0 !important;
}


/* form style.css select for header */
.woocommerce .woocommerce-ordering .custom-orderby,
.woocommerce-page .woocommerce-ordering .custom-orderby {
	width: 100%;
	max-width: none;
	font-size: 13px;
}
@media (max-width: 767px) {
	.woocommerce .woocommerce-ordering .custom-orderby,
	.woocommerce-page .woocommerce-ordering .custom-orderby {
	  font-size: 12px;
	}
}

.woocommerce .woocommerce-ordering .custom-orderby .cs-selected,
.woocommerce-page .woocommerce-ordering .custom-orderby .cs-selected {
	padding: 10px 30px 10px 20px;
}
@media (max-width: 767px) {
	.woocommerce .woocommerce-ordering .custom-orderby .cs-selected,
	.woocommerce-page .woocommerce-ordering .custom-orderby .cs-selected {
		padding-left: 15px;
		padding-right: 25px;
		white-space: initial;
	}
}



.woocommerce nav:not([class*="breadcrumb"]) .site-main a,
.woocommerce-page nav:not([class*="breadcrumb"]) .site-main a {
	color: var(--ga-purple);
	text-decoration: none;
	transition: color .25s ease, opacity .25s ease;
}

.woocommerce a:hover,
.woocommerce-page a:hover {
	/* color: var(--ga-purple-dark); */
}

/*--------------------------------------------------------------
# Notices / messages
--------------------------------------------------------------*/
.woocommerce-error,
.woocommerce-info,
.woocommerce-message {
	position: relative;
	max-width: 1280px;
	margin: 0 auto 28px;
	padding: 20px 24px 20px 58px;
	border: 1px solid rgba(147, 51, 234, .14);
	border-radius: var(--ga-radius-lg);
	background: var(--ga-gradient-soft);
	box-shadow: var(--ga-shadow-soft);
	font-size: 14px;
	font-weight: 600;
	line-height: 1.7;
	color: var(--ga-text);
	list-style: none;
}

.woocommerce-error::before,
.woocommerce-info::before,
.woocommerce-message::before {
	position: absolute;
	top: 19px;
	left: 24px;
	width: 22px;
	height: 22px;
	border-radius: 999px;
	background: var(--ga-gradient);
	color: #fff;
	font-size: 13px;
	font-weight: 800;
	line-height: 22px;
	text-align: center;
}

.woocommerce-message::before { content: '✓'; }
.woocommerce-info::before { content: 'i'; }
.woocommerce-error::before { content: '!'; background: var(--ga-danger); }

.woocommerce-error {
	border-color: rgba(220, 38, 38, .18);
	background: linear-gradient(135deg, rgba(220, 38, 38, .06), rgba(220, 38, 38, .02));
}

.woocommerce-error li {
	margin: 0 0 6px;
}

.woocommerce-error li:last-child {
	margin-bottom: 0;
}

/*--------------------------------------------------------------
# Buttons - WooCommerce
--------------------------------------------------------------*/
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce-page a.button,
.woocommerce-page button.button,
.woocommerce-page input.button,
.woocommerce-page #respond input#submit,
.woocommerce .button,
.woocommerce-page .button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	/* min-height: 52px; */
	padding: 15px 28px;
	border: 0;
	border-radius: 18px;
	background: var(--ga-gradient);
	box-shadow: var(--ga-shadow);
	font-family: var(--ga-font-sans);
	font-size: 15px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: .01em;
	color: #fff;
	text-decoration: none;
	cursor: pointer;
	transition: transform .25s ease, box-shadow .25s ease, background .25s ease, opacity .25s ease;
	--tw-duration: 300ms;
    transition-duration: 300ms;
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
}
.woocommerce form.login button.button:not(.product_type_simple),
.woocommerce form.register button.button:not(.product_type_simple),
.woocommerce form.checkout_coupon button.button:not(.product_type_simple),
.woocommerce form.lost_reset_password button.button:not(.product_type_simple),
.woocommerce .woocommerce-form-login button.button:not(.product_type_simple),
.woocommerce .woocommerce-form-register button.button:not(.product_type_simple) {
	--tw-gradient-to: var(--ga-purple-dark);
	--tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
	--tw-gradient-from: var(--ga-purple);
	--tw-gradient-position: to right in oklab;
	background-image: linear-gradient(var(--tw-gradient-stops));
	color: #fff;
}

.woocommerce a:not(.product_type_simple).button:hover,
.woocommerce button.button:not(.product_type_simple):hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce-page a.button:not(.product_type_simple):hover,
.woocommerce-page button.button:not(.product_type_simple):hover,
.woocommerce-page input.button:hover,
.woocommerce-page #respond input#submit:hover,
.woocommerce .button:not(.product_type_simple):hover,
.woocommerce-page .button:not(.product_type_simple):hover {
	/* background: var(--ga-gradient);
	box-shadow: var(--ga-shadow-lg);
	color: #fff;
	transform: translateY(-2px) scale(1.02); */
	--tw-shadow-color: color-mix(in srgb, var(--ga-purple) 30%, transparent);
	--tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}


.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce #respond input#submit.alt,
.woocommerce-page a.button.alt,
.woocommerce-page button.button.alt,
.woocommerce-page input.button.alt {
	background: var(--ga-gradient);
	color: #fff;
}

.woocommerce a.button.disabled,
.woocommerce a.button:disabled,
.woocommerce a.button:disabled[disabled],
.woocommerce button.button.disabled,
.woocommerce button.button:disabled,
.woocommerce button.button:disabled[disabled],
.woocommerce input.button.disabled,
.woocommerce input.button:disabled,
.woocommerce input.button:disabled[disabled] {
	padding: 15px 28px;
	background: #d6d6d6;
	box-shadow: none;
	color: #fff;
	cursor: not-allowed;
	opacity: .7;
	transform: none;
}

.woocommerce a.added_to_cart {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-left: 10px;
	font-size: 14px;
	font-weight: 800;
	color: var(--ga-purple);
}

.woocommerce .checkout-button,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
	width: 100%;
	/* min-height: 58px; */
	font-size: 17px;
}

/* Secondary / small actions */
.woocommerce-cart table.cart td.actions .coupon .button,
.woocommerce table.my_account_orders .button,
.woocommerce-account .woocommerce-MyAccount-content .button,
.woocommerce .woocommerce-widget-layered-nav-dropdown__submit,
.woocommerce .widget_price_filter .price_slider_amount .button {
	/* min-height: 44px; */
	padding: 14px 18px;
	border: 1px solid rgba(147, 51, 234, .18);
	box-shadow: none;
	font-size: 14px;
	text-align: center;
	--tw-duration: 300ms;
	transition-duration: 300ms;
	transition-property: all;
	transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
	--tw-gradient-to: var(--ga-purple-dark);
	--tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
	--tw-gradient-from: var(--ga-purple);
	--tw-gradient-position: to right in oklab;
	background-image: linear-gradient(var(--tw-gradient-stops));
	color: var(--color-white);
}

.woocommerce-cart table.cart td.actions .coupon .button:hover,
.woocommerce table.my_account_orders .button:hover,
.woocommerce-account .woocommerce-MyAccount-content .button:hover,
.woocommerce .woocommerce-widget-layered-nav-dropdown__submit:hover,
.woocommerce .widget_price_filter .price_slider_amount .button:hover {
	--tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--ga-purple) 30%, transparent) var(--tw-shadow-alpha), transparent);
	--tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
	box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
	background-image: linear-gradient(var(--tw-gradient-stops));
	color: var(--color-white);
}

/*--------------------------------------------------------------
# Forms / fields / login / register / checkout
--------------------------------------------------------------*/
.woocommerce form .form-row {
	margin: 0 0 18px;
	padding: 0;
}

@media (max-width: 767px) {
	.woocommerce form .form-row-first,
	.woocommerce form .form-row-last {
		width: 100%;
	}
}

.woocommerce form .form-row label,
.woocommerce-page form .form-row label,
.woocommerce form label {
	display: block;
	margin: 0 0 8px;
	font-size: 12px;
	font-weight: 500;
	line-height: 1.4;
	letter-spacing: .03em;
	text-transform: uppercase;
	color: #0a0a0a;
}

.woocommerce form .form-row .required {
	color: var(--ga-purple);
	text-decoration: none;
}

.woocommerce input[type='text'].input-text,
.woocommerce input[type='text'],
.woocommerce input[type='email'].input-text,
.woocommerce input[type='email'],
.woocommerce input[type='url'],
.woocommerce input[type='password'].input-text,
.woocommerce input[type='password'],
.woocommerce input[type='search'],
.woocommerce input[type='number'],
.woocommerce input[type='tel'],
.woocommerce input[type='date'],
.woocommerce textarea,
.woocommerce select,
.woocommerce-page input[type='text'],
.woocommerce-page input[type='email'],
.woocommerce-page input[type='url'],
.woocommerce-page input[type='password'],
.woocommerce-page input[type='search'],
.woocommerce-page input[type='number'],
.woocommerce-page input[type='tel'],
.woocommerce-page textarea,
.woocommerce-page select,
.select2-container--default .select2-selection--single,
.select2-container--default .select2-selection--multiple {
	width: 100%;
	/* min-height: 52px; */
	padding: 12px 14px;
	border: 2px solid var(--ga-border) !important;
	border-radius: var(--ga-radius) !important;
	background: #fff;
	box-shadow: none;
	font-family: var(--ga-font-sans);
	font-size: 14px;
	font-weight: 500;
	line-height: 1.4;
	color: var(--ga-text);
	transition: border-color .25s ease, box-shadow .25s ease, background .25s ease;
}
.woocommerce input[type='text'].input-text,
.woocommerce input[type='email'].input-text,
.woocommerce input[type='password'].input-text {
	-webkit-box-shadow: 0 0 0 1000px #fff inset;
}


.woocommerce textarea,
.woocommerce-page textarea {
	min-height: 130px;
	resize: vertical;
}


.woocommerce .modal textarea,
.woocommerce-page .modal textarea {
	padding: 12px 14px;
	border-color: rgb(239, 239, 239) !important;
	background: rgb(248, 248, 248);
	font-size: 13px;
	color: var(--ga-black);
}


.woocommerce input[type='text'].input-text:focus,
.woocommerce input[type='email'].input-text:focus,
.woocommerce input[type='password'].input-text:focus,
.woocommerce input:focus,
.woocommerce textarea:focus,
.woocommerce select:focus,
.woocommerce-page input:focus,
.woocommerce-page textarea:focus,
.woocommerce-page select:focus,
.select2-container--default.select2-container--open .select2-selection--single,
.select2-container--default.select2-container--focus .select2-selection--multiple {
	border-color: rgba(147, 51, 234, 1) !important;
	/* box-shadow: 0 0 10px rgba(147, 51, 234, .5); */
	background: #fff;
	outline: 0;
}
.woocommerce input[type='text'].input-text:focus {
	-webkit-box-shadow: 0 0 0 1000px #fff inset;
}

.woocommerce .modal textarea:focus,
.woocommerce-page .modal textarea:focus {
	border-color: rgba(147, 51, 234, .55) !important;
	box-shadow: none;
	background: rgb(248, 248, 248);
}

.woocommerce form .form-row input.input-text::placeholder,
.woocommerce form .form-row textarea::placeholder {
	color: #9a9a9a;
}

.woocommerce form .form-row.woocommerce-invalid input.input-text,
.woocommerce form .form-row.woocommerce-invalid select,
.woocommerce form .form-row.woocommerce-invalid textarea {
	border-color: rgba(220, 38, 38, .55);
	box-shadow: 0 0 0 4px rgba(220, 38, 38, .06);
}

.woocommerce form .form-row.woocommerce-validated input.input-text,
.woocommerce form .form-row.woocommerce-validated select,
.woocommerce form .form-row.woocommerce-validated textarea {
	border-color: rgba(22, 163, 74, .45);
}

.woocommerce form .show-password-input,
.woocommerce-page form .show-password-input {
	top: 50%;
	right: 16px;
	transform: translateY(-50%);
	color: var(--ga-soft);
}

.woocommerce form.login,
.woocommerce form.register,
.woocommerce form.checkout_coupon,
.woocommerce form.lost_reset_password,
.woocommerce .woocommerce-form-login,
.woocommerce .woocommerce-form-register {
	margin: 4px 0 32px;
	padding: calc(var(--spacing) * 6);
	border: 1px solid #EFEFEF;
	border-radius: var(--radius-2xl);
	background: #fff;
	--tw-shadow: 0 1px 2px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.05));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.woocommerce form.login,
.woocommerce form.lost_reset_password {
	margin-inline: auto;
	width: 100%;
	max-width: var(--container-2xl);
}

.woocommerce form.login p,
.woocommerce form.register p,
.woocommerce form.checkout_coupon p,
.woocommerce form.lost_reset_password p {
	color: var(--ga-soft);
	line-height: 1.75;
}

.woocommerce .woocommerce-form-login .woocommerce-form-login__rememberme {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin: 10px 0 0;
	text-transform: none;
	letter-spacing: 0;
	font-weight: 700;
	color: var(--ga-soft);
	cursor: pointer;
}

.woocommerce input[type='checkbox'],
.woocommerce-page input[type='checkbox'],
.woocommerce input[type='radio'],
.woocommerce-page input[type='radio'] {
	width: 18px;
	height: 18px;
	accent-color: var(--ga-purple-dark);
	cursor: pointer;
}
.woocommerce input[type='checkbox']:before,
.woocommerce-page input[type='checkbox']:before,
.woocommerce input[type='radio']:before,
.woocommerce-page input[type='radio']:before {
	background-color: var(--ga-purple);
}

/* Select2 */
.select2-container .select2-selection--single .select2-selection__rendered {
	padding-block: 0;
	padding-left: 0;
	padding-right: 24px;
	line-height: 22px;
	color: var(--ga-text);
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
	top: 50%;
	right: 12px;
	transform: translateY(-50%);
}

.select2-dropdown {
	border: 1px solid rgba(147, 51, 234, .16);
	border-radius: var(--ga-radius);
	box-shadow: 0 20px 48px rgba(0, 0, 0, .10);
	overflow: hidden;
}

.select2-container--default .select2-results__option--highlighted[aria-selected],
.select2-container--default .select2-results__option--highlighted[data-selected] {
	background: var(--ga-purple);
	color: #fff;
}


.woocommerce form fieldset {
	padding: 0;
}

/*--------------------------------------------------------------
# Tables - cart, checkout, orders
--------------------------------------------------------------*/
.woocommerce table.shop_table,
.woocommerce-page table.shop_table,
.woocommerce table.my_account_orders {
	width: 100%;
	margin: 0 0 32px;
	border: 1px solid var(--ga-border-soft);
	border-radius: var(--ga-radius-xl);
	background: #fff;
	border-collapse: separate;
	border-spacing: 0;
	box-shadow: var(--ga-shadow-soft);
	overflow: hidden;
}
.woocommerce table.my_account_orders,
.woocommerce table.order_details {
	border-radius: var(--ga-radius);
}


.woocommerce table.my_account_orders tr:hover,
.woocommerce table.order_details tr:hover {
	background-color: color-mix(in oklab, #9333EA 5%, transparent);
}

.woocommerce table.shop_table th,
.woocommerce-page table.shop_table th,
.woocommerce table.my_account_orders th {
	padding: 18px 20px;
	border: 0;
	border-bottom: 1px solid var(--ga-border-soft);
	background: var(--ga-cream);
	font-size: 12px;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: #2a2a2a;
}
.woocommerce table.my_account_orders th,
.woocommerce table.order_details th {
	padding: 10px 12px;
	font-weight: 700;
	font-size: 10px;
	color: var(--soft-light);
}
.woocommerce table.my_account_orders th:first-of-type,
.woocommerce table.order_details th:first-of-type {
    padding-left: calc(var(--spacing) * 6);
}
.woocommerce table.my_account_orders th:last-of-type,
.woocommerce table.order_details th:last-of-type {
    padding-right: calc(var(--spacing) * 6);
}

.woocommerce table.shop_table td,
.woocommerce-page table.shop_table td,
.woocommerce table.my_account_orders td {
	padding: 20px;
	border: 0;
	border-bottom: 1px solid var(--ga-border-soft);
	font-size: 15px;
	font-weight: 600;
	line-height: 1.6;
	color: var(--ga-text);
}
.woocommerce table.my_account_orders td,
.woocommerce table.order_details td {
	padding: 10px 12px;
	font-weight: 400;
	font-size: 12px;
}
.woocommerce table.order_details tfoot td {
	border-top-color: var(--ga-border-soft);
}
.woocommerce table.my_account_orders td:first-of-type,
.woocommerce table.order_details td:first-of-type {
    padding-left: calc(var(--spacing) * 6);
}
.woocommerce table.my_account_orders td:last-of-type,
.woocommerce table.order_details td:last-of-type {
    padding-right: calc(var(--spacing) * 6);
}
@media (max-width: 767px) {
	.woocommerce table.my_account_orders td:first-of-type,
	.woocommerce table.order_details td:first-of-type {
	    padding-left: calc(var(--spacing) * 4);
	}
	.woocommerce table.my_account_orders td:last-of-type,
	.woocommerce table.order_details td:last-of-type {
	    padding-right: calc(var(--spacing) * 4);
	}
}


.woocommerce table.shop_table tr:last-child td,
.woocommerce-page table.shop_table tr:last-child td,
.woocommerce table.my_account_orders tr:last-child td {
	border-bottom: 0;
}

.woocommerce table.shop_table strong,
.woocommerce-page table.shop_table strong,
.woocommerce table.shop_table .amount,
.woocommerce-page table.shop_table .amount {
	font-weight: 800;
	color: #2a2a2a;
}
.woocommerce-page table.my_account_orders .amount,
.woocommerce-page table.order_details .amount {
	margin-right: calc(var(--spacing) * 1);
	font-weight: 700;
	color: #0A0A0A;
}

.woocommerce table.shop_table .product-name a {
	font-weight: 800;
	color: #2a2a2a;
}

.woocommerce table.shop_table .product-name a:hover {
	color: var(--ga-purple);
}


.woocommerce-page table.my_account_orders .btn {
	gap: 4px;
	margin-left: calc(var(--spacing) * 1);
	margin-bottom: calc(var(--spacing) * 1);
	padding-block: calc(var(--spacing) * 1.5);
	padding-inline: calc(var(--spacing) * 3);
	border-radius: calc(var(--radius) - 2px);
	border: 1px solid #EFEFEF;
	background: #fff;
	font-weight: 600;
	font-size: 11px;
	color: #4A4A4A;
}
.woocommerce-page table.my_account_orders .btn:hover {
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
	border-color: #9333EA;
	background: #FAF5FF;
	color: #9333EA;
}
@media (max-width: 767px) {
	.woocommerce-page table.my_account_orders .btn {
		padding-block: calc(var(--spacing) * 1);
		padding-inline: calc(var(--spacing) * 2);
	}
}

.woocommerce-page table.my_account_orders .btn:before {
	display: block;
	width: 12px;
	height: 12px;
	content: '';
	background-color: #4A4A4A;
	-webkit-mask-repeat: no-repeat;
	-moz-mask-repeat: no-repeat;
	-ms-mask-repeat: no-repeat;
	-o-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	-moz-mask-position: center;
	-ms-mask-position: center;
	-o-mask-position: center;
	mask-position: center;
	-webkit-mask-size: cover;
	-moz-mask-size: cover;
	-ms-mask-size: cover;
	-o-mask-size: cover;
	mask-size: cover;
}
.woocommerce-page table.my_account_orders .btn:hover:before {
	background-color: #9333EA;
}
.woocommerce-page table.my_account_orders .btn.view:before {
	-webkit-mask-image: url('../images/lucide-eye.svg');
	-moz-mask-image: url('../images/lucide-eye.svg');
	-ms-mask-image: url('../images/lucide-eye.svg');
	-o-mask-image: url('../images/lucide-eye.svg');
	mask-image: url('../images/lucide-eye.svg');
}
.woocommerce-page table.my_account_orders .btn.reorder:before {
	-webkit-mask-image: url('../images/lucide-refresh.svg');
	-moz-mask-image: url('../images/lucide-refresh.svg');
	-ms-mask-image: url('../images/lucide-refresh.svg');
	-o-mask-image: url('../images/lucide-refresh.svg');
	mask-image: url('../images/lucide-refresh.svg');
}


/*--------------------------------------------------------------
# Orders details
--------------------------------------------------------------*/
p:has(+ .woocommerce-order-details) {
	margin-bottom: calc(var(--spacing) * 4);
	font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: #0A0A0A;
}
@media (max-width: 767px) {
	p:has(+ .woocommerce-order-details) {
		font-size: var(--text-xs);
	}
}


/*--------------------------------------------------------------
# Product archive / shop grid
--------------------------------------------------------------*/
/* === search === */
.woocommerce .site-main #ajaxsearch-main .asl_w,
.woocommerce-page .site-main #ajaxsearch-main .asl_w {
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	-ms-box-shadow: none;
	-o-box-shadow: none;
	box-shadow: none;
	-webkit-border: none;
	-moz-border: none;
	-ms-border: none;
	-o-border: none;
	border: none;
	background: transparent;
}


.woocommerce .site-main #ajaxsearch-main .probox,
.woocommerce-page .site-main #ajaxsearch-main .probox {
	gap: 8px;
	display: flex;
	flex-direction: row-reverse;
	align-items: center;
	padding: 0px 20px;
	height: auto;
	-webkit-box-shadow:  rgba(0, 0, 0, 0.04) 0px 1px 4px;
	-moz-box-shadow:  rgba(0, 0, 0, 0.04) 0px 1px 4px;
	-ms-box-shadow:  rgba(0, 0, 0, 0.04) 0px 1px 4px;
	-o-box-shadow:  rgba(0, 0, 0, 0.04) 0px 1px 4px;
	box-shadow: rgba(0, 0, 0, 0.04) 0px 1px 4px;
	-webkit-border-radius: 12px;
	-moz-border-radius: 12px;
	-ms-border-radius: 12px;
	-o-border-radius: 12px;
	border-radius: 12px;
	border: 2px solid rgb(224, 224, 224);
	background: rgb(248, 248, 248);
	transition: 0.2s;
}
@media (max-width: 767px) {
	.woocommerce .site-main #ajaxsearch-main .probox,
	.woocommerce-page .site-main #ajaxsearch-main .probox {
		padding: 0px 10px;
	}
}
.woocommerce .site-main #ajaxsearch-main .probox:has(input:focus),
.woocommerce-page .site-main #ajaxsearch-main .probox:has(input:focus) {
	-webkit-box-shadow:  rgba(147, 51, 234, 0.08) 0px 0px 0px 4px;
	-moz-box-shadow:  rgba(147, 51, 234, 0.08) 0px 0px 0px 4px;
	-ms-box-shadow:  rgba(147, 51, 234, 0.08) 0px 0px 0px 4px;
	-o-box-shadow:  rgba(147, 51, 234, 0.08) 0px 0px 0px 4px;
	box-shadow: rgba(147, 51, 234, 0.08) 0px 0px 0px 4px;
	border-color: var(--ga-purple);
	background: #fff;
}

.woocommerce .site-main #ajaxsearch-main .proinput,
.woocommerce-page .site-main #ajaxsearch-main .proinput {
	margin: 0;
  	padding: 0;
}

.woocommerce .site-main #ajaxsearch-main form input,
.woocommerce-page .site-main #ajaxsearch-main form input {
	height: 52px;
	font-family: "Manrope", sans-serif;
	font-size: 15px;
	font-weight: 500;
	color: #0A0A0A !important;
}
@media (max-width: 767px) {
	.woocommerce .site-main #ajaxsearch-main form input,
	.woocommerce-page .site-main #ajaxsearch-main form input {
		height: 45px;
	}
}
.woocommerce .site-main #ajaxsearch-main form input.autocomplete,
.woocommerce-page .site-main #ajaxsearch-main form input.autocomplete {
	margin-top: -52px !important;
}
@media (max-width: 767px) {
	.woocommerce .site-main #ajaxsearch-main form input.autocomplete,
	.woocommerce-page .site-main #ajaxsearch-main form input.autocomplete {
		margin-top: -45px !important;
	}
}
.woocommerce .site-main #ajaxsearch-main form input::-webkit-input-placeholder,
.woocommerce-page .site-main #ajaxsearch-main form input::-webkit-input-placeholder { /* Chrome/Opera/Safari */
	color: color-mix(in oklab,currentcolor 50%,transparent) !important;
	opacity: 1;
}
.woocommerce .site-main #ajaxsearch-main form input:-ms-input-placeholder,
.woocommerce-page .site-main #ajaxsearch-main form input:-ms-input-placeholder { /* IE 10+ */
	color: color-mix(in oklab,currentcolor 50%,transparent) !important;
	opacity: 1;
}
.woocommerce .site-main #ajaxsearch-main form input::-moz-placeholder,
.woocommerce-page .site-main #ajaxsearch-main form input::-moz-placeholder { /* Firefox 19+ */
	color: color-mix(in oklab,currentcolor 50%,transparent) !important;
	opacity: 1;
}
.woocommerce .site-main #ajaxsearch-main form input:-moz-placeholder,
.woocommerce-page .site-main #ajaxsearch-main form input:-moz-placeholder { /* Firefox 18- */
	color: color-mix(in oklab,currentcolor 50%,transparent) !important;
	opacity: 1;
}
.woocommerce .site-main #ajaxsearch-main form input::placeholder,
.woocommerce-page .site-main #ajaxsearch-main form input::placeholder {
    color: color-mix(in oklab,currentcolor 50%,transparent) !important;
    opacity: 1;
}


/* == btn ==  */
.woocommerce .site-main #ajaxsearch-main .promagnifier,
.woocommerce-page .site-main #ajaxsearch-main .promagnifier {
	background: transparent;
}

.woocommerce .site-main #ajaxsearch-main .promagnifier svg,
.woocommerce-page .site-main #ajaxsearch-main .promagnifier svg {
	fill: rgba(154,154,154, .5);
	transition: 0.2s;
}
.woocommerce .site-main #ajaxsearch-main .probox:has(input:focus) .promagnifier svg,
.woocommerce-page .site-main #ajaxsearch-main .probox:has(input:focus) .promagnifier svg {
	fill: var(--ga-purple);
}


/* == results ==  */
div.asl_r.vertical {
	padding: 2px !important;
	background: rgba(118,118,118,.5) !important;
}


/* === brand filter === */
.woocommerce .site-main .widget[class*="brand"],
.woocommerce-page .site-main .widget[class*="brand"] {
	margin: 0;
	padding: 0;
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	-ms-box-shadow: none;
	-o-box-shadow: none;
	box-shadow: none;
	-webkit-border: none;
	-moz-border: none;
	-ms-border: none;
	-o-border: none;
	border: none;
}


.woocommerce .site-main .widget[class*="brand"] ul li,
.woocommerce-page .site-main .widget[class*="brand"] ul li {
	margin: 0; 
	-webkit-border: none;
	-moz-border: none;
	-ms-border: none;
	-o-border: none;
	border: none;
}


.woocommerce .site-main .widget[class*="brand"] ul li a:hover img,
.woocommerce-page .site-main .widget[class*="brand"] ul li a:hover img {
	filter: brightness(0) saturate(100%) invert(23%) sepia(66%) saturate(4230%) hue-rotate(264deg) brightness(94%) contrast(94%);
}


/* === shop filter === */
.woocommerce .site-main .widget.wc-shop-filters,
.woocommerce-page .site-main .widget.wc-shop-filters {
	margin: 0;
	padding: 0;
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	-ms-box-shadow: none;
	-o-box-shadow: none;
	box-shadow: none;
	-webkit-border: none;
	-moz-border: none;
	-ms-border: none;
	-o-border: none;
	border: none;
	background-color: transparent;
}

.woocommerce .site-main .widget.wc-shop-filters ul li,
.woocommerce-page .site-main .widget.wc-shop-filters ul li {
	-webkit-border: none;
	-moz-border: none;
	-ms-border: none;
	-o-border: none;
	border: none;
}

.woocommerce .site-main .widget.wc-shop-filters ul li a.active:hover,
.woocommerce-page .site-main .widget.wc-shop-filters ul li a.active:hover {
	color: #fff;
}


/* === products === */
.woocommerce ul.products,
.woocommerce-page ul.products {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: calc(var(--spacing) * 3.5);
  	max-width: var(--container-7xl);
	margin: 0 auto calc(var(--spacing) * 10);
	padding: calc(var(--spacing) * 1) calc(var(--spacing) * 6);
	list-style: none;
}

.woocommerce ul.products::before,
.woocommerce ul.products::after,
.woocommerce-page ul.products::before,
.woocommerce-page ul.products::after {
	display: none;
}
 
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
	float: none;
	width: auto !important;
	margin: 0 !important;
	padding: 0;
	border: 1px solid var(--ga-border-soft);
	border-radius: calc(var(--ga-radius-sm) + 2px);
	background: #fff;
	box-shadow: var(--ga-shadow-soft);
	overflow: hidden;
	transition: transform .35s ease, border-color .35s ease, box-shadow .35s ease;

	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.woocommerce ul.products li.product:hover,
.woocommerce-page ul.products li.product:hover {
	border-color: rgba(147, 51, 234, .25);
	-webkit-transform: translateY(-2px);
	-moz-transform: translateY(-2px);
	-ms-transform: translateY(-2px);
	-o-transform: translateY(-2px);
	transform: translateY(-2px);
	-webkit-box-shadow: rgba(147, 51, 234, .08) 0px 8px 28px;
	-moz-box-shadow: rgba(147, 51, 234, .08) 0px 8px 28px;
	-ms-box-shadow: rgba(147, 51, 234, .08) 0px 8px 28px;
	-o-box-shadow: rgba(147, 51, 234, .08) 0px 8px 28px;
	box-shadow: rgba(147, 51, 234, .08) 0px 8px 28px;
}

.woocommerce ul.products li.product a img,
.woocommerce-page ul.products li.product a img {
	margin: 0;
	width: 100%;
	max-height: 218px;
	background: var(--ga-cream);
	-webkit-object-fit: cover;
	-moz-object-fit: cover;
	-ms-object-fit: cover;
	-o-object-fit: cover;
	object-fit: cover;
	aspect-ratio: 292 / 218;
}
.woocommerce ul.products li.product a img[src*="woocommerce-placeholder"],
.woocommerce-page ul.products li.product a img[src*="woocommerce-placeholder"] {
	-webkit-object-fit: contain;
	-moz-object-fit: contain;
	-ms-object-fit: contain;
	-o-object-fit: contain;
	object-fit: contain;
}
@media (max-width: 480px) {
	.woocommerce ul.products li.product a img,
	.woocommerce-page ul.products li.product a img {
		max-height: 335px;
		aspect-ratio: 335 / 248;
	}
}

.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title {
	margin: 0px;
	padding: 14px 14px 8px;
	font-weight: 700;
	font-size: 13px;
	line-height: 1.3;
	color: rgb(10, 10, 10);
}


.woocommerce ul.products li.product article:has(.stock.in-stock),
.woocommerce-page ul.products li.product article:has(.stock.in-stock) {
	background: var(--completed-background);
  	color: var(--completed-color);
}
.woocommerce ul.products li.product article:has(.stock.out-of-stock),
.woocommerce-page ul.products li.product article:has(.stock.out-of-stock) {
	background: var(--internal-background);
  	color: var(--internal-color);
}


.woocommerce ul.products li.product article:has(.stock) .stock,
.woocommerce-page ul.products li.product article:has(.stock) .stock {
	gap: 4px;
	display: flex;
	align-items: center;
	font-weight: bold;
}

.woocommerce ul.products li.product article:has(.stock) .stock:before,
.woocommerce-page ul.products li.product article:has(.stock) .stock:before {
	display: inline-block;
	width: 12px;
	height: 12px;
	content: '';
	-webkit-mask-repeat: no-repeat;
	-moz-mask-repeat: no-repeat;
	-ms-mask-repeat: no-repeat;
	-o-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	-moz-mask-position: center;
	-ms-mask-position: center;
	-o-mask-position: center;
	mask-position: center;
	-webkit-mask-size: cover;
	-moz-mask-size: cover;
	-ms-mask-size: cover;
	-o-mask-size: cover;
	mask-size: cover;
}
.woocommerce ul.products li.product article:has(.stock.in-stock) .stock:before,
.woocommerce-page ul.products li.product article:has(.stock.in-stock) .stock:before {
	background-color: var(--completed-color);
	-webkit-mask-image: url('../images/icon-completed.svg');
	-moz-mask-image: url('../images/icon-completed.svg');
	-ms-mask-image: url('../images/icon-completed.svg');
	-o-mask-image: url('../images/icon-completed.svg');
	mask-image: url('../images/icon-completed.svg');
}
.woocommerce ul.products li.product article:has(.stock.out-of-stock) .stock:before,
.woocommerce-page ul.products li.product article:has(.stock.out-of-stock) .stock:before {
	background-color: var(--internal-color);
	-webkit-mask-image: url('../images/icon-received.svg');
	-moz-mask-image: url('../images/icon-received.svg');
	-ms-mask-image: url('../images/icon-received.svg');
	-o-mask-image: url('../images/icon-received.svg');
	mask-image: url('../images/icon-received.svg');
}


.woocommerce ul.products li.product .price,
.woocommerce-page ul.products li.product .price {
	display: block;
	padding: 0 14px 8px;
	font-weight: 800;
	font-size: 16px;
	letter-spacing: -0.02em;
	color: var(--ga-purple);
}

.woocommerce ul.products li.product .price del,
.woocommerce-page ul.products li.product .price del {
	margin-right: 8px;
	font-size: 14px;
	font-weight: 600;
	color: var(--ga-soft);
	opacity: .75;
}

.woocommerce ul.products li.product .price ins,
.woocommerce-page ul.products li.product .price ins {
	text-decoration: none;
}

.woocommerce span.onsale,
.woocommerce-page span.onsale {
	top: 8px !important;
	right: 8px !important;
	left: auto !important;
	margin: 0 !important;
	padding: 3px 7px;
	min-width: auto;
	min-height: auto;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	-ms-border-radius: 5px;
	-o-border-radius: 5px;
	border-radius: 5px;
	background: rgb(217, 119, 6);
	font-size: 10px;
	font-weight: 700;
	line-height: 1;
	text-transform: uppercase;
	color: rgb(255, 255, 255);
}
.woocommerce div.product span.onsale,
.woocommerce-page div.product span.onsale {
	top: calc((var(--spacing) * 6) + 8px) !important;
	left: calc((var(--spacing) * 6) + 8px) !important;
	right: auto !important;
	padding: 4px 10px;
	font-size: 12px;
}

/* = btn = */
.woocommerce ul.products li.product .button,
.woocommerce-page ul.products li.product .button {
	flex: 1;
	margin: 2px 4px;
	padding: 10px 12px;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	-ms-border-radius: 8px;
	-o-border-radius: 8px;
	border-radius: 8px;
	font-weight: 700;
	font-size: 12px;
	text-align: center;
	--tw-duration: 300ms;
    transition-duration: 300ms;
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    --tw-gradient-to: var(--ga-purple-dark);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
    --tw-gradient-from: var(--ga-purple);
    --tw-gradient-position: to right in oklab;
    background-image: linear-gradient(var(--tw-gradient-stops));
    color: var(--color-white);
}
.woocommerce ul.products li.product .button:hover,
.woocommerce-page ul.products li.product .button:hover {
	--tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--ga-purple) 30%, transparent) var(--tw-shadow-alpha), transparent);
	--tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}

.woocommerce ul.products li.product .star-rating,
.woocommerce-page ul.products li.product .star-rating {
	margin: 0 24px 12px;
	color: var(--ga-purple);
}


/* = btn more = */
.woocommerce ul.products li.product .product_type_simple,
.woocommerce-page ul.products li.product .product_type_simple {
	border: 1px solid rgb(239, 239, 239);
	background: rgb(255, 255, 255);
	color: #4A4A4A;
}
.woocommerce ul.products li.product .product_type_simple:hover,
.woocommerce-page ul.products li.product .product_type_simple:hover {
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	-ms-box-shadow: none;
	-o-box-shadow: none;
	box-shadow: none;
	border-color: var(--ga-purple);
	background: rgb(250, 245, 255);
	color: var(--ga-purple);
}


/* = add to cart = */
.woocommerce ul.products li.product .add_to_cart_button,
.woocommerce-page ul.products li.product .add_to_cart_button {
	flex: 0;
	display: inline-block;
	padding: 6px 12px;
	font-size: 0;   
	text-indent: -999px;
}

.woocommerce ul.products li.product .add_to_cart_button:before,
.woocommerce-page ul.products li.product .add_to_cart_button:before {
	display: block;
	width: 20px;
	height: 20px;
	content: '';
	background-color: var(--ga-purple);
	-webkit-mask-image: url('../images/icon-cart.svg');
	-moz-mask-image: url('../images/icon-cart.svg');
	-ms-mask-image: url('../images/icon-cart.svg');
	-o-mask-image: url('../images/icon-cart.svg');
	mask-image: url('../images/icon-cart.svg');
	-webkit-mask-repeat: no-repeat;
	-moz-mask-repeat: no-repeat;
	-ms-mask-repeat: no-repeat;
	-o-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	-moz-mask-position: center;
	-ms-mask-position: center;
	-o-mask-position: center;
	mask-position: center;
	-webkit-mask-size: cover;
	-moz-mask-size: cover;
	-ms-mask-size: cover;
	-o-mask-size: cover;
	mask-size: cover;
}

/*--------------------------------------------------------------
# Single product
--------------------------------------------------------------*/
.woocommerce div.product,
.woocommerce-page div.product {
	display: grid;
	grid-template-columns: 1fr 1.1fr;
	gap: 24px;
	position: relative;
	margin: 0 auto;
	padding: calc(var(--spacing) * 6);
	max-width: var(--container-7xl);
}
@media (max-width: 767px) {
	.woocommerce div.product,
	.woocommerce-page div.product {
		grid-template-columns: initial;
	}
}
@media (max-width: 480px) {
	.woocommerce div.product,
	.woocommerce-page div.product {
		padding: calc(var(--spacing) * 3);
	}
}

.woocommerce div.product > *:not(.onsale):not(.woocommerce-product-gallery):not(.summary),
.woocommerce-page div.product > *:not(.onsale):not(.woocommerce-product-gallery):not(.summary) {
	grid-column: 1 / -1;
}


/* = gallery = */
.woocommerce div.product div.images,
.woocommerce-page div.product div.images {
	float: none;
	margin-bottom: 0;
  	width: auto;
}

.woocommerce div.product div.images .woocommerce-product-gallery__wrapper,
.woocommerce-page div.product div.images .woocommerce-product-gallery__wrapper {
	overflow: hidden;
}

.woocommerce div.product div.images .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image,
.woocommerce-page div.product div.images .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image {
	max-height: 424px;
	border: 1px solid rgb(239, 239, 239);
	-webkit-border-radius: var(--ga-radius);
	-moz-border-radius: var(--ga-radius);
	-ms-border-radius: var(--ga-radius);
	-o-border-radius: var(--ga-radius);
	border-radius: var(--ga-radius);
	overflow: hidden;
}
.woocommerce div.product div.images .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image:first-of-type:has(+ .woocommerce-product-gallery__image),
.woocommerce-page div.product div.images .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image:first-of-type:has(+ .woocommerce-product-gallery__image) {
	margin-bottom: 10px;
}
.woocommerce div.product div.images .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image:nth-child(n+2),
.woocommerce-page div.product div.images .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image:nth-child(n+2) {
	width: 15%;
}


.woocommerce div.product div.images .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image a img ,
.woocommerce-page div.product div.images .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image a img {
	-webkit-object-fit: cover;
	-moz-object-fit: cover;
	-ms-object-fit: cover;
	-o-object-fit: cover;
	object-fit: cover;
	aspect-ratio: 573/424;
}


/* = thumbs = */
.woocommerce div.product div.images .flex-control-thumbs,
.woocommerce-page div.product div.images .flex-control-thumbs {
  	gap: 8px;
	display: flex;
	margin-top: 10px;
}

.woocommerce div.product div.images .flex-control-thumbs li,
.woocommerce-page div.product div.images .flex-control-thumbs li {
	flex-shrink: 0;
	width: 72px;
	height: 72px;
	border-radius: 10px;
	border: 2px solid rgb(239, 239, 239);
	transition: border-color 0.2s;
	cursor: pointer;
	overflow: hidden;
}
.woocommerce div.product div.images .flex-control-thumbs li:has(.flex-active),
.woocommerce-page div.product div.images .flex-control-thumbs li:has(.flex-active) {
	border-color: var(--ga-purple);
}


/* = summary = */
.woocommerce div.product div.summary,
.woocommerce-page div.product div.summary {
	float: none;
	gap: 16px;
	display: flex;
	flex-direction: column;
	margin-bottom: 0;
	padding: 28px;
  	width: auto;
	background: rgb(255, 255, 255);
	border: 1px solid rgb(239, 239, 239);
	-webkit-border-radius: 16px;
	-moz-border-radius: 16px;
	-ms-border-radius: 16px;
	-o-border-radius: 16px;
	border-radius: 16px;
}


/* = brands = */
.woocommerce div.product .brands,
.woocommerce-page div.product .brands {
  	gap: 8px;
	display: flex;
}

.woocommerce div.product .brands a,
.woocommerce-page div.product .brands a {
	padding: 4px 10px;
	border-radius: 6px;
	background: rgb(244, 244, 244);
	font-weight: 500;
	font-size: 11px;
	letter-spacing: 0.04em;
	color: rgb(106, 106, 106);
}
.woocommerce div.product .brands a:hover,
.woocommerce-page div.product .brands a:hover {
	background: rgb(250, 245, 255);
	color: rgb(147, 51, 234);
}


/* = title = */
.woocommerce div.product .product_title,
.woocommerce-page div.product .product_title {
	font-weight: 800;
	font-size: 26px;
	line-height: 1.15;
	letter-spacing: -0.03em;
	color: rgb(10, 10, 10);
}
@media (max-width: 1024px) {
	.woocommerce div.product .product_title,
	.woocommerce-page div.product .product_title {
		font-size: 24px;
	}
}
@media (max-width: 767px) {
	.woocommerce div.product .product_title,
	.woocommerce-page div.product .product_title {
		font-size: 22px;
	}
}
@media (max-width: 480px) {
	.woocommerce div.product .product_title,
	.woocommerce-page div.product .product_title {
		font-size: 20px;
	}
}


/* = short description = */
.woocommerce div.product .woocommerce-product-details__short-description,
.woocommerce-page div.product .woocommerce-product-details__short-description {
  	padding-bottom: 16px;
	border-bottom: 1px solid rgb(239, 239, 239);
	font-size: 13px;
	line-height: 1.7;
	color: rgb(90, 90, 106);
}

.woocommerce div.product .woocommerce-product-details__short-description p,
.woocommerce-page div.product .woocommerce-product-details__short-description p {
	margin-bottom: calc(var(--spacing) * 3);
	font-size: 1em;
}
.woocommerce div.product .woocommerce-product-details__short-description p:last-of-type,
.woocommerce-page div.product .woocommerce-product-details__short-description p:last-of-type {
	margin-bottom: 0;
}


/* = price = */
.woocommerce div.product .price,
.woocommerce-page div.product .price {
	margin: 0;
	font-size: 11px !important;
	color: rgb(154, 154, 154) !important;
}
@media (max-width: 640px) {
	.woocommerce div.product .price,
	.woocommerce-page div.product .price {
		margin-top: 10px;
	}
}

.woocommerce div.product .price > :first-child,
.woocommerce-page div.product .price > :first-child {
	display: block;
}

.woocommerce div.product .price del,
.woocommerce-page div.product .price del,
.woocommerce div.product .price ins,
.woocommerce-page div.product .price ins,
.woocommerce div.product .price .amount,
.woocommerce-page div.product .price .amount {
	font-weight: 800;
	font-size: 32px;
	letter-spacing: -0.04em;
	color: rgb(147, 51, 234);
}
@media (max-width: 1024px) {
	.woocommerce div.product .price del,
	.woocommerce-page div.product .price del,
	.woocommerce div.product .price ins,
	.woocommerce-page div.product .price ins,
	.woocommerce div.product .price .amount,
	.woocommerce-page div.product .price .amount {
		font-size: 26px;
	}
}
@media (max-width: 767px) {
	.woocommerce div.product .price del,
	.woocommerce-page div.product .price del,
	.woocommerce div.product .price ins,
	.woocommerce-page div.product .price ins,
	.woocommerce div.product .price .amount,
	.woocommerce-page div.product .price .amount {
		font-size: 22px;
	}
}
@media (max-width: 480px) {
	.woocommerce div.product .price del,
	.woocommerce-page div.product .price del,
	.woocommerce div.product .price ins,
	.woocommerce-page div.product .price ins,
	.woocommerce div.product .price .amount,
	.woocommerce-page div.product .price .amount {
		font-size: 20px;
	}
}


/* = stock = */
.woocommerce div.product .stock,
.woocommerce-page div.product .stock {
	gap: 5px;
	display: inline-flex;
	align-items: center;
	flex-shrink: 0;
	margin: 0;
	padding: 6px 12px;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	-ms-border-radius: 8px;
	-o-border-radius: 8px;
	border-radius: 8px;
	font-weight: 700;
	font-size: 12px !important;
} 
.woocommerce div.product .stock.in-stock,
.woocommerce-page div.product .stock.in-stock {
	background: var(--completed-background);
  	color: var(--completed-color);
}
.woocommerce div.product .stock.out-of-stock,
.woocommerce-page div.product .stock.out-of-stock {
	background: var(--internal-background);
  	color: var(--internal-color);
}
@media (max-width: 480px) {
	.woocommerce div.product .stock,
	.woocommerce-page div.product .stock {
		font-size: 11px !important;
	}
}
.woocommerce div.product .stock:before,
.woocommerce-page div.product .stock:before {
	display: block;
	width: 13px;
	height: 13px;
	content: '';
	-webkit-mask-repeat: no-repeat;
	-moz-mask-repeat: no-repeat;
	-ms-mask-repeat: no-repeat;
	-o-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	-moz-mask-position: center;
	-ms-mask-position: center;
	-o-mask-position: center;
	mask-position: center;
	-webkit-mask-size: cover;
	-moz-mask-size: cover;
	-ms-mask-size: cover;
	-o-mask-size: cover;
	mask-size: cover;
}
.woocommerce div.product .stock.in-stock:before,
.woocommerce-page div.product .stock.in-stock:before {
	background-color: var(--completed-color);
	-webkit-mask-image: url('../images/icon-completed.svg');
	-moz-mask-image: url('../images/icon-completed.svg');
	-ms-mask-image: url('../images/icon-completed.svg');
	-o-mask-image: url('../images/icon-completed.svg');
	mask-image: url('../images/icon-completed.svg');
}
.woocommerce div.product .stock.out-of-stock:before,
.woocommerce-page div.product .stock.out-of-stock:before {
	background: var(--internal-color);
	-webkit-mask-image: url('../images/icon-received.svg');
	-moz-mask-image: url('../images/icon-received.svg');
	-ms-mask-image: url('../images/icon-received.svg');
	-o-mask-image: url('../images/icon-received.svg');
	mask-image: url('../images/icon-received.svg');
}


/* = number & add btn = */
.woocommerce div.product form.cart,
.woocommerce-page div.product form.cart {
	gap: 12px;
	display: flex;
	align-items: stretch;
	margin: 0;
	padding: 0;
}
@media (max-width: 480px) {
	.woocommerce div.product form.cart,
	.woocommerce-page div.product form.cart {
		flex-wrap: wrap;
	}
}

.woocommerce div.product form.cart::before,
.woocommerce div.product form.cart::after {
	display: none;
}

.woocommerce div.product form.cart div.quantity,
.woocommerce-page div.product form.cart div.quantity {
	float: none;
	display: flex;
	align-items: center;
	margin: 0;
	-webkit-border-radius: var(--radius);
	-moz-border-radius: var(--radius);
	-ms-border-radius: var(--radius);
	-o-border-radius: var(--radius);
	border-radius: var(--radius);
	border: 1px var(--tw-border-style) #EFEFEF;
	overflow: hidden;
}

.woocommerce div.product form.cart div.quantity input[type="number"],
.woocommerce-page div.product form.cart div.quantity input[type="number"] {
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	-ms-box-shadow: none;
	-o-box-shadow: none;
	box-shadow: none;
	border: none  !important;
	font-weight: 700;
	font-size: 16px;
	color: var(--ga-black);
}

.woocommerce div.product form.cart .qty-control button.qty-btn,
.woocommerce-page div.product form.cart .qty-control button.qty-btn {
	display: flex;
	align-items: center;
	justify-content: center;
    width: 40px;
    height: 42px;
    background-color: #F8F8F8;
    cursor: pointer;
}

.qty-control input[type=number]::-webkit-inner-spin-button,
.qty-control input[type=number]::-webkit-outer-spin-button,
.qty-control input[type=number] {
    margin: 0;
    -webkit-appearance: none;
	-moz-appearance: none;
	-ms-appearance: none;
	-o-appearance: none;
	appearance: none;
	-webkit-appearance: textfield;
	-moz-appearance: textfield;
	-ms-appearance: textfield;
	-o-appearance: textfield;
	appearance: textfield;
}


/* = btn = */
.woocommerce div.product .button.btn-purple,
.woocommerce div.product form.cart .button,
.woocommerce-page div.product form.cart .button {
	gap: 8px;
	flex: 1 1 auto;
	padding: 15px 20px;
	-webkit-border-radius: 11px;
	-moz-border-radius: 11px;
	-ms-border-radius: 11px;
	-o-border-radius: 11px;
	border-radius: 11px;
	-webkit-box-shadow: rgba(147, 51, 234, 0.35) 0px 4px 14px;
	-moz-box-shadow: rgba(147, 51, 234, 0.35) 0px 4px 14px;
	-ms-box-shadow: rgba(147, 51, 234, 0.35) 0px 4px 14px;
	-o-box-shadow: rgba(147, 51, 234, 0.35) 0px 4px 14px;
	box-shadow: rgba(147, 51, 234, 0.35) 0px 4px 14px;
	background: linear-gradient(135deg, rgb(147, 51, 234), rgb(124, 58, 237));
	font-size: 14px;
	line-height: 1;
	font-weight: 700;
}
@media (min-width: 768px) and (max-width: 1024px) {
	.woocommerce div.product .btn-purple,
	.woocommerce div.product form.cart .button,
	.woocommerce-page div.product form.cart .button {
		flex-shrink: 0;
		padding: 10px 15px;
		font-size: 13px;
	}
}
@media (max-width: 480px) {
	.woocommerce div.product .button.btn-purple,
	.woocommerce div.product form.cart .button,
	.woocommerce-page div.product form.cart .button {
		font-size: 13px;
	}
}

.woocommerce div.product .button.btn-purple svg,
.woocommerce div.product form.cart .button svg,
.woocommerce-page div.product form.cart .button svg {
	flex-shrink: 0;
}

 
/* = product meta bellow btn = */
.woocommerce div.product .product_meta,
.woocommerce-page div.product .product_meta {
  	gap: 10px;
	display: flex;
	padding-top: calc(var(--spacing) * 4);
	border-top: 1px solid var(--ga-border-soft);
	font-size: 12px;
	color: var(--ga-soft);
}
.woocommerce div.product .product_meta a,
.woocommerce-page div.product .product_meta a {
	font-weight: bolder;
	color: var(--ga-purple);
}


/* === tabs === */
.woocommerce div.product .woocommerce-tabs,
.woocommerce-page div.product .woocommerce-tabs {
	border: 1px solid #EFEFEF;
	-webkit-border-radius: var(--radius-2xl);
	-moz-border-radius: var(--radius-2xl);
	-ms-border-radius: var(--radius-2xl);
	-o-border-radius: var(--radius-2xl);
	border-radius: var(--radius-2xl);
	background: #fff;
	overflow: hidden;
	clear: both;
}

/* == tabs - header == */
.woocommerce div.product .woocommerce-tabs ul.tabs,
.woocommerce-page div.product .woocommerce-tabs ul.tabs {
	display: flex;
	flex-wrap: wrap;
	margin: 0; 
	padding: 0;
	border: 0;
	border-bottom: 1px solid #EFEFEF;
	list-style: none;
}
@media (max-width: 640px) {
	.woocommerce div.product .woocommerce-tabs ul.tabs,
	.woocommerce-page div.product .woocommerce-tabs ul.tabs {
		flex-direction: column;
	}
}

.woocommerce div.product .woocommerce-tabs ul.tabs::before,
.woocommerce-page div.product .woocommerce-tabs ul.tabs::before {
	display: none;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li,
.woocommerce-page div.product .woocommerce-tabs ul.tabs li {
	margin: 0;
	padding: 0;
	background: transparent;
	border: none; 
	border-bottom: 2px solid transparent;
	-webkit-border-radius: initial;
	-moz-border-radius: initial;
	-ms-border-radius: initial;
	-o-border-radius: initial;
	border-radius: initial;
	color: var(--ga-soft);
	cursor: pointer;
	white-space: nowrap;
	-webkit-transition: .2s;
	-moz-transition: .2s;
	-ms-transition: .2s;
	-o-transition: .2s;
	transition: .2s;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active,
.woocommerce-page div.product .woocommerce-tabs ul.tabs li.active {
	border-color: var(--ga-purple);
	background-color: #FAF5FF;
	font-weight: 700;
	color: var(--ga-purple);
}

.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after,
.woocommerce-page div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce-page div.product .woocommerce-tabs ul.tabs li::after {
	display: none;
}


.woocommerce div.product .woocommerce-tabs ul.tabs li a,
.woocommerce-page div.product .woocommerce-tabs ul.tabs li a {
	padding: calc(var(--spacing) * 3.5) calc(var(--spacing) * 6);
	width: 100%;
	font-weight: 500;
	font-size: 13px;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a,
.woocommerce-page div.product .woocommerce-tabs ul.tabs li.active a {
	font-weight: 700;
	color: var(--ga-purple);
}


/* == tabs - body == */
.woocommerce div.product .woocommerce-tabs .panel,
.woocommerce-page div.product .woocommerce-tabs .panel {
	margin: 0;
	padding: calc(var(--spacing) * 6) calc(var(--spacing) * 7);
	font-size: 14px;
}
@media (max-width: 767px) {
	.woocommerce div.product .woocommerce-tabs .panel,
	.woocommerce-page div.product .woocommerce-tabs .panel {
		font-size: 13px;
	}
}	

.woocommerce div.product .woocommerce-tabs .panel h2,
.woocommerce-page div.product .woocommerce-tabs .panel h2 {
	margin-bottom: calc(var(--spacing) * 2);
	font-size: var(--text-xl);
	font-weight: 800;
	line-height: var(--tw-leading, var(--text-xl--line-height));
	letter-spacing: -0.03em;
	color: var(--ga-black);
}
@media (max-width: 767px) {
	.woocommerce div.product .woocommerce-tabs .panel h2,
	.woocommerce-page div.product .woocommerce-tabs .panel h2 {
		font-size: var(--text-lg);
	    line-height: var(--tw-leading, var(--text-lg--line-height));
	}
}

.woocommerce div.product .woocommerce-tabs .panel p,
.woocommerce-page div.product .woocommerce-tabs .panel p {
	font-size: 1em;
	margin-bottom: calc(var(--spacing) * 3);
}
.woocommerce div.product .woocommerce-tabs .panel p:last-of-type,
.woocommerce-page div.product .woocommerce-tabs .panel p:last-of-type {
	margin-bottom: 0;
}


.woocommerce div.product .woocommerce-tabs .panel ul,
.woocommerce-page div.product .woocommerce-tabs .panel ul,
.woocommerce div.product .woocommerce-tabs .panel ol,
.woocommerce-page div.product .woocommerce-tabs .panel ol {
	display: flex;
	align-items: flex-start;
	flex-direction: column;
	margin: 0;
}
.woocommerce div.product .woocommerce-tabs .panel ul,
.woocommerce-page div.product .woocommerce-tabs .panel ul {
	list-style: none;
}

.woocommerce div.product .woocommerce-tabs .panel ul li,
.woocommerce-page div.product .woocommerce-tabs .panel ul li,
.woocommerce div.product .woocommerce-tabs .panel ol li,
.woocommerce-page div.product .woocommerce-tabs .panel ol li {
	position: relative;
	font-size: var(--text-sm);
	line-height: var(--tw-leading,var(--text-sm--line-height));
	color: var(--ga-soft);
}


.woocommerce div.product .woocommerce-tabs .panel ul li,
.woocommerce-page div.product .woocommerce-tabs .panel ul li {
	margin-bottom: calc(var(--spacing)*2);
	padding-left: 15px;
}
.woocommerce div.product .woocommerce-tabs .panel ul li:before,
.woocommerce-page div.product .woocommerce-tabs .panel ul li:before {
	display: block;
	position: absolute;
	top: 8px;
	left: 0;
	width: 6px;
	height: 6px;
	content: '';
	-webkit-border-radius: 100%;
	-moz-border-radius: 100%;
	-ms-border-radius: 100%;
	-o-border-radius: 100%;
	border-radius: 100%;
	background-color: var(--ga-purple);
}

.woocommerce div.product .woocommerce-tabs .panel ol li,
.woocommerce-page div.product .woocommerce-tabs .panel ol li {
	margin-left: 15px;
	padding: 10px;
	border-bottom: 1px solid #EFEFEF;
}

.woocommerce div.product .woocommerce-tabs .panel ol li::marker,
.woocommerce-page div.product .woocommerce-tabs .panel ol li::marker {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	-webkit-border-radius: 100%;
	-moz-border-radius: 100%;
	-ms-border-radius: 100%;
	-o-border-radius: 100%;
	border-radius: 100%;
	background: #FAF5FF;
	font-weight: 800;
	font-size: 12px;
	letter-spacing: -0.02em;
	color: var(--ga-purple);
}



/* === Often bought together - plugin === */
.woocommerce div.product .cuw-fbt-products,
.woocommerce-page div.product .cuw-fbt-products {
	margin: 0 !important;
	padding-inline: calc(var(--spacing) * 6) !important;
	padding-block: calc(var(--spacing) * 5) !important;
	border-radius: var(--radius-2xl);
	border: 1px solid rgba(147, 51, 234, 0.125) !important;
	background: linear-gradient(135deg, rgb(250, 245, 255), rgb(245, 240, 255));
}
@media (max-width: 767px) {
	.woocommerce div.product .cuw-fbt-products,
	.woocommerce-page div.product .cuw-fbt-products {
		padding-inline: calc(var(--spacing) * 4) !important;
		padding-block: calc(var(--spacing) * 3) !important;
	}
}


/* == heading == */
.woocommerce div.product .cuw-fbt-products .cuw-heading,
.woocommerce-page div.product .cuw-fbt-products .cuw-heading {
	gap: calc(var(--spacing) * 2.5);
	display: flex;
	align-items: center;
	position: relative;
	margin-bottom: calc(var(--spacing) * 5) !important;
	font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
	--tw-font-weight: var(--font-weight-extrabold);
    font-weight: var(--font-weight-extrabold);
	--tw-tracking: var(--tracking-tight);
    letter-spacing: var(--tracking-tight);
	color: #0a0a0a;

}
@media (max-width: 767px) {
	.woocommerce div.product .cuw-fbt-products .cuw-heading,
	.woocommerce-page div.product .cuw-fbt-products .cuw-heading {
		margin-bottom: calc(var(--spacing) * 4) !important;
	}
}

.woocommerce div.product .cuw-fbt-products .cuw-heading:before,
.woocommerce-page div.product .cuw-fbt-products .cuw-heading:before {
	display: inline-flex;
	padding: calc(var(--spacing) * 2);
	content: '';
	width: 32px;
	height: 32px;
	border: 1px solid rgba(147, 51, 234, 0.125);
	border-radius: calc(var(--radius) - 2px);
    border-width: 1px;
	background-color: rgb(250, 245, 255);
}

.woocommerce div.product .cuw-fbt-products .cuw-heading:after,
.woocommerce-page div.product .cuw-fbt-products .cuw-heading:after {
	position: absolute;
	top: calc((32px - 15px)/2);
  	left: calc((32px - 15px)/2);
  	width: 15px;
  	height: 15px;
	content: '';
	background-color: var(--ga-purple);
	-webkit-mask-repeat: no-repeat;
	-moz-mask-repeat: no-repeat;
	-ms-mask-repeat: no-repeat;
	-o-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	-moz-mask-position: center;
	-ms-mask-position: center;
	-o-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	-moz-mask-size: contain;
	-ms-mask-size: contain;
	-o-mask-size: contain;
	mask-size: contain;
	-webkit-mask-image: url('../images/lucide-package.svg');
	-moz-mask-image: url('../images/lucide-package.svg');
	-ms-mask-image: url('../images/lucide-package.svg');
	-o-mask-image: url('../images/lucide-package.svg');
	mask-image: url('../images/lucide-package.svg');
}


/* == form == */
.woocommerce div.product .cuw-fbt-products form .cuw-gird,
.woocommerce-page div.product .cuw-fbt-products form .cuw-gird {
	flex-wrap: initial !important;
	width: 100%;
}
@media (max-width: 767px) {
	.woocommerce div.product .cuw-fbt-products form .cuw-gird,
	.woocommerce-page div.product .cuw-fbt-products form .cuw-gird {
		flex-wrap: wrap !important;
		justify-content: space-between;
	}
}


/* = product = */
@media (max-width: 640px) {
	.woocommerce div.product .cuw-fbt-products form .cuw-product,
	.woocommerce-page div.product .cuw-fbt-products form .cuw-product {
	    display: flex;
	    flex-direction: column;
	    align-items: center;
	    margin-bottom: 8px !important;
		width: 100%;
		max-width: none;
	}
}


/* = wrapper = */
.woocommerce div.product .cuw-fbt-products form .cuw-product-wrapper,
.woocommerce-page div.product .cuw-fbt-products form .cuw-product-wrapper {
	height: 100%;
}
@media (max-width: 640px) {
	.woocommerce div.product .cuw-fbt-products form .cuw-product-wrapper,
	.woocommerce-page div.product .cuw-fbt-products form .cuw-product-wrapper {
		display: block !important;
	}
}


/* = card = */
.woocommerce div.product .cuw-fbt-products form .cuw-product-card,
.woocommerce-page div.product .cuw-fbt-products form .cuw-product-card {
	max-width: 150px;
	width: 100% !important;
}
.woocommerce div.product .cuw-fbt-products form .cuw-product:not(.is_main) .cuw-product-card,
.woocommerce-page div.product .cuw-fbt-products form .cuw-product:not(.is_main) .cuw-product-card {
	padding: 10px;
	max-width: 150px;
	border-radius: 12px;
	border: 2px solid var(--ga-purple);
  	background: rgb(250, 245, 255);
}
.woocommerce div.product .cuw-fbt-products form .cuw-product:not(.is_main)[style*="opacity: 0.8"] .cuw-product-card,
.woocommerce-page div.product .cuw-fbt-products form .cuw-product:not(.is_main)[style*="opacity: 0.8"] .cuw-product-card {
	border-color: color-mix(rgb(147, 51, 234) 5%, transparent);
}


/* = actions = */
.woocommerce div.product .cuw-fbt-products form .cuw-product-actions input[type="checkbox"],
.woocommerce-page div.product .cuw-fbt-products form .cuw-product-actions input[type="checkbox"] {
	opacity: 0;
	pointer-events: none;
}


/* = image = */
.woocommerce div.product .cuw-fbt-products form .cuw-product-image,
.woocommerce-page div.product .cuw-fbt-products form .cuw-product-image {
	margin: 0 auto;
	width: 72px !important;
  	height: 72px !important;
  	border-radius: 10px;
  	background: rgb(240, 240, 240);
  	overflow: hidden;
  	cursor: pointer;
}
.woocommerce div.product .cuw-fbt-products form .is_main .cuw-product-image,
.woocommerce-page div.product .cuw-fbt-products form .is_main .cuw-product-image {
	width: 80px !important;
	height: 80px !important;
	border-radius: 12px;
	border: 2px solid var(--ga-purple);
}

.woocommerce div.product .cuw-fbt-products form .cuw-product-image img,
.woocommerce-page div.product .cuw-fbt-products form .cuw-product-image img {
	-webkit-object-fit: cover;
	-moz-object-fit: cover;
	-ms-object-fit: cover;
	-o-object-fit: cover;
	object-fit: cover;
}


/* = title = */
.woocommerce div.product .cuw-fbt-products form .cuw-product-title,
.woocommerce-page div.product .cuw-fbt-products form .cuw-product-title {
	margin-top: 12px !important;
	font-weight: 700;
	font-size: 11px;
	line-height: 1.3;
	text-align: center;
	color: rgb(10, 10, 10);
}


/* = price = */
.woocommerce div.product .cuw-fbt-products form .cuw-product-price,
.woocommerce-page div.product .cuw-fbt-products form .cuw-product-price {
	margin-top: 10px;
	font-weight: 800;
	font-size: 13px;
	color: var(--ga-purple);
}

.woocommerce div.product .cuw-fbt-products form .cuw-product-price del,
.woocommerce-page div.product .cuw-fbt-products form .cuw-product-price del {
  	display: inline-block;
	opacity: .7;
}

.woocommerce div.product .cuw-fbt-products form .cuw-product-price ins,
.woocommerce-page div.product .cuw-fbt-products form .cuw-product-price ins {
  	display: inline-block;
	background: inherit;
}


/* = separator = */
.woocommerce div.product .cuw-fbt-products form .cuw-product-separator,
.woocommerce-page div.product .cuw-fbt-products form .cuw-product-separator {
  	margin: 0 10px !important;
  	font-weight: 600 !important;
	color: var(--ga-purple) !important;
}
@media (max-width: 640px) {
	.woocommerce div.product .cuw-fbt-products form .cuw-product-separator,
	.woocommerce-page div.product .cuw-fbt-products form .cuw-product-separator {
		justify-content: center;
		height: 28px !important;
	}
}


/* == buy == */
.woocommerce div.product .cuw-fbt-products form .cuw-buy-section,
.woocommerce-page div.product .cuw-fbt-products form .cuw-buy-section {
	flex-shrink: 0;
	margin-left: auto;
}
@media (max-width: 767px) {
	.woocommerce div.product .cuw-fbt-products form .cuw-buy-section,
	.woocommerce-page div.product .cuw-fbt-products form .cuw-buy-section {
		flex: 0 0 100%;
		margin-left: 0;
		padding: 15px !important;
	}
}
@media (max-width: 640px) {
	.woocommerce div.product .cuw-fbt-products form .cuw-buy-section,
	.woocommerce-page div.product .cuw-fbt-products form .cuw-buy-section {
		max-width: none !important;
	}
}


.woocommerce div.product .cuw-fbt-products form .cuw-buy-section .cuw-total-price-section,
.woocommerce-page div.product .cuw-fbt-products form .cuw-buy-section .cuw-total-price-section {
	flex-direction: column !important;
  	align-items: flex-start !important;
  	margin-top: 0 !important;
	font-size: 11px;
	color: var(--ga-soft);
}


.woocommerce div.product .cuw-fbt-products form .cuw-buy-section .cuw-total-price-section .cuw-total-price,
.woocommerce-page div.product .cuw-fbt-products form .cuw-buy-section .cuw-total-price-section .cuw-total-price {
	font-weight: 800 !important;
	font-size: 22px !important;
	color: var(--ga-purple);
	letter-spacing: -0.03em;
}
@media (max-width: 767px) {
	.woocommerce div.product .cuw-fbt-products form .cuw-buy-section .cuw-total-price-section .cuw-total-price,
	.woocommerce-page div.product .cuw-fbt-products form .cuw-buy-section .cuw-total-price-section .cuw-total-price {
		font-size: 20px !important;
	}
}
@media (max-width: 480px) {
	.woocommerce div.product .cuw-fbt-products form .cuw-buy-section .cuw-total-price-section .cuw-total-price,
	.woocommerce-page div.product .cuw-fbt-products form .cuw-buy-section .cuw-total-price-section .cuw-total-price {
		font-size: 18px !important;
	}
}

.woocommerce div.product .cuw-fbt-products form .cuw-buy-section .cuw-total-price-section .cuw-total-price del,
.woocommerce-page div.product .cuw-fbt-products form .cuw-buy-section .cuw-total-price-section .cuw-total-price del {
  	display: inline-block;
	opacity: .7;
}

.woocommerce div.product .cuw-fbt-products form .cuw-buy-section .cuw-total-price-section .cuw-total-price ins,
.woocommerce-page div.product .cuw-fbt-products form .cuw-buy-section .cuw-total-price-section .cuw-total-price ins {
  	display: inline-block;
	background: inherit;
}


/* = btn = */
.woocommerce div.product .cuw-fbt-products form .cuw-buy-section .cuw-add-to-cart,
.woocommerce-page div.product .cuw-fbt-products form .cuw-buy-section .cuw-add-to-cart {
	border-radius: 10px;
}
@media (max-width: 767px) {
	.woocommerce div.product .cuw-fbt-products form .cuw-buy-section .cuw-add-to-cart,
	.woocommerce-page div.product .cuw-fbt-products form .cuw-buy-section .cuw-add-to-cart {
	  	padding: 15px;
	  	font-size: 14px;
	}
}

/*--------------------------------------------------------------
# Cart
--------------------------------------------------------------*/
.woocommerce-cart .woocommerce-cart-form,
.woocommerce-cart .cart-collaterals,
.woocommerce-checkout form.checkout,
.woocommerce-account .woocommerce {
	max-width: 1280px;
	margin-left: auto;
	margin-right: auto;
	/* padding-left: 24px;
	padding-right: 24px; */
}

.woocommerce-cart table.cart img {
	width: 72px;
	border-radius: var(--ga-radius);
	background: var(--ga-cream);
}

.woocommerce-cart table.cart td.product-remove a.remove,
.woocommerce a.remove {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	border-radius: 999px;
	background: rgba(220, 38, 38, .06);
	font-size: 22px;
	font-weight: 800;
	line-height: 1;
	color: var(--ga-danger) !important;
	transition: background .25s ease, color .25s ease, transform .25s ease;
}

.woocommerce-cart table.cart td.product-remove a.remove:hover,
.woocommerce a.remove:hover {
	background: var(--ga-danger);
	color: #fff !important;
	transform: scale(1.05);
}

.woocommerce-cart table.cart td.actions {
	padding: 24px;
	background: var(--ga-cream);
}

.woocommerce-cart table.cart td.actions .coupon {
	display: flex;
	gap: 10px;
	align-items: center;
}

.woocommerce-cart table.cart td.actions .coupon .input-text {
	width: 260px;
	/* min-height: 44px; */
	padding: 12px 14px;
}

.woocommerce-cart .cart-collaterals .cart_totals {
	float: none;
	width: min(100%, 480px);
	margin-left: auto;
	padding: 32px;
	border: 1px solid var(--ga-border-soft);
	border-radius: var(--ga-radius-xl);
	background: #fff;
	box-shadow: var(--ga-shadow-soft);
}

.woocommerce-cart .cart-collaterals .cart_totals h2 {
	margin: 0 0 20px;
	font-size: 28px;
	font-weight: 800;
	line-height: 1;
	color: #2a2a2a;
}

.woocommerce-cart .wc-proceed-to-checkout {
	padding: 18px 0 0;
}

/*--------------------------------------------------------------
# Checkout
--------------------------------------------------------------*/
.woocommerce-checkout form.checkout {
	display: grid;
	grid-template-columns: minmax(0, .75fr) minmax(360px, .75fr);
	gap: 32px;
	align-items: start;
}

.woocommerce-checkout #customer_details,
.woocommerce-checkout #order_review,
.woocommerce-checkout .woocommerce-checkout-review-order {
	min-width: 0;
}

.woocommerce-checkout #customer_details,
.woocommerce-checkout #order_review {
	padding: 32px;
	border: 1px solid var(--ga-border-soft);
	border-radius: var(--ga-radius-xl);
	background: #fff;
	box-shadow: var(--ga-shadow-soft);
}

.woocommerce-checkout #order_review_heading {
	max-width: 1280px;
	margin: 0 auto 18px;
	padding: 0 24px;
	font-size: 28px;
	font-weight: 800;
	line-height: 1;
	color: #2a2a2a;
}

.woocommerce-checkout h3,
.woocommerce-billing-fields h3,
.woocommerce-shipping-fields h3,
.woocommerce-additional-fields h3 {
	margin: 0 0 22px;
	font-size: 26px;
	font-weight: 800;
	line-height: 1.1;
	color: #2a2a2a;
}

.woocommerce-checkout-review-order-table {
	box-shadow: none !important;
}

.woocommerce-checkout #payment {
	border-radius: var(--ga-radius-xl);
	background: var(--ga-cream);
	overflow: hidden;
}

.woocommerce-checkout #payment ul.payment_methods {
	padding: 22px;
	border-bottom: 1px solid var(--ga-border-soft);
}

.woocommerce-checkout #payment ul.payment_methods li {
	font-size: 15px;
	font-weight: 700;
	line-height: 1.6;
	color: var(--ga-text);
}


.woocommerce-checkout #payment ul.payment_methods li label {
	display: inline-block;
  	vertical-align: top;
  	cursor: pointer;
}


.woocommerce-checkout #payment div.payment_box {
	border-radius: var(--ga-radius);
	background: #fff;
	font-size: 14px;
	line-height: 1.7;
	color: var(--ga-soft);
}

.woocommerce-checkout #payment div.payment_box::before {
	border-bottom-color: #fff;
}

.woocommerce-checkout #payment div.form-row {
	padding: 22px;
}

.woocommerce-terms-and-conditions-wrapper {
	font-size: 13px;
	line-height: 1.7;
	color: var(--ga-soft);
}

/*--------------------------------------------------------------
# My account / login / logout area
--------------------------------------------------------------*/
.woocommerce-account .woocommerce-MyAccount-navigation {
	width: 100%;
	padding: calc(var(--spacing) * 2);
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
	gap: calc(var(--spacing) * 3);
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	margin: 0;
	padding: 0;
	list-style: none;
}

.woocommerce-account .woocommerce-MyAccount-navigation li {
	margin: 0;
}


.woocommerce-account .woocommerce-MyAccount-navigation a {
	display: flex;
  	align-items: center;
	position: relative;
	padding-block: calc(var(--spacing) * 3.5);
	padding-inline: calc(var(--spacing) * 8);
	border-radius: calc(var(--radius) + 4px);
	border-style: var(--tw-border-style);
	border-width: 1px;
	border-color: var(--ga-border);
	background-color: var(--color-white);
	font-size: var(--text-sm);
	--tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
	line-height: var(--tw-leading,var(--text-sm--line-height));
	color: var(--ga-text);
	cursor: pointer;
	--tw-duration: 300ms;
    transition-duration: 300ms;
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
	border-width: 0;
	--tw-shadow-color: color-mix(in oklab,oklab(55.7537% .134997 -.213369/.3) var(--tw-shadow-alpha),transparent);
	--tw-shadow: 0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);
    box-shadow: var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);
    --tw-gradient-to: var(--ga-purple-dark);
    --tw-gradient-stops: var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position));
    --tw-gradient-from: var(--ga-purple);
    --tw-gradient-position: to right in oklab;
    background-image: linear-gradient(var(--tw-gradient-stops));
    color: var(--color-white);
}
.woocommerce-account .woocommerce-MyAccount-navigation a:hover {
	--tw-shadow: 0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a);
	box-shadow: var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);
	border-color: var(--ga-purple);
}
@media (max-width: 767px) {
	.woocommerce-account .woocommerce-MyAccount-navigation a {
		padding-block: calc(var(--spacing) * 2.5);
		padding-inline: calc(var(--spacing) * 6);
		font-size: var(--text-xs);
	}
}

.woocommerce-account .woocommerce-MyAccount-navigation li[class*="logout"] a:before {
	display: inline-block;
	margin-right: 10px;
	width: 20px;
	height: 20px;
	content: '';
	background-color: var(--ga-purple);
	-webkit-mask-repeat: no-repeat;
	-moz-mask-repeat: no-repeat;
	-ms-mask-repeat: no-repeat;
	-o-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	-moz-mask-position: center;
	-ms-mask-position: center;
	-o-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	-moz-mask-size: contain;
	-ms-mask-size: contain;
	-o-mask-size: contain;
	mask-size: contain;
	-webkit-mask-image: url('../images/icon-logout.svg');
	-moz-mask-image: url('../images/icon-logout.svg');
	-ms-mask-image: url('../images/icon-logout.svg');
	-o-mask-image: url('../images/icon-logout.svg');
	mask-image: url('../images/icon-logout.svg');
}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active[class*="logout"] a:before {
	background-color: #fff;
}


.woocommerce-account .woocommerce-MyAccount-content {
	width: 100%;
	padding: 32px;
	min-height: 700px;
	border: 1px solid var(--ga-border-soft);
	border-radius: var(--ga-radius-xl);
	background: #fff;
	box-shadow: var(--ga-shadow-soft);
	font-size: 15px;
	line-height: 1.8;
	color: var(--ga-text);
}

.woocommerce-account .woocommerce-MyAccount-content p:first-child {
	margin-top: 0;
}

.woocommerce-account .woocommerce-MyAccount-content h2,
.woocommerce-account .woocommerce-MyAccount-content h3,
.woocommerce-account .addresses .title h3 {
	margin: 0 0 18px;
	font-size: 26px;
	font-weight: 800;
	line-height: 1.1;
	color: #2a2a2a;
}

.woocommerce-account .addresses .title .edit {
	float: none;
	display: block;
	margin-bottom: calc(var(--spacing) * 2);
}

.woocommerce-account .woocommerce address,
.woocommerce .woocommerce-customer-details address {
	padding-inline: calc(var(--spacing) * 5);
	padding-block: calc(var(--spacing) * 4);
	border: 1px solid #EFEFEF;
	border-radius: calc(var(--radius) + 4px);
	background-color: #fff;
	font-style: normal;
	line-height: 1.8;
	color: var(--ga-soft);
}

.woocommerce-account .woocommerce-form-login__submit,
.woocommerce-account .woocommerce-form-register__submit {
	margin-right: 12px;
}

.woocommerce-account .woocommerce-LostPassword {
	margin: 16px 0 0;
	font-size: 14px;
	font-weight: 700;
}

/*--------------------------------------------------------------
# Order received / status blocks
--------------------------------------------------------------*/
.woocommerce-order,
.woocommerce-order-received .woocommerce {
	max-width: 1280px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 24px;
	padding-right: 24px;
}

.woocommerce-order-overview,
.woocommerce-thankyou-order-received {
	margin: 0 0 28px;
	padding: 28px;
	border: 1px solid rgba(147, 51, 234, .14);
	border-radius: var(--ga-radius-xl);
	background: var(--ga-gradient-soft);
	box-shadow: var(--ga-shadow-soft);
}

.woocommerce-thankyou-order-received {
	font-size: 20px;
	font-weight: 800;
	line-height: 1.5;
	color: #2a2a2a;
}

.woocommerce ul.order_details {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 12px;
	padding: 0;
	list-style: none;

	display: flex;
	padding: calc(var(--spacing) * 4);
}

.woocommerce ul.order_details li {
	margin: 0;
	padding: 18px;
	border: 1px solid var(--ga-border-soft);
	border-radius: var(--ga-radius-lg);
	background: #fff;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .06em;
	text-transform: uppercase;
	color: var(--ga-soft);
}

.woocommerce ul.order_details li strong {
	display: block;
	margin-top: 8px;
	font-size: 15px;
	letter-spacing: 0;
	text-transform: none;
	color: #2a2a2a;
}

/*--------------------------------------------------------------
# Widgets / filters / sidebar
--------------------------------------------------------------*/
.woocommerce .site-main .widget,
.woocommerce-page .site-main .widget {
	padding: 24px;
	border: 1px solid var(--ga-border-soft);
	border-radius: var(--ga-radius-xl);
	background: #fff;
	box-shadow: var(--ga-shadow-soft);
}

.woocommerce .site-main .widget h2,
.woocommerce .site-main .widget .site-main .widget-title,
.woocommerce-page .site-main .widget h2,
.woocommerce-page .site-main .widget .site-main .widget-title {
	margin: 0 0 18px;
	font-size: 20px;
	font-weight: 800;
	line-height: 1.2;
	color: #2a2a2a;
}

.woocommerce .site-main .widget ul,
.woocommerce-page .site-main .widget ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.woocommerce .site-main .widget li,
.woocommerce-page .site-main .widget li {
	padding: 10px 0;
	border-bottom: 1px solid var(--ga-border-soft);
	font-size: 14px;
	font-weight: 700;
	color: var(--ga-soft);
}

.woocommerce .site-main .widget li:last-child,
.woocommerce-page .site-main .widget li:last-child {
	border-bottom: 0;
}

.woocommerce .site-main .widget_price_filter .ui-slider .ui-slider-range,
.woocommerce .site-main .widget_price_filter .ui-slider .ui-slider-handle {
	background: var(--ga-purple);
}

.woocommerce .site-main .widget_price_filter .price_slider_wrapper .ui-widget-content {
	background: rgba(147, 51, 234, .16);
}

/*--------------------------------------------------------------
# Pagination
--------------------------------------------------------------*/
.woocommerce nav.woocommerce-pagination,
.woocommerce-page nav.woocommerce-pagination {
	margin: 0 auto calc(var(--spacing) * 10);
	padding: calc(var(--spacing) * 1) calc(var(--spacing) * 6);
	max-width: var(--container-7xl);
}

.woocommerce nav.woocommerce-pagination ul,
.woocommerce-page nav.woocommerce-pagination ul {
	display: flex;
	justify-content: center;
	gap: 8px;
	margin: 0;
	padding: 0;
	border: 0;
	list-style: none;
}

.woocommerce nav.woocommerce-pagination ul li,
.woocommerce-page nav.woocommerce-pagination ul li {
	padding: 10px 0;
	border: 0;
}

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span,
.woocommerce-page nav.woocommerce-pagination ul li a,
.woocommerce-page nav.woocommerce-pagination ul li span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border: 1px solid var(--ga-border-soft);
	border-radius: 999px;
	background: #fff;
	font-size: 14px;
	font-weight: 800;
	color: var(--ga-soft);
	transition: background .25s ease, border-color .25s ease, color .25s ease, transform .25s ease;
}

.woocommerce nav.woocommerce-pagination ul li span.current,
.woocommerce-page nav.woocommerce-pagination ul li span.current {
	border-color: rgba(147, 51, 234, .2);
	background: var(--ga-gradient);
	color: #fff;
}
.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce-page nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li a:focus,
.woocommerce-page nav.woocommerce-pagination ul li a:focus {
	border-color: rgba(147, 51, 234, .55);
	background: #fff;
	--tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--ga-purple) 30%, transparent) var(--tw-shadow-alpha), transparent);
	--tw-shadow: 0 5px 10px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 3px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
	box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
/*--------------------------------------------------------------
# Mini cart / block cart compatibility
--------------------------------------------------------------*/
.woocommerce-mini-cart {
	margin: 0;
	padding: 0;
	list-style: none;
}

.woocommerce-mini-cart li {
	padding: 14px 0;
	border-bottom: 1px solid var(--ga-border-soft);
}

.woocommerce-mini-cart__total {
	padding-top: 16px;
	font-weight: 800;
	color: #2a2a2a;
}

.woocommerce-mini-cart__buttons {
	display: flex;
	gap: 10px;
	margin: 16px 0 0;
}

.woocommerce-mini-cart__buttons .button {
	flex: 1 1 auto;
	/* min-height: 44px; */
	padding: 12px 16px;
	font-size: 13px;
}

.wc-block-components-button,
.wc-block-cart__submit-button,
.wc-block-components-checkout-place-order-button {
	border-radius: 18px !important;
	background: var(--ga-gradient) !important;
	box-shadow: var(--ga-shadow) !important;
	font-family: var(--ga-font-sans) !important;
	font-weight: 800 !important;
	color: #fff !important;
	--tw-duration: 300ms;
    transition-duration: 300ms;
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
}
.wc-block-components-button:hover,
.wc-block-cart__submit-button:hover,
.wc-block-components-checkout-place-order-button:hover {
	--tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--ga-purple) 30%, transparent) var(--tw-shadow-alpha), transparent) !important;
	--tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1)) !important;
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow) !important;
}

.wc-block-components-text-input input,
.wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input,
.wc-block-components-form .wc-block-components-text-input input[type='email'],
.wc-block-components-form .wc-block-components-text-input input[type='tel'],
.wc-block-components-form .wc-block-components-text-input input[type='text'],
.wc-block-components-form .wc-block-components-text-input input[type='url'] {
	border-radius: var(--ga-radius) !important;
	border-color: var(--ga-border) !important;
	font-family: var(--ga-font-sans) !important;
}

.wc-block-cart-items,
.wc-block-components-totals-wrapper,
.wc-block-checkout__order-review {
	border-color: var(--ga-border-soft) !important;
}

/*--------------------------------------------------------------
# Loading / states
--------------------------------------------------------------*/
.woocommerce .blockUI.blockOverlay,
.woocommerce-page .blockUI.blockOverlay {
	border-radius: var(--ga-radius-lg);
	background: rgba(255, 255, 255, .7) !important;
	backdrop-filter: blur(6px);
}

.woocommerce .loader::before,
.woocommerce-page .loader::before {
	border-top-color: var(--ga-purple);
}

/*--------------------------------------------------------------
# Responsive
--------------------------------------------------------------*/
@media (max-width: 1024px) {
	.woocommerce ul.products,
	.woocommerce-page ul.products {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.woocommerce-checkout form.checkout {
		grid-template-columns: 1fr;
	}

	.woocommerce-account .woocommerce-MyAccount-navigation,
	.woocommerce-account .woocommerce-MyAccount-content {
		float: none;
		width: 100%;
	}

	.woocommerce-account .woocommerce-MyAccount-navigation {
		margin-bottom: 24px;
	}

	.woocommerce ul.order_details {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	.woocommerce .woocommerce-products-header,
	.woocommerce-page .woocommerce-products-header,
	.woocommerce-account .woocommerce,
	.woocommerce-cart .woocommerce,
	.woocommerce-checkout .woocommerce,
	.woocommerce-cart .woocommerce-cart-form,
	.woocommerce-cart .cart-collaterals,
	.woocommerce-checkout form.checkout,
	.woocommerce-order,
	.woocommerce-order-received .woocommerce,
	.woocommerce div.product,
	.woocommerce-page div.product {
		/* padding-left: 16px;
		padding-right: 16px; */
	}

	.woocommerce .woocommerce-products-header__title,
	.woocommerce-page .page-title,
	.woocommerce-account .entry-title,
	.woocommerce-cart .entry-title,
	.woocommerce-checkout .entry-title,
	.woocommerce-order-received .entry-title {
		font-size: 36px;
	}

	.woocommerce ul.products,
	.woocommerce-page ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.woocommerce ul.products li.product .woocommerce-loop-product__title,
	.woocommerce-page ul.products li.product .woocommerce-loop-product__title {
		padding: 18px 18px 8px;
		font-size: 16px;
	}

	.woocommerce ul.products li.product .price,
	.woocommerce-page ul.products li.product .price {
		padding: 0 18px 16px;
		font-size: 16px;
	}


	.woocommerce ul.products li.product .button,
	.woocommerce-page ul.products li.product .button {
		/* width: calc(100% - 36px);
		margin: 4px 18px 18px;
		font-size: 13px; */
	}

	.woocommerce-cart table.cart td.actions .coupon .input-text {
		width: 100%;
	}

	.woocommerce table.shop_table_responsive tr,
	.woocommerce-page table.shop_table_responsive tr {
		border-bottom: 1px solid var(--ga-border-soft);
	}

	.woocommerce table.shop_table_responsive tr td,
	.woocommerce-page table.shop_table_responsive tr td {
		padding: 14px 16px;
		border-bottom: 0;
	}

	.woocommerce table.shop_table_responsive.my_account_orders td {
		border-bottom: 1px solid var(--ga-border-soft);
	}
	

	.woocommerce table.shop_table_responsive tr td::before,
	.woocommerce-page table.shop_table_responsive tr td::before {
		font-weight: 800;
		color: #2a2a2a;
	}

	.woocommerce-cart .cart-collaterals .cart_totals,
	.woocommerce-checkout #customer_details,
	.woocommerce-checkout #order_review,
	.woocommerce-account .woocommerce-MyAccount-content,
	.woocommerce-account .woocommerce-MyAccount-navigation,
	.woocommerce form.login,
	.woocommerce form.register,
	.woocommerce form.checkout_coupon,
	.woocommerce form.lost_reset_password {
		padding: 22px;
		border-radius: var(--ga-radius-lg);
	}
	.woocommerce-account .woocommerce-MyAccount-navigation {
		padding: calc(var(--spacing) * 2);
	}
}

@media (max-width: 480px) {
	.woocommerce .woocommerce-products-header,
	.woocommerce-page .woocommerce-products-header,
	.woocommerce-account .woocommerce,
	.woocommerce-cart .woocommerce,
	.woocommerce-checkout .woocommerce {
		padding-inline: calc(var(--spacing) * 3);
	}


	.woocommerce ul.products,
	.woocommerce-page ul.products {
		grid-template-columns: 1fr;
		margin-bottom: calc(var(--spacing) * 6);
		padding: calc(var(--spacing) * 3);
	}

	.woocommerce-account .woocommerce-MyAccount-navigation ul,
	.woocommerce ul.order_details {
		grid-template-columns: 1fr;
	}

	.woocommerce nav.woocommerce-pagination,
	.woocommerce-page nav.woocommerce-pagination {
		margin-bottom: calc(var(--spacing) * 6);
		padding: calc(var(--spacing) * 3);
	}

	.woocommerce a.button,
	.woocommerce button.button,
	.woocommerce input.button,
	.woocommerce #respond input#submit,
	.woocommerce-page a.button,
	.woocommerce-page button.button,
	.woocommerce-page input.button,
	.woocommerce-page #respond input#submit {
		width: 100%;
	}
}


/*--------------------------------------------------------------
## MW Woocommerce - START
--------------------------------------------------------------*/
.entry-content > div[class*="woocommerce"],
.single .site-main .post-navigation,
body:not(.search) .product .entry-header {
	position: relative;
	margin-inline: auto;
	padding: calc(var(--spacing) * 6);
	max-width: var(--container-7xl);
}

.entry-content > div[class*="woocommerce"] {
	gap: 10px;
	display: flex;
	flex-direction: column;
	margin-top: 0 !important;
	padding-top: calc(var(--spacing) * 12) !important;
}
.entry-content > div[class*="woocommerce"]:before,
.entry-content > div[class*="woocommerce"]:after {
	display: none;
}

.product .entry-header {
	padding-block: 0;
}


body:not(.search) .product .entry-header .entry-title {
	font-weight: 700;
	font-size: clamp(24px, 3vw, 34px);
}



/* === quantity === */
div[class*="quantity-selector"] {
	width: auto;
	border: none;
}


div[class*="quantity"] input[type="number"] {
	padding: 8px 10px;
	min-width: 40px;
}
div[class*="quantity"] input[type="number"]:focus {
	--tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--ga-purple) 30%, transparent) var(--tw-shadow-alpha), transparent);
	--tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
	box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
	border-color: rgba(147, 51, 234, .55) !important;
}

div[class*="quantity"] button[class*="quantity"] {
	margin: 0 5px;
	padding: 8px 16px;	
}
div[class*="quantity"] button[class*="quantity"]:focus {
	border: 1px solid rgba(147, 51, 234, .55) !important;
	--tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--ga-purple) 30%, transparent) var(--tw-shadow-alpha), transparent);
	--tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
	box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}



/* === checkout form === */
form[class*="checkout"] .wc-block-components-radio-control .wc-block-components-radio-control__input:checked:before {
	background-color: var(--ga-purple);
}

form[class*="checkout"] .wc-block-components-checkbox .wc-block-components-checkbox__mark {
	fill: var(--ga-purple);
}


form[class*="checkout"].wc-block-components-form .wc-block-components-text-input.has-error input:focus,
form[class*="checkout"] .wc-block-components-text-input.has-error input:focus {
	-webkit-box-shadow: 0 0 1px #cc1818;
	-moz-box-shadow: 0 0 1px #cc1818;
	-ms-box-shadow: 0 0 1px #cc1818;
	-o-box-shadow: 0 0 1px #cc1818;
	box-shadow: 0 0 1px #cc1818;
}


.wc-block-components-sidebar .wp-block-woocommerce-checkout-order-summary-block {
	border-radius: var(--ga-radius)
}
/*--------------------------------------------------------------
## MW Woocommerce - END
--------------------------------------------------------------*/



/*--------------------------------------------------------------
## Woocommerce Product list widget - START
--------------------------------------------------------------*/
.panel-grid:has(.widget_woocommerce_products) {
	position: relative;
	margin-inline: auto;
	padding: calc(var(--spacing) * 6);
	max-width: var(--container-7xl);
}


/* === title === */
.widget_woocommerce_products h3.widget-title {
	--tw-space-y-reverse: 0;
	margin-block-end: calc(var(--spacing) * 12);
	font-size: var(--text-3xl);
    line-height: var(--tw-leading, var(--text-3xl--line-height));
	--tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
    --tw-leading: 0.95;
    line-height: 0.95;
	text-transform: uppercase;
	text-align: center;
	color: #2a2a2a;
}
@media (width >= 48rem) {
 	.widget_woocommerce_products h3.widget-title {
 		font-size: var(--text-4xl);
        line-height: var(--tw-leading, var(--text-4xl--line-height));
 	}
}
@media (width >= 64rem) {
	.widget_woocommerce_products h3.widget-title {
		font-size: var(--text-5xl);
        line-height: var(--tw-leading, var(--text-5xl--line-height));
	}
}

.widget_woocommerce_products h3.widget-title:after {
	display: block;
	margin-inline: auto;
	margin-top: calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)));
	width: calc(var(--spacing) * 20);
	height: 1px;
	content: '';
	--tw-gradient-to: #A855F7;
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
    --tw-gradient-from: var(--ga-purple);
    --tw-gradient-position: to right in oklab;
    background-image: linear-gradient(var(--tw-gradient-stops));
}


/* === list === */
.widget_woocommerce_products ul {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 32px;
	margin: 0 auto 64px;
	list-style: none;
}
@media (max-width: 1024px) {
	.widget_woocommerce_products ul {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 24px;
	}
}
@media (max-width: 767px) {
	.widget_woocommerce_products ul {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 16px;
	}
}
@media (max-width: 480px) {
	.widget_woocommerce_products ul {
		grid-template-columns: 1fr;
	}
}


.widget_woocommerce_products ul li {
	display: flex;
	flex-direction: column;
	position: relative;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 1px solid var(--ga-border-soft);
	-webkit-border-radius: var(--ga-radius-xl);
	-moz-border-radius: var(--ga-radius-xl);
	-ms-border-radius: var(--ga-radius-xl);
	-o-border-radius: var(--ga-radius-xl);
	border-radius: var(--ga-radius-xl);
	background: #fff;
	-webkit-box-shadow: var(--ga-shadow-soft);
	-moz-box-shadow: var(--ga-shadow-soft);
	-ms-box-shadow: var(--ga-shadow-soft);
	-o-box-shadow: var(--ga-shadow-soft);
	box-shadow: var(--ga-shadow-soft);
	overflow: hidden;
	transition: transform .35s ease, border-color .35s ease, box-shadow .35s ease;
}
.widget_woocommerce_products ul li:hover {
	transform: translateY(-6px);
	border-color: rgba(147, 51, 234, .55);
	-webkit-box-shadow: var(--ga-shadow-lg);
	-moz-box-shadow: var(--ga-shadow-lg);
	-ms-box-shadow: var(--ga-shadow-lg);
	-o-box-shadow: var(--ga-shadow-lg);
	box-shadow: var(--ga-shadow-lg);
}


.widget_woocommerce_products ul li > a {
	padding-bottom: 24px;
}
@media (max-width: 767px) {
	.widget_woocommerce_products ul li > a {
		padding-bottom: 18px;
	}
}
.widget_woocommerce_products ul li > a:has(+ .amount) {
	padding-bottom: 0;
}


/* == img == */
.widget_woocommerce_products ul li img {
	float: none !important;
	margin: 0 !important;
	width: 100% !important;
	height: auto !important;
	background: var(--ga-cream);
	-webkit-object-fit: cover;
	-moz-object-fit: cover;
	-ms-object-fit: cover;
	-o-object-fit: cover;
	object-fit: cover;
	aspect-ratio: 1 / 1;
}


/* == title == */
.widget_woocommerce_products ul li .product-title {
	display: block;
	margin: 0;
	padding: 24px 24px 8px;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.15;
	color: #2a2a2a;
}
@media (max-width: 767px) {
	.widget_woocommerce_products ul li .product-title {
		padding: 18px 18px 8px;
		font-size: 16px;
	}
}


/* == price == */
.widget_woocommerce_products ul li .amount {
	display: block;
	padding: 0 24px 18px;
	font-size: 18px;
	font-weight: 700;
	color: var(--ga-purple);
}
@media (max-width: 767px) {
	.widget_woocommerce_products ul li .amount {
		padding: 0 18px 16px;
		font-size: 16px;
	}
}
/*--------------------------------------------------------------
## Woocommerce Product list widget - END
--------------------------------------------------------------*/


/*--------------------------------------------------------------
## Woocommerce Brand-thumbnails - START
--------------------------------------------------------------*/
#ga-home-brands h3.widget-title {
  	gap: 8px;
	display: flex;
  	align-items: center;
	position: relative;
	flex-shrink: 0;
	font-weight: 700;
	font-size: 9px;
	color: #C0C0C8;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	white-space: nowrap;
}

#ga-home-brands h3.widget-title:after {
	display: inline-block;
	margin-right: 4px;
	width: 1px;
	height: 20px;
	content: '';
	background-color: #EFEFEF;
}


#ga-home-brands ul li {
	margin: 0; 
}


#ga-home-brands ul li a:hover img {
	filter: brightness(0) saturate(100%) invert(23%) sepia(66%) saturate(4230%) hue-rotate(264deg) brightness(94%) contrast(94%);
}
/*--------------------------------------------------------------
## Woocommerce Brand-thumbnails - END
--------------------------------------------------------------*/
