/* Shared public navigation. */
.sb-header{--nav-bg:#0b1018;--nav-ink:#f4f7fb;--nav-line:#ffffff25;--nav-accent:#67e8f9;position:sticky;top:0;z-index:60;background:var(--nav-bg);color:var(--nav-ink);border-bottom:1px solid var(--nav-line);font-family:Inter,system-ui,sans-serif}
html[data-theme=light] .sb-header{--nav-bg:#faf9f6;--nav-ink:#171b20;--nav-line:#d9ddd9;--nav-accent:#07816c;background:var(--nav-bg);color:var(--nav-ink);border-color:var(--nav-line)}
.sb-header .sb-header-inner{max-width:1600px;margin:auto;padding:24px 32px;display:flex;align-items:center;gap:30px;min-height:104px;box-sizing:border-box;width:100%}
.sb-header .sb-brand{font-size:clamp(25px,2.4vw,37px);font-weight:650;letter-spacing:-1.4px;text-decoration:none;color:var(--nav-ink);white-space:nowrap;flex-shrink:0;line-height:1.2}.sb-brand span{color:var(--nav-accent);font-weight:700;margin-left:4px}
.sb-header .sb-primary-nav{display:flex;align-items:center;justify-content:center;gap:22px;margin:0;flex:1;width:auto}
.sb-header .sb-dropdown{position:relative;border:0;padding:0;margin:0}.sb-header .sb-dropdown summary{display:flex;align-items:center;gap:8px;list-style:none;cursor:pointer;color:var(--nav-ink);font-weight:550;font-size:15px;line-height:1.4;padding:14px 0;white-space:nowrap}.sb-dropdown summary::-webkit-details-marker{display:none}.sb-dropdown summary span{font-size:12px;opacity:.65}.sb-dropdown[open] summary span{transform:rotate(180deg)}
.sb-header .sb-dropdown-panel{position:absolute;top:100%;left:0;min-width:260px;padding:10px;background:var(--nav-bg);border:1px solid var(--nav-line);border-radius:12px;box-shadow:0 18px 45px #0003}.sb-header .sb-dropdown-panel a{display:block;min-height:44px;padding:11px 14px;font-size:14px;line-height:1.5;font-weight:450;color:var(--nav-ink);text-decoration:none;border-radius:7px}.sb-dropdown-panel a:hover{background:#94a3b81c}
.sb-header .sb-header-actions{display:flex;align-items:center;gap:18px;flex-shrink:0}.sb-header .sb-login{font-size:16px;color:var(--nav-ink);text-decoration:none;padding:10px 0}.sb-header .sb-consultation{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:12px 24px;border:2px solid var(--nav-accent);border-radius:999px;text-decoration:none;font-weight:600;font-size:15px;white-space:nowrap;color:var(--nav-ink);background:transparent;line-height:1.4}.sb-consultation:hover{background:#94a3b812}.sb-header .appearance-bar{padding:0;margin:0;border:0;background:transparent;flex:0 0 auto;order:0}.sb-header .sb-menu-toggle{display:none}.sb-header a:focus-visible,.sb-header summary:focus-visible,.sb-header button:focus-visible{outline:3px solid var(--nav-accent);outline-offset:4px}
@media(min-width:1450px){.sb-header .sb-primary-nav{gap:40px}.sb-header .sb-dropdown summary{font-size:18px}.sb-header .sb-consultation{font-size:17px;padding-inline:30px}}
@media(max-width:1150px){.sb-header .sb-header-inner{flex-wrap:wrap;gap:16px;padding:18px 22px;min-height:80px}.sb-header .sb-brand{margin-right:auto}.sb-header .sb-menu-toggle{display:flex;align-items:center;gap:10px;border:1px solid var(--nav-line);border-radius:8px;padding:10px 14px;color:var(--nav-ink);background:transparent;font:inherit;cursor:pointer;order:2}.sb-header .sb-primary-nav{display:none;order:4;flex-basis:100%;align-items:stretch;flex-direction:column;gap:0;width:100%}.sb-header[data-menu-open] .sb-primary-nav{display:flex}.sb-header .sb-header-actions{order:1}.sb-header .sb-dropdown-panel{position:static;box-shadow:none;min-width:0;margin-bottom:12px}.sb-header .sb-dropdown summary{justify-content:space-between}.sb-header .sb-primary-nav{max-height:65vh;overflow-y:auto}}
@media(max-width:640px){.sb-header .sb-header-inner{padding:14px 18px;gap:12px}.sb-header .sb-brand{font-size:27px}.sb-header .sb-header-actions{display:contents}.sb-header .sb-login,.sb-header .sb-consultation{display:none}.sb-header[data-menu-open] .sb-login{display:block;order:5}.sb-header[data-menu-open] .sb-consultation{display:flex;order:6;flex-basis:100%}.sb-header .appearance-bar{order:1}.sb-header .sb-menu-toggle{font-size:0;padding:10px;min-height:44px;min-width:44px}.sb-menu-toggle span{font-size:19px}.sb-header .sb-primary-nav{order:4}}

/* Keep every menu item and contact control reachable on short phones. */
@media(max-width:1150px){.sb-header[data-menu-open]{max-height:100svh;overflow-y:auto;overscroll-behavior:contain}.sb-header[data-menu-open] .sb-primary-nav{max-height:none;overflow:visible}}
@media(max-width:350px){.sb-header .sb-header-inner{padding-inline:12px;gap:8px}.sb-header .sb-brand{font-size:25px}}

/* Reserve theme control space during initialization. */
.theme-js .sb-header .appearance-bar{width:44px;height:44px;min-width:44px;overflow:hidden}.theme-js .sb-header .appearance-bar:not(.appearance-icon-control)>*{visibility:hidden}

/* Isolate shared navigation from page-level form and admin styles. */
header.sb-header{display:block;width:100%;max-width:none;padding:0;margin:0;flex:none;text-align:left;box-sizing:border-box}
.sb-header *{box-sizing:border-box}
.sb-header .sb-header-inner{flex-wrap:nowrap}
.sb-header .sb-primary-nav{flex-wrap:nowrap}
.sb-header button{font:inherit;margin:0;width:auto;box-shadow:none}
.sb-header .sb-menu-toggle{color:var(--nav-ink);background:transparent;border:1px solid var(--nav-line);border-radius:8px;line-height:1.4}
.sb-header .sb-primary-nav a{margin:0;box-shadow:none}
.sb-header .sb-brand span{display:inline;font-size:inherit;letter-spacing:inherit}
.sb-workspace-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;width:100%;padding:14px 32px;box-sizing:border-box;background:#111d2b;color:#e2e8f0;border-bottom:1px solid #ffffff25;font:14px/1.5 Inter,system-ui,sans-serif}
.sb-workspace-bar nav{display:flex;gap:16px;flex-wrap:wrap;margin:0}
.sb-workspace-bar a{color:inherit;text-decoration:none;padding:6px 0}
.sb-workspace-bar a:hover{text-decoration:underline}
.sb-workspace-bar form{margin:0 0 0 auto}
.sb-workspace-bar button{width:auto;margin:0}
html[data-theme=light] .sb-workspace-bar{background:#f1f5f9;color:#334155;border-color:#cbd5e1}
.sb-auth-error{max-width:720px;margin:48px auto;padding:24px;font:17px/1.6 system-ui,sans-serif}
@media(max-width:1150px){.sb-header .sb-header-inner{flex-wrap:wrap}.sb-header .sb-primary-nav{flex-wrap:wrap}}
@media(max-width:640px){.sb-workspace-bar{padding:12px 18px}.sb-header .sb-menu-toggle{font-size:0}}
