/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */
/* Fix Elementor Submenu Hover Issue */

/* Ensure the nav menu and container aren't hiding overflow */
.elementor-nav-menu--main {
    overflow: visible !important;
}

/* Force the submenu to show on hover of the LI */
.elementor-nav-menu--main li.menu-item-has-children:hover > ul.sub-menu,
.elementor-nav-menu--main li.menu-item-has-children:hover > .elementor-nav-menu--dropdown {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    display: block !important;
    transition: opacity 0.3s ease-in-out !important;
    z-index: 99999 !important;
    position: absolute !important;
    /* User Requested Styles */
    background: linear-gradient(160deg, #c9a227 0%, #000000 80%) !important;
    border-radius: 10px !important;
    min-width: 200px;
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1);
    /* Prevent sharp corners from inner links protruding outside the border radius */
    overflow: hidden; 
    color: white;
}

/* Deep submenus if any */
.elementor-nav-menu--main ul.sub-menu li.menu-item-has-children:hover > ul.sub-menu {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    display: block !important;
}

/* Submenu Links Styling (White Text) */
.elementor-nav-menu--main ul.sub-menu a.elementor-sub-item,
.elementor-nav-menu--main .elementor-nav-menu--dropdown a {
    color: #ffffff !important;
    position: relative;
    text-decoration: none !important;
}

/* Left-to-Right Animated Border Bottom on Hover */
.elementor-nav-menu--main ul.sub-menu a.elementor-sub-item::after,
.elementor-nav-menu--main .elementor-nav-menu--dropdown a::after {
    content: '';
    position: absolute;
    bottom: 5px; /* Adjust according to padding */
    left: 0;
    width: 0;
    height: 2px; /* Border thickness */
    background-color: #ffffff;
    transition: width 0.3s ease-in-out;
}

.elementor-nav-menu--main ul.sub-menu a.elementor-sub-item:hover::after,
.elementor-nav-menu--main .elementor-nav-menu--dropdown a:hover::after,
.elementor-nav-menu--main ul.sub-menu li.current-menu-item > a::after,
.elementor-nav-menu--main ul.sub-menu a.elementor-item-active::after,
.elementor-nav-menu--main .elementor-nav-menu--dropdown .current-menu-item > a::after {
    width: 100%;
}

/* Ensure background of individual links doesn't change on hover or when active */
.elementor-nav-menu--main ul.sub-menu a.elementor-sub-item:hover,
.elementor-nav-menu--main ul.sub-menu a.elementor-sub-item:focus,
.elementor-nav-menu--main .elementor-nav-menu--dropdown a:hover,
.elementor-nav-menu--main ul.sub-menu li.current-menu-item > a,
.elementor-nav-menu--main ul.sub-menu a.elementor-item-active,
.elementor-nav-menu--main .elementor-nav-menu--dropdown .current-menu-item > a {
    background-color: transparent !important;
    background: transparent !important;
}

/* --- Fix for Mobile Hamburger Menu Not Opening --- */

/* Ensure the toggle button itself is always clickable and on top */
.elementor-menu-toggle {
    z-index: 100000 !important;
    pointer-events: auto !important;
}

/* Base styles for the mobile dropdown to ensure it stays absolute during close animation */
.elementor-nav-menu--dropdown {
    position: absolute !important;
    width: 250px !important;
    right: 0 !important; /* Align to right side */
    left: auto !important;
    top: 100% !important; /* Position below the header */
    background-color: #000000 !important;
    padding: 10px 0 !important;
    z-index: 99999 !important;
}

/* Force the mobile dropdown to show when Elementor JS adds the active class */
.elementor-menu-toggle.elementor-active ~ .elementor-nav-menu--dropdown,
.elementor-nav-menu--dropdown.elementor-active,
.elementor-nav-menu-wrapper.elementor-active .elementor-nav-menu--dropdown {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    height: auto !important;
}

/* Ensure mobile menu text is white */
.elementor-nav-menu--dropdown a, 
.elementor-nav-menu--dropdown a.elementor-sub-item {
    color: #ffffff !important;
}

/* Ensure the parent columns don't hide the dropdown */
.elementor-widget-nav-menu,
.elementor-widget-nav-menu .elementor-widget-container,
.elementor-column {
    overflow: visible !important;
}

/* Fix mobile submenu not showing when active */
.elementor-nav-menu--dropdown .menu-item-has-children.elementor-active > ul.sub-menu {
    display: block !important;
    position: relative !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/* Add a dropdown arrow to mobile submenu items */
.elementor-nav-menu--dropdown .menu-item-has-children > a {
    position: relative !important;
    padding-right: 30px !important; /* give space for the arrow */
    display: block !important;
}

/* Ensure Elementor's default arrows (if any) are white */
.elementor-nav-menu--dropdown .menu-item-has-children .sub-arrow,
.elementor-nav-menu--dropdown .menu-item-has-children .sub-arrow i {
    color: #ffffff !important;
}

/* Custom Dropdown Arrow */
.elementor-nav-menu--dropdown .menu-item-has-children > a::after {
    content: "\25BC" !important; /* Downwards arrow ▼ */
    font-size: 12px !important;
    position: absolute !important;
    right: 15px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    transition: transform 0.3s ease !important;
    color: #ffffff !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    z-index: 10 !important;
}

/* Rotate arrow when submenu is open */
.elementor-nav-menu--dropdown .menu-item-has-children.elementor-active > a::after {
    transform: translateY(-50%) rotate(180deg) !important;
    color: #ffffff !important;
}

/* Ensure mobile submenus (like Other Services) have black background and white text */
.elementor-nav-menu--dropdown ul.sub-menu {
    background-color: #000000 !important;
    padding-left: 15px !important; /* slightly indent the submenu */
}

.elementor-nav-menu--dropdown ul.sub-menu a,
.elementor-nav-menu--dropdown ul.sub-menu a.elementor-sub-item {
    color: #ffffff !important;
    background-color: #000000 !important;
}
