/* Main Container */
.custom-products-menu-container {
    position: absolute;
    background: #ffffff;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
    border: 1px solid #e0e0e0;
    z-index: 99999;
    display: none;
    max-height: 80vh;
    overflow-y: auto;
    padding: 20px;
    opacity: 0;
    transition: opacity 0.2s ease, visibility 0.2s ease;
}

.custom-products-menu-container.active {
    display: block;
    opacity: 1;
}

/* Loading State */
.custom-products-menu-container.loading {
    min-height: 200px;
    display: flex !important;
    align-items: center;
    justify-content: center;
    background: #f9f9f9 url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><path fill="%230066cc" d="M73,50c0-12.7-10.3-23-23-23S27,37.3,27,50 M30.9,50c0-10.5,8.5-19.1,19.1-19.1S69.1,39.5,69.1,50"><animateTransform attributeName="transform" attributeType="XML" type="rotate" dur="1s" from="0 50 50" to="360 50 50" repeatCount="indefinite"/></path></svg>') no-repeat center;
    background-size: 40px;
}

/* Menu Structure */
.cusms-menus {
    width: 100%;
    font-family: inherit;
}

.ulmain-menu {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
}

.ulmain-menu > li {
    position: relative;
    margin-right: 15px;
}

.ulmain-menu a {
    display: block;
    padding: 8px 12px;
    color: #333333;
    text-decoration: none;
    transition: color 0.2s ease;
}

.ulmain-menu > li > a:hover {
    color: #0066cc;
}

/* Submenu Styles */
.submenu-wrap,
.second-submenu-wrap,
.third-submenu-wrap {
    position: absolute;
    background: #ffffff;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
    z-index: 100;
    display: block;
    max-width: 300px;
    padding: 0px;
    border-top: 2px solid var( --e-global-color-primary );
    left: 180px;
}

.second-submenu-wrap {
    left: 100%;
    top: 0;
}

.third-submenu-wrap {
    left: 100%;
    top: 0;
}

.custom-products-menu-container.cusms-menus {
    width: 100%;
    font-family: inherit;
    left: 0 !important;
    min-width: fit-content !important;
    right: 0 !important;
    top: 90px !important;
    position: fixed;
}

.level-2 > a {
    padding-left: 15px;
}

.level-3 > a {
    padding-left: 25px;
    font-size: 0.9em;
}



/*------ |-- Header Custom searchbar | CSS Start --| -----|*/

    .custom-search-wrapper {
        position: relative;
        display: inline-block;
    }
    .search-toggle {
        background: none;
        border: none;
        cursor: pointer;
        padding: 5px;
    }
    .custom-search-wrapper button.search-toggle {
        padding: 0;
        background: transparent;
    }
    .custom-search-wrapper button.search-toggle:hover {
        background: transparent;
    }
    .custom-search-wrapper .custom-search-form {
        display: none;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100vh;
        background: rgba(255, 255, 255, 0.95);
        justify-content: center;
        align-items: center;
        flex-direction: column;
        z-index: 99991;
    }
    .custom-search-wrapper.active .custom-search-form {
        display: flex;      
        flex-direction: row;
        padding: 20px;
    }
    .custom-search-wrapper .custom-search-form input[type="text"] {
        padding: 7px 20px;
        font-size: 20px;
        width: 100%;
        max-width: 600px;
        border: 2px solid #333;
        border-right: 0;
        border-radius: 0;
    }
    .custom-search-form button {
        margin-top: 0;
        padding: 12px 25px !important;
        font-size: 18px !important;
        border-radius: 0;
        border: solid 1px #e6002d;
    }

    .custom-search-form button.search-close {
        position: absolute;
        top: 30px;
        right: 40px;
        font-size: 34px !important;
        border: none;
        color: #fff;
        cursor: pointer;
        z-index: 10000;
        background: #e6002d;
    }
    .custom-search-form .search-close:hover {
        color: #fff; background: #000;
    }
    .products-list .tag {
        position: absolute;
        top: 0px;
        left: 0;        
        opacity: 1;
    }
    .products-list .tag span {
        background: #e6002d;
        color: #fff;
        padding: 8px 15px;
        font-size: 14px;
        font-weight: 500;
        line-height: 1;
        border-radius: 4px;
    }

/*-------------------------------*/

    .head-btn.elementor-element .elementor-button-icon svg {   
        height: 19px;
        width: 19px;
    }

    .head-search .elementor-shortcode .search-toggle img {
        width: 20px;
    }

    ul.elementor-nav-menu li.menu-item.wpml-ls-menu-item {
        display: none;
    }
    .wpml-ls-legacy-dropdown {
        width: fit-content;
    }
    .wpml-ls-legacy-dropdown .wpml-ls-item {
        width: 80px!important;
        position: relative;
        top: -3px;
    }


    .wpml-ls-legacy-dropdown a.wpml-ls-item-toggle {
        padding-right: 0px;
        /*font-family: "Open Sans", Sans-serif;
        font-size: 16px;
        font-weight: 500;
        line-height: 24px;*/
    }

    .wpml-ls-legacy-dropdown .wpml-ls-current-language:hover>a {
        background:#fff;
    }

    .wpml-ls-legacy-dropdown .wpml-ls-sub-menu { border:0px!important; }

    .wpml-ls-legacy-dropdown .wpml-ls-sub-menu a {
        background: #ffffff !important;
        color: #000;
        font-weight: 400;
        box-shadow: 0px 3px 15px -5px #333;
        padding: 8px!important;
        display:block;
        margin-left:8px;
    }
    .wpml-ls-legacy-dropdown .wpml-ls-sub-menu a:hover {
        background:#FCE3E8!important;
        color:var( --e-global-color-primary );
    }

    .wpml-ls-item-toggle .wpml-ls-flag {
        opacity: 0;
    }
    .wpml-ls-item-toggle { position:relative; }

    .wpml-ls-item-toggle::before {
        position: absolute;
        content: "";
        left:8px;
        top: 0;
        bottom: 0;
        margin:auto;
       background-image: url(/wp-content/uploads/2025/07/canada-lgs.png); 
        margin: auto;
        background-size: contain;
        background-repeat: no-repeat;
        z-index: 11111;
        width: 20px;
        height: 20px;
    }

    .wpml-ls-legacy-dropdown a.wpml-ls-item-toggle:after {
        content: "";
        vertical-align: middle;
        display: inline-block;
        border: 0px !important;
        border-top: 0;
        position: absolute;
        right: 8px;
        top: 0;
        bottom: 0;
        margin: auto;
        border-right: 2px solid #000000 !important;
        border-bottom: 2px solid #000000 !important;
        transform: rotate(45deg);
        height: 7px;
        width: 7px;
        background: transparent !important;
        font-weight: 500;
    }
    
    .fr-headmenu-box .wpml-ls-legacy-dropdown a.wpml-ls-item-toggle:after {
        right: 13px;
    }
    
    ul#mobile-product-dropdown-custom {
        display: none;
    }

    .custom-sec-header .elementor-element nav > ul.elementor-nav-menu > li > a .sub-arrow {
        display:none;
    }
    .custom-sec-header .elementor-element ul.elementor-nav-menu > li.menu-item-has-children > a { 
        position:relative;
        padding-right:25px!important;
    }
    .custom-sec-header .elementor-element ul.elementor-nav-menu > li.menu-item-has-children::before {
        position: absolute;
        content: "";
        width: 16px;
        height: 16px;
        right: 8px;
        top: 8px;
        bottom: 0;
        z-index: 1;
        background-color: #000; 
        mask: url(/wp-content/uploads/2025/08/menu-aero.svg) no-repeat center;
        -webkit-mask: url(/wp-content/uploads/2025/08/menu-aero.svg) no-repeat center;
        mask-size: contain;
    }
    .custom-sec-header .elementor-element ul.elementor-nav-menu > li.menu-item-has-children:hover::before  ,
    .custom-sec-header .elementor-element ul.elementor-nav-menu > li.current-menu-item::before {
        background-color: #e6002d;  
        transition:.4s;
    }

    .wpml-ls-legacy-dropdown ul.wpml-ls-sub-menu li  {     width:45px !important; }

    ul.wpml-ls-sub-menu img  { display:none!important; }

    .wpml-ls-legacy-dropdown ul.wpml-ls-sub-menu li {
        width: 55px !important;
        left: 20px;
        right: auto;
        top: 3px !important;
    }
    
    ul.elementor-nav-menu li.wpml-ls-item-fr img {
        display: none;
    }

/*.wpml-ls-flag {
    display: none !important;
}*/

/*------ |-- Media Quary CSS Start --| -----|*/
    

@media only screen and (min-width:1025px) {

/*------ |-- Header Custom | CSS Start --| -----|*/
   
    .cust-head-menus .elementor-nav-menu .sub-arrow {
        padding-inline: 0;
        margin: 0 !important;
    }

    .elementor-element.custom-sec-header.elementor-sticky {
        width: 100% !important;
    }
    
    .cusms-menus {
        height: 100%;
        max-width: 1300px;
        margin: 0 auto;
        padding: 0;
        display:none;
    }
    
    .cusms-menus ul { 
        list-style: none;
        padding: 0;
        list-style: none;
        /*max-height: 192px;*/
        max-height: calc(93vh - 100px);
        max-width: 280px;
        min-width: 280px;
        overflow: hidden;
        overflow-y: auto;
        background: inherit;
    }
    .cusms-menus ul.ulmain-menu {
        display: flex;
        flex-direction: row;
        grid-gap: 20px;
        list-style: none;
        padding: 0;
        position: relative;
    }
    .cusms-menus ul li .custm-inner-menu {
        position: absolute;
        top: -2px;
        left: 100%;
        background: #fff;
        padding: 0px;
        border-top: 2px solid var(--e-global-color-primary);
        box-shadow: 0 1px 5px 0px #d8d8d8;
        z-index: -9;
        max-width: 350px;
        width: 100%;
        min-height: -webkit-fill-available;
        min-height: 100%;
        transition: all .2s ease-in-out;
        opacity: 0;
        visibility: hidden;
    }   

    .cusms-menus ul.ulmain-menu li .submenu-wrap { left: 0; }
    .cusms-menus ul.ulmain-menu > li:hover .submenu-wrap {
        top:25px;
        opacity: 1;
        transition: all .2s ease-in-out;
        visibility: visible;
        z-index: 999;
    }

    .submenu-wrap .second-submenu-wrap { 
        height: -webkit-fill-available;
        background: #ffe5e5;
    }
    .submenu-wrap ul>li:hover .second-submenu-wrap {
        top: -2px;
        opacity: 1;
        transition: all .2s ease-in-out;
        visibility: visible;
        z-index: 999;
    }

    .submenu-wrap .third-submenu-wrap { 
        height: -webkit-fill-available;  
        background: #ffe5e5;
    }
    .submenu-wrap ul li .second-submenu-wrap ul li:hover .third-submenu-wrap {
        opacity: 1 !important;
        visibility: visible !important;
        z-index: 999 !important;
    }

    .submenu-wrap ul li { margin-bottom: 0; }
    .submenu-wrap li a { 
        color: #000;
        font-size: 17px;
        display: block;
        line-height: 24px;
        padding: 12px 20px;
        padding-right: 40px;
    }

    .submenu-wrap > h5.dynamic-heading { display: none; }

    .custm-inner-menu > ul li:hover > a {
        background: #FCE3E8;
        color: var(--e-global-color-primary);
    }
    .custm-inner-menu h5 {
        font-size: 20px !important;
        color: #000;
        font-weight: 600 !important;
        padding: 0 20px;
        line-height: 28px !important;
        margin-top: 20px;
    }

    .custm-inner-menu ul li a , 
    .cust-head-menus ul.elementor-nav-menu li ul.sub-menu .sub-arrow { position:relative; }

    .submenu-wrap ul > li.li-submenu > a::before ,
    .cust-head-menus ul.elementor-nav-menu li ul.sub-menu .sub-arrow::before { 
        position: absolute;
        content: "";
        right: 15px;
        top: 20px;
        background-image: url(/wp-content/uploads/2025/07/rgt-icn.png);
        margin: auto;
        background-size: contain;
        background-repeat: no-repeat;
        z-index: 11111;
        width: 12px;
        height: 12px;
    }
    .cust-head-menus ul.elementor-nav-menu li ul.sub-menu .sub-arrow::before {
        top: 5px;
    }
 
    .has-mega-menu  ul { display:block!important; }

    .otgs-development-site-front-end {
        display: none!important;
    }

    .cust-head-menus ul.elementor-nav-menu li ul.sub-menu .sub-arrow::before {
        right: -10px;
    }

    .cust-head-menus ul.elementor-nav-menu li ul.sub-menu li a {
        display: flex;
        justify-content: space-between;
        padding-right: 30px !important;
    }   
    .cust-head-menus ul.elementor-nav-menu li ul.sub-menu .sub-arrow {
        padding-left:20px;
        font-size:0;
    }

    ul li.site-wrap-custom-products-list.menu-item ul.sub-menu {
        display: none!important;
    }   

/*------ |-- French Header Menu  --| -----|*/
   
    .custom-sec-header .fr-head_menu.elementor-element ul.elementor-nav-menu > li.menu-item-has-children::before {
        width: 13px;
        height: 13px;
        right: 5px;
        top: 10px;
    }
    .custom-sec-header .fr-head_menu.elementor-element ul.elementor-nav-menu > li.menu-item-has-children > a {
        position: relative;
        padding-right: 17px !important;
    }

}



@media screen and (min-width: 1024px) and (max-width: 1280px) {

    .head-search .elementor-shortcode .search-toggle img {
        width: 18px;
    }


}


@media screen and (min-width: 1025px) and (max-width: 1120px) {

    ul.elementor-nav-menu li a { font-size:14px!important; }
    .head-btn.elementor-element .elementor-button-icon svg {
        height: 16px;
        width: 16px;
    }
    .custom-sec-header.e-flex.e-con-boxed { padding-inline:25px!important; }


}


@media screen and (min-width: 1025px) and (max-width: 1190px) {

    .custom-sec-header .elementor-element ul.elementor-nav-menu > li.menu-item-has-children::before {
        width: 14px;
        height: 14px;
    }

    .b2c-cust_menupart ul.elementor-nav-menu li a { font-size:13px!important; }

    .b2c-cust_menupart .wpml-ls-item-toggle::before {
        width: 18px!important;
        height: 18px!important;
    }

    .b2c-cust_menupart .wpml-ls-legacy-dropdown a.wpml-ls-item-toggle:after {
        right: 15px!important;
    }
    .b2c-cust_menupart .wpml-ls-legacy-dropdown .wpml-ls-flag+span {
        margin-left: 3px!important;
        font-size: 15px!important;
    }
    
    .fr-headmenu-box .wpml-ls-legacy-dropdown a.wpml-ls-item-toggle:after {
        right: 20px;
    }
    

}


@media screen and (min-width: 1025px) and (max-width: 1070px) {
    .b2c-cust_menupart ul.elementor-nav-menu li a {
        font-size: 12px !important;
    }

}



/*---------------  Mobile Styles --------------------------------*/


@media (max-width: 1024px) {

    .custom-sec-header .elementor-element ul.elementor-nav-menu li a:hover ,
    .custom-sec-header .elementor-element ul.elementor-nav-menu li a:focus ,
    .custom-sec-header .elementor-element ul.elementor-nav-menu li.current-menu-item a {
        background-color: transparent!important;
        color: inherit!important;
    } 

    .custom-sec-header .elementor-element ul.elementor-nav-menu li a.elementor-item-active {

    }

    .custom-sec-header .elementor-element ul.elementor-nav-menu li a.highlighted {
        background-color: transparent!important;
        color: inherit!important;
    }

    .custom-products-menu-container {
        position: fixed;
        top: 60px !important;
        left: 0 !important;
        width: 100% !important;
        max-height: calc(100vh - 60px);
        border-left: none;
        border-right: none;
    }
    
    .ulmain-menu {
        display: block;
    }
    
    .ulmain-menu > li {
        display: block;
        width: 100%;
        margin-right: 0;
    }
    
    .submenu-wrap,
    .second-submenu-wrap,
    .third-submenu-wrap {
        position: static;
        width: 100%;
        box-shadow: none;
        border: none;
        border-top: 1px solid #eeeeee;
    }

/*----------------------------------------*/

    .wpml-ls-legacy-dropdown .wpml-ls-item {
        width: fit-content!important;
        position: relative;
        top: -3px;
    }
    .head-btn.elementor-element .elementor-button-icon svg {
        height: 17px;
        width: 17px;
    }
    .wpml-ls-legacy-dropdown {
        width: fit-content!important;
        max-width: 100%;
    }
    .head-search .elementor-shortcode .search-toggle img img {
        width: 20px;
    }

    .wpml-ls-legacy-dropdown a.wpml-ls-item-toggle {
        padding-right: 25px;
    }

/*------------------------------------*/

    .mob-menu,
    .mob-menu ul {
        list-style: none;
        padding: 0;
        margin: 0;
    }

    #mobile-product-dropdown-custom{
        display: none;
    } 

    #mobile-product-dropdown-custom.active{
        display: block; padding-left: 15px;
    }

    /* Panels hidden by default */
    .menu-level-one,
    .menu-level-two {
        display: none;
    }

    .menu-open {
        display: block;
    }

    /* Minimal arrow for the separate toggle control */
    .cust-head-menus ul.elementor-nav-menu li.menu-item-has-children a {
        display:flex;
        justify-content:space-between;
    }
    .cust-head-menus ul.elementor-nav-menu li a .sub-arrow .e-font-icon-svg {
        height: 17px;
        width: 17px;
        position: relative;
        right: -3px;
    }
    .cust-head-menus ul.elementor-nav-menu li a.highlighted .sub-arrow .e-font-icon-svg  {
        fill: #e6002d;
    }
    .cust-head-menus ul.elementor-nav-menu li .submenu-toggle {
        margin-left: 0px;
        cursor: pointer;
        margin: 0;
        width: 0;
        font-size: 0;
    }
    .cust-head-menus ul.elementor-nav-menu li .submenu-toggle::after {
        position: absolute;
        content: "";
       /* background-image: url("/wp-content/uploads/2025/08/menu-aero.svg");
        display: inline-block;
        transition: transform 0.3s ease;
        background-repeat: no-repeat;
        background-size: contain;
        */
        width: 18px;
        height: 18px;
        right: 22px;
        top: 0;
        bottom: 0;
        margin: auto;
        background-color: #000; 
        mask: url(/wp-content/uploads/2025/08/menu-aero.svg) no-repeat center;
        -webkit-mask: url(/wp-content/uploads/2025/08/menu-aero.svg) no-repeat center;
        mask-size: contain;
    }
    .cust-head-menus ul.elementor-nav-menu li .submenu-toggle[aria-expanded="true"]::after {
        background-color: #e6002d;  
        transition:.4s;
    }
    .custom-sec-header .elementor-element ul.elementor-nav-menu > li.menu-item-has-children::before { 
        width: 18px;
        height: 18px;
        right: 22px;
        top: 11px;
        z-index: 0;
    }
    .menu-level-one.menu-open h5 {
        color: #000;
        font-size: 22px;
        line-height: 32px;
        margin: 0px 0px 20px 0px;
        display: block;
    }

    ul.sub-menu-level-one li a {
        font-size: 18px;
        line-height: 28px;
        color: #000;
        text-decoration: none;
    }

    .toggle-submenu::after {
        font-size: 12px;
        margin-left: 5px;
    }

    .menu-level-two {
        background: #FFF;
        padding: 0px;
    }

    ul.sub-menu-level-two li a {
        font-size: 17px;
        line-height: 26px;
        color: #000000;
    }

    ul.sub-menu-level-one li {
        display: flex;
        align-items: center;
    }

    ul.sub-menu-level-one li {
        display: block;
    }

    /*ul.sub-menu-level-one li:hover {
        background: #FCE3E8;
        padding: 10px;
    }*/

    .elementor-nav-menu a {
        align-items: center;
        display: flex;
    }

    .arow-menu-icon {
        display: flex;
        align-items: center;
        position: relative;
    }

    .mob-menu li ul.sub-menu-level-one li a {
        padding:5px 10px!important;
        display: block;
        width: 100%;
        position: relative;
    }

    #mobile-product-dropdown-custom .menu-open ul{  
        display: block;
    }

}




@media only screen and (max-width:767px) {
    
    .head-btn.elementor-element .elementor-button-icon svg {
        height: 14px;
        width: 14px;
    }
    .wpml-ls-legacy-dropdown a.wpml-ls-item-toggle {
        padding-right: 20px;
        font-size: 15px !important;
        padding-left: 5px;
    }
    .wpml-ls-item-toggle::before {
        position: absolute;
        content: "";
        left: 5px;
    }

    .head-btn.elementor-element span.elementor-button-icon {
        margin-left: 3px;
    }
    
    .fr-headmenu-box .wpml-ls-legacy-dropdown a.wpml-ls-item-toggle:after {
        right: 8px;
    }
    
}



@media only screen and (max-width:560px) {

    .head-search img { width: 22px; }
    
    .wpml-ls-legacy-dropdown .wpml-ls-flag+span {
        margin-left: 5px!important;
        font-size: 14px!important;
    }

}


@media only screen and (max-width:370px) {
    .wpml-ls-legacy-dropdown a.wpml-ls-item-toggle {
        font-size: 14px !important;
        padding-left: 3px;
    }
    .wpml-ls-item-toggle::before {
        left: 3px;
        width: 17px;
        height: 17px;
    }

    
}


@media only screen and (max-width:360px) {

    .custom-sec-header .e-con-inner {
        grid-gap: 13px !important;
    }

    .custom-sec-header .e-con-inner .e-con-full .head-search {
        width: 24px;
        padding: 4px 7px 0px 0px;
    }

    .wpml-ls-legacy-dropdown a.wpml-ls-item-toggle {
        padding-left:2px; 
        padding-right: 16px;
    }   
    .wpml-ls-item-toggle::before {
        left: 2px;
    }
    .wpml-ls-legacy-dropdown .wpml-ls-flag+span {
        margin-left: 2px !important;
        margin-right: 3px;
    }

}


.cust-swir-button .elementor-swiper-button.elementor-swiper-button-prev { display:none !important;}
.cust-swir-button .elementor-swiper-button.elementor-swiper-button-next { display:none !important;}