/* Shared public navigation, independent of each page's legacy stylesheet. */
header.public-header{height:auto;min-height:82px;overflow:visible;background:#fff;box-shadow:0 1px 0 #e5eaf0;position:relative;z-index:20;font:400 15px/1.4 Roboto,Arial,sans-serif;color:#243b50}
.public-header .public-header-inner{max-width:1360px;margin:0 auto;padding:16px 28px;min-height:82px;display:flex;align-items:center;gap:28px;box-sizing:border-box}
.public-header .public-brand{display:flex;align-items:center;flex-shrink:0;margin:0;padding:0}
.public-header .public-brand img{width:auto;max-width:180px;height:28px;object-fit:contain;margin:0}
.public-header .public-navigation{display:flex;align-items:center;gap:6px;margin:0;padding:0;flex-shrink:0}
.public-header .public-navigation>a{display:block;padding:12px 16px;border:0;border-radius:8px;color:#243b50;background:transparent;font:500 14px/1.4 Roboto,Arial,sans-serif;text-decoration:none;white-space:nowrap}
.public-header .public-navigation>a:hover,.public-header .public-navigation>a[aria-current="page"]{color:#0877c9;background:#edf5fc}
.public-header .public-header-search{display:flex;align-items:center;margin:0 0 0 auto;padding:0;background:#f5f7fa;border:1px solid #e5eaf0;border-radius:9px;width:300px;min-width:140px}
.public-header .public-header-search input{width:100%;min-width:0;position:static;border:0;background:transparent;padding:12px 14px;color:#243b50;font:400 14px/1.4 Roboto,Arial,sans-serif;box-shadow:none}
.public-header .public-header-search button{border:0;background:transparent;color:#35789d;cursor:pointer;width:44px;flex-shrink:0;padding:10px;font-size:21px;line-height:1}
.public-header .public-menu-toggle{display:none;border:1px solid #d9e2eb;background:#fff;border-radius:8px;width:44px;height:44px;color:#243b50;font-size:25px;cursor:pointer}
.public-header :focus-visible{outline:3px solid #35a5e7;outline-offset:3px}
@media(max-width:991px){
.public-header .public-header-inner{gap:14px;padding:14px 20px;flex-wrap:wrap}
.public-header .public-menu-toggle{display:block;margin-left:auto}
.public-header .public-navigation{display:none;order:3;width:100%;flex-direction:column;align-items:stretch;border-top:1px solid #e5eaf0;padding-top:12px}
.public-header .public-navigation.is-open{display:flex}
.public-header .public-header-search{order:4;width:100%;margin:0}
.public-header .public-brand img{max-width:160px;height:26px}
}
@media(prefers-reduced-motion:reduce){.public-header a,.public-header button{transition:none}}
