/* Поиск по сайту — форма в хэдере + страница /search.
   В стилистике темы: шрифт Montserrat, акцент #6377ee, скруглённые поля,
   бордеры #e5e5e5, мягкая тень rgba(99,119,238,..) как у кнопок шапки. */

/* ── Форма поиска в хэдере ── */
.header-search {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    margin-right: 22px;
}
.header-search input[type="search"],
.header-search input[type="text"] {
    width: 210px;
    height: 46px;
    padding: 8px 46px 8px 20px;
    font-family: 'Montserrat', sans-serif;
    font-size: 15px;
    color: #3b3b3b;
    background: #fff;
    border: 1px solid #e5e5e5;
    border-radius: 30px;
    outline: none;
    transition: all 300ms ease;
}
.header-search input::placeholder { color: #9aa0ab; }
.header-search input:focus {
    border-color: #6377ee;
    box-shadow: 0 10px 30px 3px rgba(99, 119, 238, 0.15);
}
.header-search button {
    position: absolute;
    top: 0;
    right: 0;
    height: 46px;
    width: 46px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    background: transparent;
    border: none;
    cursor: pointer;
    color: #848484;
    transition: color 300ms ease;
}
.header-search button:hover,
.header-search input:focus + button { color: #6377ee; }
.header-search svg { width: 18px; height: 18px; display: block; }

/* На узких экранах поле прячем — поиск доступен на странице /search */
@media (max-width: 1199px) { .header-search { display: none; } }

/* ── Страница /search ── */
.site-search-page { padding: 60px 0 80px; }

.site-search-form {
    position: relative;
    max-width: 640px;
    margin: 0 auto 44px;
}
.site-search-form input[type="search"],
.site-search-form input[type="text"] {
    width: 100%;
    height: 64px;
    padding: 10px 66px 10px 24px;
    font-family: 'Montserrat', sans-serif;
    font-size: 17px;
    color: #3b3b3b;
    background: #fff;
    border: 1px solid #e5e5e5;
    border-radius: 14px;
    outline: none;
    transition: all 300ms ease;
}
.site-search-form input::placeholder { color: #9aa0ab; }
.site-search-form input:focus {
    border-color: #6377ee;
    box-shadow: 0 12px 34px 3px rgba(99, 119, 238, 0.15);
}
.site-search-form button {
    position: absolute;
    top: 0;
    right: 0;
    height: 64px;
    width: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    background: transparent;
    border: none;
    cursor: pointer;
    color: #6377ee;
}
.site-search-form svg { width: 22px; height: 22px; display: block; }

.site-search-note { text-align: center; font-family: 'Montserrat', sans-serif; color: #848484; font-size: 16px; }
.site-search-note a { color: #6377ee; }

.site-search-count {
    text-align: center;
    font-family: 'Montserrat', sans-serif;
    color: #848484;
    margin-bottom: 30px;
}

.site-search-results { max-width: 820px; margin: 0 auto; }
.site-search-results .result-item {
    padding: 24px 0;
    border-bottom: 1px solid #eef0f4;
}
.site-search-results .result-item:last-child { border-bottom: none; }

.result-badge {
    display: inline-block;
    font-family: 'Montserrat', sans-serif;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    padding: 3px 12px;
    border-radius: 30px;
    background: #edf1fe;
    color: #6377ee;
    margin-bottom: 10px;
}
.site-search-results .result-item h3 { font-size: 20px; line-height: 1.35; margin: 4px 0 8px; }
.site-search-results .result-item h3 a { color: #25283a; transition: color 300ms ease; }
.site-search-results .result-item h3 a:hover { color: #6377ee; }
.site-search-results .result-item p { color: #5b6270; line-height: 1.6; margin: 0; }

/* Подсветка совпадений */
.site-search-results mark,
.site-search-form mark { background: #fff3b0; color: inherit; padding: 0 2px; border-radius: 2px; }
