.site-search-wrap { position: relative; min-width: 0; }
.site-search-options { position: absolute; left: 0; right: 0; top: 100%; z-index: 110; margin: 4px 0 0; padding: 4px 0; list-style: none; background: #fff; color: #222; border: 1px solid #ccc; border-radius: 4px; box-shadow: 0 4px 12px rgba(0,0,0,.12); max-height: 45vh; overflow-y: auto; text-align: left; }
.site-search-options[hidden] { display: none !important; }
.site-search-options li { margin: 0; padding: 0; list-style: none; }
.site-search-options a { display: block; padding: 10px 12px; min-height: 44px; color: #222; font-size: 15px; line-height: 1.35; letter-spacing: 0; text-decoration: none; overflow-wrap: anywhere; }
.site-search-options a:hover, .site-search-options [aria-selected="true"] a { background: #f3f3f3; color: #a51f29; }
.site-search-options small { display: block; margin-top: 3px; color: #666; font-size: 12px; line-height: 1.4; }
.site-search-options .site-search-all a { border-top: 1px solid #eee; color: #a51f29; }
.site-search-status { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); }
/* The legacy header is a scroll container: an absolute list would be clipped. */
.header_search .site-search-options { position: static; max-height: none; }
.footer-search .site-search-options { top: auto; bottom: 100%; }
@media (max-width: 600px) {
    .site-search-options { max-height: 35vh; }
    .site-search-options a { padding: 12px; }
    .header_search_form.site-search-enhanced { display: flex; flex-direction: column; }
    .header_search_form.site-search-enhanced fieldset { margin-right: 0; order: 1; }
    .header_search_form.site-search-enhanced button { order: 2; float: none; width: 100%; margin: 10px 0 0 !important; }
}
