/* Grouped service navigation. The content remains editable in WP Menus. */
.fs-service-nav { font-family:inherit; }
.fs-service-nav ul { list-style:none; margin:0; padding:0; }
.fs-nav-list { display:flex; align-items:center; gap:8px; }
.fs-nav-item { position:relative; }
.fs-nav-list > .fs-nav-item > a, .fs-nav-toggle { display:flex; align-items:center; gap:9px; padding:13px 12px; border:0; border-radius:10px; background:transparent; color:#17354d; font-size:14px; font-weight:600; line-height:1.4; text-decoration:none; cursor:pointer; white-space:nowrap; }
.fs-nav-toggle { font-family:inherit; text-transform:none; }
.fs-nav-list > .fs-nav-item > a:hover, .fs-nav-toggle:hover, .fs-nav-toggle[aria-expanded="true"] { color:#126ba6; background:#e8f2fa; }
.fs-nav-list > .fs-nav-featured > a { color:#17354d; border:1.5px solid #458bb5; background:#fff; }
.fs-nav-list > .fs-nav-featured > a:hover { color:#126ba6; border-color:#126ba6; background:#f5faff; }
.fs-nav-chevron { width:6px; height:6px; border:solid currentColor; border-width:0 1.5px 1.5px 0; transform:rotate(45deg); margin:-3px 2px 0 5px; }
.fs-nav-toggle[aria-expanded="true"] .fs-nav-chevron { transform:rotate(225deg); margin-top:3px; }
.fs-nav-icon { display:flex; flex:0 0 38px; width:38px; height:38px; align-items:center; justify-content:center; color:#257aac; background:#eef6fc; border-radius:11px; }
.fs-nav-icon svg { width:23px; height:23px; display:block; }
.fs-nav-list > .fs-nav-featured > a .fs-nav-icon { width:20px; height:20px; flex-basis:20px; background:none; }
.fs-nav-list > .fs-nav-featured > a .fs-nav-icon svg { width:20px; height:20px; }
.fs-service-nav .fs-nav-panel { display:none; position:absolute; top:calc(100% + 12px); left:0; width:330px; padding:10px; background:#fff; border:1px solid #e1eaf1; border-radius:18px; box-shadow:0 22px 50px #103a6026; z-index:1000000; }
.fs-nav-panel::before { content:""; position:absolute; left:0; right:0; top:-14px; height:14px; }
.fs-nav-item.is-open > .fs-nav-panel { display:block; }
.fs-nav-list > .fs-nav-item:last-child .fs-nav-panel { left:auto; right:0; }
.fs-nav-panel a { display:flex; gap:12px; align-items:center; padding:13px 12px; border-radius:11px; text-decoration:none; color:#17354d; }
.fs-nav-panel a:hover, .fs-nav-panel a[aria-current="page"] { background:#f0f7fc; }
.fs-nav-copy { display:flex; flex-direction:column; gap:3px; }
.fs-nav-title { font-size:14px; line-height:1.4; font-weight:650; }
.fs-nav-description { font-size:12px; line-height:1.5; color:#60778b; font-weight:400; }
.fs-nav-list > .current-menu-ancestor > .fs-nav-toggle, .fs-nav-list > .current-menu-item > a { color:#126ba6; background:#e8f2fa; }
.fs-nav-list > .fs-nav-featured:not(.current-menu-item) > a .fs-nav-icon { color:#17354d; }
.header__mainbar { border-bottom:1px solid #e4edf5; }
.header__mainbar.sticky { box-shadow:0 4px 25px #103a600c; }
.header__mainbar .area .right { gap:24px; }
.header__mainbar .area .right > .btn { background:#1678b5; border-color:#1678b5; }
.header__mainbar .area .right > .btn:hover { background:#105b8b; }
.fs-menu-open, .fs-menu-close { display:none; align-items:center; justify-content:center; padding:10px; width:44px; height:44px; border:1px solid #cfe3f1; border-radius:12px; background:#fff; color:#17354d; cursor:pointer; }
.fs-menu-open svg, .fs-menu-close svg { width:24px; height:24px; }
.fs-service-nav :is(a,button):focus-visible, .fs-menu-open:focus-visible, .fs-menu-close:focus-visible { outline:3px solid #168ac8; outline-offset:3px; }

/* A clear entry to the customer portal, distinct from page selection. */
.header__topbar { padding:6px 0; }
.header__topbar .menu { align-items:center; }
.header__topbar .menu li a.fs-portal-link,
.header__mobile-menu .other-links li a.fs-portal-link,
.header__mainbar a.fs-portal-shortcut {
 display:inline-flex; align-items:center; justify-content:center; gap:8px;
 min-height:34px; padding:8px 13px; border:1px solid #173b5b; border-radius:9px;
 background:#173b5b; color:#fff; font-size:13px; font-weight:650; line-height:1.3;
 text-decoration:none; white-space:nowrap; transition:background .18s ease, border-color .18s ease;
}
.fs-portal-link svg, .fs-portal-shortcut svg { width:18px; height:18px; flex:0 0 18px; }
.fs-portal-arrow { margin-left:3px; color:#9bd8f7; font-size:16px; line-height:1; }
.header__topbar .menu li a.fs-portal-link:hover,
.header__mobile-menu .other-links li a.fs-portal-link:hover,
.header__mainbar a.fs-portal-shortcut:hover { background:#24567b; border-color:#24567b; color:#fff; }
.header__topbar .menu a.fs-portal-link:focus-visible,
.header__mobile-menu .other-links a.fs-portal-link:focus-visible,
.header__mainbar a.fs-portal-shortcut:focus-visible { outline:3px solid #168ac8; outline-offset:3px; }
.header__mainbar a.fs-portal-shortcut { display:none; }
@media(min-width:1024px) and (max-width:1250px) {
 .header__logo img { max-width:235px; height:auto; }
 .header__mainbar .area .right { gap:12px; }
 .fs-nav-list { gap:2px; }
 .fs-nav-list > .fs-nav-item > a, .fs-nav-toggle { padding:12px 9px; font-size:13px; }
 .fs-nav-list > .fs-nav-featured .fs-nav-title { font-size:13px; }
}
@media(max-width:1023px) {
 .header__mainbar .area { gap:10px; }
 .header__mainbar .area .right { gap:8px; flex-shrink:0; }
 .header__mainbar .header__logo img { width:min(240px,calc(100vw - 186px)); max-width:100%; height:auto; }
 .header__mainbar a.fs-portal-shortcut { display:inline-flex; min-height:42px; padding:10px; gap:6px; font-size:12px; }
 .header__mobile-menu .other-links li a.fs-portal-link { width:100%; justify-content:flex-start; min-height:46px; padding:12px 14px; font-size:14px; }
 .header__mobile-menu .fs-portal-arrow { margin-left:auto; }
 .fs-menu-open { flex-shrink:0; }
 .header__mainbar .area .right > .fs-service-nav { display:none; }
 .fs-menu-open, .fs-menu-close { display:flex; }
 .header__overlay.active { max-width:none; inset:0; transform:none; width:100%; height:100%; background:#081f3d77; }
 .header__overlay.active .header__mobile-menu { max-width:400px; width:min(94vw,400px); padding:22px; height:100dvh; gap:22px; }
 .header__mobile-menu .fs-nav-list { display:flex; flex-direction:column; align-items:stretch; gap:8px; }
 .header__mobile-menu .fs-nav-list > .fs-nav-item > a, .header__mobile-menu .fs-nav-toggle { width:100%; padding:14px; font-size:16px; text-align:left; }
 .header__mobile-menu .fs-nav-toggle { justify-content:space-between; background:#f0f6fb; }
 .header__mobile-menu .fs-service-nav .fs-nav-panel { position:static; width:100%; border:none; box-shadow:none; padding:6px 0; background:transparent; }
 .header__mobile-menu .fs-nav-panel::before { display:none; }
 .header__mobile-menu .fs-nav-panel a { padding:12px 10px; }
 .header__mobile-menu .fs-nav-description { font-size:12px; }
 .header__mobile-menu .fs-nav-title { font-size:15px; }
}
