/* nav.css -- the site header shared by every page (markup is the same on all
   pages; nav.js moves tabs that don't fit into the More menu). Fixed height
   and font sizes so the header looks identical from page to page; colors come
   from each page's own tokens. */
html{scrollbar-gutter:stable}
.sitenav{position:sticky;top:0;z-index:50;background:var(--bg,#EDF0EA);border-bottom:2px solid var(--line,#C8D0C6);
  font-family:"Source Sans 3","Segoe UI",Helvetica,Arial,sans-serif}
.sitenav-in{max-width:980px;margin:0 auto;padding:0 16px;height:52px;display:flex;align-items:center;gap:14px}
.sitenav-brand{flex:none;font:700 1.15rem/1 "Barlow Condensed","Arial Narrow",Arial,sans-serif;letter-spacing:.02em;color:var(--ink,#17251C);text-decoration:none;white-space:nowrap}
.sitenav-tabs{flex:1 1 auto;min-width:0;display:flex;align-items:stretch;height:100%;overflow:hidden}
.sitenav a.sitenav-tab{flex:none;display:flex;align-items:center;padding:0 11px;height:100%;box-sizing:border-box;
  font:500 1.15rem/1 "Barlow Condensed","Arial Narrow",Arial,sans-serif;color:var(--muted,#5B6B60);text-decoration:none;white-space:nowrap;
  border-bottom:3px solid transparent;margin-bottom:-2px}
.sitenav a.sitenav-tab:hover{color:var(--ink,#17251C)}
.sitenav a.sitenav-tab[aria-current="page"]{color:var(--ink,#17251C);border-bottom-color:var(--accent,#1E3B2D)}
.sitenav a:focus-visible,.sitenav button:focus-visible{outline:2px solid var(--accent,#1E3B2D);outline-offset:2px;border-radius:3px}
.sitenav-more{position:relative;flex:none}
.sitenav-more[hidden]{display:none}
.sitenav-more>button{font:500 1.15rem/1 "Barlow Condensed","Arial Narrow",Arial,sans-serif;color:var(--muted,#5B6B60);background:none;border:0;
  padding:6px 8px;cursor:pointer;white-space:nowrap}
.sitenav-more>button:hover,.sitenav-more.has-current>button{color:var(--ink,#17251C)}
.sitenav-menu{position:absolute;right:0;top:calc(100% + 8px);min-width:190px;background:var(--field,#fff);border:1px solid var(--line,#C8D0C6);
  border-radius:10px;box-shadow:0 8px 24px rgba(0,0,0,.14);padding:6px;display:none;flex-direction:column}
.sitenav-more.open .sitenav-menu{display:flex}
.sitenav-menu a.sitenav-tab{height:auto;padding:9px 12px;border:0;margin:0;border-radius:6px}
.sitenav-menu a.sitenav-tab:hover{background:var(--bg,#EDF0EA)}
.sitenav-menu a.sitenav-tab[aria-current="page"]{border:0;background:var(--bg,#EDF0EA);color:var(--ink,#17251C)}
.sitenav #langslot{flex:none;margin-left:auto;display:inline-flex;align-items:center;padding:0}
:lang(ja) .sitenav-brand,:lang(ja) .sitenav a.sitenav-tab,:lang(ja) .sitenav-more>button{font-family:"Noto Sans JP","Source Sans 3",sans-serif;font-size:.95rem;font-weight:600}
@media (max-width:520px){.sitenav-in{gap:8px;padding:0 12px}.sitenav-brand{font-size:1.05rem}}
