/**
 * Nzele WooCommerce Quiet Luxury Visual Presentation Override
 */

/* ==========================================================================
   1. Global Shop and Grid Layouts
   ========================================================================== */

#qodef-woo-page {
	padding-top: var(--nzle-space-xl) !important;
	padding-bottom: var(--nzle-space-xxxl) !important;
	background-color: var(--nzle-bg-primary) !important;
}

/* Hide Default WooCommerce Commercial Elements */
.products .product .add_to_cart_button,
.products .product .qodef-cli-add-to-cart,
.products .product .yith-wcqv-button,
.products .product .qodef-yith-wcqv,
.products .product .qodef-e-add-to-cart,
.products .product .qodef-e-quick-view,
.products .product .star-rating,
.woocommerce-loop-product__link + .add_to_cart_button,
ul.products li.product .add_to_cart_button,
ul.products li.product .yith-wcqv-button {
	display: none !important;
}

/* Muted Elegant Sale Badge */
.products .product .onsale,
.products .product .qodef-woo-product-mark.qodef-onsale,
ul.products li.product .onsale,
#qodef-woo-page .onsale {
	background-color: transparent !important;
	border: 1px solid var(--nzle-accent) !important;
	color: var(--nzle-accent) !important;
	font-family: var(--nzle-font-body) !important;
	font-size: 0.65rem !important;
	font-weight: 500 !important;
	text-transform: uppercase !important;
	letter-spacing: var(--nzle-letter-spacing-wide) !important;
	padding: 4px 10px !important;
	border-radius: 0 !important;
	top: 15px !important;
	left: 15px !important;
	right: auto !important;
	line-height: 1 !important;
	min-width: 0 !important;
	min-height: 0 !important;
}

/* Museum Catalogue Grid (Borderless, Card-Free) */
ul.products,
.qodef-woo-product-list .qodef-grid-inner {
	display: grid !important;
	grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)) !important;
	gap: var(--nzle-space-xl) !important;
	padding: 0 !important;
	margin: 0 !important;
	list-style: none !important;
}

ul.products li.product,
.qodef-woo-product-list .product,
.qodef-woo-product-list .qodef-grid-item {
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
	float: none !important;
	display: flex !important;
	flex-direction: column !important;
}

/* Artwork Image Container */
ul.products li.product .woocommerce-loop-product__link {
	display: block !important;
	overflow: hidden !important;
	border-radius: 6px !important;
	border: 1px solid var(--nzle-border) !important;
	margin-bottom: var(--nzle-space-sm) !important;
}

ul.products li.product .woocommerce-loop-product__link img,
ul.products li.product img {
	width: 100% !important;
	height: auto !important;
	aspect-ratio: 4 / 5 !important;
	object-fit: cover !important;
	margin-bottom: 0 !important;
	border: none !important;
	transition: transform 0.6s cubic-bezier(0.25, 1, 0.5, 1) !important;
}

ul.products li.product:hover img {
	transform: scale(1.04) !important;
}

/* Loop Title and Metadata */
ul.products li.product .woocommerce-loop-product__title,
ul.products li.product h2 {
	font-family: var(--nzle-font-headings) !important;
	font-size: 1.35rem !important;
	font-weight: 300 !important;
	line-height: 1.3 !important;
	color: var(--nzle-text-primary) !important;
	margin: 0 0 4px 0 !important;
	padding: 0 !important;
	position: relative !important;
	display: inline-block !important;
}

ul.products li.product .woocommerce-loop-product__title::after {
	content: '' !important;
	position: absolute !important;
	left: 0 !important;
	bottom: -2px !important;
	width: 100% !important;
	height: 1px !important;
	background-color: var(--nzle-accent) !important;
	transform: scaleX(0) !important;
	transform-origin: right !important;
	transition: transform 0.35s cubic-bezier(0.25, 1, 0.5, 1) !important;
}

ul.products li.product:hover .woocommerce-loop-product__title::after {
	transform: scaleX(1) !important;
	transform-origin: left !important;
}

/* Custom loops metadata output */
.nzle-product-metadata {
	display: flex;
	flex-direction: column;
	gap: 2px;
	margin-bottom: 6px;
}

.nzle-product-artist {
	font-family: var(--nzle-font-body);
	font-size: 0.75rem;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: var(--nzle-letter-spacing-wide);
	color: var(--nzle-accent);
}

.nzle-product-medium {
	font-family: var(--nzle-font-body);
	font-size: 0.8rem;
	color: var(--nzle-text-secondary);
	font-weight: 300;
}

ul.products li.product .price {
	font-family: var(--nzle-font-body) !important;
	font-size: 0.9rem !important;
	font-weight: 500 !important;
	color: var(--nzle-text-primary) !important;
	margin: 0 !important;
}

/* Sidebar & Filters Override */
#qodef-woo-page-sidebar {
	padding-right: var(--nzle-space-lg) !important;
}

#qodef-woo-page-sidebar .widget {
	margin-bottom: var(--nzle-space-xl) !important;
	border-bottom: 1px solid var(--nzle-border) !important;
	padding-bottom: var(--nzle-space-lg) !important;
}

#qodef-woo-page-sidebar .widget .widget-title {
	font-family: var(--nzle-font-body) !important;
	font-size: 0.75rem !important;
	font-weight: 600 !important;
	text-transform: uppercase;
	letter-spacing: var(--nzle-letter-spacing-wide) !important;
	color: var(--nzle-text-primary) !important;
	margin-bottom: var(--nzle-space-md) !important;
}

/* ==========================================================================
   2. Single Product Details View (Museum Reading Room)
   ========================================================================== */

#qodef-woo-page.qodef--single {
	background-color: var(--nzle-bg-primary) !important;
	padding-top: var(--nzle-space-xl) !important;
	padding-bottom: var(--nzle-space-xxxl) !important;
}

/* Desktop Split Layout */
#qodef-woo-page.qodef--single .qodef-woo-single-inner {
	display: grid !important;
	grid-template-columns: 1.15fr 0.85fr !important;
	gap: var(--nzle-space-xxl) !important;
	align-items: start !important;
	margin-bottom: var(--nzle-space-xxxl) !important;
}

@media (max-width: 991px) {
	#qodef-woo-page.qodef--single .qodef-woo-single-inner {
		grid-template-columns: 1fr !important;
		gap: var(--nzle-space-lg) !important;
	}
}

/* Landscape / Portrait Image container */
#qodef-woo-page.qodef--single .qodef-woo-single-image {
	border: 1px solid var(--nzle-border) !important;
	background-color: var(--nzle-bg-secondary) !important;
	padding: var(--nzle-space-xl) !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
}

#qodef-woo-page.qodef--single .qodef-woo-single-image img {
	width: 100% !important;
	height: auto !important;
	object-fit: contain !important;
	box-shadow: 0 15px 50px rgba(0,0,0,0.03) !important;
}

/* Entry Summary Details Column */
#qodef-woo-page.qodef--single .entry-summary {
	padding-left: 0 !important;
}

.nzle-single-product-artist {
	font-family: var(--nzle-font-body) !important;
	font-size: 0.8rem !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
	letter-spacing: var(--nzle-letter-spacing-extra-wide) !important;
	color: var(--nzle-accent) !important;
	margin-bottom: var(--nzle-space-xs) !important;
}

#qodef-woo-page.qodef--single .product_title {
	font-family: var(--nzle-font-headings) !important;
	font-size: clamp(2.2rem, 4vw, 3.25rem) !important;
	font-weight: 300 !important;
	line-height: 1.15 !important;
	color: var(--nzle-text-primary) !important;
	margin: 0 0 var(--nzle-space-xs) 0 !important;
}

.nzle-single-product-medium {
	font-family: var(--nzle-font-body) !important;
	font-size: 0.95rem !important;
	color: var(--nzle-text-secondary) !important;
	font-weight: 300 !important;
	margin-bottom: var(--nzle-space-sm) !important;
}

#qodef-woo-page.qodef--single .entry-summary .price {
	font-family: var(--nzle-font-body) !important;
	font-size: 1.35rem !important;
	font-weight: 400 !important;
	color: var(--nzle-text-primary) !important;
	letter-spacing: var(--nzle-letter-spacing-wide) !important;
	margin-bottom: var(--nzle-space-lg) !important;
	display: block;
}

/* Form single purchase */
#qodef-woo-page.qodef--single .quantity {
	display: none !important;
}

#qodef-woo-page.qodef--single form.cart {
	margin: var(--nzle-space-lg) 0 !important;
}

.single_add_to_cart_button.button.alt,
#place_order {
	width: 100% !important;
	max-width: 400px !important;
	background-color: var(--nzle-black) !important;
	color: var(--nzle-white) !important;
	border: 1px solid var(--nzle-black) !important;
	padding: 16px 30px !important;
	font-family: var(--nzle-font-body) !important;
	font-size: 0.8rem !important;
	font-weight: 500;
	text-transform: uppercase !important;
	letter-spacing: var(--nzle-letter-spacing-wide) !important;
	border-radius: 8px !important;
	cursor: pointer;
	transition: var(--nzle-transition-default) !important;
}

.single_add_to_cart_button.button.alt:hover,
#place_order:hover {
	background-color: var(--nzle-accent) !important;
	border-color: var(--nzle-accent) !important;
}

/* Assurances Block (Flat text style) */
.nzle-product-assurances {
	border-top: 1px solid var(--nzle-border) !important;
	border-bottom: 1px solid var(--nzle-border) !important;
	padding: var(--nzle-space-md) 0 !important;
	margin: var(--nzle-space-lg) 0 !important;
	max-width: 400px;
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.nzle-assurance-item {
	display: flex;
	align-items: center;
	gap: 10px;
}

.nzle-assurance-icon {
	color: var(--nzle-accent) !important;
	display: flex;
	align-items: center;
}

.nzle-assurance-text {
	font-family: var(--nzle-font-body) !important;
	font-size: 0.85rem !important;
	color: var(--nzle-text-secondary) !important;
	font-weight: 300;
}

/* Flat, Borderless Artist Bio Column */
.nzle-single-product-artist-bio {
	background-color: var(--nzle-bg-secondary) !important;
	border: 1px solid var(--nzle-border) !important;
	padding: var(--nzle-space-xl) !important;
	margin-bottom: var(--nzle-space-xxl) !important;
}

.nzle-bio-title {
	font-family: var(--nzle-font-headings) !important;
	font-size: 1.35rem !important;
	font-weight: 300 !important;
	color: var(--nzle-text-primary) !important;
	margin-bottom: var(--nzle-space-sm) !important;
}

.nzle-bio-content {
	font-family: var(--nzle-font-body) !important;
	font-size: 0.95rem !important;
	line-height: 1.7 !important;
	color: var(--nzle-text-secondary) !important;
	font-weight: 300 !important;
}

/* Related Artworks Loops */
.related.products {
	border-top: 1px solid var(--nzle-border) !important;
	padding-top: var(--nzle-space-xxl) !important;
	margin-top: var(--nzle-space-xxl) !important;
}

.related.products h2 {
	font-family: var(--nzle-font-headings) !important;
	font-size: 1.85rem !important;
	font-weight: 300 !important;
	color: var(--nzle-text-primary) !important;
	text-align: center !important;
	margin-bottom: var(--nzle-space-xl) !important;
}

/* Shop Catalog Hero Header */
.nzle-shop-hero {
	padding: var(--nzle-space-xl) 0 !important;
	margin-bottom: var(--nzle-space-xl) !important;
	border-bottom: 1px solid var(--nzle-border) !important;
	width: 100% !important;
}

.nzle-shop-hero-title {
	font-size: clamp(2.8rem, 6vw, 4.5rem) !important;
	line-height: 1.1 !important;
	margin-bottom: var(--nzle-space-sm) !important;
	font-weight: 300 !important;
	letter-spacing: var(--nzle-letter-spacing-tight) !important;
	font-family: var(--nzle-font-headings) !important;
	color: var(--nzle-text-primary) !important;
}

.nzle-shop-hero-lead {
	font-family: var(--nzle-font-headings) !important;
	font-size: clamp(1.25rem, 2.5vw, 1.65rem) !important;
	font-style: italic !important;
	color: var(--nzle-text-secondary) !important;
	max-width: 800px !important;
	line-height: 1.5 !important;
	font-weight: 300 !important;
	margin-bottom: 0 !important;
}

/* ==========================================================================
   Single Product Details Refinements
   ========================================================================== */

/* Hide Default WooCommerce Add to Cart button when Acquire button is present */
#qodef-woo-page.qodef--single form.cart button.single_add_to_cart_button:not(.nzle-buy-now-button) {
	display: none !important;
}

/* Enforce Full-Width for custom Acquire This Artwork CTA */
#qodef-woo-page.qodef--single form.cart button.nzle-buy-now-button {
	display: block !important;
	width: 100% !important;
	max-width: 400px !important;
	margin: 0 !important;
}

/* Editorial WooCommerce Tabs styling override */
#qodef-woo-page.qodef--single .woocommerce-tabs {
	border: none !important;
	background: transparent !important;
	padding: 0 !important;
	margin-top: var(--nzle-space-xl) !important;
}

#qodef-woo-page.qodef--single .woocommerce-tabs ul.tabs {
	display: none !important; /* Hide tabs header entirely, since we only show details */
}

#qodef-woo-page.qodef--single .woocommerce-tabs .woocommerce-Tabs-panel {
	border: none !important;
	padding: 0 !important;
}

#qodef-woo-page.qodef--single .woocommerce-tabs h2 {
	font-family: var(--nzle-font-headings) !important;
	font-size: 1.35rem !important;
	font-weight: 300 !important;
	color: var(--nzle-text-primary) !important;
	margin-bottom: var(--nzle-space-sm) !important;
	border-bottom: 1px solid var(--nzle-border) !important;
	padding-bottom: 6px !important;
	text-transform: none !important;
}
