.nav-link {
    position: relative;
    color: #1e3a8a;
    transition: .25s;
}

.nav-link:hover {
    color: #dc2626;
}

.nav-link::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -8px;
    width: 0;
    height: 3px;
    background: linear-gradient(to right, #2563eb, #dc2626);
    border-radius: 3px;
    transition: .3s;
}

.nav-link:hover::after {
    width: 100%;
}

.mobile-link {
    display: block;
    padding: 12px;
    border-radius: 12px;
    transition: .25s;
}

.mobile-link:hover {
    background: #eff6ff;
    color: #1d4ed8;
}

.nav-shadow {
    box-shadow: 0 10px 30px rgba(0, 0, 0, .08);
}

.nav-hidden {
    transform: translateY(-100%);
}