.skip-link { position:fixed; top:-100px; left:20px; padding:14px 20px; z-index:100; background:var(--heading); color:#fff; font:600 16px/1.5 var(--sans); }
.skip-link:focus { top:12px; color:#fff; }
.site-nav { position:sticky; top:0; z-index:30; background:var(--heading); color:#fff; border-bottom:1px solid var(--heading); font-family:var(--sans); }
.nav-inner { position:relative; max-width:1184px; padding:16px 32px; margin:auto; display:flex; align-items:center; gap:28px; }
.site-nav a { display:inline-flex; align-items:center; justify-content:center; min-height:44px; min-width:44px; text-decoration:none; font-size:15px; line-height:1.4; }
.site-nav .nav-brand { flex-direction:column; align-items:flex-start; gap:4px; margin-right:auto; color:#fff; font:700 25px/1.2 var(--serif); white-space:nowrap; }
.nav-brand span { font:600 10px/1.4 var(--sans); letter-spacing:.12em; color:#D8E0E5; }
.nav-tools { display:flex; align-items:center; gap:12px; order:3; }
.site-nav .nav-language { color:#D8E0E5; font-size:14px; }
.site-nav .nav-inner :where(a, summary):focus-visible { outline-color:#fff; }
.site-menu { order:2; }
.menu-toggle::-webkit-details-marker { display:none; }
.menu-toggle { list-style:none; }
.site-menu[open] .menu-toggle span { transform:rotate(45deg); }
.nav-panel { display:flex; align-items:center; gap:4px; }
.nav-panel a { padding:10px 12px; color:#EDF1F4; border-radius:4px; }
.nav-panel a:hover, .nav-panel a[aria-current=page] { color:#fff; background:#344E63; }
.nav-panel a[aria-current=page] { text-decoration:underline; text-underline-offset:6px; }
.nav-panel .nav-partner { margin-left:8px; background:var(--paper); color:var(--heading); padding-inline:18px; font-weight:600; }
.nav-panel .nav-partner:hover, .nav-panel .nav-partner[aria-current=page] { background:#DDE6EC; color:var(--heading); }
.menu-toggle { display:inline-flex; align-items:center; gap:10px; justify-content:center; min-height:44px; padding:8px 12px; border:1px solid #879AA8; border-radius:4px; color:#fff; background:transparent; font:600 15px/1.4 var(--sans); cursor:pointer; }
.menu-toggle span { font-size:20px; }
.mobile-shortcuts { display:none; }
.footer-links { display:flex; flex-wrap:wrap; gap:4px 22px; margin-bottom:24px; }
.footer-links a { display:inline-flex; align-items:center; min-height:44px; font:500 16px/1.5 var(--sans); text-decoration:none; }
.footer-links a:hover { text-decoration:underline; }
@media(max-width:1050px) {
  .nav-inner { flex-wrap:wrap; gap:0 16px; padding:12px 24px; }
  .nav-tools { order:2; margin-left:auto; margin-right:90px; }
  .site-menu { order:3; flex:0 0 100%; }
  .nav-panel { order:3; flex:0 0 100%; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; border-top:1px solid #879AA8; margin-top:12px; padding-top:12px; }
  .nav-panel a { justify-content:flex-start; font-size:17px; min-height:48px; padding:12px; }
  .nav-panel .nav-partner { margin-left:0; }
  .site-menu .menu-toggle { display:inline-flex; position:absolute; top:12px; right:24px; }
  .mobile-shortcuts { display:flex; justify-content:space-around; background:var(--paper); color:var(--heading); border-top:1px solid var(--line); padding-inline:12px; }
  .site-nav .mobile-shortcuts a:focus-visible { outline-color:var(--accent); outline-offset:-4px; }
  .mobile-shortcuts a { padding:8px 18px; min-height:44px; font-size:15px; font-weight:600; }
  .site-nav:has(.site-menu[open]) .mobile-shortcuts { display:none; }
}
@media(max-width:380px) {
  .nav-inner { padding-inline:18px; }
  .nav-brand span { font-size:9px; }
  .nav-tools { gap:8px; margin-right:84px; }
  .site-menu .menu-toggle { right:18px; }
}
@media print { .site-nav, .skip-link, .footer-links { display:none; } }
@media screen {
  .site-letter { padding-top:0; }
  .site-letter > .site-nav { margin-inline:-24px; }
  .site-letter > main { padding-top:36px; }
  .site-letter .footer-links { margin-top:32px; padding-top:20px; border-top:1px solid var(--line); }
  #main-content { scroll-margin-top:140px; }
}
@media screen and (max-width:639px) {
  .site-letter > .site-nav { margin-inline:-20px; }
  .site-letter > main { padding-top:24px; }
}
.footer-links a { min-width:44px; }

@media(min-width:1051px) { .site-menu[data-enhanced] > .menu-toggle { display:none; } }
