/* Shared header polish. Links and the existing navigation controller stay intact. */
.header {
  background:#fff;
  border-bottom:1px solid #d9e5ed;
  box-shadow:0 3px 18px #14355706;
}
.header .nav {
  min-height:86px;
  gap:18px;
  padding-block:5px;
}
.header .nav>.logo {flex:0 0 auto}
.header .nav>.logo img {width:128px;max-width:128px;height:74px;object-fit:contain}
.header .nav>.nav-links {gap:8px;margin-left:auto}
.header .nav-links>a:not(.btn),
.header .nav-disclosure {
  min-height:44px;
  padding:10px 12px;
  border-radius:6px;
  font-size:14px;
  font-weight:700;
  line-height:1.4;
  color:#173650;
  text-decoration:none;
  transition:background-color .15s ease,color .15s ease;
}
.header .nav-links>a:not(.btn):hover,
.header .nav-disclosure:hover {background:#eff6fa;color:#17618a}
.header .nav-links>a[aria-current="page"]:not(.btn),
.header .nav-disclosure.current,
.header .nav-disclosure[aria-expanded="true"] {
  background:#edf5fa;
  color:#143557;
  text-decoration:none;
  box-shadow:inset 0 -2px 0 #2087b2;
}
.header .nav-links>.btn {
  min-height:44px;
  margin:0 0 0 6px;
  padding:11px 16px;
  border-radius:6px;
  font-size:14px;
  line-height:1.4;
  color:#fff;
  background:#143557;
}
.header .nav-links>.btn:hover {background:#245477;transform:none}
.header .nav-group {position:relative;margin:0}
.header .nav-dropdown {
  top:calc(100% + 10px);
  right:0;
  left:auto;
  width:min(392px,calc(100vw - 40px));
  margin:0;
  padding:10px;
  border:1px solid #d7e4ec;
  border-radius:9px;
  background:#fff;
  box-shadow:0 16px 42px #1435571a;
}
.header .nav-dropdown-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}
.header .nav-dropdown-grid a {
  min-height:48px;
  padding:12px;
  border-radius:5px;
  text-decoration:none;
}
.header .nav-dropdown-grid a:hover,
.header .nav-dropdown-grid a[aria-current="page"] {background:#edf5fa}
.header .nav-dropdown-grid strong {font-size:14px;line-height:1.4;color:#173650}
.header :is(a,button):focus-visible {outline:3px solid #157fae;outline-offset:3px}
.header .language-switch {position:relative;flex:0 0 auto;margin:0;gap:2px}
.header .language-switch:not(.wc-language-enhanced) a {
  min-width:38px;
  min-height:44px;
  padding:6px;
}
.header .wc-language-toggle {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-width:66px;
  min-height:44px;
  margin:0;
  padding:9px 12px;
  border:1px solid #c8dce8;
  border-radius:6px;
  background:#fff;
  color:#143557;
  font-size:13px;
  font-weight:700;
  line-height:1.4;
  cursor:pointer;
}
.header .wc-language-toggle::after {
  content:"";
  width:6px;
  height:6px;
  margin-top:-3px;
  border-right:1.5px solid currentColor;
  border-bottom:1.5px solid currentColor;
  transform:rotate(45deg);
}
.header .wc-language-toggle:hover,
.header .wc-language-toggle[aria-expanded="true"] {background:#eff6fa;border-color:#8eb8d0}
.header .wc-language-toggle[aria-expanded="true"]::after {margin-top:3px;transform:rotate(225deg)}
.header .wc-language-options {
  position:absolute;
  top:calc(100% + 10px);
  right:0;
  z-index:65;
  display:grid;
  min-width:178px;
  padding:7px;
  border:1px solid #d7e4ec;
  border-radius:9px;
  background:#fff;
  box-shadow:0 16px 42px #1435571a;
}
.header .wc-language-options[hidden] {display:none!important}
.header .wc-language-options a {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
  min-height:44px;
  padding:10px 12px;
  border-radius:5px;
  color:#173650;
  font-size:13px;
  font-weight:700;
  line-height:1.4;
  text-decoration:none;
}
.header .wc-language-options a::after {content:attr(title);font-size:14px;font-weight:400}
.header .wc-language-options a:hover {background:#eff6fa}
.header .wc-language-options a[aria-current="true"],
.header .wc-language-options a[aria-current="page"] {background:#edf5fa;color:#143557;box-shadow:inset 2px 0 0 #2087b2}
@media(min-width:1081px) {
  .header .nav {flex-wrap:nowrap}
  .header .menu-btn {display:none}
  .header .nav>.nav-links {display:flex;flex-basis:auto;width:auto;flex-direction:row;align-items:center;max-height:none;padding:0;overflow:visible}
}
@media(max-width:1200px) and (min-width:1081px) {
  .header .nav {gap:12px}
  .header .nav>.nav-links {gap:2px}
  .header .nav-links>a:not(.btn),.header .nav-disclosure {padding-inline:9px}
  .header .nav-links>.btn {padding-inline:13px}
}
@media(max-width:1080px) {
  .header .nav {min-height:76px;flex-wrap:wrap;gap:8px;padding-block:5px}
  .header .nav>.logo {order:0;margin-right:auto}
  .header .nav>.logo img {width:112px;max-width:112px;height:64px}
  .header .nav>.language-switch {order:1;margin:0}
  .header .nav>.menu-btn {
    order:2;
    display:block;
    min-width:68px;
    min-height:44px;
    padding:9px 12px;
    border:1px solid #c8dce8;
    border-radius:6px;
    background:#fff;
    color:#143557;
    font-size:14px;
    font-weight:700;
    line-height:1.4;
  }
  .header .menu-btn:hover,.header .menu-btn[aria-expanded="true"] {background:#edf5fa;border-color:#8eb8d0}
  .header .nav>.nav-links {
    order:3;
    display:none;
    flex-basis:100%;
    flex-direction:column;
    align-items:stretch;
    gap:5px;
    width:100%;
    max-height:calc(100dvh - 84px - env(safe-area-inset-bottom));
    margin:3px 0 0;
    padding:12px 0 18px;
    border-top:1px solid #d9e5ed;
    overflow-y:auto;
    overscroll-behavior:contain;
  }
  .header .nav>.nav-links.open {display:flex}
  .header .nav-links>a:not(.btn),.header .nav-disclosure {min-height:48px;padding:12px 14px;font-size:16px}
  .header .nav-disclosure {width:100%;justify-content:space-between}
  .header .nav-links>.btn {min-height:48px;margin:6px 0 0;font-size:16px;padding:12px 16px}
  .header .nav-dropdown {position:static;width:100%;margin:8px 0 6px;padding:8px;border-radius:7px;background:#eff6fa;box-shadow:none}
  .header .nav-dropdown-grid a {min-height:48px;padding:12px}
  .header .nav-dropdown-grid a:hover,.header .nav-dropdown-grid a[aria-current="page"] {background:#fff}
  .header .nav-dropdown-grid strong {font-size:15px}
  .no-js .header .nav>.nav-links {display:flex;max-height:none;overflow:visible}
  .no-js .header .nav>.menu-btn,.no-js .header .nav-disclosure {display:none}
  .no-js .header .nav>.language-switch {order:3;flex-basis:100%;padding-bottom:7px;justify-content:flex-start}
  .no-js .header .nav>.nav-links {order:4}
}
@media(max-width:480px) {
  .header .nav-dropdown-grid {grid-template-columns:1fr}
  .header .nav-dropdown-grid a {padding-inline:12px}
}
@media(max-width:360px) {
  .header .nav {gap:6px}
  .header .nav>.logo img {width:100px;max-width:100px;height:58px}
  .header .nav>.menu-btn {min-width:62px;padding-inline:9px}
  .header .wc-language-toggle {min-width:60px;padding-inline:10px}
}
@media(prefers-reduced-motion:reduce) {
  .header *,.header *::before,.header *::after {transition:none!important;animation:none!important}
}
