/**
 * Шапка магазина — переопределения main.css / default.css.
 * Подключается ПОСЛЕДНИМ (после shop.css).
 */

body.shopPage header.shopSiteHeader nav.headerMenu.shopHeaderMenu {
    width: auto !important;
    padding-top: 0 !important;
    margin-top: 0 !important;
}

@media (max-width: 1280px) and (min-width: 992px) {
    body.shopPage header.shopSiteHeader nav.headerMenu.shopHeaderMenu {
        width: 100% !important;
    }
}

@media (min-width: 1281px) {
    body.shopPage header.shopSiteHeader nav.shopHeaderMenu > ul.shopHeaderMenuList {
        display: flex !important;
        flex-flow: row nowrap !important;
        justify-content: flex-start !important;
        align-items: center !important;
        width: max-content !important;
        max-width: 100% !important;
        gap: clamp(16px, 2vw, 32px) !important;
    }

    body.shopPage header.shopSiteHeader .shopHeaderRow {
        display: flex !important;
        flex-flow: row nowrap !important;
        align-items: center !important;
        width: 100% !important;
    }
}

body.shopPage header.shopSiteHeader .shopHeaderLogo {
    flex: 0 0 auto !important;
}

body.shopPage header.shopSiteHeader .shopHeaderNavCol {
    flex: 0 0 auto !important;
    min-width: 0 !important;
}

body.shopPage header.shopSiteHeader .shopHeaderActions {
    flex: 0 0 auto !important;
    display: flex !important;
    align-items: center !important;
    margin-left: auto !important;
}

body.shopPage header.shopSiteHeader .shopTopBlock {
    display: flex !important;
    flex-flow: row nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    column-gap: 20px !important;
    color: #fff !important;
}

body.shopPage header.shopSiteHeader .shopTopBlock__cell,
body.shopPage header.shopSiteHeader button.shopTopBlock__cell {
    display: flex !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    background: transparent !important;
    color: #fff !important;
    font: inherit !important;
    line-height: 1 !important;
    text-align: left !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
    cursor: pointer !important;
    appearance: none !important;
}

body.shopPage header.shopSiteHeader button.shopTopBlock__cell:hover,
body.shopPage header.shopSiteHeader a.shopTopBlock__cell:hover {
    background: transparent !important;
    color: #fff !important;
    opacity: 0.88;
}

body.shopPage header.shopSiteHeader .shopSearch__input {
    appearance: none !important;
    background-image: none !important;
}

body.shopPage header.shopSiteHeader .shopSearch__input::-webkit-search-cancel-button,
body.shopPage header.shopSiteHeader .shopSearch__input::-webkit-clear-button,
body.shopPage header.shopSiteHeader .shopSearch__input::-ms-clear {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    pointer-events: none !important;
}

body.shopPage header.shopSiteHeader button.shopSearch__clear {
    display: flex !important;
    width: 28px !important;
    min-width: 28px !important;
    max-width: 28px !important;
    height: 28px !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: #fff !important;
}

body.shopPage header.shopSiteHeader .shopTopBlock__cell--text {
    flex-direction: row !important;
    column-gap: 14px !important;
}

body.shopPage header.shopSiteHeader .shopTopBlock__box {
    display: flex !important;
    width: 40px !important;
    height: 40px !important;
    flex: 0 0 40px !important;
    align-items: center !important;
    justify-content: center !important;
    border: 1px solid #fff !important;
    box-sizing: border-box !important;
    color: #fff !important;
}

body.shopPage header.shopSiteHeader .shopTopBlock__svg {
    display: block !important;
    width: 22px !important;
    height: 22px !important;
}

body.shopPage header.shopSiteHeader .shopTopBlock__copy {
    display: flex !important;
    flex: 0 0 auto !important;
}

body.shopPage header.shopSiteHeader .shopTopBlock__copy--inline {
    flex-direction: row !important;
    align-items: baseline !important;
    column-gap: 5px !important;
}

body.shopPage header.shopSiteHeader .shopTopBlock__copy--stack {
    flex-direction: column !important;
    align-items: flex-start !important;
    row-gap: 1px !important;
}

body.shopPage header.shopSiteHeader .shopTopBlock__value {
    display: block !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    line-height: 1.1 !important;
    white-space: nowrap !important;
}

body.shopPage header.shopSiteHeader .shopTopBlock__label {
    display: block !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
}

@media (min-width: 1281px) {
    body.shopPage header.shopSiteHeader .shopHeaderNavCol {
        padding-left: clamp(24px, 3vw, 64px) !important;
        min-width: 0 !important;
        flex: 1 1 auto !important;
    }

    body.shopPage header.shopSiteHeader .shopHeaderActions {
        margin-left: 16px !important;
    }
}

@media (min-width: 1600px) {
    body.shopPage header.shopSiteHeader .shopHeaderNavCol {
        padding-left: 80px !important;
    }

    body.shopPage header.shopSiteHeader nav.shopHeaderMenu > ul.shopHeaderMenuList {
        gap: 40px !important;
    }
}

body.shopPage header.shopSiteHeader .shopTopBlock--guest .shopTopBlock__cell--points,
body.shopPage header.shopSiteHeader .shopTopBlock--guest .shopTopBlock__cell--cart {
    display: none !important;
}

@media (max-width: 991px) {
    body.shopPage header.shopSiteHeader .shopTopBlock {
        column-gap: 8px !important;
    }

    body.shopPage header.shopSiteHeader .shopTopBlock__cell--search,
    body.shopPage header.shopSiteHeader .shopTopBlock__cell--points {
        display: none !important;
    }

    body.shopPage header.shopSiteHeader .shopTopBlock__copy {
        display: none !important;
    }

    body.shopPage header.shopSiteHeader .shopTopBlock__cell--cart {
        column-gap: 0 !important;
    }

    body.shopPage header.shopSiteHeader .shopTopBlock__box {
        width: 36px !important;
        height: 36px !important;
        flex-basis: 36px !important;
    }
}
