/* =========================================================
   TOPBAR / NAVBAR
========================================================= */

.navbar{
    min-height:72px;
    background:#fff;
    box-shadow:0 4px 18px rgba(8,25,55,.08);
    z-index:999;
    padding:0;
}

.navbar .container-fluid{
    min-height:72px;
}

.logo-wrap{
    display:flex;
    align-items:center;
    gap:9px;
}

.logo-mark-img{
    width:58px;
    height:46px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
}

.logo-mark-img img{
    max-width:100%;
    max-height:100%;
    object-fit:contain;
    display:block;
}

.logo-text{
    border-left:1px solid #ddd;
    padding-left:10px;
    font-size:11px;
    letter-spacing:3px;
    font-weight:800;
    line-height:1.25;
    color:var(--navy);
}

.nav-link{
    color:#1d2940!important;
    font-weight:700;
    font-size:13px;
    margin:0 7px;
    position:relative;
}

.nav-link.active::after,
.nav-link:hover::after{
    content:"";
    position:absolute;
    left:10px;
    bottom:-8px;
    width:32px;
    height:3px;
    background:var(--orange);
    border-radius:20px;
}

.dropdown-menu{
    border:0;
    border-radius:12px;
    box-shadow:0 12px 35px rgba(8,25,55,.14);
    padding:10px;
}

.dropdown-item{
    font-size:14px;
    font-weight:700;
    color:var(--navy);
    border-radius:8px;
    padding:10px 14px;
}

.dropdown-item:hover{
    background:#fff3ea;
    color:var(--orange);
}

/* =========================================================
   TOPBAR RESPONSIVE
========================================================= */

@media(max-width:1199px){
    .nav-link{
        margin:0 4px;
    }
}

@media(max-width:991px){
    .navbar{
        min-height:66px;
        padding:6px 0;
    }

    .navbar .container-fluid{
        min-height:auto;
    }

    .logo-mark-img{
        width:52px;
        height:40px;
    }

    .logo-text{
        font-size:10px;
        letter-spacing:2px;
        padding-left:9px;
    }

    .navbar-toggler{
        padding:4px 8px;
        font-size:16px;
    }

    .navbar-collapse{
        background:#fff;
        padding:14px 0 18px;
        border-top:1px solid #edf0f5;
        margin-top:6px;
    }

    .nav-link{
        margin:4px 0;
        padding:8px 0;
    }

    .nav-link.active::after,
    .nav-link:hover::after{
        left:0;
        bottom:2px;
    }
}

@media(max-width:575px){
    .navbar{
        min-height:62px;
        padding:5px 0;
    }

    .logo-wrap{
        gap:7px;
    }

    .logo-mark-img{
        width:46px;
        height:36px;
    }

    .logo-text{
        font-size:9px;
        letter-spacing:1.6px;
        padding-left:8px;
        line-height:1.25;
    }
}