:root {
    --emerald-green: #0C3B2E;
    --emerald-medium: #1A5C45;
    --metallic-gold: #C6A664;
    --gold-light: #D9B25F;
    --light-bg: #F5F5F0;
    --white: #FFFFFF;
}

/* Desktop menu */
.nav-menu {
    display: flex;
    gap: 1rem;
    list-style: none;
}

/* Hamburger Icon */
.mobile-menu-icon {
    display: none;
    cursor: pointer;
    z-index: 1001;
}
.mobile-menu-icon i {
    width: 28px;
    height: 28px;
    color: var(--emerald-green);
}

/* Mobile Menu Overlay */
.mobile-menu-overlay {
    display: none;
    position: fixed;
    top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(0,0,0,0.5);
    z-index: 1001;
    opacity: 0;
    transition: opacity 0.3s ease;
}
.mobile-menu-overlay.active {
    display: block;
    opacity: 1;
}

/* Mobile Drawer Styles */
@media (max-width: 1024px) {
    .mobile-menu-icon {
        display: block;
    }

    .nav-menu {
        position: fixed;
        top: 0;
        right: -100%;
        width: 320px;
        max-width: 85vw;
        height: 100vh;
        background: white;
        flex-direction: column;
        padding: 0;
        gap: 0;
        z-index: 1002;
        overflow-y: auto;
        box-shadow: -5px 0 25px rgba(0,0,0,0.2);
        transition: right 0.3s ease-in-out;
    }

    .nav-menu.active {
        right: 0;
    }

    .mobile-menu-header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 1.5rem;
        border-bottom: 2px solid var(--metallic-gold);
        background: linear-gradient(135deg, var(--emerald-green), var(--emerald-medium));
    }

    .mobile-menu-logo {
        font-family: 'Playfair Display', serif;
        font-size: 1.25rem;
        font-weight: 700;
        color: var(--metallic-gold);
    }

    .mobile-menu-close {
        width: 40px;
        height: 40px;
        background: rgba(255,255,255,0.1);
        border: 1px solid rgba(255,255,255,0.3);
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;
        transition: all 0.3s ease;
    }

    .mobile-menu-close:hover {
        background: var(--metallic-gold);
        transform: rotate(90deg);
    }

    .mobile-menu-close i {
        width: 24px;
        height: 24px;
        color: white;
    }

    .nav-menu li {
        width: 100%;
        border-bottom: 1px solid #E5E7EB;
        padding: 0;
    }

    .nav-menu li:last-child {
        border-bottom: none;
    }

    .nav-menu a {
        display: block;
        padding: 1rem 1.5rem;
        width: 100%;
        color: var(--emerald-green);
        font-weight: 500;
        transition: all 0.3s ease;
    }

    .nav-menu a:hover,
    .nav-menu a.active {
        color: white;
        background: var(--metallic-gold);
        padding-left: 2rem;
    }

    .nav-menu .btn-primary {
        margin: 1.5rem;
        justify-content: center;
        width: calc(100% - 3rem);
        padding: 1rem 1.5rem;
    }

    body.menu-open {
        overflow: hidden;
    }
}

@media (min-width: 1025px) {
    .mobile-menu-overlay {
        display: none !important;
    }
}
