.elementor-486 .elementor-element.elementor-element-ec938d3{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;--flex-wrap:wrap;--margin-top:-20px;--margin-bottom:20px;--margin-left:0px;--margin-right:0px;}.elementor-486 .elementor-element.elementor-element-cd3749a{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:30px 30px;--row-gap:30px;--column-gap:30px;--margin-top:0px;--margin-bottom:80px;--margin-left:0px;--margin-right:0px;}.elementor-486 .elementor-element.elementor-element-b374152{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--border-radius:10px 10px 10px 10px;--padding-top:40px;--padding-bottom:40px;--padding-left:40px;--padding-right:40px;}.elementor-486 .elementor-element.elementor-element-b374152:not(.elementor-motion-effects-element-type-background), .elementor-486 .elementor-element.elementor-element-b374152 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-486 .elementor-element.elementor-element-d70015e{width:var( --container-widget-width, 500px );max-width:500px;--container-widget-width:500px;--container-widget-flex-grow:0;}.elementor-486 .elementor-element.elementor-element-d70015e > .elementor-widget-container{border-style:none;border-radius:6px 6px 6px 6px;box-shadow:0px 0px 0px 1px rgba(0, 0, 0, 0.05);}.elementor-486 .elementor-element.elementor-element-958b8dd{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--border-radius:10px 10px 10px 10px;--padding-top:40px;--padding-bottom:40px;--padding-left:40px;--padding-right:40px;}.elementor-486 .elementor-element.elementor-element-958b8dd:not(.elementor-motion-effects-element-type-background), .elementor-486 .elementor-element.elementor-element-958b8dd > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-486 .elementor-element.elementor-element-7d0f3cf{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-486 .elementor-element.elementor-element-fd502fb{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:10px 10px;--row-gap:10px;--column-gap:10px;}.elementor-486 .elementor-element.elementor-element-c5bfff9{width:100%;max-width:100%;}html .elementor-486 .elementor-element.elementor-element-c5bfff9 .product_title{font-size:32px;}.elementor-486 .elementor-element.elementor-element-6d27dca.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-486 .elementor-element.elementor-element-6d27dca img{max-width:80px;}.elementor-486 .elementor-element.elementor-element-9bd8409{--display:flex;}.elementor-486 .elementor-element.elementor-element-c0b3169{margin:-18px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-486 .elementor-element.elementor-element-c0b3169 .elementor-heading-title{font-size:10px;color:#212121;}.elementor-486 .elementor-element.elementor-element-495f8f9 > .elementor-widget-container{margin:30px 0px 0px 0px;}.elementor-486 .elementor-element.elementor-element-495f8f9 .wd-hidden-tab-title{font-size:18px;}.wd-side-hidden[class*="woocommerce-Tabs-panel--"]{--wd-side-hidden-w:600px;}.elementor-486 .elementor-element.elementor-element-05610f2{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:flex-end;--flex-wrap:wrap;}.elementor-486 .elementor-element.elementor-element-f6f333f.elementor-element{--flex-grow:1;--flex-shrink:0;}.elementor-486 .elementor-element.elementor-element-78bb7af > .elementor-widget-container{background-color:#0000000D;padding:10px 10px 10px 10px;border-radius:50% 50% 50% 50%;}.elementor-486 .elementor-element.elementor-element-78bb7af.ha-has-bg-overlay:hover > .elementor-widget-container::before{transition:background 0.3s;}.elementor-486 .elementor-element.elementor-element-2062088{--display:flex;--gap:80px 80px;--row-gap:80px;--column-gap:80px;--margin-top:0px;--margin-bottom:40px;--margin-left:0px;--margin-right:0px;}.elementor-486 .elementor-element.elementor-element-530c827 .shop_attributes, .wd-single-attrs.wd-side-hidden .shop_attributes{--wd-attr-col:1;}.elementor-486 .elementor-element.elementor-element-5a1176a > .elementor-widget-container{background-color:#FFFFFF;padding:40px 40px 40px 40px;border-radius:10px 10px 10px 10px;}.elementor-486 .elementor-element.elementor-element-5a1176a.ha-has-bg-overlay:hover > .elementor-widget-container::before{transition:background 0.3s;}.elementor-486 .elementor-element.elementor-element-5a1176a .element-title{font-size:28px;}.elementor-486 .elementor-element.elementor-element-4c135ce{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-486 .elementor-element.elementor-element-4c135ce.wd-collapsible-content.e-con{max-height:358px;}.elementor-486 .elementor-element.elementor-element-4c135ce.wd-collapsible-content.e-con:not(.wd-opened):after{color:#F5F7F8;}@media(min-width:769px){.elementor-486 .elementor-element.elementor-element-ec938d3{--content-width:1140px;}.elementor-486 .elementor-element.elementor-element-b374152{--width:60%;}.elementor-486 .elementor-element.elementor-element-958b8dd{--width:40%;}.elementor-486 .elementor-element.elementor-element-2062088{--content-width:1158px;}}@media(max-width:1024px) and (min-width:769px){.elementor-486 .elementor-element.elementor-element-b374152{--width:50%;}.elementor-486 .elementor-element.elementor-element-958b8dd{--width:50%;}}@media(max-width:1024px){.elementor-486 .elementor-element.elementor-element-cd3749a{--margin-top:0px;--margin-bottom:60px;--margin-left:0px;--margin-right:0px;}.elementor-486 .elementor-element.elementor-element-958b8dd{--gap:30px 30px;--row-gap:30px;--column-gap:30px;}.elementor-486 .elementor-element.elementor-element-7d0f3cf{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}html .elementor-486 .elementor-element.elementor-element-c5bfff9 .product_title{font-size:24px;}.elementor-486 .elementor-element.elementor-element-6d27dca img{max-width:60px;}.elementor-486 .elementor-element.elementor-element-2062088{--gap:60px 60px;--row-gap:60px;--column-gap:60px;}.elementor-486 .elementor-element.elementor-element-5a1176a .element-title{font-size:24px;}}@media(max-width:768px){.elementor-486 .elementor-element.elementor-element-cd3749a{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:40px;--margin-left:0px;--margin-right:0px;}.elementor-486 .elementor-element.elementor-element-b374152{--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-486 .elementor-element.elementor-element-958b8dd{--gap:20px 20px;--row-gap:20px;--column-gap:20px;--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}html .elementor-486 .elementor-element.elementor-element-c5bfff9 .product_title{font-size:22px;}.elementor-486 .elementor-element.elementor-element-2062088{--gap:40px 40px;--row-gap:40px;--column-gap:40px;}.elementor-486 .elementor-element.elementor-element-5a1176a > .elementor-widget-container{padding:20px 20px 20px 20px;}.elementor-486 .elementor-element.elementor-element-5a1176a .element-title{font-size:22px;}}/* Start custom CSS *//* ==========================================================
   ROSEZ PARIS — GLOBAL SINGLE PRODUCT DESIGN
   Applies to ALL WooCommerce single product pages
   No HTML modification required
   ========================================================== */


/* ==========================================================
   1. DESIGN TOKENS
   ========================================================== */

.single-product-page {
    --rp-bg: #faf9f7;
    --rp-white: #ffffff;
    --rp-black: #171717;
    --rp-text: #242424;
    --rp-muted: #7b7b7b;
    --rp-light-muted: #a8a8a8;

    --rp-accent: #a88355;
    --rp-accent-dark: #82623f;

    --rp-border: rgba(20, 20, 20, 0.09);
    --rp-border-dark: rgba(20, 20, 20, 0.16);

    --rp-radius-sm: 10px;
    --rp-radius: 16px;
    --rp-radius-lg: 22px;

    --rp-shadow:
        0 3px 10px rgba(0, 0, 0, 0.025),
        0 18px 45px rgba(0, 0, 0, 0.055);

    --rp-shadow-hover:
        0 8px 20px rgba(0, 0, 0, 0.04),
        0 25px 65px rgba(0, 0, 0, 0.09);

    --rp-transition:
        280ms cubic-bezier(.22, .61, .36, 1);

    color: var(--rp-text);
}


/* ==========================================================
   2. BREADCRUMBS
   ========================================================== */

.single-product-page .wd-breadcrumbs {
    display: flex;
    align-items: center;
    flex-wrap: wrap;

    gap: 7px;

    margin-bottom: 20px;

    color: var(--rp-muted);

    font-size: 12px;
    font-weight: 400;
    line-height: 1.5;
}

.single-product-page .wd-breadcrumbs a {
    color: var(--rp-muted);

    text-decoration: none;

    transition: color var(--rp-transition);
}

.single-product-page .wd-breadcrumbs a:hover {
    color: var(--rp-black);
}

.single-product-page .wd-breadcrumbs .wd-last {
    color: var(--rp-black);

    font-weight: 500;
}


/* ==========================================================
   3. PRODUCT NAVIGATION
   Previous / Back / Next
   ========================================================== */

.single-product-page .wd-products-nav {
    gap: 8px;
}

.single-product-page .wd-product-nav-btn {
    width: 38px;
    height: 38px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    border: 1px solid var(--rp-border);
    border-radius: 50%;

    background: var(--rp-white);

    transition:
        background-color var(--rp-transition),
        border-color var(--rp-transition),
        transform var(--rp-transition),
        box-shadow var(--rp-transition);
}

.single-product-page .wd-product-nav-btn:hover {
    background: var(--rp-black);
    border-color: var(--rp-black);

    transform: translateY(-2px);

    box-shadow: 0 8px 20px rgba(0,0,0,.10);
}


/* Navigation dropdown */

.single-product-page .wd-products-nav .wd-dropdown {
    overflow: hidden;

    border: 1px solid var(--rp-border);
    border-radius: var(--rp-radius);

    background: var(--rp-white);

    box-shadow: var(--rp-shadow);

    padding: 10px;
}

.single-product-page .wd-product-nav-thumb img {
    border-radius: var(--rp-radius-sm);
}


/* ==========================================================
   4. MAIN PRODUCT AREA
   ========================================================== */

.single-product-page #single-product {
    width: 100%;
}


/* ==========================================================
   5. PRODUCT GALLERY
   ========================================================== */

.single-product-page .wd-single-gallery {
    position: relative;
}


.single-product-page .woocommerce-product-gallery:hover {
    border-color: var(--rp-border-dark);

    box-shadow: var(--rp-shadow-hover);
}


/* Main image */

.single-product-page
.woocommerce-product-gallery__image {
    overflow: hidden;

    border-radius: calc(var(--rp-radius-lg) - 6px);

    background: #f8f7f5;
}

.single-product-page
.woocommerce-product-gallery__image a {
    display: flex;

    width: 100%;
    min-height: 100%;

    align-items: center;
    justify-content: center;
}

.single-product-page
.woocommerce-product-gallery__image img {
    display: block;

    width: 100% !important;
    height: auto !important;

    object-fit: contain;

    transition:
        transform 600ms cubic-bezier(.22,.61,.36,1);
}

@media (hover: hover) {

    .single-product-page
    .woocommerce-product-gallery__image:hover img {
        transform: scale(1.025);
    }

}


/* ==========================================================
   6. SALE BADGE
   ========================================================== */

.single-product-page .product-labels {
    top: 16px !important;
    left: 16px !important;

    z-index: 10;
}

.single-product-page .product-label {
    min-width: auto !important;
    min-height: 30px !important;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    padding: 6px 11px !important;

    border-radius: 999px !important;

    background: rgba(18,18,18,.92) !important;
    color: #fff !important;

    box-shadow: 0 5px 16px rgba(0,0,0,.13);

    font-size: 10px !important;
    font-weight: 700 !important;

    line-height: 1 !important;
    letter-spacing: .05em;

    backdrop-filter: blur(7px);
    -webkit-backdrop-filter: blur(7px);
}


/* ==========================================================
   7. GALLERY ARROWS
   ========================================================== */

.single-product-page .wd-gallery-images .wd-btn-arrow {
    width: 42px;
    height: 42px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid var(--rp-border);
    border-radius: 50%;

    background: rgba(255,255,255,.92);

    box-shadow: 0 5px 20px rgba(0,0,0,.08);

    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);

    transition:
        background-color var(--rp-transition),
        color var(--rp-transition),
        transform var(--rp-transition),
        box-shadow var(--rp-transition);
}

.single-product-page .wd-gallery-images .wd-btn-arrow:hover {
    background: var(--rp-black);

    color: #fff;

    transform: scale(1.05);

    box-shadow: 0 8px 22px rgba(0,0,0,.15);
}


/* ==========================================================
   8. PRODUCT INFORMATION COLUMN
   ========================================================== */

.single-product-page #single-product {
    position: relative;
}

.single-product-page .wd-single-title,
.single-product-page .wd-single-price,
.single-product-page .wd-single-tabs,
.single-product-page .wd-single-add-cart {
    width: 100%;
}


/* ==========================================================
   9. PRODUCT TITLE
   ========================================================== */

.single-product-page .product_title {
    margin: 0 0 15px !important;

    color: var(--rp-black) !important;

    font-size: clamp(27px, 3vw, 42px) !important;
    font-weight: 500 !important;

    line-height: 1.16 !important;

    letter-spacing: -.035em;

    unicode-bidi: plaintext;
}


/* ==========================================================
   10. PRODUCT PRICE
   ========================================================== */

.single-product-page .wd-single-price .price {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;

    gap: 7px 12px;

    margin: 0 0 5px !important;

    direction: ltr;

    color: var(--rp-black);

    font-size: clamp(24px, 2.5vw, 32px) !important;
    font-weight: 700 !important;

    line-height: 1.2;

    letter-spacing: -.035em;
}


/* Old price */

.single-product-page .wd-single-price .price del {
    color: var(--rp-light-muted) !important;

    font-size: .58em;
    font-weight: 400;

    opacity: 1 !important;

    text-decoration-thickness: 1px;
}


/* New price */

.single-product-page .wd-single-price .price ins {
    color: var(--rp-black) !important;

    font-weight: 700 !important;

    text-decoration: none !important;
}


/* Currency */

.single-product-page
.woocommerce-Price-currencySymbol {
    margin-right: 4px;

    font-size: .67em;
    font-weight: 600;
}


/* ==========================================================
   11. VAT TEXT
   ========================================================== */

.single-product-page
.elementor-widget-heading
.elementor-heading-title {
    color: var(--rp-muted);

    font-size: 11px;
    font-weight: 400;

    line-height: 1.5;

    letter-spacing: .02em;
}


/* ==========================================================
   12. QUANTITY + CART WRAPPER
   ========================================================== */

.single-product-page form.cart {
    display: flex !important;

    width: 100%;

    gap: 10px;

    margin-top: 20px !important;
}


/* ==========================================================
   13. QUANTITY SELECTOR
   ========================================================== */

.single-product-page form.cart .quantity {
    display: flex !important;

    height: 52px;

    flex: 0 0 auto;

    overflow: hidden;

    border: 1px solid var(--rp-border-dark);
    border-radius: 999px;

    background: var(--rp-white);
}

.single-product-page form.cart .quantity .minus,
.single-product-page form.cart .quantity .plus {
    width: 42px;
    min-width: 42px;

    border: 0 !important;

    background: transparent !important;
    color: var(--rp-black) !important;

    font-size: 17px;
    font-weight: 400;

    cursor: pointer;

    transition:
        background-color var(--rp-transition),
        color var(--rp-transition);
}

.single-product-page form.cart .quantity .minus:hover,
.single-product-page form.cart .quantity .plus:hover {
    background: #f4f2ef !important;
}


/* Number */

.single-product-page form.cart .quantity .qty {
    width: 42px !important;
    min-width: 42px !important;

    border: 0 !important;

    background: transparent !important;
    color: var(--rp-black);

    box-shadow: none !important;

    font-size: 13px;
    font-weight: 600;

    text-align: center;
}


/* Hide browser number controls */

.single-product-page
.quantity input[type="number"]::-webkit-inner-spin-button,
.single-product-page
.quantity input[type="number"]::-webkit-outer-spin-button {
    margin: 0;

    -webkit-appearance: none;
}

.single-product-page
.quantity input[type="number"] {
    -moz-appearance: textfield;
}


/* ==========================================================
   14. ADD TO CART BUTTON
   ========================================================== */

.single-product-page
.single_add_to_cart_button {
    min-height: 52px !important;

    flex: 1 1 auto;

    display: inline-flex !important;
    align-items: center;
    justify-content: center;

    padding: 13px 28px !important;

    border: 1px solid var(--rp-black) !important;
    border-radius: 999px !important;

    background: var(--rp-black) !important;
    color: #fff !important;

    box-shadow: none;

    font-size: 12px !important;
    font-weight: 600 !important;

    line-height: 1.2 !important;

    letter-spacing: .08em;

    text-transform: uppercase;

    cursor: pointer;

    transition:
        background-color var(--rp-transition),
        border-color var(--rp-transition),
        transform var(--rp-transition),
        box-shadow var(--rp-transition) !important;
}

.single-product-page
.single_add_to_cart_button:hover {
    background: var(--rp-accent-dark) !important;

    border-color: var(--rp-accent-dark) !important;

    transform: translateY(-2px);

    box-shadow:
        0 11px 25px rgba(90,67,41,.18);
}

.single-product-page
.single_add_to_cart_button:active {
    transform: translateY(0);
}


/* ==========================================================
   15. WISHLIST
   ========================================================== */

.single-product-page .wd-single-wishlist-btn {
    margin-top: 12px;
}

.single-product-page
.wd-single-wishlist-btn .wd-wishlist-btn {
    width: 100%;
}

.single-product-page
.wd-single-wishlist-btn .wd-wishlist-btn > a {
    min-height: 46px;

    display: flex !important;
    align-items: center;
    justify-content: center;

    gap: 8px;

    width: 100%;

    border: 1px solid var(--rp-border-dark);
    border-radius: 999px;

    background: var(--rp-white);
    color: var(--rp-black);

    font-size: 11px;
    font-weight: 500;

    letter-spacing: .04em;

    transition:
        background-color var(--rp-transition),
        border-color var(--rp-transition),
        transform var(--rp-transition);
}

.single-product-page
.wd-single-wishlist-btn .wd-wishlist-btn > a:hover {
    background: #f7f5f2;

    border-color: var(--rp-black);

    transform: translateY(-1px);
}


/* ==========================================================
   16. PRODUCT INFO / SHORT FEATURE TAB
   ========================================================== */

.single-product-page
.wd-hidden-tab-title {
    display: flex;
    align-items: center;

    width: 100%;

    margin: 18px 0 0;

    padding: 14px 16px;

    border: 1px solid var(--rp-border);
    border-radius: var(--rp-radius-sm);

    background: #faf9f7;

    color: var(--rp-text);

    font-size: 12px;
    font-weight: 500;
}


/* ==========================================================
   17. MAIN PRODUCT TABS
   ========================================================== */

.single-product-page .woocommerce-tabs {
    margin-top: clamp(40px, 6vw, 80px);
}


/* Desktop tab bar */

.single-product-page
.wd-nav-tabs-wrapper {
    margin-bottom: 28px;

    border-bottom: 1px solid var(--rp-border);
}

.single-product-page
.wd-nav-tabs {
    display: flex;

    gap: clamp(20px, 4vw, 45px);

    justify-content: center;
}

.single-product-page
.wd-nav-tabs .wd-nav-link {
    position: relative;

    padding: 14px 0 17px !important;

    color: var(--rp-muted) !important;

    font-size: 12px !important;
    font-weight: 500 !important;

    letter-spacing: .04em;

    transition: color var(--rp-transition);
}

.single-product-page
.wd-nav-tabs .wd-nav-link:hover {
    color: var(--rp-black) !important;
}

.single-product-page
.wd-nav-tabs li.active .wd-nav-link {
    color: var(--rp-black) !important;

    font-weight: 600 !important;
}

.single-product-page
.wd-nav-tabs li.active .wd-nav-link::after {
    content: "";

    position: absolute;

    right: 0;
    bottom: -1px;
    left: 0;

    height: 2px;

    border-radius: 4px;

    background: var(--rp-black);
}


/* ==========================================================
   18. TAB CONTENT
   ========================================================== */

.single-product-page
.woocommerce-Tabs-panel {
    max-width: 920px;

    margin-inline: auto;

    color: #555;

    font-size: 14px;
    line-height: 1.85;
}

.single-product-page
.woocommerce-Tabs-panel > h2:first-child {
    margin-top: 0;
}

.single-product-page
.woocommerce-Tabs-panel h2 {
    margin: 25px 0 12px;

    color: var(--rp-black);

    font-size: clamp(20px, 2vw, 25px);
    font-weight: 600;

    line-height: 1.3;

    letter-spacing: -.02em;
}

.single-product-page
.woocommerce-Tabs-panel p {
    margin-bottom: 15px;
}


/* ==========================================================
   19. PRODUCT ATTRIBUTES TABLE
   ========================================================== */

.single-product-page
.woocommerce-product-attributes {
    width: 100%;

    overflow: hidden;

    border-collapse: separate !important;
    border-spacing: 0;

    border: 1px solid var(--rp-border) !important;
    border-radius: var(--rp-radius) !important;

    background: var(--rp-white);
}

.single-product-page
.woocommerce-product-attributes tr:not(:last-child) th,
.single-product-page
.woocommerce-product-attributes tr:not(:last-child) td {
    border-bottom: 1px solid var(--rp-border) !important;
}

.single-product-page
.woocommerce-product-attributes th,
.single-product-page
.woocommerce-product-attributes td {
    padding: 15px 18px !important;

    border: 0 !important;

    font-size: 13px;
}

.single-product-page
.woocommerce-product-attributes th {
    width: 35%;

    background: #faf9f7;

    color: var(--rp-black);

    font-weight: 600;
}

.single-product-page
.woocommerce-product-attributes td {
    color: var(--rp-muted);
}


/* ==========================================================
   20. MOBILE ACCORDION
   ========================================================== */

.single-product-page .wd-accordion-item {
    border-bottom: 1px solid var(--rp-border);
}

.single-product-page .wd-accordion-title {
    min-height: 58px;

    display: flex;
    align-items: center;

    padding: 15px 4px !important;

    color: var(--rp-black);

    font-size: 13px;
    font-weight: 600;
}

.single-product-page
.wd-accordion-title-text {
    flex: 1;
}


/* ==========================================================
   21. PRODUCT DESCRIPTION CONTENT
   ========================================================== */

.single-product-page
.wd-text-block {
    color: #555;

    font-size: 14px;
    line-height: 1.85;
}

.single-product-page
.wd-text-block h1,
.single-product-page
.wd-text-block h2,
.single-product-page
.wd-text-block h3 {
    color: var(--rp-black);

    font-weight: 600;

    letter-spacing: -.02em;
}


/* ==========================================================
   22. READ MORE BUTTON
   ========================================================== */

.single-product-page
.wd-collapsible-button .btn {
    display: inline-flex;
    align-items: center;

    gap: 8px;

    min-height: 42px;

    padding: 10px 18px !important;

    border: 1px solid var(--rp-border-dark) !important;
    border-radius: 999px !important;

    background: var(--rp-white) !important;
    color: var(--rp-black) !important;

    box-shadow: none !important;

    font-size: 11px;
    font-weight: 600;

    transition:
        border-color var(--rp-transition),
        background-color var(--rp-transition),
        transform var(--rp-transition);
}

.single-product-page
.wd-collapsible-button .btn:hover {
    border-color: var(--rp-black) !important;

    background: #f7f5f2 !important;

    transform: translateY(-1px);
}


/* ==========================================================
   23. WOOCOMMERCE MESSAGES
   ========================================================== */

.single-product-page
.woocommerce-message,
.single-product-page
.woocommerce-info,
.single-product-page
.woocommerce-error {
    padding: 15px 18px !important;

    border: 1px solid var(--rp-border) !important;
    border-radius: var(--rp-radius-sm) !important;

    background: #faf9f7 !important;

    box-shadow: none !important;
}


/* ==========================================================
   24. LINK TRANSITIONS
   ========================================================== */

.single-product-page a {
    transition:
        color var(--rp-transition),
        background-color var(--rp-transition),
        border-color var(--rp-transition),
        opacity var(--rp-transition);
}


/* ==========================================================
   25. DESKTOP PRODUCT INFO
   ========================================================== */

@media (min-width: 1025px) {

    .single-product-page #single-product {
        padding-inline: clamp(10px, 1vw, 20px);
    }

}


/* ==========================================================
   26. TABLET
   ========================================================== */

@media (min-width: 768px) and (max-width: 1024px) {

    .single-product-page .product_title {
        font-size: 30px !important;
    }

    .single-product-page
    .wd-single-price .price {
        font-size: 26px !important;
    }

    .single-product-page
    .woocommerce-product-gallery {
        border-radius: 18px;
    }

}


/* ==========================================================
   27. MOBILE
   ========================================================== */

@media (max-width: 767px) {

    .single-product-page {
        --rp-radius: 13px;
        --rp-radius-lg: 16px;
    }


    /* Breadcrumb */

    .single-product-page .wd-breadcrumbs {
        margin-bottom: 13px;

        font-size: 10px;
    }


    /* Product gallery */

    .single-product-page
    .woocommerce-product-gallery {
        padding: 7px;

        border-radius: var(--rp-radius-lg);
    }

    .single-product-page
    .woocommerce-product-gallery__image {
        border-radius: 12px;
    }


    /* Labels */

    .single-product-page .product-labels {
        top: 11px !important;
        left: 11px !important;
    }

    .single-product-page .product-label {
        min-height: 25px !important;

        padding: 5px 8px !important;

        font-size: 8px !important;
    }


    /* Product title */

    .single-product-page .product_title {
        margin-top: 10px !important;
        margin-bottom: 12px !important;

        font-size: 25px !important;

        line-height: 1.2 !important;
    }


    /* Price */

    .single-product-page
    .wd-single-price .price {
        font-size: 24px !important;
    }


    /* Cart */

    .single-product-page form.cart {
        gap: 8px;

        margin-top: 17px !important;
    }

    .single-product-page
    form.cart .quantity {
        height: 48px;
    }

    .single-product-page
    form.cart .quantity .minus,
    .single-product-page
    form.cart .quantity .plus {
        width: 36px;
        min-width: 36px;

        font-size: 15px;
    }

    .single-product-page
    form.cart .quantity .qty {
        width: 36px !important;
        min-width: 36px !important;
    }

    .single-product-page
    .single_add_to_cart_button {
        min-height: 48px !important;

        padding-inline: 15px !important;

        font-size: 10px !important;

        letter-spacing: .05em;
    }


    /* Wishlist */

    .single-product-page
    .wd-single-wishlist-btn
    .wd-wishlist-btn > a {
        min-height: 43px;

        font-size: 10px;
    }


    /* Tabs */

    .single-product-page
    .woocommerce-tabs {
        margin-top: 35px;
    }

    .single-product-page
    .woocommerce-Tabs-panel {
        font-size: 13px;

        line-height: 1.75;
    }


    /* Product attributes */

    .single-product-page
    .woocommerce-product-attributes th,
    .single-product-page
    .woocommerce-product-attributes td {
        padding: 12px 13px !important;

        font-size: 12px;
    }

}


/* ==========================================================
   28. VERY SMALL MOBILE
   ========================================================== */

@media (max-width: 380px) {

    .single-product-page form.cart {
        flex-wrap: wrap;
    }

    .single-product-page
    form.cart .quantity {
        width: 100%;

        justify-content: center;
    }

    .single-product-page
    .single_add_to_cart_button {
        width: 100%;

        flex-basis: 100%;
    }

}


/* ==========================================================
   29. ACCESSIBILITY
   ========================================================== */

.single-product-page
a:focus-visible,
.single-product-page
button:focus-visible,
.single-product-page
input:focus-visible {
    outline: 2px solid var(--rp-accent) !important;
    outline-offset: 3px;
}


/* ==========================================================
   30. REDUCED MOTION
   ========================================================== */

@media (prefers-reduced-motion: reduce) {

    .single-product-page *,
    .single-product-page *::before,
    .single-product-page *::after {
        scroll-behavior: auto !important;

        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;

        transition-duration: .01ms !important;
    }

}/* End custom CSS */