

/* Start:/local/templates/ruskras/assets/css/custom.css?177574043953095*/
* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  font-family: "Onest", sans-serif !important;
    line-height: 1.5;
}
html{
  scroll-behavior: smooth;
}
#bx_incl_area_3
{
    display: flex;
    gap: 20px;
}
#bx_incl_area_7{
    display: flex;
    gap: 10px;
}
.workarea{
    width: 100%;
}
body {
  /* color: #222; */
  line-height: 1.5;
  font-size: 16px;
  background-color: #f4f4f4;
  height: 100%;
  height: 100vh;
  display: flex;
  flex-direction: column;
  gap: 40px;
  align-items: center;
}
tbody{
    display: flex;
    flex-direction: column;
    gap: 20px;
    align-items: center;
    width: 100%;
}
.text{
    text-decoration: none;
}
body.no-scroll {
  overflow: hidden;
}
h1{
    font-size: 30px !important;
    color: #2266CC;
    line-height: 1.5 !important;
    font-weight: bold !important;
    margin: 0;
}
h2{
    font-size: 20px !important;
    color: #2266CC;
    font-weight: bold !important;
    margin: 0;
}
h3{
    font-size: 16px !important;
    color: #003179;
    font-weight: bold !important;
    margin: 0;
}
a{
    color: #003179;
}
p{
    color: #4d4d4d;
}
.radio-group {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
section{
    max-width: 1340px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}
button{
    font-size: 16px;
}
.radio {
  position: relative;
  display: flex;
  align-items: center;
  cursor: pointer;
  font-size: 14px;
  user-select: none;
  color: #4d4d4d;
}

.radio input[type="radio"] {
  display: none; /* скрываем стандартный input */
}

/* кастомный круг */
.radio-custom {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  margin-right: 10px;
  position: relative;
  transition: background 0.2s, border 0.2s;
  background-color: #f4f4f4;

}

/* точка внутри выбранной радио-кнопки */
.radio input[type="radio"]:checked + .radio-custom::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 14px;
  height: 14px;
  background-color: #003179;
  border-radius: 50%;
}

/* эффект наведения */
.radio:hover .radio-custom {
  border-color: #2266cc;
}

.horizontal-flex{
    display: flex;
    gap: 10px;
    align-items: center;
}

.vertical-flex{
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.search-field{
    border-radius: 50px;
    background-color: #f4f4f4;
    border: none;
    width: 100%;
    max-width: inherit;
    height: 40px;
    background-image: url("/local/templates/ruskras/assets/icons/search-icon.svg");
    background-repeat: no-repeat;
    background-position: right 10px center;
    background-size: 18px;
    padding: 10px;
    font-size: 14px;
}

.search-field-cont svg{
    position: absolute;
    right: 10px;
    top: 10px;
}
.search-field:focus{
    outline: 1px solid #003179;
}
.search-field::placeholder{
    font-size: 14px;
}
form{
    flex-grow: 1;
}
.container {
  max-width: 1340px;
  width: 100%;
  flex: 1;
  padding-left: 0px;
  padding-right: 0px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 40px;
  margin-top: 70px;
}
.container br{
    display: none;
}
.ordered br{
    display: inline;
}
.container::before, .container::after{
    display: none;
}
/* HEADER */
.header {
  width: 100%;
  position: fixed;
  border-bottom: 1px solid #ddd;
  height: 70px;
  box-shadow: 0px 1px 10px 0px #cccccc;
  background-color: #fff;
  z-index: 4;
}

.header__top {
    max-width: 1340px;
    margin-left: auto;
    margin-right: auto;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}
#burger-button{
    display: none;
}
.logo-cont{
    height: 100%;
    width: 126px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    padding-top: 10px;
}
.logo-cont img{
    width: 120px;
}
img{
    vertical-align: unset !important;
}
.nav{
    position: static;
}
.nav .horizontal-flex{
    display: none;
}
.nav-links{
    display: flex;
    gap: 20px;
    width: auto;
}
.nav-links a {
    display: flex;
    align-items: center;
    height: 70px;
    color: #003179;
  text-decoration: none;
}
.contacts{
    display: flex;
    gap: 20px;
    font-size: 14px;
    text-decoration: underline;
    color: #003179;
}
.call-icon{
    display: none;
}
.cart-icon-counter{
    background-color: #0077cc;
    color: #fff;
    font-size: 12px;
    height: 24px;
    width: 24px;
    text-align: center;
    padding-top: 4px;
    border-radius: 50px;
    position: absolute;
    transform: translate(15px, 10px);
    font-weight: bold;
}
.header-numbers{
    display: flex;
    flex-direction: column;
    
}

.header-buttons a{
    height: 24px;
}
.header-buttons svg{
    cursor: pointer;
}
.feedback-call,
.feedback-mail,
.login,
.register,
.shipping-payment,
.item-image-popup,
.one-click{
    opacity: 0;
    pointer-events: none;
    transition: 0.2s ease;
}
.feedback-call.active,
.feedback-mail.active,
.login.active,
.register.active,
.shipping-payment.active,
.item-image-popup.active,
.one-click.active{
  opacity: 1;
  pointer-events: auto;
}
.popup form{
    gap: 20px;
    align-items: center;
    display: flex;
    flex-direction: column;
    font-size: 14px;
}
.call-popup{
    cursor: pointer;
    color: #003179;
}
.popup{
    width: 100%;
    max-width: 600px;
    padding: 20px;
    position: fixed;
    background-color: #fff;
    border-radius: 5px;
    position: fixed;
    z-index: 5;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    box-shadow: 0px 1px 10px 0px #cccccc;
}
.popup h2{
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
}
.popup .input{
    width: 100%;
}
#close-cross{
    cursor: pointer;
}
#overlay{
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(0,0,0,0.2);
        opacity: 0;
        visibility: hidden;
        transition: opacity 0.3s ease;
        z-index: 1; /* ниже меню */
    }
    #overlay.active{
        opacity: 1;
        visibility: visible;
    }
.popup .close-cross{
    position: absolute;
    right: 20px;
    top: 20px;
    z-index: 2;
}
.input{
    max-width: inherit;
    /* width: 100%; */
    flex-grow: 1;
    background-color: white;
    outline: 1px solid #b5b5b5;
    border-radius: 50px;
    height: 40px;
    padding: 10px;
    border: 0;
}
.input:focus{
    outline: 1px solid #003179;
}
.input::placeholder, textarea::placeholder{
    color: #b5b5b5;
}
textarea{
    max-width: inherit;
    width: 100%;
    background-color: white;
    outline: 1px solid #b5b5b5;
    min-height: 90px;
    border-radius: 18px;
    resize: none;
    padding: 10px;
    border: 0;
}
textarea:focus{
    outline: 1px solid #003179;
}
.main-button{
    border-radius: 50px;
    background-color: #2266CC;
    color: #fff;
    padding-left: 20px;
    padding-right: 20px;
    height: 40px;
    width: fit-content;
    transition: 0.3s;
    cursor: pointer;
    border: 0;
    font-weight: normal;
}
.button-inactive{
    background-color: #b5b5b5;
    cursor: unset;
    pointer-events: none;
}
.button-active:hover{
    background-color: #fff;
    color: #003179;
    outline: 1px solid #003179;
    transition: 0.3s;
}
.additional-button{
    background-color: #003179;
}
.login p{
    font-size: 14px;
}
.login .horizontal-flex, .register .horizontal-flex{
    justify-content: space-between;
    width: 100%;
}
.radios{
    justify-content: flex-start !important;
}
.login .horizontal-flex br, .register .horizontal-flex br{
    display: none;
}
.text-highlited{
    text-decoration: underline;
    color: #2266CC;
}
.tolog, .toreg{
    cursor: pointer;
}

.catalog-dropdown-cont{
    position: absolute;
    top: 70px;
    display: none;
    transition: 0.3s;
}
.catalog-dropdown-cont.visible {
    display: flex;
}
.nav-links:hover + .catalog-dropdown-cont,
.catalog-dropdown-cont:hover {
  display: flex;
}
.cd-left{
    gap: 10px;
    color: #fff;
    padding: 20px;
    justify-content: flex-start;
    background-color: #2266CC;
    height: fit-content;
    width: fit-content;
    white-space: nowrap;
}
.cd-left a,.cd-left h3{
    color: #fff;
    text-decoration: none;
}
.cd-left a{
    font-weight: 300;
}
.cd-right {
    padding: 20px;
    background-color: #fff; 
    min-width: 250px;
    gap: 10px;
}
.cd-right .horizontal-flex {
  gap: 20px;
  min-height: 0;
}
.cd-columns {
    width: fit-content;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap; 
  height: 100%;           
  gap: 0 30px;
  list-style: none;
  padding: 0;
  margin: 0;
  align-content: flex-start;
}

.cd-columns li {
  width: 160px; /* Обязательно задаем ширину колонки */
  margin-bottom: 8px;
}

.cd-columns a {
  display: block;
  text-decoration: none;
  white-space: nowrap; 
  overflow: hidden;
  text-overflow: ellipsis; 
}
/* BANNER */
.banner {
  max-height: 400px;
  height: 100%;
  align-items: center;
  overflow: hidden;
  z-index: 1;
  flex-direction: unset;
  position: relative;
}
.banner .switches{
    max-width: 1300px;
    width: 100%;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    justify-content: space-between;
    z-index: 3;
}
.slider-switch{
    height: 50px;
    width: 50px;
    padding: 0;
    display: flex;
    justify-content: center;
    align-items: center;
}
.slider-switch svg{
    margin-right: 4px;
}
.slider-switch:hover svg path{
    fill: #003179;
}
.switch-right{
    transform: rotate(180deg);
}
.banner__content {
  display: flex;
  height: 100%;
  width: calc(100% * 3);
  background-color: #0077cc;
  transition: transform 0.5s ease;
  align-items: center;
}
.banner__content img{
    height: 100%;
    width: 100%;
    flex-shrink: 0;
    object-fit: cover;
    display: block;
    pointer-events: none; /* чтобы клики проходили к кнопкам */

}
.selectors {
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  width: fit-content;
  gap: 10px;
  justify-content: space-between;
  z-index: 3;
}

.selectors button {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  border: none;
  background-color: #fff;
  cursor: pointer;
  transition: background-color 0.3s;
}

.selectors button.active {
  background-color: #b5b5b5;
}

.img-cont{
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}
.offer .horizontal-flex{
    gap: 20px;
}
.offer-img, .offer p{
    width: 50%;
}
.offer-img img{
    width: 100%;
    max-height: 200px;
    flex-shrink: 0;
    object-fit: cover;
}
.popular a, .brands a, .products a{
    text-decoration: none;
}
.center{
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
}
.products{
    display: grid;
    grid-template-columns: repeat(4, 1fr); /* всегда 4 в ряд */
    gap: 20px;
}
.product{
    background-color: #fff;
    padding: 20px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    cursor: pointer;
    transition: 0.3s ease-out;
    border-radius: 5px;
    max-width: 320px;
}
.product .blue{
    white-space: nowrap;
}
.product button{
    width: 100%;
    white-space: nowrap;
}
.product-img{
    max-width: 280px;
    width: 100%;
    aspect-ratio: 1 / 1;
}
.product-img img{
    height: 100%;
    width: 100%;
    object-fit: contain;
}
.product .tile-info{
    min-height: 53px;
}
.fz20-500{
    font-size: 20px;
    font-weight: 700;
}
.product .horizontal-flex{
    justify-content: space-between;
    width: 100%;
}
.item-specs{
    align-items: flex-start;
}
.tile-price{
    white-space: nowrap;
}
.product .vertical-flex{
    gap: 5px;
}
.product:hover{
    box-shadow: 0 0 0 2px #2266CC;
    transition: 0.3s ease;
}
.one-click{
    padding: 20px;
    background-color: #fff;
    border-radius: 5px;
}
.popular .name{
     display: -webkit-box;
    -webkit-line-clamp: 2;      /* максимум 2 строки */
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}
.product .name:hover{
    cursor: pointer;
}
.blue{
    color: #2266CC;
}
.darkblue{
    color: #003179;
}
.darkgrey{
    color: #4D4D4D;
}
.grey{
    color: #b5b5b5;
}
.center{
    align-self: center;
}
.right{
    align-self: flex-end;
}
.popular button{
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
}
.fz16-500{
    font-weight: 500;
    font-size: 16px;
}
.bold{
    font-weight: bold;
}
.brands .main-button{
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
}
/* BRANDS */
.brands-cont{
    grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
}
.brand {
    min-width: unset;
    /* max-width: 150px; */
    max-height: 180px;
    text-align: center;
    padding: 0px;
    border-radius: 5px;
    gap: 10px;
    align-items: center;
    background-color: unset;
}
.brand-img{
    /* width: 150px; */
    height: 150px;
    padding: 5px;
    background-color: #fff;
    border-radius: 5px;
    flex-shrink: 0;
}
.brand-img img{
    width: 100%;
}
.price-question{
    align-items: unset;
    flex-direction: row;
    justify-content: space-between;
    gap: 20px;
}
.price-question .cont{
    gap: 20px;
}
.price button{
    padding: 20px 30px 20px 30px;
    width: 100%;
    height: unset;
    max-width: 485px;
    max-height: 100px;
    min-width: 400px;
}
.price-question button:hover{
    background-color: #2266CC;
    outline: unset;
}
.price .vertical-flex{
    text-align: left;
    gap: 0px;
}
.price-question a{
    color: #fff;
}
.price p{
    color: #fff;
}
.question{
    max-width: 660px;
    width: 100%;
}
.question input{
    min-width: 270px;
}
.question .vertical-flex{
    gap: 10px;
}
.question-bottom{
    justify-content: space-between;
    align-items: flex-start;
}
.question button{
    margin-left: auto;
    width: fit-content;
}

.fw-700{
    font-weight: 700;
}
.footer{
    background-color: #fff;
    padding: 20px;
    margin-top: auto;
    width: 100%;
}
.footer .cont{
    max-width: 1340px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    justify-content: space-between;
    height: 213px;
}
.footer-contacts{
    flex-direction: column;
    justify-content: flex-start;
    gap: 10px;
}
.footer-left{
    max-width: 400px;
    justify-content: space-between;
    gap: 20px;
    width: 100%;
}
.footer-capt{
    margin-top: auto;
    text-align: right;
    color: #b5b5b5;
}
.footer-right{
    justify-content: space-between;
    align-items: flex-end;
    max-height: 213px;
    height: 100%;
}
.footer .cont .vertical-flex{
    gap: 10px;
}
.footer .img-cont{
    width: 213px;
}
.footer .img-cont img{
    width: 100%;
}
.footer ul{
    list-style: none;
}
.footer li{
    line-height: 2;
}
.shipping-payment{
    max-width: 885px;
    width: 100%;
}
.shipping-payment p{
    text-align: center;
}
.breadcrumbs{
    max-width: 1340px;
}
.breadcrumbs a, .breadcrumbs p{
    color: #b5b5b5;
}
.breadcrumbs a:hover{
    cursor: pointer;
    text-decoration: underline;
    color: #0077cc;
}
.cat-cont{
    display: grid;
    grid-template-columns: repeat(4, minmax(206px, 320px));
    gap: 20px;
}
.cat-cont a{
    text-decoration: none;
}
.category-card{
    height: 120px;
    background-color: #fff;
    border-radius: 5px;
    padding: 10px;
    justify-content: flex-start;
}
.category-card:hover{
    box-shadow: 0 0 0 2px #2266CC;
    transition: 0.3s ease;
}
.category-card .img-cont{
    width: 100px;
    height: 100px;
}
.category-card .img-cont img{
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.sh-buttons{
    justify-content: space-between;
}
.sect-head{
    flex-wrap: wrap;
    justify-content: space-between;
    position: relative;
    z-index: 2;
}
.filters-buttons .additional-button{
    text-decoration: none;
    flex-grow: 1;
}
.filters-button{
    display: none;
}
.dropdown {
  width: 200px;
  font-family: sans-serif;
  position: absolute;
  right: 0;
}
.dropdown__toggle {
  width: 100%;
  height: 40px;
  border-radius: 20px;
  background: #2f6edb;
  color: white;
  display: flex;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  transition: 0.2s;
  box-shadow: 0 0 0 1px #2266CC;
}

.dropdown.open .dropdown__toggle {
  background: white;
  color: #1f4ea3;
  

}
.dropdown__arrow{
    width: 20px;
    height: 10px;
    transform: rotate(-90deg);
    transition: 0.3s;
}
.dropdown.open .dropdown__arrow {
  transform: rotate(0deg);
  transition: 0.3s;
}

.dropdown__menu {
  position: absolute;
  top: 20px;
  padding-top: 15px;
  width: 100%;
  background: white;
  border: 1px solid #1f4ea3;
  border-radius: 0px 0px 10px 10px;
  overflow: hidden;
  display: none;
  z-index: -1;
  transition: 0.3s;
}

.dropdown.open .dropdown__menu {
  display: block;
  transition: 0.3s;
}

.dropdown__item {
  padding: 12px 16px;
  color: #1f4ea3;
  cursor: pointer;
  transition: 0.2s;
}

.dropdown__item:not(:last-child) {
  border-bottom: 1px solid #dcdcdc;
}

.dropdown__item:hover {
  background: #f4f7ff;
}

.dropdown__item.active {
  font-weight: 600;
}
.results{
    align-items: flex-start;
    gap: 20px;
}
.filters {
    gap: 20px;
    padding: 20px;
    background-color: #fff;
    border-radius: 5px;
    max-width: 320px;
    grid-column: 1;
    height: auto;
    overflow-y: visible;
    scrollbar-width: none;
    -ms-overflow-style: none;
}
img.inavailable{
    filter: grayscale();
}
.filters.active {
    left: 0;
    padding-bottom: 200px;
    }
.filters-head{
    display: none;
    justify-content: space-between;
}
.items-grid {
    display: grid;
    grid-template-columns: 320px 1fr; /* фильтры и контент */
    gap: 20px;
    max-width: 1340px;
}
.products-column{
    grid-column: 2;
}
.product-buttons{
    flex-wrap: wrap;
    margin-top: auto;
}
.products-grid{
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr)); /* 3 колонки */
    gap: 20px;
}
.products-grid .product{
    width: 100%;
    align-items: center;
}
.items-grid .name{
    display: -webkit-box;
    -webkit-line-clamp: 2;      /* максимум 2 строки */
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.2;
}
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.input-filter input[type="number"]{
    max-width: inherit;
    width: 100%;
    background-color: #f4f4f4;
    outline: none;
    border-radius: 50px;
    height: 30px;
    padding: 10px;
    border: 0;
}
.custom-checkbox {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  user-select: none;
}
.custom-checkbox{
    color: #003179;
}
.custom-checkbox input {
  display: none;
}

/* Основная коробка */
.checkbox-box {
  width: 20px;
  height: 20px;
  background: #f4f4f4;
  border-radius: 5px;
  position: relative;
  transition: 0.2s;
}

/* Внутренняя точка */
.checkbox-box::after {
  content: "";
  position: absolute;
  width: 13px;
  height: 13px;
  background: #003179;
  border-radius: 3px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(0);
  transition: 0.2s ease;
}
.filters button{
    width: 100%;
}
/* Состояние checked */
.custom-checkbox input:checked + .checkbox-box::after {
  transform: translate(-50%, -50%) scale(1);
}
.counter{
    display: none;
    margin-left: auto;
    margin-right: auto;
    width: fit-content;
    gap: 5px;
}
.counter button{
    border-radius: 5px;
    font-size: 20px;
    font-weight: bold;
    height: 40px;
    width: 40px;
    padding: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.counter input{
    height: 40px;
    width: 40px;
    padding: 5px;
    border-radius: 5px;
    text-align: center;
    font-size: 20px;
    outline: none;
    background-color: #f4f4f4;
}
.more{
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
    align-items: center;
}
.more .horizontal-flex button{
    width: 40px;
    height: 40px;
    padding: 5px 5px 5px 5px;
}
.more .switch-left, .more .switch-right,
.item-image-popup .switch-left,
.item-image-popup .switch-right{
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0;
}
.more svg{
    width: 10px;
    margin-right: 2px;
}
.more button:hover svg path{ 
    fill: #003179;
}
.item-info{
    background-color: #fff;
    padding: 20px;
    align-items: flex-start;
    gap: 20px;
    border-radius: 5px;
}
.item-info .img-cont:hover{
    cursor: pointer;
    transition: 0.3s;
    border-radius: 5px;
    box-shadow: 0 0 0 2px #2266CC;
}
.main{
    width: 470px;
    height: 470px;
}
.item-images .horizontal-flex .img-cont{
    width: 110px;
    height: 110px;
    flex: 0 0 auto;
}
.item-images .horizontal-flex{
    max-width: 470px;
    width: 100%;
    overflow-x: scroll;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch; /* плавный скролл на iOS */
    scroll-behavior: smooth;
    scrollbar-width: thin;   /* тонкий скроллбар в Firefox */
    scrollbar-color: #2266CC #ffffff;
    padding: 2px;
}
*::-webkit-scrollbar-button {
    display: none;
    width: 0;
    height: 0;
    background: transparent;
}

.img-cont img{
    width: 100%;
}
.info{
    align-items: flex-start;
    justify-content: flex-start;
    gap: 10px;
    min-height: 624px;
    width: 100%;
}
.is-available{
    gap: 5px;
}
.gap20{
    gap: 20px;
}
.available-indicator{
    width: 12px;
    height: 12px;
    flex-shrink: 0;
    border-radius: 50px;
}
.available{
    background-color: #2266CC;
}
.non-available{
    background-color: #4d4d4d;
}
.item-desc{
    display: -webkit-box;
    -webkit-line-clamp: 4;      /* максимум 2 строки */
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis; /* многоточие в конце */
}
.info a{
    color: #003179 !important;
}
.color-pick{
    width: 40px;
    height: 40px;
    outline: 3px solid #f4f4f4;
    border-radius: 50%;
    cursor: pointer;
    transition: 0.3s;
}
.color-pick:hover{
    outline-color: #2266CC;
    transition: 0.3s;
}
.color{
    background-color: #2b2b2b;
}
.item-buttons{
    width: 100%;
    justify-content: flex-start;
    flex-wrap: wrap;
    margin-top: auto;
}
.item-buttons .counter{
    margin: 0;
}
.fav-button{
    width: 40px;
    height: 40px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}
.fav-button:hover svg path{
    stroke: #003179;
    fill: none;
}
.fav-button p{
    display: none;
    color: #fff;
}
.fav-button.active svg path{
    fill: #fff;
}
.item-price{
    text-align: right;
    margin-left: auto;
}
.description{
    background-color: #fff;
    padding: 20px;
    border-radius: 5px;
}
.description ul{
    list-style: none;
    gap: 5px;
}
.divider{
    width: 100%;
    background-color: #f4f4f4;
    height: 1px;
}
.description li .horizontal-flex{
    gap: 10px;
}
.description span:last-child{
    display: none;
}
.desc-name{
    max-width: 300px;
    width: 100%;
}
.item-image-popup{
    max-width: 800px;
    width: 100%;
    aspect-ratio: 1 / 1;
}
.item-image-popup .img-cont{
    margin-left: auto;
    margin-right: auto;
    width: 100%;
    height: 100%;
}
.item-image-popup #close-cross{
    position: absolute;
    right: 20px;
}

.item-image-popup .horizontal-flex{
    position: absolute;
    top: 50%;
    justify-content: space-between;
    width: 90%;
    left: 50%;
    transform: translateX(-50%);
}
.item-image-popup .horizontal-flex button{
    height: 40px;
    width: 40px;
}
.cart{
    gap: 20px;
    align-items: flex-start;
    justify-content: space-between;
}
.cart-left{
    width: 100%;
}
label{
    display: unset;
    max-width: unset;
    margin: 0;
    font-weight: unset;
}
.checkbox-cont{
    padding: 10px;
    border-radius: 5px;
    background-color: #fff;
    height: 40px;
}
.cart-head{
    width: 100%;
    justify-content: space-between;
}
.cart-item{
    width: 100%;
    gap: 10px;
    background-color: #fff;
    border-radius: 5px;
    padding: 20px;
    align-items: flex-start;
}
.basket-items-list-item-container>td{
    border: 0;
}
.basket-items-list{
    padding: 0;
    position: unset;
}
.basket-items-list-wrapper{
    margin: 0;
    border: none;
}
.basket-item-price-current-text{
    white-space: nowrap;
}
.cart-sect table{
    width: 100%;
}
.cart-item .img-cont{
    width: 200px;
    height: 200px;
    flex-shrink: 0;
}
.cart-item-head{
    gap: 10px;
    justify-content: space-between;
    align-items: flex-start;
}
.cart-item-info{
    gap: 10px;
    height: 190px;
    width: 100%;
}
.cart-item-name{
    text-decoration: underline;
    font-weight: bold;
    color: #4d4d4d;
}
.basket-item-block-amount{
    margin-bottom: 0;
    padding: 0;
}
.cart-item-name:hover{
    color: #4d4d4d;
}
.cart-desc{
    align-items: flex-end;
    width: 100%;
    justify-content: space-between;
}
.cart-item-stock{
    font-size: 14px;
}
.cart-item-desc{
    font-size: 14px;
    display: -webkit-box;
    -webkit-line-clamp: 4;      /* максимум 2 строки */
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    width: 100%;
}
.cart-item-price{
    text-align: right;
    white-space: nowrap;
}
.cart-item .counter{
    margin: 0;
}
.cart-item .counter{
    display: flex;
}
.cart-item-bottom{
    margin-top: auto;
    justify-content: space-between;
}
.cart-summary{
    margin-top: 50px;
    padding: 20px;
    background-color: #fff;
    border-radius: 5px;
    max-width: 490px;
    width: 100%;
}
.cib-left{
    justify-content: space-between;
    width: 100%;
}
.cart-item p, .cart-summary p{
    margin: 0 !important;
    padding: 0 !important;
}
.cart-summary .horizontal-flex{
    justify-content: space-between;
}
.cart-summary .horizontal-flex:last-child{
    text-align: right;
}
.cart-summary .darkblue{
    font-size: 20px;
}
.cart-summary button{
    width: 100%;
    background-color: #003179;
}
.about .horizontal-flex{
    gap: 20px;
    align-items: flex-start;
}
.about .horizontal-flex div{
    width: 50%;
}
.about img{
    max-height: 380px;
    object-fit: cover;
}
.about .img-cont{
    height: 100%;
}
.about-info-even .img-cont{
    order: -1;
}
.contacts-cont{
    gap: 20px;
}
.contacts-left{
    max-width: 500px;
    width: 100%;
    gap: 20px;
}
.contact-row{
    gap: 20px;
    align-items: flex-start;
}
.contact-left{
    gap: 5px;
    width: 100%;
    max-width: 200px;
}
.contact-right{
    gap: 5px;
    width: 100%;
}
.contact-right p{
    text-align: left;
    white-space: nowrap;
}
.contact-right span{
    color: #b5b5b5;
}
.time{
    width: fit-content;
}
.time p:first-child{
    width: 60px;
}
.contacts-right{
    width: 100%;
}
.mail{
    color: #003179 !important;
}
.map{
    align-items: center;
    justify-content: center;
    width: 100%;
    max-height: 380px;
    height: 100%;
    background-color: #0077cc;
}
.map iframe{
    max-height: 380px;
}
.profile-head{
    justify-content: space-between;
    flex-grow: 1;
}
.profile-cont{
    gap: 20px;
    align-items: flex-start;
    width: 100%;
}
.profile-left{
    gap: 20px;
    max-width: 490px;
    width: 100%;
}
.profile-right{
    width: 100%;
}
.user-info, .user-cart, .user-favorites, .user-orders, .user-edit{
    padding: 20px;
    background-color: #fff;
    border-radius: 5px;
    width: 100%;
}
.user-info .horizontal-flex{
    width: 100%;
    gap: 20px;
}
.user-info a{
    margin-top: auto;
}
.user-info .horizontal-flex p:first-child{
    white-space: nowrap;
    width: 150px;
}
.user-info .horizontal-flex p:last-child{
    /* width: 150px; */
    text-overflow: ellipsis;
    overflow: hidden;
    font-size: 14px;
}
.user-sub-blocks{
    gap: 20px;
}
.user-orders{
    width: 100%;
    max-width: unset;
}
.order-head, .order-item{
    justify-content: space-between;
    width: 100%;
}
.order-item .img-cont{
    width: 50px;
    height: 50px;
    flex-shrink: 0;
}
.order-item-link{
    max-width: 550px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}
.order-item-price{
    white-space: nowrap;
}
.order-final-price{
    width: 100%;
    text-align: right;
}
.user-edit{
    max-width: 660px;
}
.user-edit .ui-link, .user-edit .ui-ctl-icon-clear{
    display: none;
}
.user-edit .addresses-block{
    display: flex;
    gap: 10px;
    flex-direction: column;
}
.user-edit .field-wrap{
    display: flex;
    flex-direction: column;
    gap: 5px;
}
.user-edit .field-wrap .field-item{
    margin: 0;
}
.user-edit .field-wrap .field-item label{
    cursor: pointer;
    display: flex !important;
    gap: 5px;
    align-items: center;
    padding-left: 0 !important;
    
}

.user-edit .field-wrap .field-item label input{
    width: 20px !important;
    height: 20px !important;
    position: static;
    border: 0;
    background-color: #f4f4f4;
    
}
.user-edit .field-wrap .field-item label input:checked{
    accent-color: #003179;
}

.user-edit .address-inputs-wrapper{
    display: flex;
    gap: 10px;
    flex-direction: column;
}
.user-edit .address-edit-wrapper{
    display: flex;
    flex-direction: column;
}
.user-edit .address-edit-wrapper input[type="button"]{
    text-decoration: underline;
    color: #003179;
    border: none;
    outline: none;
    background-color: unset;
    align-self: flex-end;
}
.address-control-mode-switch-wrapper{
    display: none;
}
.user-edit .address-inputs-wrapper input{
    max-width: inherit;
    /* width: 100%; */
    flex-grow: 1;
    background-color: white;
    outline: 1px solid #b5b5b5;
    border-radius: 50px;
    height: 40px;
    padding: 10px;
    border: 0;
}
.edit-input p{
    width: 150px;
}
.edit-input .horizontal-flex{
    width: 100%;
    max-width: 460px;
}
.edit-input a{
    white-space: nowrap;
}
.user-edit small{
    color: #4b4b4b;
    margin-left: auto;
}
.empty-search{

}
.empty-favorites{
    width: 100%;
    gap: 30px;
    align-items: center;
}
.empty-favorites .vertical-flex{
    align-items: center;
}
.favorites-left{
    max-width: 830px;
    width: 100%;
}
.fav-item-bottom{
    justify-content: flex-end;
}
.in-favorites svg{
    fill: #fff;
}
.advices-cont{
    display: block;
    column-count: 2;
    column-gap: 20px;
}
.advice{
    break-inside: avoid; /* Предотвращает разрыв блока между колонками */
    margin-bottom: 20px;
    padding: 20px;
    border-radius: 5px;
    background-color: #fff;
    max-width: 660px;
    width: 100%;
}
.advice li::marker{
    display: none;
}
.advice-head{
    justify-content: space-between;
}

/* ЕБАНЫЕ СТИЛИ ДЛЯ ЕБАНОГО AJAX */
/* .bx-soa-section.bx-active {
  display: block !important;
} */

/* .bx-soa-section {
  display: block !important;
} */
 .alert-danger{
    border-radius: 5px;
 }
#bx-soa-auth{
    display: none;
}
.payment-info .bx-soa-cart-total,
.bx-soa-more,
.bx-soa-reference,
.bx-soa-pp-desc-container,
.bx-soa-coupon,
.alert-warning,
.bx-soa-pp-delivery-cost,
.bx-soa-pp-company-selected,
.bx-soa-pp-price,
.form-check-group,
.bx-soa-custom-label,
.bx-sls,
.bx-soa-section-title-container,
.bx-soa-cart-total-ghost,
#bx-soa-orderSave,
.bx-soa-item-td-title,
[data-property-id-row="7"]
{
    display: none;
}
.bx-soa-section-content{
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 0;
}
.col-sm-12{
    margin-top: 10px;
}
.bx_soa_location .col{
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 0;
}
.bx-soa-pp-item-container .row{
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    row-gap: 5px;
}
.bx-soa-pp-company-image{
    display: none;
}
.bx-soa-pp-company-smalltitle{
    padding: 0;
    color: #4d4d4d;
    text-align: unset;
    font-size: unset;

}
.bx-soa-pp-company-graf-container{
    position: unset;
    padding: 0;
    width: unset;
    height: unset;
    /* border: 2px solid #c3cace; */
    border-radius: none;
    background: unset;
}
.bx-soa-pp-company-checkbox {
    position: relative !important;
    top: unset !important;
    left: unset !important;
    z-index: unset !important;
    display: flex;
    align-items: center;
    cursor: pointer;
    font-size: 14px;
    user-select: none;
    color: #4d4d4d;
}
.bx-soa-pp-company{
    display: flex;
    gap: 5px;
    justify-content: flex-start !important;
    flex-wrap: wrap;
    align-items: center;
    position: static;
    z-index: unset;
}

.bx-soa-customer{
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.bx-soa-customer-field label{
    display: none;
}
.bx-soa-customer-input{
    max-width: inherit;
    width: 100%;
    background-color: white;
    outline: 1px solid #b5b5b5;
    border-radius: 50px;
    height: 40px;
    padding: 10px;
    border: 0;
}

.bx-soa-customer-input input:focus{
    outline: 1px solid #003179;
}
.bx-soa-customer-input::placeholder, .bx-soa-customer-textarea::placeholder{
    color: #b5b5b5;
}
.bx-soa-cart-total.bx-soa-cart-total-fixed{
    position: static;
    top: unset;
}
.bx-soa-cart-total{
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 0;
}
.bx-soa-cart-total .bx-soa-cart-total-line:first-child .bx-soa-cart-t{
    font-weight: normal;
}
.bx-soa-cart-t{
    color: #b5b5b5;
    font-size: 16px;
    font-weight: normal;
}
.bx-soa-cart-total-line-total .bx-soa-cart-t, .bx-soa-cart-total-line-total span:last-child{
    font-size: 20px;
    font-weight: 700;
    color: #003179;
}
.bx-soa-cart-total-button-container{
    padding: 0;
}
.bx-soa-cart-total .bx-soa-cart-total-line:nth-child(2),
.bx-soa-cart-total-line,
.bx-soa-cart-total .bx-soa-cart-total-line-total{
    padding: 0;
    border: none;
}
.bx-soa-item-flex-container{
    display: flex;
    gap: 10px;
    align-items: center;
}
.user-order div{
    padding: 0;
    margin: 0;
}
#bx-soa-basket a,
#bx-soa-basket div,
#bx-soa-basket strong,
#bx-soa-basket p,
#bx-soa-basket span
{
    font-size: 16px;
}
.bx-soa-item-flex-container{
    height: 67px;
    justify-content: space-between;
    flex-grow: 1;
}
.bx-soa-item-imgcontainer{
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    width: 50px;
    height: 50px;
    flex-shrink: 0;
}
.bx-soa-item-table{
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.bx-soa-item-td{
    display: flex;
    border: none;
}
.bx-soa-item-tr{
    border: none;
}
.bx-soa-item-img{
    width: 100%;
}
.bx-soa-item-img-content-wrapper{
    display: flex;
    gap: 10px;
}
.bx-soa-item-title-link{
    color: #4D4D4D !important;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}
.bx-soa-basket-hidden {
    display: none !important;
    position: absolute !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    height: 0 !important;
    overflow: hidden !important;
}
.row .radio-custom{
    margin: 0;
}
#bx-soa-paysystem .checkbox-box,
#bx-soa-paysystem .checkbox-box::after,
#bx-soa-delivery .checkbox-box,
#bx-soa-delivery .checkbox-box::after
{
    border-radius: 50px;
}
.bx-soa-cart-total.bx-soa-cart-total-bottom{
    opacity: unset;
}
#user-delivery-addresses label{
    display: flex;
    gap: 5px;
}
/* #bx-soa-basket{
    display: none;
} */
.payment-head{
    justify-content: space-between;
}
.payment-info{
    width: 100%;
    padding: 20px;
    border-radius: 5px;
    background-color: #fff;
}
.payment-info-head{
    justify-content: space-between;
}
.payment-inputs input{
    width: 100%;
}
.payment-methods{
    flex-wrap: wrap;
}

.order-summary{
    width: 100%;
    background-color: #fff;
    padding: 20px;
    border-radius: 5px;
}
.order-summary .horizontal-flex{
    justify-content: space-between;
}
.order-summary button{
    width: 100%;
}
.payment-info{
    gap: 20px;
}
.payment-info .custom-checkbox{
    color: #4D4D4D;
}
.notification{
    position: fixed;
    right: -400px;
    bottom: 50px;
    z-index: 4;
    background-color: #fff;
    padding: 10px;
    border-radius: 5px;
    color: #b5b5b5;
    gap: 5px;
    box-shadow: 1px 2px 5px 1px #b5b5b569;
    transition: 0.3s;
}
.notification a{
    color: #0077cc;
}
.notification.active{
    right: 50px;
    transition: 0.3s;
}
.lost-page{
    align-items: center;
    text-align: center;
    padding: 10px;
}
.lost-page .img-cont{
    width: 300px;
}
.ordered{
    align-items: center;
    text-align: center;
    height: 100%;
}
.ordered-cont{
    padding: 20px;
    background-color: #fff;
    border-radius: 5px;
    max-width: 600px;
}
.ordered-cont .vertical-flex{
    align-items: center;
    gap: 5px;
}
.payment-type{
    justify-content: space-around;
}
.auth-sect{
    align-items: center;
}
.auth-page-cont{
    padding: 20px;
    background-color: #fff;
    border-radius: 5px;
    max-width: 600px;
    flex-grow: 1;
    width: 100%;
    gap: 20px;
    text-align: center;
    align-items: center;
}
.auth-page-cont input{
    width: 100%;
}
.auth-page-cont .vertical-flex{
    width: 100%;
}
.auth-page-cont .horizontal-flex{
    justify-content: space-between;
    width: 100%;
}
.auth-page-cont p{
    font-size: 14px;
}
@media (max-width: 1440px) {
    .header-contacts{
        flex-direction: column;
        background-color: #fff;
        position: absolute;
        padding: 10px;
        border-radius: 5px;
        box-shadow: 0px 1px 10px 0px #cccccc;
        visibility: hidden;
        pointer-events: none;
        z-index: 2;
    }
    .header-contacts.active {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        }
    .call-icon{
        display: block;
        width: 24px;
        height: 24px;
    }
    
}
@media (max-width: 1280px){
    .header__top, .nav{
        font-size: 14px;
    }
    .header__top{
        margin-left: 50px;
        margin-right: 50px;
    }
    .nav{
        gap: 10px;
    }
    section{
        margin-left: 50px;
        margin-right: 50px;
    }
    
    .fz20-500{
        font-size: 16px;
    }
    .items-grid{
      grid-template-columns: minmax(auto, 260px) 1fr; /* первая колонка не шире 260px */  
    }
}
@media (max-width: 1020px)
{
    body{
        gap: 20px;
    }
    .container{
        gap: 20px;
    }
    button{
        font-size: 14px;
    }
    h1{
    font-size: 20px !important;
    }
    *, p{
        font-size: 14px;
    }
    #burger-button{
        display: block;
        cursor: pointer;
    }
    .nav{
        z-index: 2;
        font-size: 16px;
        flex-direction: column;
        position: fixed;
        height: 100vh;
        padding: 0px 20px 30px 50px;
        background-color: #fff;
        width: 375px;
        top: 0;
        left: 0;
        transform: translateX(-100%);
        transition: transform 0.3s ease;
    }

    #nav.active{
        display: flex;
        transform: translateX(0);
        justify-content: space-between;
    }
    .nav-links a {
    display: unset;
    align-items: unset;
    height: unset;
    }
    .nav .horizontal-flex{
        display: flex;
    }
    .burger-head{
        justify-content: space-between;
    }
    .nav-links{
        flex-direction: column;
    }
    
    .burger-contacts{
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        gap: 20px;
        margin-top: auto;
    }
    .banner .horizontal-flex{
        display: none;
    }
    .cat-cont{
        grid-template-columns: repeat(2, minmax(206px, 100%));
    }
    .products{
        gap: 10px;
    }
    .price-question{
        flex-direction: column;
    }
    .fz16-500{
        font-size: 14px;
    }
    .sh-buttons{
    width: 100%;
    }
    .filters-button{
        display: block;
    }
    .filters{
        position: fixed;
        top: 0;
        left: -100%; /* Скрыто за экраном */
        bottom: 0;
        max-width: 280px;
        width: 80%;
        height: 100vh; /* Важно: фиксированная высота на всю высоту экрана */
        max-height: 100vh;
        overflow-y: auto;
        overflow-x: hidden;
        transition: left 0.3s ease-in-out;
        z-index: 1000;
        box-shadow: 2px 0 10px rgba(0, 0, 0, 0.1);
    }
    .catalog-dropdown-cont {
    display: none !important;
  }
    
.filters::-webkit-scrollbar {
  display: none;
  width: 0;
  height: 0;
}
    .filters-head{
        display: flex;
    }
    .filters-buttons{
        position: fixed;
        left: -100%;
        z-index: 6;
        bottom: 0px;
        width: 280px;
        background-color: #ffffff;
        padding: 20px;
        transition: 0.3s;
        box-shadow: 0px -8px 10px 0px #f4f4f4;
    }
    .filters.active .filters-buttons {
        left: 0;
        transition: 0.3s;
    }
    .items-grid {
        grid-template-columns: 1fr; /* фильтры уходят */
    }
    
    .filter-column {
        display: none; /* или можно сделать выпадающим */
    }
    
    .products-column {
        grid-column: 1;
    }
    
    .products-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr)); /* 4 колонки */
        gap: 12px;
    }
    .products-grid .product{
        padding: 10px;
    }
    .product{
        padding: 10px;
    }
    .item-info{
        flex-direction: column;
    }
    .item-images{
        max-width: unset;
        width: 100%;
        align-items: center;
    }
    .main{
        height: 300px;
        width: 300px;
    }
    .item-images .horizontal-flex{
        max-width: unset;
    }
    .cart{
        flex-direction: column;
    }
    .cart-summary{
        margin-top: 0;
        width: 100%;
        max-width: unset;
    }
    .cart-item .img-cont{
        width: 100px;
        height: 100px;
    }
    .cart-item-name{
        font-size: 14px;
    }
    .cart-desc{
        flex-direction: column;
    }
    .cart-item .cart-desc{
        flex-direction: unset;
    }
    .cart-item .remove{
        width: 100%;
    }
    .workarea{
        width: 100%;
    }
    
    .profile-cont{
        flex-direction: column;
    }
    .profile-left{
        flex-direction: row;
        max-width: unset;
    }
    .user-info, .user-sub-blocks{
        width: 50%;
    }
    .user-info button{
        margin-top: auto;
    }
    .user-cart, .user-favorites{
        
    }
    .advices-cont{
        column-count: 1;
    }
    .advice{
        max-width: unset;
    }
    .contacts-cont{
        flex-direction: column;
        align-items: flex-start;
    }
    .contacts-right{
        order: -1;
    }
}
@media (max-width:767px)
{
    .input{
        width: 100%;
        flex-grow: 0;
    }
    .container{
        margin-top: 130px;
    }
    .header{
        height: 130px;
    }
    .header__top{
        height: 70px;
        margin: unset;
        padding-left: 20px;
        padding-right: 10px;
    }
    .header-logo{
        width: 94px;
        left: 50%;
        transform: translateX(-50%);
        position: absolute;
    }
    .header-logo img{
        width: 94px;
    }
    .search-field{
        position: absolute;
        top: 80px;
        left: 10px;
        right: 10px;
        width: auto;
    }
    .popup{
        width: 90%; /* займёт всю ширину между left и right */
    }
    .popup button{
        width: 100%;
    }
    section{
        margin-left: 10px;
        margin-right: 10px;
        margin-bottom: 20px;
    }
    .breadcrumbs{
        white-space: nowrap;
        flex-wrap: wrap;
    }
    .login .horizontal-flex, .register .horizontal-flex{
        flex-direction: column;
    justify-content: center;
    }
    .login .horizontal-flex br, .register .horizontal-flex br{
        display: block;
    }
    .register .radios{
        align-items: flex-start;
        flex-direction: row;
    }
    .register p{
        text-align: center;
    }
    .offer .horizontal-flex{
        flex-direction: column;
        gap: 10px;
    }
    .offer-img, .offer p{
        width: 100%;
        max-height: unset;
    }
    .fz20-500{
        font-size: 14px;
    }
    .products{
        gap: 10px;
        grid-template-columns: repeat(2, 1fr);
    }
    .popular button{
        width: 100%;
    }
    .product{
        gap: 5px;
        padding: 10px;
    }
    .tile-bottom{
        flex-direction: column;
    }
    .tile-info{
        align-self: flex-start;
    }
    .tile-name-cont{
        height: 42px;
    }
    .product-img{
        max-height: 155px;
    }
    .fz16-500{
        font-size: 14px;
    }
    .brand{
        background-color: #fff;
        max-width: unset;
    }
    .brand-img{
        background-color: unset;
        width: 80px;
        height: 80px;
        padding: 0;
    }
    .brands .main-button{
    width: auto;
    margin-left: unset;
    margin-right: unset;
    }
    .button-inactive{
        flex-grow: 1;

    }
.price-question .cont{
    gap: 10px;
}
.price button{
    max-width: unset;
    min-width: unset;
}
.question{
    max-width: unset;
}
.question .forms{
    flex-direction: column;
    align-items: unset;
}
.question input{
    width: 100%;
    max-width: unset;
}
.question-bottom{
    flex-direction: column;
}
.question button{
    width: 100%;
    margin-left: unset;
}
.cat-cont{
    grid-template-columns: repeat(1, 2fr);
    gap: 10px;
}

.footer .cont{
    flex-direction: column;
    height: unset;
    align-items: flex-start;
}
.footer-left, .footer-right{
    flex-direction: column;
    align-items: flex-start;
    max-width: unset;
}
.footer-left .img-cont{
    margin-left: auto;
    margin-right: auto;
}
.footer-contacts{
    flex-direction: row;
}
.footer-capt{
    text-align: center;
}
.products-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr)); /* 3 колонки */
        gap: 15px;
    }
    .item-buttons{
        flex-direction: column;
    }
    .fav-button svg{
        display: none;
    }
    .fav-button{
        width: 100%;
    }
    .fav-button:hover p{
        color: #003179;
    }
    .fav-button p{
        display: block;
    }
    .item-buttons .add, .buy{
        width: 100%;
    }
    .wide{
        width: 100%;
    }
    .description li .horizontal-flex{
        flex-direction: column;
        align-items: flex-start;
        gap: 5px;
    }
    .description ul{
        gap: 5px;
    }
    .desc-char{
        width: 100%;
    }
    .profile button{
        width: 100%;
    }
    .profile-left, .user-sub-blocks, .profile-cont{
        flex-direction: column;
        gap: 12px;
    }
    .user-info, .user-sub-blocks{
        width: 100%;
    }
    .user-info .horizontal-flex{
    flex-direction: column;
    align-items: flex-start;
    gap: 5px;
    }
    .user-info .horizontal-flex p:first-child, .user-info .horizontal-flex p:last-child {
        width: unset;
    }
    .order-item-link{
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
        text-overflow: ellipsis;
    }
    .user-edit{
        padding: 10px;
    }
    .edit-input{
        flex-direction: column;
        align-items: flex-start;
    }
    .edit-input .horizontal-flex{
        flex-direction: column;
        align-items: flex-start;
    }
    .edit-input{
        gap: 5px;
    }
    .right{
        align-self: unset;
    }
    .submit-buttons{
        flex-direction: column;
    }
    .edit-input p{
        width: unset;
    }
    .exit-profile{
        width: 100%;
    }
    .fav-item-bottom{
        flex-direction: column;
        
    }
    .fav-item-bottom button{
        width: 100%;
    }
    .advice button{
        width: 100%;
    }
    .advice-head{
        flex-wrap: wrap;
        align-items: flex-start;
    }
    .show-more{
        width: 100%;
    }
    .payment-info{
        gap: 10px;
        padding: 10px;
    }
    .payment-head, .payment-info-head, .payment-inputs{
        flex-direction: column;
        align-items: flex-start;
    }
    .payment-info .radios{
        flex-direction: column;
        align-items: flex-start;
    }
    .cart-head .main-button{
        width: unset;
        flex-grow: 1;
    }
    .cart-item
    {
        flex-direction: column;
        align-items: center;
    }
    .cart-item-info{
        height: unset;
    }
    .cart-item-bottom{
        flex-direction: column;
    }
    .about .horizontal-flex{
        flex-direction: column;
    }
    .about .horizontal-flex div{
        width: unset;
    }
    .about .horizontal-flex .img-cont{
        width: 100%;
    }
    .about-info-even .img-cont{
        order: unset;
    }
    
    .contacts-left{
        width: 100%;
        max-width: unset;
    }
    .contact-left{
        max-width: unset;
    }
    .contact-row{
        flex-direction: column;
        gap: 10px;
    }
    .empty-favorites{
        padding: 10px;
    }
    .empty-favorites .vertical-flex{
        width: 100%;
    }
    .empty-favorites a, .empty-favorites button{
        width: 100%;
    }
    .bx-soa-pp-item-container .row{
        flex-direction: column;
        row-gap: unset;
        gap: 10px;
    }
    .bx-soa-item-td-title{
        display: none !important;
    }
    .bx-soa-item-flex-container{
        height: unset;
    }
    .ordered-cont{
        padding: 10px;
    }
    .payment-type .horizontal-flex{
        flex-direction: column;
        gap: 0px;
    }
    .auth-page-cont{
        padding: 10px;
    }
    .auth-page-cont button{
    width: 100%;
    flex-grow: 1;
}
.auth-page-cont .horizontal-flex{
    flex-direction: column;
}
.auth-page-cont .radios{
    flex-direction: row;
}
}
@media (min-width: 580px) {
    .bx-soa-item-img-block {
        width: unset;
    }
}
@media screen and (max-width: 480px) {
    .products-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)); /* 2 колонки */
        gap: 10px;
    }
}

/* Для очень маленьких экранов */
@media screen and (max-width: 320px) {
    .products-grid {
        grid-template-columns: 1fr; /* 1 колонка */
    }
}
/* End */


/* Start:/local/templates/ruskras/template_styles.min.css?17701155288037*/
.bx-yellow,.bx-theme-yellow{--primary:#f9a91d;--theme-color-primary:#f9a91d;--theme-color-second:#faba4a;--theme-color-light:#fff;--theme-b-link:#f9a91d;--theme-b-link-hover:#faba4a;--theme-b-tx-primary:#fff;--theme-b-bg-primary:#f9a91d;--theme-b-bd-primary:#f9a91d;--theme-b-sd-primary:rgba(249,169,29,0.5);--theme-b-tx-primary-hover:#fff;--theme-b-bg-primary-hover:#faba4a;--theme-b-bd-primary-hover:#daa53e;--theme-b-tx-primary-active:#fff;--theme-b-bg-primary-active:#faba4a;--theme-b-bd-primary-active:#daa53e;--theme-b-tx-primary-disabled:#fff;--theme-b-bg-primary-disabled:#daa53e;--theme-b-bd-primary-disabled:#b7853b}.bx-blue,.bx-theme-blue{--primary:#0083d1;--theme-color-primary:#0083d1;--theme-color-second:#5ca6e4;--theme-color-light:#f0f6f8;--theme-b-link:#44b1c9;--theme-b-link-hover:#5cc3d1;--theme-b-tx-primary:#fff;--theme-b-bg-primary:#0083d1;--theme-b-bd-primary:#0083d1;--theme-b-sd-primary:rgba(0,131,209,0.5);--theme-b-tx-primary-hover:#fff;--theme-b-bg-primary-hover:#5ca6e4;--theme-b-bd-primary-hover:#5599d2;--theme-b-tx-primary-active:#fff;--theme-b-bg-primary-active:#5ca6e4;--theme-b-bd-primary-active:#5599d2;--theme-b-tx-primary-disabled:#fff;--theme-b-bg-primary-disabled:#5599d2;--theme-b-bd-primary-disabled:#4d8bbf}.bx-red,.bx-theme-red{--primary:#e22b2b;--theme-color-primary:#e22b2b;--theme-color-second:#e95c5c;--theme-color-light:#f0f0f0;--theme-b-link:#e22b2b;--theme-b-link-hover:#e95c5c;--theme-b-tx-primary:#fff;--theme-b-bg-primary:#e22b2b;--theme-b-bd-primary:#e22b2b;--theme-b-sd-primary:rgba(226,43,43,0.5);--theme-b-tx-primary-hover:#fff;--theme-b-bg-primary-hover:#e95c5c;--theme-b-bd-primary-hover:#d05454;--theme-b-tx-primary-active:#fff;--theme-b-bg-primary-active:#e95c5c;--theme-b-bd-primary-active:#d05454;--theme-b-tx-primary-disabled:#fff;--theme-b-bg-primary-disabled:#d05454;--theme-b-bd-primary-disabled:#c04e4e}.bx-green,.bx-theme-green{--primary:#63aa28;--theme-color-primary:#63aa28;--theme-color-second:#5b9f0b;--theme-color-light:#a8d95b;--theme-b-link:#44b1c9;--theme-b-link-hover:#5cc3d1;--theme-b-tx-primary:#fff;--theme-b-bg-primary:#63aa28;--theme-b-bd-primary:#63aa28;--theme-b-sd-primary:rgba(99,170,40,0.5);--theme-b-tx-primary-hover:#fff;--theme-b-bg-primary-hover:#5b9f0b;--theme-b-bd-primary-hover:#56940b;--theme-b-tx-primary-active:#fff;--theme-b-bg-primary-active:#5b9f0b;--theme-b-bd-primary-active:#56940b;--theme-b-tx-primary-disabled:#fff;--theme-b-bg-primary-disabled:#56940b;--theme-b-bd-primary-disabled:#497c09}body{background-attachment:fixed;background-size:cover;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}#pagetitle{margin-bottom:35px}h1,h2,h3,h4,h5{font-family:var(--ui-font-family-secondary,var(--ui-font-family-open-sans));font-weight:var(--ui-font-weight-regular,400)}.bx-content-section,.bx-header-section{padding-bottom:2px;background-color:rgba(255,255,255,.95)}.bx-header-logo{order:1}.bx-header-personal{order:3}.bx-header-contact{order:2}.bx-logo-block{display:block;height:50px;border-bottom:0}.bx-logo-block img{max-height:50px;width:auto}@media(max-width:767px){.bx-logo-block img{max-width:100%;max-height:45px;width:auto;height:auto}.bx-header-logo{padding:5px 50px;height:55px;background-color:var(--theme-color-primary)}.bx-logo-block{height:auto}body.bx-theme-green .bx-store-logo{background:#33b111}}.bx-header-phone-block{display:flex;align-items:center}.bx-header-phone-number{color:#000;white-space:nowrap;font:21px/28px var(--ui-font-family-secondary,var(--ui-font-family-open-sans));font-weight:var(--ui-font-weight-semi-bold,600);transition:250ms linear all}.bx-header-phone-icon{display:block;margin-right:10px;width:26px;height:26px;	background: no-repeat center url(/local/templates/ruskras/images/phone.svg);}@media(max-width:991px){.bx-header-phone-number{font:15px/18px var(--ui-font-family-secondary,var(--ui-font-family-open-sans));font-weight:var(--ui-font-weight-semi-bold,600)}}.bx-header-worktime{color:#000;font:16px/22px var(--ui-font-family-secondary,var(--ui-font-family-open-sans));font-weight:var(--ui-font-weight-semi-bold,600);transition:250ms linear all}.bx-worktime-title{color:#adadad;font:12px var(--ui-font-family-secondary,var(--ui-font-family-open-sans));font-weight:var(--ui-font-weight-regular,400)}.bx-worktime-schedule{color:#000;font:12px var(--ui-font-family-secondary,var(--ui-font-family-open-sans));font-weight:var(--ui-font-weight-regular,400)}@media(max-width:991px){.bx-header-worktime{font:15px/18px var(--ui-font-family-secondary,var(--ui-font-family-open-sans));font-weight:var(--ui-font-weight-regular,400)}}.sidebar-block-title{color:#343434;text-transform:uppercase;font-size:14px;font-family:var(--ui-font-family-secondary,var(--ui-font-family-open-sans));font-weight:var(--ui-font-weight-semi-bold,600)}.bx-footer-bg{background-color:#1f496a}.bx-footer-logo{border-bottom:none !important;text-decoration:none !important}.bx-footer-logo img{max-width:100%;height:auto}.bx-inclinkspersonal-item.bx-theme-blue:hover{background:#0083d1}.bx-theme-blue.bx-inclinkspersonal-selected{background:#3398d7}.bx-inclinkspersonal-item.bx-theme-black:hover{background:#303030}.bx-theme-black.bx-inclinkspersonal-selected{background:#484848}.bx-inclinkspersonal-item.bx-theme-green:hover{background:#44b1c9}.bx-theme-green.bx-inclinkspersonal-selected{background:#5cc3d1}.bx-inclinkspersonal-item.bx-theme-red:hover{background:#e63c3c}.bx-theme-red.bx-inclinkspersonal-selected{background:#e95c5c}.bx-inclinkspersonal-item.bx-theme-yellow:hover{background:#f4a52e}.bx-theme-yellow.bx-inclinkspersonal-selected{background:#fbb859}.btn-primary,.list-group-item.active{border-color:var(--theme-b-bd-primary);background-color:var(--theme-b-bg-primary);color:var(--theme-b-tx-primary)}.btn-primary:hover{border-color:var(--theme-b-bd-primary-hover);background-color:var(--theme-b-bg-primary-hover);color:var(--theme-b-tx-primary-hover)}.btn-primary:focus,.btn-primary.focus{box-shadow:0 0 0 .2rem var(--theme-b-sd-primary)}.btn-primary.disabled,.btn-primary:disabled{border-color:var(--theme-b-bg-primary);background-color:var(--theme-b-bg-primary);color:var(--theme-b-tx-primary)}.btn-primary:not(:disabled):not(.disabled):active,.btn-primary:not(:disabled):not(.disabled).active,.show>.btn-primary.dropdown-toggle{border-color:var(--theme-b-bd-primary-active);background-color:var(--theme-b-bg-primary-active);color:var(--theme-b-tx-primary-active)}.btn-primary:not(:disabled):not(.disabled):active:focus,.btn-primary:not(:disabled):not(.disabled).active:focus,.show>.btn-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem var(--theme-b-sd-primary)}.form-control:focus{border-color:var(--theme-color-primary);box-shadow:0 0 0 .2rem var(--theme-b-sd-primary)}a,.btn-link{color:var(--theme-b-link)}a:hover,.btn-link:hover{color:var(--theme-b-link-hover)}.g-font-size-15{font-size:15px}.g-font-size-17{font-size:17px}.g-font-size-20{font-size:20px}.text-primary{color:var(--primary) !important}.bg-primary{background:var(--primary) !important}.border-primary{border-color:var(--primary) !important}.sidebar h2,.sidebar h3,.sidebar h4,.sidebar h5{text-transform:uppercase;font-size:14px;font-family:var(--ui-font-family-secondary,var(--ui-font-family-open-sans));font-weight:var(--ui-font-weight-semi-bold,600)}.sidebar li{font-size:12px;font-family:var(--ui-font-family-secondary,var(--ui-font-family-open-sans));font-weight:var(--ui-font-weight-semi-bold,600)}.sidebar-icon{width:27px;height:27px;margin-right:5px;border-radius:50%;background-color:var(--theme-color-primary);background-repeat:no-repeat;background-position:center;}

.sidebar-icon-label {
	background-image:  url(/local/templates/ruskras/images/label.svg); background-size:19px auto;}

.sidebar-icon-delivery {
	background-image: url(/local/templates/ruskras/images/delivery.svg); background-size:17px auto;}

.sidebar-icon-sale {
	background-image: url(/local/templates/ruskras/images/sale.svg); background-size:auto 17px;}

.sidebar-icon-self {
	background-image: url(/local/templates/ruskras/images/self.svg); background-size:auto 17px;}

.sidebar-icon-phone {
	background-image: url(/local/templates/ruskras/images/phone_white.svg); background-size:auto 21px}
/* End */
/* /local/templates/ruskras/assets/css/custom.css?177574043953095 */
/* /local/templates/ruskras/template_styles.min.css?17701155288037 */
