@font-face{
    font-family: 'Manrope';
    font-weight: 800;
    src: url('../static/fonts/manrope/Manrope-ExtraBold.woff2') format('woff2');
    font-display: swap;
}
@font-face{
    font-family: 'Manrope';
    font-weight: 700;
    src: url('../static/fonts/manrope/Manrope-Bold.woff2') format('woff2');
    font-display: swap;
}
@font-face{
    font-family: 'Manrope';
    font-weight: 600;
    src: url('../static/fonts/manrope/Manrope-SemiBold.woff2') format('woff2');
    font-display: swap;
}
@font-face{
    font-family: 'Manrope';
    font-weight: 500;
    src: url('../static/fonts/manrope/Manrope-Medium.woff2') format('woff2');
    font-display: swap;
}
@font-face{
    font-family: 'Manrope';
    font-weight: 400;
    src: url('../static/fonts/manrope/Manrope-Regular.woff2') format('woff2');
    font-display: swap;
}
@font-face{
    font-family: 'Manrope';
    font-weight: 300;
    src: url('../static/fonts/manrope/Manrope-Light.woff2') format('woff2');
    font-display: swap;
}
@font-face{
    font-family: 'Manrope';
    font-weight: 200;
    src: url('../static/fonts/manrope/Manrope-ExtraLight.woff2') format('woff2');
    font-display: swap;
}
@font-face{
    font-family: 'Unbounded';
    font-weight: 700;
    src: url('../static/fonts/unbounded/Unbounded-Bold-cyrillic.woff2') format('woff2');
    unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
    font-display: swap;
}
@font-face{
    font-family: 'Unbounded';
    font-weight: 700;
    src: url('../static/fonts/unbounded/Unbounded-Bold-latin.woff2') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122;
    font-display: swap;
}
@keyframes scroll{
    0% {
        transform: translate(100px, 0);
    }

    100% {
        transform: translate(calc(-100% - 100px), 0);
    }
}
* {
    color: #152641;
    font-smoothing: antialiased;
    -webkit-font-smoothing: antialiased;
    -moz-font-smoothing: antialiased;
    box-sizing: border-box;
}
/*
*::-webkit-scrollbar {
    width: 6px;
    height: 6px;
}
*::-webkit-scrollbar-track {
    background-color: rgba(21,38,65, .05);
}
*::-webkit-scrollbar-thumb {
    background-color: rgba(21,38,65, .6);
    border-radius: 5px;
    cursor: pointer;
}
*/

html,
body {
    padding: 0;
    margin: 0;
    font-family: 'Manrope', serif;
    background-color: #ffffff;
}
/*body {background: url('tmp-home.jpg') no-repeat;}*/

p,
h1,
h2,
h3,
h4,
h5,
h6 {
    margin: 0;
}
img {
    vertical-align: top;
    max-width: 100%;
}
/* utils */

.rightsans {
    font-family: 'Unbounded', sans-serif;
    /* Unbounded заметно шире PPRightSans — длинное слово без пробелов (например, «Высокоскоростная»
       в названии товара) может не влезть в колонку и вместо переноса вылезти вбок, растягивая всю
       страницу горизонтальным скроллом. anywhere разрешает перенос внутри слова только когда оно
       само по себе не помещается — обычные переносы по пробелам это не затрагивает */
    overflow-wrap: anywhere;
}
.manrope {
    font-family: 'Manrope', serif;
}
.medium {
    font-weight: 500;
}
.bold {
    font-weight: 700;
}
.uppercase {
    text-transform: uppercase;
}
.decoration-none {
    text-decoration: none;
}
.with-border-bottom-hover > a {
    border-bottom: 1px solid transparent;
    transition: 0.6s;
}
.with-border-bottom-hover > a:hover {
    border-color: #152641;
}
.default-border-bottom {
    border-bottom: 1px solid #152641;
    transition: 0.6s;
    cursor: pointer;
}
.default-border-bottom:hover {
    border-color: transparent;
}
.text-200 {
    font-size: calc(32px + 11.7vw);
}
.text-100 {
    font-size: calc(44px + 3.9vw);
}
.text-50 {
    font-size: calc(36px + 1.0vw);
}
.text-36 {
    font-size: 36px;
}
.text-26 {
    font-size: calc(23px + 0.2vw);
}
.text-19 {
    font-size: calc(18px + 0.1vw);
}
.text-18 {
    font-size: 18px;
}
.text-16 {
    font-size: 16px;
}
.text-15 {
    font-size: calc(14px + 0.1vw);
}
.text-14 {
    font-size: calc(13px + 0.1vw);
}
.text-12 {
    font-size: 12px;
}
.bg-black {
    background-color: #152641;
}
.color-black {
    color: #152641;
}
.color-white {
    color: #FFFFFF;
}
.bg-white {
    background-color: #FFFFFF;
}
.mt-xl {
    margin-top: calc(88px + 7.8vw) !important;
}
.mt-lg {
    margin-top: calc(80px + 4.9vw) !important;
}
.mt-md {
    margin-top: calc(24px + 3.9vw) !important;
}
.mt-sm {
    margin-top: calc(12px + 1.9vw) !important;
}
.fill-width {
    width: 100% !important;
}
.d-flex {
    display: flex;
}
.align-center {
    align-items: center;
}
.justify-space-between {
    justify-content: space-between;
}
.text-center {
    text-align: center;
}
.hover-flip {
    display: block;
    overflow: hidden;
    position: relative;
}
.hover-flip.disabled::after {
    display: none;
}
.hover-flip.disabled:hover::before {
    transform: translateY(0);
}
.hover-flip::before,
.hover-flip::after {
    content: attr(data-hover-text);
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    transition: transform .6s;
    width: 100%;
}
.hover-flip::after {
    transform: translateY(120%);
}
.hover-flip:hover::before {
    transform: translateY(-120%);
}
.hover-flip:hover::after {
    transform: translateY(0);
}
.hover-flip span {
    visibility: hidden;
}
.button {
    width: 153px;
    height: 42px;
    text-align: center;
    border-radius: 21px;
    padding: 0;
    transition-duration: .3s;
    cursor: pointer;
    text-transform: uppercase;
    display: flex;
    align-items: center;
    justify-content: center;
}
.button.yellow {
    background-color: rgba(35,80,210, .7);
}
.button.yellow:hover {
    background-color: rgb(35,80,210);
}
.button.disabled {
    background-color: rgba(21,38,65, .2) !important;
    cursor: default;
}
.button.black {
    background-color: #152641;
}
.button.black-with-hover {
    background-color: rgba(21,38,65, .67);
}
.button.black-with-hover:hover {
    background-color: #152641;
}
.bordered-button {
    text-decoration: none;
    cursor: pointer;
    height: 32px;
    width: 130px;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    border: 1px solid #152641;
    transition: 300ms;
}
.bordered-button:hover {
    color: white;
    background: #152641;
}
.label-container {
    position: relative;
    width: 100%;
}
.label-container input {
    border: 1px solid rgba(21,38,65, .2);
    width: 100%;
    padding: 24px 20px 8px;
    transition: 300ms;
    outline: none;
    border-radius: 4px;
}
.label-container select {
    border: 1px solid rgba(21,38,65, .2);
    width: 100%;
    padding: 24px 19px 8px;
    transition: 300ms;
    outline: none;
    border-radius: 4px;
    background-color: white;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    position: relative;
}
.label-container__arrow {
    position: absolute;
    right: 20px;
    top: 20px;
    width: 10px;
    height: 13px;
    transition: 300ms;
}
.label-container input:focus {
    border-color: #152641;
}
.label-container label {
    color: #152641;
    transition: 300ms;
    position: absolute;
    left: 20px;
    top: 15px;
    cursor: text;
}
.label-container input:not(:placeholder-shown) {
    border-color: #152641;
}
.label-container input:focus + label,
.label-container input:not(:placeholder-shown) + label,
.label-container_select label {
    color: rgba(21,38,65, .4);
    font-size: 14px;
    top: 5px;
}
.big-category {
    width: 100%;
    position: relative;
    height: 100lvh;
    display: block;
}
.big-category__image {
    width: 100%;
}
.black-choice {
    position: relative;
    cursor: pointer;
}
.black-choice input {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
}
.black-choice__block {
    height: 32px;
    padding: 6px 15px;
    display: inline-flex;
    align-items: center;
    border-radius: 4px;
    border: 1px solid #152641;
    transition: 300ms;
    margin-right: 10px;
    margin-bottom: 10px;
}
.black-choice input:checked + .black-choice__block,
.black-choice:hover .black-choice__block {
    background: #152641
}
.black-choice__text {
    color: #152641;
    transition: 300ms;
}
.black-choice input:checked + .black-choice__block .black-choice__text,
.black-choice:hover .black-choice__text {
    color: #ffffff;
}
.products {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
    width: 100%;
    overflow: hidden;
    position: relative;
}
.product {
    display: block;
    overflow: hidden;
}
.product:hover .product__arrow-next,
.product:hover .product__arrow-prev,
.product:hover .product__pagination {
    opacity: 1;
}
.product__image {
    width: 100%;
}
.product__arrow-next,
.product__arrow-prev {
    width: 18px;
    height: 18px;
    top: calc(50% - 9px);
    margin-top: 0;
    opacity: 0;
    transition: 300ms;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: 50% 50%;
}
.product__arrow-prev {
    background-image: url('../static/images/svg/arrow_left.svg');
    
}
.product__arrow-next {
    background-image: url('../static/images/svg/arrow_right.svg');
}
.product__arrow-next::after,
.product__arrow-prev::after {
    display: none;
}
.product__pagination {
    opacity: 0;
}
.product__pagination.swiper-pagination {
    text-align: left;
    left: 20px;
    bottom: 20px;
}
.product__info {
    padding: 10px 20px 30px;
    background-color: #ffffff;
}
.blurred-block {
    display: flex;
    align-items: center;
    padding: 0 24px;
    height: 42px;
    border-radius: 36px;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}
.search .modal__inner {
    width: 100%;
    height: 100%;
    justify-content: flex-start;
}
.search__inner {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 80px;
    height: calc(100% - 122px);
}
.search__input-block {
    flex-shrink: 0;
    border-radius: 31px;
    display: flex;
    align-items: center;
    height: 52px;
    width: 100%;
    max-width: 500px;
    border: 1px solid #152641;
    padding: 0 18px;
    background: #ffffff;
}
.search__input-block:not(.active) {
    border: none;
}
.search__icon {
    width: 24px;
}
.search__input {
    flex-grow: 1;
    flex-shrink: 1;
    outline: none;
    appearance: none;
    border: none;
    height: 100%;
    margin-left: 20px;
    margin-right: 10px;
    font-family: 'Manrope', sans-serif;
}
.search__main {
    height: 100%;
    overflow-y: auto;
    padding-top: 40px;
    padding-bottom: 40px;
}
.search__main::-webkit-scrollbar {
    display: none;
}
.search__input-block:not(.active) .search__clean {
    display: none;
}
.search__submit {
    border: 0;
    margin-left: 30px;
    appearance: none;
    width: 16px;
    height: 14px;
    background: url('../static/images/svg/arrow-s_right.svg') no-repeat center;
    background-size: cover;
    cursor: pointer;
}
.search__list {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
    max-width: 1400px;
}
.modal {
    z-index: 100;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    background: rgba(21,38,65, .2);
    display: none;
    justify-content: center;
    padding: 20px;
}
.modal_right {
    justify-content: flex-end;
}
.modal_top .modal__inner {
    justify-content: flex-start;
}
.modal__inner {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: flex-end;
    position: relative;
}
.modal__close {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    flex-shrink: 0;
}
.modal__block {
    width: 100%;
    margin-top: 10px;
    border-radius: 21px;

    overflow-y: auto;
}
.dropdowns__item {
    margin-bottom: 12px;
}
.dropdowns__content {
    margin-top: 10px;
    display: none;
}
.dropdowns__item-title {
    cursor: pointer;
}
.dropdowns__arrow {
    transition: 300ms;
}
.dropdowns__item.active .dropdowns__arrow {
    transform: rotate(180deg);
}
.lightbox {
    display: none;
    position: fixed;
    z-index: 101;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}
/*
.lightbox__close {
    position: fixed;
    top: 20px;
    right: 20px;
    width: 80px;
    height: 80px;
    background: url('../static/images/svg/close_icon.svg') no-repeat center;
    background-size: cover;
    cursor: pointer;
}
*/
.lightbox__close {
    position: fixed;
    top: 30px;
    right: 30px;
    width: 42px;
    height: 42px;
    background: #fff url('../static/images/svg/close_icon.svg') no-repeat center;
    background-size: 28px;
    cursor: pointer;
    border-radius: 50%;
}
.lightbox__content {
    overflow-y: auto;
    width: 100%;
    height: 100%;
}
/*the container must be positioned relative:*/
.custom-select {
    position: relative;
}
.custom-select select {
    display: none; /*hide original SELECT element:*/
}
.select-selected {
    background-color: transparent;
    border: 1px solid #152641;
    transition: 300ms;
}
.select-arrow-active .select-selected {
    border-color: #152641;
}
.select-arrow-active .label-container__arrow {
    transform: rotate(180deg);
}
.text-type {
    margin-left: 10px;
    padding-right: 40px;
}
.text-type .select-items {
    width: 200px;
    right: 0;
    left: auto;
    top: 30px;
}
.text-type .select-selected {
    border: 0;
    border-radius: 0;
    padding: 0;
    font-size: 16px;
}
.text-type .label-container__arrow {
    top: 5px;
}
.select-selected {
    color: #152641;
    font-size: 15px;
    padding: 24px 19px 5px;
    border-radius: 4px;
    cursor: pointer;
    user-select: none;
}
.select-items {
    position: absolute;
    background-color: white;
    margin-top: 3px;
    top: 100%;
    left: 0;
    right: 0;
    z-index: 99;
    border: 1px solid #152641;
    border-radius: 4px;
    overflow-y: auto;
    max-height: 200px;
}
.select-items div {
    color: #152641;
    font-size: 15px;
    padding: 10px 19px;
    cursor: pointer;
    user-select: none;
}
.select-hide {
    display: none;
}
.select-items div:hover,
.same-as-selected {
    background-color: rgba(21,38,65, 0.05);
}
/* /Components */


/* Menu */

.menu .modal__inner {
    width: 100%;
}
.menu .modal__block {
    padding: calc(12px + 1.9vw);
    flex-grow: 1;
}
.menu__links {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: space-between;
}
.menu__links-block {
    display: flex;
    flex-direction: column;
}
.menu__group {
    margin-bottom: 50px;
}
.menu__group-title {
    margin-bottom: 10px;
    display: block;
}
.menu__group-link {
    margin-bottom: 5px;
    display: inline-block;
}
.menu__social {
    margin-top: auto;
}
.menu__social-link {
    display: inline-flex;
    align-items: center;
    margin-top: 8px;
}
.menu__social-image {
    margin-left: 8px;
}
/* /Menu */


/* Header */

.logo-block {
    position: fixed;
    top: 25px;
    left: 20px;
    mix-blend-mode: difference;
    z-index: 11;
}
.header {
    position: fixed;
    width: 100%;
    top: 20px;
    padding: 0 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    z-index: 10;
}
.header__empty-space {
    width: 200px;
}
.header__logo-link {
    width: 170px;
    position: relative;
    display: inline-block;
}
.header__logo {
    width: 100%;
}
.header__menu {
    border-radius: 36px;
    padding: 0 40px 0 30px;
    height: 42px;
    overflow: hidden;
    display: flex;
    align-items: center;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    background: rgba(240,240,240, .35);
    margin-left: 20px;
}
.header__link {
    text-transform: uppercase;
    text-decoration: none;
    margin-right: 30px;
    letter-spacing: 0.06em;
}
.header__link:last-of-type {
    margin-right: 0;
}
.header__right-block {
    display: flex;
    align-items: center;
    justify-content: center;
}
.header__helpers {
    background-color: rgba(240, 240, 240, .35);
    margin-right: 5px;
}
.header__helpers-block {
    cursor: pointer;
    position: relative;
    margin-right: 35px;
    height: 18px;
}
.header__helpers-block img {
    height: 18px;
}
.header__helpers-block:last-of-type {
    margin-right: 0;
}
.header__sandwich {
    width: 42px;
    height: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background-color: rgba(240, 240, 240, .35);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    cursor: pointer;
}
/* /Header */


/* Footer */

.footer {
    border-top: 1px solid #152641;
    padding-top: 60px;
    padding-bottom: 40px;
    overflow: hidden;
    width: 100%;
}
/* Pixeljam block end */


/* Main */

.main-slider {
    height: 100svh;
    width: 100%;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    -o-user-select: none;
    user-select: none;
}
.main-slider__slide {
    height: 100%;
    background-size: cover;
    background-position: center;
    padding: 0 20px;
}
.main-slider__slide:before {
    content: "";
    position: absolute;
    background: #15264133;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
}
.thumbs-slider {
    margin-top: -100px;
    padding-left: 20px;
}
.thumbs-slider__slide-block {
    width: calc(54px + 1.4vw);
    height: calc(54px + 1.4vw);
    position: relative;
}
.thumbs-slider__slide-block.swiper-slide-thumb-active .autoplay-progress {
    opacity: 1;
}
.autoplay-progress {
    position: absolute;
    opacity: 0;
    z-index: 9;
    width: 84px;
    height: 84px;
}
.autoplay-progress svg {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    stroke-width: 1px;
    stroke: #fff;
    fill: none;
    stroke-dasharray: 125.6;
    transform: rotate(-90deg);
}
.thumbs-slider__slide {
    height: 100%;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}
.thumbs-slider__image {
    overflow: hidden;
    border-radius: 50%;
    height: 60px;
    width: 60px;
    background-size: cover;
    background-position: center;
}
.main-category {
    width: 100%;
    position: relative;
}
.main-category .big-category {
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}
.shops__inner {
    padding: 0 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.shops__block {
    width: calc(50% - 6px);
}
.shops__image {
    border-radius: 20px;
}
.shops__name {
    margin-bottom: 16px;
    margin-top: 20px;
    display: inline-block;
}
.shops__address-block {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
}
.shops__address-text {
    margin-right: 10%;
    min-width: 40%;
}
/* /Main */

/* catalog */

.catalog {
    margin: calc(78px + 5.8vw) 0;
    padding: 0 20px;
}
.catalog__choices {
    overflow-x: auto;
    display: flex;
    margin-bottom: 20px;
}
.catalog__choice {
    margin-right: 10px;
    cursor: pointer;
    max-width: 131px;
}
.catalog__choice-image {
    border-radius: 21px;
    border: 2px solid transparent;
    transition: 300ms;
}
.catalog__choice.active .catalog__choice-image,
.catalog__choice:hover .catalog__choice-image {
    border: 2px solid #152641;
}
.catalog__choice-text {
    margin-top: 4px;
}
.filter-button {
    cursor: pointer;
    justify-content: center;
    position: sticky;
    left: calc(50vw - 85px);
    top: calc(100dvh - 80px);
    background-color: rgba(21,38,65, .67);
    width: 163px;
    z-index: 9;
    transition: 300ms;
}
.filter-button:hover {
    background-color: #152641;
}
.filter-button .dot {
    display: none;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    margin-top: -8px;
    margin-left: 3px;
}
.filter-button.active .dot {
    display: block;
}
.catalog__page-info {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.catalog__more-button {
    margin-top: 20px;
}
/* /catalog */

/* Filter */

.filter .modal__inner {
    width: 500px;
}
.filter .modal__block {
    padding: 20px;
}
.filter__title-block {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.filter__title {
    display: flex;
    align-items: center;
}
.filter__title span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    margin-left: 5px;
    font-size: 9px;
}
.filter__main-block {
    margin-top: 30px;
}
.filter__main-title-block {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
}
.filter__choices {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}
.filter__confirm-block {
    display: flex;
    justify-content: center;
    margin-top: 10px;
}
/* /Cart modal */

/* Determine size modal */

.determine-size .modal__inner {
    max-width: 977px;
    width: 100%;
}
.determine-size .modal__block {
    padding: 40px 75px 80px;
    overflow-y: auto;
}
.product-item__big-photos .product-item__photo {
    cursor: url('../static/images/svg/cursor.svg'), pointer;
}
.product-item__photo {
    width: 100%;
    margin-bottom: 10px;
}
.product-item__photo:last-of-type {
    margin-bottom: 0;
}
.product-item__sticky {
    position: sticky;
    top: 100px;
    transition: 300ms;
}
.product-item__buttons {
    display: flex;
    justify-content: center;
    z-index: 11;
}
.product-item__buttons .button {
    width: calc(50% - 5px);
    margin: 0 5px;
}
.product-item__mini {
    opacity: 0;
    transition: 300ms;
    left: 20px;
    float: left;
    bottom: 40px;
    position: sticky;
    z-index: 9;
    display: flex;
    flex-direction: column;
}
.product-item__mini a {
    margin-bottom: 5px;
    overflow: hidden;
    border-radius: 6px;
    position: relative;
    width: 49px;
    border: 2px solid transparent;
    transition: 300ms;
}
.product-item__mini a.active,
.product-item__mini a:hover {
    border-color: #152641;
}
.product-item__mini img {
    width: 45px;
}
.accessories__products {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
    margin-top: 40px;
    padding: 0 20px;
}
/* /Product page */

/* Cart page */

.cart {
    margin-top: calc(89px + 2.7vw);
    display: flex;
    justify-content: space-between;
    padding: 0 20px;
}
.cart__total {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 40px;
}
.promocode-modal .modal__inner {
    width: 500px;
}
.promocode-modal .modal__block {
    padding: 20px;
}
.lens-modal .modal__inner {
    width: 500px;
}
.lens-modal .modal__block {
    height: 100%;
    padding: 20px;
    display: flex;
    flex-direction: column;
    overflow-y: auto;
}
.lens-modal__step {
    height: 100%;
    display: none;
    flex-direction: column;
}
.lens-modal__step.active {
    display: flex;
}
.lens-modal__next-button {
    width: 225px;
}
.upload-zone_dragover {
    display: grid;
    opacity: 0;
    visibility: hidden;
    margin-bottom: 25px;
    border: 1px solid currentColor;
    color: #fff;
    font-weight: 500;
    font-size: 18px;
    place-content: center;
    text-align: center;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    position: fixed;
    background: rgba(21,38,65,.6);
    z-index: 1000;
}
.upload-zone_dragover svg {
    width: 100px;
    margin: auto;
    pointer-events: none;
}
.upload-zone_dragover._active {
    color: #c56fff;
    background: rgba(21,38,65,.8);
    opacity: 1;
    visibility: visible;
}
.form-upload__input {
    font-family: inherit;
    cursor: pointer;
    display: flex;
    align-items: center;
    position: relative;
    padding-left: 20px;
    width: 200px;
}
.form-upload__input::before {
    content: '';
    display: inline-block;
    width: 14px;
    height: 17px;
    background: url('../static/images/svg/add-file.svg') no-repeat center;
    position: absolute;
    left: 0;
    top: 2px;
}
.form-upload__input::file-selector-button {
    display: none;
}
.remove-file-btn {
    margin-left: 10px;
}
@media (max-width: 768px){
.remove-file-btn {
        margin-left: 0;
    }
}
.remove-file-btn {
    white-space: nowrap;
}
/* /Cart page */

/* About page */

.about {
    margin-top: calc(89px + 2.7vw);
    padding: 0 20px;
}
.about .main-category {
    width: calc(100% + 40px);
    margin-left: -20px;
}
.fitting__info-links {
    width: 50%;
}
/* /Wholesale page */

/* Lens page */

.lens {
    margin-top: calc(89px + 2.7vw);
    padding: 0 20px;
}
.lenses .modal__inner {
    width: 100%;
    max-width: 1170px;
}
.lenses .modal__block {
    padding: 40px 40px 20px;
    overflow-y: auto;
}
.lenses__slider {
    margin-top: 60px;
    overflow: visible;
}
.delivery__city {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
    cursor: pointer;
}
.delivery__info-block {
    display: none;
    padding-left: 120px;
}
.delivery__info-block.active {
    display: block;
}
.walk-collection-slider {
    user-select: none;
}
.walk-collection-slider > .swiper-wrapper {
    transition-timing-function : linear;
}
.walk-collection-slider .swiper-slide {
    width: auto;
}
.behind-scenes__man-button {
    display: flex;
    justify-content: center;
}
.behind-scenes__slider {
    user-select: none;
}
.behind-scenes__slider .swiper-slide {
    width: auto;
}
.behind-scenes__slider .swiper-wrapper {
    transition-timing-function : linear;
}
.scenes-man {
    height: 100%;
}
.scenes-man .modal__inner {
    max-width: 1170px;
}
.scenes-man .modal__block {
    padding: 40px 20px;
    overflow-y: auto;
}
@keyframes slide{
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-50%);
    }
}
.misha__open-popup {
    cursor: pointer;
    display: inline-block;
    position: relative;
}
.misha__open-popup > span::after {
    content: '';
    display: block;
    position: absolute;
    bottom: 0;
    width: 100%;
    transition: 200ms;
    height: 2px;
    background: #152641;
}
.misha__popup {
    display: none;
    padding: 20px;
    border-radius: 20px;
    border: 1px solid #152641;
    width: 415px;
    cursor: default;
}
.misha__popup img {
    margin-bottom: 15px;
}
@media (min-width: 768px){
.misha__open-popup:hover .misha__popup {
        display: block;
        position: absolute;
        bottom: 25px;
        right: 0;
    }
.misha__popup-close {
        display: none;
    }
.misha__open-popup:hover > span::after {
        background: none;
    }
}
@media (max-width: 767px){
.misha__popup {
        display: none;
        position: fixed;
        bottom: 20px;
        right: 20px;
        width: 75%;
        z-index: 5;
    }
.misha__popup-close {
        position: absolute;
        top: -52px;
        width: 42px;
        height: 42px;
        right: 0;
    }
.misha__open-popup > span:hover::after {
        background: none;
    }
}
/* /Misha Nikatin */



@media (max-width: 1600px) {
    .product__info {
        padding-bottom: 10px;
    }

    .search__inner {
        margin-top: 40px;
        height: calc(100% - 82px);
    }
}
@media (max-width: 1440px){
.delivery__info-block {
        padding-left: 0;
    }
}
@media (max-width: 991px){
.text-type {
        margin-left: 0;
    }
.search.modal {
        padding-bottom: 0;
    }
.search .product__info {
        padding-bottom: 15px;
    }
.search__main {
        padding-top: 20px;
        width: calc(100% + 40px);
        padding-bottom: 20px;
    }
.search__input {
        width: auto;
    }
.search__list {
        grid-template-columns: repeat(2, 1fr);
    }
.delivery__info-block {
        display: block !important;
    }
.modal_top .modal__inner {
        justify-content: flex-end;
    }
.modal__block {
        /*overflow-y: scroll;*/
    }
.menu__links {
        flex-direction: column;
        justify-content: flex-start;
    }
.menu__links-block {
        display: block;
    }
.menu__group {
        margin-bottom: 20px;
    }
.menu__group-title-block {
        display: flex;
        align-items: center;
        justify-content: space-between;
        margin-bottom: 10px;
    }
.menu__group-title {
        margin-bottom: 0;
    }
.menu__group-title_big {
        margin-bottom: 20px;
    }
.menu__group.active .menu__group-arrow {
        transform: rotate(180deg);
    }
.menu__group-arrow {
        width: 14px;
        transition: 300ms;
    }
.menu__group-links {
        display: none;
    }
.menu__group-link {
        margin-bottom: 2px;
    }
.menu__social {
        display: flex;
        flex-direction: column;
        align-items: flex-end;
        margin-bottom: 40px;
    }
.logo-block {
        top: 30px;
    }
.header__logo-link {
        width: 141px;
    }
.header__empty-space {
        width: 141px;
    }
.header__helpers-block {
        margin-right: 20px;
    }
.thumbs-slider {
        margin-top: -80px;
        margin-bottom: 10px;
        min-height: 75px;
    }
.thumbs-slider__image {
        width: 50px;
        height: 50px;
    }
.autoplay-progress {
        width: 70px;
        height: 70px;
    }
.shops__inner {
        flex-wrap: wrap;
    }
.shops__block {
        width: 100%;
        margin-bottom: 35px;
    }
.shops__address-block {
        flex-direction: column;
        align-items: flex-start;
    }
.catalog {
        padding: 0;
    }
.catalog__choice:first-of-type {
        margin-left: 20px;
    }
.catalog__choice {min-width: 110px;}
.catalog__choice-image {
        width: 110px;
        /*height: 110px;*/
    }
.catalog__choice-text {
        margin-top: 0;
    }
.product__arrow-next,
.product__arrow-prev {
        display: none;
    }
.grids__choice {
        cursor: pointer;
        display: flex;
        align-items: center;
        margin-left: 20px;
    }
.grids__choice .checked {
        display: none;
    }
.grids__choice.active .checked {
        display: block;
    }
.products {
        padding-bottom: 30px;
    }
.products.grid-one {
        grid-template-columns: 1fr;
    }
.products.grid-two {
        grid-template-columns: repeat(2, 1fr);
    }
.product__info {
        padding: 5px 10px 30px;
    }
.filter__confirm-block {
        position: sticky;
        bottom: 0;
    }
.product-item__buttons {
        position: sticky;
        bottom: 40px;
        width: 100%;
        padding: 0 20px;
        flex-wrap: wrap;
    }
.product-item__buttons .button {width: calc(50% - 10px);}
.accessories__products {
        display: flex;
        overflow-x: auto;
        width: auto;
    }
.accessories__products .product {
        min-width: 230px;
        width: 230px;
        /*flex-grow: 1;*/
    }
.determine-size .modal__block {
        padding: 20px 50px 80px;
    }
.cart {
        flex-wrap: wrap;
    }
.lens-modal__next-button {
        width: 100%;
    }
.lenses .modal__block {
        padding: 20px;
        overflow: hidden;
    }
.lenses__slider {
        margin-top: 30px;
    }
.footer {
        padding-top: 40px;
    }
}
@media (max-height: 840px){
.product-item__sticky {
        top: -30px;
    }
.product-item__sticky.opened-dropdown {
        top: -100px;
    }
}
@media (max-height: 800px) and (min-width: 991px){
.determine-size .modal__block {
        padding: 20px 40px 40px;
    }
.lenses .modal__block {
        padding: 10px 30px;
    }
.lenses__slider {
        margin-top: 20px;
    }
.search__inner {
        margin-top: 20px;
        height: calc(100% - 62px);
    }
.search__list {
        max-width: 92%;
        margin-left: 4%;
    }
.menu__group {
        margin-bottom: 30px;
    }
}
@media (max-width: 991px){
.desktop {
        display: none !important;
    }
}
@media (min-width: 992px){
.mobile {
        display: none !important;
    }
}
