/* One composed header, with locally hosted Lora navigation. */
@font-face {
  font-family:'Lora';font-style:normal;font-weight:400;font-display:swap;
  src:url('assets/fonts/lora-regular.woff') format('woff');
}
.site-header {
  --nav-accent:var(--action-link);
  position:sticky;top:0;z-index:80;display:flex;align-items:center;
  justify-content:space-between;flex-wrap:nowrap;overflow:visible;
  min-height:104px;padding:20px clamp(24px,3vw,56px);gap:28px;
  background:var(--paper);border-bottom:1px solid var(--line);
}
.site-header .brand {display:flex;flex-direction:column;align-items:flex-start;gap:8px;flex:0 0 auto;max-width:none;}
.site-header .brand img.identity-logo {width:220px;max-width:none;height:auto;}
.site-header .brand .brand-tagline {border:0;padding:0;font-size:15px;line-height:1.25;white-space:nowrap;}
.site-header .brand-tagline>span,.site-header .brand-tagline>em {display:inline;}
.site-header nav,.site-header .menu-toggle {font-family:'Lora',Georgia,serif;font-weight:400;letter-spacing:.015em;}
.site-header nav>a,.site-header .nav-dropdown>summary {
  display:flex;align-items:center;justify-content:flex-start;gap:7px;
  min-height:44px;padding:10px 0;border:0;font-size:14.5px;line-height:1.45;
  font-weight:400;white-space:nowrap;text-decoration:none;transition:color .18s ease;
}
.site-header nav a:hover,.site-header nav a[aria-current=page],
.site-header .nav-dropdown:is([open],.is-active)>summary,
.site-header .nav-dropdown:has(a[aria-current=page])>summary,
.site-header .nav-dropdown>summary:hover {color:var(--nav-accent);text-decoration:none;}
.site-header .nav-dropdown {position:relative;flex:0 0 auto;}
.site-header .nav-dropdown>summary {list-style:none;cursor:pointer;}
.site-header .nav-dropdown>summary::-webkit-details-marker {display:none;}
.site-header .nav-dropdown>summary>span[aria-hidden] {
  display:block;width:5px;height:5px;flex:0 0 5px;margin:-3px 1px 0 0;
  font-size:0;border-right:1px solid currentColor;border-bottom:1px solid currentColor;
  transform:rotate(45deg);transition:transform .18s ease;
}
.site-header .nav-dropdown[open]>summary>span[aria-hidden] {transform:translateY(3px) rotate(225deg);}
.site-header nav :is(.dropdown-menu,.dropdown-panel)>a {
  display:block;min-height:42px;padding:10px 0;border:0;
  font-size:14px;font-weight:400;line-height:1.55;white-space:normal;
}
.site-header nav .nav-sub-brand {font-size:13px;}
.site-header nav .nav-property {
  min-height:42px;margin:0;padding:10px 16px!important;gap:14px;
  background:var(--nav-accent);border:1px solid var(--nav-accent);color:var(--paper);
  font-size:14px;text-decoration:none;
}
.site-header nav .nav-property:hover {background:var(--action-hover);border-color:var(--action-hover);color:var(--paper);}
.site-header nav .saved-nav {margin:0;gap:5px;color:var(--nav-accent);}
.site-header nav .saved-nav b {font-family:inherit;font-weight:400;font-size:11px;min-width:19px;padding:1px 4px;text-align:center;}
.site-header nav a:focus-visible,.site-header .nav-dropdown>summary:focus-visible,.site-header .menu-toggle:focus-visible {outline:2px solid var(--nav-accent);outline-offset:5px;}
@media (min-width:1024px) {
  .site-header .menu-toggle {display:none!important;}
  .site-header nav,.site-header nav.open {
    display:flex!important;position:static;inset:auto;flex:0 1 auto;width:auto;
    min-width:0;max-height:none;overflow:visible;flex-direction:row;flex-wrap:nowrap;
    align-items:center;justify-content:flex-end;gap:18px;margin:0 0 0 auto;
    padding:0;border:0;box-shadow:none;background:transparent;
  }
  .site-header nav .dropdown-menu,.site-header nav .dropdown-panel {
    position:absolute;top:calc(100% + 8px);left:-22px;right:auto;display:grid;gap:0;
    width:max-content;min-width:230px;max-width:310px;max-height:calc(100svh - 150px);
    overflow:auto;margin:0;padding:14px 22px;border:1px solid var(--line);
    border-top:2px solid var(--nav-accent);background:var(--paper);
    box-shadow:0 14px 35px #14282a16;z-index:85;
  }
  .site-header nav .nav-dropdown:nth-last-child(-n+3) :is(.dropdown-menu,.dropdown-panel) {left:auto;right:0;}
}
@media (min-width:1024px) and (max-width:1199px) {
  .site-header {min-height:96px;padding:18px 22px;gap:20px;}
  .site-header .brand img.identity-logo {width:190px;}
  .site-header .brand .brand-tagline {font-size:14px;}
  .site-header nav,.site-header nav.open {gap:10px;}
  .site-header nav>a,.site-header .nav-dropdown>summary {font-size:13.5px;gap:5px;}
  .site-header nav .nav-property {padding:10px 12px!important;font-size:13px;gap:10px;}
}
@media (min-width:1200px) and (max-width:1279px) {
  .site-header nav,.site-header nav.open {gap:16px;}
}
@media (min-width:1600px) {
  .site-header {min-height:112px;gap:44px;}
  .site-header .brand img.identity-logo {width:240px;}
  .site-header .brand .brand-tagline {font-size:16px;}
  .site-header nav,.site-header nav.open {gap:26px;}
  .site-header nav>a,.site-header .nav-dropdown>summary {font-size:15.5px;}
}
@media (max-width:1023px) {
  .site-header {min-height:94px;padding:16px 5%;gap:12px;}
  .site-header .brand img.identity-logo {width:min(230px,calc(100vw - 140px));}
  .site-header .brand .brand-tagline {font-size:15px;}
  .site-header .menu-toggle {display:flex;align-items:center;justify-content:center;flex:0 0 auto;gap:10px;min-width:72px;min-height:44px;padding:0;background:none;}
  .site-header .menu-toggle .menu-label {display:block;font-size:13px;}
  .site-header .menu-toggle>span[aria-hidden] {position:relative;display:block;width:20px;height:16px;font-size:0;}
  .site-header .menu-toggle>span[aria-hidden]::before,.site-header .menu-toggle>span[aria-hidden]::after {
    content:'';position:absolute;left:0;width:20px;height:1px;background:currentColor;transition:transform .18s ease;
  }
  .site-header .menu-toggle>span[aria-hidden]::before {top:4px;}
  .site-header .menu-toggle>span[aria-hidden]::after {top:11px;}
  .site-header .menu-toggle[aria-expanded=true]>span[aria-hidden]::before {transform:translateY(3.5px) rotate(45deg);}
  .site-header .menu-toggle[aria-expanded=true]>span[aria-hidden]::after {transform:translateY(-3.5px) rotate(-45deg);}
  .site-header nav {
    display:none;position:absolute;top:calc(100% + 8px);left:auto;right:5%;bottom:auto;
    width:min(380px,90vw);max-height:min(60svh,480px);overflow-y:auto;overscroll-behavior:contain;
    margin:0;padding:14px 24px;background:var(--paper);border:1px solid var(--line);
    border-top:2px solid var(--nav-accent);border-radius:0;box-shadow:0 14px 35px #14282a20;z-index:85;
  }
  .site-header nav.open {display:flex;flex-direction:column;align-items:stretch;gap:0;}
  .site-header nav>a,.site-header .nav-dropdown>summary {justify-content:space-between;min-height:44px;font-size:16px;white-space:normal;}
  .site-header nav .dropdown-menu,.site-header nav .dropdown-panel {
    position:static;display:grid;min-width:0;max-width:100%;width:auto;max-height:none;overflow:visible;
    margin:0 0 10px;padding:0 0 0 16px;background:transparent;border:0;border-left:1px solid var(--line);box-shadow:none;
  }
  .site-header nav :is(.dropdown-menu,.dropdown-panel)>a {min-height:44px;font-size:14.5px;}
  .site-header nav .nav-property {margin:10px 0 4px;font-size:15px;}
  .site-header nav .saved-nav {justify-content:flex-start;gap:8px;}
}
@media (prefers-reduced-motion:reduce) {
  .site-header *, .site-header *::before,.site-header *::after {transition:none!important;}
}
