.__header {
    position: sticky;
    top: 0;
    right: 0;
    left: 0;
    z-index: 1002;
    /* border: 1px solid #737373; */
    border: none;
}

.__packages_dropdown {
    min-width: 850px;
}

.__packages_dropdown ul {
    padding: 0;
}

.vertical_divider {
    width: 1px;
    /* background: linear-gradient(to bottom, transparent 1%, black 1%, transparent 90%); */
    background-color: #737373;
    flex-shrink: 0;
}

.submenu-grid {
    display: none;
}

.table-item {
    padding-bottom: 6px;
}

.group-active > span {
    background-color: var(--main-color);
    color: white;
}

.table-group-item > span {
    height: 50px;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
}

.table-group-item .bi-chevron-right::before {
    transition: none;
}

.table-active {
    display: block;
}

.category_dropdown_name, .nav-item.dropdown-toggle {
    height: 100%;
    display: flex;
    align-items: center;
}

.__header {
    a {
        transition: none;
    }

    .__header_top_line {
        height: 83px;
    }

    .__header-1 {
        margin: 0;
    }

    .navbar-brand {
        /* padding-bottom: 10px; */
        margin: 0;
        padding: 0;
        margin-left: 85px;
        width: unset;
    }

    .brand_image {
        width: 218px;
        height: 47px;

        margin-top: 4.5px;
    }

    .__logo_descriptor {
        width: 100%;
        height: fit-content;
        margin: 0;
        padding: 0;

        font-family: Inter, sans-serif;
        font-weight: 400;
        font-size: 12.87px;
        line-height: 1em;
        letter-spacing: 0.03em;

        color: white;
    }

    .item-city {
        font-family: Inter, sans-serif;
        font-size: 14.28px;
        font-weight: 400;
        line-height: 1em;
        text-align: left;
        color: #737373;

        padding-top: 7px;
    }

    .city-element {
        font-family: 'Roboto';
        font-size: 19.04px;
        font-weight: 500;
        line-height: 1em;
        letter-spacing: 0.05em;
        text-align: left;
        color: #ffffff;
        width: max-content;
        padding-top: 1px;
    }

    .moskow-city {
        padding-top: 3.8px;
    }

    .cities_ul_element {
        padding-left: 0;
        padding-right: 29px;
        /* padding-left: 61px; */
        /* padding-bottom: 14px; */
    }

    .spb-number {
        padding-top: 17px;
    }

    .moskow-number {
        padding-top: 8px;
    }

    .phone_ul_element {
        padding-left: 0;
        padding-right: 113.39px;
        /* padding-left: 31px; */
        /* padding-bottom: 13px; */
    }

    .phone_number_element {
        font-family: 'Roboto';
        font-size: 19.04px;
        font-weight: 500;
        line-height: 1.125em;
        letter-spacing: 0.05em;
        text-align: left;
        width: max-content;
        color: var(--main-color);
    }

    .main-number {
        padding-top: 18px;
    }

    .contact_ul_element {
        padding-left: 0;
        padding-right: 53px;
        /* padding-left: 95px; */
        /* padding-bottom: 10px; */
    }

    .email_element {
        font-family: Inter, sans-serif;
        font-size: 14.28px;
        font-weight: 400;
        line-height: 1em;
        text-align: left;
        width: max-content;
        color: #ffffff;
        padding-top: 9px;
    }

    .call-back-element {
        padding-top: 25px;
        /* padding-left: 44px; */
        padding-right: 88px;
        /* padding-bottom: 12px; */
    }

    .__btn_call_back {
        font-family: Manrope, sans-serif;
        font-size: 15px;
        font-weight: 500;
        line-height: 1.1em;
        text-align: center;
        border-radius: 40px;
        color: #ffffff;
        background-color: var(--main-color);
        
        width: 202.31px;
        padding: 11.14px 36.66px;
    }

    .__btn_call_back:hover {
        background-color: white;
    }

    .login_logout_elem {
        width: auto;
        aspect-ratio: 1/1;
        background-color: var(--main-color);
        text-align: center;
        align-content: center;
    }

    .login_logout_image {
        height: 31px;
    }

    .nav-content {
        background-color: var(--main-color);
    }

    .__header_bottom_line {
        height: 70px;
    }

    .__header_bottom_line > nav, #navbarSupportedContent, #navbarSupportedContent > ul {
        height: 100%;
    }

    .__calc_online_element {
        align-self: center;
        font-family: Manrope, sans-serif;
        font-size: 15px;
        font-weight: 500;
        line-height: 1.1em;
        text-align: left;
        color: #ffffff !important;
        
        width: 100%;
        height: 100%;
        padding: 0 !important;

        display: flex;
        align-items: center;
        justify-content: center;
    }

    .__calc_online_element:hover {
        text-shadow: 0 0 .7px #ffffff;
    }

    .__calc_online_element_li {
        margin-left: 85px;
        width: 220px;
    }

    .__calc_online_element_li > .nav-content {
        display: flex;
        align-items: center;
        height: 100%;
        /* padding-left: 24px; */
    }

    .dropdown_package_div {
        margin-left: 91.64px;
    }

    .navbar-expand-lg .navbar-nav .dropdown-menu {
        top: 100%;
    }

    .category_dropdown_name {
        font-family: 'Roboto';
        font-size: 19.04px;
        font-weight: 400;
        line-height: 1em;
        letter-spacing: 0.05em;
        text-align: left;
    }

    .dropdown-toggle:has(.category_dropdown_name) {
        padding-top: 0;
        border: none;
    }

    .category_groupname_header {
        margin-left: 46.41px;
    }

    #search {
        width: 80px;
        text-align: center;
    }

    .__search_button_lg, .__search_form_top {
        display: none;
    }

    #search-form-block {
        width: 200px;
        display: none;
    }

    #search-form-block-very-little, #search-form-block-very-little > form {
        width: 100%;
        padding: 0;
    }

    .top-navbar-button {
        color: var(--main-color);
        font-size: 16px;
        text-decoration: none!important;
        vertical-align: middle;
        -webkit-text-stroke: 0px;
    }

    .navbar-collapse .dropdown:hover>.dropdown-menu {
        background-color: #E7E7E7;
    }

    .__burger_menu_lg {
        border: var(--main-color);
        background-color: var(--main-color);
        height: 100%;
        aspect-ratio: 1/1;
        margin: 0;
        padding: 0;
    }
}

@media (max-width: 1439.98px) {
    .__header {
        .cities_ul_element {
            padding-right: 20px;
        }

        .phone_ul_element {
            padding-right: 30px;
        }

        .contact_ul_element {
            padding-right: 22px;
        }

        .call-back-element {
            padding-right: 33px;
        }

        .navbar-brand, .__calc_online_element_li {
            margin-left: 65px;
        }

        .dropdown_package_div {
            margin-left: 50px;
        }
        
        .category_groupname_header {
            margin-left: 25px;
        }
    }
}

@media (min-width: 992px) {
    .__header {
        #navbarNavAltMarkup > .navbar-nav {
            display: flex;
            width: 100%;
            justify-content: flex-end;
        }
    }
}

@media (max-width:1199.98px) {
    .__packages_dropdown {
        min-width: 700px;
    }

    .table-group-item > span {
        height: 45px;
    }

    .__packages_dropdown .row {
        flex-wrap: wrap;
    }

    .table-item {
        font-size: 14px;
    }
    
    .__header {
        .__header_top_line {
            height: 57.39px;
        }

        .__header-1 > .navbar-brand, .__calc_online_element_li {
            margin-left: 58px;
        }

        .brand_image {
            width: 150px;
            height: 32px;
        }

        .__logo_descriptor {
            font-size: 8.87px;
        }

        .cities_ul_element {
            padding-right: 21.5px;
        }

        .item-city, .email_element {
            font-size: 9.84px;
        }
        
        .item-city {
            padding-top: 4.92px;
        }

        .city-element, .phone_number_element {
            font-size: 13.12px;
        }

        .moskow-city {
            padding-top: 2.4px;
        }

        .phone_ul_element {
            padding-right: 77px;
        }

        .phone_number_element {
            line-height: 14.76px;
        }

        .main-number {
            line-height: 1em;
        }

        .spb-number, .main-number {
            padding-top: 15px;
        }

        .moskow-number {
            padding-top: 3.86px;
        }

        .contact_ul_element {
            padding-right: 36px;
        }

        .email_element {
            padding-top: 6.5px;
        }

        .call-back-element {
            padding-top: 17.22px;
            padding-right: 61.3px;
        }

        .__btn_call_back {
            font-size: 10.58px;
            padding: 0;
            width: 139.37px;
            height: 27.05px;
        }

        .login_logout_image {
            height: 21px;
        }

        .__header_bottom_line {
            height: 49.19px;
        }

        .__calc_online_element_li {
            width: 151.67px;

            img {
                height: 100%;
            }
        }
        
        .dropdown_package_div {
            margin-left: 63.13px;
        }

        .category_groupname_header {
            margin-left: 31.97px;
        }

        .__calc_online_element {
            font-size: 10.58px;
            justify-content: flex-end;
        }

        .category_dropdown_name {
            font-size: 13.12px;
        }

        .dropdown-toggle:has(.category_dropdown_name) {
            line-height: 1;
        }

        #search {
            width: 57.39px;
        }

        .top-navbar-button svg {
            height: 13.12px;
        }
    }
}

@media (max-width: 991.98px) {
    .__header {
        .__header_top_line {
            height: 58px;
        }

        .__header-1 {
            margin: 0;
        }

        .__header-1 > .navbar-brand {
            margin-left: 54px;
        }

        .__header-1 > a {
            padding: 0;
            margin: 0;
        }

        #navbarNavAltMarkup > .navbar-nav {
            display: flex;
            flex-wrap: nowrap;
            flex-direction: row;
            justify-content: end;
        }

        .navbar-brand {
            align-self: center;
        }

        #brand_image_header {
            vertical-align: unset !important;
        }

        .__header_contacts_dropdown {
            display: flex !important;
            align-items: center;
            height: 100%;
            margin-right: 19px;
        }

        .__header_contacts_dropdown .dropdown-menu {
            position: absolute;
        }

        .__header_contacts_dropdown .nav-item {
            border: none;
        }

        .dropdown-toggle {
            padding: 0;
            padding-left: 17px;
        }

        .dropdown-item {
            padding: 0;
        }
        
        .contact_ul_element {
            padding-right: 30px;
            display: flex;
            align-items: center;
        }

        .__contacts_dropdown_line {
            display: flex;
            align-items: center;
            justify-content: flex-start;
        }

        .__contact_dropdown_image {
            height: 100%;
            padding: 20px 25px;
        }

        .__contact_dropdown_text {
            height: 100%;
            padding-top: 5px;
            padding-right: 20px;
        }

        .__contacts_el_top_text {
            font-family: 'Roboto';
            font-weight: 400;
            font-size: 16px;
            line-height: 16px;
        }

        .__contacts_el_bottom_text {
            font-family: 'Roboto';
            font-weight: 300;
            font-size: 14px;
            line-height: 22px;
            letter-spacing: 0.05em;
        }

        .dropdown-item-divider {
            height: 3px;
            background: repeating-linear-gradient(to right, transparent, #DEDEDE, transparent);
        }

        .phone_number_element {
            padding: 0;
        }

        .call-back-element {
            padding-top: 17px;
            padding-right: 29px;
        }

        .__btn_call_back {
            width: 140px;
            height: 27px;
            padding: 0;
            font-size: 10.58px;
        }

        .__search_form_top {
            display: none;
            align-items: center;
            padding: 0 10px;
        }

        #search-little {
            width: unset;
        }

        .__search_button_lg {
            display: flex;
            align-items: center;
            margin-right: 20px;
        }

        .__search_button_lg svg {
            cursor: pointer;
        }

        #navbarSupportedContent, #navbarSupportedContent > .navbar-nav {
            display: flex;
            flex-direction: row;
            flex-wrap: nowrap;
            margin-bottom: 0 !important;
        }

        .__calc_online_element_li {
            padding-left: 0;
        }
    }
}

@media (max-width: 767.98px) {
    .__header {
        .__header_top_line {
            height: 90px;
        }

        .brand_image {
            margin: 0;
        }

        .__header_contacts_dropdown {
            margin-right: 51px;
        }

        .__search_button_lg {
            margin-right: 55px;
        }

        .contact_ul_element, .call-back-element {
            display: none;
        }
    }
}

@media (max-width: 575.98px) {
    .__header {
        .__header_top_line {
            height: 65px;
        }

        .__header_top_line > .navbar {
            flex-wrap: nowrap;
        }

        .__header-1 > .navbar-brand {
            margin-left: 10px;
        }

        .__header_contacts_dropdown {
            margin-right: 22px;
        }

        .__header_contacts_dropdown > .dropdown-menu {
            right: calc(100% - 65px);
        }

        .__search_button_lg {
            margin-right: 20px;
        }
    }
}