/* Shared navigation: same pill, order and controls from tablets to desktops. */
.nav-cluster{position:relative}
.nav-cluster-trigger{font-family:inherit;background:none;border:0;cursor:pointer;line-height:1.5}
.nav-cluster-trigger .drop-arrow{transition:transform .2s ease}
.nav-cluster.open .drop-arrow{transform:rotate(180deg)}
.nav-cluster-menu{position:absolute;top:calc(100% + 12px);right:0;min-width:215px;padding:9px;background:var(--surface);border:1px solid var(--border-2);border-radius:14px;box-shadow:0 18px 45px #00000026;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(6px);transition:opacity .16s ease,transform .16s ease}
.nav-cluster-menu::before{content:'';position:absolute;left:0;right:0;top:-16px;height:16px}
.nav-cluster.open>.nav-cluster-menu{opacity:1;visibility:visible;pointer-events:auto;transform:none}
.nav-cluster-menu a{display:block;padding:12px 13px;border-radius:7px;min-height:44px;box-sizing:border-box;font-size:.8rem;line-height:1.5;color:var(--text-2);white-space:nowrap}
.nav-cluster-menu a:hover,.nav-cluster-menu a:focus-visible,.nav-cluster-menu a[aria-current=page]{background:var(--teal-dim);color:var(--teal)}
.nav-unified .nav-pill>.nl,.nav-unified .nav-pill>.nl-drop,.nav-unified .nav-pill>.nav-cluster{flex:0 0 auto}
.nav-unified .nl:focus-visible,.nav-cluster-menu a:focus-visible{outline:2px solid var(--detail-blue,var(--teal));outline-offset:2px}
@media(min-width:768px){
 :root{--nav-h:76px}
 .nav.nav-unified{height:var(--nav-h)}
 .nav.nav-unified .nav-inner{display:flex;align-items:center;justify-content:space-between;max-width:1440px;padding-inline:24px;gap:18px;height:100%}
 .nav.nav-unified .nav-pill{display:flex!important;flex:0 1 auto;gap:2px;padding:4px;overflow:visible;min-width:0}
 .nav.nav-unified .nav-pill .nl{font-size:.8rem;padding:10px 13px;min-height:42px;min-width:0;line-height:1.5;white-space:nowrap;box-sizing:border-box;overflow:visible}
 .nav.nav-unified .nav-logo{display:flex;gap:7px;flex-shrink:0}
 .nav.nav-unified .logo-icon,.nav.nav-unified.scrolled .logo-icon{width:39px;height:39px}
 .nav.nav-unified .logo-name,.nav.nav-unified.scrolled .logo-name{display:block!important;height:24px;width:auto;max-width:120px}
 .nav.nav-unified .nav-right{display:flex;align-items:center;gap:10px;flex-shrink:0}
 .nav.nav-unified .theme-btn{display:flex;width:36px;height:36px}
 .nav.nav-unified .nav-cta{display:inline-flex!important;min-height:42px;padding:10px 15px;font-size:.78rem;line-height:1.5;gap:8px;box-sizing:border-box}
 .nav.nav-unified .nav-toggle{display:none!important}
 .nav-unified .drop-menu{width:330px;min-width:0;max-height:calc(100dvh - 110px);overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;transition:opacity .2s ease,transform .2s ease}
 .nav-unified .drop-sub-menu,.nav-unified .drop-sub-menu:has(.grc-nav-group){position:static!important;left:auto!important;right:auto!important;top:auto!important;display:none;width:auto;min-width:0;max-height:none;padding:5px 0 5px 10px;margin:3px 0 5px 12px;transform:none!important;border:0;border-left:1px solid var(--border-2);border-radius:0;background:none;box-shadow:none;opacity:1!important;visibility:visible!important;pointer-events:auto!important;overflow:visible}
 .nav-unified .drop-sub.open>.drop-sub-menu{display:block}
 .nav-unified .drop-menu .drop-item{min-height:42px;white-space:normal;line-height:1.5;box-sizing:border-box}
 .nav-unified .drop-menu a,.nav-unified .drop-menu summary,.nav-unified .drop-menu button{transition-property:color,background-color,border-color,transform,box-shadow}
 .nav-unified .drop-sub.open>.drop-sub-parent .drop-sub-arrow{transform:rotate(90deg)}
}
@media(min-width:768px) and (max-width:1023px){
 .nav.nav-unified .nav-inner{padding-inline:15px;gap:10px}
 .nav.nav-unified .logo-icon,.nav.nav-unified.scrolled .logo-icon{width:32px;height:32px}
 .nav.nav-unified .logo-name,.nav.nav-unified.scrolled .logo-name{height:20px;max-width:96px}
 .nav.nav-unified .nav-pill{gap:0;padding:3px}
 .nav.nav-unified .nav-pill .nl{font-size:.75rem;padding-inline:9px;min-height:44px}
 .nav.nav-unified .nav-cta{font-size:.73rem;padding-inline:11px;min-height:42px}
 .nav.nav-unified .nav-cta svg{display:none}
 .nav.nav-unified .nav-right{gap:7px}
 .nav.nav-unified .theme-btn{width:32px;height:32px}
}
@media(max-width:767px){.nav.nav-unified .nav-pill{display:none!important}.nav.nav-unified .nav-toggle{display:flex!important}}
@media(prefers-reduced-motion:reduce){.nav-cluster-menu,.nav-cluster-trigger .drop-arrow{transition:none}}
