.site-search{
  display:flex; align-items:center; gap:.45rem; min-width:0;
  font-family:var(--sans, Arial, sans-serif);
}
.site-search__label{
  position:absolute; width:1px; height:1px; padding:0; margin:-1px;
  overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0;
}
.site-search__input{
  width:11rem; min-width:0; height:2.75rem; padding:0 .75rem;
  color:var(--parchment); background:rgb(14 12 10 / .58);
  border:1px solid var(--line-strong); border-radius:0;
  font:500 .92rem/1 var(--sans, Arial, sans-serif);
  transition:border-color .2s ease, background .2s ease;
}
.site-search__input::placeholder{ color:var(--parchment-dim); opacity:1; }
.site-search__input:focus{ width:13.25rem; outline:2px solid var(--gilt); outline-offset:2px; border-color:var(--gilt); background:var(--ink); }
.site-search__submit{
  width:2.75rem; height:2.75rem; flex:none; display:grid; place-items:center;
  padding:0; border:1px solid var(--line-strong); border-radius:0;
  color:var(--parchment); background:rgb(14 12 10 / .58); cursor:pointer;
  font-size:1.1rem; transition:color .2s ease, background .2s ease, border-color .2s ease;
}
.site-search__submit:hover,.site-search__submit:focus-visible{ color:var(--ink); background:var(--gilt); border-color:var(--gilt); outline:0; }
.site-search__results-panel{
  position:fixed; top:calc(72px + .65rem); right:max(var(--gutter, 1rem), env(safe-area-inset-right)); z-index:31;
  width:min(28rem, calc(100vw - (var(--gutter, 1rem) * 2))); max-height:min(31rem, calc(100dvh - 6rem)); overflow:auto;
  padding:.85rem; background:var(--ink-2, #17130f); border:1px solid var(--line-strong); box-shadow:0 18px 46px rgb(0 0 0 / .34);
}
.site-search__results-panel[hidden]{ display:none; }
.site-search__count,.site-search__empty{ margin:.1rem .15rem .65rem; color:var(--parchment-dim); font:500 .75rem/1.4 var(--sans, Arial, sans-serif); letter-spacing:.08em; text-transform:uppercase; }
.site-search__results{ list-style:none; margin:0; padding:0; }
.site-search__results a{ display:flex; align-items:baseline; justify-content:space-between; gap:1rem; padding:.85rem .65rem; color:var(--parchment); border-top:1px solid var(--line); text-decoration:none; }
.site-search__results a:hover,.site-search__results a:focus-visible{ color:var(--gilt); background:rgb(205 163 73 / .07); outline:2px solid var(--gilt); outline-offset:-2px; }
.site-search__results span{ flex:none; color:var(--gilt); font:600 .67rem/1 var(--sans, Arial, sans-serif); letter-spacing:.1em; text-transform:uppercase; }
.site-search__results strong{ font:400 1.12rem/1.2 var(--serif, Georgia, serif); text-align:right; }
.menu__search{ display:none; }
/* The header keeps all six desktop links only while its 1,800px rail can
   accommodate the wordmark and search without collision. Below that point,
   the existing menu keeps every destination reachable. */
@media (max-width:1600px){
  .nav__links{ display:none !important; }
  .nav__burger{ display:block !important; }
  .nav__inner{ grid-template-columns:max-content 1fr max-content max-content !important; }
  .menu__scroll{
    padding:calc(72px + .35rem) var(--gutter, 1rem) max(.75rem, env(safe-area-inset-bottom)) !important;
  }
  .menu .menu__search{ display:flex; width:100%; margin:0 0 .45rem !important; }
  .menu__search .site-search__input{ flex:1; width:auto; height:2.75rem !important; min-height:44px; font-size:1rem; }
  .menu__search .site-search__input:focus{ width:auto; }
  .menu__search .site-search__submit{ width:2.75rem; height:2.75rem !important; min-height:44px; }
  .menu .menu__group summary{
    min-height:44px; padding:.35rem 0 !important;
    font-size:clamp(1.15rem, 2.25vw, 1.45rem) !important; line-height:1.15 !important;
  }
  .menu .menu__group summary::after{ font-size:1.15rem !important; }
  .menu .menu__group ul{ margin:0 0 .55rem !important; }
  .menu .menu__group a{
    display:flex; align-items:center; min-height:44px;
    padding:.45rem 0 !important; font-size:.95rem !important;
  }
  .menu .menu__group summary:focus-visible,
  .menu .menu__group a:focus-visible{ outline:2px solid var(--gilt); outline-offset:4px; }
  .menu .menu__group summary,
  .menu .menu__group a{ transition:background-color .18s ease, color .18s ease; }
  .menu .menu__group summary:focus-visible,
  .menu .menu__group a:focus-visible{ background-color:rgb(205 163 73 / .14); }
  @media (hover:hover) and (pointer:fine){
    .menu .menu__group summary:hover,
    .menu .menu__group a:hover{ background-color:rgb(205 163 73 / .14); }
  }
  @media (prefers-reduced-motion:reduce){
    .menu .menu__group summary,
    .menu .menu__group a{ transition:none; }
  }
}
@media (max-width:640px){
  .site-search--header{ display:none; }
  .nav__inner{ grid-template-columns:max-content 1fr max-content !important; }
  .site-search__results-panel{ top:calc(72px + .5rem); width:calc(100vw - 2rem); right:1rem; }
}
