/* Base styles for the BEM block */
        .navbar {
            background-color: #1a202c;
            color: white;
            padding: 1rem;
            display: flex;
            justify-content: space-between;
            align-items: center;
            font-family: 'Inter', sans-serif;
            border-bottom: 2px solid #2d3748;
        }

        /* BEM Element: Navbar menu */
        .navbar__menu {
            list-style: none;
            display: flex;
            gap: 2rem;
        }
        
        /* BEM Modifier for mobile menu */
        .navbar__menu--mobile {
            /* Now uses flexbox and position to control visibility */
            display: flex;
            flex-direction: column;
            position: absolute;
            top: 0;
            left: -100%; /* Initially off-screen */
            width: 100%;
            height: 100vh;
            background-color: #2d3748;
            padding-top: 4rem;
            align-items: center;
            transition: left 1.7s ease-in-out;
            transition-delay: 0.3s;
        }

        /* BEM Modifier for open state (mobile) */
        .navbar__menu--open {
            left: 0; /* Slide into view */
        }

        /* BEM Element: Toggle button */
        .navbar__toggle {
            display: none; /* Hidden on desktop */
            background: none;
            border: none;
            cursor: pointer;
            z-index: 100;
        }
        
        /* Hamburger icon styles */
        .navbar__toggle-icon,
        .navbar__toggle-icon::before,
        .navbar__toggle-icon::after {
            display: block;
            width: 25px;
            height: 3px;
            background-color: white;
            border-radius: 3px;
            transition: transform 0.3s ease, background-color 0.3s ease;
        }

        .navbar__toggle-icon {
            position: relative;
        }

        .navbar__toggle-icon::before,
        .navbar__toggle-icon::after {
            content: '';
            position: absolute;
            left: 0;
        }
        
        .navbar__toggle-icon::before {
            top: -8px;
        }
        
        .navbar__toggle-icon::after {
            top: 8px;
        }
        
        /* State for the icon when the menu is open */
        .navbar__toggle--is-open .navbar__toggle-icon {
            background-color: transparent; /* Middle line disappears */
        }
        
        .navbar__toggle--is-open .navbar__toggle-icon::before {
            transform: translateY(8px) rotate(45deg);
        }
        
        .navbar__toggle--is-open .navbar__toggle-icon::after {
            transform: translateY(-8px) rotate(-45deg);
        }
        
        .navbar__link {
            text-decoration: none;
            color: white;
            font-size: 1.25rem;
            font-weight: 500;
            padding: 0.5rem 1rem;
            border-radius: 0.5rem;
            transition: background-color 0.3s ease;
        }

        .navbar__link:hover {
            background-color: #4a5568;
        }

        /* Responsive design with media queries */
        @media (max-width: 768px) {
            .navbar__toggle {
                display: block;
            }

            /* No longer hiding the menu here */
            .navbar__menu {
                /* Inherits from navbar__menu--mobile */
            }
        }
        
        @media (min-width: 769px) {
            .navbar__menu--mobile {
                all: unset; /* Reset all mobile styles for desktop */
                display: flex;
                flex-direction: row;
                gap: 2rem;
                list-style: none;
                width: auto;
                height: auto;
                background-color: transparent;
                padding: 0;
                position: static;
            }
            .navbar__menu--mobile .navbar__link {
                color: white;
            }
        }