/* =========================================================
   Fathii Category Suite v1.4.0
   Robust across parent/child + desktop/mobile duplicate loops
   ========================================================= */

body.fathii-category-suite-active {
	--fcs-accent: #e07be0;
	--fcs-accent-soft: #fcf3fc;
	--fcs-orange: #f9a03f;
	--fcs-text: #171717;
	--fcs-card: #fff;
	--fcs-radius: 16px;
	--fcs-gap: 16px;
}

/* ---------- legacy archive elements ---------- */

.fathii-category-suite-active.fcs-toolbar-ready .woocommerce-result-count,
.fathii-category-suite-active.fcs-toolbar-ready form.woocommerce-ordering,
.fathii-category-suite-active.fcs-toolbar-ready .woocommerce-ordering,
.fathii-category-suite-active.fcs-toolbar-ready .w-order-select,
.fathii-category-suite-active .fcs-legacy-hide {
	display: none !important;
}

/* ---------- ONE canonical toolbar ---------- */

#fcs-toolbar-root.fcs-archive-head {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 18px !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 0 20px !important;
	padding: 14px 16px !important;
	position: relative !important;
	inset: auto !important;
	visibility: visible !important;
	opacity: 1 !important;
	background: #fff !important;
	border: 1px solid rgba(224,123,224,.10) !important;
	border-radius: 16px !important;
	box-shadow: 0 12px 35px rgba(236,176,236,.09) !important;
}

#fcs-toolbar-root .fcs-archive-title-wrap {
	flex: 0 0 auto !important;
	min-width: 130px !important;
}

#fcs-toolbar-root .fcs-archive-title {
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
	color: var(--fcs-text) !important;
	font: inherit !important;
	font-size: clamp(18px,1.35vw,24px) !important;
	font-weight: 800 !important;
	line-height: 1.4 !important;
	text-align: right !important;
	visibility: visible !important;
}

#fcs-toolbar-root .fcs-sort {
	display: grid !important;
	grid-template-columns: repeat(4,minmax(110px,1fr)) !important;
	gap: 8px !important;
	width: min(100%,650px) !important;
	margin-right: auto !important;
	margin-left: 0 !important;
	padding: 0 !important;
	visibility: visible !important;
}

#fcs-toolbar-root .fcs-sort__item {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 42px !important;
	margin: 0 !important;
	padding: 8px 12px !important;
	border: 1px solid rgba(23,23,23,.08) !important;
	border-radius: 11px !important;
	background: #fff !important;
	color: #333 !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	line-height: 1.35 !important;
	text-align: center !important;
	text-decoration: none !important;
	white-space: nowrap;
	visibility: visible !important;
	opacity: 1 !important;
	transition: transform .18s ease,border-color .18s ease,background-color .18s ease,color .18s ease,box-shadow .18s ease;
}

#fcs-toolbar-root .fcs-sort__item:hover {
	transform: translateY(-1px);
	border-color: rgba(224,123,224,.45) !important;
	background: var(--fcs-accent-soft) !important;
	color: #171717 !important;
}

#fcs-toolbar-root .fcs-sort__item.is-active {
	border-color: var(--fcs-accent) !important;
	background: var(--fcs-accent) !important;
	color: #fff !important;
	box-shadow: 0 7px 20px rgba(224,123,224,.20) !important;
}

/* =========================================================
   PRODUCT GRIDS
   ========================================================= */

.fathii-category-suite-active ul.products,
.fathii-category-suite-active .fcs-impreza-grid {
	display: grid !important;
	grid-template-columns: repeat(var(--fcs-desktop-columns,4),minmax(0,1fr)) !important;
	gap: var(--fcs-gap) !important;
	align-items: stretch !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.fathii-category-suite-active ul.products::before,
.fathii-category-suite-active ul.products::after {
	display: none !important;
	content: none !important;
}

/* Native WooCommerce card */
.fathii-category-suite-active ul.products li.product {
	float: none !important;
	clear: none !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	justify-content: flex-start !important;
	width: auto !important;
	max-width: none !important;
	min-width: 0 !important;
	height: 100% !important;
	margin: 0 !important;
	padding: 12px 12px 14px !important;
	overflow: hidden !important;
	position: relative !important;
	background: var(--fcs-card) !important;
	border: 1px solid rgba(224,123,224,.06) !important;
	border-radius: var(--fcs-radius) !important;
	box-shadow: 0 14px 42px rgba(236,176,236,.10) !important;
}

/* Impreza product card */
.fathii-category-suite-active .fcs-impreza-grid > article.w-grid-item.type-product {
	float: none !important;
	clear: none !important;
	display: block !important;
	width: auto !important;
	max-width: none !important;
	min-width: 0 !important;
	height: auto !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	position: relative !important;
	inset: auto !important;
	transform: none !important;
}

.fathii-category-suite-active .fcs-impreza-grid > article.w-grid-item.type-product > .w-grid-item-h {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	justify-content: flex-start !important;
	width: 100% !important;
	height: 100% !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 12px 12px 14px !important;
	overflow: hidden !important;
	position: relative !important;
	background: var(--fcs-card) !important;
	border: 1px solid rgba(224,123,224,.06) !important;
	border-radius: var(--fcs-radius) !important;
	box-shadow: 0 14px 42px rgba(236,176,236,.10) !important;
}

/* Impreza ratio spacer that caused oversized child-category cards */
.fathii-category-suite-active .fcs-impreza-grid .post_image > div[style*="padding-bottom"],
.fathii-category-suite-active .fcs-impreza-grid .img-product > div[style*="padding-bottom"] {
	display: none !important;
	height: 0 !important;
	padding: 0 !important;
}

/* ---------- image ---------- */

.fathii-category-suite-active ul.products li.product a.woocommerce-LoopProduct-link {
	display: flex !important;
	flex-direction: column !important;
	flex: 1 1 auto !important;
	color: inherit !important;
	text-decoration: none !important;
}

.fathii-category-suite-active ul.products li.product a img,
.fathii-category-suite-active ul.products li.product img.attachment-woocommerce_thumbnail,
.fathii-category-suite-active ul.products li.product img.wp-post-image {
	display: block !important;
	width: 100% !important;
	height: auto !important;
	aspect-ratio: 1/1 !important;
	margin: 0 0 12px !important;
	padding: 5px !important;
	object-fit: contain !important;
	object-position: center !important;
	background: #fff !important;
	border-radius: 13px !important;
}

.fathii-category-suite-active .fcs-impreza-grid .post_image,
.fathii-category-suite-active .fcs-impreza-grid .img-product {
	display: block !important;
	flex: 0 0 auto !important;
	width: 100% !important;
	height: auto !important;
	aspect-ratio: 1/1 !important;
	margin: 0 0 12px !important;
	padding: 0 !important;
	overflow: hidden !important;
	position: relative !important;
	background: #fff !important;
	border-radius: 13px !important;
}

.fathii-category-suite-active .fcs-impreza-grid .post_image > a,
.fathii-category-suite-active .fcs-impreza-grid .img-product > a {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	height: 100% !important;
}

.fathii-category-suite-active .fcs-impreza-grid .post_image img,
.fathii-category-suite-active .fcs-impreza-grid .img-product img {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	padding: 5px !important;
	object-fit: contain !important;
	object-position: center !important;
	position: static !important;
	transform: none !important;
}

/* ---------- title ---------- */

.fathii-category-suite-active ul.products li.product .woocommerce-loop-product__title,
.fathii-category-suite-active ul.products li.product h2,
.fathii-category-suite-active ul.products li.product h3,
.fathii-category-suite-active .fcs-impreza-grid .post_title {
	display: -webkit-box !important;
	min-height: 54px !important;
	max-height: 54px !important;
	margin: 0 2px 10px !important;
	padding: 0 !important;
	overflow: hidden !important;
	color: var(--fcs-text) !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	line-height: 1.9 !important;
	text-align: right !important;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}

.fathii-category-suite-active .fcs-impreza-grid .post_title a {
	color: var(--fcs-text) !important;
	font-size: inherit !important;
	font-weight: inherit !important;
	line-height: inherit !important;
}

/* ---------- PRICE: centered on every device ---------- */

.fathii-category-suite-active ul.products li.product .price,
.fathii-category-suite-active .fcs-impreza-grid .product_field.price,
.fathii-category-suite-active .fcs-impreza-grid .price-box,
.fathii-category-suite-active .fcs-impreza-grid .price-pr,
.fathii-category-suite-active .fcs-impreza-grid .asl-price,
.fathii-category-suite-active .fcs-impreza-grid .off-div,
.fathii-category-suite-active .fcs-impreza-grid .usg_vwrapper_2 {
	width: 100% !important;
	text-align: center !important;
}

.fathii-category-suite-active ul.products li.product .price,
.fathii-category-suite-active .fcs-impreza-grid .product_field.price {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	flex-wrap: wrap !important;
	gap: 4px 7px !important;
	min-height: 48px !important;
	margin: auto 0 0 !important;
	padding-top: 5px !important;
	color: var(--fcs-text) !important;
	font-size: 15px !important;
	font-weight: 800 !important;
	line-height: 1.5 !important;
}

.fathii-category-suite-active .fcs-impreza-grid .price-box,
.fathii-category-suite-active .fcs-impreza-grid .price-pr,
.fathii-category-suite-active .fcs-impreza-grid .usg_vwrapper_2 {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: flex-end !important;
	flex: 1 1 auto !important;
	height: auto !important;
	min-height: 48px !important;
	margin: 0 !important;
	padding: 0 !important;
}

.fathii-category-suite-active .fcs-impreza-grid .asl-price,
.fathii-category-suite-active .fcs-impreza-grid .off-div {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	flex-wrap: wrap !important;
}

.fathii-category-suite-active ul.products li.product .price del,
.fathii-category-suite-active .fcs-impreza-grid .price del {
	order: 1 !important;
	width: 100% !important;
	color: #a6a6a6 !important;
	font-size: 11px !important;
	font-weight: 500 !important;
	opacity: 1 !important;
	text-align: center !important;
}

.fathii-category-suite-active ul.products li.product .price ins,
.fathii-category-suite-active .fcs-impreza-grid .price ins {
	order: 2 !important;
	color: var(--fcs-text) !important;
	font-weight: 800 !important;
	text-decoration: none !important;
	text-align: center !important;
}

.fathii-category-suite-active ul.products li.product .price bdi,
.fathii-category-suite-active .fcs-impreza-grid .price bdi {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	text-align: center !important;
}

.fathii-category-suite-active ul.products li.product .woocommerce-Price-currencySymbol,
.fathii-category-suite-active .fcs-impreza-grid .woocommerce-Price-currencySymbol {
	margin-right: 4px !important;
	color: var(--fcs-orange) !important;
	font-size: 11px !important;
	font-weight: 600 !important;
}

.fathii-category-suite-active ul.products li.product .out-of-stock,
.fathii-category-suite-active .fcs-impreza-grid .out-of-stock {
	display: inline-flex !important;
	justify-content: center !important;
	width: 100% !important;
	margin-top: auto !important;
	color: #f04444 !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	text-align: center !important;
}

/* ---------- discount ---------- */

.fathii-category-suite-active ul.products li.product .onsale,
.fathii-category-suite-active ul.products li.product .sale-percentage,
.fathii-category-suite-active ul.products li.product .product-discount,
.fathii-category-suite-active .fcs-impreza-grid .sale-percentage,
.fathii-category-suite-active .fcs-impreza-grid .product-discount,
.fathii-category-suite-active .fcs-impreza-grid .onsale {
	top: 12px !important;
	right: auto !important;
	left: 12px !important;
	z-index: 7 !important;
	width: auto !important;
	min-width: 38px !important;
	min-height: auto !important;
	margin: 0 !important;
	padding: 5px 9px !important;
	border: 0 !important;
	border-radius: 9px !important;
	background: var(--fcs-accent) !important;
	background-image: none !important;
	box-shadow: 0 5px 18px rgba(224,123,224,.22) !important;
	color: #171717 !important;
	font-size: 12px !important;
	font-weight: 800 !important;
	line-height: 1.4 !important;
	text-align: center !important;
}

/* =========================================================
   PAGINATION — Fathii/Impreza + WooCommerce
   ========================================================= */

.fathii-category-suite-active .pagination,
.fathii-category-suite-active nav.woocommerce-pagination,
.fathii-category-suite-active .woocommerce-pagination,
.fathii-category-suite-active .w-pages,
.fathii-category-suite-active .w-grid-pagination {
	display: block !important;
	clear: both !important;
	width: 100% !important;
	margin: 38px 0 10px !important;
	padding: 0 !important;
	text-align: center !important;
}

.fathii-category-suite-active .nav-links.custom.us-nav-style_7,
.fathii-category-suite-active .pagination .nav-links,
.fathii-category-suite-active .woocommerce-pagination ul.page-numbers {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	flex-wrap: wrap !important;
	column-gap: 10px !important;
	row-gap: 10px !important;
	width: 100% !important;
	margin: 0 auto !important;
	padding: 6px 10px !important;
	border: 0 !important;
	list-style: none !important;
}

.fathii-category-suite-active .nav-links.custom.us-nav-style_7 > .page-numbers,
.fathii-category-suite-active .pagination .nav-links > .page-numbers,
.fathii-category-suite-active .woocommerce-pagination .page-numbers > li > .page-numbers {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	flex: 0 0 auto !important;
	width: 42px !important;
	min-width: 42px !important;
	height: 42px !important;
	margin: 0 !important;
	padding: 0 8px !important;
	border: 1px solid rgba(224,123,224,.18) !important;
	border-radius: 12px !important;
	background: #fff !important;
	box-shadow: 0 5px 16px rgba(236,176,236,.08) !important;
	color: #262626 !important;
	font-size: 14px !important;
	font-weight: 650 !important;
	line-height: 1 !important;
	text-decoration: none !important;
	transition: background-color .18s ease,border-color .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease;
}

.fathii-category-suite-active .nav-links.custom.us-nav-style_7 > .page-numbers > span,
.fathii-category-suite-active .pagination .nav-links > .page-numbers > span {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	height: 100% !important;
	color: inherit !important;
	background: transparent !important;
}

.fathii-category-suite-active .nav-links.custom.us-nav-style_7 > a.page-numbers:hover,
.fathii-category-suite-active .pagination .nav-links > a.page-numbers:hover,
.fathii-category-suite-active .woocommerce-pagination a.page-numbers:hover {
	transform: translateY(-1px);
	border-color: var(--fcs-accent) !important;
	background: var(--fcs-accent-soft) !important;
	color: #171717 !important;
	box-shadow: 0 8px 20px rgba(224,123,224,.14) !important;
}

.fathii-category-suite-active .nav-links.custom.us-nav-style_7 > .page-numbers.current,
.fathii-category-suite-active .pagination .nav-links > .page-numbers.current,
.fathii-category-suite-active .woocommerce-pagination .page-numbers.current {
	border-color: var(--fcs-accent) !important;
	background: var(--fcs-accent) !important;
	color: #171717 !important;
	box-shadow: 0 8px 20px rgba(224,123,224,.22) !important;
}

.fathii-category-suite-active .nav-links.custom.us-nav-style_7 > .page-numbers.dots,
.fathii-category-suite-active .pagination .nav-links > .page-numbers.dots {
	width: 28px !important;
	min-width: 28px !important;
	border-color: transparent !important;
	background: transparent !important;
	box-shadow: none !important;
	color: #777 !important;
}

.fathii-category-suite-active .nav-links.custom.us-nav-style_7 > .page-numbers.next,
.fathii-category-suite-active .nav-links.custom.us-nav-style_7 > .page-numbers.prev,
.fathii-category-suite-active .pagination .nav-links > .page-numbers.next,
.fathii-category-suite-active .pagination .nav-links > .page-numbers.prev {
	width: auto !important;
	min-width: 58px !important;
	padding: 0 14px !important;
}

/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 1100px) {
	.fathii-category-suite-active ul.products,
	.fathii-category-suite-active .fcs-impreza-grid {
		grid-template-columns: repeat(var(--fcs-laptop-columns,3),minmax(0,1fr)) !important;
	}

	#fcs-toolbar-root.fcs-archive-head {
		align-items: flex-start !important;
		flex-direction: column !important;
	}

	#fcs-toolbar-root .fcs-sort {
		width: 100% !important;
		margin-right: 0 !important;
	}
}

@media (max-width: 767px) {
	body.fathii-category-suite-active {
		--fcs-gap: 10px;
	}

	/*
	 * Explicit mobile visibility.
	 * This prevents Impreza hide_on_mobiles rules from ever hiding our moved toolbar.
	 */
	#fcs-toolbar-root.fcs-archive-head {
		display: flex !important;
		visibility: visible !important;
		opacity: 1 !important;
		gap: 12px !important;
		margin: 0 0 14px !important;
		padding: 12px !important;
		border-radius: 14px !important;
	}

	#fcs-toolbar-root .fcs-archive-title {
		display: block !important;
		font-size: 17px !important;
	}

	#fcs-toolbar-root .fcs-sort {
		display: grid !important;
		grid-template-columns: repeat(2,minmax(0,1fr)) !important;
		gap: 7px !important;
		width: 100% !important;
		visibility: visible !important;
	}

	#fcs-toolbar-root .fcs-sort__item {
		display: inline-flex !important;
		min-height: 40px !important;
		padding: 7px 6px !important;
		font-size: 12px !important;
		white-space: normal !important;
		visibility: visible !important;
	}

	.fathii-category-suite-active ul.products,
	.fathii-category-suite-active .fcs-impreza-grid {
		grid-template-columns: repeat(var(--fcs-mobile-columns,2),minmax(0,1fr)) !important;
	}

	.fathii-category-suite-active ul.products li.product,
	.fathii-category-suite-active .fcs-impreza-grid > article.w-grid-item.type-product > .w-grid-item-h {
		padding: 8px 8px 11px !important;
		border-radius: 13px !important;
	}

	.fathii-category-suite-active ul.products li.product .price,
	.fathii-category-suite-active .fcs-impreza-grid .product_field.price {
		min-height: 46px !important;
		font-size: 15px !important;
	}

	.fathii-category-suite-active ul.products li.product .price bdi,
	.fathii-category-suite-active .fcs-impreza-grid .price bdi {
		font-size: 15px !important;
	}

	.fathii-category-suite-active .pagination,
	.fathii-category-suite-active nav.woocommerce-pagination,
	.fathii-category-suite-active .woocommerce-pagination,
	.fathii-category-suite-active .w-pages,
	.fathii-category-suite-active .w-grid-pagination {
		margin-top: 30px !important;
	}

	.fathii-category-suite-active .nav-links.custom.us-nav-style_7,
	.fathii-category-suite-active .pagination .nav-links,
	.fathii-category-suite-active .woocommerce-pagination ul.page-numbers {
		column-gap: 8px !important;
		row-gap: 8px !important;
		padding-left: 4px !important;
		padding-right: 4px !important;
	}

	.fathii-category-suite-active .nav-links.custom.us-nav-style_7 > .page-numbers,
	.fathii-category-suite-active .pagination .nav-links > .page-numbers,
	.fathii-category-suite-active .woocommerce-pagination .page-numbers > li > .page-numbers {
		width: 37px !important;
		min-width: 37px !important;
		height: 37px !important;
		border-radius: 10px !important;
		font-size: 13px !important;
	}

	.fathii-category-suite-active .nav-links.custom.us-nav-style_7 > .page-numbers.next,
	.fathii-category-suite-active .nav-links.custom.us-nav-style_7 > .page-numbers.prev,
	.fathii-category-suite-active .pagination .nav-links > .page-numbers.next,
	.fathii-category-suite-active .pagination .nav-links > .page-numbers.prev {
		min-width: 52px !important;
		padding: 0 11px !important;
	}
}
