/* Компактная шапка: логотип и поиск в одну строку, низкое меню. Переопределяет правила шапки из all.css. */

header {
    padding: 0;
}

header .header-main {
    display: flex;
    align-items: center;
    gap: 24px;
    padding-top: 8px;
    padding-bottom: 8px;
}

/* clearfix-псевдоэлементы .container во flex-контейнере стали бы лишними элементами строки */
header .header-main:before,
header .header-main:after {
    content: none;
}

header .logo-holder {
    flex: none;
}

header .logo-holder .logo {
    display: block;
    margin: 0;
}

header .logo-holder img {
    display: block;
    width: auto;
    height: 44px;
}

/* padding: all.css до 992px добавляет по 15px слева и справа, во flex-строке это лишний отступ */
header .top-search-holder {
    flex: 1;
    min-width: 0;
    max-width: 560px;
    margin: 0;
    padding: 0;
}

header .top-search-holder .search-area {
    margin: 0;
    border-width: 2px;
    border-radius: 6px;
}

header .top-search-holder .search-area .control-group {
    display: flex;
}

header .top-search-holder .search-area .search-field {
    flex: 1;
    width: auto;
    min-width: 0;
    padding: 7px 12px;
    font-size: 14px;
    line-height: 20px;
}

header .top-search-holder .search-area .search-button {
    float: none;
    flex: none;
    padding: 0 14px;
}

header .top-search-holder .search-area .search-button:after {
    font-size: 18px;
    line-height: 18px;
    vertical-align: middle;
}

#top-megamenu-nav {
    margin: 0;
}

#top-megamenu-nav .navbar {
    min-height: 0;
}

#top-megamenu-nav .navbar-nav > li > a {
    padding-top: 10px;
    padding-bottom: 10px;
}

#top-megamenu-nav .navbar-toggle {
    margin-top: 5px;
    margin-bottom: 5px;
}

@media (max-width: 767px) {
    header .header-main {
        gap: 12px;
        padding-top: 6px;
        padding-bottom: 6px;
    }

    header .logo-holder img {
        height: 36px;
    }
}
