/* --- Hamburger Button Styling (Hidden by Default) --- */
.hamburger-btn {
    display: none; /* Hidden on desktop */
    background: none;
    border: none;
    cursor: pointer;
    padding: 10px;
    margin-left: 15px; /* Space between nav/button and right edge */
    z-index: 100; /* Ensure button is on top */
}

.hamburger-icon {
    display: block;
    width: 25px;
    height: 3px;
    background-color: #333;
    margin: 5px 0;
    transition: transform 0.3s ease, background-color 0.3s ease;
}

/* --- Header (Mostly unchanged) --- */
.site-header {
    background-color: #ffffff00;
    padding: 5px 0; /* Adjusted slightly */
    border-bottom: 1px solid #e7e7e7;
    width: 100%;
    position: relative; /* For potential z-index stacking */
    z-index: 10;
}

/* --- Logo (Unchanged) --- */
.logo {
    margin-right: auto; /* Pushes nav away */
    z-index: 5; /* Ensure logo is clickable if nav overlaps slightly */
    flex-shrink: 0; /* Prevent logo from shrinking if space is tight */
}

.logo img {
    height: 50px;
    width: auto;
    display: block;
}

/* --- Desktop Navigation (Default) --- */
.main-nav ul {
    list-style: none;
    display: flex;
}

.main-nav li {
    margin: 0 15px;
}

.main-nav a {
    text-decoration: none;
    color: #00a4ff;
    font-weight: bold;
    padding: 5px 8px;
    transition: color 0.3s ease;
    display: block;
}

.main-nav a:hover,
.main-nav a:focus {
    color: #0069a1;
}

.main-nav .active a {
    color: #0069a1;
}
/* --- Media Query for Mobile --- */
@media (max-width: 768px) { /* Adjust breakpoint as needed */

    .container {
        min-height: 60px; /* Slightly smaller header on mobile */
    }

    .logo img {
        height: 40px; /* Slightly smaller logo */
    }

    .main-nav {
        /* Positioning for Mobile Menu */
        position: absolute;
        top: 100%; /* Position it right below the header */
        left: 0;
        width: 100%;
        background-color: #000000; /* Background for mobile menu */
        /* Initial Hidden State */
        max-height: 0;
        overflow: hidden;
        transition: max-height 0.4s ease-out; /* Smooth transition */
        z-index: 5; /* Below header but above main content */
        border-bottom: 1px solid #ddd;
    }

    .main-nav ul {
        /* Stack links vertically */
        flex-direction: column;
        padding: 15px 0; /* Add some padding inside the mobile menu */
    }

    .main-nav li {
        margin: 0; /* Remove horizontal margins */
        text-align: center; /* Center links */
    }

    .main-nav a {
        padding: 12px 20px; /* Larger clickable area */
        border-bottom: 1px solid #e0e0e0; /* Separator lines */
        width: 100%; /* Make link take full width */
    }

    .main-nav li:last-child a {
        border-bottom: none; /* No line below the last item */
    }

    .main-nav a:hover,
    .main-nav a:focus {
        background-color: #e9e9e9; /* Highlight on hover */
        color: #0056b3;
    }

    .hamburger-btn {
        display: block; /* Show hamburger on mobile */
    }

    /* --- Style for when menu is OPEN --- */
    .nav-open .main-nav {
        max-height: 400px; /* Or large enough value to show all items */
    }

    /* Optional: Animate Hamburger to an "X" */
    .nav-open .hamburger-icon:nth-child(1) {
        transform: translateY(8px) rotate(45deg);
    }
    .nav-open .hamburger-icon:nth-child(2) {
       opacity: 0;
       transform: scaleX(0);
    }
    .nav-open .hamburger-icon:nth-child(3) {
         transform: translateY(-8px) rotate(-45deg);
    }
    /* Change icon color when open */
    .nav-open .hamburger-icon {
        background-color: #007bff; /* Or your preferred active color */
    }

} /* End of Media Query */