.site-search-menu { position: relative; }
.site-search-trigger { cursor: pointer; list-style: none; }
.site-search-trigger::-webkit-details-marker { display: none; }
.site-search-trigger svg { vertical-align: middle; }
.site-search-mobile-label { display: none; }

.site-search-dropdown {
    position: absolute;
    inset-inline-end: 0;
    top: calc(100% + 8px);
    z-index: 5;
    width: min(330px, calc(100vw - 32px));
    padding: 16px;
    text-align: right;
    color: #23423c;
    background: #fff;
    border: 1px solid #dce8e3;
    border-radius: 10px;
    box-shadow: 0 10px 32px rgba(16, 64, 53, .14);
}

.site-search-dropdown label, .site-search-intro label { display: block; margin-bottom: 8px; }
.site-search-field { display: flex; gap: 8px; }
.site-search-field input {
    min-width: 0;
    flex: 1;
    padding: 8px 12px;
    border: 1px solid #b9cfc7;
    border-radius: 6px;
    background: #fff;
    color: #18362f;
    font: inherit;
}
.site-search-field button {
    border: 0;
    border-radius: 6px;
    padding: 8px 16px;
    background: #08554e;
    color: #fff;
    cursor: pointer;
    font: inherit;
}
.site-search-trigger:focus-visible, .site-search-field input:focus-visible, .site-search-field button:focus-visible,
.site-search-page a:focus-visible { outline: 2px solid #208575; outline-offset: 3px; }

.site-search-page { min-height: 65vh; padding: 116px 0 62px; text-align: right; background: #f7faf8; }
.site-search-intro, .site-search-tabs, .site-search-results { max-width: 850px; margin-inline: auto; }
.site-search-intro h1 { margin-bottom: 24px; font-size: clamp(24px, 4vw, 34px); color: #163e36; }
.site-search-intro form { max-width: 660px; }
.site-search-tabs { display: flex; flex-wrap: wrap; gap: 8px 22px; margin-top: 28px; border-bottom: 1px solid #dce8e3; }
.site-search-tabs a { padding: 10px 4px; border-bottom: 3px solid transparent; color: #4b635c; }
.site-search-tabs a[aria-current] { color: #08554e; border-bottom-color: currentColor; font-weight: 700; }
.site-search-results { margin-top: 20px; }
.site-search-results h2 { font-size: 17px; line-height: 1.8; margin-bottom: 14px; }
.site-search-results article, .site-search-empty { background: #fff; padding: 16px 20px; border: 1px solid #e2ece6; border-radius: 9px; }
.site-search-results article + article { margin-top: 10px; }
.site-search-results h3 { color: #08554e; font-size: 18px; line-height: 1.8; overflow-wrap: anywhere; }
.site-search-results article p { margin: 6px 0 0; color: #455d55; line-height: 1.9; }
.site-search-kind { display: block; color: #526e65; font-size: 12px; margin-bottom: 4px; }
.site-search-pagination { display: flex; gap: 18px; margin-top: 18px; }
.site-search-pagination a { color: #08554e; text-decoration: underline; }

@media (max-width: 991px) {
    .site-search-dropdown { position: static; margin: 8px auto; }
    .site-search-mobile-label { display: inline; margin-inline-start: 6px; }
    .site-search-page { padding-top: 96px; }
}
