/*==========================================================
PHIUM ESSENCE
SINGLE PRODUCT PAGE
BLOCKSY + WOOCOMMERCE
==========================================================*/


/*==========================================================
1. PRODUCT PAGE GLOBAL
==========================================================*/

body.single-product {
    --phium-primary: #c98f67;
    --phium-primary-dark: #aa724e;
    --phium-heading: #2d1f1a;
    --phium-text: #5f4b42;
    --phium-border: #eadfd6;
    --phium-background: #f8f2ec;
    --phium-white: #ffffff;
}

body.single-product .site-main,
body.single-product #main {
    padding-top: 0 !important;
    margin-top: 0 !important;
}

body.single-product .product {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}


/*==========================================================
2. REMOVE BLOCKSY PRODUCT TITLE STRIP
==========================================================*/

body.single-product .hero-section,
body.single-product #hero-section,
body.single-product .page-title-wrapper {
    display: none !important;
}


/*
This targets the Blocksy bottom header row containing
the large "Phium Essence" text.

Remove this rule if you want that row on product pages.
*/

body.single-product .ct-header [data-row="bottom"],
body.single-product header [data-row="bottom"] {
    display: none !important;
}


/*==========================================================
3. MAIN PRODUCT GRID
==========================================================*/

body.single-product .product-entry-wrapper {
    display: grid !important;

    grid-template-columns:
        minmax(0, 1.05fr)
        minmax(380px, 0.95fr) !important;

    gap: 42px !important;
    align-items: start !important;

    width: 100% !important;
    max-width: 1240px !important;

    margin: 0 auto !important;
    padding: 32px 24px 0 !important;
}

body.single-product .product-entry-wrapper > * {
    min-width: 0 !important;
    width: 100% !important;
}


/*==========================================================
4. BLOCKSY PRODUCT GALLERY
==========================================================*/

body.single-product .woocommerce-product-gallery {
    position: relative !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
}

body.single-product .ct-product-gallery-container {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}


/* Gallery slider containers */

body.single-product .flexy-container,
body.single-product .flexy {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}


/* Main gallery area */

body.single-product .flexy-view,
body.single-product .flexy-items,
body.single-product .flexy-item {
    width: 100% !important;
    height: 420px !important;
    max-height: 420px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    background: var(--phium-background) !important;
}


/* Gallery media wrapper */

body.single-product
.flexy-item
.ct-media-container {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 100% !important;
    height: 420px !important;
    max-height: 420px !important;

    margin: 0 !important;
    padding: 0 !important;

    background: var(--phium-background) !important;
    overflow: hidden !important;
}


/* Picture wrapper */

body.single-product
.flexy-item
.ct-media-container
picture {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 100% !important;
    height: 100% !important;

    margin: 0 !important;
    padding: 0 !important;
}


/* Main gallery image */

body.single-product
.flexy-item
.ct-media-container
picture
img:not(.zoomImg) {
    display: block !important;

    width: 100% !important;
    height: 100% !important;

    max-width: 100% !important;
    max-height: 420px !important;

    margin: 0 !important;
    padding: 0 !important;

    aspect-ratio: auto !important;

    object-fit: contain !important;
    object-position: center !important;

    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}


/* Zoom image */

body.single-product .zoomImg {
    max-width: none !important;
    max-height: none !important;
}


/* Gallery navigation arrows */

body.single-product .flexy-arrow-prev,
body.single-product .flexy-arrow-next {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 38px !important;
    height: 38px !important;

    border-radius: 50% !important;

    background: rgba(255, 255, 255, 0.92) !important;
    color: var(--phium-heading) !important;

    box-shadow: 0 3px 12px rgba(0, 0, 0, 0.08) !important;
}


/*==========================================================
5. BLOCKSY GALLERY THUMBNAILS
==========================================================*/

body.single-product
.flexy-pills[data-type="thumbs"] {
    width: 100% !important;

    margin: 12px 0 0 !important;
    padding: 0 !important;

    overflow-x: auto !important;
    overflow-y: hidden !important;

    scrollbar-width: thin;
}

body.single-product
.flexy-pills[data-type="thumbs"] ol {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    gap: 12px !important;

    grid-template-columns: none !important;

    width: max-content !important;
    min-width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    list-style: none !important;
}

body.single-product
.flexy-pills[data-type="thumbs"] li {
    flex: 0 0 72px !important;

    width: 72px !important;
    min-width: 72px !important;
    max-width: 72px !important;

    margin: 0 !important;
    padding: 0 !important;

    list-style: none !important;
}

body.single-product
.flexy-pills[data-type="thumbs"]
.ct-media-container {
    display: block !important;

    width: 72px !important;
    height: 72px !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 1px solid transparent !important;
    border-radius: 4px !important;

    background: var(--phium-background) !important;

    overflow: hidden !important;
    cursor: pointer;

    transition:
        border-color 0.2s ease,
        opacity 0.2s ease;
}

body.single-product
.flexy-pills[data-type="thumbs"]
picture {
    display: block !important;

    width: 100% !important;
    height: 100% !important;
}

body.single-product
.flexy-pills[data-type="thumbs"]
img {
    display: block !important;

    width: 72px !important;
    height: 72px !important;
    max-width: 72px !important;

    margin: 0 !important;
    padding: 0 !important;

    aspect-ratio: 1 / 1 !important;

    object-fit: cover !important;
    object-position: center !important;

    opacity: 0.72;

    transition: opacity 0.2s ease;
}

body.single-product
.flexy-pills[data-type="thumbs"]
li:hover
.ct-media-container,
body.single-product
.flexy-pills[data-type="thumbs"]
li.active
.ct-media-container {
    border-color: var(--phium-primary) !important;
}

body.single-product
.flexy-pills[data-type="thumbs"]
li:hover
img,
body.single-product
.flexy-pills[data-type="thumbs"]
li.active
img {
    opacity: 1 !important;
}


/*==========================================================
6. SALE BADGE
==========================================================*/

body.single-product .woocommerce-product-gallery .onsale {
    top: 14px !important;
    left: 14px !important;

    min-width: auto !important;
    min-height: auto !important;

    padding: 7px 12px !important;

    border-radius: 50px !important;

    background: #17100d !important;
    color: #ffffff !important;

    font-size: 10px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    letter-spacing: 0.07em !important;
}


/* Product-level BEST SELLER badge — top-right of gallery */
body.single-product
.woocommerce-product-gallery
.phium-single-best-seller-badge {
    position: absolute !important;
    top: 14px !important;
    right: 14px !important;
    left: auto !important;
    z-index: 12 !important;

    display: inline-flex !important;
    align-items: center;
    justify-content: center;

    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-transform: uppercase !important;
    white-space: nowrap;

    pointer-events: none;
    box-shadow: 0 5px 16px rgba(62, 42, 24, 0.24) !important;
}

@media (max-width: 767px) {
    body.single-product
    .woocommerce-product-gallery
    .phium-single-best-seller-badge {
        top: 12px !important;
        right: 12px !important;
        min-height: 28px;
        padding: 7px 11px !important;
        font-size: 9px !important;
    }
}


/*==========================================================
7. PRODUCT SUMMARY
==========================================================*/

body.single-product .summary.entry-summary,
body.single-product .summary.entry-summary-items {
    position: static !important;

    width: 100% !important;
    max-width: none !important;

    margin: 0 !important;
    padding: 0 !important;

    float: none !important;
}


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

body.single-product .summary .product_title {
    margin: 0 0 10px !important;

    font-family: "Cormorant Garamond", serif;
    font-size: clamp(38px, 4vw, 48px);
    font-weight: 600;
    line-height: 1.05;

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


/*----------------------------------------------------------
Hide variable product range price
----------------------------------------------------------*/

body.single-product
.product-type-variable
.summary > .price {
    display: none !important;
}


/*==========================================================
8. PINCODE CHECKER
==========================================================*/

body.single-product
#shiprocket_pincode_check {
    width: 100% !important;
    min-height: 43px !important;

    margin: 0 0 7px !important;
    padding: 10px 14px !important;

    border: 1px solid var(--phium-border) !important;
    border-radius: 8px !important;

    background: var(--phium-white) !important;
    color: var(--phium-heading) !important;

    font-family: inherit;
    font-size: 12px !important;

    box-shadow: none !important;
}

body.single-product
#shiprocket_pincode_check:focus {
    border-color: var(--phium-primary) !important;
    outline: none !important;

    box-shadow:
        0 0 0 3px rgba(201, 143, 103, 0.12) !important;
}

body.single-product #check_pincode {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-height: 40px;

    margin: 0 !important;
    padding: 9px 22px !important;

    border: 0 !important;
    border-radius: 999px !important;

    background: var(--phium-primary) !important;
    color: #ffffff !important;

    font-family: inherit;
    font-size: 12px !important;
    font-weight: 600 !important;

    box-shadow: none !important;
}

body.single-product #check_pincode:hover {
    background: var(--phium-primary-dark) !important;
}

body.single-product #pincode_response {
    margin-top: 7px;

    font-size: 12px;
    color: var(--phium-text);
}


/*==========================================================
9. SHORT DESCRIPTION
==========================================================*/

body.single-product
.woocommerce-product-details__short-description {
    margin: 12px 0 16px !important;
    padding: 0 0 15px !important;

    border-bottom: 1px solid var(--phium-border);

    font-size: 12.5px;
    line-height: 1.58;

    color: var(--phium-text);
}

body.single-product
.woocommerce-product-details__short-description p {
    margin: 0 !important;
}


/*==========================================================
10. BLOCKSY PRODUCT DIVIDERS
==========================================================*/

body.single-product .ct-product-divider {
    display: block;

    width: 100%;
    height: 1px;

    margin: 14px 0 !important;

    background: var(--phium-border);
}


/*==========================================================
11. VARIATION FORM
==========================================================*/

body.single-product .ct-product-add-to-cart {
    width: 100% !important;
}

body.single-product form.variations_form {
    width: 100% !important;

    margin: 0 !important;
}

body.single-product table.variations {
    width: 100% !important;

    margin: 0 0 8px !important;

    border: 0 !important;
}

body.single-product table.variations,
body.single-product table.variations tbody,
body.single-product table.variations tr,
body.single-product table.variations th,
body.single-product table.variations td {
    display: block !important;
    width: 100% !important;
}

body.single-product table.variations tr {
    margin: 0 0 9px !important;
}

body.single-product table.variations th,
body.single-product table.variations td {
    padding: 0 !important;
    border: 0 !important;
}

body.single-product table.variations th {
    margin: 0 0 6px !important;
}

body.single-product table.variations label {
    margin: 0 !important;

    font-size: 11px !important;
    font-weight: 600 !important;

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

body.single-product table.variations select {
    width: 100% !important;
    min-height: 43px !important;

    margin: 0 !important;
    padding: 8px 38px 8px 12px !important;

    border: 1px solid var(--phium-border) !important;
    border-radius: 8px !important;

    background-color: var(--phium-white) !important;
    color: var(--phium-heading) !important;

    font-family: inherit;
    font-size: 12px !important;

    box-shadow: none !important;
}

body.single-product .reset_variations {
    display: inline-block !important;

    margin: 5px 0 0 !important;

    font-size: 10px !important;

    color: #8b776b !important;
}


/*==========================================================
12. SELECTED VARIATION
==========================================================*/

body.single-product .single_variation_wrap {
    width: 100% !important;

    margin: 4px 0 0 !important;
}

body.single-product
.woocommerce-variation {
    margin: 0 !important;
}

body.single-product
.woocommerce-variation-description {
    margin: 0 !important;
}

body.single-product
.woocommerce-variation-price {
    margin: 0 0 7px !important;
}

body.single-product
.woocommerce-variation-price .price {
    font-size: 20px !important;
    font-weight: 700 !important;
    line-height: 1.3;

    color: var(--phium-heading) !important;
}

body.single-product
.woocommerce-variation-price del {
    margin-left: 5px;

    font-size: 12px !important;
    font-weight: 500 !important;

    color: #91827a !important;
}

body.single-product
.woocommerce-variation-price ins {
    text-decoration: none !important;
}

body.single-product
.woocommerce-variation-availability {
    margin: 0 0 9px !important;
}

body.single-product .stock {
    margin: 0 !important;

    font-size: 11px !important;
    font-weight: 500 !important;

    color: #477856 !important;
}


/*==========================================================
13. QUANTITY AND ADD TO CART
==========================================================*/

body.single-product
.woocommerce-variation-add-to-cart {
    width: 100% !important;

    margin: 0 !important;
}

body.single-product .ct-cart-actions {
    display: grid !important;

    grid-template-columns:
        84px
        minmax(0, 1fr) !important;

    gap: 10px !important;
    align-items: stretch !important;

    width: 100% !important;

    margin: 0 !important;
}


/*----------------------------------------------------------
Quantity
----------------------------------------------------------*/

body.single-product .quantity {
    display: grid !important;
    grid-template-columns: repeat(3, 28px) !important;

    width: 84px !important;
    min-width: 84px !important;
    height: 44px !important;

    margin: 0 !important;

    border: 1px solid var(--phium-border) !important;
    border-radius: 3px !important;

    background: var(--phium-white) !important;

    overflow: hidden !important;
}

body.single-product .quantity input.qty {
    width: 28px !important;
    min-width: 28px !important;
    height: 42px !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;
    background: transparent !important;

    font-family: inherit;
    font-size: 12px !important;
    text-align: center !important;

    box-shadow: none !important;
}

body.single-product
.quantity .ct-increase,
body.single-product
.quantity .ct-decrease {
    width: 28px !important;
    height: 42px !important;

    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;
    color: var(--phium-heading) !important;

    box-shadow: none !important;
}


/*----------------------------------------------------------
Add to cart
----------------------------------------------------------*/

body.single-product
.single_add_to_cart_button {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    min-height: 44px !important;

    margin: 0 !important;
    padding: 9px 20px !important;

    float: none !important;

    border: 0 !important;
    border-radius: 999px !important;

    background: var(--phium-primary) !important;
    color: #ffffff !important;

    font-family: inherit;
    font-size: 12px !important;
    font-weight: 600 !important;

    box-shadow: none !important;
    transform: none !important;
}

body.single-product
.single_add_to_cart_button:hover {
    background: var(--phium-primary-dark) !important;

    box-shadow: none !important;
    transform: none !important;
}


/*==========================================================
14. BUY NOW
==========================================================*/

body.single-product .phium-buy-now {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 100% !important;
    min-height: 44px !important;

    margin: 10px 0 0 !important;
    padding: 9px 20px !important;

    border: 1px solid var(--phium-primary) !important;
    border-radius: 999px !important;

    background: var(--phium-white) !important;
    color: var(--phium-primary-dark) !important;

    font-family: inherit;
    font-size: 12px !important;
    font-weight: 600 !important;

    opacity: 1 !important;
    visibility: visible !important;

    cursor: pointer;

    box-shadow: none !important;
    transform: none !important;
}

body.single-product .phium-buy-now:hover,
body.single-product .phium-buy-now:focus {
    background: var(--phium-primary) !important;
    color: #ffffff !important;

    box-shadow: none !important;
    transform: none !important;
}


/*==========================================================
15. TRUST BADGES
==========================================================*/

body.single-product .phium-trust {
    display: grid !important;

    grid-template-columns:
        repeat(4, minmax(0, 1fr)) !important;

    gap: 6px !important;

    width: 100% !important;

    margin: 8px 0 0 !important;
}

body.single-product .phium-trust-item {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    min-width: 0 !important;
    min-height: 43px !important;

    margin: 0 !important;
    padding: 6px 3px !important;

    border: 1px solid var(--phium-border) !important;
    border-radius: 6px !important;

    background: var(--phium-white) !important;

    font-size: 9px !important;
    line-height: 1.15 !important;
    text-align: center !important;

    box-shadow: none !important;
    transform: none !important;
}


/*==========================================================
16. PRODUCT META
==========================================================*/

body.single-product .product_meta {
    display: flex !important;
    flex-wrap: wrap !important;

    gap: 5px 18px !important;

    width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    font-size: 9.5px !important;
    line-height: 1.4 !important;
    text-transform: uppercase;
    letter-spacing: 0.04em;

    color: #8b776b;
}

body.single-product .product_meta > span {
    margin: 0 !important;
}

body.single-product .product_meta a {
    color: var(--phium-heading) !important;
    text-decoration: none !important;
}


/*==========================================================
17. PRODUCT TABS
==========================================================*/

body.single-product .woocommerce-tabs {
    clear: both !important;

    width: 100% !important;
    max-width: 1240px !important;

    min-height: 0 !important;

    margin: 38px auto 28px !important;
    padding: 0 24px !important;
}

body.single-product
.woocommerce-tabs ul.tabs {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    gap: 8px !important;

    margin: 0 0 18px !important;
    padding: 0 !important;
}

body.single-product
.woocommerce-tabs ul.tabs li {
    margin: 0 !important;
}

body.single-product
.woocommerce-tabs ul.tabs li a {
    padding: 10px 14px !important;

    font-size: 10px !important;
    font-weight: 600 !important;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

body.single-product
.woocommerce-tabs .panel,
body.single-product
.woocommerce-Tabs-panel {
    min-height: 0 !important;
    height: auto !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;
    background: transparent !important;

    box-shadow: none !important;
}


/*==========================================================
18. ADDITIONAL INFORMATION TABLE
==========================================================*/

body.single-product
.woocommerce-product-attributes {
    width: auto !important;
    max-width: 500px !important;

    margin: 0 auto !important;

    font-size: 11px !important;
}

body.single-product
.woocommerce-product-attributes th,
body.single-product
.woocommerce-product-attributes td {
    padding: 8px 11px !important;

    border: 1px solid var(--phium-border) !important;
}


/*==========================================================
19. RELATED PRODUCTS
==========================================================*/

body.single-product .related.products {
    clear: both !important;

    width: 100% !important;
    max-width: 1240px !important;

    margin: 32px auto 0 !important;
    padding: 0 24px 35px !important;

    background: transparent !important;
}

body.single-product
.related.products > h2 {
    margin: 0 0 20px !important;

    font-family: "Cormorant Garamond", serif;
    font-size: clamp(30px, 4vw, 39px);
    font-weight: 600;
    line-height: 1.1;

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

body.single-product
.related.products ul.products {
    display: grid !important;

    grid-template-columns:
        repeat(auto-fit, minmax(210px, 270px)) !important;

    justify-content: start !important;

    gap: 24px !important;

    margin: 0 !important;
    padding: 0 !important;
}

body.single-product
.related.products li.product {
    width: 100% !important;
    max-width: 270px !important;

    margin: 0 !important;
    padding: 0 !important;
}

body.single-product
.related.products li.product img {
    display: block;

    width: 100% !important;

    aspect-ratio: 1 / 1;

    object-fit: cover;
}


/*==========================================================
20. TABLET
==========================================================*/

@media (max-width: 1024px) {

    body.single-product .product-entry-wrapper {
        grid-template-columns:
            minmax(0, 1fr)
            minmax(330px, 0.92fr) !important;

        gap: 27px !important;

        padding-top: 26px !important;
    }

    body.single-product .flexy-view,
    body.single-product .flexy-items,
    body.single-product .flexy-item,
    body.single-product
    .flexy-item .ct-media-container {
        height: 430px !important;
        max-height: 430px !important;
    }

    body.single-product
    .flexy-item
    .ct-media-container
    picture
    img:not(.zoomImg) {
        max-height: 430px !important;
    }

    body.single-product
    .flexy-pills[data-type="thumbs"]
    .ct-media-container,
    body.single-product
    .flexy-pills[data-type="thumbs"] img {
        height: 62px !important;
    }

    body.single-product .phium-trust {
        grid-template-columns:
            repeat(2, minmax(0, 1fr)) !important;
    }

    body.single-product
    .related.products ul.products {
        grid-template-columns:
            repeat(2, minmax(0, 1fr)) !important;
    }

    body.single-product
    .related.products li.product {
        max-width: none !important;
    }
}


/*==========================================================
21. MOBILE
==========================================================*/

@media (max-width: 767px) {

    body.single-product .product-entry-wrapper {
        grid-template-columns: 1fr !important;

        gap: 22px !important;

        padding: 20px 16px 0 !important;
    }

    body.single-product .flexy-view,
    body.single-product .flexy-items,
    body.single-product .flexy-item,
    body.single-product
    .flexy-item .ct-media-container {
        height: 370px !important;
        max-height: 370px !important;
    }

    body.single-product
    .flexy-item
    .ct-media-container
    picture
    img:not(.zoomImg) {
        max-height: 370px !important;
    }

    body.single-product
    .flexy-pills[data-type="thumbs"]
    .ct-media-container,
    body.single-product
    .flexy-pills[data-type="thumbs"] img {
        height: 58px !important;
    }

    body.single-product
    .summary .product_title {
        font-size: 36px !important;
    }

    body.single-product .phium-trust {
        grid-template-columns:
            repeat(2, minmax(0, 1fr)) !important;
    }

    body.single-product .woocommerce-tabs,
    body.single-product .related.products {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }

    body.single-product
    .related.products ul.products {
        grid-template-columns:
            repeat(2, minmax(0, 1fr)) !important;

        gap: 16px !important;
    }
}


/*==========================================================
22. SMALL MOBILE
==========================================================*/

@media (max-width: 520px) {

    body.single-product .flexy-view,
    body.single-product .flexy-items,
    body.single-product .flexy-item,
    body.single-product
    .flexy-item .ct-media-container {
        height: 330px !important;
        max-height: 330px !important;
    }

    body.single-product
    .flexy-item
    .ct-media-container
    picture
    img:not(.zoomImg) {
        max-height: 330px !important;
    }

    body.single-product
    .flexy-pills[data-type="thumbs"]
    .ct-media-container,
    body.single-product
    .flexy-pills[data-type="thumbs"] img {
        height: 52px !important;
    }

    body.single-product
    .related.products ul.products {
        grid-template-columns: 1fr !important;
    }
}
/* Hide Shiprocket pincode checker on product pages */

body.single-product #shiprocket_pincode_check,
body.single-product #check_pincode,
body.single-product #pincode_response {
    display: none !important;
}

/* Hide the wrapper containing only the pincode field/button */
body.single-product
.summary.entry-summary > div:has(#shiprocket_pincode_check) {
    display: none !important;
}
body.single-product .phium-buy-now.is-loading {
    opacity: 0.65 !important;
    cursor: wait !important;
    pointer-events: none;
}
/* ==========================================================
   PRODUCT SUMMARY REFINEMENTS
   ========================================================== */


/* ----------------------------------------------------------
   SKU and category below title
   ---------------------------------------------------------- */

.single-product
.summary
.product_meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 7px 18px;
    margin: 8px 0 18px !important;
    padding: 0 0 15px !important;
    border-bottom: 1px solid rgba(45, 32, 29, 0.1);
    color: #8b817a;
    font-size: 10px;
    line-height: 1.5;
    text-transform: uppercase;
}

.single-product
.summary
.product_meta > span {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    margin: 0 !important;
}

.single-product
.summary
.product_meta a,
.single-product
.summary
.product_meta .sku {
    color: #665d57;
    font-weight: 500;
}


/* ----------------------------------------------------------
   Variation form spacing
   ---------------------------------------------------------- */

.single-product
.summary
.variations_form {
    margin-top: 12px;
}

.single-product
.summary
table.variations {
    margin-bottom: 8px !important;
}

.single-product
.summary
.reset_variations {
    margin-top: 5px;
    font-size: 10px;
}


/* ----------------------------------------------------------
   Quantity and Add to Cart row
   ---------------------------------------------------------- */

.single-product
.summary
.woocommerce-variation-add-to-cart,
.single-product
.summary
form.cart:not(.variations_form) {
    display: flex !important;
    align-items: center;
    gap: 10px;
    margin-top: 10px !important;
}

.single-product
.summary
.quantity {
    position: relative;
    display: inline-flex !important;
    flex: 0 0 94px;
    align-items: center;
    justify-content: center;
    width: 94px !important;
    min-width: 94px !important;
    height: 46px;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden;
    border: 1px solid rgba(45, 32, 29, 0.15);
    border-radius: 3px;
    background: #fff;
}

.single-product
.summary
.quantity .qty {
    width: 42px !important;
    min-width: 42px !important;
    height: 44px !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #2d201d;
    font-size: 13px;
    font-weight: 500;
    line-height: 44px;
    text-align: center;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    appearance: textfield;
    -moz-appearance: textfield;
}

.single-product
.summary
.quantity .qty::-webkit-inner-spin-button,
.single-product
.summary
.quantity .qty::-webkit-outer-spin-button {
    margin: 0;
    -webkit-appearance: none;
}

.single-product
.summary
.quantity .minus,
.single-product
.summary
.quantity .plus {
    display: inline-flex !important;
    flex: 0 0 25px;
    align-items: center;
    justify-content: center;
    width: 25px !important;
    min-width: 25px !important;
    height: 44px !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #5f554f;
    font-size: 15px;
    font-weight: 400;
    line-height: 1;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    cursor: pointer;
}

.single-product
.summary
.quantity .minus:hover,
.single-product
.summary
.quantity .plus:hover {
    color: #cf9367;
    background: rgba(207, 147, 103, 0.08) !important;
}


/* ----------------------------------------------------------
   Add to Cart button width
   ---------------------------------------------------------- */

.single-product
.summary
.single_add_to_cart_button {
    flex: 0 1 310px !important;
    width: auto !important;
    min-width: 210px;
    max-width: 310px !important;
    height: 46px;
    margin: 0 !important;
    padding: 0 28px !important;
    border-radius: 999px !important;
}


/* ----------------------------------------------------------
   Buy Now button width
   ---------------------------------------------------------- */

.single-product
.summary
.phium-buy-now-button,
.single-product
.summary
.buy-now-button,
.single-product
.summary
.button.buy_now_button,
.single-product
.summary
button[name="buy-now"],
.single-product
.summary
button[name="buy_now"],
.single-product
.summary
button[name="phium_buy_now"] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100% !important;
    max-width: 414px !important;
    height: 44px;
    margin: 14px 0 0 !important;
    padding: 0 25px !important;
    border-radius: 999px !important;
}


/* Keep the purchase controls left aligned */

.single-product
.summary
.single_variation_wrap {
    width: 100%;
}

.single-product
.summary
.woocommerce-variation-add-to-cart {
    justify-content: flex-start;
}


/* ==========================================================
   SMALLER GALLERY THUMBNAILS AND LESS EMPTY SPACE
   ========================================================== */

.single-product
.woocommerce-product-gallery {
    margin-bottom: 0 !important;
}

.single-product
.woocommerce-product-gallery
.flex-control-thumbs {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center;
    gap: 7px !important;
    width: 100%;
    margin: 7px 0 0 !important;
    padding: 0 !important;
    overflow-x: auto;
    overflow-y: hidden;
    list-style: none;
}

.single-product
.woocommerce-product-gallery
.flex-control-thumbs li {
    flex: 0 0 58px !important;
    width: 58px !important;
    max-width: 58px !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
}

.single-product
.woocommerce-product-gallery
.flex-control-thumbs img {
    display: block !important;
    width: 58px !important;
    height: 58px !important;
    max-width: 58px !important;
    margin: 0 !important;
    padding: 0 !important;
    object-fit: cover !important;
    border: 1px solid rgba(45, 32, 29, 0.12);
    border-radius: 2px;
    opacity: 0.7;
}

.single-product
.woocommerce-product-gallery
.flex-control-thumbs img.flex-active,
.single-product
.woocommerce-product-gallery
.flex-control-thumbs img:hover {
    opacity: 1;
    border-color: #cf9367;
}


/* Blocksy gallery fallback */

.single-product
.ct-product-gallery-container {
    margin-bottom: 0 !important;
}

.single-product
.ct-product-gallery-container
.flex-control-thumbs {
    min-height: 58px !important;
}

.single-product
.ct-product-gallery-container
ol {
    margin-top: 7px !important;
    margin-bottom: 0 !important;
}


/* ==========================================================
   MOBILE
   ========================================================== */

@media (max-width: 767px) {

    .single-product
    .summary
    .product_meta {
        gap: 5px 12px;
    }

    .single-product
    .summary
    .woocommerce-variation-add-to-cart,
    .single-product
    .summary
    form.cart:not(.variations_form) {
        flex-wrap: wrap;
    }

    .single-product
    .summary
    .single_add_to_cart_button {
        flex: 1 1 calc(100% - 104px) !important;
        min-width: 170px;
        max-width: none !important;
    }

    .single-product
    .summary
    .phium-buy-now-button,
    .single-product
    .summary
    .buy-now-button,
    .single-product
    .summary
    .button.buy_now_button,
    .single-product
    .summary
    button[name="buy-now"],
    .single-product
    .summary
    button[name="buy_now"],
    .single-product
    .summary
    button[name="phium_buy_now"] {
        max-width: 100% !important;
    }

    .single-product
    .woocommerce-product-gallery
    .flex-control-thumbs li {
        flex-basis: 52px !important;
        width: 52px !important;
        max-width: 52px !important;
    }

    .single-product
    .woocommerce-product-gallery
    .flex-control-thumbs img {
        width: 52px !important;
        height: 52px !important;
        max-width: 52px !important;
    }
}
/* ==========================================================
   REMOVE DUPLICATE SUMMARY SEPARATORS
   ========================================================== */

.single-product
.summary
.woocommerce-product-details__short-description {
    margin-bottom: 16px !important;
    padding-bottom: 0 !important;
    border-top: 0 !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
}

.single-product
.summary
.woocommerce-product-details__short-description::before,
.single-product
.summary
.woocommerce-product-details__short-description::after {
    display: none !important;
    content: none !important;
}

.single-product
.summary
form.variations_form {
    margin-top: 0 !important;
    padding-top: 0 !important;
    border-top: 0 !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
}

.single-product
.summary
table.variations {
    margin-top: 0 !important;
    padding-top: 0 !important;
    border-top: 0 !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
}

.single-product
.summary
table.variations tbody,
.single-product
.summary
table.variations tr,
.single-product
.summary
table.variations th,
.single-product
.summary
table.variations td {
    border-top: 0 !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
}

.single-product
.summary
.single_variation_wrap,
.single-product
.summary
.woocommerce-variation {
    border-top: 0 !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
}


/* Keep only the separator below SKU and category */

.single-product
.summary
.product_meta {
    margin: 8px 0 18px !important;
    padding: 0 0 14px !important;
    border-top: 0 !important;
    border-bottom: 1px solid rgba(45, 32, 29, 0.12) !important;
}
/*==========================================================
FINAL RESPONSIVE GALLERY RULES
==========================================================*/

@media (max-width: 900px) {

    body.single-product .flexy-view,
    body.single-product .flexy-items,
    body.single-product .flexy-item,
    body.single-product
    .flexy-item
    .ct-media-container {
        height: 400px !important;
        max-height: 400px !important;
    }

    body.single-product
    .flexy-item
    .ct-media-container
    picture
    img:not(.zoomImg) {
        max-height: 400px !important;
    }
}


@media (max-width: 600px) {

    body.single-product .flexy-view,
    body.single-product .flexy-items,
    body.single-product .flexy-item,
    body.single-product
    .flexy-item
    .ct-media-container {
        height: 340px !important;
        max-height: 340px !important;
    }

    body.single-product
    .flexy-item
    .ct-media-container
    picture
    img:not(.zoomImg) {
        max-height: 340px !important;
    }

    body.single-product
    .flexy-pills[data-type="thumbs"] ol {
        gap: 8px !important;
    }

    body.single-product
    .flexy-pills[data-type="thumbs"] li {
        flex: 0 0 60px !important;

        width: 60px !important;
        min-width: 60px !important;
        max-width: 60px !important;
    }

    body.single-product
    .flexy-pills[data-type="thumbs"]
    .ct-media-container,
    body.single-product
    .flexy-pills[data-type="thumbs"]
    img {
        width: 60px !important;
        height: 60px !important;
        max-width: 60px !important;
    }
}
/* ==========================================================
   iPAD / TABLET PORTRAIT (768–1024)
   ========================================================== */

@media (min-width:768px) and (max-width:1024px){

    /* Product Layout */

    body.single-product .product-entry-wrapper{

        grid-template-columns: 52% 48% !important;

        gap:40px !important;

        align-items:start !important;

        max-width:980px !important;

        padding:32px 28px 0 !important;
    }


    /* Gallery */

    body.single-product .flexy-view,
    body.single-product .flexy-items,
    body.single-product .flexy-item,
    body.single-product .flexy-item .ct-media-container{

        height:480px !important;
        max-height:480px !important;
    }


    body.single-product
    .flexy-item
    .ct-media-container
    picture
    img:not(.zoomImg){

        max-height:480px !important;
    }


    /* Larger thumbnails */

    body.single-product
    .flexy-pills[data-type="thumbs"] li{

        flex:0 0 74px !important;

        width:74px !important;

        min-width:74px !important;

        max-width:74px !important;
    }


    body.single-product
    .flexy-pills[data-type="thumbs"]
    .ct-media-container,

    body.single-product
    .flexy-pills[data-type="thumbs"] img{

        width:74px !important;

        height:74px !important;

        max-width:74px !important;
    }


    /* Product title */

    body.single-product .summary .product_title{

        font-size:48px !important;
    }


    /* Description */

    body.single-product
    .woocommerce-product-details__short-description{

        font-size:14px !important;

        line-height:1.8 !important;
    }


    /* Price */

    body.single-product
    .woocommerce-variation-price .price{

        font-size:30px !important;
    }


    /* Quantity + Add to Cart */

    body.single-product .ct-cart-actions{

        grid-template-columns:96px 1fr !important;

        gap:14px !important;
    }


    body.single-product .quantity{

        width:96px !important;

        height:48px !important;
    }


    body.single-product .single_add_to_cart_button{

        min-height:48px !important;

        font-size:14px !important;
    }


    body.single-product .phium-buy-now{

        min-height:48px !important;

        font-size:14px !important;
    }


    /* Product details sections */

    .phium-product-section{

        padding:70px 40px !important;
    }


    .phium-product-section h2{

        font-size:42px !important;
    }


    /* Why You'll Love It */

    .phium-features-grid{

        grid-template-columns:repeat(2,1fr) !important;
        gap:20px !important;
    }

}
/* PHIUM product CTA processing state */

.single-product .phium-cta-processing {
	opacity: 0.5 !important;
	pointer-events: none !important;
	cursor: wait !important;
}

.single-product
.single_add_to_cart_button.phium-cta-processing,
.single-product
.phium-buy-now.phium-cta-processing {
	background-color: #d8c8bd !important;
	border-color: #d8c8bd !important;
	color: #ffffff !important;
}


/* ==========================================================
   PHIUM PRODUCT — HIDE STOCK TEXT ON SINGLE PRODUCT PAGES
   14 Aug 2026

   Inventory continues to be managed by WooCommerce.
   This only hides the customer-facing stock message such as
   "96 In Stock" / "In stock" / "Out of stock" from the
   product-detail summary. Add-to-cart availability and stock
   validation remain controlled by WooCommerce.
   ========================================================== */

body.single-product
.summary
.stock,
body.single-product
.entry-summary
.stock,
body.single-product
.ct-product-add-to-cart
.stock {
	display: none !important;
}
