/* ----------------------------------------------------------
   WORKING MEGA MENU WITH ICONS
---------------------------------------------------------- */

#site-header {
    z-index: 1000;
    max-width: unset;
}

/* Make top-level menu items anchor points */
.mega-nav-enabled ul.menu>.menu-item-has-children {
    position: static;
}

/* Main menu styling */
.mega-nav-enabled ul.menu {
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0;
    gap: 4px;
}

.mega-nav-enabled ul.menu>.menu-item>a {
    display: inline-block;
    padding: 12px 20px;
    text-decoration: none;
    font-weight: 600;
    font-size: 15px;
    color: #0A2B3E;
    transition: color 0.15s;
}

.mega-nav-enabled ul.menu>.menu-item>a:hover {
    color: #00A1AB;
}

/* ========== MEGA PANEL ========== */
.mega-nav-enabled .sub-menu.mega-panel {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: #ffffff;
    border-top: 3px solid #00A1AB;
    box-shadow: 0 12px 48px rgba(0, 0, 0, 0.12);
    display: flex;
    flex-wrap: wrap;
    padding: 28px 36px;
    gap: 28px;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(-8px);
    transition: opacity 0.22s, transform 0.22s, visibility 0.22s;
    z-index: 9999;
    list-style: none;
    margin: 0;
}

/* Show mega panel on hover */
.mega-nav-enabled ul.menu>.menu-item-has-children:hover>.sub-menu {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
}

/* Second level items become columns */
.mega-panel>.menu-item {
    flex: 1 1 200px;
    list-style: none;
    margin: 0;
    padding: 0;
}

/* Second level links (column titles) */
.mega-panel>.menu-item>a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    text-decoration: none;
    font-weight: 800;
    font-size: 16px;
    padding: 8px 0;
    margin-bottom: 12px;
    color: #0A2B3E;
    border-bottom: 2px solid #00A1AB;
}

.mega-panel>.menu-item>a:hover {
    color: #00A1AB;
}

/* Yellow arrow for column titles */
.mega-panel>.menu-item>a::after {
    content: '→';
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: #FFB81C;
    color: #0A2B3E;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    flex-shrink: 0;
}

/* ========== THIRD LEVEL (Always Visible) ========== */
.mega-panel .sub-menu {
    position: static !important;
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    background: transparent !important;
    box-shadow: none !important;
    border: none !important;
    padding: 8px 0 0 16px !important;
    margin: 0 !important;
    list-style: none;
}

/* Third level links */
.mega-panel .sub-menu .menu-item>a {
    display: block;
    text-decoration: none;
    font-weight: normal;
    font-size: 14px;
    padding: 6px 0;
    color: #4a5568;
}

.mega-panel .sub-menu .menu-item>a:hover {
    color: #00A1AB;
    padding-left: 4px;
}

/* Remove yellow arrow from third level */
.mega-panel .sub-menu .menu-item>a::after {
    display: none !important;
}

/* ========== ICON STYLING ========== */
.menu-icon {
    display: inline-block;
    margin-right: 8px;
    font-size: 1.1em;
}

.menu-link i {
    margin-right: 8px;
    width: 20px;
}

/* ========== APARTMENTS SECTION STYLING ========== */
/* Target the apartments section specifically */
.mega-panel>.menu-item:last-child>a {
    background: #F8F9FA;
    padding: 12px 16px;
    border-radius: 8px;
    /* margin-top: -8px; */
}

/* Make state links in apartments section two columns */
.mega-panel>.menu-item:last-child .sub-menu {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr);
    gap: 8px 16px;
    padding: 12px 0 0 0 !important;
}

/* ========== MOBILE ========== */
@media (max-width: 768px) {
    .mega-nav-enabled .sub-menu.mega-panel {
        position: static;
        display: none;
        flex-direction: column;
        padding: 16px;
        opacity: 1;
        visibility: visible;
        transform: none;
    }

    .mega-nav-enabled ul.menu>.menu-item-has-children.show>.sub-menu {
        display: flex;
    }

    .mega-panel>.menu-item:last-child .sub-menu {
        grid-template-columns: 1fr;
    }
}

.custom-logo {
    max-width: 150px;
    height: auto;
}