/* --- General Styles --- */
body {
    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif
}

.logo {
    width: 100%;
    height: auto;
}

@media(max-width:767px) {
    .logo {
        width: 144px;
    }
}

/* --- Navbar Links --- */
.navbar-nav a {
    color: #263474 !important;
    font-size: 18px;
    font-weight: 700;
    text-decoration: none;
}

@media(max-width:1200px) {
    .navbar-nav a {
        font-size: 14px;
    }
}

.navbar-nav a:hover {
    color: #2F9CD7 !important;
}

/* --- Simplified Active State --- */
.nav-link.active {
    color: #2D96D0 !important;
    font-weight: 700 !important;
}

.nav-link.active::after {
    display: none !important;
}

/* --- Dropdown Layout (Single Column, 3 Rows) --- */
.dropdown-menu.navdrop {
    min-width: 280px;
    padding: 15px 0;
    border-radius: 8px;
    border: none;
}

/* This ensures the sections stack vertically */
.dropdown-columns-container {
    display: flex;
    flex-direction: column; 
}

.dropdown-column {
    padding: 0 20px;
    margin-bottom: 15px;
}

.dropdown-column:last-child {
    margin-bottom: 0;
}

.dropdown-column-header {
    font-size: 12px;
    text-transform: uppercase;
    color: #263474;
    font-weight: 800;
    margin-bottom: 5px;
    border-bottom: 2px solid #2D96D0;
    padding-bottom: 3px;
    letter-spacing: 0.5px;
}

/* Links inside the rows */
.dropdown-column .dropdown-item {
    padding: 10px 0;
    border-bottom: 1px solid #f0f0f0;
    font-size: 14px;
    color: #263474 !important;
    background: transparent !important;
}

.dropdown-column .dropdown-item:hover {
    color: #2D96D0 !important;
}

.dropdown-column .dropdown-item:last-child {
    border-bottom: none;
}

/* --- Desktop Hover & Gap Logic --- */
@media (min-width: 992px) {
    .nav-item.dropdown:hover .dropdown-menu {
        display: block;
        margin-top: 15px !important; /* The 1-line gap */
    }

    /* Bridge to prevent the menu from closing in the gap */
    .nav-item.dropdown::after {
        content: "";
        position: absolute;
        width: 100%;
        height: 20px;
        bottom: -20px;
        left: 0;
    }
}

/* --- Mobile Fix --- */
@media (max-width: 991px) {
    .dropdown-menu.navdrop {
        display: none; /* Let Bootstrap toggle handle it */
        width: 100%;
        box-shadow: none !important;
        background-color: #f9f9f9;
        margin-top: 0 !important;
    }

    /* Bootstrap class to show menu when clicked on mobile */
    .dropdown-menu.show {
        display: block;
    }

    .dropdown-column {
        padding: 10px 25px;
    }
}

/* --- Toggler Color --- */
button.navbar-toggler {
    color: #263474;
}

@media (min-width: 992px) {
  /* Hides the arrow */
  .navbar-nav .dropdown-toggle::after {
    display: none !important;
  }
}

/* Force the active state color on both main links and dropdown items */
.navbar-nav .nav-link.active,
.dropdown-item.active {
    color: #2D96D0 !important;
    font-weight: 700 !important;
    background-color: transparent !important; /* Prevents gray background */
}