/**
 * Kanhaji Masale - Global Side-Cart Drawer & Mobile Responsive Architecture
 * Version: 1.3.0
 */

/* ==========================================================================
   1. GLOBAL CART DRAWER & "VIEW MORE" SUPPRESSION (ALL DEVICES)
   ========================================================================== */

/* Completely hide the WooCommerce "View Cart" / "View More" link that injects onto buttons */
.added_to_cart,
a.added_to_cart,
a.added_to_cart.wc-forward,
.add-cart .added_to_cart,
.product-block-list .add-cart .added_to_cart,
.product-block.grid .add-cart > .added_to_cart,
.product-block.list .right-content .add-cart .added_to_cart,
.woocommerce div.product form.cart .added_to_cart {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

/* Global Root Offcanvas Cart Drawer Styles */
#kanhaji-global-cart-drawer {
    display: block !important;
}

#kanhaji-global-cart-drawer .offcanvas-content {
    position: fixed !important;
    top: 0 !important;
    right: 0 !important;
    width: 420px !important;
    max-width: 90vw !important;
    height: 100vh !important;
    background: #ffffff !important;
    z-index: 999999 !important;
    box-shadow: -5px 0 25px rgba(0, 0, 0, 0.25) !important;
    transform: translateX(100%) !important;
    transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.3s ease !important;
    opacity: 0 !important;
    visibility: hidden !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
}

#kanhaji-global-cart-drawer .offcanvas-content.active {
    transform: translateX(0) !important;
    opacity: 1 !important;
    visibility: visible !important;
}

#kanhaji-global-cart-drawer .overlay-offcanvas-content {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    background: rgba(0, 0, 0, 0.55) !important;
    backdrop-filter: blur(2px) !important;
    -webkit-backdrop-filter: blur(2px) !important;
    z-index: 999998 !important;
    opacity: 0 !important;
    visibility: hidden !important;
    transition: opacity 0.3s ease, visibility 0.3s ease !important;
}

#kanhaji-global-cart-drawer .overlay-offcanvas-content.active {
    opacity: 1 !important;
    visibility: visible !important;
}

/* Universal Mini-Cart Header & Unobstructed Close Button */
.goal-topcart .offcanvas-content .title-cart-canvas,
#kanhaji-global-cart-drawer .title-cart-canvas {
    font-size: 17px !important;
    font-weight: 700 !important;
    margin: 0 !important;
    padding: 16px 50px 16px 20px !important;
    background-color: var(--ecosoap-theme-color, #31503c) !important;
    color: #ffffff !important;
    position: relative !important;
    display: block !important;
    text-align: left !important;
    letter-spacing: 0.5px !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.15) !important;
}

.goal-topcart .offcanvas-content .title-cart-canvas .close-cart,
#kanhaji-global-cart-drawer .close-cart {
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    right: 16px !important;
    left: auto !important;
    font-size: 22px !important;
    cursor: pointer !important;
    color: #ffffff !important;
    padding: 6px 10px !important;
    border-radius: 4px !important;
    z-index: 10 !important;
    line-height: 1 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: background-color 0.2s ease, transform 0.2s ease !important;
}

.goal-topcart .offcanvas-content .title-cart-canvas .close-cart:hover,
#kanhaji-global-cart-drawer .close-cart:hover {
    background: rgba(255, 255, 255, 0.2) !important;
    transform: translateY(-50%) scale(1.1) !important;
}

#kanhaji-global-cart-drawer .close-cart:hover {
    background: rgba(255, 255, 255, 0.2) !important;
}

#kanhaji-global-cart-drawer .widget_shopping_cart_content {
    flex: 1 1 auto !important;
    height: calc(100% - 60px) !important;
    overflow-y: auto !important;
    padding: 15px 20px !important;
    display: flex !important;
    flex-direction: column !important;
}

#kanhaji-global-cart-drawer .shopping_cart_content {
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
}

#kanhaji-global-cart-drawer .cart_list {
    flex: 1 1 auto !important;
    overflow-y: auto !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

#kanhaji-global-cart-drawer .cart-bottom {
    margin-top: auto !important;
    padding-top: 15px !important;
    border-top: 1px solid #eee !important;
}

body.cart-drawer-open {
    overflow: hidden !important;
}

/* ==========================================================================
   2. PRODUCT PAGES HEADER RESTORATION ("DESIGN HAS GONE UP" FIX)
   ========================================================================== */

/* Single Product Pages Desktop Header Normalization */
body.single-product #goal-header,
body.single-product.header_transparent #goal-header,
body.single-product .goal-header,
body.woocommerce-page.single-product .goal-header {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    width: 100% !important;
    background-color: rgba(49, 80, 60, 0.90) !important;
    backdrop-filter: blur(10px) saturate(140%) !important;
    -webkit-backdrop-filter: blur(10px) saturate(140%) !important;
    z-index: 10 !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.15) !important;
}

body.single-product .goal-header .elementor-section,
body.single-product .goal-header .main-sticky-header,
body.single-product .goal-header .main-sticky-header-wrapper,
body.single-product .goal-header .elementor-element,
body.single-product .goal-header .e-con,
body.single-product .goal-header .e-con-inner {
    background: transparent !important;
    background-color: transparent !important;
}

/* Single Product Breadcrumb & Main Container Proper Flow */
body.single-product .goal-breadcrumb {
    background-color: #2d5339 !important;
    color: #ffffff !important;
    padding: 12px 0 !important;
    margin-bottom: 20px !important;
    position: relative !important;
    z-index: 5 !important;
}

body.single-product .goal-breadcrumb a {
    color: rgba(255, 255, 255, 0.85) !important;
}

body.single-product .goal-breadcrumb a:hover {
    color: #ffffff !important;
}

body.single-product #main-container,
body.single-product .main-content {
    margin-top: 0 !important;
    padding-top: 15px !important;
    clear: both !important;
}

/* ==========================================================================
   3. MOBILE BOTTOM NAVIGATION REMOVAL (PREVENTS PROCEED TO CHECKOUT COLLISION)
   ========================================================================== */

/* Completely hide and eliminate the bottom mobile footer bar across all mobile pages */
.goal-footer-mobile,
#goal-footer-mobile,
.footer-mobile,
div[class*="goal-footer-mobile"] {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    pointer-events: none !important;
    overflow: hidden !important;
    border: none !important;
}

/* Remove bottom padding on body previously reserved for the mobile footer */
body.body-footer-mobile,
body {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}

/* Cart Page Breathing Room & Unobstructed Proceed to Checkout Button */
.woocommerce-cart .wc-proceed-to-checkout {
    padding-bottom: 30px !important;
    margin-bottom: 30px !important;
    position: relative !important;
    z-index: 10 !important;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
    display: block !important;
    width: 100% !important;
    padding: 14px 20px !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    border-radius: 8px !important;
    text-align: center !important;
}

/* ==========================================================================
   4. OFFCANVAS MOBILE DRAWER TYPOGRAPHY & LOGO NORMALIZATION
   ========================================================================== */

/* Constrain Drawer Logo Proportion */
#goal-mobile-menu .header-offcanvas .logo img {
    max-width: 95px !important;
    max-height: 33px !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
    margin: 0 auto !important;
    display: block !important;
}

#goal-mobile-menu .header-offcanvas {
    padding: 12px 15px !important;
    border-bottom: 1px solid #efeae1 !important;
}

/* Offcanvas Menu Container */
#goal-mobile-menu .middle-offcanvas {
    padding: 10px 0 !important;
}

#goal-mobile-menu #mobile-menu-container ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

#goal-mobile-menu #mobile-menu-container ul > li {
    border-bottom: 1px solid #f2ede5 !important;
    position: relative !important;
    margin: 0 !important;
    display: block !important;
    width: 100% !important;
}

/* Uniform Navigation Typography - Resolves giant "BLOG" font */
#goal-mobile-menu #mobile-menu-container ul > li > a,
#goal-mobile-menu #mobile-menu-container ul > li > a:visited,
#goal-mobile-menu .middle-offcanvas .my-account {
    font-size: 14px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.6px !important;
    color: #2c2c2c !important;
    line-height: 1.4 !important;
    padding: 14px 20px !important;
    display: flex !important;
    align-items: center !important;
    text-decoration: none !important;
    border: none !important;
    background: transparent !important;
}

#goal-mobile-menu #mobile-menu-container ul > li.active > a,
#goal-mobile-menu #mobile-menu-container ul > li > a:hover,
#goal-mobile-menu .middle-offcanvas .my-account:hover {
    color: var(--ecosoap-theme-color, #31503c) !important;
}

/* My Account Link inside Drawer */
#goal-mobile-menu .middle-offcanvas .my-account {
    border-top: 1px solid #f2ede5 !important;
    border-bottom: 1px solid #f2ede5 !important;
    margin-top: 0 !important;
}

/* Drawer Submenu Dropdowns */
#goal-mobile-menu #mobile-menu-container ul.sub-menu {
    background-color: #faf7f2 !important;
    padding: 4px 0 !important;
    border-top: 1px solid #eee8df !important;
}

#goal-mobile-menu #mobile-menu-container ul.sub-menu li {
    border-bottom: 1px solid rgba(0, 0, 0, 0.04) !important;
}

#goal-mobile-menu #mobile-menu-container ul.sub-menu li:last-child {
    border-bottom: none !important;
}

#goal-mobile-menu #mobile-menu-container ul.sub-menu li a {
    font-size: 13px !important;
    font-weight: 500 !important;
    text-transform: capitalize !important;
    padding: 10px 20px 10px 32px !important;
    color: #555555 !important;
    display: block !important;
    border: none !important;
}

#goal-mobile-menu #mobile-menu-container ul.sub-menu li a:hover {
    color: var(--ecosoap-theme-color, #31503c) !important;
}

/* Submenu Toggle Chevron / Plus */
#goal-mobile-menu #mobile-menu-container .icon-toggle {
    position: absolute !important;
    top: 6px !important;
    right: 12px !important;
    padding: 10px !important;
    cursor: pointer !important;
    color: #888888 !important;
    z-index: 5 !important;
    line-height: 1 !important;
}

#goal-mobile-menu #mobile-menu-container .icon-toggle:hover {
    color: var(--ecosoap-theme-color, #31503c) !important;
}

/* Offcanvas Drawer Bottom Contact & Social Box */
#goal-mobile-menu .header-mobile-bottom {
    padding: 16px 20px !important;
    border-top: 1px solid #efeae1 !important;
    background-color: #faf7f2 !important;
}

#goal-mobile-menu .header-mobile-bottom p {
    margin-bottom: 6px !important;
    font-size: 13px !important;
    color: #555555 !important;
}

/* ==========================================================================
   5. MOBILE RESPONSIVE TYPOGRAPHY & LAYOUT (SCREEN WIDTH <= 767px)
   ========================================================================== */

@media (max-width: 767px) {
    /* --- Slider Revolution 7 Mobile Headline & Viewport Fix --- */
    sr7-module[data-alias="slider-1"],
    sr7-content,
    sr7-slide {
        max-width: 100vw !important;
        overflow-x: clip !important;
    }

    sr7-module[data-alias="slider-1"] sr7-txt,
    sr7-txt.sr7-layer,
    sr7-txt {
        font-size: 26px !important;
        line-height: 1.25 !important;
        max-width: 90vw !important;
        white-space: normal !important;
        text-align: center !important;
        word-break: keep-all !important;
    }


    /* --- Root Viewport Protection --- */
    html, body {
        overflow-x: hidden !important;
        max-width: 100vw !important;
        width: 100% !important;
    }

    #wrapper-container,
    .wrapper-container,
    .site-content {
        overflow-x: clip !important;
        max-width: 100% !important;
    }

    /* --- Mobile Header & Logo Sizing --- */
    #goal-header-mobile .logo img {
        max-height: 33px !important;
        width: auto !important;
        max-width: 160px !important;
        object-fit: contain !important;
    }

    /* Top Left Hamburger Button (.btn-showmenu) */
    #goal-header-mobile .btn-showmenu {
        font-size: 20px !important;
        color: #2b2b2b !important;
        padding: 8px 10px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    /* --- Slider Revolution Mobile Typography & Word Wrapping Fix --- */
    rs-layer,
    rs-layer-wrap,
    .rev_slider .tp-caption {
        word-break: keep-all !important;
        overflow-wrap: normal !important;
        hyphens: none !important;
        white-space: normal !important;
    }
    
    rs-layer[data-type="text"] {
        font-size: 24px !important;
        line-height: 1.25 !important;
    }

    /* --- Global Typography Scale (Scaled to prevent oversized mobile text) --- */
    h1,
    .elementor-heading-title.elementor-size-xl,
    .elementor-widget-heading h1 {
        font-size: 21px !important;
        line-height: 1.25 !important;
        letter-spacing: -0.01em !important;
    }

    h2,
    .elementor-heading-title.elementor-size-large,
    .elementor-widget-heading h2 {
        font-size: 18px !important;
        line-height: 1.3 !important;
    }

    h3,
    .elementor-heading-title.elementor-size-medium,
    .elementor-widget-heading h3 {
        font-size: 16px !important;
        line-height: 1.35 !important;
    }

    h4, h5, h6 {
        font-size: 14px !important;
        line-height: 1.4 !important;
    }

    p, .elementor-text-editor {
        font-size: 13.5px !important;
        line-height: 1.55 !important;
    }

    /* --- Feature Boxes (Circular Icons Scaling) --- */
    .widget-features-box .feature-box .icon,
    .widget-features-box .feature-box i,
    .ecosoap-features-box .icon,
    .ecosoap-features-box i,
    .elementor-widget-ecosoap_features_box .feature-box .icon {
        font-size: 34px !important;
        line-height: 1 !important;
    }

    .widget-features-box .feature-box .title,
    .ecosoap-features-box .title,
    .elementor-widget-ecosoap_features_box .feature-box .title {
        font-size: 11px !important;
        font-weight: 600 !important;
        margin-top: 6px !important;
        letter-spacing: 0.5px !important;
    }

    /* --- 3 Category Banners (Magic Masala, Sambhar, Chai) --- */
    .widget-banner.style3 .content-banner {
        height: 260px !important;
        background-position: center right !important;
        background-size: cover !important;
    }

    .widget-banner.style3 .inner {
        padding-left: 20px !important;
        padding-right: 15px !important;
    }

    .widget-banner.style3 .sub-title {
        font-size: 11px !important;
        letter-spacing: 0.5px !important;
    }

    .widget-banner.style3 .title1 {
        font-size: 19px !important;
        line-height: 1.25 !important;
        margin-top: 4px !important;
        margin-bottom: 12px !important;
    }

    .widget-banner.style3 .link-bottom .btn {
        padding: 6px 14px !important;
        font-size: 10px !important;
    }

    /* --- Product Catalog & 2-Column Mobile Grid --- */
    .product-block.grid .product-title,
    .product-title {
        font-size: 13px !important;
        line-height: 1.3 !important;
        margin-bottom: 4px !important;
        display: -webkit-box !important;
        -webkit-line-clamp: 2 !important;
        -webkit-box-orient: vertical !important;
        overflow: hidden !important;
        height: 34px !important;
    }

    .product-block.grid .price,
    .price {
        font-size: 14px !important;
        margin-bottom: 6px !important;
    }

    /* Keep Add-to-Cart buttons within column bounds on phones */
    .product-block.grid .add-cart .button,
    .product-block.grid .add-cart [class*="product_type_"],
    .add-cart .add_to_cart_button,
    .product-block-list .add-cart a.button {
        padding: 7px 12px !important;
        font-size: 11px !important;
        gap: 0.3rem !important;
        white-space: nowrap !important;
        border-radius: 20px !important;
        max-width: 100% !important;
        justify-content: center !important;
    }

    /* Filter Tabs (All Items, Featured, Best Seller) */
    .tab-category-product .nav-tabs,
    .tab-category-product ul {
        display: flex !important;
        flex-wrap: wrap !important;
        justify-content: center !important;
        gap: 6px !important;
    }

    .tab-category-product .nav-tabs > li > a {
        padding: 6px 14px !important;
        font-size: 12px !important;
    }

    /* --- Single Product Page Mobile Optimization --- */
    .woocommerce div.product .product_title {
        font-size: 20px !important;
        line-height: 1.25 !important;
        margin-bottom: 8px !important;
    }

    .woocommerce div.product p.price,
    .woocommerce div.product span.price {
        font-size: 19px !important;
        margin-bottom: 12px !important;
    }

    .woocommerce div.product form.cart {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 10px !important;
        align-items: center !important;
    }

    .woocommerce div.product form.cart .quantity {
        margin-right: 0 !important;
    }

    .woocommerce div.product form.cart .button {
        flex: 1 1 auto !important;
        padding: 12px 20px !important;
        font-size: 13px !important;
        justify-content: center !important;
    }

    /* Product Tabs on Mobile */
    .woocommerce-tabs ul.tabs {
        padding-left: 0 !important;
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 8px !important;
    }

    .woocommerce-tabs ul.tabs li a {
        padding: 8px 14px !important;
        font-size: 13px !important;
    }

    /* --- About Us Page Mobile Polish --- */
    .page-id-322 .elementor-section {
        padding-left: 15px !important;
        padding-right: 15px !important;
    }

    .page-id-322 .elementor-heading-title {
        font-size: 21px !important;
        line-height: 1.25 !important;
    }

    /* Fix Staggered Dual Spice Images on Mobile */
    .elementor-element-3bed52b,
    .elementor-element-1f52f7d {
        max-width: 100% !important;
        transform: none !important;
        animation: none !important;
    }
}




/* ==========================================================================
   KANHAJI MASALE - UNIVERSAL HEADER & NAVBAR VISIBILITY FIX
   ========================================================================== */

/* 1. Translucent rich green navbar with frosted backdrop blur */
body:not(.home) #goal-header,
body:not(.home) .goal-header,
body.header_transparent:not(.home) #goal-header,
body.header_transparent:not(.home) .goal-header,
.main-sticky-header.sticky-header,
.main-sticky-header,
body:not(.home) #goal-header .elementor-element.elementor-element-6c351a3,
body.header_transparent:not(.home) #goal-header .elementor-element.elementor-element-6c351a3 {
    background-color: rgba(49, 80, 60, 0.90) !important;
    backdrop-filter: blur(10px) saturate(140%) !important;
    -webkit-backdrop-filter: blur(10px) saturate(140%) !important;
}

/* Ensure inner widgets and wrappers do not stack backgrounds */
#goal-header .elementor-widget,
#goal-header .elementor-widget-container,
#goal-header .logo,
#goal-header .main-sticky-header-wrapper {
    background: transparent !important;
    background-color: transparent !important;
}

/* 2. Primary Navigation Links: Crisp White text with Coral Red hover */
#goal-header .navbar-nav > li > a,
#goal-header .ecosoap-menu-primary > li > a,
#goal-header .megamenu > li > a,
#primary-menu > li > a {
    color: #FFFFFF !important;
    font-weight: 600 !important;
    font-size: 13.5px !important;
    letter-spacing: 0.5px !important;
    text-transform: uppercase !important;
    transition: color 0.2s ease !important;
}

#goal-header .navbar-nav > li > a:hover,
#goal-header .navbar-nav > li.active > a,
#goal-header .navbar-nav > li.current-menu-item > a,
#primary-menu > li > a:hover,
#primary-menu > li.current-menu-item > a {
    color: #EF5958 !important;
}

/* Dropdown arrow on Categories */
#goal-header .navbar-nav > li > a i.down,
#primary-menu > li > a i.down {
    color: #FFFFFF !important;
}
#goal-header .navbar-nav > li > a:hover i.down {
    color: #EF5958 !important;
}

/* Dropdown Menu styling */
#goal-header .dropdown-menu,
#primary-menu .dropdown-menu {
    background-color: #274030 !important;
    border: 1px solid rgba(255, 255, 255, 0.15) !important;
    border-radius: 8px !important;
    padding: 8px 0 !important;
    box-shadow: 0 10px 25px rgba(0,0,0,0.2) !important;
}

#goal-header .dropdown-menu > li > a,
#primary-menu .dropdown-menu > li > a {
    color: #FFFFFF !important;
    padding: 9px 20px !important;
    font-size: 13.5px !important;
    font-weight: 500 !important;
}

#goal-header .dropdown-menu > li > a:hover,
#primary-menu .dropdown-menu > li > a:hover {
    background-color: #31503C !important;
    color: #EF5958 !important;
}

/* 3. Action Icons (Wishlist Heart & Cart Bag): Bright White with Red badges */
#goal-header .header-action i,
#goal-header .header-action .icon,
#goal-header .header-action svg,
#goal-header .header-action a,
#goal-header .top-cart a i,
#goal-header .wishlist a i {
    color: #FFFFFF !important;
    fill: #FFFFFF !important;
    opacity: 1 !important;
    visibility: visible !important;
}

#goal-header .header-action i:hover,
#goal-header .header-action a:hover i {
    color: #EF5958 !important;
}

/* Ensure numeric counter badges remain vibrant coral red with white count numbers */
#goal-header .header-action .count,
#goal-header .header-action .mini-cart-items,
#goal-header .header-action .wishlist-count {
    background-color: #EF5958 !important;
    color: #FFFFFF !important;
    font-weight: 700 !important;
}

/* ==========================================================================
   KANHAJI MASALE - BRAND PRELOADER ANIMATION
   ========================================================================== */
.goal-page-loading .goal-loader-inner {
    width: 96px !important;
    height: 96px !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center center !important;
    animation: kmTurbanPulse 1.4s ease-in-out infinite !important;
}

@keyframes kmTurbanPulse {
    0%, 100% {
        transform: translate(-50%, -50%) scale(0.92);
        opacity: 0.85;
    }
    50% {
        transform: translate(-50%, -50%) scale(1.08);
        opacity: 1;
    }
}
/* Desktop Header Logo: 25% reduction (130px -> 98px) preserving crisp aspect ratio */
#goal-header .logo img,
.elementor-widget-ecosoap_logo .logo img,
.elementor-element-b36329d .logo img,
.header-01-16625 .logo img,
.goal-header .logo img {
    width: 98px !important;
    max-width: 98px !important;
    height: auto !important;
    max-height: 98px !important;
    object-fit: contain !important;
    display: inline-block !important;
}

/* Mobile Header Logo: 25% reduction (44px -> 33px) */
#goal-header-mobile .logo img {
    max-height: 33px !important;
    width: auto !important;
    max-width: 120px !important;
    object-fit: contain !important;
}

/* Translucent sticky header wrapper */
.main-sticky-header.sticky-header,
.main-sticky-header {
    background-color: rgba(49, 80, 60, 0.90) !important;
    backdrop-filter: blur(10px) saturate(140%) !important;
    -webkit-backdrop-filter: blur(10px) saturate(140%) !important;
}

/* Preserve footer logo size */
.goal-footer .logo img, footer .logo img {
    width: 145px !important;
    max-width: 145px !important;
    max-height: 145px !important;
    height: auto !important;
}

/* ==========================================================================
   KM PRODUCT SHOWCASE 2-COLUMN ROW (REEL/SHORT LEFT + TABS RIGHT)
   ========================================================================== */
.km-product-showcase-row {
    margin-top: 35px !important;
    margin-bottom: 45px !important;
    align-items: flex-start !important;
    display: flex !important;
    flex-wrap: wrap !important;
}

.km-showcase-video-col {
    padding-right: 25px !important;
    margin-bottom: 25px !important;
}

.km-showcase-info-col {
    padding-left: 15px !important;
}

.km-reel-column-wrapper {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: flex-start;
}

.km-reel-column-wrapper .km-reel-frame {
    width: 100% !important;
    max-width: 360px !important;
    aspect-ratio: 9 / 16 !important;
    height: auto !important;
    background: #1e130d !important;
    border-radius: 20px !important;
    overflow: hidden !important;
    box-shadow: 0 16px 36px rgba(49, 80, 60, 0.18), 0 4px 12px rgba(0,0,0,0.08) !important;
    border: 3px solid #ebd9c8 !important;
    position: relative !important;
}

.km-reel-column-wrapper .km-reel-embed-inner,
.km-reel-column-wrapper .km-reel-embed-inner iframe,
.km-reel-column-wrapper .km-reel-iframe {
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    border: none !important;
    display: block !important;
}

/* Make Tabs on the right blend seamlessly */
.km-showcase-info-col .woocommerce-tabs {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

.km-showcase-info-col .woocommerce-tabs .tab-content {
    background: #ffffff !important;
    border-radius: 12px !important;
    padding: 20px !important;
    border: 1px solid #f0e6dc !important;
    box-shadow: 0 4px 15px rgba(0,0,0,0.03) !important;
}

@media (max-width: 991px) {
    .km-product-showcase-row {
        display: block !important;
    }
    .km-showcase-video-col {
        padding-right: 15px !important;
        margin-bottom: 30px !important;
    }
    .km-showcase-info-col {
        padding-left: 15px !important;
    }
    .km-reel-column-wrapper .km-reel-frame {
        max-width: 320px !important;
        margin: 0 auto !important;
    }
}
/* ==========================================================================
   KM DEDICATED FULL-WIDTH REVIEWS & SOCIAL PROOF SECTION
   ========================================================================== */
.km-dedicated-reviews-section {
    width: 100% !important;
    clear: both !important;
    margin: 45px 0 35px !important;
    padding: 35px 25px !important;
    background: #ffffff !important;
    border: 1px solid #ebd9c8 !important;
    border-radius: 16px !important;
    box-shadow: 0 4px 20px rgba(49, 80, 60, 0.05) !important;
}

.km-dedicated-reviews-section #reviews {
    max-width: 100% !important;
    margin: 0 auto !important;
}

.km-dedicated-reviews-section h3.comments-title {
    font-size: 24px !important;
    font-weight: 700 !important;
    color: #31503c !important;
    margin-bottom: 25px !important;
    padding-bottom: 12px !important;
    border-bottom: 2px solid #ebd9c8 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

.km-dedicated-reviews-section ol.commentlist {
    padding-left: 0 !important;
    list-style: none !important;
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)) !important;
    gap: 20px !important;
    margin-bottom: 35px !important;
}

.km-dedicated-reviews-section ol.commentlist li.review {
    background: #faf7f2 !important;
    border: 1px solid #ebd9c8 !important;
    border-radius: 12px !important;
    padding: 18px 20px !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.02) !important;
}

.km-dedicated-reviews-section #review_form_wrapper {
    background: #faf7f2 !important;
    border-radius: 14px !important;
    padding: 25px !important;
    border: 1px solid #fed7aa !important;
    margin-top: 25px !important;
}

.km-dedicated-reviews-section #reply-title {
    font-size: 20px !important;
    font-weight: 700 !important;
    color: #31503c !important;
}

@media (max-width: 767px) {
    .km-dedicated-reviews-section {
        padding: 20px 15px !important;
        margin: 30px 0 25px !important;
    }
    .km-dedicated-reviews-section ol.commentlist {
        grid-template-columns: 1fr !important;
    }
}

/* ==========================================================================
   MY ACCOUNT: EMAIL NOTICES & MOBILE ORDERS CARDS (KANHAJI MASALE)
   ========================================================================== */

/* 1. Email Verification & Notice Banner Layout (Eliminates Broken "C") */
.woocommerce-info,
.woocommerce-message,
.woocommerce-notice,
.woocommerce-error {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    padding: 16px 20px 16px 52px !important;
    line-height: 1.6 !important;
    font-size: 14px !important;
    border-radius: 10px !important;
    position: relative !important;
    clear: both !important;
    border-left-width: 5px !important;
}

.woocommerce-info .button,
.woocommerce-info a.button,
.woocommerce-message .button,
.woocommerce-message a.button,
.woocommerce-error .button,
.woocommerce-error a.button {
    float: none !important;
    order: 2 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-top: 12px !important;
    margin-bottom: 2px !important;
    padding: 9px 20px !important;
    font-size: 12.5px !important;
    font-weight: 700 !important;
    border-radius: 6px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    white-space: nowrap !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08) !important;
}

/* 2. Mobile Orders List: Distinct Card Design & Separation */
@media (max-width: 767px) {
    .woocommerce-account table.my_account_orders,
    .woocommerce-account table.woocommerce-orders-table,
    .woocommerce-account table.shop_table_responsive {
        border-collapse: separate !important;
        border-spacing: 0 !important;
        border: none !important;
        background: transparent !important;
        display: block !important;
        width: 100% !important;
        padding: 0 !important;
        margin: 15px 0 !important;
    }

    .woocommerce-account table.shop_table_responsive thead {
        display: none !important;
    }

    .woocommerce-account table.shop_table_responsive tbody {
        display: block !important;
        width: 100% !important;
    }

    .woocommerce-account table.woocommerce-orders-table tbody tr.woocommerce-orders-table__row,
    .woocommerce-account table.shop_table_responsive tbody tr {
        display: block !important;
        background: #ffffff !important;
        border: 1.5px solid #E5DFD5 !important;
        border-radius: 14px !important;
        box-shadow: 0 4px 14px rgba(49, 80, 60, 0.06) !important;
        padding: 16px 18px !important;
        margin-bottom: 20px !important;
        box-sizing: border-box !important;
        position: relative !important;
        transition: transform 0.2s ease, box-shadow 0.2s ease !important;
    }

    .woocommerce-account table.shop_table_responsive tbody tr:last-child {
        margin-bottom: 10px !important;
    }

    .woocommerce-account table.shop_table_responsive tr td {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        text-align: right !important;
        padding: 10px 0 !important;
        border-top: none !important;
        border-bottom: 1px dashed #EAE3D6 !important;
        font-size: 13.5px !important;
        color: #2D3B36 !important;
    }

    .woocommerce-account table.shop_table_responsive tr td:last-child {
        border-bottom: none !important;
        padding-top: 14px !important;
        padding-bottom: 4px !important;
        justify-content: flex-end !important;
    }

    .woocommerce-account table.shop_table_responsive tr td::before {
        content: attr(data-title) !important;
        float: none !important;
        font-weight: 700 !important;
        font-size: 12.5px !important;
        color: #78716C !important;
        text-transform: uppercase !important;
        letter-spacing: 0.4px !important;
        text-align: left !important;
    }

    /* Action "VIEW" Button */
    .woocommerce-account table.shop_table_responsive tr td.woocommerce-orders-table__cell-order-actions a.button {
        background: #C84630 !important;
        color: #ffffff !important;
        border-radius: 8px !important;
        padding: 8px 24px !important;
        font-weight: 700 !important;
        font-size: 13px !important;
        letter-spacing: 0.5px !important;
        border: none !important;
        box-shadow: 0 3px 8px rgba(200, 70, 48, 0.25) !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    /* Tracking / AWB chip */
    .woocommerce-account table.shop_table_responsive tr td.woocommerce-orders-table__cell-order-tracking a {
        background: #FAF7F2 !important;
        border: 1px solid #D8CBB7 !important;
        color: #31503C !important;
        font-weight: 700 !important;
        padding: 5px 11px !important;
        border-radius: 6px !important;
        font-size: 12px !important;
        font-family: monospace !important;
        text-decoration: none !important;
        display: inline-flex !important;
        align-items: center !important;
        gap: 5px !important;
    }
}

/* ==========================================================================
   MOBILE & TABLET LANDSCAPE: HERO SECTION & SLIDER REVOLUTION 7 FIX
   ========================================================================== */
@media (max-width: 1024px) and (orientation: landscape), (max-height: 520px) {
    /* Prevent slider viewport clipping in landscape */
    sr7-module[data-alias="slider-1"],
    sr7-module,
    .rev_slider_wrapper,
    .rev_slider {
        max-height: 90vh !important;
        min-height: 280px !important;
        overflow: visible !important;
    }

    sr7-slide {
        overflow: visible !important;
    }

    /* Scale hero headline typography to fit the short landscape viewport */
    sr7-module[data-alias="slider-1"] sr7-txt,
    sr7-module sr7-txt,
    sr7-txt.sr7-layer,
    .rev_slider .tp-caption h1,
    .rev_slider .tp-caption h2,
    .rev_slider .tp-caption {
        font-size: 22px !important;
        line-height: 1.2 !important;
        letter-spacing: 0.5px !important;
        max-width: 85vw !important;
        white-space: normal !important;
        word-break: keep-all !important;
        overflow: visible !important;
    }

    /* Adjust vertical positioning scale */
    sr7-layer[data-type="text"],
    sr7-txt {
        transform: scale(0.85) !important;
        transform-origin: center center !important;
    }

    /* Action buttons in slider */
    sr7-module a.rev-btn,
    sr7-module .rev-btn {
        padding: 7px 18px !important;
        font-size: 12px !important;
        line-height: 1.2 !important;
    }
}

@media (max-height: 420px) {
    sr7-module[data-alias="slider-1"] sr7-txt,
    sr7-txt.sr7-layer,
    sr7-txt {
        font-size: 18px !important;
        line-height: 1.15 !important;
    }
    sr7-layer[data-type="text"],
    sr7-txt {
        transform: scale(0.78) !important;
        transform-origin: center center !important;
    }
}