.elementor-318 .elementor-element.elementor-element-9835101{--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:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-318 .elementor-element.elementor-element-416971d{--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-318 .elementor-element.elementor-element-1388323{--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;--padding-top:15px;--padding-bottom:0px;--padding-left:30px;--padding-right:0px;}.elementor-widget-woocommerce-product-title .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-318 .elementor-element.elementor-element-adb1ffe{text-align:start;}.elementor-318 .elementor-element.elementor-element-adb1ffe .elementor-heading-title{font-family:"Inter", Sans-serif;font-size:20px;font-weight:700;color:#000000;}.woocommerce .elementor-widget-woocommerce-product-price .price{color:var( --e-global-color-primary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-318 .elementor-element.elementor-element-a1daf7e{padding:0px 0px 0px 0px;}.elementor-widget-woocommerce-product-meta .product_meta .detail-container:not(:last-child):after{border-color:var( --e-global-color-text );}.elementor-widget-woocommerce-product-add-to-cart .added_to_cart{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-318 .elementor-element.elementor-element-f7608dc .cart button, .elementor-318 .elementor-element.elementor-element-f7608dc .cart .button{transition:all 0.2s;}.elementor-318 .elementor-element.elementor-element-f7608dc .quantity .qty{transition:all 0.2s;}.elementor-318 .elementor-element.elementor-element-6fe62cb{--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-widget-woocommerce-product-related.elementor-wc-products ul.products li.product .woocommerce-loop-product__title{color:var( --e-global-color-primary );}.elementor-widget-woocommerce-product-related.elementor-wc-products ul.products li.product .woocommerce-loop-category__title{color:var( --e-global-color-primary );}.elementor-widget-woocommerce-product-related.elementor-wc-products ul.products li.product .woocommerce-loop-product__title, .elementor-widget-woocommerce-product-related.elementor-wc-products ul.products li.product .woocommerce-loop-category__title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-product-related.elementor-wc-products ul.products li.product .price{color:var( --e-global-color-primary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-product-related.elementor-wc-products ul.products li.product .price ins{color:var( --e-global-color-primary );}.elementor-widget-woocommerce-product-related.elementor-wc-products ul.products li.product .price ins .amount{color:var( --e-global-color-primary );}.elementor-widget-woocommerce-product-related.elementor-wc-products ul.products li.product .price del{color:var( --e-global-color-primary );}.elementor-widget-woocommerce-product-related.elementor-wc-products ul.products li.product .price del .amount{color:var( --e-global-color-primary );}.elementor-widget-woocommerce-product-related.elementor-wc-products ul.products li.product .price del {font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-product-related.elementor-wc-products ul.products li.product .button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-woocommerce-product-related.elementor-wc-products .added_to_cart{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.woocommerce .elementor-widget-woocommerce-product-related.elementor-wc-products .products > h2{color:var( --e-global-color-primary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-318 .elementor-element.elementor-element-affd154.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}.elementor-318 .elementor-element.elementor-element-affd154.elementor-wc-products ul.products li.product span.onsale{display:block;}.elementor-318 .elementor-element.elementor-element-affd154{padding:0px 0px 0px 0px;}@media(min-width:768px){.elementor-318 .elementor-element.elementor-element-416971d{--width:45%;}.elementor-318 .elementor-element.elementor-element-1388323{--width:50%;}}@media(max-width:1024px){.elementor-318 .elementor-element.elementor-element-affd154.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}}@media(max-width:767px){.elementor-318 .elementor-element.elementor-element-affd154.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}}/* Start custom CSS *//*
==================================================================
LFO SINGLE PRODUCT PAGE - ELEMENTOR PRO TEMPLATE V3 FINAL
Comprehensive styling with custom font sizes
==================================================================
*/

/* ============================================
   BODY & GLOBAL CONTAINER
   ============================================ */

body.single-product {
    background: linear-gradient(135deg, #f8fbff 0%, #ffffff 100%) !important;
}

/* Remove any Elementor default backgrounds */
body.single-product .elementor,
body.single-product .elementor-section,
body.single-product .elementor-inner-section {
    background: transparent !important;
}

/* Main Elementor page wrapper */
body.single-product .elementor-page {
    max-width: 100% !important;
    padding: 0 !important;
}

/* ============================================
   MAIN PRODUCT SECTION CONTAINER
   ============================================ */

/* Target the top-level section containing product widgets */
body.single-product .elementor-location-single .elementor-section:first-child > .elementor-container,
body.single-product .elementor-widget-woocommerce-product-images:first-child {
    max-width: 1400px !important;
    background: #ffffff !important;
    border: 1px solid #e7edf5 !important;
    border-radius: 20px !important;
    box-shadow: 0 12px 34px rgba(15, 23, 42, 0.05) !important;
    padding: 20px !important;
    margin: 20px auto !important;
}

/* Ensure inner sections don't override */
body.single-product .elementor-section .elementor-inner-section > .elementor-container {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

/* ============================================
   PRODUCT IMAGES WIDGET - FIXED
   ============================================ */

body.single-product .elementor-widget-woocommerce-product-images {
    background: transparent !important;
    margin-bottom: 0 !important;
}

/* Main gallery shell */
body.single-product .woocommerce-product-gallery,
body.single-product .elementor-widget-woocommerce-product-images .woocommerce-product-gallery {
    background: #eef4fb !important;
    border-radius: 16px !important;
    padding: 40px !important;
    margin: 0 !important;
    overflow: hidden !important;
    position: relative !important;
}

/* IMPORTANT: do not force WooCommerce slider structure */
body.single-product .woocommerce-product-gallery__wrapper {
    background: transparent !important;
    margin: 0 !important;
}

/* Keep viewport stable */
body.single-product .woocommerce-product-gallery .flex-viewport {
    margin: 0 0 20px 0 !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    background: transparent !important;
}

/* Main image */
body.single-product .woocommerce-product-gallery__image {
    margin: 0 !important;
}

body.single-product .woocommerce-product-gallery__image a {
    display: block !important;
    margin: 0 !important;
}

body.single-product .woocommerce-product-gallery__image img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    object-fit: contain !important;
    border-radius: 12px !important;
    margin: 0 !important;
    box-shadow: none !important;
}

/* Thumbnails */
body.single-product .flex-control-thumbs {
    display: flex !important;
    gap: 12px !important;
    margin: 20px 0 0 0 !important;
    padding: 0 !important;
    list-style: none !important;
    flex-wrap: wrap !important;
    justify-content: flex-start !important;
}

body.single-product .flex-control-thumbs li {
    flex: 0 0 calc(20% - 10px) !important;
    margin: 0 !important;
    max-width: 120px !important;
}

body.single-product .flex-control-thumbs li img {
    display: block !important;
    width: 100% !important;
    height: 100px !important;
    object-fit: cover !important;
    border-radius: 8px !important;
    cursor: pointer !important;
    border: 2px solid transparent !important;
    transition: all 0.25s ease !important;
    opacity: 1 !important;
}

body.single-product .flex-control-thumbs li img:hover,
body.single-product .flex-control-thumbs li.flex-active img {
    border-color: #2563eb !important;
}

/* Sale badge */
body.single-product span.onsale {
    position: absolute !important;
    top: 20px !important;
    left: 20px !important;
    background: linear-gradient(135deg, #2563eb, #0f172a) !important;
    color: #fff !important;
    font-size: 1.18rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.1em !important;
    text-transform: uppercase !important;
    padding: 10px 18px !important;
    border-radius: 999px !important;
    z-index: 10 !important;
    line-height: 1 !important;
    margin: 0 !important;
}

/* ============================================
   PRODUCT TITLE WIDGET
   ============================================ */

body.single-product .elementor-widget-woocommerce-product-title {
    background: transparent !important;
    margin-bottom: 10px !important;
    margin-top: 20px !important;
}

body.single-product .elementor-widget-woocommerce-product-title .product_title,
body.single-product .elementor-widget-woocommerce-product-title h1.product_title,
body.single-product h1.product_title {
    font-size: clamp(2rem, 3vw, 2.8rem) !important;
    line-height: 1.3 !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    margin: 0 0 15px 0 !important;
    padding: 0 0 15px 0 !important;
    border-bottom: 1px solid #f1f5f9 !important;
}

/* ============================================
   PRODUCT PRICE WIDGET
   ============================================ */

body.single-product .elementor-widget-woocommerce-product-price {
    background: transparent !important;
}

body.single-product .elementor-widget-woocommerce-product-price .price,
body.single-product .elementor-widget-woocommerce-product-price p.price,
body.single-product p.price {
    font-size: 2.5rem !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    text-align: left !important;
}

body.single-product .price del,
body.single-product p.price del {
    color: #94a3b8 !important;
    font-size: 1.8rem !important;
    font-weight: 500 !important;
    margin-right: 15px !important;
    text-decoration: line-through !important;
}

body.single-product .price ins,
body.single-product p.price ins {
    color: #2563eb !important;
    text-decoration: none !important;
    font-weight: 700 !important;
}

/* ============================================
   PRODUCT SHORT DESCRIPTION
   ============================================ */

body.single-product .elementor-widget-theme-post-excerpt,
body.single-product .woocommerce-product-details__short-description {
    font-size: 1.58rem !important;
    line-height: 1.8 !important;
    color: #475569 !important;
    margin: 0 0 15px 0 !important;
    padding: 15px 0 !important;
}

/* ============================================
   PRODUCT META WIDGET (Categories/Tags)
   ============================================ */

body.single-product .elementor-widget-woocommerce-product-meta {
    background: transparent !important;
    margin-bottom: 10px !important;
}

body.single-product .elementor-widget-woocommerce-product-meta .product_meta,
body.single-product .product_meta {
    padding: 15px 0 !important;
    border-top: 1px solid #e7edf5 !important;
    border-bottom: 1px solid #e7edf5 !important;
    margin: 15px 0 !important;
    font-size: 1.3rem !important;
    color: #64748b !important;
}

body.single-product .product_meta > span {
    display: block !important;
    margin-bottom: 8px !important;
    line-height: 1.8 !important;
}

body.single-product .product_meta a {
    color: #2563eb !important;
    text-decoration: none !important;
    margin-right: 8px !important;
}

body.single-product .product_meta a:hover {
    text-decoration: underline !important;
}

/* ============================================
   ADD TO CART WIDGET
   ============================================ */

body.single-product .elementor-widget-woocommerce-product-add-to-cart {
    background: transparent !important;
    margin-bottom: 15px !important;
}

body.single-product .elementor-widget-woocommerce-product-add-to-cart form.cart,
body.single-product form.cart {
    display: flex !important;
    align-items: center !important;
    gap: 20px !important;
    margin: 15px 0 !important;
}

/* Quantity body.elementor-page-318 */
body.single-product .quantity {
    display: flex !important;
    align-items: center !important;
    border: 1px solid #dbe3ee !important;
    border-radius: 8px !important;
    overflow: hidden !important;
    background: #fff !important;
}

body.single-product .quantity input.qty {
    width: 80px !important;
    padding: 16px 14px !important;
    border: none !important;
    text-align: center !important;
    font-size: 1.2rem !important;
    font-weight: 600 !important;
    color: #0f172a !important;
    outline: none !important;
    background: transparent !important;
}

/* Add to Cart Button */
body.single-product .single_add_to_cart_button,
body.single-product button.single_add_to_cart_button,
body.single-product .elementor-widget-woocommerce-product-add-to-cart .single_add_to_cart_button {
    flex: 1 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 60px !important;
    padding: 20px 40px !important;
    background: linear-gradient(135deg, #0f172a, #2563eb) !important;
    color: #fff !important;
    font-size: 1.58rem !important;
    font-weight: 600 !important;
    border: none !important;
    border-radius: 999px !important;
    cursor: pointer !important;
    transition: all 0.25s ease !important;
    text-decoration: none !important;
    text-transform: none !important;
}

body.single-product .single_add_to_cart_button:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 20px rgba(37, 99, 235, 0.3) !important;
    background: linear-gradient(135deg, #1e293b, #3b82f6) !important;
}

/* ============================================
   PRODUCT TABS / DATA TABS WIDGET
   ============================================ */

body.single-product .elementor-widget-woocommerce-product-data-tabs {
    margin-top: 30px !important;
}

body.single-product .elementor-widget-woocommerce-product-data-tabs .woocommerce-tabs,
body.single-product .woocommerce-tabs {
    background: #ffffff !important;
    border: 1px solid #e7edf5 !important;
    border-radius: 20px !important;
    box-shadow: 0 12px 34px rgba(15, 23, 42, 0.05) !important;
    padding: 40px !important;
    margin-top: 20px !important;
}

body.single-product .woocommerce-tabs ul.tabs {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 0 30px 0 !important;
    display: flex !important;
    gap: 8px !important;
    border-bottom: 2px solid #e7edf5 !important;
}

body.single-product .woocommerce-tabs ul.tabs li {
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
}

body.single-product .woocommerce-tabs ul.tabs li a {
    display: block !important;
    padding: 14px 24px !important;
    color: #64748b !important;
    text-decoration: none !important;
    font-size: 1.58rem !important;
    font-weight: 600 !important;
    border-radius: 8px 8px 0 0 !important;
    transition: all 0.25s ease !important;
    background: transparent !important;
}

body.single-product .woocommerce-tabs ul.tabs li.active a,
body.single-product .woocommerce-tabs ul.tabs li a:hover {
    color: #2563eb !important;
    background: #f8fbff !important;
}

body.single-product .woocommerce-tabs .woocommerce-Tabs-panel {
    font-size: 1.3rem !important;
    line-height: 1.8 !important;
    color: #475569 !important;
}

body.single-product .woocommerce-tabs h2 {
    font-size: 1.8rem !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    margin: 0 0 20px 0 !important;
}

/* ============================================
   RELATED PRODUCTS WIDGET
   ============================================ */

body.single-product .elementor-widget-woocommerce-product-related {
    margin-top: 40px !important;
}

body.single-product .elementor-widget-woocommerce-product-related .related.products,
body.single-product section.related,
body.single-product .related.products {
    margin-top: 40px !important;
    clear: both !important;
}

body.single-product .related.products h2 {
    font-size: 2.5rem !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    text-align: center !important;
    margin-bottom: 50px !important;
}

body.single-product .related.products ul.products {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 24px !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
}

/* Related Product Cards - Match Archive Style */
body.single-product .related.products li.product {
    background: #ffffff !important;
    border: 1px solid #e7edf5 !important;
    border-radius: 20px !important;
    box-shadow: 0 12px 34px rgba(15, 23, 42, 0.05) !important;
    padding: 24px !important;
    text-align: center !important;
    transition: all 0.3s ease !important;
    display: flex !important;
    flex-direction: column !important;
    float: none !important;
    clear: none !important;
    width: 100% !important;
}

body.single-product .related.products li.product:hover {
    transform: translateY(-6px) !important;
    box-shadow: 0 20px 50px rgba(15, 23, 42, 0.12) !important;
    border-color: #2563eb !important;
}

body.single-product .related.products li.product img {
    width: 100% !important;
    height: 220px !important;
    object-fit: contain !important;
    border-radius: 12px !important;
    background: #eef4fb !important;
    padding: 10px !important;
    margin-bottom: 16px !important;
}

body.single-product .related.products li.product h2,
body.single-product .related.products li.product .woocommerce-loop-product__title {
    font-size: 1.58rem !important;
    line-height: 1.4 !important;
    font-weight: 600 !important;
    color: #0f172a !important;
    margin: 0 0 12px 0 !important;
    min-height: 70px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

body.single-product .related.products li.product .price {
    font-size: 1.58rem !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    margin: auto 0 16px 0 !important;
}

body.single-product .related.products li.product .button,
body.single-product .related.products li.product a.add_to_cart_button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    padding: 14px 24px !important;
    background: linear-gradient(135deg, #0f172a, #2563eb) !important;
    color: #fff !important;
    font-size: 1.58rem !important;
    font-weight: 600 !important;
    border: none !important;
    border-radius: 999px !important;
    text-decoration: none !important;
    transition: all 0.25s ease !important;
}

body.single-product .related.products li.product .button:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 20px rgba(37, 99, 235, 0.3) !important;
}

/* ============================================
   ELEMENTOR COLUMN & SPACING FIXES
   ============================================ */

/* Remove default Elementor column padding that might interfere */
body.single-product .elementor-column-gap-default > .elementor-column > .elementor-element-populated {
    padding: 20px !important;
}

/* Ensure widgets don't have extra margins */
body.single-product .elementor-widget-wrap > .elementor-element {
    margin-bottom: 0 !important;
}

/* ============================================
   MOBILE RESPONSIVE
   ============================================ */

@media (max-width: 768px) {
    body.single-product .elementor-location-single .elementor-section:first-child > .elementor-container {
        padding: 24px !important;
        margin: 20px !important;
    }
    
    body.single-product .woocommerce-product-gallery {
        padding: 20px !important;
        min-height: 300px !important;
    }
    
    body.single-product h1.product_title {
        font-size: 1.6rem !important;
    }
    
    body.single-product p.price {
        font-size: 1.8rem !important;
    }
    
    body.single-product form.cart {
        flex-direction: column !important;
        align-items: stretch !important;
    }
    
    body.single-product .quantity {
        justify-content: center !important;
    }
    
    body.single-product .woocommerce-tabs {
        padding: 24px !important;
    }
    
    body.single-product .related.products ul.products {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 480px) {
    body.single-product .flex-control-thumbs {
        flex-wrap: wrap !important;
    }
    
    body.single-product .flex-control-thumbs li {
        flex: 0 0 calc(25% - 9px) !important;
    }
}/* End custom CSS */