.site-search { max-width: 1000px; }
.site-search h1 { font-size: clamp(1.9rem, 5vw, 2.8rem); margin-bottom: 1rem; }
.search-intro { max-width: 760px; }
.search-controls { display: flex; gap: 12px; margin: 8px 0 20px; }
.search-controls input { flex: 1; min-width: 0; margin: 0; font-size: 16px; }
.search-controls button { flex-shrink: 0; }
.search-filter { display: flex; align-items: center; gap: 12px; }
.search-filter label { margin: 0; }
.search-filter select { width: auto; min-width: 160px; font-size: 16px; padding: 10px; }
#search-status { margin: 28px 0 12px; color: #304457; }
#search-results .search-result { display: block; padding: 22px 0; border-bottom: 1px solid #dbe2e8; overflow-wrap: anywhere; }
.search-result-type { margin-bottom: 8px; color: #526477; font-size: 14px; }
.search-result h2 { font-size: 22px; margin-bottom: 10px; line-height: 1.35; }
.search-result h2 a { color: #155fa1; }
.search-result h2 a:hover { text-decoration: underline; }
.search-result p:last-child { margin-bottom: 0; }
#search-pagination { display: flex; align-items: center; gap: 18px; margin-top: 24px; flex-wrap: wrap; }
.search-page-link { border: 1px solid #155fa1; color: #155fa1; padding: 10px 20px; border-radius: 3px; }
.search-help { background: #f2f6f9; padding: 24px; margin-top: 36px; }
.search-help h2 { font-size: 22px; }
.search-help p { margin-bottom: 0; }
.site-search :focus-visible { outline: 3px solid #1a70b9; outline-offset: 3px; }
.pipe-wrapper[id] { scroll-margin-top: 110px; }
@media (max-width: 575px) {
  .search-controls { flex-direction: column; }
  .search-controls input, .search-controls button { width: 100%; }
  .search-result h2 { font-size: 20px; }
  .search-help { padding: 20px; }
}
