
@media(max-width:980px){ .main-nav{display:none} .btn--burger{display:block} .search__input{min-width:120px} }
@media(max-width:560px){ .contacts{display:none} .brand__logo{width:120px} .site-header__wrap{height:72px} }

/* small screens stack */
@media(max-width:900px){ .hero-slider__slide{grid-template-columns:1fr} .hero-slider__image{height:200px} }

@media(max-width:1100px){ .catalog-grid{grid-template-columns:repeat(3,1fr)} 
.production-spiral_text h2 {
    font-size: 24px;
    padding-bottom: 24px;
}.production-spiral_text ul li { 
    font-size: 16px; 
}
}
@media(max-width:760px){ .catalog-grid{grid-template-columns:repeat(2,1fr)} }
@media(max-width:420px){ .catalog-grid{grid-template-columns:1fr} }

@media(max-width:900px){ .brands__row{grid-template-columns:1fr} .brand-block__media{min-height:140px} }

@media(max-width:900px){ .supplier-row{grid-template-columns:1fr} }

@media(max-width:980px){ .feature{width:calc(50% - 12px)} }
@media(max-width:560px){ .feature{width:100%} }

@media(max-width:1000px){ .news-grid{grid-template-columns:repeat(2,1fr)} }
@media(max-width:560px){ .news-grid{grid-template-columns:1fr} }

/* JS will replace card with iframe on click */
@media(max-width:900px){ .video-grid{grid-template-columns:1fr} }
@media(min-width:1240px){ 
.videogalery-wrap .slick-slide img {
    height: 355px;
    border-radius: 8px;
}.brands.gr-2 .brand-item.gr-2 {
    grid-template-columns: 65% 35%;
}.partners-item {
    grid-template-columns: 65% 35%;
}.partners-item_text a.btn.btn-red {
    position: absolute;
    bottom: 20px;
    left: 20px;
}
}
@media(max-width:1440px){ 
.slider-top .bg-topslider {
        height: 490px;
    }.slider-top img {
    position: absolute;
    top: auto;
    right: 0;
    width: 65%;
    bottom: 0;
}.page .top-img-box h1 {
    font-size: 20px; 
}.top-img-box p.rf {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 28px;
}.foto-card-item {
    height: 170px; 
}
}
@media(min-width:960px) {
header.header {
    position: fixed;
    z-index: 12;
    width: 100%;
    background: #fff;
    padding-bottom: 13px;
}body.home.scrolled header.header {
    box-shadow: 0px 0px 13px #000;
}.scroll-line {
        padding-top: 180px;
    }
 }
@media(min-width:960px) and (max-width:1190px){
    .slider-top img {
        position: absolute;
        top: auto;
        right: 0;
        width: 80%;
        bottom: 0;
    }.top-contacts.fb.fc, .nav_input {
        max-width: 48%;
        width: 100%;
    }.top-contacts-box {
    width: 55%;
}    ul.top-menu.fb {
        width: 56%;
    }nav.fb.fc {
    max-width: 390px;
    width: 100%;
}.search {
    width: 100%;
    max-width: 220px;
    min-width: 170px;
}.btn {
    line-height: 24px;
    font-size: 16px; 
}input#search-input {
    width: 95%;
}.limit { 
    padding: 0 15px; 
}span.slider-top_title { 
    font-size: 26px; 
}.slider-top-content p {
    font-size: 18px; 
}.slider-top-content.s5 p {
    color: #fff;
    font-size: 14px;
}.slider-top-content.s5 span.slider-top_title {
    font-size: 26px;
    text-transform: none;
    color: #fff;
}.slider-top-content.s6 p {
    font-size: 14px; 
}.slider-top-content.s7 p {
    font-size: 14px;
}.slider-top-content.s7 span.slider-top_title {
    font-size: 22px;
    text-transform: none;
}.partners-item_text p {
    font-size: 14px;
    margin: 22px 0;
}.partners-iten_text-logo img {
    width: 140px;
}.videogalery-wrap .slick-slide img {
    height: 270px;
    border-radius: 8px;
}.maps-contacts span {
    display: block;
    padding: 0 0 14px 40px;
    font-size: 16px;
    font-weight: 500;
    color: var(--gray-1);
}.maps-contacts p {
    color: var(--gray-1); 
    font-size: 14px; 
}.maps-contacts-box a {
    font-size: 16px;
    display: block;
    padding: 0 0 16px 45px;
    color: var(--gray-1);
}.flogo {
    width: 25%;
}.fcontent {
    color: var(--gray-1);
    width: 75%;
}
}
@media(max-width:959px) {
img.dbs {
    display: none;
} .r_foto_card_wrap { 
    grid-template-columns: repeat(2, 1fr); 
}.production-spiral { 
    grid-template-columns: repeat(1, 100%);
    gap: 0;
    margin-bottom: 80px; 
}.production-spiral_text { 
    border-radius: 8px;
    padding: 25px 10px;
}.production-spiral_text h2 {
    font-size: 18px;
    padding-bottom: 20px;
}.production-spiral_text ul li {
    font-weight: 400;
    font-size: 14px; 
}.advantage-spiral { 
    grid-template-columns: repeat(1, 1fr); 
}.advantage-spiral_item-text p { 
    font-size: 14px;
}.shipment-spiral { 
    grid-template-columns: repeat(1, 1fr);
    gap: 0; 
}.shipment-spiral_text { 
    border-radius: 8px;
    padding: 24px 15px;
}.shipment-spiral_text p {
    font-size: 14px;
}.options-spiral-wrap h2 {
    font-size: 22px;
    text-transform: uppercase;
    padding-bottom: 35px;
}.options-spiral { 
    flex-wrap: wrap;
}.options-spiral_column:first-child {
    width: 100%;
}.options-spiral_column:last-child {
    width: 100%;
    margin-top: 30px;
}.options-spiral_column li {
    font-size: 14px;
    margin: 0 0 18px 28px;
}.options-spiral_column p {
    font-size: 14px;
    margin-bottom: 18px;
    font-weight: 300;
    line-height: 125%;
}.table-spiral_view { 
    align-items: center;
}.table-spiral_view-color {
    margin-top: 40px;
}.wrap-table-spiral_option {
    overflow: scroll;
    border-radius: 10px 10px 0 0;
}.formbox-spiral { 
    grid-template-columns: repeat(1, 100%);
    gap: 18px;
    padding: 25px 15px;  
}.formbox-spiral:before { 
    background-position: right bottom;
}.formbox-spiral_form span.form-sub-title {
    font-size: 14px; 
}.formbox-spiral input {
    width: 100%; 
}.formbox-spiral_form {
    margin-bottom: 40px;
}.formbox-spiral_contacts h3 {
    color: var(--red);
    font-size: 20px;
}.formbox-spiral_contacts span {
    margin-bottom: 18px;
    padding-left: 39px;
}
.formbox-spiral_contacts span, .formbox-spiral_contacts span a {
    color: #2F2F2F;
    font-size: 15px;
    display: block;
    font-weight: 600;
}.formbox-spiral_contacts span.formbox-spiral_contacts-phone:after, .formbox-spiral_contacts span.formbox-spiral_contacts-adress:after { 
    width: 25px;
    height: 25px;
}.formbox-spiral_contacts span.formbox-spiral_contacts-phone:after, .formbox-spiral_contacts span.formbox-spiral_contacts-adress:after { 
    background-size: 100%;
}

.bg-topslider, .options-spiral:before, .formbox-spiral:after {display:none}.slider-top .slick-slide a.wrap-sl img.mbs {
    position: relative;
}.video-card-wrap { 
    grid-template-columns: repeat(2, 1fr); 
}.news-cat-wrap { 
    grid-template-columns: repeat(1, 1fr); 
}.rd-sert { 
    grid-template-columns: repeat(2, 1fr); 
}
.logo a {background-image: url(/assets/redis/img/main/flogo.png);} 
.top-contacts-box:first-child, .top-contacts-box span, .top-contacts.fb.fc a.mail, .top-contacts.fb.fc a:before, .hgroup.limit.fb.fc:after{
    display: none;
}.limit {
    max-width: 1200px; 
    padding: 0 10px; 
    min-width: 320px;
}.logo {
    width: 100%;
    max-width: 69px;
    height: 28px;
}.top-contacts-box:last-child {
    max-width: max-content;
}
.top-contacts-box {
    width: 100%;
}    .logo a {
        display: block;
        background-size: 100%;
        height: 33px;
        width: 100%;
        margin-top: -3px;
    }nav.fb.fc {
    display: none;
}.nav_input.fb a.btn.btn-red.open-modal {
    display: none;
}.mmenu.press {
    display: block;
    background: #b91410;
    width: 40px;
    height: 40px;
    position: absolute;
    top: 66px;
    left: 11px;
    border-radius: 8px;z-index: 2;
}.top-contacts.fb.fc, .nav_input {
    max-width: 100%;
    width: 100%;
    justify-content: flex-end;
}.mmenu.press:after {
    content: "";
    width: 24px;
    position: absolute;
    top: 12px;
    left: 8px;
    height: 3px;
    background: #fff;
}.mmenu.press:before {
    content: "";
    width: 24px;
    position: absolute;
    bottom: 12px;
    left: 8px;
    height: 3px;
    background: #fff;
}.mmenu.press span {
    width: 24px;
    position: absolute;
    height: 3px;
    background: #fff;
    top: 18px;
    left: 8px;
}input#search-input { 
    width: 100%;
}.search button { 
    right: 0px; 
}.top-contacts.fb.fc a { 
    font-size: 18px;
} span.slider-top_title {
    display: block;
    color: #fff;
    font-size: 24px;
    font-weight: 600;
    line-height: 130%;
    text-transform: none;
    padding-bottom: 10px;
}.slider-top-content {
    position: relative;
    top: auto;
    z-index: 2;
    left: initial;
    width: 100%;
}.slider-top .slick-slide img { 
    display: none;
}span.slider-top_title {
    display: block;
    color: #000; 
}.slider-top-content {
    position: relative;
    top: auto;
    z-index: 2;
    left: initial;
    width: 100%;
    margin: 40px 0;
}.slider-top-content p {
    font-size: 16px;
    font-weight: 400;
    line-height: 130%;
    padding-bottom: 20px;
    max-width: 80%;
}.slider-top-content.s3 p {
    color: #000;
}.slider-top-content.s4 {
    width: 100%;
}.slider-top-content.s5 {
    width: 100%;
}.slider-top-content.s5 span.slider-top_title {
    font-size: 28px;
    text-transform: none;
    color: #000;
}.slider-top-content.s5 p {
    color: #000;
    font-size: 14px;
}.slider-top-content.s6 {
    width: 100%;
}.slider-top-content.s6 p {
    font-size: 14px;
    font-weight: 400;
    line-height: 130%;
    padding-bottom: 20px;
}.slider-controls {
        position: absolute;
        bottom: 17px;
        right: inherit;
        left: 40px;
    }div#modal0 ul li a {
    font-size: 16px;
    line-height: 30px;
    margin-bottom: 14px;
    display: block;
}
div#modal0 ul {
    background: #fff;
    padding: 30px 30px;
    box-shadow: 0px 4px 10px #000;
    border-radius: 0px 0px 8px 8px;
}
    div#modal0 {
        position: absolute;
        width: 100%;
        height: auto;
        background: none;
        top: 119px;
        left: 0;
        padding: 0px 0px;
    }h2 {
    font-size: 20px;
    font-weight: 500;
    line-height: 120%;
}a.btn.btn-red.catalog-link.open-modal.drop-open {
    cursor: pointer;
}h2.title-box:after {
    content: "";
    position: absolute;
    top: 1px;
    right: -30px;
    height: 20px;
    width: 20px;
    background-size: contain;
}.catalog-home_item {
    width: 49%; 
    background-size: 140%;
    margin-bottom: 20px;
    padding: 0 0 50px 0;
}.catalog-home_item span {
    position: absolute;
    text-align: center;
    background: #fff;
    display: flex
;
    bottom: 0;
    left: 50%;
    height: 53px;
    z-index: 2;
    line-height: 15px;
    width: 100%;
    font-size: 14px;
    font-weight: 400;
    border-radius: 0 0 8px 8px;
    align-content: center;
    justify-content: center;
    align-items: center;
    padding: 0 18px;
    transition: background-color 0.5s ease;
    transition: 0.5s ease;
    transform: translate(-50%, 0%);
}.brand-item, .partners-item { 
    grid-template-columns: 100%; 
}.gr-2 {
    display: grid
;
    grid-template-columns: 100%;
    gap: 20px;
}.partners-item_text {
    padding: 24px 10px 25px 24px;
}.ecosystem {
    padding: 10px 0 10px;
    transition: background-color 0.5s ease;
    transition: 0.5s ease;
    flex-wrap: wrap;
}.ecosystem .ecosystem-item {
    width: 100%; 
}.ecosystem .ecosystem-item {
    width: 100%;
    display: flex
;
    align-content: center;
    align-items: center;
    justify-content: flex-start;
    height: 85px;
}.ecosystem-item:after {
    content: "";
    width: 100%;
    height: 26px;
    clip-path: polygon(7% 0, 100% 0, 100% 100%, 0% 100%);
    top: -25px;
    left: 0px;
}.videogalery-wrap .slick-slide img {
    height: auto;
    border-radius: 8px;
}.fgroup.limit.fb {
    align-items: center;
    flex-wrap: wrap;
}.wrapper {
    width: 100%;
    margin: 0 auto;
    overflow: hidden;
    min-width: 320px;
}.flogo {
    width: 100%;
}.fcontent {
    color: var(--gray-1);
    width: 100%;
}.flogo {
    width: 100%;
    margin-bottom: 30px;
}.fcontent-contacts.fb { 
    flex-wrap: wrap;
}.fcontent-contacts_mail {
    width: 100%;
    padding: 0 0 0 40px;
}.fcontent-contacts_phone {
    padding: 0 0 0 40px;
    width: 100%;
}.fcontent-contacts_mail {
    width: 100%;
    padding: 0 0 10px 40px;
}.fcontent-contacts_phone a {
    margin-bottom: 15px;
}.ecosystem:hover .ecosystem-item.e1 {
    transform: translate(0, 0);
}
.ecosystem:hover .ecosystem-item.e6 {
    transform: translate(0, 0);
}

/* e2 – вверх и вправо */
.ecosystem:hover .ecosystem-item.e2 {
    transform: translate(0, 0);
}

/* e3 – вниз и влево */
.ecosystem:hover .ecosystem-item.e3 {
    transform: translate(0, 0);
}

/* e4 – вверх и вправо */
.ecosystem:hover .ecosystem-item.e4 {
    transform: translate(0, 0);
}

/* e5 – вниз и влево */
.ecosystem:hover .ecosystem-item.e5 {
    transform: translate(0, 0);
}.ecosystem:hover a.btn.btn-red, .ecosystem a.btn.btn-red  {display: none;}
.ecosystem:hover span {color: #fff;}
.ecosystem:hover .ecosystem-item {
    background-color: rgba(64, 64, 64, 1);
}.ecosystem:hover .ecosystem-item:after {background-color: rgba(64, 64, 64, 1);}
.ecosystem.fb::after {
    display: none;
}.ecosystem:hover .ecosystem-item.e1 i {background-image: url(/assets/redis/img/main/e1.png);}
@supports (background-image: url('/assets/redis/img/main/e1.webp')) {.ecosystem:hover .ecosystem-item.e1 i {background-image: url('/assets/redis/img/main/e1.webp');}}
.ecosystem:hover .ecosystem-item.e2 i {background-image: url(/assets/redis/img/main/e2.png);}
@supports (background-image: url('/assets/redis/img/main/e2.webp')) {.ecosystem:hover .ecosystem-item.e2 i {background-image: url('/assets/redis/img/main/e2.webp');}}
.ecosystem:hover .ecosystem-item.e3 i {background-image: url(/assets/redis/img/main/e3.png);}
@supports (background-image: url('/assets/redis/img/main/e3.webp')) {.ecosystem:hover .ecosystem-item.e3 i {background-image: url('/assets/redis/img/main/e3.webp');}}
.ecosystem:hover .ecosystem-item.e4 i {background-image: url(/assets/redis/img/main/e4.png);}
@supports (background-image: url('/assets/redis/img/main/e4.webp')) {.ecosystem:hover .ecosystem-item.e4 i {background-image: url('/assets/redis/img/main/e4.webp');}}
.ecosystem:hover .ecosystem-item.e5 i {background-image: url(/assets/redis/img/main/e5.png);}
@supports (background-image: url('/assets/redis/img/main/e5.webp')) {.ecosystem:hover .ecosystem-item.e5 i {background-image: url('/assets/redis/img/main/e5.webp');}}
.ecosystem:hover .ecosystem-item.e6 i {background-image: url(/assets/redis/img/main/e6.png);}
@supports (background-image: url('/assets/redis/img/main/e6.webp')) {.ecosystem:hover .ecosystem-item.e6 i {background-image: url('/assets/redis/img/main/e6.webp');}}
.ecosystem-item {
    display: flex;
    justify-content: flex-start;
}.ecosystem-item i {
    width: 30%;
}.ecosystem .ecosystem-item span {
    text-align: center;
    display: flex
;
    margin: 16px 10px 16px;
    align-items: center;
    height: 30px;
    justify-content: left;
    transition: background-color 0.5s ease;
    transition: 0.5s ease;
    width: 60%;
    text-align: -webkit-auto;
}.ecosystem-item i {
    width: 25%;
}

.ecosystem-item.active, .ecosystem-item.active:after{
    background: var(--red);
}
.maps-button {display: none;}

/* Десктоп = табы */
.tabs-desktop { display: flex; gap: 10px; }
.mobile-only { display: none; }

  .tabs-desktop { display: none; }
  .mobile-only { display: block; position: relative; width: 100%;}

/* Кнопка селекта */
.maps-toggle {
  width: 100%;
  padding: 10px;
  background: #eee;
  border: none;
  border-radius: 6px;
  display: flex;
  justify-content: space-between;
  cursor: pointer;
}

/* Выпадающий список */
.maps-list {
  position: absolute;
  left: 0; right: 0;
  background: #fff;
  border-radius: 6px;
  box-shadow: 0 4px 12px rgba(0,0,0,.1);
  margin-top: 4px;
  max-height: 0;         /* скрыт */
  overflow: hidden;
  transition: max-height 0.3s ease;
  z-index: 10;
}

.maps-dropdown.open .maps-list {
  max-height: 500px;     /* раскрыт (достаточно, чтобы вместить все пункты) */
}

.maps-list .option {
  padding: 10px;
  cursor: pointer;
}
.maps-list .option.active { font-weight: bold; background: #f5f5f5; }

/* Контент */
.wraptab .tab-content { display: none; }
.wraptab .tab-content.active { display: block; }
.maps-contacts.closed {
    display: none; 
}.maps-contacts span.close-cont:after {
    display: none
}.maps-contacts {
    position: absolute;
    right: inherit;
    z-index: 2;
    background: #fff;
    box-shadow: 0px 0px 5px #ccc;
    border-radius: 8px;
    width: 92%;
    min-width: 200px;
    padding: 12px;
    top: 50%;
    left: 50%;    max-width: 300px;
    transform: translate(-50%, -50%);
}.maps-contacts span.close-cont {
    position: absolute;
    right: 19px;
    top: 21px;
    cursor: pointer;
    z-index:3;
}.maps-contacts p {
    color: var(--gray-1);
    margin: 0 0 16px;
    font-size: 14px;
    font-weight: 300;
    line-height: 24px;
}button.maps-toggle span.maps-selected, .option.press  {
    font-size: 18px;
    padding: 0 0 0 59px;
    display: block;
    width: 100%;
    text-align: left;
}.maps-list .option {
    font-weight: 500;
    font-size: 18px;
    background: #f5f5f5;
    padding: 22px 0 20px 68px;
}.option.press:after {
    content: "";
    background: url(/assets/redis/img/main/map-city-ico.png);
    top: 0;
    left: 0;
    width: 40px;
    height: 40px;
    position: absolute;
}.option.press:after {
    content: "";
    background: url(/assets/redis/img/main/map-city-ico.png);
    top: 15px;
    left: 21px;
    width: 24px;
    height: 26px;
    position: absolute;
}.maps-toggle {
    width: 100%;
    padding: 16px 10px;
    background: #eee;
    border: none;
    border-radius: 6px;
    display: flex;
    justify-content: space-between;
    cursor: pointer;
    background: var(--red);
    color: #fff;
    width: 92%;
    margin: 0 auto;
}.maps-list {
    width: 92%;
    top: 125px;
    left: 50%;
    transform: translate(-50%, -50%);
}.fcontent-menu.fb div {
    width: 100%;
}.fcontent-menu.fb {
    flex-wrap: wrap;
}.ecosystem-item i {
    width: 25%;
    background-repeat: no-repeat;
    background-position: center;
    margin-top: -23px;
}.gr-2 {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}picture {
    width: 100%;
}.brand-item.gr-2 img {
    width: 100%;
}
.brand-item.gr-2 {
    width: 100%;
}.brand-item_img {
    width: 100%;
}.mobile-only {
    display: block;
    position: relative;
    width: 100%;
    margin-bottom: -65px;
        z-index: 5;
}.maps {
    margin-top: 45px;
}.mobile-only {
    display: block;
    position: relative;
    width: 100%;
    margin: 0 auto -65px;
    z-index: 5;
    max-width: 325px;
}span.maps-selected:after {
    content: "";
    position: absolute;
    top: -5px;
    left: 0;
    height: 28px;
    width: 28px;
    background: url(/assets/redis/img/main/map-city-ico-active.png);
}.slider-top-content, .slider-top picture {display: none;}
.slider-top .slick-slide img.mbs {
    display: block;
    width: 100%;
}.slider-top .ambs {display: block;position: absolute;top:0;left: 0;width: 100%;height: 100%;}
}