/* V21: the selected identity opens its landing page. The global account switch
   lives outside the collapsible site navigation and remains in the first header row. */
.site-header .skypine-site-account-slot{position:relative;z-index:51;display:flex;align-items:center;justify-content:flex-end;flex:0 0 auto;margin-left:6px;min-width:0;isolation:isolate}
.site-header .skypine-site-account-slot .skypine-identity-switch{display:inline-flex;align-items:center;flex-wrap:nowrap;white-space:nowrap;gap:4px;margin:0}
.site-header .skypine-site-account-slot .skypine-identity-choice{position:relative;z-index:1;min-height:30px;padding:5px 8px}
.site-header .skypine-identity-switch a.skypine-identity-choice.is-current,
.admin-shell-bar .skypine-identity-switch a.skypine-identity-choice.is-current{cursor:pointer}
.site-header .skypine-identity-switch a.skypine-identity-choice.is-current:hover{background:#24506b;border-color:#24506b;color:#fff}
.admin-shell-bar .skypine-identity-switch a.skypine-identity-choice.is-current:hover{background:#fff2dd;border-color:#fff2dd;color:#142a41}
@media(max-width:1023px){
 .site-page .site-header .nav-shell{position:relative;display:flex;align-items:center;flex-wrap:nowrap;gap:10px;min-width:0}
 .site-page .site-header .brand{order:1;min-width:0;flex:0 1 auto}
 .site-page .site-header .skypine-site-account-slot{order:2;margin-left:auto}
 .site-page .site-header .menu-toggle{display:block;order:3;flex:0 0 auto}
 .site-page .site-header .main-nav{display:none;order:4;position:absolute;z-index:100;top:100%;left:0;right:0;width:100%;max-height:calc(100vh - 90px);max-height:calc(100dvh - 90px);overflow-y:auto;overflow-x:hidden;padding:9px 16px 16px;margin:0;background:#fbfaf6;border:1px solid #e3e6e7;box-shadow:0 15px 26px #1325372b;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0}
 .site-page .site-header .main-nav.open{display:flex}
 .site-page .site-header .main-nav>a{display:block;width:100%;padding:11px 6px;border-bottom:1px solid #e5e8e9;font-size:13px;white-space:normal}
 .site-page .site-header .main-nav>.nav-cta{margin:12px 0 0;padding:11px 14px;text-align:center;border-radius:4px;color:#fff;white-space:normal}
 .site-page .site-header .nav-dropdown{display:block;width:100%;border-bottom:1px solid #e5e8e9;position:relative;align-self:auto}
 .site-page .site-header .nav-dropdown>summary{display:block;width:100%;padding:11px 6px;font-size:13px;white-space:normal;cursor:pointer}
 .site-page .site-header .nav-dropdown-panel{position:static;display:block;width:100%;max-width:100%;min-width:0;max-height:none;margin:0 0 7px;padding:3px 0 4px 10px;box-shadow:none;border:0;background:transparent;border-radius:0}
 .site-page .site-header .nav-dropdown:not([open])>.nav-dropdown-panel{display:none}
 .site-page .site-header .nav-dropdown-panel>a,.site-page .site-header .nav-dropdown-panel>form>button{display:block;width:100%;padding:9px 8px;font-size:12px;white-space:normal}
}
@media(min-width:1024px){
 .site-page .site-header .nav-shell{gap:clamp(5px,.75vw,12px)}
 .site-page .site-header .main-nav{min-width:0;flex:1 1 auto;justify-content:flex-end;gap:clamp(6px,.7vw,11px)}
 .site-page .site-header .skypine-site-account-slot{margin-left:3px}
}
@media(max-width:540px){
 .site-page .site-header .nav-shell{gap:6px}
 .site-page .site-header .brand{gap:5px}
 .site-page .site-header .brand-sign{width:28px;flex:0 0 28px}
 .site-page .site-header .brand-sign img{width:26px;height:31px}
 .site-page .site-header .brand-wordmark{font-size:clamp(16px,4.7vw,20px)}
 .site-page .site-header .brand-wordmark small{display:none}
 .site-page .site-header .skypine-site-account-slot .skypine-identity-switch{gap:3px}
 .site-page .site-header .skypine-site-account-slot .skypine-identity-choice{font-size:10px;min-height:29px;padding:5px 5px}
 .site-page .site-header .menu-toggle{padding:6px}
 .site-page .site-header .menu-toggle span{width:21px;margin:4px 0}
}
.site-page .site-header :is(a,button,summary):focus-visible{outline:2px solid #1f91ad;outline-offset:2px}

/* V22 desktop navigation: no hamburger at desktop widths.
   Reduce gaps as needed instead of sending a 1024-1319px PC to mobile navigation. */
@media (min-width:1024px){
 .site-page .site-header .nav-shell{
   display:flex;flex-direction:row;align-items:center;flex-wrap:nowrap;
   gap:clamp(5px,.65vw,10px);min-width:0;
 }
 .site-page .site-header .brand{order:0;flex:0 1 auto;min-width:0}
 .site-page .site-header .main-nav,
 .site-page .site-header .main-nav.open{
   order:0;position:static;display:flex;flex:1 1 auto;min-width:0;
   flex-direction:row;align-items:center;justify-content:flex-end;
   gap:clamp(5px,.6vw,10px);width:auto;max-height:none;
   overflow:visible;padding:0;margin:0;background:transparent;
   border:0;box-shadow:none;
 }
 .site-page .site-header .menu-toggle{display:none}
 .site-page .site-header .main-nav>a,
 .site-page .site-header .main-nav>.nav-cta{
   display:inline-flex;flex:0 0 auto;align-items:center;width:auto;
   white-space:nowrap;border-bottom:0;
 }
 .site-page .site-header .main-nav .nav-dropdown{
   display:block;flex:0 0 auto;width:auto;border:0;
 }
 .site-page .site-header .main-nav .nav-dropdown>summary{
   display:block;width:auto;white-space:nowrap;
 }
 .site-page .site-header .skypine-site-account-slot{
   order:0;display:flex;flex:0 0 auto;margin-left:3px;
 }
}
@media(min-width:1024px) and (max-width:1199px){
 .site-page .site-header .nav-shell.container{width:calc(100% - 30px)}
 .site-page .site-header .brand{gap:5px}
 .site-page .site-header .brand-sign{flex:0 0 28px;width:28px}
 .site-page .site-header .brand-sign img{width:27px;height:33px}
 .site-page .site-header .brand-wordmark{font-size:19px}
 .site-page .site-header .brand-wordmark small{font-size:6px;letter-spacing:.015em}
 .site-page .site-header .main-nav,.site-page .site-header .main-nav.open{gap:6px}
 .site-page .site-header .main-nav>a,
 .site-page .site-header .main-nav .nav-dropdown>summary{font-size:11px;padding:0}
 .site-page .site-header .main-nav>.nav-cta{
   font-size:10px;padding:9px 8px;margin:0;
 }
 .site-page .site-header .nav-cta span{padding-left:3px}
 .site-page .site-header .skypine-identity-switch{gap:3px}
 .site-page .site-header .skypine-identity-choice,
 .site-page .site-header .skypine-site-account-slot .skypine-identity-choice{
   font-size:10px;min-height:30px;padding:5px 6px;
 }
}

/* V22: align dropdown triggers with neighboring links, and keep dropdown panels
   floating on mid-size desktops rather than in the mobile flow. */
@media(min-width:1024px){
 .site-page .site-header .main-nav .nav-dropdown{
   display:flex;position:relative;align-self:center;align-items:center;
   flex:0 0 auto;width:auto;max-width:none;border:0;
 }
 .site-page .site-header .main-nav .nav-dropdown>summary{
   display:inline-flex;align-items:center;gap:6px;
   width:auto;padding:0;min-height:26px;line-height:26px;
   font-size:clamp(11px,.9vw,12.5px);
 }
 .site-page .site-header .main-nav .nav-dropdown-panel{
   display:block;position:absolute;top:100%;left:-15px;right:auto;
   width:max-content;min-width:248px;max-width:min(350px,95vw);
   padding:9px;margin:0;background:#fff;border:1px solid #dce5e6;
   border-radius:7px;box-shadow:0 15px 28px #102b4440;
 }
 .site-page .site-header .main-nav .nav-account .nav-dropdown-panel{left:auto;right:0}
 .site-page .site-header .main-nav{gap:clamp(9px,.93vw,14px)}
}
@media(min-width:1024px) and (max-width:1199px){
 .site-page .site-header .main-nav .nav-dropdown>summary{font-size:11px}
 .site-page .site-header .main-nav{gap:6px}
}
