/* 
 * Hersonders WooCommerce Styles 
 * Dribbble-style premium aesthetic across all WooCommerce pages
 */

/* General WooCommerce Fixes */
.page-id-12 .wc-block-components-order-summary-item .wc-block-components-product-metadata .wc-block-components-product-details + .wc-block-components-product-details,
.woocommerce-checkout .wc-block-components-order-summary-item .wc-block-components-product-metadata .wc-block-components-product-details + .wc-block-components-product-details {
	display: none !important;
}

/* Transparent Header Logo White Override for Safari & Real Devices */
.site-header.transparent-header:not(.is-scrolled) .site-logo,
.site-header.transparent-header:not(.is-scrolled) .custom-logo-link,
.site-header.transparent-header:not(.is-scrolled) .custom-logo-link img,
.site-header.transparent-header:not(.is-scrolled) .site-branding img,
.site-header.transparent-header:not(.is-scrolled) .site-branding a {
	-webkit-filter: brightness(0) invert(1) !important;
	filter: brightness(0) invert(1) !important;
	color: #ffffff !important;
}

/* Top Announcement Marquee Ticker Font Size Fix */
.top-marquee-ticker {
	background: var(--color-primary, #7500c0) !important;
	color: #ffffff !important;
	padding: 8px 0 !important;
	overflow: hidden !important;
	white-space: nowrap !important;
}

.top-marquee-ticker span,
.top-marquee-ticker .marquee-content span {
	font-size: 0.78rem !important;
	font-weight: 600 !important;
	letter-spacing: 0.06em !important;
	text-transform: uppercase !important;
	color: #ffffff !important;
	padding: 0 1rem !important;
}

@media (max-width: 768px) {
	.top-marquee-ticker {
		padding: 6px 0 !important;
	}
	.top-marquee-ticker span,
	.top-marquee-ticker .marquee-content span {
		font-size: 0.68rem !important;
		letter-spacing: 0.04em !important;
		padding: 0 0.6rem !important;
	}
}

/* Hide Login Prompt at Bottom of Side Cart Drawer */
.cart-drawer-login-prompt,
.cart-drawer .login-prompt,
.cart-drawer p:has(a[href*="my-account"]),
.cart-drawer a[href*="my-account"],
.widget_shopping_cart .login-prompt,
.widget_shopping_cart_content .login-prompt,
div[class*="login-prompt"] {
	display: none !important;
}

/* Single Product Reviews Section Modern Styling */
#reviews #comments {
	margin-bottom: 2.5rem !important;
}

#reviews #reply-title {
	font-size: 1.4rem !important;
	font-weight: 800 !important;
	color: #111111 !important;
	margin-bottom: 0.75rem !important;
}

#reviews #commentform {
	background: #ffffff !important;
	border: 1px solid rgba(0, 0, 0, 0.08) !important;
	border-radius: 20px !important;
	padding: 2rem !important;
	box-shadow: 0 10px 30px -10px rgba(0, 0, 0, 0.04) !important;
	margin-top: 1.5rem !important;
}

#reviews #commentform label {
	display: block !important;
	font-size: 0.85rem !important;
	font-weight: 700 !important;
	color: #333333 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.05em !important;
	margin-bottom: 0.5rem !important;
}

#reviews #commentform input[type="text"],
#reviews #commentform input[type="email"],
#reviews #commentform textarea {
	width: 100% !important;
	padding: 14px 18px !important;
	border: 1.5px solid #eaeaea !important;
	border-radius: 12px !important;
	background: #fafafa !important;
	font-size: 0.95rem !important;
	color: #111111 !important;
	outline: none !important;
	transition: all 0.2s ease !important;
	box-sizing: border-box !important;
}

#reviews #commentform input[type="text"]:focus,
#reviews #commentform input[type="email"]:focus,
#reviews #commentform textarea:focus {
	border-color: var(--color-primary, #7500c0) !important;
	background: #ffffff !important;
	box-shadow: 0 0 0 3px rgba(117, 0, 192, 0.12) !important;
}

#reviews #commentform .comment-form-author,
#reviews #commentform .comment-form-email {
	width: 100% !important;
	margin-bottom: 1.25rem !important;
	float: none !important;
}

@media (min-width: 640px) {
	#reviews #commentform .comment-form-author,
	#reviews #commentform .comment-form-email {
		width: 48% !important;
		display: inline-block !important;
		vertical-align: top !important;
	}
	#reviews #commentform .comment-form-author {
		margin-right: 3% !important;
	}
}

#reviews #commentform .comment-form-comment {
	width: 100% !important;
	margin-bottom: 1.25rem !important;
}

#reviews #commentform .comment-form-cookies-consent {
	display: flex !important;
	align-items: center !important;
	gap: 10px !important;
	margin-bottom: 1.5rem !important;
	font-size: 0.9rem !important;
	color: #666666 !important;
}

#reviews #commentform .form-submit #submit,
#reviews #commentform input[type="submit"],
#reviews #commentform button[type="submit"] {
	background-color: var(--color-primary, #7500c0) !important;
	color: #ffffff !important;
	border-radius: 50px !important;
	padding: 14px 32px !important;
	font-weight: 700 !important;
	font-size: 0.95rem !important;
	text-transform: uppercase !important;
	letter-spacing: 0.05em !important;
	border: none !important;
	cursor: pointer !important;
	box-shadow: 0 8px 20px -6px rgba(117, 0, 192, 0.4) !important;
	transition: all 0.25s ease !important;
}

#reviews #commentform .form-submit #submit:hover,
#reviews #commentform input[type="submit"]:hover,
#reviews #commentform button[type="submit"]:hover {
	background-color: var(--color-primary-hover, #5e019c) !important;
	transform: translateY(-2px) !important;
	box-shadow: 0 12px 25px -6px rgba(117, 0, 192, 0.5) !important;
}

.woocommerce #reviews #comments ol.commentlist li .comment-text {
	border: 1px solid #eaeaea !important;
	border-radius: 16px !important;
	padding: 1.25rem !important;
	background: #ffffff !important;
}

/* Toast Notification Overflow Fix */
#hersonders-toast-container {
	position: fixed !important;
	bottom: 24px !important;
	left: 50% !important;
	transform: translateX(-50%) !important;
	z-index: 9999999 !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	gap: 10px !important;
	pointer-events: none !important;
	max-width: 90vw !important;
}

.hersonders-toast {
	background: #ffffff !important;
	color: #111111 !important;
	padding: 12px 24px !important;
	border-radius: 50px !important;
	box-shadow: 0 12px 35px rgba(0, 0, 0, 0.18), 0 2px 8px rgba(0, 0, 0, 0.06) !important;
	border: 1px solid rgba(0, 0, 0, 0.08) !important;
	font-size: 0.9rem !important;
	font-weight: 600 !important;
	display: flex !important;
	align-items: center !important;
	gap: 12px !important;
	pointer-events: auto !important;
	max-width: calc(100vw - 32px) !important;
	width: max-content !important;
	text-align: left !important;
	line-height: 1.4 !important;
	box-sizing: border-box !important;
}

.hersonders-toast .toast-icon {
	color: #ffffff !important;
	background: var(--color-primary, #7500c0) !important;
	border-radius: 50% !important;
	width: 24px !important;
	height: 24px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	font-weight: 800 !important;
	font-size: 0.9rem !important;
	flex-shrink: 0 !important;
}

.hersonders-toast .toast-text {
	flex: 1 1 auto !important;
	min-width: 0 !important;
	width: 100% !important;
	display: block !important;
	white-space: normal !important;
	word-wrap: break-word !important;
	overflow-wrap: anywhere !important;
}

/* Thank You Page Details Grid Fix (Laptop & Desktop & Mobile) */
.hersonders-thankyou-wrapper .woocommerce-order-overview.thankyou-details-grid {
	display: grid !important;
	grid-template-columns: repeat(5, 1fr) !important;
	gap: 1.25rem 1rem !important;
	list-style: none !important;
	padding: 1.75rem 2rem !important;
	margin: 2rem 0 2.5rem 0 !important;
	background: #ffffff !important;
	border: 1px solid rgba(0, 0, 0, 0.08) !important;
	border-radius: 20px !important;
	box-shadow: 0 10px 30px -10px rgba(0, 0, 0, 0.04) !important;
}

@media (max-width: 1100px) {
	.hersonders-thankyou-wrapper .woocommerce-order-overview.thankyou-details-grid {
		grid-template-columns: repeat(3, 1fr) !important;
	}
}

@media (max-width: 640px) {
	.hersonders-thankyou-wrapper .woocommerce-order-overview.thankyou-details-grid {
		grid-template-columns: repeat(1, 1fr) !important;
		padding: 1.25rem 1.5rem !important;
	}
}

.hersonders-thankyou-wrapper .woocommerce-order-overview.thankyou-details-grid li {
	border-right: 1px dashed #e0e0e0 !important;
	padding: 0 1rem 0 0 !important;
	margin: 0 !important;
	float: none !important;
	display: flex !important;
	flex-direction: column !important;
	justify-content: center !important;
	word-break: break-word !important;
	overflow-wrap: anywhere !important;
}

.hersonders-thankyou-wrapper .woocommerce-order-overview.thankyou-details-grid li:last-child {
	border-right: none !important;
	padding-right: 0 !important;
}

@media (max-width: 1100px) {
	.hersonders-thankyou-wrapper .woocommerce-order-overview.thankyou-details-grid li:nth-child(3n) {
		border-right: none !important;
	}
}

@media (max-width: 640px) {
	.hersonders-thankyou-wrapper .woocommerce-order-overview.thankyou-details-grid li {
		border-right: none !important;
		border-bottom: 1px dashed #e0e0e0 !important;
		padding: 0.75rem 0 !important;
	}
	.hersonders-thankyou-wrapper .woocommerce-order-overview.thankyou-details-grid li:last-child {
		border-bottom: none !important;
	}
}

.hersonders-thankyou-wrapper .woocommerce-order-overview.thankyou-details-grid li .detail-label {
	font-size: 0.75rem !important;
	text-transform: uppercase !important;
	letter-spacing: 0.08em !important;
	color: #888888 !important;
	font-weight: 600 !important;
	margin-bottom: 0.35rem !important;
	display: block !important;
}

.hersonders-thankyou-wrapper .woocommerce-order-overview.thankyou-details-grid li .detail-value {
	font-size: 0.95rem !important;
	font-weight: 700 !important;
	color: #111111 !important;
	display: block !important;
	line-height: 1.3 !important;
}

.hersonders-thankyou-wrapper .woocommerce-order-overview.thankyou-details-grid li .highlight-price {
	color: var(--color-primary, #7500c0) !important;
	font-size: 1.1rem !important;
}

/* Mobile Sticky Add to Cart Bar */
.hersonders-mobile-sticky-bar {
	display: none;
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	width: 100%;
	background: #ffffff;
	border-top: 1px solid rgba(0,0,0,0.08);
	box-shadow: 0 -10px 25px rgba(0,0,0,0.1);
	z-index: 9990;
	padding: 10px 16px;
	transform: translateY(100%);
	transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1);
}

.hersonders-mobile-sticky-bar.is-active {
	transform: translateY(0);
}

@media (max-width: 768px) {
	.hersonders-mobile-sticky-bar {
		display: block;
	}
}

.sticky-atc-container {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	max-width: 100%;
}

.sticky-atc-product {
	display: flex;
	align-items: center;
	gap: 10px;
	overflow: hidden;
	flex: 1;
}

.sticky-atc-thumb img {
	width: 44px;
	height: 44px;
	object-fit: cover;
	border-radius: 8px;
}

.sticky-atc-info {
	display: flex;
	flex-direction: column;
	overflow: hidden;
}

.sticky-atc-title {
	font-size: 0.85rem;
	font-weight: 700;
	color: #111;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.sticky-atc-price {
	font-size: 0.8rem;
	font-weight: 600;
	color: var(--color-primary, #7500c0);
}

.sticky-atc-btn {
	background: var(--color-primary, #7500c0) !important;
	color: #ffffff !important;
	border: none !important;
	border-radius: 50px !important;
	padding: 10px 18px !important;
	font-size: 0.85rem !important;
	font-weight: 700 !important;
	white-space: nowrap !important;
	cursor: pointer !important;
	flex-shrink: 0 !important;
}

.woocommerce form .form-row input.input-text, 
.woocommerce form .form-row textarea {
	border: 2px solid var(--color-border);
	border-radius: 8px;
	padding: 12px 16px;
	background: var(--color-bg);
	transition: all var(--transition-fast);
	box-shadow: none;
}
.woocommerce form .form-row input.input-text:focus, 
.woocommerce form .form-row textarea:focus {
	border-color: var(--color-primary);
	background: var(--color-white);
	outline: none;
	box-shadow: 0 0 0 3px var(--color-primary-light);
}

.woocommerce button.button {
	background-color: var(--color-primary);
	color: var(--color-white);
	border-radius: 50px;
	padding: 12px 24px;
	font-weight: 600;
	transition: all var(--transition-normal);
	box-shadow: var(--shadow-primary);
	border: none;
}
.woocommerce button.button:hover {
	background-color: var(--color-primary-hover);
	transform: translateY(-2px);
	box-shadow: 0 15px 30px -5px rgba(94, 1, 156, 0.5);
	color: var(--color-white);
}
.woocommerce button.button.loading::after, .woocommerce a.button.loading::after { display: none !important; } /* Hide default woo spinner */

/* Single Product Page */
.woocommerce div.product {
	display: flex;
	flex-wrap: wrap;
	gap: 4rem;
	margin: 2rem auto;
	max-width: 1200px;
	padding: 0 2rem;
}
.woocommerce div.product div.images {
	width: calc(50% - 2rem);
	background: transparent;
}
.woocommerce div.product div.images img {
	border-radius: 24px;
	box-shadow: var(--shadow-md);
	width: 100%;
	display: block;
}
.woocommerce div.product div.summary {
	width: calc(50% - 2rem);
}
.woocommerce div.product .product_title {
	font-size: 2rem;
	font-weight: 800;
	margin-bottom: 1rem;
	letter-spacing: -0.03em;
}
.woocommerce div.product p.price {
	color: var(--color-primary);
	font-size: 1.5rem;
	font-weight: 700;
	margin-bottom: 1.5rem;
}

/* Product Tabs */
.woocommerce div.product .woocommerce-tabs {
	width: 100%;
	margin-top: 4rem;
	border-top: 1px solid var(--color-border);
	padding-top: 2rem;
}
.woocommerce div.product .woocommerce-tabs ul.tabs {
	display: flex;
	gap: 2rem;
	margin: 0 0 2rem 0;
	padding: 0;
	list-style: none;
	border-bottom: 2px solid var(--color-border);
}
.woocommerce div.product .woocommerce-tabs ul.tabs li { margin: 0; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a {
	display: block;
	padding: 1rem 0;
	font-weight: 600;
	color: var(--color-text);
	position: relative;
	bottom: -2px;
	border-bottom: 2px solid transparent;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a,
.woocommerce div.product .woocommerce-tabs ul.tabs li a:hover {
	color: var(--color-text-dark);
	border-bottom-color: var(--color-text-dark);
}
.woocommerce div.product .woocommerce-tabs .panel {
	background: var(--color-bg);
	border-radius: 16px;
	padding: 2.5rem;
}
/* Variations Table */
.woocommerce table.shop_attributes, .woocommerce table.variations { border: none; width: 100%; }
.woocommerce table.shop_attributes td, .woocommerce table.variations td { padding: 0.5rem 0; border: none; vertical-align: top; }
.woocommerce table.shop_attributes td.label, .woocommerce table.variations td.label { font-weight: 600; color: var(--color-text-dark); width: 20%; padding-right: 1rem; text-transform: uppercase; font-size: 0.85rem; letter-spacing: 0.05em; }

.woocommerce table.shop_attributes td { border-bottom: 1px solid var(--color-border); padding: 1.25rem 0; background: transparent; }
.woocommerce table.shop_attributes th { font-weight: 700; width: 30%; color: var(--color-text-dark); }

/* Quantity and Add To Cart */
.woocommerce div.product form.cart {
	display: flex !important;
	flex-direction: column !important;
	gap: 1.25rem !important;
	width: 100% !important;
	margin-top: 1.5rem;
	padding-top: 1.5rem;
	border-top: 1px solid var(--color-border);
}
.woocommerce div.product form.cart table.variations {
	width: 100% !important;
	margin-bottom: 0.5rem !important;
	order: 1 !important;
}

/* Custom Addons (hersonders_custom_text) above qty + button */
.woocommerce div.product form.cart #hersonders-product-addons {
	width: 100% !important;
	margin-bottom: 0.5rem !important;
	display: block !important;
	order: 2 !important;
}
.woocommerce div.product form.cart .single_variation_wrap {
	width: 100% !important;
	order: 3 !important;
}
.woocommerce div.product form.cart .woocommerce-variation-add-to-cart,
.woocommerce div.product form.cart:not(.variations_form) {
	display: flex !important;
	flex-direction: row !important;
	gap: 1rem !important;
	align-items: center !important;
	width: 100% !important;
	order: 3 !important;
}
.woocommerce div.product form.cart .quantity,
.woocommerce div.product form.cart .woocommerce-variation-add-to-cart .quantity {
	flex-shrink: 0 !important;
	margin: 0 !important;
}
.woocommerce div.product form.cart .quantity.buttons_added {
	display: flex;
	align-items: center;
	border: 1px solid var(--color-border);
	border-radius: 12px;
	overflow: hidden;
	background: var(--color-white);
	flex-shrink: 0;
}
.woocommerce div.product form.cart .quantity.buttons_added input.qty {
	width: 50px;
	height: 50px;
	border: none;
	border-radius: 0;
	font-size: 1.1rem;
	text-align: center;
	font-weight: 600;
	padding: 0;
	-moz-appearance: textfield;
}
.woocommerce div.product form.cart .quantity.buttons_added input.qty::-webkit-outer-spin-button,
.woocommerce div.product form.cart .quantity.buttons_added input.qty::-webkit-inner-spin-button {
	-webkit-appearance: none; margin: 0;
}
.woocommerce div.product form.cart .quantity.buttons_added button {
	background: transparent;
	border: none;
	width: 40px;
	height: 50px;
	font-size: 1.25rem;
	cursor: pointer;
	color: var(--color-text-dark);
	display: flex;
	align-items: center;
	justify-content: center;
}
.woocommerce div.product form.cart .quantity.buttons_added button:hover {
	background: var(--color-bg);
}
.woocommerce div.product form.cart button.single_add_to_cart_button,
.woocommerce div.product form.cart .woocommerce-variation-add-to-cart button.single_add_to_cart_button,
button.single_add_to_cart_button,
.single_add_to_cart_button,
.woocommerce button.button.alt.single_add_to_cart_button,
.woocommerce div.product form.cart .button.single_add_to_cart_button {
	flex: 1 1 auto !important;
	width: 100% !important;
	height: 52px !important;
	font-size: 1.05rem !important;
	font-weight: 700 !important;
	border-radius: 50px !important;
	background: #a9a9a9 !important;
	background-color: #a9a9a9 !important;
	color: #ffffff !important;
	box-shadow: 0 10px 20px -5px rgba(169, 169, 169, 0.4) !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	border: none !important;
	transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
	cursor: pointer !important;
	margin: 0 !important;
}
.woocommerce div.product form.cart button.single_add_to_cart_button:hover,
.woocommerce div.product form.cart .woocommerce-variation-add-to-cart button.single_add_to_cart_button:hover,
button.single_add_to_cart_button:hover,
.single_add_to_cart_button:hover,
.woocommerce button.button.alt.single_add_to_cart_button:hover,
.woocommerce div.product form.cart .button.single_add_to_cart_button:hover {
	background: #8e8e8e !important;
	background-color: #8e8e8e !important;
	color: #ffffff !important;
	transform: translateY(-2px) !important;
	box-shadow: 0 15px 30px -5px rgba(169, 169, 169, 0.5) !important;
}

/* Hide SKU completely as requested */
.sku_wrapper { display: none !important; }

/* Addons Text Input Styling */
.hersonders-product-addon,
#hersonders-product-addons,
div[class*="product-addon"] {
	width: 100% !important;
	max-width: 100% !important;
	display: block !important;
	clear: both !important;
	margin: 1.25rem 0 !important;
}

.hersonders-product-addon label,
#hersonders-product-addons label,
div[class*="product-addon"] label {
	display: block !important;
	font-size: 0.92rem !important;
	font-weight: 700 !important;
	color: var(--color-text-dark, #212529) !important;
	margin-bottom: 0.5rem !important;
	text-transform: none !important;
}

.hersonders-product-addon input[type="text"],
#hersonders-product-addons input[type="text"],
#hersonders_custom_text {
	width: 100% !important;
	height: 48px !important;
	padding: 0 16px !important;
	border: 2px solid var(--color-border, #E9ECEF) !important;
	border-radius: 12px !important;
	font-size: 0.95rem !important;
	font-family: var(--font-main) !important;
	color: var(--color-text-dark, #212529) !important;
	background: var(--color-white) !important;
	transition: all var(--transition-fast) !important;
	box-shadow: none !important;
	outline: none !important;
	box-sizing: border-box !important;
}

.hersonders-product-addon input[type="text"]:focus,
#hersonders-product-addons input[type="text"]:focus,
#hersonders_custom_text:focus {
	border-color: var(--color-primary, #7500c0) !important;
	background: var(--color-white) !important;
	box-shadow: 0 0 0 4px rgba(117, 0, 192, 0.12) !important;
}

/* Addons Fields Styling */
#hersonders-product-addons {
	width: 100%;
	margin-bottom: 1.5rem;
}
.hersonders-addon-field {
	margin-bottom: 1rem;
}
.hersonders-addon-field label {
	display: block;
	font-weight: 600;
	margin-bottom: 0.5rem;
	font-size: 0.85rem;
	text-transform: uppercase;
}
.hersonders-addon-field input[type="text"],
.hersonders-addon-field textarea,
select.hersonders-styled-select {
	width: 100%;
	border: 2px solid var(--color-border);
	border-radius: 12px;
	padding: 12px 16px;
	background: var(--color-white);
	font-size: 0.95rem;
	font-family: inherit;
	color: var(--color-text-dark);
}
select.hersonders-styled-select {
	appearance: none;
	background-image: url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23111%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E");
	background-repeat: no-repeat;
	background-position: right 1rem center;
	background-size: 10px;
}

/* Variation Pills */
table.variations { border: none; margin-bottom: 1.5rem; width: 100%; }
table.variations th, table.variations td { border: none; padding: 0.5rem 0; display: block; text-align: left; }
table.variations th { font-weight: 700; color: var(--color-text-dark); margin-bottom: 0.5rem; text-transform: uppercase; font-size: 0.85rem; letter-spacing: 0.05em; padding-bottom: 0; }
table.variations td.value select { display: none !important; }
table.variations td.value select.hersonders-styled-select { display: block !important; }
table.variations td.value .reset_variations { display: none !important; }

.hersonders-variation-pills { display: flex; flex-wrap: wrap; gap: 10px; }
.hersonders-pill { 
	min-width: 44px;
	height: 44px;
	padding: 0 14px;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 1px solid var(--color-border); 
	border-radius: 12px;
	cursor: pointer; 
	font-weight: 600; 
	font-size: 0.9rem; 
	color: var(--color-text-dark); 
	transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1); 
	background: var(--color-white);
}
.hersonders-pill:hover { border-color: var(--color-text-dark); transform: scale(1.03); }
.hersonders-pill.is-active { border-color: var(--color-primary); background: var(--color-primary); color: var(--color-white); box-shadow: var(--shadow-sm); }
.hersonders-pill.is-disabled { opacity: 0.4; cursor: not-allowed; text-decoration: line-through; background: var(--color-bg); }

/* Cart Drawer */
.cart-drawer-overlay { position: fixed !important; top: 0 !important; left: 0 !important; width: 100% !important; height: 100vh !important; background: rgba(0,0,0,0.4) !important; backdrop-filter: blur(4px); z-index: 999990 !important; opacity: 0; visibility: hidden; transition: all var(--transition-normal); }
.cart-drawer-overlay.is-active { opacity: 1 !important; visibility: visible !important; }
.cart-drawer { position: fixed !important; top: 0 !important; right: -450px; width: 450px; max-width: 90%; height: 100vh !important; background: #ffffff !important; background-color: #ffffff !important; z-index: 999999 !important; box-shadow: -10px 0 30px rgba(0,0,0,0.15); transition: transform var(--transition-normal); display: flex; flex-direction: column; }
.cart-drawer.is-open { transform: translateX(-450px) !important; z-index: 9999999 !important; }
.cart-drawer-header { display: flex; justify-content: space-between; align-items: center; padding: 2rem; border-bottom: 1px solid var(--color-border); }
.cart-drawer-header h2 { margin: 0; font-size: 1.5rem; }
.cart-drawer-close { background: none; border: none; font-size: 2rem; cursor: pointer; color: var(--color-text); }
.cart-drawer-content { flex-grow: 1; overflow-y: auto; padding: 2rem; }
.cart-drawer-login { padding: 2rem; background: var(--color-bg); text-align: center; font-size: 0.95rem; }
.cart-drawer-login a { font-weight: 600; text-decoration: underline; }

/* White Background for All Dropdown Selects (Matching Size Pills) */
select,
.woocommerce select,
select.hersonders-styled-select,
.woocommerce-ordering select,
#billing_city,
#shipping_city {
	background-color: #ffffff !important;
	background-image: url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23111%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E") !important;
	background-repeat: no-repeat !important;
	background-position: right 1rem center !important;
	background-size: 10px !important;
	border: 1px solid #e2e8f0 !important;
	border-radius: 12px !important;
	padding: 12px 2.5rem 12px 1rem !important;
	font-size: 0.95rem !important;
	font-family: inherit !important;
	color: #111111 !important;
	box-shadow: 0 2px 6px rgba(0,0,0,0.03) !important;
	appearance: none !important;
	-webkit-appearance: none !important;
	cursor: pointer !important;
	transition: all 0.2s ease !important;
	width: 100% !important;
	box-sizing: border-box !important;
}
select:focus,
.woocommerce select:focus,
#billing_city:focus,
#shipping_city:focus {
	border-color: var(--color-primary, #7500c0) !important;
	outline: none !important;
	box-shadow: 0 0 0 3px rgba(117, 0, 192, 0.15) !important;
}

/* Hide Breadcrumbs Completely from Product Page */
.woocommerce-breadcrumb { display: none !important; }

/* Single Product Gallery Thumbnails: ONLY 1-Row Slider / Scrollable Row */
.woocommerce div.product div.images .flex-control-thumbs,
.woocommerce-product-gallery .flex-control-thumbs,
ol.flex-control-nav.flex-control-thumbs,
.flex-control-thumbs {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	overflow-x: auto !important;
	overflow-y: hidden !important;
	scroll-behavior: smooth !important;
	-webkit-overflow-scrolling: touch !important;
	scrollbar-width: thin !important;
	scrollbar-color: var(--color-primary, #7500c0) transparent !important;
	margin-top: 1.25rem !important;
	padding-bottom: 8px !important;
	gap: 12px !important;
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
	list-style: none !important;
}

.woocommerce div.product div.images .flex-control-thumbs::-webkit-scrollbar,
.woocommerce-product-gallery .flex-control-thumbs::-webkit-scrollbar,
.flex-control-thumbs::-webkit-scrollbar {
	height: 4px !important;
}
.woocommerce div.product div.images .flex-control-thumbs::-webkit-scrollbar-thumb,
.woocommerce-product-gallery .flex-control-thumbs::-webkit-scrollbar-thumb,
.flex-control-thumbs::-webkit-scrollbar-thumb {
	background: rgba(117, 0, 192, 0.3) !important;
	border-radius: 4px !important;
}
.woocommerce div.product div.images .flex-control-thumbs::-webkit-scrollbar-track,
.woocommerce-product-gallery .flex-control-thumbs::-webkit-scrollbar-track,
.flex-control-thumbs::-webkit-scrollbar-track {
	background: transparent !important;
}

.woocommerce div.product div.images .flex-control-thumbs li,
.woocommerce-product-gallery .flex-control-thumbs li,
.flex-control-thumbs li {
	flex: 0 0 auto !important;
	flex-shrink: 0 !important;
	width: 72px !important;
	height: 72px !important;
	margin: 0 !important;
	padding: 0 !important;
}

.woocommerce div.product div.images .flex-control-thumbs li img,
.woocommerce-product-gallery .flex-control-thumbs li img,
.flex-control-thumbs li img {
	width: 72px !important;
	height: 72px !important;
	object-fit: cover !important;
	border-radius: 14px !important;
	border: 2px solid #e9ecef !important;
	transition: all 0.2s ease !important;
	cursor: pointer !important;
}

.woocommerce div.product div.images .flex-control-thumbs li img.flex-active,
.woocommerce-product-gallery .flex-control-thumbs li img.flex-active,
.flex-control-thumbs li img.flex-active {
	border-color: var(--color-primary, #7500c0) !important;
	box-shadow: 0 4px 12px rgba(117, 0, 192, 0.25) !important;
	transform: scale(1.05) !important;
}


/* Side Cart (Mini Cart Widget) - Styled EXACTLY like Order Summary */
.cart-drawer-content {
	flex-grow: 1 !important;
	display: flex !important;
	flex-direction: column !important;
	overflow: hidden !important;
	padding: 1.5rem 1.75rem !important;
	box-sizing: border-box !important;
	width: 100% !important;
}
.cart-drawer .widget_shopping_cart_content,
.widget_shopping_cart_content {
	display: flex !important;
	flex-direction: column !important;
	height: 100% !important;
	flex-grow: 1 !important;
	overflow: hidden !important;
	box-sizing: border-box !important;
	padding: 0 !important;
	margin: 0 !important;
	width: 100% !important;
}
.widget_shopping_cart_content .cart_list {
	margin: 0;
	padding: 0;
	list-style: none;
	flex-grow: 1 !important;
	overflow-y: auto !important;
	padding-right: 5px !important;
}
.widget_shopping_cart_content .cart_list li {
	position: relative !important;
	display: flex !important;
	flex-direction: row !important;
	gap: 1rem !important;
	align-items: flex-start !important;
	padding: 1.25rem 0 !important;
	border-bottom: 1px solid var(--color-border, #E9ECEF) !important;
}
.widget_shopping_cart_content .cart_list li img {
	width: 70px !important;
	height: 70px !important;
	min-width: 70px !important;
	object-fit: cover !important;
	border-radius: 12px !important;
	box-shadow: 0 4px 12px rgba(0,0,0,0.06) !important;
	margin: 0 !important;
	flex-shrink: 0 !important;
	order: 1 !important;
}
.widget_shopping_cart_content .cart_list li .cart-item-details {
	display: flex !important;
	flex-direction: column !important;
	gap: 0.25rem !important;
	flex: 1 !important;
	padding-right: 1.75rem !important;
	order: 2 !important;
}
.widget_shopping_cart_content .cart_list li a.cart-item-title-link,
.widget_shopping_cart_content .cart_list li .cart-item-details > a:not(.remove) {
	font-size: 1.05rem !important;
	font-weight: 800 !important;
	color: var(--color-primary, #7500c0) !important;
	line-height: 1.3 !important;
	text-decoration: none !important;
	display: block !important;
}
.widget_shopping_cart_content .cart_list li .quantity {
	font-size: 0.9rem !important;
	color: var(--color-text-dark, #222) !important;
	font-weight: 700 !important;
	margin-top: 0.2rem !important;
}
.widget_shopping_cart_content .cart_list li dl.variation {
	font-size: 0.82rem !important;
	color: #6c757d !important;
	margin: 0.35rem 0 0 0 !important;
	line-height: 1.4 !important;
	font-weight: 400 !important;
	display: block !important;
}
.widget_shopping_cart_content .cart_list li dl.variation dt { float: left; clear: left; margin-right: 0.3rem; font-weight: 600; color: #495057; }
.widget_shopping_cart_content .cart_list li dl.variation dd { margin: 0 0 0.2rem 0; color: #6c757d; }
.widget_shopping_cart_content .cart_list li dl.variation dd p { margin: 0; display: inline; }

/* Product Grid Cards 100% Opacity Fix */
ul.products li.product,
.woocommerce ul.products li.product,
div.product-card,
.product-card {
	opacity: 1 !important;
	visibility: visible !important;
	filter: none !important;
}

/* AED Font Enforcement - ONLY applied to AED (.aed-symbol), NEVER other currencies */
@font-face {
	font-family: 'AEDFont';
	src: url('https://under1.shop/wp-content/uploads/2026/09/aed-Regular.woff') format('woff');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

.aed-symbol,
span.aed-symbol {
	font-family: 'AEDFont', var(--font-main), sans-serif !important;
	font-weight: 700 !important;
	margin-left: 0.15rem !important;
	margin-right: 0.15rem !important;
	display: inline-block !important;
}

.woocommerce-Price-currencySymbol:not(.aed-symbol),
span.woocommerce-Price-currencySymbol:not(.aed-symbol) {
	font-family: var(--font-main), sans-serif !important;
}

/* Single Product Page Price Currency Margin specifically */
.single-product div.product p.price .woocommerce-Price-currencySymbol,
.single-product div.product span.price .woocommerce-Price-currencySymbol,
.single-product .summary .price .woocommerce-Price-currencySymbol {
	margin-left: 0.4rem !important;
	margin-right: 0.1rem !important;
}

/* Shop Loop Product Cards Buttons Use Secondary Color (#a9a9a9) */
ul.products li.product .button,
ul.products li.product a.button,
ul.products li.product .add_to_cart_button,
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product a.button {
	background: var(--color-secondary, #a9a9a9) !important;
	color: #ffffff !important;
	border: none !important;
	border-radius: 50px !important;
	padding: 0.75rem 1.5rem !important;
	font-weight: 700 !important;
	font-size: 0.88rem !important;
	letter-spacing: 0.05em !important;
	text-transform: uppercase !important;
	box-shadow: 0 6px 16px -4px rgba(169, 169, 169, 0.4) !important;
	transition: all 0.25s ease !important;
}
ul.products li.product .button:hover,
ul.products li.product a.button:hover,
ul.products li.product .add_to_cart_button:hover,
.woocommerce ul.products li.product .button:hover,
.woocommerce ul.products li.product a.button:hover {
	background: var(--color-secondary-hover, #8e8e8e) !important;
	color: #ffffff !important;
	transform: translateY(-2px) !important;
	box-shadow: 0 10px 22px -4px rgba(169, 169, 169, 0.5) !important;
}

.widget_shopping_cart_content .cart_list li a.remove {
	position: absolute !important;
	top: 1.25rem !important;
	right: 0 !important;
	color: #a9a9a9 !important;
	font-size: 1.3rem !important;
	line-height: 1 !important;
	text-decoration: none !important;
	width: 24px !important;
	height: 24px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	transition: color 0.2s ease !important;
	margin: 0 !important;
	padding: 0 !important;
	order: 3 !important;
}
.widget_shopping_cart_content .cart_list li a.remove:hover { color: #ff4757 !important; }

/* Infinite Scroll Spinner */
.hersonders-infinite-spinner {
	text-align: center;
	padding: 2rem 0;
	width: 100%;
	grid-column: 1 / -1;
	display: flex;
	justify-content: center;
	align-items: center;
}
.hersonders-infinite-spinner svg {
	animation: spin 1s linear infinite;
	color: var(--color-primary, #7500c0);
}

.widget_shopping_cart_content .total { padding: 1.25rem 0 !important; border-top: 2px solid var(--color-border) !important; margin-top: auto !important; font-size: 1.15rem !important; font-weight: 700 !important; display: flex !important; justify-content: space-between !important; color: var(--color-text-dark) !important; flex-shrink: 0 !important; }
.widget_shopping_cart_content .buttons { display: flex !important; flex-direction: column !important; gap: 0.75rem !important; flex-shrink: 0 !important; padding-bottom: 0.5rem !important; }
.widget_shopping_cart_content .buttons a { display: block; text-align: center; padding: 1rem; border-radius: 50px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.05em; font-size: 0.9rem; }
.widget_shopping_cart_content .buttons a:not(.checkout) { background: var(--color-secondary, #a9a9a9) !important; color: #ffffff !important; transition: all 0.25s ease !important; box-shadow: 0 6px 18px -4px rgba(169, 169, 169, 0.4) !important; }
.widget_shopping_cart_content .buttons a:not(.checkout):hover { background: var(--color-secondary-hover, #8e8e8e) !important; color: #ffffff !important; transform: translateY(-2px) !important; box-shadow: 0 10px 22px -4px rgba(169, 169, 169, 0.5) !important; }
.widget_shopping_cart_content .buttons a.checkout { background: var(--color-primary) !important; color: #fff !important; box-shadow: 0 8px 20px -6px rgba(117, 0, 192, 0.4) !important; }
.widget_shopping_cart_content .buttons a.checkout:hover { background: var(--color-primary-hover) !important; transform: translateY(-2px) !important; box-shadow: 0 12px 25px -6px rgba(117, 0, 192, 0.5) !important; }
.widget_shopping_cart_content .woocommerce-mini-cart__empty-message { text-align: center; color: var(--color-text); font-size: 1rem; margin-top: 2rem; }

/* Cart Page & Gutenberg Block Quantity Buttons Fix */
.woocommerce-cart .quantity button,
.woocommerce-cart .quantity .qty-minus,
.woocommerce-cart .quantity .qty-plus,
.woocommerce-cart td.product-quantity .quantity button,
body.woocommerce-cart button.qty-minus,
body.woocommerce-cart button.qty-plus,
.cart .quantity button,
.quantity.buttons_added button,
.wc-block-components-quantity-selector__button,
button.wc-block-components-quantity-selector__button,
.wc-block-components-quantity-selector__button--minus,
.wc-block-components-quantity-selector__button--plus {
	background: #ffffff !important;
	color: var(--color-text-dark, #212529) !important;
	border: 1px solid var(--color-border, #E9ECEF) !important;
	border-radius: 8px !important;
	width: 34px !important;
	min-width: 34px !important;
	max-width: 34px !important;
	height: 34px !important;
	min-height: 34px !important;
	max-height: 34px !important;
	padding: 0 !important;
	margin: 0 !important;
	font-size: 1rem !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	box-shadow: none !important;
	transform: none !important;
	cursor: pointer !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
}

.woocommerce-cart .quantity button:hover,
.quantity.buttons_added button:hover,
.wc-block-components-quantity-selector__button:hover:not(:disabled),
button.wc-block-components-quantity-selector__button:hover:not(:disabled) {
	background: var(--color-bg, #F8F9FA) !important;
	border-color: var(--color-primary, #7500c0) !important;
	color: var(--color-primary, #7500c0) !important;
	transform: none !important;
	box-shadow: none !important;
}

/* Gutenberg Block Cart & Checkout Currency Font */
.wc-block-formatted-money-amount .aed-symbol,
.wc-block-components-product-price .aed-symbol,
.wc-block-components-totals-item__value .aed-symbol,
.wc-block-card-elements_price .aed-symbol {
	font-family: 'AEDFont', var(--font-main), sans-serif !important;
}

/* Cart Page */
.woocommerce-cart .woocommerce { display: flex; gap: 3rem; flex-wrap: wrap; margin-top: 3rem; }
.woocommerce-cart-form { flex: 1 1 60%; background: var(--color-white); border-radius: 24px; padding: 2rem; box-shadow: var(--shadow-sm); }
.cart-collaterals { flex: 1 1 30%; }
.cart-collaterals .cart_totals { background: var(--color-white); border-radius: 24px; padding: 2rem; box-shadow: var(--shadow-md); position: sticky; top: 120px; }
.woocommerce table.shop_table { border: none; margin: 0; border-radius: 0; }
.woocommerce table.shop_table th { border: none; padding: 1rem; text-transform: uppercase; font-size: 0.85rem; color: var(--color-text); letter-spacing: 0.05em; border-bottom: 2px solid var(--color-border); }
.woocommerce table.shop_table td { border: none; border-bottom: 1px solid var(--color-border); padding: 1.5rem 1rem; }
.woocommerce table.shop_table td.product-thumbnail img { width: 80px; border-radius: 12px; box-shadow: var(--shadow-sm); }
.woocommerce table.shop_table td.product-name a { color: var(--color-primary); font-weight: 700; }
.woocommerce table.shop_table td.product-remove a { color: #ff4757; background: #ffeaa7; width: 30px; height: 30px; border-radius: 50%; display: flex; align-items: center; justify-content: center; text-decoration: none; font-size: 1.2rem; }
.woocommerce table.shop_table td.product-remove a:hover { background: #ff4757; color: #fff; }

/* WooCommerce Shop Layout Fixes & Grid Alignment */
.post-type-archive-product #primary, .archive.woocommerce #primary, .tax-product_cat #primary { max-width: 1200px; margin: 0 auto; padding-left: 2rem; padding-right: 2rem; }
.woocommerce-products-header__title { margin-bottom: 2rem; font-size: 2.5rem; font-weight: 700; letter-spacing: -0.02em; }
.woocommerce-result-count { float: left; margin-top: 12px; color: var(--color-text); font-size: 0.95rem; font-weight: 500; }
.woocommerce-ordering { float: right; margin-bottom: 2rem; }
.woocommerce-ordering select { 
	appearance: none; 
	background: var(--color-white) url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23111%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E") no-repeat right 1rem center; 
	background-size: 10px;
	border: 1px solid var(--color-border); 
	border-radius: 12px; 
	padding: 12px 3rem 12px 1rem; 
	font-size: 0.95rem; 
	font-weight: 500;
	color: var(--color-text-dark);
	cursor: pointer;
	box-shadow: var(--shadow-sm);
}
.woocommerce-ordering select:focus { outline: none; border-color: var(--color-primary); box-shadow: 0 0 0 2px var(--color-primary-light); }
.woocommerce::after { content: ""; display: table; clear: both; }

/* FIX GRID EMPTY AREA IN FIRST ROW: Remove pseudo elements from grid container */
ul.products::before,
ul.products::after {
	display: none !important;
	content: none !important;
}

ul.products { 
	display: grid !important; 
	grid-template-columns: repeat(3, 1fr) !important; 
	gap: 1.5rem !important; 
	margin: 0 !important; 
	padding: 0 !important; 
	list-style: none !important; 
	clear: both !important; 
}

/* PRODUCT CARDS: MATCH WISHLIST CARD EXACTLY */
ul.products li.product { 
	text-align: left !important; 
	background: #ffffff !important; 
	padding: 1.25rem !important; 
	border-radius: 24px !important; 
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.04) !important; 
	border: 1px solid rgba(0, 0, 0, 0.06) !important;
	transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important; 
	position: relative !important; 
	display: flex !important; 
	flex-direction: column !important; 
	width: 100% !important; 
	margin: 0 !important; 
	box-sizing: border-box !important; 
	float: none !important; 
}
ul.products li.product:hover { 
	box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08) !important; 
	transform: translateY(-4px) !important; 
	border-color: rgba(117, 0, 192, 0.2) !important; 
}
ul.products li.product a.woocommerce-LoopProduct-link { 
	flex-grow: 1; 
	display: flex; 
	flex-direction: column; 
	text-decoration: none;
}
ul.products li.product img { 
	border-radius: 18px !important; 
	margin-bottom: 1rem !important; 
	width: 100% !important; 
	height: auto !important; 
	object-fit: cover !important; 
	aspect-ratio: 1/1 !important; 
	box-shadow: none !important; 
	transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
}
ul.products li.product:hover img {
	transform: scale(1.02);
}
ul.products li.product .woocommerce-loop-product__title { 
	font-size: 1.1rem !important; 
	font-weight: 700 !important; 
	color: #111111 !important; 
	margin-bottom: 0.5rem !important; 
	line-height: 1.3 !important; 
	display: -webkit-box; 
	-webkit-line-clamp: 2; 
	-webkit-box-orient: vertical; 
	overflow: hidden; 
	flex-grow: 1; 
}

/* Star Ratings in Grid */
ul.products li.product .star-rating { font-size: 0.85rem; margin-bottom: 0.5rem; color: #f59e0b; width: 100%; }

/* Price in Grid - BOLD BLACK like Wishlist Card */
ul.products li.product .price,
ul.products li.product span.price { 
	color: #111111 !important; 
	font-weight: 700 !important; 
	font-size: 1.2rem !important; 
	margin-bottom: 1rem !important; 
	display: block !important; 
}
ul.products li.product .price del { 
	color: #888888 !important; 
	font-weight: 500 !important; 
	font-size: 0.95rem !important; 
	margin-right: 0.5rem !important; 
}
ul.products li.product .price ins { 
	text-decoration: none !important; 
	color: #111111 !important; 
	font-weight: 800 !important;
}

/* Hide WooCommerce default "View cart" text link inserted under Add to Cart on product grid cards */
a.added_to_cart,
.woocommerce a.added_to_cart,
ul.products li.product a.added_to_cart,
li.product a.added_to_cart {
	display: none !important;
}

/* Short Description under Product Title on Grid Cards (Secondary Color & Smaller) */
.product-card-short-description,
ul.products li.product .product-card-short-description,
.woocommerce ul.products li.product .product-card-short-description {
	font-size: 0.82rem !important;
	color: var(--color-secondary, #a9a9a9) !important;
	font-weight: 500 !important;
	margin-top: 0.2rem !important;
	margin-bottom: 0.6rem !important;
	line-height: 1.35 !important;
	text-align: center !important;
}

/* Add to Cart Button in Grid - Pill shape matching Wishlist card */
ul.products li.product .button,
ul.products li.product a.button { 
	background: #f5f5f7 !important; 
	color: #111111 !important; 
	padding: 0.85rem 1rem !important; 
	border-radius: 14px !important; 
	font-size: 0.95rem !important; 
	font-weight: 600 !important; 
	display: flex !important; 
	align-items: center !important;
	justify-content: center !important;
	border: 1px solid #e5e5ea !important; 
	transition: all 0.2s ease !important; 
	width: 100% !important; 
	margin-top: auto !important; 
	box-shadow: none !important;
	text-decoration: none !important;
}
ul.products li.product .button:hover,
ul.products li.product a.button:hover { 
	background: #111111 !important; 
	color: #ffffff !important; 
	border-color: #111111 !important; 
	box-shadow: 0 10px 20px rgba(0,0,0,0.15) !important; 
}
ul.products li.product .button.added::after { content: ' ✓'; }

/* Wishlist Button - Product Grid (Top Right White Circle) */
ul.products li.product .hersonders-wishlist-btn { 
	position: absolute !important; 
	top: 2rem !important; 
	right: 2rem !important; 
	background: #ffffff !important; 
	border-radius: 50% !important; 
	width: 40px !important; 
	height: 40px !important; 
	display: flex !important; 
	align-items: center !important; 
	justify-content: center !important; 
	color: #111111 !important; 
	box-shadow: 0 4px 12px rgba(0,0,0,0.1) !important; 
	z-index: 10 !important; 
	backdrop-filter: blur(4px); 
	transition: all 0.2s ease !important; 
}
ul.products li.product .hersonders-wishlist-btn:hover, 
ul.products li.product .hersonders-wishlist-btn.added { 
	color: #ef4444 !important; 
	transform: scale(1.1) !important; 
}
ul.products li.product .hersonders-wishlist-btn.added svg { fill: #ef4444; stroke: #ef4444; }

/* Wishlist Heart Pop Animation */
@keyframes heartPop {
	0% { transform: scale(1); }
	40% { transform: scale(1.35); }
	70% { transform: scale(0.85); }
	100% { transform: scale(1); }
}
.animate-heart-pop svg {
	animation: heartPop 0.45s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

/* Single Product: Wishlist (LEFT) and Category Meta (RIGHT) on SAME horizontal row */
.hersonders-single-meta-row {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	width: 100% !important;
	margin-top: 1.75rem !important;
	padding-top: 0.75rem !important;
	border-top: 1px solid var(--color-border, #E9ECEF) !important;
	flex-wrap: wrap !important;
	gap: 1rem !important;
}
.hersonders-single-meta-row .hersonders-wishlist-single-wrapper {
	margin: 0 !important;
	display: inline-flex !important;
	align-items: center !important;
}
.hersonders-single-meta-row .hersonders-wishlist-btn {
	display: inline-flex !important;
	align-items: center !important;
	gap: 0.5rem !important;
	font-weight: 600 !important;
	color: var(--color-text-dark, #212529) !important;
	font-size: 0.95rem !important;
	transition: color 0.2s ease !important;
}
.hersonders-single-meta-row .hersonders-wishlist-btn:hover,
.hersonders-single-meta-row .hersonders-wishlist-btn.added {
	color: #ef4444 !important;
}
.hersonders-single-meta-row .hersonders-wishlist-btn.added svg {
	fill: #ef4444 !important;
	stroke: #ef4444 !important;
}

.hersonders-single-meta-row .product_meta {
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
	font-size: 0.95rem !important;
	color: #6c757d !important;
	display: inline-flex !important;
	align-items: center !important;
}
.hersonders-single-meta-row .product_meta a {
	color: var(--color-primary, #7500c0) !important;
	font-weight: 600 !important;
	margin-left: 0.35rem !important;
	text-decoration: none !important;
}
.hersonders-single-meta-row .product_meta a:hover {
	text-decoration: underline !important;
}

/* Checkout Page */
.woocommerce-checkout .woocommerce { display: flex; gap: 4rem; flex-wrap: wrap; margin-top: 3rem; }
#customer_details { flex: 1 1 50%; }
#order_review_heading, #order_review { flex: 1 1 40%; }
#order_review { background: var(--color-bg); padding: 2.5rem; border-radius: 24px; border: 1px solid var(--color-border); position: sticky; top: 120px; }
.woocommerce-checkout #payment { background: var(--color-white); border-radius: 16px; padding: 1.5rem; border: 1px solid var(--color-border); }
.woocommerce-checkout #payment ul.payment_methods { border-bottom: 1px solid var(--color-border); padding-bottom: 1.5rem; }
.woocommerce-checkout #payment div.payment_box { background: var(--color-bg); border-radius: 8px; box-shadow: inset 0 2px 4px rgba(0,0,0,0.02); }
.woocommerce-checkout #payment div.payment_box::before { border-bottom-color: var(--color-bg); }

/* Toast Notification */
#hersonders-toast-container { position: fixed; bottom: 30px; left: 50%; transform: translateX(-50%); z-index: 99999; display: flex; flex-direction: column; gap: 10px; pointer-events: none; }
.hersonders-toast { background: var(--color-white); color: var(--color-text-dark); font-weight: 600; padding: 1rem 2rem; border-radius: 50px; box-shadow: 0 15px 30px -5px rgba(0,0,0,0.2); display: flex; align-items: center; gap: 10px; transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275); }
.toast-icon { background: var(--color-primary); color: #fff; width: 24px; height: 24px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 0.8rem; }
.animate-slide-up { animation: slideUpToast 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards; }
@keyframes slideUpToast { from { transform: translateY(100%); opacity: 0; } to { transform: translateY(0); opacity: 1; } }

/* My Account */
.woocommerce-account .woocommerce { display: flex; gap: 3rem; margin-top: 3rem; flex-wrap: wrap; }
.woocommerce-MyAccount-navigation { flex: 0 0 250px; }
.woocommerce-MyAccount-navigation ul { list-style: none; padding: 0; }
.woocommerce-MyAccount-navigation ul li { margin-bottom: 0.5rem; }
.woocommerce-MyAccount-navigation ul li a { display: block; padding: 1rem 1.5rem; border-radius: 12px; color: var(--color-text-dark); font-weight: 500; transition: all var(--transition-fast); }
.woocommerce-MyAccount-navigation ul li a:hover { background: var(--color-bg); }
.woocommerce-MyAccount-navigation ul li.is-active a { background: var(--color-primary); color: var(--color-white); box-shadow: var(--shadow-sm); }
.woocommerce-MyAccount-content { flex: 1; background: var(--color-white); border-radius: 24px; padding: 3rem; box-shadow: var(--shadow-sm); border: 1px solid var(--color-border); }

/* Empty States */
.cart-empty.woocommerce-info { background: transparent; border: none; font-size: 1.5rem; text-align: center; padding: 4rem 2rem; color: var(--color-text-dark); font-weight: 600; display: flex; flex-direction: column; align-items: center; gap: 2rem; }
.cart-empty.woocommerce-info::before { content: none; }
.return-to-shop .button { font-size: 1.1rem; padding: 1.25rem 2.5rem; }

/* Mobile Responsiveness */
@media (max-width: 991px) {
	/* Fix 50/50 split on tablet */
	.woocommerce div.product div.images, 
	.woocommerce div.product div.summary { width: 100%; }
	ul.products { grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); }
}

@media (max-width: 768px) {
	.post-type-archive-product .site-main > .container,
	.tax-product_cat .site-main > .container,
	.archive.woocommerce .site-main > .container { padding-left: 0.5rem; padding-right: 0.5rem; }
	.woocommerce div.product { gap: 2rem; padding: 0 1rem; }
	.woocommerce-cart .woocommerce, .woocommerce-checkout .woocommerce, .woocommerce-account .woocommerce { flex-direction: column; gap: 2rem; }
	.cart-collaterals .cart_totals, #order_review { position: static; }
	.woocommerce table.shop_table_responsive tr, .woocommerce-page table.shop_table_responsive tr { border: 1px solid var(--color-border); border-radius: 12px; display: block; margin-bottom: 1.5rem; padding: 1rem; }
	.woocommerce table.shop_table_responsive td, .woocommerce-page table.shop_table_responsive td { display: flex; align-items: center; justify-content: space-between; border: none; text-align: right !important; }
	ul.products { grid-template-columns: repeat(2, 1fr) !important; gap: 0.75rem; }
	ul.products li.product { padding: 0.75rem; border-radius: 14px; }
	ul.products li.product img { border-radius: 10px; }
	ul.products li.product .woocommerce-loop-product__title { font-size: 0.9rem; }
	ul.products li.product .price { font-size: 1rem; margin-bottom: 0.75rem; }
	ul.products li.product .button { padding: 0.65rem 0.75rem; font-size: 0.8rem; }
	.woocommerce div.product form.cart .woocommerce-variation-add-to-cart { flex-wrap: nowrap; }
	.woocommerce div.product form.cart button.single_add_to_cart_button { height: 50px; font-size: 0.95rem; }
	.widget_shopping_cart_content .cart_list li { grid-template-columns: 60px 1fr 20px; gap: 0.75rem; }
	.widget_shopping_cart_content .cart_list li img { width: 60px; height: 60px; }
}

/* --- PRODUCT CARD LOOP SWATCHES (TOP CENTER OVER IMAGE) --- */
ul.products li.product {
	position: relative !important;
}

ul.products li.product .hersonders-loop-swatches-wrapper {
	position: absolute !important;
	top: 1.25rem !important;
	left: 50% !important;
	transform: translateX(-50%) !important;
	z-index: 12 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 7px !important;
	background: rgba(255, 255, 255, 0.88) !important;
	backdrop-filter: blur(8px) !important;
	-webkit-backdrop-filter: blur(8px) !important;
	padding: 5px 12px !important;
	border-radius: 50px !important;
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08) !important;
	border: 1px solid rgba(255, 255, 255, 0.8) !important;
	pointer-events: auto !important;
}

.hersonders-loop-swatch {
	width: 20px !important;
	height: 20px !important;
	border-radius: 50% !important;
	display: inline-block !important;
	cursor: pointer !important;
	border: 1px solid rgba(0, 0, 0, 0.12) !important;
	transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
	box-sizing: border-box !important;
	flex-shrink: 0 !important;
}

.hersonders-loop-swatch:hover {
	transform: scale(1.18) !important;
}

.hersonders-loop-swatch.is-selected {
	box-shadow: 0 0 0 2px #ffffff, 0 0 0 4px #111111 !important;
	transform: scale(1.1) !important;
}

/* --- SINGLE PRODUCT PAGE CIRCLE COLOR SWATCHES (IMAGE 2 STYLE) --- */
.hersonders-variation-pills {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 12px !important;
	margin-top: 0.5rem !important;
}

.hersonders-pill.hersonders-swatch-circle {
	width: 34px !important;
	height: 34px !important;
	min-width: 34px !important;
	padding: 0 !important;
	border-radius: 50% !important;
	border: 1px solid rgba(0, 0, 0, 0.12) !important;
	cursor: pointer !important;
	transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
	position: relative !important;
	box-sizing: border-box !important;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.04) !important;
}

.hersonders-pill.hersonders-swatch-circle:hover {
	transform: scale(1.12) !important;
	border-color: rgba(0, 0, 0, 0.3) !important;
}

/* Outer ring outline for active color circle swatch (Matching Image 2 attached!) */
.hersonders-pill.hersonders-swatch-circle.is-active {
	box-shadow: 0 0 0 3px #ffffff, 0 0 0 5px #222222 !important;
	border-color: transparent !important;
	transform: scale(1.05) !important;
}

.hersonders-pill.hersonders-swatch-circle.is-disabled {
	opacity: 0.3 !important;
	cursor: not-allowed !important;
	transform: none !important;
	box-shadow: none !important;
}

/* Attribute Label Formatting on Single Product Page */
table.variations th.label,
table.variations th.label label,
table.variations td.label label {
	font-size: 0.9rem !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.05em !important;
	color: var(--color-text-dark, #111111) !important;
}

.hersonders-selected-val {
	font-weight: 600 !important;
	text-transform: none !important;
	color: #555555 !important;
	margin-left: 0.25rem !important;
}

/* --- SUBCATEGORIES GRID & CARD (MATCHING HOMEPAGE CATEGORIES NAME + ARROW) --- */
.subcategories-grid {
	display: grid !important;
	grid-template-columns: repeat(3, 1fr) !important;
	gap: 1.5rem !important;
	margin-bottom: 4rem !important;
	width: 100% !important;
}

.subcategory-card {
	display: flex !important;
	justify-content: space-between !important;
	align-items: center !important;
	background: #ffffff !important;
	padding: 1.75rem 2rem !important;
	border-radius: 24px !important;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.04) !important;
	border: 1px solid rgba(0, 0, 0, 0.06) !important;
	text-decoration: none !important;
	transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.subcategory-card:hover {
	transform: translateY(-4px) !important;
	box-shadow: 0 15px 35px rgba(0, 0, 0, 0.08) !important;
	border-color: rgba(117, 0, 192, 0.2) !important;
}

.subcategory-card .subcategory-title {
	font-size: 1.15rem !important;
	font-weight: 700 !important;
	margin: 0 !important;
	color: #111111 !important;
	line-height: 1.3 !important;
}

.subcategory-card .subcategory-arrow {
	font-size: 1.75rem !important;
	color: var(--color-primary, #7500c0) !important;
	transition: transform 0.2s ease !important;
	line-height: 1 !important;
}

.subcategory-card:hover .subcategory-arrow {
	transform: translateX(6px) !important;
}

/* --- MOBILE SPECIFIC REDESIGN & FIXES --- */
@media (max-width: 768px) {
	/* Subcategories: 2 per row on mobile */
	.subcategories-grid {
		grid-template-columns: repeat(2, 1fr) !important;
		gap: 0.75rem !important;
	}
	.subcategory-card {
		padding: 1.1rem 1.25rem !important;
		border-radius: 18px !important;
	}
	.subcategory-card .subcategory-title {
		font-size: 0.95rem !important;
	}
	.subcategory-card .subcategory-arrow {
		font-size: 1.35rem !important;
	}

	/* Mobile Sort Dropdown Centered */
	.woocommerce-ordering {
		float: none !important;
		margin: 0 auto 1.5rem auto !important;
		display: flex !important;
		justify-content: center !important;
		width: 100% !important;
		text-align: center !important;
	}
	.woocommerce-ordering select {
		margin: 0 auto !important;
		max-width: 280px !important;
		text-align: center !important;
	}
	.woocommerce-result-count {
		float: none !important;
		text-align: center !important;
		width: 100% !important;
		margin-bottom: 0.75rem !important;
	}

	/* Mobile Products Grid 2 per row & Perfectly Centered */
	ul.products {
		grid-template-columns: repeat(2, 1fr) !important;
		gap: 0.75rem !important;
	}
	ul.products li.product {
		padding: 0.75rem !important;
		border-radius: 18px !important;
		text-align: center !important;
		display: flex !important;
		flex-direction: column !important;
		align-items: center !important;
	}
	ul.products li.product a.woocommerce-LoopProduct-link {
		display: flex !important;
		flex-direction: column !important;
		align-items: center !important;
		text-align: center !important;
		width: 100% !important;
	}
	ul.products li.product img {
		border-radius: 14px !important;
		margin-bottom: 0.65rem !important;
		width: 100% !important;
		height: auto !important;
		aspect-ratio: 1/1 !important;
		object-fit: cover !important;
	}
	ul.products li.product .woocommerce-loop-product__title {
		font-size: 0.88rem !important;
		font-weight: 700 !important;
		text-align: center !important;
		margin-bottom: 0.35rem !important;
	}
	ul.products li.product .price,
	ul.products li.product span.price {
		font-size: 0.95rem !important;
		font-weight: 700 !important;
		text-align: center !important;
		margin-bottom: 0.75rem !important;
	}
	ul.products li.product .button,
	ul.products li.product a.button {
		padding: 0.6rem 0.75rem !important;
		font-size: 0.78rem !important;
		font-weight: 700 !important;
		text-align: center !important;
		margin: 0 auto !important;
		width: 100% !important;
		border-radius: 50px !important;
	}
}

/* --- LIGHTBOX / PHOTOSWIPE MODAL OVERRIDES --- */
.pswp,
div.pswp {
	z-index: 9999999 !important;
}

.pswp__top-bar {
	z-index: 10000000 !important;
}

/* Hide Postcode Field Completely Across Checkout */
#billing_postcode_field,
#shipping_postcode_field,
#billing-postcode,
#shipping-postcode,
.wc-block-components-address-form__postcode,
input[name="billing_postcode"],
input[name="shipping_postcode"],
div[class*="postcode"] {
	display: none !important;
}

/* Remove purple background from ALL image lightbox buttons (zoom, fs, share, close, left/right arrows) */
.pswp button,
.pswp .pswp__button,
.pswp__top-bar button,
.pswp__button,
.pswp__button--close,
.pswp__button--zoom,
.pswp__button--fs,
.pswp__button--share,
.pswp__button--arrow--left,
.pswp__button--arrow--right,
.pswp__button--arrow--left::before,
.pswp__button--arrow--right::before,
button.pswp__button,
button.pswp__button--close,
button.pswp__button--zoom,
button.pswp__button--fs,
button.pswp__button--share,
button.pswp__button--arrow--left,
button.pswp__button--arrow--right,
.woocommerce-product-gallery .flex-direction-nav a,
.flex-direction-nav a {
	background-color: transparent !important;
	border: none !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	outline: none !important;
	padding: 0 !important;
}

/* City Select Dropdown Styling */
select#shipping-city_select,
select#billing-city_select,
select#shipping_city,
select#billing_city,
.hersonders-city-dropdown {
    border: 1px solid color-mix(in srgb, currentColor 80%, transparent) !important;
    border-radius: 4px !important;
    background-color: #ffffff !important;
}

/* WooCommerce Cart Block Page - Clean up duplicate metadata line */
.woocommerce-cart .wc-block-components-product-metadata .wc-block-components-product-details + .wc-block-components-product-details {
    display: none !important;
}





