/*
 * Chordia Jewels - WooCommerce Archive Premium Styling
 * Optimized & Deduplicated
 */

/* ============================================
   CSS Custom Properties
   ============================================ */
:root {
	--cj-gold: #c2a15c;
	--cj-dark: #111;
	--cj-light-bg: #f9f9f9;
	--cj-border: #eee;
}

/* ============================================
   1. Header & Hero Banner
   ============================================ */
.woocommerce-products-header {
	position: relative;
	padding: 0 !important;
	margin-bottom: 0 !important;
	border: none !important;
}

.archive-banner-wrapper {
	position: relative;
	width: 100%;
	height: auto !important;
	overflow: hidden;
	background: #f9f9f9;
	line-height: 0;
	margin-bottom: 0 !important;

}

/* Category pages: no top margin needed */
.tax-product_cat .archive-banner-wrapper {
	margin-top: 0 !important;
}

.archive-banner-img {
	width: 100%;
	height: auto !important;
	display: block;
}

.archive-banner-title {
letter-spacing: 1px;
    text-transform: capitalize;
    margin: 20px 0 20px 0 !important;
    font-family: Montserrat, serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 36px;
    color: #000;
	font-style: italic;
}

/* ============================================
   2. Breadcrumb Navigation
   ============================================ */
.after-banner-breadcrumb .woocommerce-breadcrumb,
.after-banner-breadcrumb .storefront-breadcrumb {
	color: #555 !important;
	font-size: 11px !important;
	text-transform: capitalize !important;
	letter-spacing: 0.5px;
	font-family: 'Montserrat', sans-serif;
	margin: 0 !important;
	border: none !important;
	box-shadow: none !important;
}

.after-banner-breadcrumb .woocommerce-breadcrumb a,
.after-banner-breadcrumb .storefront-breadcrumb a {
	color: var(--cj-dark) !important;
	text-decoration: none;
}

.after-banner-breadcrumb .woocommerce-breadcrumb a:hover,
.after-banner-breadcrumb .storefront-breadcrumb a:hover {
	color: var(--cj-gold) !important;
}

/* ============================================
   3. Shop Loop Toolbar (Filters / Sorting) — Desktop
   ============================================ */
.cj-product-loop-header {
	display: flex !important;
	justify-content: space-between !important;
	align-items: center !important;
	margin-bottom: 35px !important;
	padding: 0 !important;
	border: none !important;
	background: transparent !important;
	height: 48px !important;
}

.cj-product-loop-header .cj-ordering {
	margin-left: auto;
}

.cj-product-loop-header form.woocommerce-ordering,
.cj-product-loop-header .woocommerce-ordering {
	margin: 0 !important;
	float: none !important;
}

.cj-product-loop-header .woocommerce-result-count {
	margin: 0 !important;
	color: #555 !important;
	font-size: 16px !important;
	font-family: 'Montserrat', sans-serif !important;
	font-weight: 400 !important;
	float: none !important;
}

.cj-product-loop-header .woocommerce-ordering select {
	padding: 5px !important;
	border: 1px solid #ddd !important;
	border-radius: 2px !important;
	background: #fff !important;
	cursor: pointer !important;
	font-family: 'Montserrat', sans-serif !important;
	font-size: 15px !important;
	color: #333 !important;
	min-width: 180px !important;
	box-shadow: none !important;
}

/* ============================================
   4. Archive Layout (Sidebar + Main)
   ============================================ */
.archive-content-wrapper {
	display: flex;
	gap: 40px;
	align-items: flex-start;
	margin-top: 50px;
}

.cj-archive-sidebar {
width: 16%;
    flex-shrink: 0;
    position: sticky !important;
    top: 40px !important;
    height: max-content !important;
    margin-right: 20px;
}

.site-main {
	width: 100%;
	flex-grow: 1;
}

/* ============================================
   5. Storefront Theme Reset for Product Grid
   ============================================ */
.cj-product-grid.products,
.cj-product-grid.products::before,
.cj-product-grid.products::after {
	display: grid !important;
	content: none !important;
	clear: none !important;
	float: none !important;
}

.cj-product-grid.products li.product,
.cj-product-grid.products li {
	width: auto !important;
	float: none !important;
	margin: 0 !important;
	padding: 0 !important;
	clear: none !important;
	border: none !important;
	background: transparent !important;
	box-shadow: none !important;
	border-radius: 0 !important;
}

.cj-product-grid.products li.product:hover {
	box-shadow: none !important;
	transform: none !important;
	border: none !important;
}

.cj-product-grid .cj-card__image-wrap a,
.cj-product-grid .cj-card__image-wrap .wp-post-image,
.cj-product-grid .cj-card__image-wrap img {
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
	box-shadow: none !important;
	display: block !important;
	max-width: 100% !important;
}

/* ============================================
   6. Product Grid
   ============================================ */
.cj-product-grid {
	display: grid !important;
	grid-template-columns: repeat(4, 1fr) !important;
	gap: 30px !important;
	padding: 0 !important;
	margin: 0 !important;
	list-style: none !important;
}

.cj-product-grid li.product {
	margin: 0 !important;
	padding: 0 !important;
	float: none !important;
	width: auto !important;
	background: transparent !important;
}

/* ============================================
   7. Product Card
   ============================================ */
.cj-card__link {
	display: block;
	text-decoration: none !important;
	color: inherit;
}

.cj-card__image-wrap {
	position: relative !important;
	overflow: hidden !important;
	background: #f5f5f5;
	aspect-ratio: 1 / 1;
}

.cj-card__image-wrap img {
	width: 100% !important;
	height: 100% !important;
	display: block !important;
	object-fit: cover !important;
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
	border-radius: 0 !important;
	transition: transform 0.5s ease;
}

.cj-card__link:hover .cj-card__image-wrap img {
	transform: scale(1.03);
}

.cj-card__sale-badge {
	position: absolute !important;
	top: 10px !important;
	left: 10px !important;
	right: auto !important;
	background: #d01345 !important;
	color: #fff !important;
	font-family: 'Montserrat', sans-serif !important;
	font-size: 10px !important;
	font-weight: 700 !important;
	padding: 3px 10px !important;
	border-radius: 2px !important;
	text-transform: uppercase !important;
	letter-spacing: 1px !important;
	z-index: 5 !important;
	box-shadow: 0 2px 8px rgba(208, 19, 69, 0.3) !important;
}

.cj-card__info {
	padding: 12px 5px 5px;
	text-align: center;
}

.cj-card__title {
	font-family: 'Montserrat', sans-serif !important;
	font-size: 13px !important;
	font-weight: 400 !important;
	color: #444 !important;
	line-height: 1.5 !important;
	margin: 0 0 8px !important;
	padding: 0 !important;
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	-webkit-box-orient: vertical;
}

.cj-card__price {
	font-family: 'Montserrat', sans-serif !important;
	font-size: 16px !important;
	font-weight: 400 !important;
	color: #d01345 !important;
	display: block !important;
	text-align: center !important;
	margin-top: 5px !important;
}

.cj-card__price del {
	color: #888 !important;
	font-weight: 400 !important;
	font-size: 13px !important;
	margin-right: 8px !important;
	text-decoration: line-through !important;
	display: inline-block !important;
}

.cj-card__price ins {
	text-decoration: none !important;
	color: #d01345 !important;
	font-weight: 400 !important;
	display: inline-block !important;
}

.cj-card__price .amount {
	color: inherit !important;
	font-weight: inherit !important;
}

/* ============================================
   8. Pagination — Premium Minimalist Style
   ============================================ */
.cj-pagination-wrapper {
	margin-top: 50px !important;
	margin-bottom: 50px !important;
	border-top: none !important;
	text-align: center !important;
	width: 100% !important;
	display: block !important;
	clear: both !important;
}

.listing-wrapper .products-area .woocommerce-pagination,
.woocommerce-pagination {
	margin: 40px auto 0 !important;
	padding: 0 !important;
	border: none !important;
	float: none !important;
	width: 100% !important;
	text-align: center !important;
	display: flex !important;
	justify-content: center !important;
	clear: both !important;
}

.listing-wrapper .products-area .woocommerce-pagination ul,
.listing-wrapper .products-area nav.woocommerce-pagination ul.page-numbers,
.woocommerce-pagination ul {
	border: none !important;
	display: flex !important;
	justify-content: center !important;
	gap: 25px !important;
	list-style: none !important;
	margin: 0 auto !important;
	padding: 0 !important;
	align-items: center !important;
	float: none !important;
	width: auto !important;
}

.listing-wrapper .products-area .woocommerce-pagination ul li,
.woocommerce-pagination ul li {
	border: none !important;
	margin: 0 !important;
	padding: 0 !important;
	display: inline-block !important;
	float: none !important;
}

.listing-wrapper .products-area .woocommerce-pagination ul li a,
.listing-wrapper .products-area .woocommerce-pagination ul li span,
.woocommerce-pagination ul li a,
.woocommerce-pagination ul li span {
	font-family: 'Montserrat', sans-serif !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	color: #888 !important;
	text-decoration: none !important;
	background: transparent !important;
	padding: 5px 0 !important;
	min-width: unset !important;
	line-height: 20px !important;
	display: block !important;
	border: none !important;
	border-radius: 0 !important;
	border-bottom: 2px solid transparent !important;
	transition: all 0.3s ease !important;
	height: auto !important;
}

.listing-wrapper .products-area .woocommerce-pagination ul li span.current,
.listing-wrapper .products-area .woocommerce-pagination ul li a:hover,
.woocommerce-pagination ul li span.current,
.woocommerce-pagination ul li a:hover {
	color: #111 !important;
	background: transparent !important;
	border-bottom: 2px solid #111 !important;
	border-radius: 0 !important;
}

/* Prev / Next Arrow Buttons */
.woocommerce-pagination ul li a.next,
.woocommerce-pagination ul li a.prev {
	width: 32px !important;
	height: 32px !important;
	background: #fff !important;
	border: none !important;
	border-radius: 4px !important;
	box-shadow: 0 1px 5px rgba(0, 0, 0, 0.1) !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	padding: 0 !important;
	margin: 0 5px !important;
	text-indent: -9999px !important;
	position: relative !important;
	transition: all 0.3s ease !important;
}

.woocommerce-pagination ul li a.next::after,
.woocommerce-pagination ul li a.prev::after {
	content: none !important;
}

.woocommerce-pagination ul li a.next::before,
.woocommerce-pagination ul li a.prev::before {
	content: '' !important;
	width: 8px !important;
	height: 8px !important;
	border-top: 1.5px solid #000 !important;
	border-left: 1.5px solid #000 !important;
	display: block !important;
	position: absolute !important;
	top: 50% !important;
	left: 50% !important;
	font-family: inherit !important;
}

.woocommerce-pagination ul li a.prev::before {
	transform: translate(-30%, -50%) rotate(-45deg) !important;
}

.woocommerce-pagination ul li a.next::before {
	transform: translate(-70%, -50%) rotate(135deg) !important;
}

.woocommerce-pagination ul li a.next:hover,
.woocommerce-pagination ul li a.prev:hover {
	background: #fff !important;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2) !important;
}

/* ============================================
   9. Archive Category Title
   ============================================ */
.cj-archive-title {
	font-family: 'Montserrat', sans-serif !important;
	font-style: italic !important;
	font-size: 28px !important;
	font-weight: 400 !important;
	color: #222 !important;
	margin-bottom: 25px !important;
	margin-top: 0 !important;
	text-transform: capitalize;
	letter-spacing: 0.5px;
}

/* ============================================
   10. Responsive — 1440px
   ============================================ */
@media (max-width: 1440px) {
	.archive-banner-wrapper {
		margin-top: 130px !important;
	}

	.cj-archive-sidebar {
		width: 20%;
	}
}

/* ============================================
   11. Responsive — 1200px
   ============================================ */
@media (max-width: 1200px) {
	.cj-product-grid {
		grid-template-columns: repeat(3, 1fr) !important;
		gap: 20px !important;
	}
}

/* ============================================
   12. Responsive — 1024px (Tablet)
   ============================================ */
@media (max-width: 1024px) {
	.archive-content-wrapper {
		flex-direction: column;
		margin-top: 30px;
		gap: 20px;
		padding: 0 15px !important;
	}

	.cj-archive-sidebar {
		width: 100%;
		position: static !important;
		margin-bottom: 30px;
	}



	.archive-banner-wrapper {
		height: auto !important;
		aspect-ratio: auto !important;
	}

	.archive-banner-img {
		height: auto !important;
		object-fit: contain !important;
		background: #f5f5f5;
	}

}

/* ============================================
   13. Responsive — 480px (Small Phones)
   ============================================ */
@media (max-width: 480px) {
	.archive-banner-wrapper {
		aspect-ratio: 16 / 6;
	}

	.archive-banner-title {
		font-size: 22px !important;
		margin-bottom: 15px !important;
	}

	.archive-content-wrapper {
		margin-top: 20px;
		padding: 0 10px !important;
	}

	.cj-product-grid {
		gap: 10px !important;
	}

	.cj-card__info {
		padding: 8px 0;
	}

	.cj-card__price .amount {
		font-size: 11px !important;
	}

	.after-banner-breadcrumb {
		padding: 0 !important;
	}
}

/* ============================================
   14. Responsive — 768px (Mobile)
   ============================================ */
@media (max-width: 768px) {
	/* Banner */
	.archive-banner-wrapper {
		height: auto !important;
		margin-top: 0 !important;
	}

	.archive-banner-img {
		height: auto !important;
		object-fit: contain !important;
		background: #f5f5f5;
	}

	/* Breadcrumb */
	.after-banner-breadcrumb {
		padding: 10px 15px !important;
		width: 100% !important;
		box-sizing: border-box !important;
		text-align: left;
	}

	.after-banner-breadcrumb .woocommerce-breadcrumb,
	.after-banner-breadcrumb .storefront-breadcrumb {
		font-size: 11px !important;
		line-height: 1.5 !important;
	}

	/* Grid */
	.cj-product-grid {
		grid-template-columns: repeat(2, 1fr) !important;
		gap: 12px !important;
		padding: 0 15px !important;
	}

	.cj-card__price .amount {
		font-size: 12px !important;
	}

	/* Archive Title */
	.cj-archive-title {
		font-size: 24px !important;
		text-align: left !important;
		margin: 15px 0 25px 0 !important;
		padding-left: 15px !important;
		font-style: italic !important;
		text-transform: uppercase !important;
		letter-spacing: 0.5px !important;
	}

	/* ── TOOLBAR GRID ──
	   Col 1      | Col 2
	   [icon]     | [Sort dropdown]   ← row 1
	   (spans 1-2)| [X results]       ← row 2
	*/
	.cj-product-loop-header {
		display: grid !important;
		grid-template-columns: auto 1fr !important;
		grid-template-rows: auto auto !important;
		align-items: center !important;
		gap: 4px 12px !important;
		padding: 0 15px !important;
		margin-bottom: 25px !important;
		height: auto !important;
	}

	/* Filter icon — col 1, spans both rows */
	.cj-mobile-filter-trigger {
		grid-column: 1 !important;
		grid-row: 1 / 3 !important;
		align-self: center !important;
	}



	/* Sorting dropdown — col 2, row 1 */
	.cj-product-loop-header .cj-ordering {
		grid-column: 2 !important;
		grid-row: 1 !important;
		display: flex !important;
		justify-content: flex-end !important;
		width: 100% !important;
	}

	.cj-product-loop-header .cj-ordering select,
	.cj-product-loop-header .woocommerce-ordering select {
		width: auto !important;
		min-width: 160px !important;
		font-size: 13px !important;
		font-weight: 400 !important;
		color: #333 !important;
		padding: 7px 32px 7px 12px !important;
		height: 36px !important;
		border-radius: 4px !important;
		background-color: #fff !important;
		border: 1px solid #d0d0d0 !important;
		-webkit-appearance: none !important;
		appearance: none !important;
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6' fill='none'%3E%3Cpath d='M1 1L5 5L9 1' stroke='%23555' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
		background-repeat: no-repeat !important;
		background-position: right 10px center !important;
		background-size: 10px !important;
		box-shadow: none !important;
		outline: none !important;
	}

	/* Result count — col 2, row 2 */
	.cj-product-loop-header .cj-result-count {
		grid-column: 2 !important;
		grid-row: 2 !important;
		text-align: right !important;
		width: 100% !important;
	}

	.cj-product-loop-header .cj-result-count .woocommerce-result-count,
	.cj-product-loop-header .woocommerce-result-count {
		font-size: 11px !important;
		color: #aaa !important;
		margin: 0 !important;
		padding: 0 !important;
		border: none !important;
	}

	/* Filters */
	.cj-archive-filters-container {
		grid-template-columns: 1fr;
	}
}