/* ==========================================================

   PHIUM ESSENCE

   PRODUCT LISTING CATEGORY PAGES

   File: assets/css/woocommerce/shop.css



   Applies to:

   - For Her

   - For Him

   - Mini Pack

   - Other product-category listings



   Excludes:

   - Main collection tile page: term-shop

   ========================================================== */





/* ==========================================================

   VARIABLES

   ========================================================== */



body.tax-product_cat:not(.term-shop) {

    --phium-listing-accent: #b77b76;

    --phium-listing-accent-dark: #925d59;

    --phium-listing-heading: #2b1c15;

    --phium-listing-text: #6b5d55;

    --phium-listing-muted: #8f8179;

    --phium-listing-border: #eadfd7;

    --phium-listing-soft: #fbf3f2;

    --phium-listing-card: #ffffff;

}





/* ==========================================================

   PAGE BACKGROUND

   ========================================================== */



body.tax-product_cat:not(.term-shop),

body.tax-product_cat:not(.term-shop) #main,

body.tax-product_cat:not(.term-shop) .site-main {

    background: #faf6f2;

}





/* ==========================================================

   CATEGORY HERO

   ========================================================== */



body.tax-product_cat:not(.term-shop)

.hero-section[data-type="type-2"] {

    position: relative;



    display: flex;

    align-items: center;

    justify-content: center;



    min-height: 280px !important;

    height: auto !important;



    aspect-ratio: 1920 / 520;



    overflow: hidden;

    isolation: isolate;



    background: var(--phium-listing-soft);

}





body.tax-product_cat:not(.term-shop)

.hero-section[data-type="type-2"] > figure {

    position: absolute;

    inset: 0;



    z-index: -2;



    width: 100%;

    height: 100%;



    margin: 0 !important;

}





body.tax-product_cat:not(.term-shop)

.hero-section[data-type="type-2"]

.ct-media-container,



body.tax-product_cat:not(.term-shop)

.hero-section[data-type="type-2"]

picture {

    display: block;



    width: 100%;

    height: 100%;

}





body.tax-product_cat:not(.term-shop)

.hero-section[data-type="type-2"] img {

    display: block;



    width: 100% !important;

    height: 100% !important;



    max-width: none !important;



    margin: 0 !important;



    object-fit: cover !important;

    object-position: center center !important;



    transform: none !important;

}





body.tax-product_cat:not(.term-shop)

.hero-section[data-type="type-2"]::after {

    content: "";



    position: absolute;

    inset: 0;



    z-index: -1;



    background:

        linear-gradient(

            90deg,

            rgba(42, 25, 19, 0.20),

            rgba(42, 25, 19, 0.08),

            rgba(42, 25, 19, 0.12)

        );

}





body.tax-product_cat:not(.term-shop)

.hero-section .entry-header {

    width: min(100% - 30px, 1200px);

    max-width: none;



    margin: 0 auto;



    text-align: center;

}





body.tax-product_cat:not(.term-shop)

.hero-section .page-title {

    margin: 0 !important;



    color: #ffffff;



    font-family:

        var(--font-heading, "Cormorant Garamond", serif);



    font-size: clamp(48px, 5vw, 68px);

    font-weight: 500;

    line-height: 1;



    letter-spacing: 0.01em;



    text-shadow:

        0 4px 20px rgba(0, 0, 0, 0.20);

}





/* ==========================================================

   MAIN LISTING CONTAINER

   ========================================================== */



body.tax-product_cat:not(.term-shop)

main > .ct-container,



body.tax-product_cat:not(.term-shop)

[data-vertical-spacing="top:bottom"] {

    padding-top: 42px !important;

    padding-bottom: 52px !important;

}





/* Hide empty archive header */



body.tax-product_cat:not(.term-shop)

.woocommerce-products-header:empty {

    display: none !important;

}





/* ==========================================================

   RESULT COUNT AND SORTING

   ========================================================== */



body.tax-product_cat:not(.term-shop)

.woo-listing-top {

    display: flex !important;

    align-items: center;

    justify-content: space-between;



    gap: 20px;



    min-height: 0 !important;



    margin: 0 0 28px !important;

    padding: 0 0 18px !important;



    border-bottom:

        1px solid var(--phium-listing-border);

}





body.tax-product_cat:not(.term-shop)

.woocommerce-result-count {

    margin: 0 !important;



    color: var(--phium-listing-muted);



    font-size: 13px;

    font-weight: 500;

    line-height: 1.4;



    letter-spacing: 0.08em;

    text-transform: uppercase;

}





body.tax-product_cat:not(.term-shop)

.woocommerce-ordering {

    margin: 0 !important;

}





body.tax-product_cat:not(.term-shop)

.woocommerce-ordering select.orderby {

    width: auto;

    min-width: 190px;

    height: 46px;



    padding:

        0

        42px

        0

        17px;



    border:

        1px solid var(--phium-listing-border);



    border-radius: 50px;



    background-color: #ffffff;



    color: var(--phium-listing-heading);



    font-size: 13px;



    box-shadow: none;



    cursor: pointer;



    transition:

        border-color 0.25s ease,

        box-shadow 0.25s ease;

}





body.tax-product_cat:not(.term-shop)

.woocommerce-ordering select.orderby:hover,

body.tax-product_cat:not(.term-shop)

.woocommerce-ordering select.orderby:focus {

    border-color:

        var(--phium-listing-accent);



    outline: none;



    box-shadow:

        0 0 0 3px rgba(183, 123, 118, 0.12);

}





/* ==========================================================

   PRODUCT GRID

   ========================================================== */



body.tax-product_cat:not(.term-shop)

ul.products[data-products="type-1"],



body.tax-product_cat:not(.term-shop)

.woocommerce ul.products {

    display: grid !important;



    grid-template-columns:

        repeat(3, minmax(0, 1fr)) !important;



    align-items: stretch !important;



    gap: 30px !important;



    width: 100% !important;



    margin: 0 !important;

    padding: 0 !important;



    list-style: none;

}





/* Reset Blocksy column widths */



body.tax-product_cat:not(.term-shop)

ul.products

li.product {

    float: none !important;



    width: auto !important;

    min-width: 0 !important;

    max-width: none !important;



    margin: 0 !important;

}





/* ==========================================================

   PRODUCT CARD

   ========================================================== */



body.tax-product_cat:not(.term-shop)

ul.products

li.product {

    position: relative;



    display: flex !important;

    flex-direction: column;



    overflow: hidden;



    padding: 0 0 20px !important;



    border:

        1px solid var(--phium-listing-border);



    border-radius: 18px;



    background:

        var(--phium-listing-card);



    box-shadow:

        0 9px 26px rgba(43, 28, 21, 0.05);



    transition:

        transform 0.3s ease,

        border-color 0.3s ease,

        box-shadow 0.3s ease;

}





body.tax-product_cat:not(.term-shop)

ul.products

li.product:hover {

    transform: translateY(-5px);



    border-color:

        rgba(183, 123, 118, 0.48);



    box-shadow:

        0 18px 38px rgba(43, 28, 21, 0.10);

}





/* ==========================================================

   PRODUCT IMAGE

   ========================================================== */



body.tax-product_cat:not(.term-shop)

ul.products

li.product > figure {

    position: relative;



    width: 100%;



    overflow: hidden;



    margin: 0 0 19px !important;



    background:

        var(--phium-listing-soft);

}





body.tax-product_cat:not(.term-shop)

ul.products

li.product

> figure

.ct-media-container {

    display: block;



    width: 100%;



    aspect-ratio: 1 / 1;



    overflow: hidden;

}





body.tax-product_cat:not(.term-shop)

ul.products

li.product

> figure

picture {

    display: block;



    width: 100%;

    height: 100%;

}





body.tax-product_cat:not(.term-shop)

ul.products

li.product

> figure img {

    display: block;



    width: 100% !important;

    height: 100% !important;



    aspect-ratio: 1 / 1 !important;



    margin: 0 !important;



    object-fit: cover;

    object-position: center;



    transition:

        transform 0.45s ease;

}





body.tax-product_cat:not(.term-shop)

ul.products

li.product:hover

> figure img {

    transform: scale(1.035);

}





/* ==========================================================

   SALE BADGE

   ========================================================== */



body.tax-product_cat:not(.term-shop)

ul.products

li.product

.onsale,



body.tax-product_cat:not(.term-shop)

ul.products

li.product

.onsale[data-shape="type-2"] {

    position: absolute !important;



    top: 14px !important;

    left: 14px !important;

    right: auto !important;



    z-index: 5;



    display: inline-flex !important;

    align-items: center;

    justify-content: center;



    width: auto !important;

    min-width: 0 !important;

    min-height: 0 !important;



    margin: 0 !important;

    padding: 8px 13px !important;



    border: 0 !important;

    border-radius: 50px !important;



    background:

        var(--phium-listing-heading) !important;



    color: #ffffff !important;



    font-size: 10px !important;

    font-weight: 700 !important;

    line-height: 1 !important;



    letter-spacing: 0.12em;

    text-transform: uppercase;



    box-shadow:

        0 5px 15px rgba(43, 28, 21, 0.18);

}





body.tax-product_cat:not(.term-shop)

ul.products

li.product

.onsale::before,



body.tax-product_cat:not(.term-shop)

ul.products

li.product

.onsale::after {

    display: none !important;

}





/* ==========================================================

   CARD CONTENT SPACING

   ========================================================== */



body.tax-product_cat:not(.term-shop)

ul.products

li.product

> :not(figure) {

    margin-left: 20px !important;

    margin-right: 20px !important;

}





/* ==========================================================

   PRODUCT TITLE

   ========================================================== */



body.tax-product_cat:not(.term-shop)

ul.products

li.product

.woocommerce-loop-product__title {

    margin-top: 0 !important;

    margin-bottom: 7px !important;



    padding: 0 !important;



    font-family:

        var(--font-heading, "Cormorant Garamond", serif);



    font-size: 24px !important;

    font-weight: 500;

    line-height: 1.12;

}





body.tax-product_cat:not(.term-shop)

ul.products

li.product

.woocommerce-loop-product__title a {

    color:

        var(--phium-listing-heading) !important;



    text-decoration: none;

}





body.tax-product_cat:not(.term-shop)

ul.products

li.product

.woocommerce-loop-product__title a:hover {

    color:

        var(--phium-listing-accent-dark) !important;

}





/* ==========================================================

   PRICE

   ========================================================== */



body.tax-product_cat:not(.term-shop)

ul.products

li.product

.price {

    display: block !important;



    margin-top: 0 !important;

    margin-bottom: 12px !important;



    color:

        var(--phium-listing-text) !important;



    font-size: 14px !important;

    font-weight: 500;

    line-height: 1.4;

}





body.tax-product_cat:not(.term-shop)

ul.products

li.product

.price .amount {

    color: inherit !important;

}





body.tax-product_cat:not(.term-shop)

ul.products

li.product

.price del {

    margin-right: 5px;



    color:

        var(--phium-listing-muted) !important;



    opacity: 0.72;

}





body.tax-product_cat:not(.term-shop)

ul.products

li.product

.price ins {

    color:

        var(--phium-listing-accent-dark) !important;



    text-decoration: none;

}





/* ==========================================================

   PRODUCT CATEGORY BADGE

   ========================================================== */



body.tax-product_cat:not(.term-shop)

ul.products

li.product

.entry-meta {

    margin-top: 0 !important;

    margin-bottom: 18px !important;



    padding: 0 !important;



    list-style: none;

}





body.tax-product_cat:not(.term-shop)

ul.products

li.product

.entry-meta

.meta-categories {

    margin: 0 !important;

}





body.tax-product_cat:not(.term-shop)

ul.products

li.product

.entry-meta

.meta-categories a {

    display: inline-flex;

    align-items: center;

    justify-content: center;



    min-height: 27px;



    padding:

        7px

        12px;



    border-radius: 50px;



    background:

        var(--phium-listing-soft);



    color:

        var(--phium-listing-accent-dark) !important;



    font-size: 10px;

    font-weight: 700;

    line-height: 1;



    letter-spacing: 0.10em;

    text-transform: uppercase;

    text-decoration: none;

}





/* ==========================================================

   CALL TO ACTION WRAPPER

   ========================================================== */



body.tax-product_cat:not(.term-shop)

ul.products

li.product

.ct-woo-card-actions {

    position: relative !important;



    display: block !important;



    width: auto !important;

    height: auto !important;

    min-height: 46px !important;



    margin-top: auto !important;



    opacity: 1 !important;

    visibility: visible !important;



    overflow: visible !important;



    transform: none !important;

}





/* Override Blocksy auto-hide */



body.tax-product_cat:not(.term-shop)

ul.products

li.product

.ct-woo-card-actions[data-add-to-cart],



body.tax-product_cat:not(.term-shop)

ul.products

li.product

.ct-woo-card-actions[data-add-to-cart="auto-hide"] {

    position: relative !important;



    opacity: 1 !important;

    visibility: visible !important;



    pointer-events: auto !important;



    transform: none !important;

}





/* ==========================================================

   CALL TO ACTION BUTTON

   ========================================================== */



body.tax-product_cat:not(.term-shop)

ul.products

li.product

.ct-woo-card-actions

a.button,



body.tax-product_cat:not(.term-shop)

ul.products

li.product

a.button.product_type_variable,



body.tax-product_cat:not(.term-shop)

ul.products

li.product

a.add_to_cart_button {

    position: relative !important;



    display: flex !important;

    align-items: center !important;

    justify-content: center !important;



    width: 100% !important;

    height: auto !important;

    min-height: 46px !important;



    margin: 0 !important;

    padding:

        12px

        20px !important;



    overflow: visible !important;



    border:

        1px solid var(--phium-listing-accent) !important;



    border-radius: 50px !important;



    background:

        transparent !important;



    color:

        var(--phium-listing-accent-dark) !important;



    font-family: inherit !important;

    font-size: 12px !important;

    font-weight: 700 !important;

    line-height: 1.2 !important;



    letter-spacing: 0.06em !important;

    text-align: center !important;

    text-indent: 0 !important;

    text-transform: uppercase !important;

    text-decoration: none !important;



    white-space: normal !important;



    opacity: 1 !important;

    visibility: visible !important;



    clip: auto !important;

    clip-path: none !important;



    box-shadow: none !important;



    transform: none !important;



    transition:

        background-color 0.25s ease,

        border-color 0.25s ease,

        color 0.25s ease,

        transform 0.25s ease;

}





/*

 * Blocksy can hide the button label inside a span.

 * Force every inner label to remain visible.

 */



body.tax-product_cat:not(.term-shop)

ul.products

li.product

.ct-woo-card-actions

a.button span,



body.tax-product_cat:not(.term-shop)

ul.products

li.product

.ct-woo-card-actions

a.button

* {

    position: static !important;



    display: inline !important;



    width: auto !important;

    height: auto !important;



    color: inherit !important;



    font-size: inherit !important;

    line-height: inherit !important;



    text-indent: 0 !important;



    opacity: 1 !important;

    visibility: visible !important;



    clip: auto !important;

    clip-path: none !important;



    transform: none !important;

}





/* Remove icon-only overlays */



body.tax-product_cat:not(.term-shop)

ul.products

li.product

.ct-woo-card-actions

a.button::before,



body.tax-product_cat:not(.term-shop)

ul.products

li.product

.ct-woo-card-actions

a.button::after {

    display: none !important;

}





/* CTA hover */



body.tax-product_cat:not(.term-shop)

ul.products

li.product

.ct-woo-card-actions

a.button:hover,



body.tax-product_cat:not(.term-shop)

ul.products

li.product

.ct-woo-card-actions

a.button:focus {

    border-color:

        var(--phium-listing-accent) !important;



    background:

        var(--phium-listing-accent) !important;



    color: #ffffff !important;



    outline: none !important;



    transform: translateY(-1px) !important;

}





/* ==========================================================

   REMOVE TRENDING NOW

   ========================================================== */



body.tax-product_cat

.ct-trending-block,



body.tax-product_cat

section.ct-trending-block {

    display: none !important;

}





/* ==========================================================

   REMOVE EXCESS BOTTOM SPACE

   ========================================================== */



body.tax-product_cat:not(.term-shop)

.woocommerce,



body.tax-product_cat:not(.term-shop)

.woocommerce

ul.products,



body.tax-product_cat:not(.term-shop)

.site-main,



body.tax-product_cat:not(.term-shop)

#main {

    margin-bottom: 0 !important;

}





body.tax-product_cat:not(.term-shop)

.woocommerce

ul.products {

    padding-bottom: 0 !important;

}





/* ==========================================================

   TABLET

   ========================================================== */



@media (max-width: 1024px) {



    body.tax-product_cat:not(.term-shop)

    ul.products[data-products="type-1"],



    body.tax-product_cat:not(.term-shop)

    .woocommerce ul.products {

        grid-template-columns:

            repeat(2, minmax(0, 1fr)) !important;



        gap: 24px !important;

    }





    body.tax-product_cat:not(.term-shop)

      .hero-section[data-type="type-2"] {

        min-height: 230px !important;

        height: auto !important;



        aspect-ratio: 16 / 5;

    }



}





/* ==========================================================

   MOBILE

   ========================================================== */



@media (max-width: 767px) {



    body.tax-product_cat:not(.term-shop)

    .hero-section[data-type="type-2"] {

        min-height: 190px !important;

        height: auto !important;



        aspect-ratio: 16 / 7;

    }





    body.tax-product_cat:not(.term-shop)

    .hero-section .page-title {

        font-size: 44px;

    }





    body.tax-product_cat:not(.term-shop)

    main > .ct-container,



    body.tax-product_cat:not(.term-shop)

    [data-vertical-spacing="top:bottom"] {

        padding-top: 28px !important;

        padding-bottom: 36px !important;

    }





    body.tax-product_cat:not(.term-shop)

    .woo-listing-top {

        align-items: stretch;



        gap: 14px;



        margin-bottom: 22px !important;

    }





    body.tax-product_cat:not(.term-shop)

    .woocommerce-ordering {

        width: 100%;

    }





    body.tax-product_cat:not(.term-shop)

    .woocommerce-ordering select.orderby {

        width: 100%;

        min-width: 0;

    }





    body.tax-product_cat:not(.term-shop)

    ul.products[data-products="type-1"],



    body.tax-product_cat:not(.term-shop)

    .woocommerce ul.products {

        grid-template-columns: 1fr !important;



        gap: 22px !important;

    }





    body.tax-product_cat:not(.term-shop)

    ul.products

    li.product {

        width: 100% !important;

        max-width: 460px !important;



        margin-right: auto !important;

        margin-left: auto !important;

    }



}





/* ==========================================================

   REDUCED MOTION

   ========================================================== */



@media (prefers-reduced-motion: reduce) {



    body.tax-product_cat:not(.term-shop)

    ul.products

    li.product,



    body.tax-product_cat:not(.term-shop)

    ul.products

    li.product img,



    body.tax-product_cat:not(.term-shop)

    ul.products

    li.product

    a.button {

        transition: none;

    }





    body.tax-product_cat:not(.term-shop)

    ul.products

    li.product:hover,



    body.tax-product_cat:not(.term-shop)

    ul.products

    li.product:hover img,



    body.tax-product_cat:not(.term-shop)

    ul.products

    li.product

    a.button:hover {

        transform: none !important;

    }



}

/*=========================================================

CATEGORY EXPLORE COLLECTION — FINAL CLICKABLE VERSION

=========================================================*/



.woocommerce ul.products li.product-category {

	position: relative;

}





/*

 * Remove the old non-clickable decorative button.

 */

.woocommerce ul.products li.product-category::after {

	display: none !important;

	content: none !important;

}





/*

 * Hide the category product count.

 */

.woocommerce ul.products

li.product-category

.woocommerce-loop-category__title

.count {

	display: none !important;

}





/*

 * The heading already contains the genuine category link.

 */

.woocommerce ul.products

li.product-category

.woocommerce-loop-category__title > a {

	display: flex !important;

	flex-direction: column;

	align-items: center;



	width: 100%;



	color: inherit;

	text-decoration: none;

}





/*

 * Create one clickable button inside the genuine link.

 */

.woocommerce ul.products

li.product-category

.woocommerce-loop-category__title > a::after {

	display: inline-flex;

	align-items: center;

	justify-content: center;



	width: calc(100% - 64px);

	max-width: 340px;

	min-height: 52px;



	margin: 22px auto 0;

	padding: 14px 28px;



	box-sizing: border-box;



	content: "Explore Collection";



	background: var(--phium-primary);

	border-radius: 999px;



	color: #fff;



	font-family: inherit;

	font-size: 16px;

	font-weight: 700;

	line-height: 1;

	text-align: center;



	cursor: pointer;



	transition:

		background-color 0.2s ease,

		transform 0.2s ease;

}





.woocommerce ul.products

li.product-category

.woocommerce-loop-category__title > a:hover::after {

	background: var(--phium-heading);

	transform: translateY(-1px);

}





@media (max-width: 767px) {



	.woocommerce ul.products

	li.product-category

	.woocommerce-loop-category__title > a::after {

		width: calc(100% - 40px);

		max-width: 280px;

	}

}

/* ==========================================================
   PHIUM — TAX-INCLUSIVE PRODUCT CARD PRICE NOTE
   21 Aug 2026
   Used with product-functions.php customer-facing price display.
   ========================================================== */

/* Category/archive, Featured, New, On-sale and shortcode product loops. */
.woocommerce ul.products li.product .phium-customer-price,
ul.products li.product .phium-customer-price {
	display: block;
}

.woocommerce ul.products li.product .phium-tax-inclusive-note,
ul.products li.product .phium-tax-inclusive-note {
	display: inline-block !important;
	margin: 0 0 0 8px !important;
	color: #8f8179 !important;
	font-size: 10px !important;
	font-weight: 500 !important;
	line-height: 1.35 !important;
	letter-spacing: 0.01em !important;
	white-space: nowrap !important;
	text-decoration: none !important;
}


/* ==========================================================
   PHIUM — PRODUCT IMAGE PROMOTION BADGE
   23 Aug 2026 — V7

   SALE remains at the top-left. Only an explicitly defined BEST SELLER
   badge is shown at the top-right. Otherwise this corner stays blank.
   ========================================================== */

body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-card-promo-badge {
	position: absolute !important;
	top: 14px !important;
	right: 14px !important;
	left: auto !important;
	z-index: 8 !important;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	max-width: calc(100% - 110px);
	min-height: 30px;
	margin: 0 !important;
	padding: 8px 13px !important;
	border: 1px solid rgba(255, 255, 255, 0.34) !important;
	border-radius: 50px !important;
	background: #b8894f !important;
	color: #ffffff !important;
	font-family: inherit !important;
	font-size: 10px !important;
	font-weight: 800 !important;
	line-height: 1 !important;
	letter-spacing: 0.10em !important;
	text-align: center;
	text-transform: uppercase !important;
	white-space: nowrap;
	pointer-events: none;
	box-shadow: 0 5px 16px rgba(62, 42, 24, 0.24) !important;
}

body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-card-promo-badge.is-hidden {
	display: none !important;
}

@media (max-width: 767px) {
	body.tax-product_cat:not(.term-shop)
	ul.products
	li.product
	.phium-card-promo-badge {
		top: 12px !important;
		right: 12px !important;
		min-height: 28px;
		padding: 7px 11px !important;
		font-size: 9px !important;
	}
}


/* ==========================================================
   PHIUM — CATEGORY QUICK BUY
   23 Aug 2026 — V7 image promotion badge
   Regular 50 ml / 100 ml fragrance cards only.
   Trio / internal products never receive this markup.
   ========================================================== */

body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-quick-buy {
	display: flex;
	flex-direction: column;
	gap: 12px;
	width: 100%;
	margin: 0 !important;
	padding: 0;
}

body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-quick-buy-label {
	display: block;
	margin: 0;
	color: var(--phium-listing-muted);
	font-size: 10px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: 0.11em;
	text-transform: uppercase;
}


/* Entry-price headline: keep the lower starting price visible at all times. */
body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-quick-buy-from-price
.phium-quick-buy-from-prefix {
	margin-right: 2px;
	color: var(--phium-listing-muted);
	font-size: 11px;
	font-weight: 600;
}


/* Size selection */
body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-quick-buy-size-block {
	display: grid;
	gap: 7px;
}

body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-quick-buy-sizes {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 9px;
}

body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-quick-buy-size {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 2px;
	min-width: 0;
	min-height: 68px;
	margin: 0 !important;
	padding: 9px 10px !important;
	border: 1px solid var(--phium-listing-border) !important;
	border-radius: 10px !important;
	background: #ffffff !important;
	color: var(--phium-listing-heading) !important;
	font-family: inherit !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	letter-spacing: 0.02em;
	text-transform: none !important;
	box-shadow: none !important;
	cursor: pointer;
	transition:
		border-color 0.2s ease,
		background-color 0.2s ease,
		color 0.2s ease,
		transform 0.2s ease;
}

body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-quick-buy-size:hover,
body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-quick-buy-size:focus-visible {
	border-color: var(--phium-listing-accent) !important;
	background: var(--phium-listing-soft) !important;
	outline: none;
}

body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-quick-buy-size.is-selected {
	border-color: var(--phium-listing-accent) !important;
	background: var(--phium-listing-soft) !important;
	color: var(--phium-listing-accent-dark) !important;
	box-shadow: inset 0 0 0 1px rgba(183, 123, 118, 0.18) !important;
}

body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-quick-buy-size-check {
	position: absolute;
	top: 7px;
	right: 8px;
	color: var(--phium-listing-accent-dark);
	font-size: 10px;
	font-weight: 800;
	line-height: 1;
	opacity: 0;
}

body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-quick-buy-size.is-selected
.phium-quick-buy-size-check {
	opacity: 1;
}

body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-quick-buy-size-name {
	font-size: 13px;
	font-weight: 700;
	line-height: 1.15;
}

body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-quick-buy-size-price {
	color: var(--phium-listing-text);
	font-size: 11px;
	font-weight: 600;
	line-height: 1.2;
}

body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-quick-buy-size-price
.amount {
	color: inherit !important;
	font-size: inherit !important;
	font-weight: inherit !important;
}


body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-quick-buy-best-value {
	margin-top: 1px;
	color: var(--phium-listing-accent-dark);
	font-size: 8px;
	font-weight: 800;
	line-height: 1.1;
	letter-spacing: 0.10em;
	text-transform: uppercase;
}

body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-quick-buy-size.is-unavailable {
	opacity: 0.45;
	cursor: not-allowed;
}

body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-quick-buy-size small {
	display: none;
}


/* Compact quantity row */
body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-quick-buy-qty-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	min-height: 38px;
}

body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-quick-buy-qty {
	display: grid;
	grid-template-columns: 32px 38px 32px;
	align-items: stretch;
	height: 36px;
	overflow: hidden;
	border: 1px solid var(--phium-listing-border);
	border-radius: 10px;
	background: #ffffff;
}

body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-quick-buy-qty button,
body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-quick-buy-qty input {
	width: 100% !important;
	min-width: 0 !important;
	height: 34px !important;
	min-height: 34px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	color: var(--phium-listing-heading) !important;
	font-family: inherit !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	line-height: 34px !important;
	text-align: center !important;
	box-shadow: none !important;
}

body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-quick-buy-qty button {
	cursor: pointer;
}

body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-quick-buy-qty button:hover {
	color: var(--phium-listing-accent-dark) !important;
	background: var(--phium-listing-soft) !important;
}

body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-quick-buy-qty input {
	border-right: 1px solid var(--phium-listing-border) !important;
	border-left: 1px solid var(--phium-listing-border) !important;
	-moz-appearance: textfield;
}

body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-quick-buy-qty input::-webkit-outer-spin-button,
body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-quick-buy-qty input::-webkit-inner-spin-button {
	margin: 0;
	-webkit-appearance: none;
}


/* Primary Add to Cart */
body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-quick-buy-add {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	min-height: 46px !important;
	margin: 0 !important;
	padding: 11px 18px !important;
	border: 1px solid var(--phium-listing-accent) !important;
	border-radius: 50px !important;
	background: var(--phium-listing-accent) !important;
	color: #ffffff !important;
	font-family: inherit !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	letter-spacing: 0.07em !important;
	text-transform: uppercase !important;
	box-shadow: none !important;
	cursor: pointer;
	transition:
		background-color 0.2s ease,
		border-color 0.2s ease,
		transform 0.2s ease,
		opacity 0.2s ease;
}

body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-quick-buy-add:not(:disabled):hover,
body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-quick-buy-add:not(:disabled):focus-visible {
	border-color: var(--phium-listing-accent-dark) !important;
	background: var(--phium-listing-accent-dark) !important;
	outline: none !important;
	transform: translateY(-1px);
}


/* Wishlist + Buy Now secondary row */
body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-quick-buy-secondary {
	display: grid;
	grid-template-columns: 1fr;
	gap: 9px;
	align-items: stretch;
}

body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-quick-buy-secondary.has-wishlist {
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}

body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-wishlist-slot {
	display: none;
	min-width: 0;
}

body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-quick-buy-secondary.has-wishlist
.phium-wishlist-slot {
	display: block;
}

body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-quick-buy-now,
body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-wishlist-slot
.phium-card-wishlist {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 6px !important;
	width: 100% !important;
	height: auto !important;
	min-height: 39px !important;
	margin: 0 !important;
	padding: 8px 10px !important;
	border: 1px solid var(--phium-listing-border) !important;
	border-radius: 50px !important;
	background: #ffffff !important;
	color: var(--phium-listing-text) !important;
	font-family: inherit !important;
	font-size: 10.5px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	letter-spacing: 0.025em !important;
	text-align: center !important;
	text-transform: none !important;
	text-decoration: none !important;
	box-shadow: none !important;
	cursor: pointer;
	transition:
		border-color 0.2s ease,
		background-color 0.2s ease,
		color 0.2s ease;
}

body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-quick-buy-now:not(:disabled):hover,
body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-wishlist-slot
.phium-card-wishlist:hover {
	border-color: var(--phium-listing-accent) !important;
	background: var(--phium-listing-soft) !important;
	color: var(--phium-listing-accent-dark) !important;
}


/* Disabled / processing states */
body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-quick-buy-add:disabled,
body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-quick-buy-now:disabled {
	opacity: 0.46 !important;
	cursor: not-allowed !important;
	transform: none !important;
}

body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-quick-buy.is-processing {
	cursor: wait;
}

body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-quick-buy.is-processing
.phium-quick-buy-size:not(.is-unavailable),
body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-quick-buy.is-processing
.phium-quick-buy-qty {
	opacity: 0.58;
}


/* Small inline success/error message; no layout jump when empty. */
body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-quick-buy-status {
	min-height: 0;
	margin: -3px 0 0;
	color: var(--phium-listing-muted);
	font-size: 10.5px;
	font-weight: 500;
	line-height: 1.35;
	text-align: center;
}

body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-quick-buy-status:empty {
	display: none;
}

body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-quick-buy-status.is-error {
	color: #a54e44;
}

body.tax-product_cat:not(.term-shop)
ul.products
li.product
.phium-quick-buy-status.is-success {
	color: #5f7f4d;
}


/* The Quick Buy wrapper replaces Select Options inside Blocksy's action area. */
body.tax-product_cat:not(.term-shop)
ul.products
li.product
.ct-woo-card-actions:has(.phium-quick-buy) {
	min-height: 0 !important;
}

body.tax-product_cat:not(.term-shop)
ul.products
li.product
.ct-woo-card-actions
.phium-quick-buy
button::before,
body.tax-product_cat:not(.term-shop)
ul.products
li.product
.ct-woo-card-actions
.phium-quick-buy
button::after {
	display: none;
}


/* Slightly tighten the category badge before the richer purchase block. */
body.tax-product_cat:not(.term-shop)
ul.products
li.product:has(.phium-quick-buy)
.entry-meta {
	margin-bottom: 14px !important;
}


@media (max-width: 767px) {
	body.tax-product_cat:not(.term-shop)
	ul.products
	li.product
	.phium-quick-buy {
		gap: 11px;
	}

	body.tax-product_cat:not(.term-shop)
	ul.products
	li.product
	.phium-quick-buy-size {
		min-height: 72px;
		font-size: 12.5px !important;
	}

	body.tax-product_cat:not(.term-shop)
	ul.products
	li.product
	.phium-quick-buy-add {
		min-height: 48px !important;
		font-size: 12.5px !important;
	}

	body.tax-product_cat:not(.term-shop)
	ul.products
	li.product
	.phium-quick-buy-now,
	body.tax-product_cat:not(.term-shop)
	ul.products
	li.product
	.phium-wishlist-slot
	.phium-card-wishlist {
		min-height: 42px !important;
		font-size: 11px !important;
	}
}


@media (prefers-reduced-motion: reduce) {
	body.tax-product_cat:not(.term-shop)
	ul.products
	li.product
	.phium-quick-buy button {
		transition: none !important;
	}
}
