/**
 * Theme Name: JCF_custom - Luxury Fashion Edition
 * Aesthetic: #1e1e1e & Golden Luxury Palette (Zellbury Inspired UI)
 */

@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,400&display=swap');

:root {
	/* Core Luxury Color Palette (#1e1e1e & Golden) */
	--zb-black: #1e1e1e;
	--zb-dark: #1e1e1e;
	--zb-body-text: #2c2c2c;
	--zb-muted: #787878;
	--zb-light-gray: #f7f7f8;
	--zb-border: #e6e6ea;
	--zb-border-subtle: #f0f0f3;
	--zb-white: #ffffff;
	
	/* Luxury Golden Accents */
	--zb-gold: #d4af37;
	--zb-gold-metallic: #c5a059;
	--zb-gold-light: #fdfaf2;
	--zb-gold-hover: #b89327;
	--zb-gold-border: #e2c974;
	--zb-gold-glow: rgba(212, 175, 55, 0.35);

	/* 24k Metallic Luxury Gold Gradients */
	--zb-gold-gradient-primary: linear-gradient(135deg, #fdf1b8 0%, #e5c06a 25%, #fff5c0 50%, #c59b27 75%, #a1740e 100%);
	--zb-gold-gradient-heading: linear-gradient(135deg, #fae8a4 0%, #dfba73 28%, #fff0a8 50%, #c59b27 75%, #9e720d 100%);
	--zb-gold-gradient-btn: linear-gradient(135deg, #ecd38c 0%, #dfba73 30%, #fff2b2 55%, #c59b27 80%, #9e720d 100%);
	--zb-gold-gradient-btn-hover: linear-gradient(135deg, #fff7cc 0%, #ecd38c 35%, #dfba73 70%, #b38515 100%);
	--zb-gold-gradient-border: linear-gradient(90deg, transparent 0%, rgba(212,175,55,0.3) 20%, rgba(253,241,184,0.85) 50%, rgba(212,175,55,0.3) 80%, transparent 100%);
	--zb-gold-gradient-border-full: linear-gradient(90deg, #9e720d 0%, #dfba73 25%, #fff2b2 50%, #c59b27 75%, #9e720d 100%);
	--zb-gold-gradient-badge: linear-gradient(135deg, #fdf1b8 0%, #dfba73 50%, #c59b27 100%);
	
	/* Accent & Sale variables set to Golden */
	--zb-crimson: #d4af37;
	--zb-sale: #d4af37;
	--zb-sale-bg: #fdfaf2;
	--zb-emerald: #108554;
	
	/* Luxury Shadows with #1e1e1e undertone */
	--zb-shadow-sm: 0 2px 8px rgba(30, 30, 30, 0.05);
	--zb-shadow-md: 0 6px 22px rgba(30, 30, 30, 0.08);
	--zb-shadow-lg: 0 16px 40px rgba(30, 30, 30, 0.14);
	--zb-shadow-gold: 0 4px 18px rgba(212, 175, 55, 0.35);
	--zb-shadow-drawer: -6px 0 35px rgba(30, 30, 30, 0.25);

	/* Typography & Dimensions */
	--zb-font: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
	--zb-radius-sm: 2px;
	--zb-radius-md: 6px;
	--zb-radius-lg: 12px;
	--zb-radius-full: 9999px;
	--zb-header-height: 72px;
	--zb-topbar-height: 38px;
	
	/* Override Theme CSS variables */
	--font-text: 'Plus Jakarta Sans', sans-serif !important;
	--text-color: #1e1e1e !important;
	--accent-color: #d4af37 !important;
	--button-color: #1e1e1e !important;
	--button-color-hover: #d4af37 !important;
	--border-color-light: #e6e6ea !important;
	--border-color-dark: #1e1e1e !important;
	--image-grid-prop: 133.33% !important; /* 3:4 Portrait Ratio */
	--image-product-prop: 133.33% !important;
}

/* ==========================================================================
   Global Resets & Premium Polish
   ========================================================================== */
body, html {
	font-family: var(--zb-font) !important;
	color: var(--zb-body-text);
	background-color: var(--zb-white);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	letter-spacing: -0.01em;
}

h1, h2, h3, h4, h5, h6,
.c-page-header__title,
.woocommerce-loop-product__title {
	font-family: var(--zb-font) !important;
	color: var(--zb-black);
	letter-spacing: -0.02em;
	font-weight: 600;
}

a {
	transition: color 0.2s ease, opacity 0.2s ease;
}

/* Remove dated grid outline box borders */
.c-product-grid__item:after {
	display: none !important;
	border: none !important;
}

.c-product-grid {
	margin: 0 -12px !important;
}

/* ==========================================================================
   Top Announcement Bar (#1e1e1e with Golden Ticker)
   ========================================================================== */
.c-header__advert_bar,
.zb-announcement-bar {
	background-color: var(--zb-black) !important;
	color: var(--zb-white) !important;
	height: var(--zb-topbar-height);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 11.5px;
	font-weight: 500;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	position: relative;
	z-index: 1000;
	padding: 0 20px;
	border-bottom: 1px solid rgba(212, 175, 55, 0.25);
}

.zb-announcement-bar__inner {
	width: 100%;
	max-width: 1440px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.zb-announcement-bar__message {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 0 auto;
	white-space: nowrap;
	overflow: hidden;
}

.zb-announcement-bar__highlight {
	background: var(--zb-gold-gradient-heading) !important;
	-webkit-background-clip: text !important;
	-webkit-text-fill-color: transparent !important;
	font-weight: 800 !important;
	letter-spacing: 0.1em;
	display: inline-block;
}

.zb-announcement-bar__utility {
	display: flex;
	align-items: center;
	gap: 18px;
	font-size: 11px;
}

.zb-announcement-bar__utility a {
	color: rgba(255, 255, 255, 0.85);
	text-decoration: none;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	transition: color 0.2s ease;
}

.zb-announcement-bar__utility a:hover {
	color: var(--zb-gold);
}

/* ==========================================================================
   Header & Navigation (Sleek Sticky Luxury Bar)
   ========================================================================== */
.l-header {
	background-color: var(--zb-white);
	border-bottom: 1px solid var(--zb-border-subtle);
	transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
	position: sticky;
	top: 0;
	z-index: 990;
}

.l-header.is-sticky,
.c-header--sticky {
	box-shadow: var(--zb-shadow-md);
	border-bottom-color: rgba(212, 175, 55, 0.2);
	background: rgba(255, 255, 255, 0.97) !important;
	backdrop-filter: blur(16px);
}

.c-header__row-top,
.c-header__row {
	height: var(--zb-header-height) !important;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

/* Logo Styling */
.c-header__logo-empty,
.zb-brand-logo {
	font-family: var(--zb-font) !important;
	font-size: 24px !important;
	font-weight: 800 !important;
	letter-spacing: 0.2em !important;
	text-transform: uppercase !important;
	color: var(--zb-black) !important;
	-webkit-text-stroke: 0 !important;
	text-decoration: none;
	display: inline-block;
	transition: color 0.2s ease;
}

.zb-brand-logo:hover {
	color: var(--zb-gold);
}

/* Top Menu Links */
.c-top-menu__list {
	display: flex !important;
	align-items: center !important;
	gap: 28px !important;
	list-style: none;
	margin: 0 !important;
	padding: 0 !important;
}

.c-top-menu__item > a,
.zb-nav-link {
	font-size: 13px !important;
	font-weight: 600 !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
	color: var(--zb-black) !important;
	padding: 10px 0 !important;
	position: relative !important;
	display: inline-block;
	text-decoration: none;
}

.c-top-menu__item > a:hover,
.zb-nav-link:hover {
	color: var(--zb-gold) !important;
}

/* Luxury Animated Underline in Golden */
.c-top-menu__item > a::after,
.zb-nav-link::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 0;
	height: 2px;
	background-color: var(--zb-gold);
	transition: width 0.25s cubic-bezier(0.16, 1, 0.3, 1);
}

.c-top-menu__item:hover > a::after,
.zb-nav-link:hover::after {
	width: 100%;
}

/* Highlight "SALE / SPECIAL OFFERS" in Golden */
.c-top-menu__item--sale > a,
.zb-nav-link--sale {
	color: var(--zb-gold) !important;
	font-weight: 700 !important;
}

.c-top-menu__item--sale > a::after,
.zb-nav-link--sale::after {
	background-color: var(--zb-gold) !important;
}

/* Action Icons (Search, Wishlist, Account, Cart) */
.c-header__buttons,
.zb-header-actions {
	display: flex;
	align-items: center;
	gap: 20px;
}

.zb-icon-btn,
.c-header-button {
	position: relative;
	background: none;
	border: none;
	padding: 8px;
	color: var(--zb-black);
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: transform 0.15s ease, color 0.15s ease;
}

.zb-icon-btn:hover,
.c-header-button:hover {
	transform: translateY(-1px);
	color: var(--zb-gold);
}

.zb-icon-btn svg,
.c-header-button svg {
	width: 22px;
	height: 22px;
	stroke-width: 1.75;
}

/* Badge Count Indicators (#1e1e1e with Golden Accent) */
.zb-badge-count,
.c-header-cart__count,
.c-header__wishlist-count {
	position: absolute;
	top: 2px;
	right: 0px;
	background-color: var(--zb-gold);
	color: var(--zb-black);
	font-size: 10px;
	font-weight: 800;
	min-width: 18px;
	height: 18px;
	line-height: 18px;
	border-radius: var(--zb-radius-full);
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0 4px;
	border: 1.5px solid var(--zb-white);
	box-shadow: 0 2px 6px var(--zb-gold-glow);
}

/* ==========================================================================
   Product Cards & Loop (3:4 Tall Fashion Cards)
   ========================================================================== */
.c-product-grid__item,
.zb-product-card {
	padding: 0 12px 32px 12px !important;
	position: relative;
	display: flex;
	flex-direction: column;
	transition: transform 0.3s ease;
}

.c-product-grid__thumb-wrap,
.zb-product-card__media {
	position: relative;
	width: 100%;
	padding-bottom: 133.33% !important; /* 3:4 Ratio */
	overflow: hidden;
	background-color: var(--zb-light-gray);
	border-radius: var(--zb-radius-sm);
	margin-bottom: 14px;
}

.c-product-grid__thumb,
.zb-product-card__img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	transition: transform 0.7s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.5s ease;
}

/* Secondary Image Hover Flip */
.zb-product-card__img--secondary {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.4s ease, transform 0.7s cubic-bezier(0.16, 1, 0.3, 1);
}

.c-product-grid__item:hover .zb-product-card__img--primary,
.zb-product-card:hover .zb-product-card__img--primary {
	transform: scale(1.04);
}

.c-product-grid__item:hover .zb-product-card__img--secondary,
.zb-product-card:hover .zb-product-card__img--secondary {
	opacity: 1;
	transform: scale(1.04);
}

/* Floating Frosted-Glass Wishlist Button */
.zb-wishlist-btn,
.c-product-grid__thumb-wrap .c-product-grid__thumb-button {
	position: absolute;
	top: 12px;
	right: 12px;
	width: 36px;
	height: 36px;
	border-radius: var(--zb-radius-full);
	background: rgba(255, 255, 255, 0.9);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	border: 1px solid rgba(255, 255, 255, 0.6);
	color: var(--zb-black);
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	z-index: 10;
	box-shadow: var(--zb-shadow-sm);
	transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
}

.zb-wishlist-btn:hover,
.c-product-grid__thumb-wrap .c-product-grid__thumb-button:hover {
	transform: scale(1.1);
	background: #ffffff;
	color: var(--zb-gold);
	border-color: var(--zb-gold);
}

.zb-wishlist-btn.is-active svg {
	fill: var(--zb-gold);
	stroke: var(--zb-gold);
}

/* Solid Badges (Golden & #1e1e1e) */
.c-badge__list,
.zb-badge-container {
	position: absolute;
	top: 12px;
	left: 12px;
	display: flex;
	flex-direction: column;
	gap: 6px;
	z-index: 10;
	pointer-events: none;
}

.c-badge,
.zb-badge {
	font-family: var(--zb-font);
	font-size: 10px !important;
	font-weight: 700 !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
	padding: 4px 10px !important;
	border-radius: var(--zb-radius-sm) !important;
	line-height: 1.2 !important;
	border: none !important;
	box-shadow: var(--zb-shadow-sm);
	display: inline-block;
}

/* Golden Sale Tag */
.c-badge--sale,
.zb-badge--sale {
	background: linear-gradient(135deg, #d4af37, #b89327) !important;
	color: var(--zb-white) !important;
	box-shadow: 0 2px 8px var(--zb-gold-glow);
}

/* #1e1e1e New Tag */
.c-badge--new,
.zb-badge--new {
	background-color: var(--zb-black) !important;
	color: var(--zb-gold) !important;
	border: 1px solid var(--zb-gold) !important;
}

.zb-badge--unstitched {
	background-color: #ffffff !important;
	color: var(--zb-black) !important;
	border: 1px solid var(--zb-border) !important;
}

.c-badge--out-of-stock,
.zb-badge--soldout {
	background-color: #555555 !important;
	color: var(--zb-white) !important;
}

/* Quick Add / Size Selector Slide-up Drawer */
.zb-quick-size-bar {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	background: rgba(30, 30, 30, 0.92);
	backdrop-filter: blur(8px);
	padding: 10px 8px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	transform: translateY(100%);
	opacity: 0;
	transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
	z-index: 15;
	border-top: 1px solid rgba(212, 175, 55, 0.3);
}

.c-product-grid__item:hover .zb-quick-size-bar,
.zb-product-card:hover .zb-quick-size-bar {
	transform: translateY(0);
	opacity: 1;
}

.zb-size-pill {
	background: rgba(255, 255, 255, 0.12);
	border: 1px solid rgba(255, 255, 255, 0.3);
	color: #ffffff;
	font-size: 11px;
	font-weight: 600;
	min-width: 32px;
	height: 32px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: var(--zb-radius-sm);
	cursor: pointer;
	transition: all 0.15s ease;
	padding: 0 4px;
}

.zb-size-pill:hover {
	background: var(--zb-gold);
	border-color: var(--zb-gold);
	color: var(--zb-black);
	font-weight: 700;
	box-shadow: 0 2px 8px var(--zb-gold-glow);
}

/* Product Info & Meta Block */
.c-product-grid__details,
.zb-product-card__details {
	display: flex;
	flex-direction: column;
	text-align: left !important;
}

.zb-product-card__cat {
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--zb-gold-hover);
	margin-bottom: 4px;
}

.c-product-grid__item .woocommerce-loop-product__title,
.zb-product-card__title {
	font-size: 13.5px !important;
	font-weight: 500 !important;
	line-height: 1.4 !important;
	color: var(--zb-black) !important;
	margin: 0 0 6px 0 !important;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
	min-height: 38px;
}

.zb-product-card__title a {
	color: inherit;
	text-decoration: none;
}

.zb-product-card__title a:hover {
	color: var(--zb-gold);
}

/* Pricing Presentation */
.c-product-grid__price,
.price,
.zb-product-card__price-wrap {
	display: flex !important;
	align-items: baseline !important;
	gap: 8px !important;
	font-size: 14px !important;
	margin-top: 2px;
}

.price del,
.zb-price-regular {
	color: var(--zb-muted) !important;
	text-decoration: line-through !important;
	font-size: 12.5px !important;
	font-weight: 400 !important;
}

.price ins,
.zb-price-sale {
	color: var(--zb-gold-hover) !important;
	text-decoration: none !important;
	font-size: 15px !important;
	font-weight: 800 !important;
}

.zb-discount-tag {
	font-size: 11.5px;
	font-weight: 700;
	color: var(--zb-gold-hover);
	background: var(--zb-gold-light);
	border: 1px solid var(--zb-gold-border);
	padding: 1px 6px;
	border-radius: 2px;
}

/* ==========================================================================
   Category Story Navigation (Zellbury "Shop By Category")
   ========================================================================== */
.zb-category-stories {
	padding: 40px 0 20px;
	overflow-x: auto;
	scrollbar-width: none;
	-ms-overflow-style: none;
}

.zb-category-stories::-webkit-scrollbar {
	display: none;
}

.zb-category-stories__list {
	display: flex;
	gap: 24px;
	justify-content: flex-start;
	align-items: flex-start;
	list-style: none;
	padding: 0 16px;
	margin: 0 auto;
	max-width: 1440px;
}

.zb-story-item {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-decoration: none;
	width: 110px;
	flex-shrink: 0;
	text-align: center;
}

.zb-story-item__circle {
	width: 96px;
	height: 96px;
	border-radius: var(--zb-radius-full);
	overflow: hidden;
	border: 2px solid var(--zb-border);
	padding: 3px;
	margin-bottom: 10px;
	transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
	background: #ffffff;
}

.zb-story-item:hover .zb-story-item__circle {
	border-color: var(--zb-gold);
	transform: scale(1.06);
	box-shadow: 0 4px 18px var(--zb-gold-glow);
}

.zb-story-item__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: var(--zb-radius-full);
}

.zb-story-item__title {
	font-size: 12px;
	font-weight: 600;
	color: var(--zb-black);
	letter-spacing: 0.02em;
	text-transform: capitalize;
}

/* ==========================================================================
   Campaign Banners & Section Headers
   ========================================================================== */
.zb-section-header {
	text-align: center;
	margin: 48px 0 32px;
}

.zb-section-header__title {
	font-size: 26px;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--zb-black);
	margin-bottom: 6px;
}

.zb-section-header__subtitle {
	font-size: 13.5px;
	color: var(--zb-muted);
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.zb-hero-banner {
	position: relative;
	width: 100%;
	min-height: 520px;
	background-color: var(--zb-black);
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	color: #ffffff;
	text-align: center;
}

.zb-hero-banner__bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	opacity: 0.85;
}

.zb-hero-banner__content {
	position: relative;
	z-index: 2;
	max-width: 720px;
	padding: 40px 20px;
}

.zb-hero-banner__tag {
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	color: var(--zb-gold);
	margin-bottom: 12px;
	display: inline-block;
}

.zb-hero-banner__heading {
	font-size: 46px;
	font-weight: 800;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	line-height: 1.15;
	margin-bottom: 18px;
	color: #ffffff;
}

.zb-hero-banner__cta {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	background: linear-gradient(135deg, #d4af37, #b89327);
	color: var(--zb-black);
	font-size: 12.5px;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	padding: 14px 34px;
	border-radius: var(--zb-radius-sm);
	text-decoration: none;
	transition: all 0.3s ease;
	border: 1px solid var(--zb-gold);
	box-shadow: 0 4px 16px var(--zb-gold-glow);
}

.zb-hero-banner__cta:hover {
	background: #ffffff;
	color: var(--zb-black);
	border-color: #ffffff;
	transform: translateY(-2px);
	box-shadow: var(--zb-shadow-md);
}

/* ==========================================================================
   Slide-out Cart Drawer (#1e1e1e & Golden Accents)
   ========================================================================== */
.zb-drawer-overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(30, 30, 30, 0.65);
	backdrop-filter: blur(5px);
	z-index: 9998;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.35s ease, visibility 0.35s ease;
}

.zb-drawer-overlay.is-active {
	opacity: 1;
	visibility: visible;
}

.zb-cart-drawer {
	position: fixed;
	top: 0;
	right: 0;
	width: 420px;
	max-width: 92vw;
	height: 100vh;
	background-color: var(--zb-white);
	z-index: 9999;
	box-shadow: var(--zb-shadow-drawer);
	transform: translateX(100%);
	transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
	display: flex;
	flex-direction: column;
}

.zb-cart-drawer.is-active {
	transform: translateX(0);
}

.zb-cart-drawer__header {
	padding: 20px 24px;
	border-bottom: 1px solid var(--zb-border);
	display: flex;
	align-items: center;
	justify-content: space-between;
	background: var(--zb-black);
	color: var(--zb-white);
}

.zb-cart-drawer__title {
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--zb-white);
	display: flex;
	align-items: center;
	gap: 8px;
}

.zb-cart-drawer__title svg {
	color: var(--zb-gold);
}

.zb-cart-drawer__close {
	background: none;
	border: none;
	padding: 6px;
	cursor: pointer;
	color: var(--zb-white);
	display: flex;
	align-items: center;
	justify-content: center;
	transition: transform 0.2s ease, color 0.2s ease;
}

.zb-cart-drawer__close:hover {
	transform: rotate(90deg);
	color: var(--zb-gold);
}

/* Free Shipping Meter with Golden Progress Bar */
.zb-shipping-meter {
	background: var(--zb-gold-light);
	padding: 14px 24px;
	border-bottom: 1px solid var(--zb-gold-border);
}

.zb-shipping-meter__text {
	font-size: 12px;
	font-weight: 600;
	color: var(--zb-black);
	margin-bottom: 8px;
	display: flex;
	align-items: center;
	gap: 6px;
}

.zb-shipping-meter__text strong {
	color: var(--zb-gold-hover);
}

.zb-shipping-meter__bar {
	width: 100%;
	height: 6px;
	background: #ebd8a7;
	border-radius: var(--zb-radius-full);
	overflow: hidden;
}

.zb-shipping-meter__fill {
	height: 100%;
	background: linear-gradient(90deg, #c5a059, #d4af37, #f3e5ab);
	border-radius: var(--zb-radius-full);
	transition: width 0.5s ease;
}

/* Cart Items Body */
.zb-cart-drawer__body {
	flex: 1;
	overflow-y: auto;
	padding: 20px 24px;
	display: flex;
	flex-direction: column;
	gap: 18px;
}

.zb-cart-item {
	display: flex;
	gap: 16px;
	padding-bottom: 18px;
	border-bottom: 1px solid var(--zb-border-subtle);
	position: relative;
}

.zb-cart-item__img {
	width: 74px;
	height: 98px;
	object-fit: cover;
	border-radius: var(--zb-radius-sm);
	background: var(--zb-light-gray);
	flex-shrink: 0;
	border: 1px solid var(--zb-border);
}

.zb-cart-item__info {
	flex: 1;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.zb-cart-item__title {
	font-size: 13px;
	font-weight: 600;
	color: var(--zb-black);
	line-height: 1.35;
	margin-bottom: 4px;
}

.zb-cart-item__variant {
	font-size: 11.5px;
	color: var(--zb-muted);
	margin-bottom: 8px;
}

.zb-cart-item__bottom {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.zb-quantity-stepper {
	display: inline-flex;
	align-items: center;
	border: 1px solid var(--zb-border);
	border-radius: var(--zb-radius-sm);
	background: #ffffff;
}

.zb-quantity-btn {
	background: none;
	border: none;
	width: 28px;
	height: 28px;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	font-size: 14px;
	color: var(--zb-black);
	transition: color 0.15s ease;
}

.zb-quantity-btn:hover {
	color: var(--zb-gold);
}

.zb-quantity-input {
	width: 32px;
	text-align: center;
	font-size: 12px;
	font-weight: 600;
	border: none;
	outline: none;
	padding: 0;
	color: var(--zb-black);
}

.zb-cart-item__price {
	font-size: 14px;
	font-weight: 700;
	color: var(--zb-black);
}

.zb-cart-item__remove {
	background: none;
	border: none;
	color: var(--zb-muted);
	cursor: pointer;
	padding: 4px;
	transition: color 0.15s ease;
}

.zb-cart-item__remove:hover {
	color: var(--zb-gold);
}

/* Cart Footer */
.zb-cart-drawer__footer {
	padding: 20px 24px;
	border-top: 1px solid var(--zb-border);
	background: var(--zb-white);
}

.zb-cart-subtotal-row {
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: 15px;
	font-weight: 700;
	color: var(--zb-black);
	margin-bottom: 6px;
}

.zb-cart-note {
	font-size: 11px;
	color: var(--zb-muted);
	margin-bottom: 16px;
}

.zb-btn-checkout {
	width: 100%;
	background: var(--zb-gold-gradient-btn) !important;
	color: #171101 !important;
	border: 1px solid rgba(255, 255, 255, 0.5) !important;
	padding: 16px;
	font-size: 13px;
	font-weight: 800 !important;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	border-radius: var(--zb-radius-sm);
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	box-shadow: 0 4px 18px rgba(212, 175, 55, 0.45), inset 0 1px 1px rgba(255, 255, 255, 0.8) !important;
	transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
	text-decoration: none;
	text-shadow: 0 1px 0 rgba(255, 255, 255, 0.4);
}

.zb-btn-checkout:hover {
	background: var(--zb-gold-gradient-btn-hover) !important;
	color: #000000 !important;
	box-shadow: 0 6px 26px rgba(212, 175, 55, 0.7), inset 0 1px 2px rgba(255, 255, 255, 0.95) !important;
	transform: translateY(-2px);
}

/* ==========================================================================
   Luxury Multi-Column Footer (#141414 Background with 24k Gold Gradients)
   ========================================================================== */
#main-footer,
.zb-footer-wrapper,
.l-footer,
.zb-footer {
	background-color: #141414 !important;
	color: #ffffff !important;
	padding-top: 60px !important;
	padding-bottom: 36px !important;
	font-size: 13px !important;
	line-height: 1.65 !important;
	border-top: 2px solid transparent !important;
	border-image: var(--zb-gold-gradient-border-full) 1 !important;
	width: 100% !important;
	position: relative !important;
	box-sizing: border-box !important;
}

.zb-footer__container {
	max-width: 1440px !important;
	margin: 0 auto !important;
	padding: 0 28px !important;
	box-sizing: border-box !important;
}

.zb-footer__newsletter {
	border-bottom: 1px solid transparent !important;
	border-image: var(--zb-gold-gradient-border) 1 !important;
	padding-bottom: 44px !important;
	margin-bottom: 48px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	flex-wrap: wrap !important;
	gap: 28px !important;
}

.zb-footer__newsletter-content h3 {
	font-size: 20px !important;
	font-weight: 800 !important;
	letter-spacing: 0.1em !important;
	text-transform: uppercase !important;
	margin: 0 0 6px 0 !important;
	background: var(--zb-gold-gradient-heading) !important;
	-webkit-background-clip: text !important;
	-webkit-text-fill-color: transparent !important;
	display: inline-block !important;
}

.zb-footer__newsletter-content p {
	color: rgba(255, 255, 255, 0.75) !important;
	font-size: 13.5px !important;
	margin: 0 !important;
}

.zb-newsletter-form {
	display: flex !important;
	gap: 10px !important;
	width: 100% !important;
	max-width: 480px !important;
}

/* Bulletproof newsletter input avoiding theme overrides */
.zb-footer input.zb-newsletter-input,
.zb-footer form.zb-newsletter-form input[type="email"] {
	flex: 1 !important;
	background: rgba(255, 255, 255, 0.07) !important;
	background-color: rgba(255, 255, 255, 0.07) !important;
	border: 1px solid rgba(212, 175, 55, 0.4) !important;
	padding: 13px 20px !important;
	font-size: 13.5px !important;
	color: #ffffff !important;
	border-radius: 4px !important;
	outline: none !important;
	box-shadow: inset 0 2px 5px rgba(0, 0, 0, 0.45) !important;
	transition: all 0.25s ease !important;
	box-sizing: border-box !important;
	height: auto !important;
}

.zb-footer input.zb-newsletter-input::placeholder,
.zb-footer form.zb-newsletter-form input[type="email"]::placeholder {
	color: rgba(255, 255, 255, 0.45) !important;
}

.zb-footer input.zb-newsletter-input:focus,
.zb-footer form.zb-newsletter-form input[type="email"]:focus {
	background: rgba(255, 255, 255, 0.12) !important;
	border-color: #fceda2 !important;
	box-shadow: 0 0 16px rgba(212, 175, 55, 0.4), inset 0 2px 5px rgba(0, 0, 0, 0.45) !important;
}

/* 24k Metallic Gold Gradient Submit Button */
.zb-footer button.zb-newsletter-btn,
.zb-footer .zb-newsletter-btn {
	background: var(--zb-gold-gradient-btn) !important;
	color: #171101 !important;
	border: 1px solid rgba(255, 255, 255, 0.5) !important;
	padding: 13px 28px !important;
	font-size: 12px !important;
	font-weight: 800 !important;
	letter-spacing: 0.14em !important;
	text-transform: uppercase !important;
	border-radius: 4px !important;
	cursor: pointer !important;
	box-shadow: 0 4px 18px rgba(212, 175, 55, 0.45), inset 0 1px 1px rgba(255, 255, 255, 0.8) !important;
	transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
	text-shadow: 0 1px 0 rgba(255, 255, 255, 0.4) !important;
	white-space: nowrap !important;
}

.zb-footer button.zb-newsletter-btn:hover,
.zb-footer .zb-newsletter-btn:hover {
	background: var(--zb-gold-gradient-btn-hover) !important;
	box-shadow: 0 6px 26px rgba(212, 175, 55, 0.7), inset 0 1px 2px rgba(255, 255, 255, 0.95) !important;
	transform: translateY(-2px) !important;
	color: #000000 !important;
}

/* Footer Columns */
.zb-footer__grid {
	display: grid !important;
	grid-template-columns: 1.8fr 1.1fr 1.1fr 1.4fr !important;
	gap: 40px !important;
	margin-bottom: 50px !important;
}

.zb-footer__col h4 {
	font-size: 13px !important;
	font-weight: 800 !important;
	letter-spacing: 0.14em !important;
	text-transform: uppercase !important;
	margin: 0 0 20px 0 !important;
	background: var(--zb-gold-gradient-heading) !important;
	-webkit-background-clip: text !important;
	-webkit-text-fill-color: transparent !important;
	display: inline-block !important;
}

.zb-footer-logo {
	font-family: 'Playfair Display', Georgia, serif !important;
	font-size: 24px !important;
	font-weight: 800 !important;
	letter-spacing: 0.16em !important;
	text-transform: uppercase !important;
	margin-bottom: 14px !important;
	background: linear-gradient(135deg, #ffffff 0%, #fae8a4 35%, #dfba73 70%, #c59b27 100%) !important;
	-webkit-background-clip: text !important;
	-webkit-text-fill-color: transparent !important;
	display: inline-block !important;
}

.zb-footer__links {
	list-style: none !important;
	padding: 0 !important;
	margin: 0 !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 12px !important;
}

.zb-footer__links li {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 1.5 !important;
}

.zb-footer__links a {
	color: rgba(255, 255, 255, 0.72) !important;
	text-decoration: none !important;
	font-size: 13px !important;
	transition: all 0.25s ease !important;
	display: inline-block !important;
}

.zb-footer__links a:hover {
	background: var(--zb-gold-gradient-heading) !important;
	-webkit-background-clip: text !important;
	-webkit-text-fill-color: transparent !important;
	transform: translateX(4px) !important;
}

.zb-sale-highlight {
	background: var(--zb-gold-gradient-heading) !important;
	-webkit-background-clip: text !important;
	-webkit-text-fill-color: transparent !important;
	font-weight: 800 !important;
	letter-spacing: 0.04em !important;
}

/* WhatsApp Helpline Button */
.zb-footer .zb-whatsapp-btn {
	display: inline-flex !important;
	align-items: center !important;
	gap: 10px !important;
	background: linear-gradient(135deg, rgba(37, 211, 102, 0.12) 0%, rgba(18, 140, 68, 0.22) 100%) !important;
	border: 1px solid rgba(212, 175, 55, 0.45) !important;
	color: #fceda2 !important;
	padding: 10px 20px !important;
	border-radius: 30px !important;
	font-weight: 700 !important;
	font-size: 13px !important;
	letter-spacing: 0.04em !important;
	text-decoration: none !important;
	margin-top: 18px !important;
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.35) !important;
	transition: all 0.3s ease !important;
}

.zb-footer .zb-whatsapp-btn svg {
	fill: #25d366 !important;
	transition: transform 0.3s ease !important;
}

.zb-footer .zb-whatsapp-btn:hover {
	background: linear-gradient(135deg, #25d366 0%, #1a9e4b 100%) !important;
	border-color: #25d366 !important;
	color: #ffffff !important;
	box-shadow: 0 6px 22px rgba(37, 211, 102, 0.45) !important;
	transform: translateY(-2px) !important;
}

.zb-footer .zb-whatsapp-btn:hover svg {
	fill: #ffffff !important;
	transform: scale(1.1) !important;
}

/* Bottom Bar */
.zb-footer__bottom {
	border-top: 1px solid transparent !important;
	border-image: var(--zb-gold-gradient-border) 1 !important;
	padding-top: 24px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	flex-wrap: wrap !important;
	gap: 16px !important;
	color: rgba(255, 255, 255, 0.65) !important;
	font-size: 12px !important;
}

.zb-payment-icons {
	display: flex !important;
	align-items: center !important;
	gap: 10px !important;
}

.zb-payment-badge {
	background: #ffffff !important;
	padding: 4px 10px !important;
	border-radius: 3px !important;
	display: inline-flex !important;
	align-items: center !important;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.25) !important;
	border: 1px solid rgba(212, 175, 55, 0.25) !important;
}

.zb-payment-badge--cod {
	background: var(--zb-gold-gradient-badge) !important;
	color: #1a1402 !important;
	font-size: 10.5px !important;
	font-weight: 800 !important;
	letter-spacing: 0.08em !important;
	padding: 5px 12px !important;
	border: 1px solid rgba(255, 255, 255, 0.4) !important;
	text-shadow: 0 1px 0 rgba(255, 255, 255, 0.3) !important;
}

/* ==========================================================================
   Mobile Shopping Dock (#1e1e1e & Golden Accents)
   ========================================================================== */
.zb-mobile-dock {
	display: none;
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	background: rgba(30, 30, 30, 0.98);
	backdrop-filter: blur(12px);
	border-top: 1px solid rgba(212, 175, 55, 0.3);
	height: 56px;
	z-index: 990;
	justify-content: space-around;
	align-items: center;
	box-shadow: 0 -4px 16px rgba(0, 0, 0, 0.2);
}

.zb-dock-item {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	color: rgba(255, 255, 255, 0.7);
	text-decoration: none;
	font-size: 10px;
	font-weight: 600;
	letter-spacing: 0.02em;
	gap: 2px;
	position: relative;
	padding: 6px 12px;
	transition: color 0.15s ease;
}

.zb-dock-item svg {
	width: 20px;
	height: 20px;
	stroke-width: 1.75;
}

.zb-dock-item:hover,
.zb-dock-item.is-active {
	color: var(--zb-gold);
}

/* Toast Notifications in #1e1e1e with Golden Border */
.zb-toast {
	position: fixed;
	bottom: 80px;
	left: 50%;
	transform: translateX(-50%) translateY(20px);
	background: var(--zb-black);
	color: #ffffff;
	border: 1px solid var(--zb-gold);
	padding: 12px 24px;
	border-radius: var(--zb-radius-full);
	font-size: 13px;
	font-weight: 600;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3), 0 0 12px var(--zb-gold-glow);
	z-index: 10000;
	opacity: 0;
	pointer-events: none;
	transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
	display: flex;
	align-items: center;
	gap: 8px;
}

.zb-toast.is-visible {
	opacity: 1;
	transform: translateX(-50%) translateY(0);
}

/* ==========================================================================
   Responsive Breakpoints
   ========================================================================== */
@media (max-width: 1024px) {
	.zb-footer__grid {
		grid-template-columns: 1fr 1fr;
	}
	.c-top-menu__list {
		gap: 16px !important;
	}
	.zb-hero-banner__heading {
		font-size: 34px;
	}
}

@media (max-width: 768px) {
	.zb-mobile-dock {
		display: flex;
	}
	body {
		padding-bottom: 56px;
	}
	.zb-announcement-bar__utility {
		display: none;
	}
	.zb-footer__grid {
		grid-template-columns: 1fr;
		gap: 30px;
	}
	.zb-footer__newsletter {
		flex-direction: column;
		align-items: flex-start;
	}
	.zb-newsletter-form {
		max-width: 100%;
	}
	.zb-hero-banner {
		min-height: 420px;
	}
	.zb-hero-banner__heading {
		font-size: 28px;
	}
	.c-product-grid__item,
	.zb-product-card {
		padding: 0 6px 20px 6px !important;
	}
	.c-product-grid {
		margin: 0 -6px !important;
	}
	.zb-story-item {
		width: 80px;
	}
	.zb-story-item__circle {
		width: 72px;
		height: 72px;
	}
}

/* ==========================================================================
   Zellbury Left Mega Drawer Menu (Screenshot 2 Match)
   ========================================================================== */
.zb-menu-drawer-overlay,
.zb-drawer-overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.65);
	backdrop-filter: blur(8px);
	z-index: 9998;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.35s ease, visibility 0.35s ease;
}

.zb-menu-drawer-overlay.is-active,
.zb-drawer-overlay.is-active {
	opacity: 1;
	visibility: visible;
}

.zb-menu-drawer {
	position: fixed;
	top: 0;
	left: 0;
	width: 440px;
	max-width: 90vw;
	height: 100vh;
	background-color: #1e1e1e;
	color: #ffffff;
	z-index: 9999;
	box-shadow: 6px 0 35px rgba(0, 0, 0, 0.4);
	transform: translateX(-100%);
	transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1);
	display: flex;
	flex-direction: column;
	overflow-y: auto;
}

.zb-menu-drawer.is-active {
	transform: translateX(0);
}

/* Zellbury Left Mega Drawer Menu Header */
.zb-menu-drawer__header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 20px 24px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
	background: #181818;
}

.zb-menu-drawer__brand {
	font-family: var(--font-serif, 'Playfair Display', Georgia, serif);
	font-size: 20px;
	font-weight: 800;
	letter-spacing: 0.16em;
	color: #ffffff;
}

.zb-menu-drawer__close,
.zb-menu-close-btn {
	background: none;
	border: none;
	color: rgba(255, 255, 255, 0.7);
	font-size: 20px;
	cursor: pointer;
	padding: 6px;
	transition: color 0.2s, transform 0.2s;
	display: flex;
	align-items: center;
	justify-content: center;
}

.zb-menu-drawer__close:hover,
.zb-menu-close-btn:hover {
	color: var(--zb-gold);
	transform: rotate(90deg);
}

/* Top Visual Campaign Cards in Menu */
.zb-menu-drawer__campaigns,
.zb-menu-cards {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
	padding: 16px 20px;
	position: relative;
	background: #181818;
	border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.zb-menu-campaign-card,
.zb-menu-card {
	position: relative;
	height: 110px;
	border-radius: var(--zb-radius-sm);
	overflow: hidden;
	display: flex;
	align-items: flex-end;
	text-decoration: none;
	border: 1px solid rgba(212, 175, 55, 0.2);
}

.zb-menu-campaign-card img,
.zb-menu-card__bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.4s ease;
}

.zb-menu-campaign-card:hover img,
.zb-menu-card:hover .zb-menu-card__bg {
	transform: scale(1.08);
}

.zb-menu-campaign-card__overlay,
.zb-menu-card__overlay {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: linear-gradient(180deg, rgba(0, 0, 0, 0.1) 0%, rgba(30, 30, 30, 0.88) 100%);
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	padding: 10px 12px;
	z-index: 2;
}

.zb-menu-campaign-card__overlay span,
.zb-menu-card__title {
	position: relative;
	z-index: 2;
	color: #ffffff;
	font-size: 11.5px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.zb-menu-campaign-card__overlay small {
	color: var(--zb-gold);
	font-size: 9.5px;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	margin-top: 2px;
}

/* Category Tabs inside Menu Drawer */
.zb-menu-drawer__tabs,
.zb-menu-tabs {
	display: flex;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
	padding: 0 16px;
	background: #181818;
	overflow-x: auto;
	scrollbar-width: none;
}

.zb-menu-drawer__tabs::-webkit-scrollbar,
.zb-menu-tabs::-webkit-scrollbar {
	display: none;
}

.zb-menu-tab,
.zb-menu-tab-btn {
	background: none;
	border: none;
	color: rgba(255, 255, 255, 0.65);
	padding: 14px 14px;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	cursor: pointer;
	position: relative;
	white-space: nowrap;
	transition: color 0.2s ease;
}

.zb-menu-tab:hover,
.zb-menu-tab.is-active,
.zb-menu-tab-btn:hover,
.zb-menu-tab-btn.is-active {
	color: var(--zb-gold);
}

.zb-menu-tab.is-active::after,
.zb-menu-tab-btn.is-active::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 10px;
	right: 10px;
	height: 2px;
	background-color: var(--zb-gold);
}

/* Icon-Backed Category Items */
.zb-menu-drawer__nav,
.zb-menu-nav {
	padding: 12px 0;
	display: flex;
	flex-direction: column;
	flex: 1;
}

.zb-menu-nav-item {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 14px 24px;
	color: rgba(255, 255, 255, 0.88);
	text-decoration: none;
	font-size: 13.5px;
	font-weight: 600;
	letter-spacing: 0.03em;
	transition: all 0.2s ease;
	border-bottom: 1px solid rgba(255, 255, 255, 0.04);
}

.zb-menu-nav-item:hover {
	background: rgba(212, 175, 55, 0.08);
	color: var(--zb-gold);
	padding-left: 28px;
}

.zb-nav-icon,
.zb-menu-nav-item__icon {
	width: 22px;
	height: 22px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--zb-gold);
	margin-right: 12px;
	flex-shrink: 0;
}

.zb-nav-text {
	flex: 1;
}

.zb-nav-chevron,
.zb-menu-nav-item__chevron {
	color: rgba(255, 255, 255, 0.4);
	transition: transform 0.2s ease;
	font-size: 18px;
}

.zb-menu-nav-item:hover .zb-nav-chevron,
.zb-menu-nav-item:hover .zb-menu-nav-item__chevron {
	transform: translateX(3px);
	color: var(--zb-gold);
}

.zb-menu-nav-item--sale {
	color: #ff5252 !important;
}

/* Drawer Footer & Helpline */
.zb-menu-drawer__footer {
	margin-top: auto;
	padding: 18px 24px;
	background: #141414;
	border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.zb-menu-helpline {
	display: flex;
	flex-direction: column;
	gap: 4px;
	font-size: 11px;
	color: rgba(255, 255, 255, 0.6);
	letter-spacing: 0.05em;
}

.zb-menu-helpline strong {
	color: var(--zb-gold);
	font-size: 13px;
	letter-spacing: 0.06em;
}

/* ==========================================================================
   "Top Collections Nationwide" Carousel (Screenshot 1 Match)
   ========================================================================== */
.zb-top-collections {
	padding: 48px 0 32px;
	position: relative;
}

.zb-top-collections__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 24px;
}

.zb-top-collections__title {
	font-size: 24px;
	font-weight: 800;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--zb-black);
	margin: 0;
}

.zb-carousel-controls {
	display: flex;
	gap: 8px;
}

.zb-carousel-arrow {
	width: 38px;
	height: 38px;
	border-radius: 50%;
	border: 1px solid var(--zb-border);
	background: #ffffff;
	color: var(--zb-black);
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: all 0.2s ease;
}

.zb-carousel-arrow:hover {
	background: var(--zb-black);
	color: var(--zb-gold);
	border-color: var(--zb-black);
	box-shadow: 0 2px 8px var(--zb-gold-glow);
}

.zb-collections-track {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
	overflow-x: auto;
	scrollbar-width: none;
}

.zb-collections-track::-webkit-scrollbar {
	display: none;
}

.zb-collection-card {
	position: relative;
	padding-bottom: 133.33%; /* 3:4 */
	border-radius: var(--zb-radius-sm);
	overflow: hidden;
	text-decoration: none;
	display: block;
	box-shadow: var(--zb-shadow-sm);
	transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.zb-collection-card:hover {
	transform: translateY(-4px);
	box-shadow: var(--zb-shadow-md);
}

.zb-collection-card__img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);
}

.zb-collection-card:hover .zb-collection-card__img {
	transform: scale(1.06);
}

.zb-collection-card__pill {
	position: absolute;
	bottom: 16px;
	left: 50%;
	transform: translateX(-50%);
	background: rgba(30, 30, 30, 0.9);
	backdrop-filter: blur(8px);
	border: 1px solid var(--zb-gold);
	color: var(--zb-gold);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	padding: 8px 18px;
	border-radius: var(--zb-radius-full);
	white-space: nowrap;
	z-index: 5;
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.3);
	transition: all 0.25s ease;
}

.zb-collection-card:hover .zb-collection-card__pill {
	background: var(--zb-gold);
	color: var(--zb-black);
	box-shadow: 0 4px 16px var(--zb-gold-glow);
}

/* ==========================================================================
   Zellbury 4th Blurred "Discover More" Card (Screenshot 1 Match)
   ========================================================================== */
.zb-discover-card {
	position: relative;
	padding-bottom: 133.33%;
	border-radius: var(--zb-radius-sm);
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	background: #1e1e1e;
	box-shadow: var(--zb-shadow-sm);
}

.zb-discover-card__bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	filter: blur(12px) brightness(0.65);
	transform: scale(1.1);
	transition: transform 0.6s ease, filter 0.6s ease;
}

.zb-discover-card:hover .zb-discover-card__bg {
	filter: blur(8px) brightness(0.75);
	transform: scale(1.15);
}

.zb-discover-card__content {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	z-index: 2;
	padding: 20px;
	text-align: center;
}

.zb-discover-card__btn {
	background: #ffffff;
	color: #1e1e1e;
	border: 1px solid var(--zb-gold);
	font-size: 11.5px;
	font-weight: 800;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	padding: 12px 22px;
	border-radius: var(--zb-radius-sm);
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.25);
	transition: all 0.25s ease;
	display: inline-flex;
	align-items: center;
	gap: 6px;
}

.zb-discover-card:hover .zb-discover-card__btn {
	background: var(--zb-gold);
	color: var(--zb-black);
	transform: translateY(-2px);
	box-shadow: 0 6px 20px var(--zb-gold-glow);
}

/* ==========================================================================
   Split Editorial Brand Banner (Screenshot 1 Match)
   ========================================================================== */
.zb-editorial-split {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0;
	background: #fbfaf8;
	margin: 70px 0;
	border-top: 1px solid var(--zb-border);
	border-bottom: 1px solid var(--zb-border);
	overflow: hidden;
}

.zb-editorial-split__media {
	position: relative;
	min-height: 480px;
}

.zb-editorial-split__img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.zb-editorial-split__body {
	padding: 60px 50px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
}

.zb-editorial-split__tag {
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--zb-gold-hover);
	margin-bottom: 14px;
}

.zb-editorial-split__heading {
	font-size: 32px;
	font-weight: 800;
	letter-spacing: 0.03em;
	line-height: 1.25;
	color: var(--zb-black);
	margin-bottom: 18px;
}

.zb-editorial-split__desc {
	font-size: 14px;
	line-height: 1.7;
	color: var(--zb-muted);
	margin-bottom: 28px;
	max-width: 480px;
}

.zb-editorial-split__btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: var(--zb-black);
	color: #ffffff;
	border: 1px solid var(--zb-gold);
	padding: 13px 30px;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	border-radius: var(--zb-radius-sm);
	text-decoration: none;
	transition: all 0.25s ease;
}

.zb-editorial-split__btn:hover {
	background: var(--zb-gold);
	color: var(--zb-black);
	box-shadow: 0 4px 16px var(--zb-gold-glow);
}

/* ==========================================================================
   Fabric Texture Stats Banner ("Style that moves with you") (Screenshot 1 Match)
   ========================================================================== */
.zb-stats-banner {
	background: #f5f4ef url('https://images.unsplash.com/photo-1579546929518-9e396f3cc809?auto=format&fit=crop&w=1600&q=50') repeat center;
	padding: 70px 24px 60px 24px;
	text-align: center;
	border-top: 1px solid var(--zb-border);
	border-bottom: 1px solid var(--zb-border);
	position: relative;
}

.zb-stats-banner__heading {
	font-size: 32px;
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--zb-black);
	margin-bottom: 6px;
}

.zb-stats-banner__subtitle {
	font-size: 13.5px;
	color: var(--zb-muted);
	letter-spacing: 0.04em;
	margin-bottom: 36px;
}

.zb-stats-card {
	background: #ffffff;
	border: 1px solid var(--zb-border);
	border-radius: var(--zb-radius-md);
	max-width: 820px;
	margin: 0 auto 36px auto;
	padding: 32px 24px;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
	box-shadow: var(--zb-shadow-md);
}

.zb-stat-col {
	display: flex;
	flex-direction: column;
	align-items: center;
	position: relative;
}

.zb-stat-col:not(:last-child)::after {
	content: '';
	position: absolute;
	right: 0;
	top: 15%;
	height: 70%;
	width: 1px;
	background: var(--zb-border);
}

.zb-stat-number {
	font-size: 36px;
	font-weight: 800;
	color: var(--zb-black);
	line-height: 1.1;
	margin-bottom: 6px;
	letter-spacing: -0.02em;
}

.zb-stat-number span {
	color: var(--zb-gold);
}

.zb-stat-label {
	font-size: 12px;
	color: var(--zb-muted);
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.zb-stats-trust-strip {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 36px;
	flex-wrap: wrap;
	font-size: 12px;
	font-weight: 700;
	color: var(--zb-dark);
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.zb-stats-trust-item {
	display: flex;
	align-items: center;
	gap: 8px;
}

.zb-stats-trust-item svg {
	color: var(--zb-gold);
}

/* ==========================================================================
   Zellbury Footer Mission Block (Screenshot 1 Match)
   ========================================================================== */
.zb-footer-mission {
	text-align: center !important;
	max-width: 900px !important;
	margin: 0 auto 46px auto !important;
	padding-bottom: 38px !important;
	border-bottom: 1px solid transparent !important;
	border-image: var(--zb-gold-gradient-border) 1 !important;
}

.zb-footer-mission__title {
	font-size: 14px !important;
	font-weight: 800 !important;
	letter-spacing: 0.18em !important;
	text-transform: uppercase !important;
	margin-bottom: 14px !important;
	background: var(--zb-gold-gradient-heading) !important;
	-webkit-background-clip: text !important;
	-webkit-text-fill-color: transparent !important;
	display: inline-block !important;
}

.zb-footer-mission__text {
	font-size: 13.5px !important;
	line-height: 1.8 !important;
	color: rgba(255, 255, 255, 0.76) !important;
	margin: 0 auto !important;
	max-width: 820px !important;
}

/* ==========================================================================
   Product Detail Modal (PDP) (Screenshot 3 Match)
   ========================================================================== */
.zb-pdp-modal-overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.75);
	backdrop-filter: blur(8px);
	z-index: 10001;
	opacity: 0;
	visibility: hidden;
	transition: all 0.3s ease;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 20px;
}

.zb-pdp-modal-overlay.is-active {
	opacity: 1;
	visibility: visible;
}

.zb-pdp-modal {
	background: #ffffff;
	width: 1080px;
	max-width: 95vw;
	max-height: 92vh;
	border-radius: var(--zb-radius-md);
	overflow-y: auto;
	position: relative;
	box-shadow: 0 20px 60px rgba(0, 0, 0, 0.4);
	display: grid;
	grid-template-columns: 1.2fr 1fr;
}

@media (max-width: 900px) {
	.zb-pdp-modal {
		grid-template-columns: 1fr;
	}
	.zb-editorial-split {
		grid-template-columns: 1fr;
	}
	.zb-stats-card {
		grid-template-columns: 1fr;
	}
	.zb-stat-col:not(:last-child)::after {
		display: none;
	}
	.zb-collections-track {
		grid-template-columns: repeat(2, 1fr);
	}
}

.zb-pdp-gallery {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 8px;
	padding: 16px;
	background: var(--zb-light-gray);
}

.zb-pdp-gallery-img {
	width: 100%;
	height: 280px;
	object-fit: cover;
	border-radius: var(--zb-radius-sm);
	border: 1px solid var(--zb-border);
}

.zb-pdp-buybox {
	padding: 36px 30px;
	display: flex;
	flex-direction: column;
}

.zb-pdp-close-btn {
	position: absolute;
	top: 16px;
	right: 16px;
	background: rgba(30, 30, 30, 0.1);
	border: none;
	width: 34px;
	height: 34px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	z-index: 10;
	transition: all 0.2s ease;
}

.zb-pdp-close-btn:hover {
	background: var(--zb-gold);
	color: var(--zb-black);
}

.zb-pdp-rating {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 12px;
	font-weight: 700;
	color: var(--zb-gold);
	margin-bottom: 8px;
}

.zb-pdp-title {
	font-size: 20px;
	font-weight: 800;
	color: var(--zb-black);
	margin-bottom: 12px;
	line-height: 1.3;
}

.zb-pdp-price-wrap {
	display: flex;
	align-items: baseline;
	gap: 12px;
	margin-bottom: 14px;
}

.zb-pdp-price-sale {
	font-size: 22px;
	font-weight: 800;
	color: var(--zb-black);
}

.zb-pdp-price-reg {
	font-size: 15px;
	color: var(--zb-muted);
	text-decoration: line-through;
}

.zb-installment-box {
	background: var(--zb-gold-light);
	border: 1px solid var(--zb-gold-border);
	padding: 10px 14px;
	border-radius: var(--zb-radius-sm);
	font-size: 12px;
	color: var(--zb-black);
	margin-bottom: 20px;
	display: flex;
	align-items: center;
	gap: 8px;
}

.zb-installment-box strong {
	color: var(--zb-gold-hover);
}

.zb-complete-look {
	margin-top: 24px;
	padding-top: 20px;
	border-top: 1px solid var(--zb-border);
}

.zb-complete-look__title {
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--zb-black);
	margin-bottom: 12px;
}

.zb-complete-look__items {
	display: flex;
	gap: 12px;
}

.zb-cross-item {
	display: flex;
	align-items: center;
	gap: 10px;
	border: 1px solid var(--zb-border);
	padding: 6px 10px;
	border-radius: var(--zb-radius-sm);
	background: #ffffff;
}

.zb-cross-item img {
	width: 42px;
	height: 52px;
	object-fit: cover;
	border-radius: 2px;
}

.zb-cross-item__info {
	font-size: 11px;
}

.zb-cross-item__price {
	font-weight: 700;
	color: var(--zb-gold-hover);
}

/* ==========================================================================
   NATIVE WOOCOMMERCE PRODUCT DETAILS PAGE (PDP) ENHANCEMENTS
   ========================================================================== */
.zb-pdp-installment-badge {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	background: #fdfaf2;
	border: 1px solid var(--zb-gold-border);
	padding: 10px 16px;
	border-radius: 4px;
	font-size: 13px;
	color: var(--zb-black);
	margin: 14px 0 20px 0;
	width: 100%;
}

.zb-pdp-installment-badge svg {
	color: var(--zb-gold-hover);
	flex-shrink: 0;
}

.zb-pdp-installment-badge strong {
	color: var(--zb-gold-hover);
}

/* Complete The Look / Matching Accessories Cross-sell */
.zb-complete-look {
	margin: 28px 0 24px 0;
	padding: 20px;
	background: #fafafa;
	border: 1px solid var(--zb-border);
	border-radius: 4px;
}

.zb-complete-look__title {
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--zb-black);
	margin-bottom: 14px;
	display: flex;
	align-items: center;
	gap: 8px;
}

.zb-complete-look__tag {
	background: var(--zb-gold);
	color: #1e1e1e;
	font-size: 10px;
	font-weight: 800;
	padding: 2px 8px;
	border-radius: 2px;
	letter-spacing: 0.12em;
}

.zb-complete-look__items {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: 12px;
}

.zb-complete-item {
	display: flex;
	align-items: center;
	gap: 12px;
	background: #ffffff;
	border: 1px solid var(--zb-border);
	padding: 10px;
	border-radius: 4px;
	transition: all 0.2s ease;
}

.zb-complete-item:hover {
	border-color: var(--zb-gold);
	box-shadow: 0 4px 12px rgba(0,0,0,0.06);
}

.zb-complete-item__img {
	width: 50px;
	height: 64px;
	object-fit: cover;
	border-radius: 2px;
	flex-shrink: 0;
}

.zb-complete-item__info {
	flex: 1;
	min-width: 0;
}

.zb-complete-item__name {
	font-size: 12px;
	font-weight: 600;
	color: var(--zb-black);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	margin-bottom: 3px;
}

.zb-complete-item__price {
	font-size: 13px;
	font-weight: 800;
	color: var(--zb-gold-hover);
}

.zb-complete-item__add {
	background: var(--zb-black);
	color: #ffffff;
	border: none;
	font-size: 11px;
	font-weight: 800;
	padding: 7px 14px;
	border-radius: 2px;
	cursor: pointer;
	letter-spacing: 0.06em;
	transition: all 0.2s;
	flex-shrink: 0;
}

.zb-complete-item__add:hover {
	background: var(--zb-gold);
	color: #1e1e1e;
}

/* Zellbury PDP Accordions */
.zb-pdp-accordions {
	margin-top: 24px;
	border-top: 1px solid var(--zb-border);
}

.zb-pdp-accordion {
	border-bottom: 1px solid var(--zb-border);
}

.zb-pdp-accordion__summary {
	padding: 15px 0;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--zb-black);
	cursor: pointer;
	display: flex;
	justify-content: space-between;
	align-items: center;
	list-style: none;
	user-select: none;
}

.zb-pdp-accordion__summary::-webkit-details-marker {
	display: none;
}

.zb-accordion-icon {
	font-size: 14px;
	color: var(--zb-muted);
	transition: transform 0.2s ease;
}

.zb-pdp-accordion[open] .zb-accordion-icon {
	transform: rotate(180deg);
	color: var(--zb-gold);
}

.zb-pdp-accordion__body {
	padding: 0 0 16px 0;
	font-size: 13px;
	line-height: 1.65;
	color: #4a4a4a;
}

.zb-pdp-accordion__body ul {
	margin: 0;
	padding-left: 18px;
}

.zb-pdp-accordion__body li {
	margin-bottom: 6px;
}

/* Top Collections Pill Card */
.zb-collection-pill-card:hover img {
	transform: scale(1.06);
}

.zb-collection-pill-card:hover span {
	background: var(--zb-gold) !important;
	color: #1e1e1e !important;
}

/* Sticky Single Product Column */
@media (min-width: 992px) {
	.c-product__col-2 .js-sticky-sidebar {
		position: sticky;
		top: 100px;
	}
}

/* ==========================================================================
   Live WooCommerce Single Product Page Harmonization (Zellbury PDP Match)
   ========================================================================== */
.c-product {
	padding: 24px 0 60px 0;
}

.c-product__title,
.product_title {
	font-family: var(--font-serif, 'Playfair Display', Georgia, serif) !important;
	font-size: 26px !important;
	font-weight: 800 !important;
	letter-spacing: 0.04em !important;
	text-transform: uppercase !important;
	color: var(--zb-black) !important;
	line-height: 1.3 !important;
	margin-bottom: 12px !important;
}

.c-product__price,
.single-product .summary .price {
	font-family: var(--font-sans, 'Plus Jakarta Sans', sans-serif) !important;
	font-size: 22px !important;
	font-weight: 800 !important;
	color: var(--zb-black) !important;
	margin-bottom: 16px !important;
	display: flex;
	align-items: baseline;
	gap: 10px;
}

.single-product .summary .price del {
	font-size: 15px !important;
	color: var(--zb-muted) !important;
	text-decoration: line-through !important;
}

.single-product .summary .price ins {
	text-decoration: none !important;
	color: var(--zb-black) !important;
	font-weight: 800 !important;
}

/* Single Add To Cart Button */
.single-product .single_add_to_cart_button {
	background: var(--zb-black) !important;
	color: #ffffff !important;
	font-family: var(--font-sans) !important;
	font-weight: 800 !important;
	font-size: 13px !important;
	letter-spacing: 0.12em !important;
	text-transform: uppercase !important;
	border: 1px solid var(--zb-black) !important;
	border-radius: 2px !important;
	padding: 15px 36px !important;
	cursor: pointer !important;
	transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.12) !important;
}

.single-product .single_add_to_cart_button:hover {
	background: var(--zb-gold) !important;
	color: #1e1e1e !important;
	border-color: var(--zb-gold) !important;
	box-shadow: 0 6px 20px rgba(212, 175, 55, 0.35) !important;
}

/* Quantity input box */
.single-product .quantity input.qty {
	height: 48px !important;
	border: 1px solid var(--zb-border) !important;
	border-radius: 2px !important;
	font-weight: 700 !important;
	font-size: 14px !important;
	color: var(--zb-black) !important;
	background: #ffffff !important;
}

/* WooCommerce Variation Swatches & Size Buttons */
.single-product .variations {
	width: 100% !important;
	margin-bottom: 20px !important;
}

.single-product .variations td.label {
	font-size: 11.5px !important;
	font-weight: 800 !important;
	letter-spacing: 0.1em !important;
	text-transform: uppercase !important;
	color: var(--zb-black) !important;
	padding-bottom: 8px !important;
}

.single-product .variations select {
	height: 44px !important;
	border: 1px solid var(--zb-border) !important;
	border-radius: 2px !important;
	padding: 8px 14px !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	color: var(--zb-black) !important;
	background: #ffffff !important;
	width: 100% !important;
	max-width: 320px !important;
}

/* Gallery image styling in native WooCommerce */
.c-product__col-1 .c-product__slider-item {
	border-radius: 4px !important;
	overflow: hidden !important;
	background: #f7f7f7 !important;
}

.c-product__col-1 .c-product__slider-item img {
	border-radius: 4px !important;
	aspect-ratio: 3/4 !important;
	object-fit: cover !important;
	width: 100% !important;
	height: auto !important;
}

/* ==========================================================================
   Elementor Front Page & Builder Integration
   ========================================================================== */
.zb-elementor-front-wrapper {
	width: 100%;
	margin: 0;
	padding: 0;
	position: relative;
}

.zb-elementor-front-wrapper .elementor-section.elementor-section-boxed > .elementor-container {
	max-width: 1440px;
}

/* Ensure Elementor full-width stretched sections take full viewport */
.zb-elementor-front-wrapper .elementor-section-stretched {
	width: 100vw !important;
	left: 50% !important;
	right: 50% !important;
	margin-left: -50vw !important;
	margin-right: -50vw !important;
}

/* Fix Elementor editor toolbar spacing with theme header */
.elementor-editor-active .l-header {
	z-index: 99;
}

/* ==========================================================================
   Zellbury Luxury Sticky Header & Top Ticker
   ========================================================================== */
.zb-ticker-bar {
	background: #1e1e1e !important;
	color: #ffffff !important;
	font-size: 11.5px !important;
	letter-spacing: 0.12em !important;
	text-transform: uppercase !important;
	font-weight: 700 !important;
	padding: 10px 24px !important;
	display: flex !important;
	justify-content: space-between !important;
	align-items: center !important;
	border-bottom: 1px solid rgba(212, 175, 55, 0.25) !important;
	position: relative !important;
	z-index: 101 !important;
}
.zb-ticker-bar a {
	color: #ffffff !important;
	text-decoration: none !important;
}
.zb-ticker-bar .zb-ticker-highlight {
	color: var(--zb-gold) !important;
}

.zb-header {
	position: sticky !important;
	top: 0 !important;
	z-index: 100 !important;
	background: rgba(255, 255, 255, 0.98) !important;
	backdrop-filter: blur(16px) !important;
	border-bottom: 1px solid #f0f0f0 !important;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.03) !important;
	width: 100% !important;
}
.zb-header__row {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	height: 72px !important;
}
.zb-header__left {
	display: flex !important;
	align-items: center !important;
	gap: 20px !important;
}
.zb-hamburger-btn {
	background: none !important;
	border: none !important;
	cursor: pointer !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	padding: 8px 4px !important;
	color: var(--zb-black) !important;
	font-size: 11.5px !important;
	font-weight: 800 !important;
	letter-spacing: 0.12em !important;
	text-transform: uppercase !important;
}
.zb-hamburger-btn:hover {
	color: var(--zb-gold) !important;
}
.zb-logo {
	font-family: 'Playfair Display', Georgia, serif !important;
	font-size: 24px !important;
	font-weight: 800 !important;
	letter-spacing: 0.16em !important;
	color: var(--zb-black) !important;
	text-decoration: none !important;
	text-transform: uppercase !important;
	display: inline-block !important;
	line-height: 1 !important;
}
.zb-logo:hover {
	color: var(--zb-gold) !important;
}
.zb-header__nav {
	display: flex !important;
	align-items: center !important;
	gap: 22px !important;
}
.zb-header__nav a {
	font-size: 11.5px !important;
	font-weight: 700 !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
	color: var(--zb-black) !important;
	text-decoration: none !important;
	position: relative !important;
	padding: 8px 0 !important;
	transition: color 0.2s !important;
}
.zb-header__nav a:hover,
.zb-header__nav a.active {
	color: var(--zb-gold) !important;
}
.zb-header__actions {
	display: flex !important;
	align-items: center !important;
	gap: 18px !important;
}
.zb-header__action-icon {
	background: none !important;
	border: none !important;
	cursor: pointer !important;
	color: var(--zb-black) !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	position: relative !important;
	padding: 6px !important;
	text-decoration: none !important;
	transition: color 0.2s !important;
}
.zb-header__action-icon:hover {
	color: var(--zb-gold) !important;
}
.zb-badge-pill {
	position: absolute !important;
	top: -2px !important;
	right: -4px !important;
	background: var(--zb-gold) !important;
	color: #1e1e1e !important;
	font-size: 10px !important;
	font-weight: 800 !important;
	width: 18px !important;
	height: 18px !important;
	border-radius: 50% !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	line-height: 1 !important;
}

@media (max-width: 1024px) {
	.zb-header__nav {
		display: none !important;
	}
	.zb-ticker-bar {
		font-size: 10.5px !important;
		padding: 8px 16px !important;
		flex-direction: column !important;
		gap: 4px !important;
		text-align: center !important;
	}
	.zb-header__row {
		height: 60px !important;
	}
	.zb-logo {
		font-size: 18px !important;
	}
}

/* ==========================================================================
   JOYCELYN FASHION - ZELLBURY LUXURY SHOP & ARCHIVE CATALOG
   ========================================================================== */

/* Shop Hero Header */
.zb-shop-hero {
	width: 100%;
	background-color: #faf9f7;
	border-bottom: 1px solid #eae7e0;
	padding: 45px 20px 28px 20px;
	text-align: center;
}

.zb-shop-hero__inner {
	max-width: 900px;
	margin: 0 auto;
}

.zb-shop-hero__sub {
	font-family: var(--zb-font);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.18em;
	color: var(--zb-gold);
	text-transform: uppercase;
	display: inline-block;
	margin-bottom: 8px;
}

.zb-shop-hero__title {
	font-family: var(--zb-font-serif);
	font-size: 32px;
	font-weight: 600;
	letter-spacing: 0.04em;
	color: var(--zb-black);
	text-transform: uppercase;
	margin: 0 0 10px 0;
	line-height: 1.2;
}

.zb-shop-hero__desc {
	font-size: 13.5px;
	color: #666666;
	line-height: 1.6;
	margin: 0 auto;
	max-width: 600px;
}

/* Category Pills Navigation */
.zb-shop-pills-wrap {
	width: 100%;
	background-color: #ffffff;
	border-bottom: 1px solid #eeeeee;
	padding: 16px 0;
}

.zb-shop-cat-pills {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	flex-wrap: wrap;
	max-width: 1440px;
	margin: 0 auto;
	padding: 0 20px;
}

.zb-cat-pill {
	display: inline-flex;
	align-items: center;
	padding: 8px 18px;
	border-radius: 25px;
	font-family: var(--zb-font);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	text-decoration: none;
	background: #ffffff;
	color: var(--zb-black);
	border: 1px solid #dcdcdc;
	transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.03);
}

.zb-cat-pill:hover {
	background: var(--zb-black);
	color: #ffffff;
	border-color: var(--zb-black);
}

.zb-cat-pill.is-active {
	background: var(--zb-black);
	color: var(--zb-gold);
	border-color: var(--zb-black);
	font-weight: 700;
	box-shadow: 0 3px 12px rgba(0, 0, 0, 0.15);
}

/* Shop Main Grid Wrapper */
.zb-shop-main-wrap {
	width: 100%;
	background-color: #ffffff;
	padding: 24px 0 70px 0;
}

.zb-shop-container {
	max-width: 1440px;
	margin: 0 auto;
	padding: 0 24px;
}

/* Shop Toolbar */
.zb-shop-toolbar {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 14px 0;
	margin-bottom: 28px;
	border-bottom: 1px solid #eeeeee;
}

.zb-shop-toolbar__count,
.zb-shop-toolbar .woocommerce-result-count {
	font-size: 13px !important;
	color: #777777 !important;
	margin: 0 !important;
	letter-spacing: 0.02em;
}

.zb-shop-toolbar__order,
.zb-shop-toolbar .woocommerce-ordering {
	margin: 0 !important;
}

.zb-shop-toolbar .woocommerce-ordering select.orderby {
	appearance: none !important;
	-webkit-appearance: none !important;
	padding: 8px 36px 8px 14px !important;
	border-radius: var(--zb-radius-sm) !important;
	border: 1px solid var(--zb-gold) !important;
	background: #ffffff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23d4af37' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E") no-repeat right 12px center !important;
	font-family: var(--zb-font) !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	color: var(--zb-black) !important;
	cursor: pointer !important;
	outline: none !important;
}

/* 4-Column Product Grid Override */
.zb-product-grid--4col,
.zb-product-grid,
.c-product-grid__list {
	display: grid !important;
	grid-template-columns: repeat(4, 1fr) !important;
	gap: 28px 20px !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

@media (max-width: 1024px) {
	.zb-product-grid--4col,
	.zb-product-grid,
	.c-product-grid__list {
		grid-template-columns: repeat(3, 1fr) !important;
		gap: 20px 16px !important;
	}
}

@media (max-width: 767px) {
	.zb-product-grid--4col,
	.zb-product-grid,
	.c-product-grid__list {
		grid-template-columns: repeat(2, 1fr) !important;
		gap: 16px 12px !important;
	}
	.zb-shop-container {
		padding: 0 16px !important;
	}
	.zb-shop-hero__title {
		font-size: 24px !important;
	}
	.zb-shop-hero {
		padding: 30px 16px 20px 16px !important;
	}
}

/* Product Card Sizing and Ratio */
.zb-product-card,
.c-product-grid__item {
	display: flex !important;
	flex-direction: column !important;
	position: relative !important;
	width: 100% !important;
	max-width: 100% !important;
	flex: none !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
	transition: transform 0.3s ease !important;
}

.zb-product-card:hover {
	transform: translateY(-4px) !important;
}

/* Neutralize Moderno's box borders */
.c-product-grid__item:after {
	display: none !important;
	border: none !important;
}

/* 3:4 Tall Portrait Thumbnail Container */
.zb-product-card__thumb,
.c-product-grid__thumb-wrap {
	position: relative !important;
	width: 100% !important;
	aspect-ratio: 3 / 4 !important;
	padding-bottom: 0 !important;
	overflow: hidden !important;
	border-radius: var(--zb-radius-sm) !important;
	background-color: var(--zb-light-gray) !important;
	margin-bottom: 12px !important;
}

@supports not (aspect-ratio: 3/4) {
	.zb-product-card__thumb,
	.c-product-grid__thumb-wrap {
		padding-bottom: 133.33% !important;
		height: 0 !important;
	}
}

.zb-product-card__media-link {
	display: block !important;
	position: absolute !important;
	inset: 0 !important;
	width: 100% !important;
	height: 100% !important;
}

/* Primary & Hover Images */
.zb-thumb--primary,
.zb-thumb--hover,
.c-product-grid__thumb,
.c-product-grid__thumb--hover {
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	transition: opacity 0.4s ease, transform 0.6s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.zb-thumb--hover,
.c-product-grid__thumb--hover {
	opacity: 0 !important;
	pointer-events: none !important;
}

.zb-product-card:hover .zb-thumb--primary,
.c-product-grid__item:hover .c-product-grid__thumb {
	transform: scale(1.05) !important;
}

.zb-product-card:hover .zb-thumb--hover,
.c-product-grid__item:hover .c-product-grid__thumb--hover {
	opacity: 1 !important;
	transform: scale(1.05) !important;
}

/* Badges */
.zb-badge-wrap {
	position: absolute !important;
	top: 10px !important;
	left: 10px !important;
	z-index: 5 !important;
	pointer-events: none !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 4px !important;
}

.zb-badge {
	font-family: var(--zb-font) !important;
	font-size: 10px !important;
	font-weight: 700 !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
	padding: 4px 8px !important;
	border-radius: 2px !important;
	line-height: 1.2 !important;
	display: inline-block !important;
}

.zb-badge--gold {
	background: var(--zb-gold-gradient-badge) !important;
	color: #1a1402 !important;
	border: 1px solid rgba(255, 255, 255, 0.5) !important;
	box-shadow: 0 2px 8px rgba(212, 175, 55, 0.4) !important;
	text-shadow: 0 1px 0 rgba(255, 255, 255, 0.35) !important;
	font-weight: 800 !important;
}

.zb-badge--black {
	background-color: var(--zb-black) !important;
	color: #fceda2 !important;
	border: 1px solid rgba(212, 175, 55, 0.6) !important;
}

/* Frosted-Glass Wishlist Button */
.zb-wishlist-btn {
	position: absolute !important;
	top: 10px !important;
	right: 10px !important;
	width: 34px !important;
	height: 34px !important;
	border-radius: var(--zb-radius-full) !important;
	background: rgba(255, 255, 255, 0.9) !important;
	backdrop-filter: blur(6px) !important;
	-webkit-backdrop-filter: blur(6px) !important;
	border: 1px solid rgba(255, 255, 255, 0.6) !important;
	color: var(--zb-black) !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	cursor: pointer !important;
	z-index: 6 !important;
	box-shadow: var(--zb-shadow-sm) !important;
	transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.zb-wishlist-btn:hover {
	transform: scale(1.1) !important;
	background: #ffffff !important;
	color: var(--zb-gold) !important;
	border-color: var(--zb-gold) !important;
}

.zb-wishlist-btn svg {
	width: 16px !important;
	height: 16px !important;
	fill: none !important;
	stroke: currentColor !important;
	stroke-width: 2 !important;
}

.zb-wishlist-btn.is-active svg {
	fill: var(--zb-gold) !important;
	stroke: var(--zb-gold) !important;
}

/* Slide-up Quick Size Bar */
.zb-quick-size-bar {
	position: absolute !important;
	bottom: 0 !important;
	left: 0 !important;
	right: 0 !important;
	background: rgba(30, 30, 30, 0.94) !important;
	backdrop-filter: blur(8px) !important;
	-webkit-backdrop-filter: blur(8px) !important;
	padding: 8px 6px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 6px !important;
	transform: translateY(100%) !important;
	opacity: 0 !important;
	transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
	z-index: 7 !important;
	border-top: 1px solid rgba(212, 175, 55, 0.35) !important;
}

.zb-product-card:hover .zb-quick-size-bar,
.c-product-grid__item:hover .zb-quick-size-bar {
	transform: translateY(0) !important;
	opacity: 1 !important;
}

.zb-size-pill {
	background: rgba(255, 255, 255, 0.15) !important;
	border: 1px solid rgba(255, 255, 255, 0.3) !important;
	color: #ffffff !important;
	font-size: 10.5px !important;
	font-weight: 600 !important;
	min-width: 28px !important;
	height: 28px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	border-radius: 3px !important;
	cursor: pointer !important;
	transition: all 0.15s ease !important;
	padding: 0 4px !important;
}

.zb-size-pill:hover {
	background: var(--zb-gold) !important;
	color: var(--zb-black) !important;
	border-color: var(--zb-gold) !important;
	font-weight: 700 !important;
	box-shadow: 0 2px 6px var(--zb-gold-glow) !important;
}

.zb-quick-view-btn {
	color: var(--zb-gold) !important;
	font-size: 10.5px !important;
	font-weight: 700 !important;
	letter-spacing: 0.1em !important;
	text-transform: uppercase !important;
	text-decoration: none !important;
	padding: 4px 10px !important;
	transition: color 0.2s ease !important;
}

.zb-quick-view-btn:hover {
	color: #ffffff !important;
}

/* Card Details Typography */
.zb-product-card__details {
	display: flex !important;
	flex-direction: column !important;
	text-align: left !important;
	margin-top: 2px !important;
}

.zb-product-card__cat {
	font-family: var(--zb-font) !important;
	font-size: 10.5px !important;
	font-weight: 700 !important;
	letter-spacing: 0.12em !important;
	text-transform: uppercase !important;
	color: var(--zb-gold) !important;
	margin-bottom: 4px !important;
}

.zb-product-card__title {
	font-family: var(--zb-font) !important;
	font-size: 13.5px !important;
	font-weight: 500 !important;
	line-height: 1.4 !important;
	color: var(--zb-black) !important;
	text-decoration: none !important;
	display: -webkit-box !important;
	-webkit-line-clamp: 2 !important;
	-webkit-box-orient: vertical !important;
	overflow: hidden !important;
	min-height: 38px !important;
	margin-bottom: 6px !important;
	transition: color 0.2s ease !important;
}

.zb-product-card__title:hover {
	color: var(--zb-gold) !important;
}

.zb-product-card__price-wrap,
.zb-product-card__price-wrap .price {
	display: flex !important;
	align-items: baseline !important;
	gap: 8px !important;
	font-family: var(--zb-font) !important;
	font-size: 14.5px !important;
	font-weight: 700 !important;
	color: var(--zb-black) !important;
	margin: 0 !important;
}

.zb-product-card__price-wrap ins {
	text-decoration: none !important;
	color: var(--zb-black) !important;
	font-weight: 700 !important;
}

.zb-product-card__price-wrap del {
	color: #999999 !important;
	font-size: 12.5px !important;
	font-weight: 400 !important;
}

/* Luxury Pagination */
.zb-shop-pagination,
nav.woocommerce-pagination {
	text-align: center !important;
	margin: 40px 0 20px 0 !important;
}

.zb-shop-pagination ul.page-numbers,
nav.woocommerce-pagination ul.page-numbers {
	display: inline-flex !important;
	list-style: none !important;
	gap: 8px !important;
	padding: 0 !important;
	margin: 0 auto !important;
	border: none !important;
}

.zb-shop-pagination ul.page-numbers li,
nav.woocommerce-pagination ul.page-numbers li {
	border: none !important;
}

.zb-shop-pagination ul.page-numbers li a,
.zb-shop-pagination ul.page-numbers li span,
nav.woocommerce-pagination ul.page-numbers li a,
nav.woocommerce-pagination ul.page-numbers li span {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-width: 40px !important;
	height: 40px !important;
	padding: 0 12px !important;
	border-radius: var(--zb-radius-sm) !important;
	font-family: var(--zb-font) !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	text-decoration: none !important;
	border: 1px solid #e0e0e0 !important;
	color: var(--zb-black) !important;
	background: #ffffff !important;
	transition: all 0.2s ease !important;
}

.zb-shop-pagination ul.page-numbers li span.current,
nav.woocommerce-pagination ul.page-numbers li span.current {
	background: var(--zb-gold) !important;
	color: var(--zb-black) !important;
	border-color: var(--zb-gold) !important;
	font-weight: 700 !important;
}

.zb-shop-pagination ul.page-numbers li a:hover,
nav.woocommerce-pagination ul.page-numbers li a:hover {
	background: var(--zb-black) !important;
	color: #ffffff !important;
	border-color: var(--zb-black) !important;
}

/* No Products Found */
.zb-no-products {
	text-align: center;
	padding: 60px 20px;
}

.zb-no-products__icon {
	margin-bottom: 16px;
}

.zb-no-products h2 {
	font-family: var(--zb-font-serif);
	font-size: 26px;
	color: var(--zb-black);
	margin-bottom: 10px;
}

.zb-no-products p {
	font-size: 14px;
	color: #777777;
	margin-bottom: 24px;
}

/* Features Bar ("Style that moves with you" Perks) */
.zb-features-bar {
	width: 100% !important;
	background-color: var(--zb-black) !important;
	color: #ffffff !important;
	padding: 45px 20px !important;
	border-top: 1px solid rgba(212, 175, 55, 0.3) !important;
}

.zb-features-bar__inner {
	max-width: 1440px !important;
	margin: 0 auto !important;
	display: grid !important;
	grid-template-columns: repeat(4, 1fr) !important;
	gap: 30px 24px !important;
}

.zb-feature-item {
	display: flex !important;
	align-items: flex-start !important;
	gap: 16px !important;
}

.zb-feature-item__icon {
	flex-shrink: 0 !important;
	color: var(--zb-gold) !important;
}

.zb-feature-item__text h4 {
	font-family: var(--zb-font) !important;
	font-size: 13.5px !important;
	font-weight: 600 !important;
	letter-spacing: 0.04em !important;
	color: #ffffff !important;
	margin: 0 0 4px 0 !important;
}

.zb-feature-item__text p {
	font-size: 12px !important;
	color: #aaaaaa !important;
	margin: 0 !important;
	line-height: 1.4 !important;
}

@media (max-width: 1024px) {
	.zb-features-bar__inner {
		grid-template-columns: repeat(2, 1fr) !important;
	}
}

@media (max-width: 600px) {
	.zb-features-bar__inner {
		grid-template-columns: 1fr !important;
		gap: 24px !important;
	}
}

/* Neutralize any lingering Moderno sidebar or narrow wrapper */
.l-section__sidebar {
	display: none !important;
}

.l-section__content--with-sidebar {
	width: 100% !important;
	max-width: 100% !important;
	flex: 1 1 100% !important;
}

.c-product-grid .c-product-grid__wrap {
	margin: 0 !important;
	width: 100% !important;
}




