nav{
    position:fixed;
    top:0;
    left:0;
    right:0;
    background:linear-gradient(135deg, rgba(15,17,21,0.95) 0%, rgba(27,31,38,0.95) 100%);
    backdrop-filter:blur(10px);
    padding:15px 40px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    z-index:1000;
    border-bottom:1px solid rgba(123,97,255,0.1);
}


.nav-toggle{
    display:none;
    align-items:center;
    justify-content:center;
    width:40px;
    height:40px;
    background:transparent;
    border:0;
    cursor:pointer;
}
.nav-toggle .hamburger{
    position:relative;
    display:block;
    width:22px;
    height:2px;
    background:#cbd5e1;
    border-radius:2px;
    transition:transform .25s ease, background .25s ease;
}
.nav-toggle .hamburger::before,
.nav-toggle .hamburger::after{
    content:'';
    position:absolute;
    left:0;
    width:22px;
    height:2px;
    background:#cbd5e1;
    border-radius:2px;
    transition:transform .25s ease, opacity .25s ease;
}
.nav-toggle .hamburger::before{ top:-7px; }
.nav-toggle .hamburger::after{ top:7px; }
.nav-toggle.open .hamburger{ background:transparent; }
.nav-toggle.open .hamburger::before{ transform:translateY(7px) rotate(45deg); }
.nav-toggle.open .hamburger::after{ transform:translateY(-7px) rotate(-45deg); }

@media (max-width:768px){
    .nav-toggle{ display:flex !important; }

    /* force-hide menu on small screens regardless of page CSS */
    nav .nav-links{
        position:absolute;
        top:64px;
        right:20px;
        background:linear-gradient(135deg, rgba(15,17,21,0.98), rgba(27,31,38,0.98));
        display:none !important;
        flex-direction:column;
        gap:6px;
        padding:12px;
        border-radius:10px;
        min-width:200px;
        box-shadow:0 10px 30px rgba(0,0,0,0.6);
        border:1px solid rgba(123,97,255,0.06);
        z-index:1100;
    }

    nav .nav-links.open{ display:flex !important; }

    .nav-links li{ width:100%; }

    .nav-links a{ display:block; padding:10px 12px; }

    nav{ padding:12px 20px; }
    .nav-links{ gap:15px; }
    .nav-links a{ font-size:0.85rem; padding:6px 10px; }
    .nav-btn-download{ padding:8px 16px !important; font-size:0.85rem; }

    /* ensure header doesn't get covered by nav on small screens */
    header{ margin-top:110px; min-height:calc(100vh - 110px); }
}
.nav-logo{
    font-size:1.5rem;
    font-weight:700;
    background:linear-gradient(135deg, #ffffff 0%, #e0e7ff 100%);
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
    background-clip:text;
    text-decoration:none;
}

.nav-links{
    display:flex;
    gap:20px;
    align-items:center;
    list-style:none;
}

.nav-links a{
    color:#cbd5e1;
    text-decoration:none;
    font-size:0.95rem;
    font-weight:500;
    transition:all 0.3s ease;
    padding:8px 12px;
    border-radius:6px;
}

.nav-links a:hover{
    color:#ffffff;
    background:rgba(123,97,255,0.1);
}

.nav-btn-download{
    background:linear-gradient(135deg, #7b61ff 0%, #6b4fee 100%);
    color:white !important;
    padding:10px 20px !important;
    border-radius:8px !important;
    box-shadow:0 4px 15px rgba(123,97,255,0.3);
    transition:all 0.3s ease;
}

.nav-btn-download:hover{
    transform:translateY(-2px);
    box-shadow:0 6px 20px rgba(123,97,255,0.4);
    background:linear-gradient(135deg, #6b4fee 0%, #5a3ddc 100%) !important;
}