.elementor-1055 .elementor-element.elementor-element-2d61532:not(.elementor-motion-effects-element-type-background), .elementor-1055 .elementor-element.elementor-element-2d61532 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-1055 .elementor-element.elementor-element-2d61532{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin:-40px 0px -10px 0px;padding:10px 10px 0px 10px;}.elementor-1055 .elementor-element.elementor-element-2d61532 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-bc-flex-widget .elementor-1055 .elementor-element.elementor-element-0a16947.elementor-column .elementor-widget-wrap{align-items:center;}.elementor-1055 .elementor-element.elementor-element-0a16947.elementor-column.elementor-element[data-element_type="column"] > .elementor-widget-wrap.elementor-element-populated{align-content:center;align-items:center;}.elementor-1055 .elementor-element.elementor-element-0a16947.elementor-column > .elementor-widget-wrap{justify-content:space-between;}.elementor-1055 .elementor-element.elementor-element-2d40650 > .elementor-widget-container{margin:15px 135px 15px 0px;}html .elementor-1055 .elementor-element.elementor-element-2d40650 .product_title{font-size:42px;font-weight:600;}.elementor-1055 .elementor-element.elementor-element-70338b3{text-align:start;}.elementor-1055 .elementor-element.elementor-element-d29bb71 .jet-listing-dynamic-field .jet-listing-dynamic-field__inline-wrap{width:auto;}.elementor-1055 .elementor-element.elementor-element-d29bb71 .jet-listing-dynamic-field .jet-listing-dynamic-field__content{width:auto;}.elementor-1055 .elementor-element.elementor-element-d29bb71 .jet-listing-dynamic-field{justify-content:flex-start;}.elementor-1055 .elementor-element.elementor-element-d29bb71 .jet-listing-dynamic-field__content{text-align:right;}.elementor-1055 .elementor-element.elementor-element-2989025{background-color:#E9E9E9;margin:20px 20px calc(var(--kit-widget-spacing, 0px) + 20px) 20px;padding:20px 20px 20px 20px;border-radius:10px 10px 10px 10px;text-align:start;color:#2D2D2D;}.elementor-1055 .elementor-element.elementor-element-1191d57.elementor-element{--align-self:center;}.elementor-1055 .elementor-element.elementor-element-58cd3b0{--grid-template-columns:repeat(0, auto);text-align:left;--icon-size:15px;--grid-column-gap:5px;--grid-row-gap:0px;}.elementor-1055 .elementor-element.elementor-element-56e30d6{--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:stretch;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--border-radius:20px 20px 20px 20px;box-shadow:0px 0px 20px 0px rgba(66.3, 66.3, 66.3, 0.11);--margin-top:20px;--margin-bottom:100px;--margin-left:0px;--margin-right:0px;--padding-top:40px;--padding-bottom:40px;--padding-left:40px;--padding-right:40px;}.elementor-1055 .elementor-element.elementor-element-8441df8 > .elementor-widget-container{margin:136px 0px 0px 0px;}.elementor-1055 .elementor-element.elementor-element-8441df8 .shop_attributes, .wd-single-attrs.wd-side-hidden .shop_attributes{--wd-attr-col:1;}.elementor-1055 .elementor-element.elementor-element-9c88d77{--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:stretch;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--border-radius:20px 20px 20px 20px;box-shadow:0px 0px 20px 0px rgba(66.3, 66.3, 66.3, 0.11);--margin-top:100px;--margin-bottom:100px;--margin-left:0px;--margin-right:0px;--padding-top:40px;--padding-bottom:40px;--padding-left:40px;--padding-right:40px;}.elementor-1055 .elementor-element.elementor-element-9c88d77:not(.elementor-motion-effects-element-type-background), .elementor-1055 .elementor-element.elementor-element-9c88d77 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F7F7F7D6;}.elementor-1055 .elementor-element.elementor-element-e272c2a{--display:flex;}.elementor-1055 .elementor-element.elementor-element-d0b777b .wd-products-with-bg, .elementor-1055 .elementor-element.elementor-element-d0b777b .wd-products-with-bg .wd-product{--wd-prod-bg:#FFFFFF;--wd-bordered-bg:#FFFFFF;}.elementor-1055 .elementor-element.elementor-element-a841bf6{--display:flex;}@media(max-width:767px){.elementor-1055 .elementor-element.elementor-element-d0b777b .wd-el-title{font-size:20px;}}/* Start custom CSS *//* ==========================================================
   IDBAMA — SINGLE PRODUCT UI
   Woodmart + Elementor + WooCommerce + TM Extra Product Options
   v1.0
   ========================================================== */


/* ==========================================================
   01. DESIGN TOKENS
   ========================================================== */

.single-product-page {
    --idb-primary: #1c61e7;
    --idb-primary-2: #3b82f6;
    --idb-primary-dark: #1249b8;

    --idb-blue-50: #f5f9ff;
    --idb-blue-100: #eaf2ff;
    --idb-blue-200: #d8e7ff;

    --idb-text: #172033;
    --idb-text-2: #39445a;
    --idb-muted: #778199;

    --idb-border: #e5ebf4;
    --idb-border-strong: #d5dfed;

    --idb-surface: #ffffff;
    --idb-surface-soft: #f8faff;
    --idb-bg: #f5f7fb;

    --idb-success: #14a970;
    --idb-danger: #e5484d;

    --idb-radius-sm: 10px;
    --idb-radius-md: 16px;
    --idb-radius-lg: 22px;
    --idb-radius-xl: 28px;

    --idb-shadow-sm:
        0 4px 18px rgba(30, 55, 90, .05);

    --idb-shadow:
        0 14px 45px rgba(30, 67, 120, .08);

    --idb-shadow-hover:
        0 20px 60px rgba(28, 97, 231, .14);

    --idb-transition:
        220ms cubic-bezier(.2, .8, .2, 1);

    color: var(--idb-text);
}


/* ==========================================================
   02. PAGE BASE
   ========================================================== */

body.single-product {
    background:
        radial-gradient(circle at 92% 5%, rgba(43, 115, 255, .07), transparent 24%),
        radial-gradient(circle at 5% 38%, rgba(70, 145, 255, .05), transparent 25%),
        #f8faff;
}

.single-product .wd-page-content {
    overflow: hidden;
}

.single-product-page,
.single-product-page * {
    box-sizing: border-box;
}

.single-product-page p {
    line-height: 1.9;
}

.single-product-page a {
    transition:
        color var(--idb-transition),
        background var(--idb-transition),
        border-color var(--idb-transition),
        box-shadow var(--idb-transition),
        transform var(--idb-transition);
}


/* ==========================================================
   03. MAIN ELEMENTOR LAYOUT
   ========================================================== */

.single-product-page > .elementor {
    position: relative;
}

.single-product-page .e-con-inner,
.single-product-page .elementor-container {
    position: relative;
}


/* حذف حس قالب قدیمی و تخت */
.single-product-page .elementor-widget-container {
    border-color: var(--idb-border);
}


/* ==========================================================
   04. PRODUCT TITLE / HERO
   ========================================================== */

.single-product-page .wd-single-title {
    position: relative;
    z-index: 2;
}

.single-product-page .wd-single-title .product_title {
    margin: 0 !important;

    color: var(--idb-text);

    font-size: clamp(28px, 3.4vw, 46px) !important;
    font-weight: 800 !important;
    line-height: 1.35 !important;
    letter-spacing: -.7px;
}

.single-product-page .wd-single-title .product_title::after {
    content: "";
    display: block;

    width: 54px;
    height: 5px;

    margin-top: 17px;

    border-radius: 20px;

    background:
        linear-gradient(
            90deg,
            var(--idb-primary),
            #61a5ff
        );

    box-shadow:
        0 5px 16px rgba(28, 97, 231, .23);
}


/* ==========================================================
   05. PRODUCT SHORT DESCRIPTION
   ========================================================== */

.single-product-page
.woocommerce-product-details__short-description,

.single-product-page
.e-paragraph-base {

    color: var(--idb-text-2);

    font-size: 15px;
    line-height: 2;
}


/* ==========================================================
   06. PRODUCT IMAGE / GALLERY
   ========================================================== */

.single-product-page
.wd-gallery-images,

.single-product-page
.woocommerce-product-gallery {

    position: relative;

    padding: 24px;

    border: 1px solid var(--idb-border);

    border-radius: var(--idb-radius-xl);

    background:
        linear-gradient(
            145deg,
            #ffffff 0%,
            #f8fbff 100%
        );

    box-shadow: var(--idb-shadow);

    overflow: hidden;
}

.single-product-page
.wd-gallery-images::before,

.single-product-page
.woocommerce-product-gallery::before {

    content: "";

    position: absolute;

    width: 220px;
    height: 220px;

    top: -110px;
    left: -110px;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(48, 121, 255, .14),
            transparent 68%
        );

    pointer-events: none;
}

.single-product-page
.wd-gallery-images img,

.single-product-page
.woocommerce-product-gallery img {

    border-radius: 18px;

    transition:
        transform .45s cubic-bezier(.2,.8,.2,1);
}

.single-product-page
.wd-gallery-images:hover img {

    transform: scale(1.015);
}


/* thumbnail */

.single-product-page
.wd-gallery-thumb {

    padding: 5px;

    border: 1px solid var(--idb-border);

    border-radius: 14px;

    background: #fff;

    transition: var(--idb-transition);
}

.single-product-page
.wd-gallery-thumb:hover {

    border-color: var(--idb-primary);

    box-shadow:
        0 7px 20px rgba(28, 97, 231, .12);
}


/* ==========================================================
   07. ORDER / PRODUCT INFORMATION AREA
   ========================================================== */

.single-product-page .wd-single-add-cart {

    position: relative;

    width: 100%;

    text-align: right !important;
}


/* ==========================================================
   08. EXTRA PRODUCT OPTIONS — MAIN CARD
   ========================================================== */

.single-product-page
.tc-extra-product-options {

    position: relative;

    width: 100%;

    padding: 26px !important;

    border: 1px solid var(--idb-border) !important;

    border-radius: var(--idb-radius-lg);

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.99),
            rgba(247,250,255,.99)
        );

    box-shadow:
        0 10px 35px rgba(37, 69, 115, .07);

    overflow: hidden;
}

.single-product-page
.tc-extra-product-options::before {

    content: "";

    position: absolute;

    top: 0;
    right: 0;

    width: 100%;
    height: 3px;

    background:
        linear-gradient(
            90deg,
            transparent,
            var(--idb-primary),
            #65a5ff,
            transparent
        );
}


/* ==========================================================
   09. FEATURE / GUARANTEE DESCRIPTION
   ========================================================== */

.single-product-page
.tm-section-description {

    margin-bottom: 26px !important;

    padding: 19px 21px !important;

    border: 1px solid #dfeaff;

    border-radius: 17px;

    background:
        linear-gradient(
            135deg,
            #f2f7ff,
            #fbfdff
        );

    color: var(--idb-text-2);
}

.single-product-page
.tm-section-description p {

    margin: 0 !important;

    color: var(--idb-text-2);

    font-size: 14px;
    line-height: 2.15 !important;
}

.single-product-page
.tm-section-description b,
.single-product-page
.tm-section-description strong {

    color: var(--idb-text);

    font-weight: 700;
}


/* ==========================================================
   10. FORM SECTIONS
   ========================================================== */

.single-product-page
.tc-section-fields {

    width: 100%;
}

.single-product-page
.cpf-element {

    margin-bottom: 13px !important;
}

.single-product-page
.tc-element-inner-wrap {

    width: 100%;
}


/* section labels */

.single-product-page
.tm-element-description {

    margin-bottom: 8px;

    color: var(--idb-text-2);

    font-size: 13px;
    font-weight: 600;
    line-height: 1.8;
}

.single-product-page
.tm-element-description p {

    margin-bottom: 7px !important;
}


/* ==========================================================
   11. LABELS
   ========================================================== */

.single-product-page
.tm-epo-field-label,

.single-product-page
.tc-epo-label {

    display: block;

    margin-bottom: 8px;

    color: var(--idb-text);

    font-size: 13px;
    font-weight: 700;
}


/* ==========================================================
   12. INPUTS
   ========================================================== */

.single-product-page
.tmcp-field,

.single-product-page
.tm-epo-field,

.single-product-page
input[type="text"],

.single-product-page
input[type="email"],

.single-product-page
input[type="tel"],

.single-product-page
input[type="number"],

.single-product-page
input[type="password"],

.single-product-page
select,

.single-product-page
textarea {

    width: 100%;

    min-height: 54px;

    padding: 0 16px !important;

    border:
        1px solid var(--idb-border-strong) !important;

    border-radius:
        14px !important;

    outline: none;

    background:
        #fff !important;

    color:
        var(--idb-text) !important;

    font-family: inherit;

    font-size: 14px;

    box-shadow:
        0 2px 8px rgba(20, 45, 80, .025);

    transition:
        border-color var(--idb-transition),
        box-shadow var(--idb-transition),
        background var(--idb-transition);
}

.single-product-page textarea {

    min-height: 120px;

    padding-top: 13px !important;

    resize: vertical;
}


/* placeholders */

.single-product-page input::placeholder,
.single-product-page textarea::placeholder {

    color: #a5adbb;

    opacity: 1;
}


/* focus */

.single-product-page
.tmcp-field:focus,

.single-product-page
.tm-epo-field:focus,

.single-product-page
input:focus,

.single-product-page
select:focus,

.single-product-page
textarea:focus {

    border-color:
        var(--idb-primary) !important;

    background:
        #fff !important;

    box-shadow:
        0 0 0 4px rgba(28, 97, 231, .09),
        0 8px 22px rgba(28, 97, 231, .06);
}


/* ==========================================================
   13. RADIO / CHECKBOX OPTIONS
   ========================================================== */

.single-product-page
.tmcp-field-wrap {

    margin-bottom: 9px !important;
}

.single-product-page
.tmcp-field-wrap label {

    cursor: pointer;
}

.single-product-page
input[type="radio"],

.single-product-page
input[type="checkbox"] {

    accent-color:
        var(--idb-primary);
}


/* option cards */

.single-product-page
.tm-extra-product-options-radio
.tmcp-field-wrap,

.single-product-page
.tm-extra-product-options-checkbox
.tmcp-field-wrap {

    padding: 12px 14px;

    border:
        1px solid var(--idb-border);

    border-radius:
        13px;

    background:
        #fff;

    transition:
        border-color var(--idb-transition),
        box-shadow var(--idb-transition),
        transform var(--idb-transition);
}

.single-product-page
.tm-extra-product-options-radio
.tmcp-field-wrap:hover,

.single-product-page
.tm-extra-product-options-checkbox
.tmcp-field-wrap:hover {

    border-color:
        #b8d0ff;

    box-shadow:
        0 7px 18px rgba(28, 97, 231, .07);

    transform:
        translateY(-1px);
}


/* ==========================================================
   14. SELECT
   ========================================================== */

.single-product-page select {

    cursor: pointer;

    appearance: auto;
}


/* ==========================================================
   15. PRICE
   ========================================================== */

.single-product-page
.wd-single-price {

    margin-top: 18px;
}

.single-product-page
.wd-single-price .price {

    display: inline-flex;

    align-items: baseline;

    gap: 6px;

    margin: 0;

    color:
        var(--idb-primary) !important;

    font-size:
        clamp(24px, 2vw, 32px) !important;

    font-weight:
        800 !important;

    line-height: 1.2;
}

.single-product-page
.wd-single-price
.woocommerce-Price-currencySymbol {

    color:
        var(--idb-muted);

    font-size:
        14px;

    font-weight:
        600;
}


/* old price */

.single-product-page
.price del {

    margin-left: 10px;

    color:
        #a2aabb !important;

    font-size:
        15px !important;

    font-weight:
        500 !important;
}

.single-product-page
.price ins {

    text-decoration:
        none;
}


/* ==========================================================
   16. QUANTITY
   ========================================================== */

.single-product-page form.cart
.quantity {

    display:
        inline-flex;

    align-items:
        stretch;

    height:
        54px;

    overflow:
        hidden;

    border:
        1px solid var(--idb-border-strong);

    border-radius:
        14px;

    background:
        #fff;
}

.single-product-page
.quantity .btn {

    width:
        42px;

    min-width:
        42px;

    height:
        52px !important;

    padding:
        0 !important;

    border:
        0 !important;

    border-radius:
        0 !important;

    background:
        var(--idb-blue-50) !important;

    color:
        var(--idb-primary) !important;

    font-size:
        20px;

    box-shadow:
        none !important;
}

.single-product-page
.quantity .btn:hover {

    background:
        var(--idb-primary) !important;

    color:
        #fff !important;
}

.single-product-page
.quantity input.qty {

    width:
        48px !important;

    min-height:
        52px !important;

    padding:
        0 !important;

    border:
        0 !important;

    border-radius:
        0 !important;

    background:
        #fff !important;

    text-align:
        center;

    box-shadow:
        none !important;
}


/* ==========================================================
   17. ADD TO CART
   ========================================================== */

.single-product-page
.single_add_to_cart_button {

    position:
        relative;

    display:
        inline-flex !important;

    align-items:
        center;

    justify-content:
        center;

    min-height:
        58px !important;

    padding:
        0 30px !important;

    border:
        0 !important;

    border-radius:
        15px !important;

    overflow:
        hidden;

    background:
        linear-gradient(
            135deg,
            #1c61e7 0%,
            #367df2 55%,
            #4e92ff 100%
        ) !important;

    color:
        #fff !important;

    font-family:
        inherit !important;

    font-size:
        15px !important;

    font-weight:
        700 !important;

    letter-spacing:
        0 !important;

    text-transform:
        none !important;

    box-shadow:
        0 12px 25px rgba(28, 97, 231, .24) !important;

    transition:
        transform var(--idb-transition),
        box-shadow var(--idb-transition),
        filter var(--idb-transition) !important;
}

.single-product-page
.single_add_to_cart_button:hover {

    transform:
        translateY(-2px);

    filter:
        saturate(1.08);

    box-shadow:
        0 17px 32px rgba(28, 97, 231, .30) !important;
}

.single-product-page
.single_add_to_cart_button:active {

    transform:
        translateY(0) scale(.985);
}


/* shine */

.single-product-page
.single_add_to_cart_button::before {

    content: "";

    position:
        absolute;

    top:
        -50%;

    left:
        -80%;

    width:
        45%;

    height:
        200%;

    opacity:
        .35;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(255,255,255,.75),
            transparent
        );

    transform:
        rotate(20deg);

    transition:
        left .6s ease;
}

.single-product-page
.single_add_to_cart_button:hover::before {

    left:
        140%;
}


/* ==========================================================
   18. FORM CART LAYOUT
   ========================================================== */

.single-product-page
form.cart {

    gap:
        12px !important;

    align-items:
        center;
}

.single-product-page
form.cart > .tc-extra-product-options {

    flex:
        1 1 100% !important;
}


/* ==========================================================
   19. TERMS
   ========================================================== */

.single-product-page
.rules-link {

    color:
        var(--idb-primary) !important;

    font-weight:
        700;

    text-decoration:
        none !important;
}

.single-product-page
.rules-link:hover {

    color:
        var(--idb-primary-dark) !important;
}


/* ==========================================================
   20. PRODUCT META
   ========================================================== */

.single-product-page
.product_meta {

    margin-top:
        16px;

    padding:
        14px 18px;

    gap:
        8px 18px !important;

    border:
        1px solid var(--idb-border);

    border-radius:
        14px;

    background:
        var(--idb-surface-soft);

    color:
        var(--idb-muted);

    font-size:
        12px;
}

.single-product-page
.product_meta .meta-label {

    color:
        var(--idb-text-2) !important;

    font-weight:
        700;
}

.single-product-page
.product_meta a {

    color:
        var(--idb-primary);
}


/* ==========================================================
   21. TABS OUTER CARD
   ========================================================== */

.single-product-page
.wd-single-tabs {

    width:
        100%;
}

.single-product-page
.woocommerce-tabs {

    padding:
        8px;

    border:
        1px solid var(--idb-border);

    border-radius:
        var(--idb-radius-xl);

    background:
        rgba(255,255,255,.92);

    box-shadow:
        var(--idb-shadow);
}


/* ==========================================================
   22. TAB NAVIGATION
   ========================================================== */

.single-product-page
.wd-nav-tabs-wrapper {

    padding:
        6px;

    border:
        1px solid var(--idb-border);

    border-radius:
        16px;

    background:
        var(--idb-surface-soft);
}

.single-product-page
.wd-nav-tabs {

    display:
        flex;

    justify-content:
        flex-start;

    gap:
        6px;

    margin:
        0 !important;
}

.single-product-page
.wd-nav-tabs > li {

    margin:
        0 !important;
}

.single-product-page
.wd-nav-tabs .wd-nav-link {

    padding:
        11px 18px !important;

    border-radius:
        11px;

    color:
        var(--idb-text-2) !important;

    font-size:
        13px;

    font-weight:
        700;
}

.single-product-page
.wd-nav-tabs li.active
.wd-nav-link {

    background:
        #fff;

    color:
        var(--idb-primary) !important;

    box-shadow:
        0 5px 16px rgba(37, 65, 110, .08);
}

.single-product-page
.wd-nav-tabs .wd-nav-link:hover {

    color:
        var(--idb-primary) !important;
}


/* ==========================================================
   23. TAB CONTENT
   ========================================================== */

.single-product-page
.woocommerce-Tabs-panel {

    padding:
        32px 28px !important;

    color:
        var(--idb-text-2);

    font-size:
        15px;

    line-height:
        2;
}

.single-product-page
.woocommerce-Tabs-panel h2,

.single-product-page
.woocommerce-Tabs-panel h3 {

    color:
        var(--idb-text);

    font-weight:
        800;
}


/* ==========================================================
   24. ATTRIBUTES
   ========================================================== */

.single-product-page
.shop_attributes {

    overflow:
        visible;
}

.single-product-page
.shop_attributes tr {

    padding:
        15px 17px !important;

    margin-bottom:
        8px !important;

    border:
        1px solid var(--idb-border) !important;

    border-radius:
        13px;

    background:
        var(--idb-surface-soft);
}

.single-product-page
.shop_attributes th {

    color:
        var(--idb-text);

    font-weight:
        700;
}

.single-product-page
.shop_attributes td {

    color:
        var(--idb-text-2);
}


/* ==========================================================
   25. REVIEWS
   ========================================================== */

.single-product-page
.woocommerce-Reviews {

    color:
        var(--idb-text-2);
}

.single-product-page
.commentlist > li {

    padding:
        20px;

    border:
        1px solid var(--idb-border);

    border-radius:
        16px;

    background:
        #fff;

    box-shadow:
        var(--idb-shadow-sm);
}

.single-product-page
.star-rating {

    color:
        #f7b731;
}


/* ==========================================================
   26. RELATED PRODUCTS
   ========================================================== */

.single-product-page
.related-products,

.single-product-page
.related {

    margin-top:
        70px;
}

.single-product-page
.related .wd-el-title,

.single-product-page
.related-products .wd-el-title {

    color:
        var(--idb-text);

    font-size:
        26px;

    font-weight:
        800;
}


/* cards */

.single-product-page
.wd-products
.wd-product {

    border:
        1px solid var(--idb-border);

    border-radius:
        20px;

    background:
        #fff;

    overflow:
        hidden;

    box-shadow:
        var(--idb-shadow-sm);

    transition:
        transform var(--idb-transition),
        box-shadow var(--idb-transition),
        border-color var(--idb-transition);
}

.single-product-page
.wd-products
.wd-product:hover {

    transform:
        translateY(-5px);

    border-color:
        #d7e5ff;

    box-shadow:
        var(--idb-shadow-hover);
}


/* product image */

.single-product-page
.wd-products
.product-image-link img {

    transition:
        transform .4s ease;
}

.single-product-page
.wd-products
.wd-product:hover
.product-image-link img {

    transform:
        scale(1.035);
}


/* ==========================================================
   27. NOTICE / ERRORS
   ========================================================== */

.single-product-page
.woocommerce-message,

.single-product-page
.woocommerce-info,

.single-product-page
.woocommerce-error {

    padding:
        16px 20px;

    border:
        1px solid var(--idb-border);

    border-radius:
        14px;

    background:
        #fff;

    box-shadow:
        var(--idb-shadow-sm);
}

.single-product-page
.woocommerce-message {

    border-right:
        4px solid var(--idb-success);
}

.single-product-page
.woocommerce-error {

    border-right:
        4px solid var(--idb-danger);
}


/* ==========================================================
   28. LITTLE POLISH
   ========================================================== */

.single-product-page
button,

.single-product-page
.btn {

    font-family:
        inherit;
}

.single-product-page
img {

    -webkit-user-drag:
        none;
}


/* better scrollbar */

.single-product-page * {

    scrollbar-width:
        thin;

    scrollbar-color:
        #cbd8ee transparent;
}


/* ==========================================================
   29. DESKTOP
   ========================================================== */

@media (min-width: 1025px) {

    .single-product-page
    .wd-single-add-cart {

        text-align:
            right !important;
    }

    .single-product-page
    .tc-extra-product-options {

        padding:
            28px !important;
    }

    .single-product-page
    .woocommerce-tabs {

        padding:
            12px;
    }

}


/* ==========================================================
   30. TABLET
   ========================================================== */

@media (max-width: 1024px) {

    .single-product-page
    .wd-single-title
    .product_title {

        font-size:
            30px !important;
    }

    .single-product-page
    .tc-extra-product-options {

        padding:
            22px !important;
    }

    .single-product-page
    .woocommerce-Tabs-panel {

        padding:
            25px 20px !important;
    }

}


/* ==========================================================
   31. MOBILE
   ========================================================== */

@media (max-width: 767px) {

    body.single-product {

        background:
            #f8faff;
    }


    /* Title */

    .single-product-page
    .wd-single-title
    .product_title {

        font-size:
            24px !important;

        line-height:
            1.5 !important;
    }

    .single-product-page
    .wd-single-title
    .product_title::after {

        width:
            42px;

        height:
            4px;

        margin-top:
            11px;
    }


    /* Gallery */

    .single-product-page
    .wd-gallery-images,

    .single-product-page
    .woocommerce-product-gallery {

        padding:
            13px;

        border-radius:
            20px;
    }


    /* Options */

    .single-product-page
    .tc-extra-product-options {

        padding:
            16px !important;

        border-radius:
            18px;
    }


    .single-product-page
    .tm-section-description {

        padding:
            15px !important;

        border-radius:
            14px;
    }

    .single-product-page
    .tm-section-description p {

        font-size:
            13px;

        line-height:
            2 !important;
    }


    /* Inputs */

    .single-product-page
    .tmcp-field,

    .single-product-page
    input[type="text"],

    .single-product-page
    input[type="email"],

    .single-product-page
    input[type="tel"],

    .single-product-page
    select {

        min-height:
            52px;
    }


    /* Cart */

    .single-product-page
    form.cart {

        gap:
            10px !important;
    }


    /* quantity */

    .single-product-page
    form.cart
    .quantity {

        width:
            100%;

        justify-content:
            center;
    }

    .single-product-page
    .quantity input.qty {

        flex:
            1;
    }


    /* Buy button */

    .single-product-page
    .single_add_to_cart_button {

        width:
            100% !important;

        min-height:
            58px !important;

        font-size:
            15px !important;
    }


    /* Price */

    .single-product-page
    .wd-single-price
    .price {

        font-size:
            26px !important;
    }


    /* meta */

    .single-product-page
    .product_meta {

        padding:
            13px;

        border-radius:
            12px;
    }


    /* tabs */

    .single-product-page
    .woocommerce-tabs {

        padding:
            5px;

        border-radius:
            19px;
    }

    .single-product-page
    .wd-nav-tabs-wrapper {

        overflow-x:
            auto;

        padding:
            5px;
    }

    .single-product-page
    .wd-nav-tabs {

        flex-wrap:
            nowrap;

        width:
            max-content;
    }

    .single-product-page
    .wd-nav-tabs
    .wd-nav-link {

        padding:
            10px 14px !important;

        white-space:
            nowrap;
    }

    .single-product-page
    .woocommerce-Tabs-panel {

        padding:
            20px 14px !important;
    }

}


/* ==========================================================
   32. MOTION
   ========================================================== */

@media (prefers-reduced-motion: no-preference) {

    .single-product-page
    .wd-single-title,

    .single-product-page
    .wd-single-add-cart,

    .single-product-page
    .wd-gallery-images {

        animation:
            idbFadeUp .55s both;
    }

    .single-product-page
    .wd-single-add-cart {

        animation-delay:
            .08s;
    }

    @keyframes idbFadeUp {

        from {
            opacity: 0;
            transform: translateY(14px);
        }

        to {
            opacity: 1;
            transform: translateY(0);
        }

    }

}/* End custom CSS */