/* Newsletter index search — the box that sits in the A–Z index nav, plus the
   /newsletters/search results view. Dependency-free; matches the header search
   spirit (maroon accents, Libre Franklin). The A–Z letter links are unchanged. */

.index-search {
  display: flex;
  max-width: 420px;
  margin: 18px auto 0;
}
.index-search__input {
  flex: 1 1 auto;
  min-width: 0;
  padding: 10px 14px;
  border: 1px solid #d8d8d8;
  border-right: 0;
  border-radius: 3px 0 0 3px;
  font-family: "Libre Franklin", Arial, sans-serif;
  font-size: 14px;
  color: #252525;
  background: #fff;
}
.index-search__input::placeholder { color: #8b8b8b; }
.index-search__input:focus {
  outline: none;
  border-color: #701b45;
}
.index-search__btn {
  flex: 0 0 auto;
  padding: 0 16px;
  border: 0;
  border-radius: 0 3px 3px 0;
  background: #701b45;
  color: #fff;
  cursor: pointer;
  font-size: 14px;
}
.index-search__btn:hover { background: #5a1537; }
.index-search__btn:focus-visible { outline: 2px solid #701b45; outline-offset: 2px; }

/* Results view */
.nl-search { margin-top: 8px; }
.nl-search__count {
  text-align: center;
  font-family: "Libre Franklin", Arial, sans-serif;
  color: #6d6e70;
  margin-bottom: 18px;
}
.nl-search__empty {
  text-align: center;
}
.nl-search__table[hidden],
.nl-search__empty[hidden] { display: none; }

/* Archives search — breadcrumb-path results (shared index-search stylesheet). */
.ar-results { list-style: none; margin: 0 auto; padding: 0; max-width: 820px; }
.ar-results[hidden] { display: none; }
.ar-result + .ar-result { border-top: 1px solid #ececec; }
.ar-path {
  display: block;
  padding: 10px 6px;
  color: #252525;
  line-height: 1.55;
  font-family: "Lora", Georgia, serif;
}
.ar-path:hover { background: #faf6f8; }
.ar-seg--match { background: #f1dfe8; font-weight: 600; border-radius: 2px; padding: 0 2px; }
.ar-sep { color: #9a9a9a; padding: 0 2px; }
.ar-seealso { color: #8b8b8b; font-style: italic; font-weight: normal; }

/* Index "jump" boxes on the search results page (search.php) — reuses .index-search. */
.index-search-jump { margin: 0 0 28px; }
.index-search-jump__intro {
  font-family: "Lora", Georgia, serif;
  color: #6d6e70;
  margin: 0 0 12px;
}
.index-search-jump__forms { display: flex; flex-wrap: wrap; gap: 18px; }
.index-search-jump__col { flex: 1 1 280px; min-width: 0; }
.index-search-jump__label {
  display: block;
  font-family: "Libre Franklin", Arial, sans-serif;
  font-weight: 700;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: .4px;
  color: #701b45;
  margin: 0 0 6px;
}
/* The reused .index-search form is centred (max-width:420px, margin auto) by its
   base rule; inside a jump column it should fill the column. */
.index-search-jump .index-search { max-width: none; margin: 0; }
