/*==============================================================
  HEADER / NAVIGATION
==============================================================*/

#header{
    position:fixed;
    top:0;
    left:0;
    width:100%;
    z-index:9999;
    transition:all .4s ease;
}

#header.scrolled{
    background:rgba(3,7,18,.96);
    backdrop-filter:blur(20px);
    box-shadow:0 12px 35px rgba(0,0,0,.35);
}

.navbar{
    min-height:90px;
    padding:0;
}

.navbar-brand{
    display:flex;
    align-items:center;
}

.navbar-brand img{
    height:60px;
    width:auto;
    transition:.4s;
}

#header.scrolled .navbar-brand img{
    height:52px;
}

/*==============================================================
 NAVIGATION
==============================================================*/

.navbar-nav{
    align-items:center;
    gap:12px;
}

.nav-item{
    position:relative;
}

.nav-link{

    color:#fff;
    font-size:15px;
    font-weight:600;
    letter-spacing:.3px;

    padding:34px 18px !important;

    transition:.35s;

    position:relative;

}

.nav-link:hover{
    color:var(--primary);
}

.nav-link.active{
    color:var(--primary);
}

/* Gold underline */

.nav-link::after{

    content:'';

    position:absolute;

    left:18px;

    bottom:22px;

    width:0;

    height:2px;

    background:var(--primary);

    transition:.35s;

}

.nav-link:hover::after,
.nav-link.active::after{

    width:calc(100% - 36px);

}

/*==============================================================
 INVESTOR BUTTON
==============================================================*/

.btn-invest{

    margin-left:25px;

    padding:14px 28px;

    background:linear-gradient(
        135deg,
        var(--primary),
        var(--primary-light)
    );

    color:#111;

    border-radius:40px;

    font-weight:700;

    transition:.35s;

    box-shadow:0 12px 35px rgba(212,175,55,.25);

}

.btn-invest:hover{

    transform:translateY(-3px);

    color:#111;

    box-shadow:0 18px 45px rgba(212,175,55,.40);

}

/*==============================================================
 MEGA MENU
==============================================================*/

.mega-dropdown{
    position:static;
}

.mega-menu{

    position:absolute;

    left:50%;

    transform:translateX(-50%) translateY(20px);

    width:900px;

    background:#ffffff !important;
    
    color:#222;

    border-radius:18px;

    padding:40px;

    box-shadow:0 30px 80px rgba(0,0,0,.15);

    opacity:0;

    visibility:hidden;

    transition:.35s ease;

    border-top:4px solid var(--primary);
    
    z-index:99999;

}

.mega-menu *{

    background:transparent !important;

}

.mega-dropdown:hover .mega-menu{

    opacity:1;

    visibility:visible;

    transform:translateX(-50%) translateY(0);

}

.mega-menu h5{

    color:var(--primary);

    margin-bottom:20px;

    font-size:18px;

}

.mega-menu a{

    display:block;

    padding:10px 0;

    color:#222;
    
    text-decoration:none;

    transition:.3s;

}

.mega-menu a:hover{

    color:var(--primary) !important;

    padding-left:8px;

}

/*==============================================================
 DROPDOWN ANIMATION
==============================================================*/

.mega-menu .col-lg-4{

    animation:fadeDown .5s ease;

}

@keyframes fadeDown{

    from{

        opacity:0;

        transform:translateY(20px);

    }

    to{

        opacity:1;

        transform:translateY(0);

    }

}

/*==============================================================
 MOBILE TOGGLER
==============================================================*/

.navbar-toggler{

    border:none;

    box-shadow:none;

    color:#fff;

    font-size:30px;

}

.navbar-toggler:focus{

    box-shadow:none;

}

/*==============================================================
 MOBILE MENU
==============================================================*/

@media(max-width:1199px){

.navbar{

    min-height:80px;

}

.navbar-collapse{

    position:fixed;

    top:0;

    right:-100%;

    width:320px;

    height:100vh;

    background:#081C2D;

    padding:100px 35px;

    transition:.4s;

    overflow-y:auto;

}

.navbar-collapse.show{

    right:0;

}

.navbar-nav{

    display:block;

}

.nav-item{

    width:100%;

}

.nav-link{

    display:block;

    padding:18px 0 !important;

}

.nav-link::after{

    display:none;

}

.btn-invest{

    display:inline-block;

    margin:30px 0 0;

}

.mega-menu{

    position:relative;

    width:100%;

    left:auto;

    top:auto;

    transform:none;

    opacity:1;

    visibility:visible;

    display:none;

    padding:20px;

    margin-top:15px;

    background:#0c2437;

    box-shadow:none;

}

.mega-menu *{

    background:transparent !important;

}

.mega-dropdown:hover .mega-menu{

    transform:none;

}

.mega-dropdown.open .mega-menu{

    display:block;

}

}

/*==============================================================
 SMALL DEVICES
==============================================================*/

@media(max-width:768px){

.navbar-brand img{

    height:48px;

}

.navbar-collapse{

    width:100%;

}

.btn-invest{

    width:100%;

    text-align:center;

}

}

/*==============================================================
 LARGE DESKTOP
==============================================================*/

@media(min-width:1600px){

.navbar{

    min-height:100px;

}

.nav-link{

    font-size:16px;

}

.mega-menu{

    width:1050px;

}

}
/* Keep mobile navigation within the viewport, including narrow phones. */
@media (max-width:1199.98px){

    #header > .container-fluid{padding-inline:16px;}
    #header .navbar{width:100%; min-width:0; flex-wrap:nowrap; gap:12px;}
    #header .navbar-brand{min-width:0; margin-right:0;}
    #header .navbar-brand img{max-width:100%; object-fit:contain;}
    #header .navbar-toggler{
        position:relative; z-index:2; flex:0 0 44px;
        width:44px; height:44px; padding:0; margin-left:auto;
    }
    #header .navbar-collapse{
        z-index:1; width:min(320px, calc(100vw - 24px));
        max-width:100%; height:100dvh; padding:90px 24px 28px;
        overflow-x:hidden;
    }
    #header .btn-invest{
        width:auto; max-width:100%; padding:12px 18px;
        font-size:14px; white-space:normal; overflow-wrap:anywhere;
    }
    #header .mega-menu{min-width:0;}
    body.menu-open{overflow:hidden;}
}

/* Contain off-screen reveal animations without horizontal page scrolling. */
html{overflow-x:clip;}
