:root {
    --color-primary: #E4002B;
    --color-primary-hover: #C8102E;
    --color-primary-inverse: #FFF;
    --color-black: #000;
    --color-white: #FFF;
    --color-white-20: rgba(255,255,255,0.2);
    --color-white-40: rgba(255,255,255,0.4);
    --color-white-50: rgba(255,255,255,0.5);
    --color-white-60: rgba(255,255,255,0.6);
    --color-white-70: rgba(255,255,255,0.7);
    
    --color-grey: #878787;
    --color-grey-light: #A6A6A6;
    --color-grey-bold: #555;

    --color-dark-light: #262626;
    --color-dark: #1D1D1D;

    --color-red: var(--color-primary);

    --color-overlay: rgba(16,16,16,0.5);

    --radius-sm: 4px;
    --radius: 8px;
    --radius-md: 12px;
    --radius-lg: 18px;

    --animate: 0.2s ease;

    --shadow: 0 0 20px 0 rgba(0,0,0,0.1);
    --shadow2: 0 10px 10px 0 rgba(0,0,0,0.1);
    
    --choices-bg-color: transparent;
    --choices-keyline-color: var(--color-primary);
    --choices-border-radius: var(--radius);
    --choices-bg-color-dropdown: #232323;
    --choices-highlighted-color: var(--color-primary);
    --choices-guttering: 0;
    --choices-font-size-md: 18px;
    --choices-dropdown-item-padding: 10px 20px;
    --choices-list-single-padding: 0 24px 0 0;
    --choices-bg-color-disabled: #333;
    
    --choices-primary-color: var(--color-primary);
    --choices-font-size-sm: 14px;
    --choices-multiple-item-margin: 0;
}

*,
*:before,
*:after {
    box-sizing: border-box;
    transition: background var(--animate);
}

* {
    scrollbar-width: thin;
    scrollbar-color: var(--color-primary) var(--color-dark);
}
*::-webkit-scrollbar {
    height: 14px;
    width: 14px;
}
*::-webkit-scrollbar-track {
    background: var(--color-grey);
}
*::-webkit-scrollbar-thumb {
    background-color: var(--color-primary);
    border-radius: 5px;
    border: 4px solid var(--color-dark);
}


html, body {
    min-width: 320px;
}
body {
    font-family: var(--font-primary);
    font-weight: normal;
    font-size: 16px;
    line-height: 1.5;
    color: var(--color-white);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-text-size-adjust: 100%;
    min-height: 100vh;
    background: var(--color-black);
    display: flex;
    flex-direction: column;
}
.overflow-hidden {
    overflow: hidden;
}
.hidden {
    display: none !important;
}
.invisible {
    visibility: hidden !important;
}
@media screen and (max-width: 991px) {
    .overflow-hidden_tablet {
        overflow: hidden;
    }
    .hidden_tablet {
        display: none !important;
    }
}
@media screen and (max-width: 767px) {
    .overflow-hidden_mobile {
        overflow: hidden;
    }
    .hidden_mobile {
        display: none !important;
    }
}
@media screen and (min-width: 768px) {
    .overflow-hidden_desktop {
        overflow: hidden;
    }
    .visible_mobile {
        display: none !important;
    }
}
@media screen and (min-width: 992px) {
    .visible_tablet {
        display: none !important;
    }
}

a {
    color: var(--color-primary);
    text-decoration: none;
    transition: color var(--animate), background var(--animate), border-color var(--animate), text-decoration var(--animate);
}
a:hover {
    color: var(--color-primary)
}
a:not([class]) {
    text-decoration: underline;
}
a:not([class]):hover {
    text-decoration-color: transparent;
}
img {
    display: block;
    max-width: 100%;
    height: auto;
}
button {
    cursor: pointer;
}

#header {
    position: fixed;
    top: 0;
    width: 100%;
    min-width: 320px;
    z-index: 1000;
    transition: background var(--animate);
}
#header.header_fixed {
    background: var(--color-black);
    border-bottom: 1px solid rgba(255,255,255,0.2);
}
.header-top {
    background: var(--color-black);
}
.header-top__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    height: 44px;
}
.header-callback.btn {
    margin-left: auto;
    background: var(--color-dark-light);
    height: 32px;
    padding: 0 24px;
    color: var(--color-primary-inverse);
    font-size: 14px;
}
.header-callback.btn:hover {
    background: var(--color-primary);
    border-color: var(--color-primary);
    color: var(--color-primary-inverse);
}
.header-phone {
    font-weight: 500;
    font-size: 16px;
    line-height: 1;
    color: var(--color-white);
}
.header-logo {
    flex: 0 0 auto;
    display: flex;
    flex-direction: column;
}
.header-logo__img {
    width: auto;
    height: 42px;
}
.header-main__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 54px;
}
@media screen and (max-width: 767px) {}
@media screen and (min-width: 768px) {
    .header-main__inner {
        gap: 80px;
        height: 90px;
    }
    .header-logo__img {
        height: 54px;
    }
    .header-phone {
        font-size: 18px;
    }
}
@media screen and (min-width: 992px) {
    .header-main__inner {
        gap: 24px;
    }
}
@media screen and (min-width: 1240px) {
    .header-main__inner {
        gap: 80px;
    }
}

.region-block {
    position: relative;
}
.region-block__toggle {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-weight: 400;
    font-size: 14px;
    line-height: 1.2;
    color: var(--color-grey-light);
    cursor: pointer;
}
.region-block__toggle:before,
.region-block__toggle:after {
    font-family: var(--icons);
    line-height: 1;
    font-style: normal;
    font-weight: normal;
}
.region-block__toggle:before {
    content: "\e905";
    font-size: 14px;
}
.region-block__toggle:after {
    content: "\e904";
    font-size: 9px;
    transition: transform var(--animate);
}
.region-block__toggle_active:after {
    transform: rotate(-180deg);
}
.region-block__dropdown {
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    background: var(--color-dark);
    border: 1px solid var(--color-white-20);
    padding: 20px;
    border-radius: var(--radius);
    min-width: 320px;
    z-index: 10;
}
.region-block__list {
    display: none;
    column-count: 2;
    column-gap: 15px;
}
.region-block__item {
    display: inline-block;
    width: 100%;
    font-size: 15px;
}
.region-block__link {
    color: var(--color-white-70);
}
.region-block__link_active {
    color: var(--color-primary);
}
.region-block__hint {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 12px;
}
.region-block__title {
    font-size: 16px;
    line-height: 1.4;
    font-weight: normal;
}
.region-block__btn-link {
    background: none;
    margin: 0;
    padding: 0;
    border: none;
    border-radius: 0;
    color: var(--color-primary);
    text-decoration: underline;
    text-underline-offset: 4px;
    text-decoration-style: dashed;
    font-size: 14px;
    line-height: 1.2;
    font-weight: normal;
}
@media screen and (min-width: 576px) {
    .region-block__item {
        white-space: nowrap;
    }
}

.nav-panel {
    display: flex;
    align-items: center;
    gap: 12px;
}
.nav-panel__link {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    color: var(--color-grey-light);
    width: 40px;
    height: 36px;
    position: relative;
}
.nav-panel__link:before {
    font-family: var(--icons);
    font-size: 16px;
    line-height: 1;
    font-style: normal;
    font-weight: normal;
}
.nav-panel__link_cart:before {
    content: "\e901";
}
.nav-panel__link_user:before {
    content: "\e909";
}
@media screen and (max-width: 767px) {
    .nav-panel__link {
        border: 2px solid var(--color-primary);
        border-radius: 100px;
        color: var(--color-white);
    }
}
@media screen and (min-width: 768px) {
    .nav-panel {
        gap: 24px;
    }
    .nav-panel__link {
        height: 24px;
        width: 24px;
    }
    .nav-panel__link:before {
        font-size: 21px;
    }
}

.nav-main__wrapper {
    display: none;
}
.nav-main__toggle {}
.nav-main {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
}
.nav-main__item {
    line-height: 1;
}
.nav-main__link {
    font-weight: 400;
    font-size: 16px;
    line-height: 1.18;
    color: var(--color-white);
}
@media screen and (max-width: 767px) {
    .nav-main__wrapper {
        position: fixed;
        top: 99px;
        left: 0;
        right: 0;
        bottom: 0;
        background: var(--color-black);
        padding: 24px 20px;
        flex-direction: column;
        align-items: center;
    }
}
@media screen and (min-width: 768px) {
    .nav-main__wrapper {
        flex: 1 1 auto;
        justify-content: space-between;
        padding-bottom: 8px;
        display: flex !important;
        opacity: 1 !important;
    }
    .nav-main {
        flex: 1 1 auto;
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
    }
}
@media screen and (min-width: 992px) {}
@media screen and (min-width: 1240px) {
    
}

.toggle-item {
    width: 20px;
    height: 20px;
    display: flex;
    justify-content: center;
    flex-direction: column;
    padding: 0;
    gap: 5px;
    border: none;
    background: none;
}
.toggle-item__line {
    width: 100%;
    height: 2px;
    background: var(--color-black);
    position: relative;
    border-radius: 5px;
    transition: transform var(--animate), opacity var(--animate), background-color var(--animate);
}
.toggle-item_active .toggle-item__line:first-child {
    transform: rotate(45deg);
    top: 7px;
}
.toggle-item_active .toggle-item__line:last-child {
    transform: rotate(-45deg);
    top: -7px;
}
.toggle-item_active .toggle-item__line:nth-child(2) {
    opacity: 0;
    transition: opacity 0s ease, background-color 0.3s ease;
}
.btn_empty .toggle-item__line {
    background: var(--color-primary-inverse);
}

#main {
    flex: 1 1 auto;
    position: relative;
}
#main.main_pt {
    padding-top: 120px;
}
@media screen and (min-width: 768px) {
    #main.main_pt {
        padding-top: 160px;
    }
}
@media screen and (min-width: 992px) {}

.grecaptcha-badge {
    opacity: 0;
    visibility: hidden;
}