/* CMS-driven public header: roomy desktop, compact laptop, measured mobile fallback. */
.site-header{position:sticky;top:0;z-index:40;gap:24px;transition:background-color 180ms ease,box-shadow 180ms ease;border-bottom-color:rgba(20,36,59,.06)}
.site-header.is-scrolled{background:rgba(255,255,255,.95);box-shadow:0 5px 22px rgba(20,36,59,.08)}
@supports(backdrop-filter:blur(12px)){.site-header.is-scrolled{background:rgba(255,255,255,.9);backdrop-filter:blur(12px)}}
.site-header>.brand{flex:none;max-width:min(340px,28vw);min-width:0}.site-header>.brand.brand-long{font-size:20px;line-height:1.08}.site-header>.brand.brand-long>span{white-space:normal;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;overflow-wrap:anywhere}.site-header>.brand>span{overflow:hidden;text-overflow:ellipsis}
.site-header .public-nav{display:flex;gap:8px;flex:1 1 auto;min-width:0;justify-content:center;flex-wrap:nowrap;font-size:13px}
.site-header .public-nav>a,.site-header .nav-branch{flex:none}
.site-header .public-nav>a,.site-header .nav-branch>summary{display:flex;align-items:center;gap:8px;min-height:44px;padding:10px 11px;border-radius:9px;line-height:1.35;color:var(--navy);white-space:nowrap;transition:background-color 180ms ease,color 180ms ease}
.site-header .public-nav>a:hover,.site-header .public-nav>a[aria-current="page"],.site-header .public-nav>a:focus-visible,
.site-header .nav-branch>summary:hover,.site-header .nav-branch.is-active>summary,.site-header .nav-branch[open]>summary,.site-header .nav-branch>summary:focus-visible{background:var(--navy);color:#fff}
.site-header .public-nav a:focus-visible,.site-header .nav-branch>summary:focus-visible,.account-menu summary:focus-visible,.account-panel a:focus-visible,.account-panel button:focus-visible{outline:3px solid var(--teal);outline-offset:3px}
.site-header .public-nav .mobile-login,.site-header .mobile-toggle,.nav-drawer-heading,.nav-backdrop{display:none}
.site-header .header-actions{flex:none;gap:10px}.workspace-action{gap:7px}
.site-header .nav-branch{position:relative}
.site-header .nav-branch>summary{list-style:none;cursor:pointer;font:inherit}
.site-header .nav-branch>summary::-webkit-details-marker{display:none}
.site-header .nav-branch>summary>i{font-size:10px;transition:transform 180ms ease}
.site-header .nav-branch[open]>summary>i{transform:rotate(180deg)}
/* Transparent pointer bridge covers the visual gap between trigger and panel. */
.site-header .nav-branch[open]::after{content:"";position:absolute;top:100%;left:0;width:100%;height:10px}
.site-header .nav-submenu{position:absolute;top:calc(100% + 8px);left:0;transform:translateX(var(--panel-shift,0px));width:320px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 110px);overflow-y:auto;padding:10px;border:1px solid #e1e9ee;border-radius:16px;background:#fff;box-shadow:0 16px 42px rgba(20,36,59,.14);z-index:3}
.site-header .nav-submenu a{display:flex;align-items:center;gap:12px;min-height:65px;padding:12px;border-radius:10px;color:var(--navy);white-space:normal;transition:background-color 180ms ease,color 180ms ease}
.site-header .nav-submenu a:hover,.site-header .nav-submenu a:focus-visible{background:#eef7f7}
.site-header .nav-submenu a[aria-current="page"]{background:#e4f3f3;box-shadow:inset 3px 0 var(--teal)}
.nav-link-copy{display:flex;flex-direction:column;gap:4px;min-width:0}.nav-link-label{font-weight:550}
.nav-link-description{font-size:12px;line-height:1.45;color:#597082;font-weight:400;overflow-wrap:anywhere}
.nav-link-icon{display:grid;place-items:center;flex:0 0 36px;width:36px;height:38px;border-radius:10px;background:#e5f3f3;color:var(--teal);font-size:19px}
.account-menu{position:relative;flex-shrink:0;min-width:0}
.account-menu>summary.account-trigger{display:flex;align-items:center;gap:9px;padding:5px 7px;border:0;border-radius:9px;list-style:none;cursor:pointer;transition:background-color 180ms ease}
.account-menu>summary::-webkit-details-marker{display:none}
.account-menu>summary:hover,.account-menu[open]>summary{background:#eef7f7}
.account-menu .account-name{max-width:110px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}
.account-menu .account-chevron{font-size:11px;transition:transform 180ms ease}
.account-menu[open] .account-chevron{transform:rotate(180deg)}
.account-menu .account-panel{position:absolute;right:0;top:calc(100% + 10px);width:228px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 110px);overflow-y:auto;padding:8px;border:1px solid #e5ebf1;border-radius:14px;background:#fff;box-shadow:0 14px 40px rgba(20,36,59,.14);z-index:60}
.account-menu .account-caption{margin:0;padding:9px 12px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.account-menu .account-panel a,.account-menu .account-panel button{display:flex;align-items:center;gap:12px;min-height:44px;width:100%;padding:10px 12px;border:0;border-radius:8px;background:transparent;color:var(--navy);text-align:left;font:inherit;font-size:14px;text-decoration:none;cursor:pointer;transition:background-color 180ms ease}
.account-menu .account-panel a:hover,.account-menu .account-panel button:hover{background:#edf6f6}
.account-menu .account-panel i{font-size:17px;color:var(--teal)}
.account-menu .account-logout{margin:6px 0 0;padding-top:6px;border-top:1px solid #e9eef3}
#profile,#account-settings{scroll-margin-top:100px}
@media(min-width:901px) and (max-width:1280px){
 .site-header{gap:14px;padding-left:24px;padding-right:24px}
 .site-header .public-nav{gap:3px;font-size:12px}
 .site-header .public-nav>a,.site-header .nav-branch>summary{padding:10px 8px;gap:5px}
 .site-header .account-menu .account-name{max-width:72px}
 .site-header>.brand{font-size:24px}.site-header .header-actions{gap:7px}
 .site-header .header-actions>.button{padding:9px 12px;font-size:12px}
}
.site-header.is-collapsed{gap:12px;padding-left:24px;padding-right:24px}
.site-header.is-collapsed .mobile-toggle{display:flex;margin-left:auto;flex:none;width:44px;min-height:44px;z-index:2}
.site-header.is-collapsed .public-nav{display:none}
.site-header.is-collapsed .public-nav.open{display:flex;position:absolute;top:calc(100% + 10px);left:auto;right:16px;width:390px;max-width:calc(100vw - 32px);flex-direction:column;align-items:stretch;justify-content:flex-start;gap:4px;max-height:calc(100dvh - 110px);overflow-y:auto;overscroll-behavior:contain;padding:12px;background:#fff;border:1px solid #e1e9ee;border-radius:16px;box-shadow:0 18px 45px rgba(20,36,59,.2);z-index:2}
.site-header.is-collapsed .nav-drawer-heading{display:flex;align-items:center;justify-content:space-between;min-height:44px;padding:0 9px 8px;font-size:13px;color:var(--muted)}
.site-header.is-collapsed .nav-drawer-heading button{min-width:44px;min-height:44px}
.site-header.is-collapsed .public-nav>a,.site-header.is-collapsed .nav-branch>summary{display:flex;align-items:center;min-height:46px;padding:12px 14px;font-size:14px}
.site-header.is-collapsed .nav-branch>summary{justify-content:space-between}
.site-header.is-collapsed .nav-submenu{position:static;transform:none;width:auto;max-width:none;max-height:none;padding:5px 0 5px 12px;margin:5px 0 6px 12px;border:0;border-left:1px solid #dbe8eb;border-radius:0;box-shadow:none;background:transparent;overflow:visible}
.site-header.is-collapsed .nav-submenu a{min-height:62px;padding:10px;white-space:normal}
.site-header.is-collapsed .public-nav .mobile-login{display:flex;align-self:stretch;justify-content:center;margin:6px 0 0;border:1px solid #b8c8dc;background:#fff;color:var(--navy)}
.site-header.is-collapsed .public-nav .mobile-login:hover{background:var(--navy);color:#fff}
.site-header.is-collapsed .header-actions>.outline{display:none}
.site-header.is-collapsed .nav-backdrop:not([hidden]){display:block;position:fixed;inset:var(--header-bottom,78px) 0 0;background:rgba(20,36,59,.22);z-index:1}
body.public-menu-open{overflow:hidden}
@media(max-width:900px){
 .site-header{padding:0 24px;gap:12px}
 .site-header:not(.nav-ready) .public-nav{display:none}
 .site-header:not(.nav-ready) .mobile-toggle{display:flex;margin-left:auto}
}
@media(max-width:700px){
 .site-header,.site-header.is-collapsed{height:68px;gap:7px;padding-left:16px;padding-right:16px}
 .site-header>.brand{font-size:23px;max-width:160px}.site-header>.brand .bi{font-size:29px}
 .site-header .header-actions{gap:4px}
 .account-menu .account-name{display:none}
 .account-menu>summary.account-trigger{padding:4px;gap:5px;min-height:44px}
 .site-header .workspace-action{min-width:40px;min-height:40px;padding:10px!important}
 .site-header .workspace-action span{display:none}.site-header .workspace-action i{font-size:16px}
 .site-header .header-actions>.button:not(.outline){font-size:12px;padding:10px 11px}
}
/* Measure the actual configured top-level items, independent of current drawer state. */
.site-header.nav-fit-check .public-nav{display:flex;position:absolute;top:0;left:0;right:auto;width:max-content;max-width:none;visibility:hidden;flex-direction:row;flex-wrap:nowrap}
.site-header.nav-fit-check .nav-drawer-heading,.site-header.nav-fit-check .public-nav .mobile-login{display:none}
@media(prefers-reduced-motion:reduce){.site-header,.site-header .public-nav a,.site-header .nav-branch>summary,.site-header .nav-branch>summary>i,.account-menu>summary,.account-menu .account-chevron,.account-menu .account-panel a,.account-menu .account-panel button{transition:none}}
