/* Shared marketing navigation: links first, featured offers second. */
#primary-navigation .marketing-sign-in { margin-left: 0; }
#primary-navigation .nav-dropdown-menu[hidden] { display: none !important; }
#primary-navigation .nav-dropdown-trigger[aria-expanded="true"]::after {
    transform: translateY(2px) rotate(225deg);
}
#primary-navigation .nav-dropdown-trigger[aria-expanded="false"]::after {
    transform: translateY(-2px) rotate(45deg);
}
#primary-navigation .nav-dropdown-menu {
    opacity: 1;
    visibility: visible;
    transform: none;
}
#primary-navigation .nav-link:focus-visible,
#primary-navigation a:focus-visible,
#primary-navigation .nav-promo-controls button:focus-visible {
    outline: 2px solid var(--cyan);
    outline-offset: 3px;
}
#primary-navigation .nav-business-menu {
    width: 330px;
    right: 0;
    left: auto;
    max-height: min(640px, calc(100vh - 110px));
    overflow-y: auto;
    overscroll-behavior: contain;
    background: #081626;
}
#primary-navigation .nav-business-group::after { display: none; }
#primary-navigation .nav-business-group > .nav-dropdown-trigger {
    width: 100%;
    min-height: 46px;
    padding: 8px 12px;
    justify-content: space-between;
    text-align: left;
    white-space: normal;
    color: var(--muted-strong);
    border-radius: 10px;
}
#primary-navigation .nav-business-group > .nav-dropdown-trigger:hover {
    background: rgba(130, 220, 255, .1);
}
#primary-navigation .nav-business-group > .nav-dropdown-menu {
    position: static;
    min-width: 0;
    padding: 4px 0 8px 10px;
    margin: 0 6px 8px;
    border: 0;
    border-left: 1px solid var(--line);
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}
#primary-navigation .nav-business-group > .nav-dropdown-menu::before { display: none; }
#primary-navigation .nav-business-group a { white-space: normal; min-height: 42px; }
#primary-navigation .marketing-sign-in > .nav-dropdown-menu { right: 0; left: auto; }

@media (max-width: 1180px) {
    .site-header .nav-bar { gap: 12px; }
    #primary-navigation {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        margin-top: 0;
        max-height: calc(100vh - 106px);
        max-height: calc(100dvh - 106px);
        overflow-y: auto;
        overscroll-behavior: contain;
        align-items: start;
    }
    #primary-navigation .nav-menu-list { min-width: 0; gap: 4px; }
    #primary-navigation .nav-link {
        padding: 10px 8px;
        min-height: 46px;
        white-space: normal;
        text-align: left;
        line-height: 1.35;
    }
    #primary-navigation .nav-dropdown-trigger { justify-content: space-between; gap: 8px; }
    #primary-navigation .nav-dropdown-trigger::after { flex: 0 0 7px; margin-left: 0; }
    #primary-navigation .nav-dropdown { gap: 0; min-width: 0; }
    #primary-navigation .nav-dropdown-menu { width: 100%; min-width: 0; padding: 4px; }
    #primary-navigation .nav-business-menu { max-height: none; overflow: visible; }
    #primary-navigation .nav-business-group > .nav-dropdown-trigger {
        padding: 10px 4px;
        font-size: .82rem;
    }
    #primary-navigation .nav-business-group > .nav-dropdown-menu {
        margin: 0 0 6px 4px;
        padding: 0 0 0 4px;
        width: auto;
    }
    #primary-navigation .nav-dropdown-menu a {
        padding: 9px 4px;
        min-height: 44px;
        line-height: 1.4;
        overflow-wrap: anywhere;
    }
    #primary-navigation .marketing-sign-in {
        margin-top: 8px;
        padding-top: 8px;
        border-top: 1px solid var(--line);
    }
    #primary-navigation .nav-promo-carousel { align-self: start; min-height: 0; gap: 10px; }
    #primary-navigation .nav-promo-track { position: relative; height: 330px; min-height: 0; }
    #primary-navigation .nav-promo-card {
        min-width: 0;
        min-height: 0;
        height: 100%;
        padding: clamp(10px, 2.5vw, 18px);
        box-shadow: none;
    }
    #primary-navigation .nav-promo-card strong { max-width: 12ch; line-height: 1.15; }
    #primary-navigation .nav-promo-card ul { gap: 8px; }
    #primary-navigation .nav-promo-card li { color: #fff; line-height: 1.4; }
    #primary-navigation .nav-promo-card b { padding: 8px; min-height: 40px; line-height: 1.25; text-align: center; }
    #primary-navigation .nav-promo-card i { display: none; }
    #primary-navigation .nav-promo-controls { gap: 4px; }
    #primary-navigation .nav-promo-controls button { width: 44px; height: 44px; flex-shrink: 0; }
    #primary-navigation .nav-promo-count { min-width: 30px; }
}

@media (prefers-reduced-motion: reduce) {
    #primary-navigation *, .nav-toggle span { scroll-behavior: auto; transition: none; }
}
