
/* ==========================================================================
   Full Viewport Width for Main Site Wrapper
   ========================================================================== */
html, body {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow-x: clip !important;
}

main#content,
.site-main,
body:not([class*=elementor-page-]) .site-main {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
}

/* 
Theme Name: BNK Groups
Theme URI: #
Description: Rice
Author: G
Author URI: #
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
*/

/* ==========================================================================
   BNK Groups - Global Container & Navigation Optimizations
   ========================================================================== */

/* 1. Header Desktop 3-Column Navigation Layout */
@media (min-width: 1025px) {
    .elementor-1611 .elementor-element.elementor-element-db268b9 {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        justify-content: space-between !important;
        width: 100% !important;
        padding-left: 30px !important;
        padding-right: 30px !important;
        box-sizing: border-box !important;
    }
    .elementor-1611 .elementor-element.elementor-element-ac8b597 {
        width: 18% !important;
        flex: 0 0 18% !important;
        max-width: 260px !important;
    }
    .elementor-1611 .elementor-element.elementor-element-b8d65d3 {
        width: 68% !important;
        flex: 1 1 auto !important;
        justify-content: center !important;
    }
    .elementor-1611 .elementor-element.elementor-element-884120c {
        width: 14% !important;
        flex: 0 0 14% !important;
        justify-content: flex-end !important;
        display: flex !important;
    }
    .elementor-1611 .elementskit-navbar-nav-default.elementskit-menu-container {
        display: block !important;
        position: static !important;
        width: auto !important;
        height: auto !important;
        background: transparent !important;
        box-shadow: none !important;
    }
    .elementor-1611 .elementskit-navbar-nav-default .elementskit-navbar-nav {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        justify-content: center !important;
        align-items: center !important;
        list-style: none !important;
        margin: 0 !important;
        padding: 0 !important;
        gap: 22px !important;
    }
    .elementor-1611 .elementskit-navbar-nav-default .elementskit-navbar-nav > li {
        display: inline-flex !important;
        white-space: nowrap !important;
        margin: 0 !important;
    }
    .elementor-1611 .elementskit-navbar-nav-default .elementskit-navbar-nav > li > a {
        display: inline-flex !important;
        align-items: center !important;
        white-space: nowrap !important;
        padding: 6px 4px !important;
        font-family: "ADLaM Display", Sans-serif !important;
        font-size: 1.1em !important;
        line-height: 1.2 !important;
    }
    .elementor-1611 button.elementskit-menu-hamburger,
    .elementor-1611 button.elementskit-menu-close,
    .elementor-1611 .elementskit-nav-identity-panel {
        display: none !important;
    }
}

/* Mobile & Tablet Header Off-Canvas Navigation Layout (< 1025px) */
@media (max-width: 1024px) {
    /* Prevent background scrolling when mobile menu is active */
    body.ekit-menu-open {
        overflow: hidden !important;
    }

    /* Hamburger Button */
    .elementor-1611 button.elementskit-menu-hamburger {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        background-color: #00802C !important;
        border: 1px solid #00802C !important;
        border-radius: 4px !important;
        width: 44px !important;
        height: 40px !important;
        padding: 0 !important;
        cursor: pointer !important;
        box-shadow: 0 2px 6px rgba(0, 128, 44, 0.25) !important;
    }
    .elementor-1611 button.elementskit-menu-hamburger .ekit-menu-icon {
        font-size: 20px !important;
        color: #ffffff !important;
        line-height: 1 !important;
    }

    /* Overlay */
    .elementor-1611 .elementskit-menu-overlay {
        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(3px) !important;
        -webkit-backdrop-filter: blur(3px) !important;
        z-index: 9999998 !important;
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;
        transition: opacity 0.3s ease, visibility 0.3s ease !important;
        cursor: pointer !important;
    }
    .elementor-1611 .elementskit-menu-overlay.active {
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
        display: block !important;
    }

    /* Off-Canvas Menu Drawer */
    .elementor-1611 .elementskit-navbar-nav-default.elementskit-menu-container {
        position: fixed !important;
        top: 0 !important;
        left: -100vw !important;
        transform: none !important;
        width: 320px !important;
        max-width: 85vw !important;
        height: 100vh !important;
        background: #ffffff !important;
        box-shadow: 5px 0 25px rgba(0, 0, 0, 0.2) !important;
        z-index: 9999999 !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        display: flex !important;
        flex-direction: column-reverse !important;
        justify-content: flex-end !important;
        padding: 0 !important;
        margin: 0 !important;
        transition: none !important;
    }
    .elementor-1611 .elementskit-navbar-nav-default.elementskit-menu-container.active {
        left: 0 !important;
        transform: none !important;
        transition: none !important;
    }

    /* Identity Header inside Menu */
    .elementor-1611 .elementskit-nav-identity-panel {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        padding: 16px 20px !important;
        border-bottom: 1px solid #eeeeee !important;
        background: #ffffff !important;
        flex-shrink: 0 !important;
    }
    .elementor-1611 .elementskit-nav-identity-panel .elementskit-nav-logo img {
        max-width: 130px !important;
        max-height: 48px !important;
        width: auto !important;
        height: auto !important;
        object-fit: contain !important;
        display: block !important;
    }
    .elementor-1611 button.elementskit-menu-close {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 36px !important;
        height: 36px !important;
        background: #00872E !important;
        color: #ffffff !important;
        border: none !important;
        border-radius: 50% !important;
        font-size: 22px !important;
        line-height: 1 !important;
        cursor: pointer !important;
        margin: 0 !important;
        padding: 0 !important;
        box-shadow: 0 2px 6px rgba(0, 135, 46, 0.3) !important;
        transition: transform 0.2s ease, background 0.2s ease !important;
    }
    .elementor-1611 button.elementskit-menu-close:hover {
        background: #006b24 !important;
        transform: scale(1.05) !important;
    }

    /* Nav List Items */
    .elementor-1611 .elementskit-menu-container .elementskit-navbar-nav {
        display: flex !important;
        flex-direction: column !important;
        padding: 12px 0 !important;
        margin: 0 !important;
        list-style: none !important;
        width: 100% !important;
    }
    .elementor-1611 .elementskit-menu-container .elementskit-navbar-nav > li {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        margin: 0 !important;
        border-bottom: 1px solid #f5f5f5 !important;
        position: relative !important;
    }
    .elementor-1611 .elementskit-menu-container .elementskit-navbar-nav > li > a {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        padding: 14px 22px !important;
        font-family: "Public Sans", sans-serif !important;
        font-size: 15px !important;
        font-weight: 600 !important;
        color: #222222 !important;
        text-decoration: none !important;
        transition: color 0.2s ease, background 0.2s ease !important;
    }
    .elementor-1611 .elementskit-menu-container .elementskit-navbar-nav > li.current-menu-item > a,
    .elementor-1611 .elementskit-menu-container .elementskit-navbar-nav > li > a.active,
    .elementor-1611 .elementskit-menu-container .elementskit-navbar-nav > li > a:hover {
        color: #009B3D !important;
        background: #f8faf8 !important;
    }

    /* Submenu (Infrastructure Dropdown) */
    .elementor-1611 .elementskit-menu-container .elementskit-submenu-panel {
        display: none !important;
        position: static !important;
        box-shadow: none !important;
        float: none !important;
        width: calc(100% - 32px) !important;
        background: #f7f9f7 !important;
        padding: 6px 0 10px 0 !important;
        margin: 0 16px 12px 16px !important;
        border-left: 3px solid #009B3D !important;
        border-radius: 0 0 6px 6px !important;
        list-style: none !important;
        opacity: 1 !important;
        visibility: visible !important;
        transform: none !important;
        transition: none !important;
    }
    .elementor-1611 .elementskit-menu-container .elementskit-submenu-panel.elementskit-dropdown-open,
    .elementor-1611 .elementskit-menu-container li.elementskit-dropdown-open > .elementskit-submenu-panel {
        display: block !important;
    }
    .elementor-1611 .elementskit-menu-container .elementskit-submenu-panel li {
        display: block !important;
        width: 100% !important;
    }
    .elementor-1611 .elementskit-menu-container .elementskit-submenu-panel li a {
        display: block !important;
        padding: 10px 18px !important;
        font-family: "Public Sans", sans-serif !important;
        font-size: 14px !important;
        font-weight: 500 !important;
        color: #555555 !important;
        text-decoration: none !important;
        transition: color 0.2s ease !important;
    }
    .elementor-1611 .elementskit-menu-container .elementskit-submenu-panel li a:hover,
    .elementor-1611 .elementskit-menu-container .elementskit-submenu-panel li.current-menu-item a {
        color: #009B3D !important;
    }
}

/* 2. Hero Section 100% Full Viewport Span */
.elementor .elementor-element-9974c86,
.elementor .elementor-element-58ec2f7,
.elementor .elementor-element-252f6f8,
.elementor-element-9974c86 .elementor-widget-slides,
.elementor-element-58ec2f7 .elementor-widget-slides,
.elementor-element-252f6f8 .elementor-widget-slides,
.elementor-element-9974c86 .elementor-swiper,
.elementor-element-58ec2f7 .elementor-swiper,
.elementor-element-252f6f8 .elementor-swiper,
.elementor-element-9974c86 .elementor-main-swiper,
.elementor-element-58ec2f7 .elementor-main-swiper,
.elementor-element-252f6f8 .elementor-main-swiper {
    width: 100% !important;
    max-width: 100% !important;
}

/* 3. Header Select Country Button Clean Font & Character Gap */
.elementor-element-403a9a6 .elementor-icon-list-item > a {
    letter-spacing: 0 !important;
    font-family: "Public Sans", sans-serif !important;
    font-weight: 600 !important;
    display: inline-flex !important;
    align-items: center !important;
    white-space: nowrap !important;
    gap: 4px !important;
}

.elementor-element-403a9a6 .elementor-icon-list-text {
    letter-spacing: 0 !important;
    font-family: "Public Sans", sans-serif !important;
    font-weight: 600 !important;
    display: inline-flex !important;
    align-items: center !important;
    white-space: nowrap !important;
    margin: 0 !important;
    padding: 0 !important;
}

.elementor-element-403a9a6 .elementor-icon-list-icon {
    display: inline-flex !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
}


/* Ensure all content with elementor-invisible is visible */
.elementor-invisible {
    visibility: visible !important;
    opacity: 1 !important;
}

/* ==========================================================================
   Full-Width Responsive Banner Slider (crcs.gov.in style: Zero-crop, 100% visible)
   ========================================================================== */

/* Full Viewport Edge-to-Edge Container on All Screens and Zoom Levels */
.elementor .elementor-element-9974c86,
.elementor .elementor-element-58ec2f7,
.elementor .elementor-element-252f6f8 {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}

/* Slide Widgets and Containers */
.elementor-element-484afd7,
.elementor-element-bdc192d,
.elementor-element-eb29c22,
.elementor-element-484afd7 .elementor-widget-container,
.elementor-element-bdc192d .elementor-widget-container,
.elementor-element-eb29c22 .elementor-widget-container,
.elementor-element-484afd7 .elementor-swiper,
.elementor-element-bdc192d .elementor-swiper,
.elementor-element-eb29c22 .elementor-swiper {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    position: relative !important;
}

/* Desktop Swiper: Aspect Ratio matching second slider image (Jeera-Desktop.png: 2048x768) */
.elementor-element-484afd7 .elementor-slides-wrapper.swiper,
.elementor-element-eb29c22 .elementor-slides-wrapper.swiper {
    width: 100% !important;
    max-width: 100% !important;
    aspect-ratio: 2048 / 768 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    position: relative !important;
    overflow: hidden !important;
    margin: 0 auto !important;
    padding: 0 !important;
    display: block !important;
}

/* Mobile Swiper: Fixed 4:5 Aspect Ratio matching Mobile Banner (1080x1350) */
.elementor-element-bdc192d .elementor-slides-wrapper.swiper {
    width: 100% !important;
    max-width: 100% !important;
    aspect-ratio: 1080 / 1350 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    position: relative !important;
    overflow: hidden !important;
    margin: 0 auto !important;
    padding: 0 !important;
    display: block !important;
}

/* Swiper Wrapper - MUST BE FLEX for Swiper translate3d horizontal slide transition */
/* Swiper Wrapper - flex layout for translate3d transitions */
.elementor-element-484afd7 .swiper-wrapper,
.elementor-element-bdc192d .swiper-wrapper,
.elementor-element-eb29c22 .swiper-wrapper {
    display: flex !important;
    flex-direction: row !important;
    height: 100% !important;
    position: relative !important;
    z-index: 1 !important;
    box-sizing: content-box !important;
    transition-property: transform !important;
}

/* Swiper Slide: Height matching container, width managed by Swiper natively */
.elementor-element-484afd7 .swiper-slide,
.elementor-element-bdc192d .swiper-slide,
.elementor-element-eb29c22 .swiper-slide {
    flex-shrink: 0 !important;
    height: 100% !important;
    position: relative !important;
    overflow: hidden !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Explicit Visibility Rules: Desktop vs Mobile Hero Sliders */
@media (max-width: 767px) {
    .elementor .elementor-element-9974c86,
    .elementor .elementor-element-252f6f8 {
        display: none !important;
    }
    .elementor .elementor-element-58ec2f7 {
        display: flex !important;
        visibility: visible !important;
        opacity: 1 !important;
    }
}
@media (min-width: 768px) {
    .elementor .elementor-element-58ec2f7 {
        display: none !important;
    }
    .elementor .elementor-element-9974c86,
    .elementor .elementor-element-252f6f8 {
        display: flex !important;
    }
}

/* Banner Image Element: Clean Edge-to-Edge with Zero Cropping */
.bnk-slider-banner-img {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    pointer-events: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
    z-index: 1 !important;
}

/* Fallback & instant background render */
.elementor-element-484afd7 .swiper-slide-bg,
.elementor-element-bdc192d .swiper-slide-bg,
.elementor-element-eb29c22 .swiper-slide-bg {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    z-index: 0 !important;
    display: block !important;
}

/* Slide Link Overlay */
.elementor-element-484afd7 .swiper-slide-inner,
.elementor-element-bdc192d .swiper-slide-inner,
.elementor-element-eb29c22 .swiper-slide-inner {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    z-index: 2 !important;
    display: block !important;
    text-decoration: none !important;
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Navigation arrows & pagination positioning */
.elementor-element-484afd7 .elementor-swiper-button,
.elementor-element-bdc192d .elementor-swiper-button,
.elementor-element-eb29c22 .elementor-swiper-button {
    z-index: 5 !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    cursor: pointer !important;
}

.elementor-element-484afd7 .swiper-pagination,
.elementor-element-bdc192d .swiper-pagination,
.elementor-element-eb29c22 .swiper-pagination {
    z-index: 5 !important;
    bottom: 15px !important;
}

/* ElementsKit Accordion Styling */
.elementskit-card {
    background: transparent !important;
    border: none !important;
    border-bottom: 1px solid #e0e0e0 !important;
    margin-bottom: 10px !important;
}

.elementskit-card-header a {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding: 14px 0 !important;
    text-decoration: none !important;
    color: #1b3d2f !important;
    font-weight: 600 !important;
}

.elementskit-card-body {
    padding: 10px 0 15px 0 !important;
    color: #555 !important;
    font-size: 14px !important;
    line-height: 1.6 !important;
}

.elementskit-card-body.collapse:not(.show) {
    display: none !important;
}

.elementskit-card-body.collapse.show {
    display: block !important;
}

/* Global Boxed Container Center Alignment & Max-Width */
.elementor .e-con-boxed > .e-con-inner {
    max-width: 1200px !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
}

/* ==========================================================================
   Two-column Layout & Badge Fix in Who We Are Section (elementor-element-238ee9f)
   ========================================================================== */
.elementor-element-238ee9f,
.elementor-element-a50cf34 {
    display: flex !important;
    position: relative !important;
}

@media (min-width: 768px) {
    .elementor-element-238ee9f > .e-con-inner,
    .elementor-element-a50cf34 > .e-con-inner {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        justify-content: space-between !important;
        width: 100% !important;
    }
    .elementor-element-faacd0f,
    .elementor-element-fe905d9 {
        width: 50% !important;
        max-width: 50% !important;
        flex: 0 0 50% !important;
        box-sizing: border-box !important;
        padding-right: 40px !important;
    }
    .elementor-element-5b18640,
    .elementor-element-c1164d2 {
        width: 50% !important;
        max-width: 50% !important;
        flex: 0 0 50% !important;
        box-sizing: border-box !important;
        position: relative !important;
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
    }
    .elementor-element-eb91c07,
    .elementor-element-66fc839 {
        position: relative !important;
        display: block !important;
        width: 100% !important;
        max-width: 520px !important;
        margin: 0 auto !important;
        text-align: center !important;
    }
    .elementor-element-eb91c07 img,
    .elementor-element-eb91c07 .elementor-widget-container img,
    .elementor-element-66fc839 img,
    .elementor-element-66fc839 .elementor-widget-container img {
        width: 100% !important;
        max-width: 520px !important;
        height: auto !important;
        display: block !important;
        margin: 0 auto !important;
        border-radius: 0 !important;
        -webkit-mask-image: url("../images/shape-9.svg") !important;
        mask-image: url("../images/shape-9.svg") !important;
        -webkit-mask-size: contain !important;
        mask-size: contain !important;
        -webkit-mask-position: center center !important;
        mask-position: center center !important;
        -webkit-mask-repeat: no-repeat !important;
        mask-repeat: no-repeat !important;
    }
    .elementor-690 .elementor-element.elementor-element-503a148,
    .elementor-3996 .elementor-element.elementor-element-c2e14c4,
    .elementor-element.elementor-element-503a148,
    .elementor-element.elementor-element-c2e14c4,
    .elementor .elementor-element.elementor-element-503a148,
    .elementor .elementor-element.elementor-element-c2e14c4,
    .elementor-element-503a148 > .elementor-motion-effects-container,
    .elementor-element-c2e14c4 > .elementor-motion-effects-container,
    .elementor-element-503a148 > .elementor-motion-effects-container > .elementor-motion-effects-layer,
    .elementor-element-c2e14c4 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
        position: absolute !important;
        top: -15px !important;
        right: 15px !important;
        left: auto !important;
        bottom: auto !important;
        width: 185px !important;
        min-width: 185px !important;
        max-width: 185px !important;
        height: 185px !important;
        min-height: 185px !important;
        max-height: 185px !important;
        aspect-ratio: 1 / 1 !important;
        flex: 0 0 185px !important;
        --width: 185px !important;
        --min-height: 185px !important;
        --container-widget-width: 185px !important;
        border-radius: 50% !important;
        --border-radius: 50% 50% 50% 50% !important;
        background: linear-gradient(135deg, #70b028 0%, #00872e 100%) !important;
        background-color: transparent !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important;
        align-items: center !important;
        z-index: 10 !important;
        box-shadow: 0 10px 25px rgba(0, 146, 50, 0.3) !important;
        text-align: center !important;
        padding: 14px !important;
        box-sizing: border-box !important;
        overflow: hidden !important;
    }
    .elementor-element-503a148 .elementor-counter,
    .elementor-element-c2e14c4 .elementor-counter {
        display: flex !important;
        flex-direction: column-reverse !important;
        justify-content: center !important;
        align-items: center !important;
        text-align: center !important;
        margin: 0 !important;
        padding: 0 !important;
        width: 100% !important;
    }
    .elementor-element-503a148 .elementor-counter-number-wrapper,
    .elementor-element-c2e14c4 .elementor-counter-number-wrapper {
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        color: #ffffff !important;
        font-family: 'ADLaM Display', cursive, sans-serif !important;
        font-size: 52px !important;
        font-weight: 700 !important;
        line-height: 1 !important;
        margin: 0 !important;
    }
    .elementor-element-503a148 .elementor-counter-title,
    .elementor-element-c2e14c4 .elementor-counter-title {
        color: #ffffff !important;
        font-family: 'Public Sans', sans-serif !important;
        font-size: 14px !important;
        font-weight: 600 !important;
        text-align: center !important;
        margin-top: 6px !important;
        line-height: 1.2 !important;
        letter-spacing: 0 !important;
    }
}

@media (max-width: 767px) {
    .elementor-element-238ee9f > .e-con-inner,
    .elementor-element-a50cf34 > .e-con-inner {
        display: flex !important;
        flex-direction: column-reverse !important;
    }
    .elementor-element-faacd0f,
    .elementor-element-fe905d9 {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 100% !important;
        padding-right: 0 !important;
    }
    .elementor-element-5b18640,
    .elementor-element-c1164d2 {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 100% !important;
        position: relative !important;
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
    }
    .elementor-element-eb91c07 img,
    .elementor-element-eb91c07 .elementor-widget-container img,
    .elementor-element-66fc839 img,
    .elementor-element-66fc839 .elementor-widget-container img {
        width: 100% !important;
        max-width: 340px !important;
        height: auto !important;
        display: block !important;
        margin: 0 auto !important;
        -webkit-mask-image: url("../images/shape-9.svg") !important;
        mask-image: url("../images/shape-9.svg") !important;
        -webkit-mask-size: contain !important;
        mask-size: contain !important;
        -webkit-mask-position: center center !important;
        mask-position: center center !important;
        -webkit-mask-repeat: no-repeat !important;
        mask-repeat: no-repeat !important;
    }
    body:not(.rtl) .elementor-690 .elementor-element.elementor-element-503a148,
    body:not(.rtl) .elementor-3996 .elementor-element.elementor-element-c2e14c4,
    body:not(.rtl) .elementor-element-503a148,
    body:not(.rtl) .elementor-element-c2e14c4,
    .elementor-690 .elementor-element.elementor-element-503a148,
    .elementor-3996 .elementor-element.elementor-element-c2e14c4,
    .elementor-element.elementor-element-503a148,
    .elementor-element.elementor-element-c2e14c4,
    .elementor .elementor-element.elementor-element-503a148,
    .elementor .elementor-element.elementor-element-c2e14c4 {
        position: absolute !important;
        top: -15px !important;
        right: max(15px, calc((100% - 330px) / 2)) !important;
        left: auto !important;
        bottom: auto !important;
        width: 165px !important;
        min-width: 165px !important;
        max-width: 165px !important;
        height: 165px !important;
        min-height: 165px !important;
        max-height: 165px !important;
        aspect-ratio: 1 / 1 !important;
        flex: 0 0 165px !important;
        --width: 165px !important;
        --min-height: 165px !important;
        --container-widget-width: 165px !important;
        border-radius: 50% !important;
        --border-radius: 50% 50% 50% 50% !important;
        background: linear-gradient(135deg, #70b028 0%, #00872e 100%) !important;
        background-color: transparent !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important;
        align-items: center !important;
        z-index: 10 !important;
        padding: 12px !important;
        box-sizing: border-box !important;
        overflow: hidden !important;
        box-shadow: 0 8px 20px rgba(0, 135, 46, 0.35) !important;
    }
    .elementor-element-503a148 .elementor-counter,
    .elementor-element-c2e14c4 .elementor-counter {
        display: flex !important;
        flex-direction: column-reverse !important;
        justify-content: center !important;
        align-items: center !important;
        text-align: center !important;
        width: 100% !important;
    }
    .elementor-element-503a148 .elementor-counter-number-wrapper,
    .elementor-element-c2e14c4 .elementor-counter-number-wrapper {
        font-family: 'ADLaM Display', cursive, sans-serif !important;
        font-size: 46px !important;
        font-weight: 800 !important;
        line-height: 1 !important;
        color: #ffffff !important;
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        margin: 0 !important;
    }
    .elementor-element-503a148 .elementor-counter-title,
    .elementor-element-c2e14c4 .elementor-counter-title {
        color: #ffffff !important;
        font-family: 'Public Sans', sans-serif !important;
        font-size: 14.5px !important;
        font-weight: 700 !important;
        text-align: center !important;
        margin-top: 4px !important;
        line-height: 1.2 !important;
        letter-spacing: 0 !important;
    }
}


/* ==========================================================================
   Product Single Pages - Two-Column Layout (Image Left / Details Right)
   ========================================================================== */
@media (min-width: 768px) {
    /* Product Main Container: Force horizontal two-column display */
    [data-elementor-type="product-post"] .elementor-element-0e38196,
    [data-elementor-type="product-post"] .elementor-element-dae0783,
    [data-elementor-type="product-post"] .elementor-element-5f19b1c,
    [data-elementor-type="product-post"] .elementor-element-5674712,
    [data-elementor-type="product-post"] .elementor-element-07ab076,
    [data-elementor-type="product-post"] .elementor-element-da394b1,
    [data-elementor-type="product-post"] .elementor-element-2c14fff {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        justify-content: space-between !important;
        width: 100% !important;
    }

    /* Left Column: Product Image & Savor the Simplicity heading */
    [data-elementor-type="product-post"] .elementor-element-220689b,
    [data-elementor-type="product-post"] .elementor-element-7e9572f,
    [data-elementor-type="product-post"] .elementor-element-16ff7de,
    [data-elementor-type="product-post"] .elementor-element-72ed2dc,
    [data-elementor-type="product-post"] .elementor-element-fffb057,
    [data-elementor-type="product-post"] .elementor-element-502c981,
    [data-elementor-type="product-post"] .elementor-element-b27a657 {
        width: 48% !important;
        max-width: 48% !important;
        flex: 0 0 48% !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
    }

    /* Right Column: Title, Description, Quote Button, Accordions */
    [data-elementor-type="product-post"] .elementor-element-1e96ecc,
    [data-elementor-type="product-post"] .elementor-element-cb80c60,
    [data-elementor-type="product-post"] .elementor-element-cf782bc,
    [data-elementor-type="product-post"] .elementor-element-f00e2b3,
    [data-elementor-type="product-post"] .elementor-element-16a75ff,
    [data-elementor-type="product-post"] .elementor-element-57ec017,
    [data-elementor-type="product-post"] .elementor-element-a3098f9 {
        width: 50% !important;
        max-width: 50% !important;
        flex: 0 0 50% !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important;
    }
}

/* Ensure child containers inside .e-con-inner preserve natural sizing and flex */
.elementor .e-con-inner > .e-con-inner {
    max-width: 100% !important;
}

.elementor .e-child > .e-con-inner {
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.elementor .e-con-full:not(.elementor-element-503a148):not(.elementor-element-c2e14c4) {
    width: 100% !important;
    max-width: 100% !important;
}

/* ==========================================================================
   Product Single Hero Banner & Breadcrumbs Edge-to-Edge Spanning
   ========================================================================== */
/* Breadcrumb bar spans full width across all product pages */
[data-elementor-type="product-post"] > .elementor-element:first-child,
[data-elementor-type="product-post"] .elementor-element-5f740ce,
[data-elementor-type="product-post"] .elementor-element-8373d55,
[data-elementor-type="product-post"] .elementor-element-099b5a5,
[data-elementor-type="product-post"] .elementor-element-5857f75,
[data-elementor-type="product-post"] .elementor-element-d99e5fc,
[data-elementor-type="product-post"] .elementor-element-5f7f530,
[data-elementor-type="product-post"] .elementor-element-25318ea,
[data-elementor-type="product-post"] .elementor-element-44afc33b {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

[data-elementor-type="product-post"] > .elementor-element:first-child > .e-con-inner,
[data-elementor-type="product-post"] .elementor-element-5f740ce > .e-con-inner,
[data-elementor-type="product-post"] .elementor-element-8373d55 > .e-con-inner,
[data-elementor-type="product-post"] .elementor-element-099b5a5 > .e-con-inner,
[data-elementor-type="product-post"] .elementor-element-5857f75 > .e-con-inner,
[data-elementor-type="product-post"] .elementor-element-d99e5fc > .e-con-inner,
[data-elementor-type="product-post"] .elementor-element-5f7f530 > .e-con-inner,
[data-elementor-type="product-post"] .elementor-element-25318ea > .e-con-inner,
[data-elementor-type="product-post"] .elementor-element-44afc33b > .e-con-inner {
    max-width: 1200px !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 30px !important;
    padding-right: 30px !important;
    display: flex !important;
    justify-content: flex-end !important;
}

/* Product Hero Section background spans full viewport */
[data-elementor-type="product-post"] .elementor-element-fd8c883,
[data-elementor-type="product-post"] .elementor-element-07ac4f8,
[data-elementor-type="product-post"] .elementor-element-5445aff,
[data-elementor-type="product-post"] .elementor-element-0db16e1,
[data-elementor-type="product-post"] .elementor-element-7d3ab92,
[data-elementor-type="product-post"] .elementor-element-2a88283,
[data-elementor-type="product-post"] .elementor-element-1d55b63,
[data-elementor-type="product-post"] .elementor-element-78f1282 {
    width: 100% !important;
    max-width: 100% !important;
}

[data-elementor-type="product-post"] .elementor-element-fd8c883 > .e-con-inner,
[data-elementor-type="product-post"] .elementor-element-07ac4f8 > .e-con-inner,
[data-elementor-type="product-post"] .elementor-element-5445aff > .e-con-inner,
[data-elementor-type="product-post"] .elementor-element-0db16e1 > .e-con-inner,
[data-elementor-type="product-post"] .elementor-element-7d3ab92 > .e-con-inner,
[data-elementor-type="product-post"] .elementor-element-2a88283 > .e-con-inner,
[data-elementor-type="product-post"] .elementor-element-1d55b63 > .e-con-inner,
[data-elementor-type="product-post"] .elementor-element-78f1282 > .e-con-inner {
    max-width: 1200px !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Product bag image sizing constraint */
[data-elementor-type="product-post"] .catalog-product-image img {
    max-width: 380px !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 auto !important;
    display: block !important;
}

/* ==========================================================================
   Infrastructure Page Layout & Image Container
   ========================================================================== */
.elementor-1005 .elementor-element.elementor-element-bae890e {
    min-height: 550px !important;
    background-image: url("../images/rice_67627cd000-scaled-e1773134911488.jpg") !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
    border-radius: 10px !important;
}
.elementor-1005 .elementor-element.elementor-element-44cec3e .elementor-spacer-inner {
    min-height: 550px !important;
}
@media (max-width: 767px) {
    .elementor-1005 .elementor-element.elementor-element-bae890e {
        min-height: 320px !important;
    }
    .elementor-1005 .elementor-element.elementor-element-44cec3e .elementor-spacer-inner {
        min-height: 320px !important;
    }
}

/* ==========================================================================
   Product Pack Sizes Swatches (Available Pack Sizes)
   ========================================================================== */
.catalog-variation-buttons {
    display: flex !important;
    gap: 14px !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    margin: 15px 0 !important;
    padding: 0 !important;
}

.catalog-btn {
    border: 2px solid rgba(255, 255, 255, 0.4) !important;
    border-radius: 14px !important;
    padding: 8px !important;
    background: #ffffff !important;
    cursor: pointer !important;
    text-align: center !important;
    width: 68px !important;
    height: 68px !important;
    min-width: 68px !important;
    min-height: 68px !important;
    transition: all 0.25s ease !important;
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    outline: none !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1) !important;
}

.catalog-btn img {
    width: auto !important;
    height: auto !important;
    max-height: 48px !important;
    max-width: 48px !important;
    display: block !important;
    object-fit: contain !important;
    transition: transform 0.25s ease, filter 0.25s ease, opacity 0.25s ease !important;
    opacity: 0.9 !important;
}

.catalog-btn span {
    display: block !important;
    font-size: 13px !important;
    margin-top: 6px !important;
    font-weight: 600 !important;
    color: #00682c !important;
    transition: 0.25s ease !important;
}

.catalog-btn:hover {
    border-color: #ffffff !important;
    transform: translateY(-3px) !important;
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.18) !important;
}

.catalog-btn:hover img {
    opacity: 1 !important;
    transform: scale(1.08) !important;
}

.catalog-btn.active {
    border-color: #004b20 !important;
    border-width: 2.5px !important;
    background: #ffffff !important;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.22), 0 0 0 2px #ffffff !important;
    transform: translateY(-2px) !important;
}

.catalog-btn.active img {
    opacity: 1 !important;
    transform: scale(1.1) !important;
    filter: drop-shadow(0 2px 4px rgba(0, 104, 44, 0.25)) !important;
}

.catalog-btn.active span {
    color: #00682c !important;
}

.catalog-btn.active::after {
    content: "✓" !important;
    position: absolute !important;
    top: -5px !important;
    right: -5px !important;
    background: #00682c !important;
    color: #ffffff !important;
    font-size: 11px !important;
    width: 20px !important;
    height: 20px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 50% !important;
    line-height: 1 !important;
    font-weight: bold !important;
    border: 2px solid #ffffff !important;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2) !important;
    z-index: 3 !important;
}

@media (max-width: 768px) {
    .catalog-btn {
        width: 60px !important;
        height: 60px !important;
        min-width: 60px !important;
        min-height: 60px !important;
        padding: 6px !important;
        border-radius: 12px !important;
    }
    .catalog-btn img {
        max-height: 40px !important;
        max-width: 40px !important;
    }
}

/* ==========================================================================
   BNK Foods - Product Quote Modal & Form Enhancements
   ========================================================================== */
#elementor-popup-modal-4310 {
    display: none;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    z-index: 999999 !important;
    background: rgba(15, 23, 42, 0.75) !important;
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    align-items: center !important;
    justify-content: center !important;
    padding: 16px !important;
    box-sizing: border-box !important;
    opacity: 0;
    transition: opacity 0.25s ease-in-out;
}

#elementor-popup-modal-4310.bnk-modal-active,
#elementor-popup-modal-4310[style*="display: flex"] {
    opacity: 1 !important;
}

#elementor-popup-modal-4310 .dialog-widget-content {
    position: relative !important;
    background: #ffffff !important;
    max-width: 560px !important;
    width: 100% !important;
    border-radius: 16px !important;
    padding: 32px 28px 28px !important;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.35) !important;
    max-height: 90vh !important;
    overflow-y: auto !important;
    box-sizing: border-box !important;
    transform: scale(0.96);
    transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1);
}

#elementor-popup-modal-4310.bnk-modal-active .dialog-widget-content,
#elementor-popup-modal-4310[style*="display: flex"] .dialog-widget-content {
    transform: scale(1) !important;
}

#elementor-popup-modal-4310 .dialog-close-button {
    position: absolute !important;
    top: 14px !important;
    right: 16px !important;
    width: 36px !important;
    height: 36px !important;
    border-radius: 50% !important;
    background: #f1f5f9 !important;
    border: none !important;
    font-size: 24px !important;
    line-height: 1 !important;
    color: #475569 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    z-index: 10;
}

#elementor-popup-modal-4310 .dialog-close-button:hover {
    background: #e2e8f0 !important;
    color: #0f172a !important;
    transform: rotate(90deg);
}

.bnk-quote-modal-header {
    text-align: center;
    margin-bottom: 20px;
}

.bnk-quote-modal-header .modal-badge {
    display: inline-block;
    background: #e8f5e9;
    color: #00682C;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    padding: 4px 12px;
    border-radius: 20px;
    margin-bottom: 8px;
}

.bnk-quote-modal-header h2,
#elementor-popup-modal-4310 h2.elementor-heading-title {
    font-family: 'ADLaM Display', sans-serif !important;
    color: #1e293b !important;
    font-size: 1.75em !important;
    line-height: 1.2 !important;
    margin: 0 0 16px 0 !important;
    text-align: center !important;
}

.bnk-quote-modal-header p {
    font-size: 13.5px;
    color: #64748b;
    margin: 0;
}

/* Quote Form Fields */
#enquiry_form .elementor-form-fields-wrapper {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
}

#enquiry_form .elementor-field-group {
    display: flex !important;
    flex-direction: column !important;
}

#enquiry_form .elementor-col-50 {
    flex: 1 1 calc(50% - 6px) !important;
    min-width: 200px;
}

#enquiry_form .elementor-col-100 {
    flex: 1 1 100% !important;
    width: 100% !important;
}

#enquiry_form label.elementor-field-label {
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #334155 !important;
    margin-bottom: 4px !important;
    display: block !important;
}

#enquiry_form label.elementor-field-label .req-star {
    color: #dc2626;
    margin-left: 2px;
}

#enquiry_form input.elementor-field,
#enquiry_form textarea.elementor-field {
    width: 100% !important;
    padding: 10px 12px !important;
    font-size: 14px !important;
    border: 1.5px solid #cbd5e1 !important;
    border-radius: 8px !important;
    background: #f8fafc !important;
    color: #1e293b !important;
    transition: all 0.2s ease !important;
    box-sizing: border-box !important;
    font-family: inherit !important;
}

#enquiry_form input.elementor-field:focus,
#enquiry_form textarea.elementor-field:focus {
    outline: none !important;
    border-color: #00682C !important;
    background: #ffffff !important;
    box-shadow: 0 0 0 3px rgba(0, 104, 44, 0.15) !important;
}

#enquiry_form button.elementor-button {
    width: 100% !important;
    background: #00682C !important;
    color: #ffffff !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    padding: 13px 20px !important;
    border: none !important;
    border-radius: 8px !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    transition: all 0.2s ease !important;
    box-shadow: 0 4px 12px rgba(0, 104, 44, 0.25) !important;
    margin-top: 6px !important;
}

#enquiry_form button.elementor-button:hover:not(:disabled) {
    background: #005022 !important;
    box-shadow: 0 6px 16px rgba(0, 104, 44, 0.35) !important;
    transform: translateY(-1px);
}

#enquiry_form button.elementor-button:disabled {
    opacity: 0.75;
    cursor: not-allowed;
}

/* Spinner */
.bnk-spinner {
    width: 16px;
    height: 16px;
    border: 2px solid rgba(255, 255, 255, 0.35);
    border-radius: 50%;
    border-top-color: #ffffff;
    animation: bnk-spin 0.8s linear infinite;
    display: inline-block;
}

@keyframes bnk-spin {
    to { transform: rotate(360deg); }
}

/* Success View */
.bnk-quote-success-box {
    text-align: center;
    padding: 24px 16px;
    animation: bnk-fade-up 0.3s ease;
}

.bnk-quote-success-icon {
    width: 64px;
    height: 64px;
    background: #dcfce7;
    color: #16a34a;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 32px;
    margin: 0 auto 16px;
    box-shadow: 0 8px 20px rgba(22, 163, 74, 0.2);
}

.bnk-quote-success-box h3 {
    font-family: 'ADLaM Display', sans-serif !important;
    font-size: 1.6em !important;
    color: #15803d !important;
    margin: 0 0 10px 0 !important;
}

.bnk-quote-success-box p {
    font-size: 14.5px;
    color: #475569;
    line-height: 1.5;
    margin: 0 0 12px 0;
}

.bnk-quote-success-box .ref-tag {
    display: inline-block;
    background: #f1f5f9;
    color: #334155;
    font-size: 12px;
    font-weight: 600;
    padding: 4px 12px;
    border-radius: 6px;
    margin-bottom: 20px;
}

.bnk-quote-success-close {
    background: #00682C;
    color: #fff;
    border: none;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 600;
    padding: 10px 28px;
    cursor: pointer;
    transition: background 0.2s ease;
}

.bnk-quote-success-close:hover {
    background: #005022;
}

@keyframes bnk-fade-up {
    from {
        opacity: 0;
        transform: translateY(10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Alert banner */
.bnk-quote-alert {
    padding: 10px 14px;
    border-radius: 8px;
    font-size: 13.5px;
    margin-bottom: 12px;
    display: none;
}
.bnk-quote-alert-danger {
    background: #fef2f2;
    border: 1px solid #fecaca;
    color: #b91c1c;
}

/* Mobile responsive */
@media (max-width: 640px) {
    #elementor-popup-modal-4310 .dialog-widget-content {
        padding: 24px 18px 20px !important;
        border-radius: 14px !important;
    }
    #enquiry_form .elementor-col-50 {
        flex: 1 1 100% !important;
        min-width: 100%;
    }
}

/* ==========================================================================
   BNK Foods - Contact Us Page Pixel-Perfect UI
   ========================================================================== */
/* Ensure elements are never stuck in invisible/translated animation state */
.elementor-364 .elementor-invisible {
    visibility: visible !important;
    opacity: 1 !important;
    animation: none !important;
    transform: none !important;
}

/* Contact Us Hero Banner */
.elementor-364 .elementor-element.elementor-element-d7ef4f6 {
    background-image: url("../images/modern-blue-tractor-machinery-plowing-agricultural-field-meadow-at-farm-at-spring-during-sunset.jpg") !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
    position: relative !important;
    min-height: 380px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 100px 20px 80px 20px !important;
    margin-top: -15px !important;
    box-sizing: border-box !important;
}

.elementor-364 .elementor-element.elementor-element-d7ef4f6::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    background-color: rgba(0, 22, 27, 0.5) !important;
    background-image: url("../images/bg_img_header-1.png") !important;
    background-position: bottom center !important;
    background-repeat: repeat-x !important;
    background-size: 50% auto !important;
    pointer-events: none !important;
    z-index: 1 !important;
}

.elementor-364 .elementor-element.elementor-element-d7ef4f6 > .e-con-inner {
    position: relative !important;
    z-index: 2 !important;
    max-width: 800px !important;
    width: 100% !important;
    text-align: center !important;
}

.elementor-364 .elementor-element.elementor-element-949c1f1 .elementor-heading-title {
    font-family: 'ADLaM Display', sans-serif !important;
    font-size: 3em !important;
    line-height: 1.15 !important;
    color: #ffffff !important;
    text-shadow: 0 2px 12px rgba(0, 0, 0, 0.6) !important;
    margin: 0 0 10px 0 !important;
    text-align: center !important;
}

.elementor-364 .elementor-element.elementor-element-e50d3d7 .elementor-heading-title {
    font-size: 1.15em !important;
    line-height: 1.6 !important;
    color: #f1f5f9 !important;
    text-shadow: 0 1px 6px rgba(0, 0, 0, 0.5) !important;
    margin: 0 !important;
    text-align: center !important;
}

/* Contact Us Two-Column Section */
.elementor-364 .elementor-element.elementor-element-ffd5bd2 {
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding: 60px 24px 80px 24px !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.elementor-364 .elementor-element.elementor-element-ffd5bd2 > .e-con-inner {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 48px !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

/* Left Column: Heading, intro & address cards */
.elementor-364 .elementor-element.elementor-element-f57a75b {
    flex: 1 1 auto !important;
    width: calc(100% - 530px) !important;
    max-width: 580px !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

.elementor-364 .elementor-element.elementor-element-a820372 .elementor-heading-title {
    font-family: 'ADLaM Display', sans-serif !important;
    font-size: 32px !important;
    font-weight: 500 !important;
    line-height: 1.25 !important;
    color: #112211 !important;
    margin: 0 0 16px 0 !important;
}

.elementor-364 .elementor-element.elementor-element-fe1aff3 {
    font-size: 14.5px !important;
    line-height: 1.65 !important;
    color: #475569 !important;
    margin-bottom: 24px !important;
}

.elementor-364 .elementor-element.elementor-element-a01e95e,
.elementor-364 .elementor-element.elementor-element-6bfe448,
.elementor-364 .elementor-element.elementor-element-e35d04e {
    margin-bottom: 14px !important;
    width: 100% !important;
}

.elementor-364 .elementor-element.elementor-element-a01e95e > .elementor-widget-container,
.elementor-364 .elementor-element.elementor-element-6bfe448 > .elementor-widget-container,
.elementor-364 .elementor-element.elementor-element-e35d04e > .elementor-widget-container {
    background: #ffffff !important;
    border: 1px solid #edf2f7 !important;
    border-radius: 12px !important;
    padding: 16px 20px !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.03) !important;
    transition: all 0.25s ease !important;
    box-sizing: border-box !important;
}

.elementor-364 .elementor-element.elementor-element-a01e95e:hover > .elementor-widget-container,
.elementor-364 .elementor-element.elementor-element-6bfe448:hover > .elementor-widget-container,
.elementor-364 .elementor-element.elementor-element-e35d04e:hover > .elementor-widget-container {
    border-color: #cbd5e1 !important;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.06) !important;
    transform: translateY(-2px) !important;
}

.elementor-364 .elementor-icon-box-wrapper {
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
}

.elementor-364 .elementor-icon-box-icon {
    flex-shrink: 0 !important;
}

.elementor-364 .elementor-icon-box-icon .elementor-icon {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    border-radius: 50% !important;
    background-color: #00682C !important;
    color: #ffffff !important;
    fill: #ffffff !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 20px !important;
    padding: 0 !important;
    box-shadow: 0 4px 10px rgba(0, 104, 44, 0.2) !important;
}

.elementor-364 .elementor-icon-box-content {
    flex-grow: 1 !important;
}

.elementor-364 .elementor-icon-box-title,
.elementor-364 .elementor-icon-box-title a {
    font-family: 'ADLaM Display', sans-serif !important;
    font-size: 16.5px !important;
    font-weight: 500 !important;
    line-height: 1.3 !important;
    color: #1e293b !important;
    margin: 0 0 3px 0 !important;
}

.elementor-364 .elementor-icon-box-description {
    font-size: 13.5px !important;
    line-height: 1.55 !important;
    color: #64748b !important;
    margin: 0 !important;
}

/* Right Column: Contact Form Card */
.elementor-364 .elementor-element.elementor-element-0631eab {
    flex: 0 0 500px !important;
    width: 500px !important;
    max-width: 500px !important;
    margin: 0 0 0 auto !important;
    background: #ffffff !important;
    border-radius: 16px !important;
    padding: 36px 32px 32px 32px !important;
    border: 1px solid #f1f5f9 !important;
    box-shadow: 0 10px 40px -10px rgba(0, 0, 0, 0.08) !important;
    align-self: flex-start !important;
    box-sizing: border-box !important;
    height: auto !important;
    min-height: auto !important;
    overflow: visible !important;
}

.elementor-364 .elementor-element.elementor-element-a4309a0,
.elementor-364 .elementor-element.elementor-element-a4309a0 .elementor-widget-container,
.elementor-364 form.elementor-form {
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

/* Form Fields Grid - Two Equal Columns on Desktop */
.elementor-364 .elementor-form-fields-wrapper {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.elementor-364 .elementor-field-group {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    float: none !important;
}

.elementor-364 .elementor-field-group.elementor-col-50 {
    grid-column: span 1 !important;
    width: 100% !important;
    max-width: 100% !important;
}

.elementor-364 .elementor-field-group.elementor-col-100 {
    grid-column: span 2 !important;
    width: 100% !important;
    max-width: 100% !important;
}

.elementor-364 .elementor-field-group > label.elementor-field-label {
    display: block !important;
    width: 100% !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #1e293b !important;
    margin: 0 0 6px 0 !important;
    padding: 0 !important;
    line-height: 1.2 !important;
    text-align: left !important;
    float: none !important;
}

.elementor-364 .elementor-field-group > input.elementor-field {
    display: block !important;
    width: 100% !important;
    height: 44px !important;
    min-height: 44px !important;
    max-height: 44px !important;
    padding: 10px 14px !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
    border: 1px solid #dce8f2 !important;
    border-radius: 6px !important;
    background-color: #f0f7fb !important;
    color: #1e293b !important;
    box-sizing: border-box !important;
    outline: none !important;
    box-shadow: none !important;
    font-family: inherit !important;
    transition: all 0.2s ease !important;
    float: none !important;
}

.elementor-364 .elementor-field-group > textarea.elementor-field {
    display: block !important;
    width: 100% !important;
    height: 110px !important;
    min-height: 110px !important;
    padding: 10px 14px !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
    border: 1px solid #dce8f2 !important;
    border-radius: 6px !important;
    background-color: #f0f7fb !important;
    color: #1e293b !important;
    box-sizing: border-box !important;
    outline: none !important;
    box-shadow: none !important;
    font-family: inherit !important;
    resize: vertical !important;
    transition: all 0.2s ease !important;
    float: none !important;
}

.elementor-364 input.elementor-field::placeholder,
.elementor-364 textarea.elementor-field::placeholder {
    color: #94a3b8 !important;
    opacity: 1 !important;
}

.elementor-364 input.elementor-field:focus,
.elementor-364 textarea.elementor-field:focus {
    border-color: #059236 !important;
    background-color: #ffffff !important;
    box-shadow: 0 0 0 3px rgba(5, 146, 54, 0.12) !important;
    outline: none !important;
}

/* Submit Button */
.elementor-364 .e-form__buttons {
    grid-column: span 2 !important;
    width: 100% !important;
    margin-top: 6px !important;
    display: block !important;
    float: none !important;
}

.elementor-364 button.elementor-button {
    width: 100% !important;
    background: #059236 !important;
    color: #ffffff !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    height: 46px !important;
    min-height: 46px !important;
    padding: 0 20px !important;
    border-radius: 30px !important;
    border: none !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.25s ease !important;
    box-shadow: 0 4px 14px rgba(5, 146, 54, 0.25) !important;
    box-sizing: border-box !important;
}

.elementor-364 button.elementor-button:hover {
    background: #04782b !important;
    box-shadow: 0 6px 18px rgba(5, 146, 54, 0.35) !important;
    transform: translateY(-1px) !important;
}

.elementor-364 .elementor-button-icon {
    display: none !important;
}

.elementor-364 .elementor-button-text {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #ffffff !important;
}

/* Responsive adjustments */
@media (max-width: 960px) {
    .elementor-364 .elementor-element.elementor-element-ffd5bd2 > .e-con-inner {
        flex-direction: column !important;
        gap: 40px !important;
    }
    .elementor-364 .elementor-element.elementor-element-f57a75b,
    .elementor-364 .elementor-element.elementor-element-0631eab {
        width: 100% !important;
        max-width: 100% !important;
        flex: 1 1 100% !important;
    }
}

@media (max-width: 600px) {
    .elementor-364 .elementor-element.elementor-element-d7ef4f6 {
        min-height: 260px !important;
        padding: 60px 16px 50px 16px !important;
    }
    .elementor-364 .elementor-element.elementor-element-949c1f1 .elementor-heading-title {
        font-size: 2.2em !important;
    }
    .elementor-364 .elementor-element.elementor-element-ffd5bd2 {
        padding: 35px 16px 50px 16px !important;
    }
    .elementor-364 .elementor-element.elementor-element-0631eab {
        padding: 24px 18px !important;
    }
    .elementor-364 .elementor-form-fields-wrapper {
        grid-template-columns: 1fr !important;
    }
    .elementor-364 .elementor-field-group.elementor-col-50,
    .elementor-364 .elementor-field-group.elementor-col-100,
    .elementor-364 .e-form__buttons {
        grid-column: span 1 !important;
    }
}

/* ==========================================================================
   Header Stacking Context, Sticky Position & Solid Background (Desktop & Mobile)
   Ensures the site header is sticky across all devices and elevated above all content
   ========================================================================== */
header.elementor-location-header,
.elementor-1611.elementor-location-header {
    position: sticky !important;
    position: -webkit-sticky !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    z-index: 99999 !important;
    background-color: #ffffff !important;
    box-sizing: border-box !important;
    transition: box-shadow 0.25s ease !important;
}

header.elementor-location-header.is-scrolled,
.elementor-1611.elementor-location-header.is-scrolled {
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08) !important;
}

header.elementor-location-header .elementor-element.elementor-element-db268b9 {
    background-color: #ffffff !important;
    position: relative !important;
    z-index: 99999 !important;
}

/* ==========================================================================
   Product Page Background Graphic Containment & Positioning
   Prevent decorative circle from protruding into breadcrumbs or above header
   ========================================================================== */
div[data-elementor-type="product-post"] > .e-parent:first-child,
.elementor-element.elementor-element-d99e5fc,
.elementor-widget-breadcrumbs {
    position: relative !important;
    z-index: 2 !important;
}

div[data-elementor-type="product-post"] > .e-parent:nth-child(2),
.elementor-element.elementor-element-7d3ab92 {
    position: relative !important;
    z-index: 1 !important;
}

div[data-elementor-type="product-post"] .elementor-widget-image.elementor-absolute:has(img[src*="Untitled-design-5"]),
div[data-elementor-type="product-post"] .elementor-element-45b4567,
div[data-elementor-type="product-post"] .elementor-element-0eff89e,
div[data-elementor-type="product-post"] .elementor-element-db9273f,
div[data-elementor-type="product-post"] .elementor-element-e2c5025,
div[data-elementor-type="product-post"] .elementor-element-45513d5,
div[data-elementor-type="product-post"] .elementor-element-6ebf08b,
div[data-elementor-type="product-post"] .elementor-element-7b2a26f {
    top: -140px !important;
    z-index: 0 !important;
    pointer-events: none !important;
}

@media (max-width: 1024px) {
    div[data-elementor-type="product-post"] .elementor-widget-image.elementor-absolute:has(img[src*="Untitled-design-5"]),
    div[data-elementor-type="product-post"] .elementor-element-45b4567,
    div[data-elementor-type="product-post"] .elementor-element-0eff89e,
    div[data-elementor-type="product-post"] .elementor-element-db9273f,
    div[data-elementor-type="product-post"] .elementor-element-e2c5025,
    div[data-elementor-type="product-post"] .elementor-element-45513d5,
    div[data-elementor-type="product-post"] .elementor-element-6ebf08b,
    div[data-elementor-type="product-post"] .elementor-element-7b2a26f {
        top: -100px !important;
    }
}

@media (max-width: 767px) {
    div[data-elementor-type="product-post"] .elementor-widget-image.elementor-absolute:has(img[src*="Untitled-design-5"]),
    div[data-elementor-type="product-post"] .elementor-element-45b4567,
    div[data-elementor-type="product-post"] .elementor-element-0eff89e,
    div[data-elementor-type="product-post"] .elementor-element-db9273f,
    div[data-elementor-type="product-post"] .elementor-element-e2c5025,
    div[data-elementor-type="product-post"] .elementor-element-45513d5,
    div[data-elementor-type="product-post"] .elementor-element-6ebf08b,
    div[data-elementor-type="product-post"] .elementor-element-7b2a26f {
        top: -60px !important;
    }
}
