/* ==========================
   MAIN NAVIGATION
   ========================== */

.header-section-2 {
    background-color: #fff;
    box-shadow: 0 2px 4px rgba(0,0,0,0.05);
	border-top: 1px solid #e3e3e3;
}

.main-navigation-wrapper {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

.main-navigation-container {
    display: block;
}

.main-menu {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
}

.main-menu li {
    margin: 0;
    padding: 0;
}

/* Default menu item style */
.main-menu li a {
    display: block;
    padding: 15px 20px;
    color: #333;
    text-decoration: none;
    font-size: 14px;
    font-weight: bold;
    text-align: center;
    transition: color 0.3s ease, background-color 0.3s ease;
    border-bottom: 3px solid transparent;
}

/* Hover effect for items WITHOUT submenu */
.main-menu > li:not(.menu-item-has-children) a:hover,
.main-menu > li:not(.menu-item-has-children) a:focus {
    color: #333;
    border-bottom-color: #FFD700; /* زرد */
}

/* Hover effect for items WITH submenu: no border on parent */
.main-menu > li.menu-item-has-children a:hover,
.main-menu > li.menu-item-has-children a:focus {
    color: #333;
    border-bottom-color: transparent;
}

/* Active menu item */
.main-menu li.current-menu-item > a,
.main-menu li.current_page_item > a {
    color: #333;
    border-bottom-color: #FFD700;
}

/* ==========================
   SUBMENU STYLES
   ========================== */

.main-menu > li {
    position: relative;
}

.main-menu .sub-menu {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: auto;
    background-color: #fff;
    box-shadow: 0 4px 8px rgba(0,0,0,0.1);
    min-width: 200px;
    z-index: 999;
    border-top: 3px solid #FFD700;
    animation: fadeIn 0.3s ease-in-out;
    direction: rtl;
    text-align: right;
    padding: 0;
    margin: 0;
    max-height: none;
    overflow: visible;
}

body.rtl .main-menu .sub-menu {
    left: auto;
    right: 0;
}

.main-menu > li:hover > .sub-menu {
    display: block;
}

.main-menu .sub-menu li {
    margin: 0;
    padding: 0;
    list-style: none;
}

.main-menu .sub-menu a {
    display: block;
    padding: 12px 20px;
    color: #333; /* متن همیشه سیاه */
    text-decoration: none;
    font-size: 14px;
    transition: background-color 0.3s ease;
    border-bottom: 1px solid #eee;
    text-align: center;
    position: relative;
    margin: 0;
}

.main-menu .sub-menu a:last-child {
    border-bottom: none;
}

/* === FINAL HOVER STYLE FOR SUBMENU ITEMS === */
.main-menu .sub-menu li a:hover,
.main-menu .sub-menu li a:focus,
.main-menu .sub-menu li a:active {
    background-color: #ffd70070 !important; /* زرد کم‌رنگ */
    color: #333 !important; /* متن سیاه */
    outline: none !important;
    box-shadow: none !important;
    border-color: #eee !important;
}

/* Remove any default browser styles */
.main-menu .sub-menu a:-webkit-any-link {
    background-color: transparent !important;
}

/* Remove bullet points */
.main-menu .sub-menu a::before,
.main-menu .sub-menu a::after {
    display: none !important;
}

/* Submenu arrow indicator */
.main-menu > li > a::after {
    content: ' ▾';
    font-size: 12px;
    margin-left: 5px;
    color: #FFD700;
}

.main-menu > li:not(:hover) > a::after {
    content: ' ▸';
}

/* ==========================
   MOBILE MENU
   ========================== */

@media (max-width: 768px) {
    .menu-toggle {
        display: flex;
        position: absolute;
        left: 20px;
        top: 50%;
        transform: translateY(-50%);
    }

    .main-navigation-wrapper {
        padding: 0;
    }

    .main-menu {
        display: none;
        flex-direction: column;
        background-color: #fff;
        position: absolute;
        top: 100px;
        left: 0;
        right: 0;
        z-index: 999;
        box-shadow: 0 4px 6px rgba(0,0,0,0.1);
    }

    .main-navigation.toggled .main-menu {
        display: flex;
    }

    .main-menu > li {
        position: relative;
    }

    .main-menu .sub-menu {
        position: static;
        display: none;
        background-color: #f9f9f9;
        box-shadow: none;
        border-top: none;
        animation: none;
        padding: 0;
        margin: 0;
    }

    .main-menu > li:hover > .sub-menu {
        display: none;
    }

    .main-menu > li > a {
        padding: 12px 20px;
        border-bottom: 1px solid #eee;
        justify-content: center;
    }

    .main-menu > li > a::after {
        content: ' ▸';
    }

    .main-menu > li.has-submenu > a::after {
        content: ' ▾';
    }

    .main-menu > li.has-submenu:hover > .sub-menu {
        display: block;
    }

    .main-menu > li.has-submenu > a {
        padding-right: 30px;
    }

    .main-menu > li.has-submenu > a::after {
        position: absolute;
        right: 10px;
        top: 50%;
        transform: translateY(-50%);
    }

    .main-menu .sub-menu li {
        list-style: none;
        margin: 0;
        padding: 0;
    }

    .main-menu .sub-menu a {
        padding: 12px 20px;
        border-bottom: 1px solid #eee;
        color: #333;
    }

    .main-menu .sub-menu a:last-child {
        border-bottom: none;
    }

    .main-menu .sub-menu li a:hover,
    .main-menu .sub-menu li a:focus {
        background-color: #FFF8E1 !important;
        color: #333 !important;
        outline: none !important;
    }

    .main-menu .sub-menu a::before,
    .main-menu .sub-menu a::after {
        display: none !important;
    }
}

/* ==========================
   ANIMATIONS
   ========================== */

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}