/*--------------------------------------------------------------
    Elementor Mobile Menu - Off Canvas Style
--------------------------------------------------------------*/

/* Hide default dropdown behavior - Only for mobile */
@media (max-width: 1024px) {
    .elementor-nav-menu--dropdown.elementor-nav-menu__container {
        display: block !important;
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        width: 280px !important;
        height: 100vh !important;
        background: #fff !important;
        z-index: 9999 !important;
        overflow-y: auto !important;
        padding: 60px 20px 20px !important;
        box-shadow: 2px 0 10px rgba(0,0,0,0.1) !important;
        transform: translateX(-100%) !important;
        transition: transform 0.3s ease-in-out !important;
        visibility: hidden !important;
        margin: 0 !important;
    }

    /* Active state */
    .elementor-nav-menu--dropdown.elementor-nav-menu__container.active {
        visibility: visible !important;
        transform: translateX(0) !important;
    }

    /* Overlay */
    .elementor-menu-overlay {
        display: none;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100vh;
        background: rgba(0,0,0,0.5);
        z-index: 9999998;
        opacity: 0;
        transition: opacity 0.3s ease-in-out;
    }

    .elementor-menu-overlay.active {
        display: block;
        opacity: 1;
    }

    /* Close button */
    .elementor-menu-close {
        position: absolute;
        top: 15px;
        right: 15px;
        width: 30px;
        height: 30px;
        cursor: pointer;
        z-index: 10000000;
    }

    .elementor-menu-close:before,
    .elementor-menu-close:after {
        content: '';
        position: absolute;
        top: 50%;
        left: 0;
        width: 100%;
        height: 2px;
        background: #333;
        transition: all 0.3s ease;
    }

    .elementor-menu-close:before {
        transform: rotate(45deg);
    }

    .elementor-menu-close:after {
        transform: rotate(-45deg);
    }

    /* Menu items styling */
    .elementor-nav-menu--dropdown.elementor-nav-menu__container.active .elementor-nav-menu {
        display: block !important;
    }

    .elementor-nav-menu--dropdown.elementor-nav-menu__container.active .elementor-nav-menu li {
        border-bottom: 1px solid #f0f0f0;
    }

    .elementor-nav-menu--dropdown.elementor-nav-menu__container.active .elementor-nav-menu li a {
        padding: 15px 0;
        display: block;
        color: #333;
        font-size: 16px;
        transition: color 0.3s ease;
    }

    .elementor-nav-menu--dropdown.elementor-nav-menu__container.active .elementor-nav-menu li a:hover {
        color: var(--wdtPrimaryColor, #000);
    }

    /* Prevent body scroll when menu is open */
    body.elementor-menu-open {
        overflow: hidden;
    }

    /* Animation for menu items */
    .elementor-nav-menu--dropdown.elementor-nav-menu__container.active .elementor-nav-menu li {
        opacity: 0;
        transform: translateX(-20px);
        animation: slideInLeft 0.3s ease forwards;
    }

    .elementor-nav-menu--dropdown.elementor-nav-menu__container.active .elementor-nav-menu li:nth-child(1) { animation-delay: 0.1s; }
    .elementor-nav-menu--dropdown.elementor-nav-menu__container.active .elementor-nav-menu li:nth-child(2) { animation-delay: 0.15s; }
    .elementor-nav-menu--dropdown.elementor-nav-menu__container.active .elementor-nav-menu li:nth-child(3) { animation-delay: 0.2s; }
    .elementor-nav-menu--dropdown.elementor-nav-menu__container.active .elementor-nav-menu li:nth-child(4) { animation-delay: 0.25s; }
    .elementor-nav-menu--dropdown.elementor-nav-menu__container.active .elementor-nav-menu li:nth-child(5) { animation-delay: 0.3s; }

    @keyframes slideInLeft {
        to {
            opacity: 1;
            transform: translateX(0);
        }
    }
}
