#gpba-full .search-page { max-width: 1100px; margin-inline: auto; }
#gpba-full .search-page .pageintro { padding-bottom: 28px; }
#gpba-full .search-content { padding-top: 0; min-height: 45vh; }
#gpba-full .search-form label { display: block; margin-bottom: 10px; font-weight: 600; }
#gpba-full .search-fields { display: flex; align-items: stretch; gap: 12px; }
#gpba-full .search-fields input { flex: 1; min-width: 0; padding: 14px; border: 1px solid var(--brass); border-radius: 0; background: var(--paper); color: var(--green); font: inherit; }
#gpba-full .search-fields input:focus-visible { outline: 2px solid var(--green); outline-offset: 3px; }
#gpba-full .search-fields button { cursor: pointer; }
#gpba-full .search-status { margin: 24px 0; }
#gpba-full .search-results { list-style: none; padding: 0; margin: 0; }
#gpba-full .search-results li { padding: 24px 0; border-top: 1px solid var(--brass); }
#gpba-full .search-results h2 { font-size: clamp(27px, 3.2vw, 34px); margin: 0 0 12px; }
#gpba-full .search-results h2 a { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 5px; }
#gpba-full .search-results p { margin: 0; }
@media (max-width: 560px) {
  #gpba-full .search-fields { flex-direction: column; }
  #gpba-full .search-fields button { align-self: flex-start; }
}
