/* Shared header for every route; page surfaces do not restyle navigation. */
:root { --header-h:76px; }
#header.header { height:76px; background:#fff; box-shadow:0 1px 0 #102b4210; backdrop-filter:none; -webkit-backdrop-filter:none; color:#102b42; }
#header .header__inner { max-width:1600px; padding-inline:clamp(20px,4vw,64px); gap:28px; }
#header .header__logo { color:#00549b; flex-shrink:0; }
#header .header__logo-svg { height:25px; width:auto; }
#header .header__nav { display:block; margin-left:auto; }
#header .header__nav-list { gap:clamp(16px,1.6vw,28px); }
#header .header__nav-link { color:#445461; font-size:15px; font-weight:500; white-space:nowrap; }
#header .header__nav-link:hover { color:#00549b; }
#header .header__cta { display:inline-flex; justify-content:center; align-items:center; min-height:44px; padding:10px 20px; border:1px solid #00549b; border-radius:12px; background:#00549b; color:#fff; font-size:14px; font-weight:500; white-space:nowrap; transform:none; }
#header .header__cta:hover { background:#00427b; border-color:#00427b; }
#header .header__inner > .langsw { display:block; flex-shrink:0; margin:0; }
#header .langsw__btn { min-height:44px; padding:10px 14px; border:0; border-radius:12px; background:#edf2f6; color:#00549b; font-size:14px; }
#header .langsw__list { border-radius:16px; }
#header .langsw__opt { border-radius:12px; }
#header .header__mobile { display:none; gap:8px; }
#header .header__call { display:flex; width:44px; height:44px; color:#00549b; background:#edf2f6; border-radius:12px; }
#header .header__burger { display:flex; width:44px; height:44px; border-radius:12px; }
#header .header__burger span { background:#102b42; }
#header :focus-visible { outline:2px solid #00549b; outline-offset:4px; }
#mobileMenu.mobile-menu { padding:calc(var(--header-h) + 24px) clamp(20px,4vw,64px) 32px; justify-content:flex-start; overflow-y:auto; }
#mobileMenu .mobile-menu__nav { width:100%; }
#mobileMenu .mobile-menu__link { font-size:28px; }
#mobileMenu .langsw__opt { border-radius:12px; }
@media(max-width:1199px) {
 #header .header__nav,#header .header__cta { display:none; }
 #header .header__mobile { display:flex; }
 #header .header__inner > .langsw { margin-left:auto; }
}
@media(max-width:599px) {
 :root { --header-h:64px; }
 #header.header { height:64px; }
 #header .header__inner { gap:10px; }
 #header .header__logo-svg { height:21px; }
 #header .header__call { display:none; }
}
@media(max-width:359px) {
 #header .header__inner { gap:8px; }
 #header .header__logo-svg { height:19px; }
 #header .langsw__btn { padding-inline:10px; }
}
