@charset "utf-8";
@font-face {
    font-family: 'Gilroy';
    src:url('../fonts/Gilroy-Thin.woff');
        font-weight: 100;
        font-style: normal;
}
@font-face {
    font-family: 'Gilroy';
    src:url('../fonts/Gilroy-ThinItalic.woff');
        font-weight: 100;
        font-style: italic;
}
@font-face {
    font-family: 'Gilroy';
    src:url('../fonts/Gilroy-Light.woff');
        font-weight: 300;
        font-style: normal;
}
@font-face {
    font-family: 'Gilroy';
    src:url('../fonts/Gilroy-LightItalic.woff');
        font-weight: 300;
        font-style: italic;
}
@font-face {
    font-family: 'Gilroy';
    src:url('../fonts/Gilroy-Regular.woff');
        font-weight: normal;
        font-style: normal;
}
@font-face {
    font-family: 'Gilroy';
    src:url('../fonts/Gilroy-RegularItalic.woff');
        font-weight: normal;
        font-style: italic;
}
@font-face {
    font-family: 'Gilroy';
    src:url('../fonts/Gilroy-Medium.woff');
        font-weight: 500;
        font-style: normal;
}
@font-face {
    font-family: 'Gilroy';
    src:url('../fonts/Gilroy-MediumItalic.woff');
        font-weight: 500;
        font-style: italic;
}
@font-face {
    font-family: 'Gilroy';
    src:url('../fonts/Gilroy-Semibold.woff');
        font-weight: 600;
        font-style: normal;
}
@font-face {
    font-family: 'Gilroy';
    src:url('../fonts/Gilroy-SemiBoldItalic.woff');
        font-weight: 600;
        font-style: italic;
}
@font-face {
    font-family: 'Gilroy';
    src:url('../fonts/Gilroy-Bold.woff');
        font-weight: bold;
        font-style: normal;
}
@font-face {
    font-family: 'Gilroy';
    src:url('../fonts/Gilroy-BoldItalic.woff');
        font-weight: bold;
        font-style: italic;
}
@font-face {
    font-family: 'Gilroy';
    src:url('../fonts/Gilroy-Extrabold.woff2');
        font-weight: 800;
        font-style: normal;
}
body{
    font-family: 'Gilroy';
    color: #000;
    font-size: 16px;
    line-height: 1.6;
}

h1,
.title-h1 {
    font-size: 25px;
    line-height: 1.3;
    font-weight: 600;
    margin-bottom: 30px;
}

h2,
.title-h2 {
    font-size: 25px;
    line-height: 1.3;
    font-weight: 600;
    margin-bottom: 30px;
}

h3,
.title-h3 {
    font-size: 20px;
    line-height: 1.3;
    font-weight: 600;
    margin-bottom: 25px;
}

h4,
.title-h4 {
    font-size: 18px;
    line-height: 1.3;
    font-weight: 600;
    margin-bottom: 20px;
}

h5,
.title-h5 {
    font-size: 16px;
    line-height: 1.3;
    font-weight: 600;
    margin-bottom: 20px;
}

h6,
.title-h6 {
    font-size: 16px;
    line-height: 1.3;
    font-weight: 600;
    margin-bottom: 20px;
}
@media(min-width: 992px){
    h1.big-title,
    h2.big-title,
    .title-h1.big-title,
    .title-h2.big-title{
        font-weight: 500;
        font-size: 40px;
    }
    h3.big-title,
    .title-h3.big-title{
        font-weight: 500;
        font-size: 20px;
    }
}
@media(min-width: 1460px){
    h1.big-title,
    h2.big-title,
    .title-h1.big-title,
    .title-h2.big-title{
        font-size: 50px;
    }
    h3.big-title,
    .title-h3.big-title{
        font-size: 25px;
    }
}


a {
    color: #2978C3;
}

a:hover {
    color: #333;
}

a.invert {
    color: #333;
}

a.invert:hover {
    color: #2978C3;
}

.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 28px;
    text-decoration: none;
    cursor: pointer;
    padding: 0 15px;
    border: 1px solid #2978C3;
    border-radius: 50px;
    font-weight: 400;
    font-size: 14px;
    color: #FFFFFF;
    background: #2978C3;
    text-align: center;
    transition: all 300ms ease-out;
}
.btn:hover {
    background: #154F85;
    border-color: #154F85;
    color: #fff;
}
.btn.btn-lg{
    height: 34px;
    padding-left: 35px;
    padding-right: 35px;
}
.btn.btn-xlg{
    height: 55px;
    padding-left: 35px;
    padding-right: 35px;
    font-size: 16px;
}
.full-width{
    width: 100%;
}
.section{
    padding: 60px 0 50px;
}
.pt0{
    padding-top: 0;
}
.pb0{
    padding-bottom: 0;
}

/* Header */
.header{
    margin-bottom: 30px;
}
.header-inner{
    display: flex;
    flex-wrap: wrap;
    padding: 10px 0;
}
.header-left{
    width: 235px;
}
.header-right{
    width: calc(100% - 235px);
}

.header-cities a{
    font-size: 12px;
    text-decoration: underline;
}
.header-cities a:hover{
    text-decoration: none;
}
.header-logo{
    margin: 5px 0;
}
.header-delivery{
    font-size: 12px;
    color: #2978C2;
}

.header-row{
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: center;
}
.header-row-middle{
    padding: 20px 0 15px;
}

.header-mail{
    display: flex;
    align-items: center;
    margin-left: 17px;
    line-height: 1.2;
}
.header-mail svg{
    flex-shrink: 0;
}
.header-mail a{
    font-size: 18px;
    font-weight: 600;
    color: #414141;
    text-decoration: underline;
    margin-left: 7px;
}
.header-mail a:hover{
    text-decoration: none;
}
.header-social-nav{
    margin-left: 17px;
}
.social-nav{
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}
.social-nav a {
    position: relative;
    width: 28px;
    height: 28px;
    color: #ffffff;
    text-align: center;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: all 300ms ease;
}
.social-nav a.telegram-btn{
    background-color: #0D83BE;
}
.social-nav a.whatsapp-btn{
    background-color: #2CC54E;
}
.social-nav a.callback-btn{
    background: #154F85;
}
.header-social-nav a + a{
    margin-left: 5px;
}

.social-nav a:hover{
    transform: scale(1.03);
    filter: brightness(110%);
}
.social-nav a.telegram-btn:hover {
  animation: radial-pulse-telegram 1.4s infinite;
}
.social-nav a.whatsapp-btn:hover {
  animation: radial-pulse-whatsapp 1.4s infinite;
}
@keyframes radial-pulse-telegram {
  0% {
    box-shadow: 0 0 0 0px rgba(0, 136, 204, 0.5);
  }
  100% {
    box-shadow: 0 0 0 10px rgba(255, 0, 0, 0);
  }
}
@keyframes radial-pulse-whatsapp {
  0% {
    box-shadow: 0 0 0 0px rgba(76,175,80, 0.5);
  }
  100% {
    box-shadow: 0 0 0 10px rgba(255, 0, 0, 0);
  }
}

.header-callback{
    margin-left: 17px;
}
.header-phones{
    display: flex;
    flex-wrap: wrap;
}
.header-phone{
    display: flex;
    align-items: center;
}
.header-phone + .header-phone{
    margin-left: 17px;
}
.header-phone svg{
    flex-shrink: 0;
}
.header-phone a{
    color: #414141;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.2;
    margin-left: 5px;
}
.header-phone a:hover{
    color: #2978C3;
}

/* top-menu */
.top-menu li{
    position: relative;
}
.top-menu > ul{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}
.top-menu > ul > li{
    margin-left: 30px;
}
.top-menu > ul > li > a{
    color: #414141;
    font-size: 16px;
}
.top-menu > ul > li.active > a,
.top-menu > ul > li:hover > a{
    color: #2978C3;
}
.top-menu > ul > li:first-of-type > a{
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    height: 38px;
    line-height: 1.2;
    padding: 0 30px;
    font-weight: 500;
    border-radius: 42px;
    background: #2978C3;
    color: #fff;
    transition: none;
}
.top-menu > ul > li.active:first-of-type > a,
.top-menu > ul > li:first-of-type:hover > a{
    color: #fff;
}

.top-menu ul ul{
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    width: 460px;
    background: #2978C3;
    border-radius: 0 12px 12px 12px;
    padding: 14px;
    z-index: 300;
}
.top-menu ul ul a{
    font-weight: 500;
    font-size: 16px;
    color: #fff;
    display: inline-flex;
    align-items: center;
    min-height: 40px;
    padding: 7px 14px;
    border-radius: 33px;
}
.top-menu ul ul li:hover > a{
    background: #154F85;
    color: #fff;
}
.top-menu > ul > li:first-of-type:hover > ul{
    display: block;
}
.top-menu > ul > li:first-of-type:hover > a {
    border-radius: 22px 22px 0 0;
}
/* /. top-menu */
.header-search-inner .search-close{
    display: none;
}
.header-search form {
    position: relative;
    background: #F3F3F3;
    border-radius: 50px;
}
.header-search-input {
    display: block;
    width: 370px;
    max-width: 100%;
    height: 37px;
    padding: 0 10px 0 33px;
    border: 1px solid #F3F3F3;
    background: transparent;
    color: #8E8E8E;
    text-shadow: none;
    font-size: 13px;
    line-height: 1.42857143;
    border-radius: 50px;
    position: relative;
    z-index: 10;
}
.header-search .form-icon {
    width: 14px;
    height: 14px;
    line-height: 0;
    position: absolute;
    top: calc(50% - 7px);
    left: 10px;
}
.header-search-btn{
    display: none;
}

.header-cart{
    margin-left: 10px;
}
.header-cart .empty{ 
    display: block;
}
.header-cart .not_empty { 
    display: none; 
}
.header-cart.full .empty{ 
    display: none; 
}
.header-cart.full .not_empty{ 
    display: block;
}
.header-cart-item{
    display: flex;
    height: 37px;
    align-items: center;
    justify-content: flex-end;
    background: #2978C2;
    color: #fff;
    border-radius: 50px;
    padding: 0 22px 0 28px;
    font-size: 14px;
}
.header-cart-icon{
    flex-shrink: 0;
    width: 24px;
    margin-left: 7px;
    position: relative;
    line-height: 0;
}
.ms2_total_count{
    position: absolute;
    top: -3px;
    right: -14px;
    background: #000;
    color: #fff;
    font-size: 14px;
    font-weight: 400;
    line-height: 1;
    padding: 0 3px;
    border-radius: 10px;
    min-width: 21px;
    height: 21px;
    display: flex;
    align-items: center;
    justify-content: center;
}
a.header-cart-item:hover{
    color: #fff;
    background: #154F85;
}
.header-main-mobile-bar{
    display: none;
}

/* index page header */
.index-template .header{
    background-color: #333;
    background-size: cover;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    color: #fff;
    position: relative;
    margin-bottom: 0;
}
.index-template .header a,
.index-template .header-delivery{
    color: #fff;
}
.index-template .header-phone a:hover{
    color: #2978C3;
}
.header-index{
    padding: 40px 0 30px;
}
.header-index h1{
    font-weight: 500;
    margin-bottom: 20px;
    width: 730px;
    max-width: 100%;
}
.header-index h1:first-line{
    font-weight: 600;
}
@media(min-width: 992px){
    .header-index h1{
        font-size: 30px;
    }
    .header-index h1:first-line{
        font-size: 45px;
    }
}
.header-content{
    width: 900px;
    max-width: 100%;
}
.header-features-title{
    font-size: 20px;
    margin-bottom: 30px;
}
.header-features{
    width: 1130px;
    max-width: 100%;
    margin: auto;
    display: flex;
    flex-wrap: wrap;
}
.header-features .col{
    width: 25%;
    padding-left: 15px;
    padding-right: 15px;
    text-align: center;
    margin-bottom: 30px;
    font-size: 13px;
}
.header-features .item-icon{
    height: 40px;
    margin-bottom: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.header-features .item-icon img{
    max-height: 100%;
}
.header-features .item-title{
    padding-bottom: 10px;
    margin-bottom: 10px;
    position: relative;
}
.header-features .item-title:after{
    content: "";
    height: 1px;
    background: #4EB7E4;
    position: absolute;
    bottom: 0;
    left: 25px;
    right: 25px;
    opacity: 0.5;
}
.header .scrollto{
    display: flex;
    width: 64px;
    height: 64px;
    align-items: center;
    justify-content: center;
    background: #2978C3;
    border-radius: 50%;
    border: 7px solid #fff;
    position: absolute;
    left: calc(50% - 32px);
    bottom: -32px;
    z-index: 50;
}
/* /. index page header */

@media(max-width: 1199px){
    .top-menu > ul > li{
        margin-left: 20px;
    }
    .header-phone a{
        font-size: 20px;
    }
    .header-mail a,
    .top-menu > ul > li > a{
        font-size: 15px;
    }
    .top-menu > ul > li:first-of-type > a{
        padding-left: 25px;
        padding-right: 25px;
    }
    .header-search-input{
        width: 340px;
    }
}
@media(max-width: 1099px){
    .top-menu > ul > li{
        margin-left: 18px;
    }
    .header-phone a{
        font-size: 16px;
    }
    .header-mail a,
    .top-menu > ul > li > a{
        font-size: 13px;
    }
    .top-menu > ul > li:first-of-type > a{
        padding-left: 20px;
        padding-right: 20px;
        height: 32px;
    }
    .header-search-input{
        width: 300px;
    }
}
@media(max-width: 991px){
    .header{
        margin-bottom: 20px;
    }
    .header-row-middle,
    .header-row-top{
        display: none;
    }
    .header-main{
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        z-index: 900;
        background: #fff;
        box-shadow: 0 2px 2px rgba(0,0,0,0.1);
    }
    .header-main-mobile-bar{
        display: flex;
        height: 30px;
        padding: 0 15px;
        align-items: center;
        justify-content: space-between;
        background: #154F85;
        color: #fff;
    }
    .header-main-mobile-bar a{
        color: #fff;
    }
    .header-phone a{
        font-size: 13px;
        font-weight: normal;
    }

    .header-main-push{
        height: 80px;
    }
    .header-inner{
        padding: 0;
        height: 50px;
        align-items: center;
    }
    .header-left{
        width: 100px;
    }
    .header-right{
        width: calc(100% - 100px);
    }
    .header-logo{
        margin: 0;
    }
    .header-inner .header-cities,
    .header-delivery{
        display: none;
    }
    .header-cart-title{
        display: none;
    }
    .header-cart-item{
        padding: 0 12px;
        height: 28px;
    }
    .header-cart-icon{
        margin-left: 0;
    }
    .header-cart-icon svg{
        width: 18px;
        height: 18px;
    }
    .ms2_total_count {
        top: -4px;
        right: -6px;
        font-size: 9px;
        padding: 0 2px;
        border-radius: 8px;
        min-width: 15px;
        height: 15px;
    }
    .header-search-inner{
        display: none;
        padding-right: 50px;
        padding-left: 15px;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        background: #154F85;
        z-index: 100;
    }
    .header-search-inner.active{
        display: flex;
        align-items: center;
    }
    .header-search-inner .search-close{
        display: block;
        width: 20px;
        height: 20px;
        position: absolute;
        right: 15px;
        top: calc(50% - 10px);
    }
    .header-search form{
        width: 100%;
    }
    .header-search-btn{
        display: flex;
    }
    .header-index h1:first-line{
        font-size: 1.5em;
    }
    .header-content{
        text-align: center;
    }
    .header-features{
        width: auto;
        margin-left: -15px;
        margin-right: -15px;
    }
    .header-features .col{
        font-size: 12px;
    }
}
@media(max-width: 767px){
    .header-main-mobile-bar{
        padding-left: 10px;
        padding-right: 10px;
    }
    .header-cart{
        margin-left: 7px;
    }
    .header-social-nav{
        margin-left: 10px;
    }
    .header-phone + .header-phone{
        margin-left: 10px;
    }
    .header-phone + .header-phone svg{
        display: none;
    }
    .header-phone a{
        font-size: 10px;
    }
    .header-cities a{
        font-size: 10px;
    }
    .header-left{
        width: 70px;
    }
    .header-right{
        width: calc(100% - 70px);
    }

    .header-search-inner{
        padding-right: 45px;
        padding-left: 10px;
    }
    .header-features{
        margin-left: 0;
        margin-right: 0;
    }
    .header-features .col{
        width: 50%;
    }
    .header-index h1{
        font-size: 20px;
    }
    .header-features-title {
        font-size: 18px;
    }
}
/** /. Header **/

/* Breadcrumbs */
.breadcrumbs-section{
    font-size: 15px;
    font-weight: normal;
    color: #727272;
    padding: 0 0 35px;
}
.breadcrumbs-inner{
    display: flex;
    flex-wrap: wrap;
    overflow: auto;
}
.breadcrumbs-inner .item-icon a{
    position: relative;
    top: -2px;
}
.breadcrumbs-inner .item-icon:after{
    content: '';
    background: url(../images/breadcrumbs-arrow.svg) 0 0 no-repeat;
    width: 6px;
    height: 10px;
    display: inline-block;
    margin-left: 7px;
}
.breadcrumb{
    padding-left: 8px;
}
.breadcrumb > li {
    display: inline;
    margin-right: 5px;
}
.breadcrumb > li > a{
    text-decoration: none;
    color: #262626;
}
.breadcrumb > li > a:after{
    content: '';
    background: url(../images/breadcrumbs-arrow.svg) 0 0 no-repeat;
    width: 6px;
    height: 10px;
    display: inline-block;
    margin-left: 10px;
}
.breadcrumb a:hover{
    color: #2978C3;
}
@media(max-width: 767px){
    .breadcrumbs-inner .item-icon{
        display: none;
    }
    .breadcrumb{
        width: auto;
        overflow: auto;
        padding-left: 0;
        white-space: nowrap;
    }
    .breadcrumb > li {
        white-space: nowrap;
    }
}
/* /. Breadcrumbs */

/* footer */
.footer {
    background: #3A3A3A;
    color: #fff;
    padding-bottom: 30px;
}
.footer-top{
    padding-top: 30px;
}
.footer-top-inner{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.footer-top-left{
    width: 440px;
    font-size: 14px;
}
.footer-top-left > div + div{
    margin-top: 20px;
}

.footer-top-right{
    width: 730px;
    padding-left: 50px;
    display: flex;
    flex-wrap: wrap;
    font-size: 14px;
}
.footer-top-right > div + div{
    padding-left: 40px;
}
.footer-top-right .col1{
    width: 20%;
}
.footer-top-right .col2,
.footer-top-right .col3{
    width: 40%;
}
.footer-top-right .item-title{
    font-weight: 600;
    font-size: 16px;
    margin-bottom: 10px;
    border-bottom: 1px solid #4EB7E4;
}
.footer-nav li + li{
    margin-top: 5px;
}
.footer-nav a{
    color: #fff;
}
.footer-nav a:hover{
    color: #4EB7E4;
}
.footer-contacts .sub-item + .sub-item{
    margin-top: 10px;
}
.footer-contacts .sub-item-title{
    font-weight: 600;
}
.footer-contacts .sub-item-phone a{
    font-size: 18px;
    font-weight: 700;
    color: #fff;
    margin-left: 4px;
}
.footer-contacts .sub-item-phone a:hover{
    color: #4EB7E4;
}
.footer-contacts .sub-item-mail a{
    color: #fff;
    text-decoration: underline;
    margin-left: 4px;
}
.footer-contacts .sub-item-mail a:hover{
    text-decoration: none;
}
.footer-contacts .sub-item-mail svg{
    position: relative;
    bottom: -2px;
}

.footer-bottom{
    padding-top: 30px;
}
.footer-bottom-inner{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    font-size: 12px;
}
.development{
    display: flex;
    justify-content: flex-end;
    width: 150px;
    position: relative;
}
.development a{
    display: flex;
    align-items: center;
    font-weight: 300;
    font-size: 10px;
    line-height: 140.62%;
    letter-spacing: 0.01em;
}
.development-icon{
    margin-left: 8px;
    display: inline-block;
    position: relative;
}
.development-icon img{
    position: relative;
    z-index: 2;
}
.footer-bottom a:hover{
    color: #fff;
}
.copyright span{
    margin-right: 10px;
}

@media(max-width: 1199px){
    .footer-top-right{
        max-width: 100%;
        padding-left: 0;
        padding-top: 30px;
    }
    .footer-top-left{
        width: 100%;
    }
}
@media(max-width: 767px){
    .footer-top-right .col{
        width: 100% !important;
    }
    .footer-top-right .col + .col{
        padding-left: 0;
        padding-top: 30px;
    }
    .footer-top-right .item-title{
        display: inline-block;
    }
    .copyright{
        width: 100%;
    }
    .copyright span{
        margin-right: 0;
        display: block;
        margin-bottom: 5px;
    }
    .development{
        width: 100%;
        justify-content: flex-start;
        margin-top: 20px;
    }
}
/* /. footer */

/* first-section */
.first-section{
    background: url(../images/e.png) right 0 top -96px no-repeat;
}
.first-section-intro{
    padding-top: 30px;
}
.first-section-intro-items{
    display: flex;
    flex-wrap: wrap;
    margin-left: -15px;
    margin-right: -15px;
    padding: 30px 0;
}
.first-section-intro-items .col{
    width: 50%;
    padding-left: 15px;
    padding-right: 15px;
    margin-bottom: 30px;
}
.first-section-intro-items .item{
    padding: 30px;
    border-radius: 12px;
    text-align: center;
    background: #F3FBFF;
    font-size: 18px;
    height: 100%;
}
.first-section-intro-items .item p:last-of-type{
    margin-bottom: 0;
}
@media(max-width: 991px){
    .first-section-intro-items .item{
        padding: 25px;
        font-size: 16px;
    }
}
@media(max-width: 767px){
    .first-section-intro-items{
        margin-left: -10px;
        margin-right: -10px;
    }
    .first-section-intro-items .col{
        width: 100%;
        padding-left: 10px;
        padding-right: 10px;
        margin-bottom: 20px;
    }
}
/* /. first-section */

/* categories */
.categories{
    display: flex;
    flex-wrap: wrap;
}
@media(min-width: 1300px){
    .categories{
        width: 1270px;
        margin: auto;
    }
}
.categories .col{
    width: 25%;
    padding-left: 15px;
    padding-right: 15px;
    margin-bottom: 30px;
}
.categories .item{
    height: 100%;
    background: #fff;
    text-align: center;
    display: block;
    box-shadow: 0px 4px 14.7px -1px #0000002E;
    border-radius: 16px;
    padding: 20px;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.5;
    color: #000000;
}
.categories .item-img{
    height: 160px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 15px;
}
.categories .item-img img{
    max-height: 100%;
}
.categories .item:hover{
    transform: scale(1.05);
}
@media(max-width: 1299px){
    .categories{
        margin-left: -15px;
        margin-right: -15px;
    }
    .categories .item-img{
        height: 12.3vw;
    }
}
@media(max-width: 991px){
    .categories{
        margin-left: -10px;
        margin-right: -10px;
    }
    .categories .col{
        padding-left: 10px;
        padding-right: 10px;
        margin-bottom: 20px;
    }
    .categories .item{
        border-radius: 12px;
        padding: 2vw;
        font-size: 1.6vw;
    }
}
@media(max-width: 767px){
    .categories{
        margin-left: -5px;
        margin-right: -5px;
    }
    .categories .col{
        padding-left: 5px;
        padding-right: 5px;
        margin-bottom: 10px;
    }
    .categories .item{
        border-radius: 10px;
        font-size: 1.8vw;
    }
}
@media(max-width: 599px){
    .categories .col{
        width: 50%;
    }
    .categories .item{
        border-radius: 12px;
        font-size: 3vw;
        padding: 4vw;
    }
    .categories .item-img {
        height: 18vw;
    }
}
/* /. categories */

/* feedback-section */
.feedback-section{
    background: url(../images/feedback-bg.jpg) 0 0 / cover no-repeat;
    color: #fff;
    padding: 20px 0;
}
.feedback-section-inner{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}
.feedback-section-inner .col1{
    width: calc(100% - 485px);
    padding-right: 180px;
    position: relative;
}
.feedback-section-inner .col1:after{
    content: "";
    width: 65px;
    height: 65px;
    background: url(../images/feedback-section-arrow.svg) 0 0 no-repeat;
    position: absolute;
    right: 55px;
    top: calc(50% - 32px);
}

.feedback-section-inner .col2{
    width: 485px;
    border: 1px dashed rgba(255,255,255,0.5);
    padding: 25px 55px;
    border-radius: 30px;
}
.feedback-section-inner .form-title{
    font-weight: 700;
    font-size: 40px;
    line-height: 1.3;
    margin-bottom: 25px;
}
.feedback-section-inner .btn-lg{
    width: 140px;
    max-width: 100%;
}
.simple-agreement{
    margin: 20px 0;
    font-size: 11px;
}
.simple-agreement a{
    text-decoration: underline;
    color: #000;
}
.simple-agreement a:hover{
    text-decoration: none;
}
.feedback-section .simple-agreement a{
    color: #fff;
}
.feedback-section .form-control:not('.error'){
    border-color: #fff;
}
@media(max-width: 1199px){
    .feedback-section-inner .col1:after{
        right: 35px;
    }
    .feedback-section-inner .col1{
        padding-right: 140px;
        width: calc(100% - 400px);
    }
    .feedback-section-inner .col2 {
        width: 400px;
        padding: 20px 35px 30px;
    }
    .feedback-section-inner .form-title {
        font-size: 30px;
        margin-bottom: 20px;
    }
}
@media(max-width: 991px){
    .feedback-section{
        padding: 60px 0;
    }
    .feedback-section-inner .col1:after{
        display: none;
    }
    .feedback-section-inner .col1{
        padding-right: 0;
        width: 100%;
        text-align: center;
        margin-bottom: 30px;
    }
    .feedback-section-inner .col2 {
        width: 100%;
        padding: 6vw 8vw;
    }
}
/* /. feedback-section */

/* file upload */
.inputfile {
    width: 0.1px;
    height: 0.1px;
    opacity: 0;
    overflow: hidden;
    position: absolute;
    z-index: -1;
}

.inputfile + label {
    max-width: 80%;
    font-size: 1.25rem;
    font-weight: 600;
    text-overflow: ellipsis;
    white-space: nowrap;
    cursor: pointer;
    display: inline-block;
    overflow: hidden;
    padding: 0.825rem 1.65rem;
}
.inputfile + label svg {
    width: 1em;
    height: 1em;
    vertical-align: middle;
    fill: currentColor;
    margin-top: -0.25em;
    margin-right: 0.25em;
}

/* style 2 */
.inputfile-2 + label {
    color: #ffffff;
    border: 1px solid currentColor;
    margin-top: 5px;
    border-radius: 30px;
}
.inputfile-2:focus + label,
.inputfile-2.has-focus + label,
.inputfile-2 + label:hover {
    color: #56adff;
}

/* /. file upload */

/* .logotypes-carousel */
.logotypes-carousel{
    padding: 0 75px;
}
.logotypes-carousel > div:not(:first-of-type){
    display: none;
}
.logotypes-carousel .col{
    width: 20%;
    padding: 0 10px;
}
.logotypes-carousel .item{
    height: 100%;
    max-height: 120px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.logotypes-carousel .slick-track {
    display: flex;
    align-items: stretch;
    flex-wrap: wrap;
}
.logotypes-carousel .slick-slide {
    height: inherit;
}
.logotypes-carousel .item img{
    max-height: 100%;
}
@media(max-width: 991px){
    .logotypes-carousel .col{
        width: 20%;
    }
}
@media(max-width: 767px){
    .logotypes-carousel .col{
        width: 25%;
    }
    .logotypes-carousel{
        padding: 0;
    }
}
@media(max-width: 599px){
    .logotypes-carousel .col{
        width: 33.3333%;
    }
}
@media(max-width: 499px){
    .logotypes-carousel .col{
        width: 50%;
    }
}
/* /. logotypes-carousel */

.map-section-slogan span{
    display: inline-flex;
    height: 62px;
    padding: 0 22px;
    align-items: center;
    justify-content: center;
    color: #fff;
    background: #2978C2;
    border-radius: 90px;
    margin-bottom: 30px;
    font-size: 32px;
    font-weight: 500;
    line-height: 1.2;
}
@media(max-width: 991px){
    .map-section-slogan span{
        width: 100%;
        font-size: 3.5vw;
        height: 8vw;
        padding: 0;
    }
}
@media(max-width: 767px){
    .map-section-slogan span{
        height: 12vw;
    }
}

/* video-list */
.video-list{
    display: flex;
    flex-wrap: wrap;
    margin-left: -10px;
    margin-right: -10px;
    padding-top: 30px;
}
.video-list .col{
    width: 50%;
    padding-left: 10px;
    padding-right: 10px;
    margin-bottom: 20px;
}
.video-list .item{
    height: 100%;
    min-height: 390px;
}
.video-list iframe{
    width: 100% !important;
    height: 100% !important;
}

@media(max-width: 1459px){
    .video-list .item{
        min-height: 26.7vw;
    }
}
@media(max-width: 767px){
    .video-list .col{
        width: 100%;
    }
    .video-list .item{
        min-height: 54vw;
    }
}
/* /. video-list */

/* about page */
.about-section{
    background: url(../images/e2.png) right 0 top 0 no-repeat;
}
.about-columns{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.about-columns .col1{
    width: calc(55% - 15px);
}
.about-columns .col2{
    width: calc(45% - 15px);
}
.about-images{
    padding-top: 30px;
}
.about-images .item{
    margin-bottom: 30px;
    border-radius: 4px;
    overflow: hidden;
}
.about-images .item img{
    width: 100%;
}

.about-nums{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 50px;
}
.about-nums-col{
    width: calc(50% - 10px);
    text-align: center;
}
.about-nums-col .item-num{
    font-weight: 700;
    font-size: 80px;
    color: #2978C3;
    line-height: 1;
}
.about-nums-col .item + .item{
    margin-top: 50px;
}
.about-nums-col1 .item-num{
    font-size: 160px;
    color: #000;
}
.about-nums-col .item-title{
    font-weight: 500;
    font-size: 20px;
    color: #A5A5A5;
    line-height: 1.3;
}
.about-nums-col .item-title span{
    color: #000;
    display: block;
}
.about-images{
    padding-right: 70px;
}
.about-video{
    margin-left: -70px;
}
.about-video-title{
    font-weight: 500;
    font-size: 22px;
    margin-bottom: 30px;
    line-height: 1.3;
    padding-top: 30px;
}
.about-video .item{
    display: block;
    overflow: hidden;
    border-radius: 4px;
    margin-bottom: 30px;
    position: relative;
}
.about-video .item img{
    width: 100%;
}
.about-video .item:after{
    content: "";
    background: url(../images/play.svg) 0 0 no-repeat;
    width: 64px;
    height: 64px;
    position: absolute;
    top: calc(50% - 32px);
    left: calc(50% - 32px);
    z-index: 5;
    transition: all ease-out 300ms;
}
.about-video .item:hover:after{
    transform: scale(1.1);
}
.about-video-text{
    padding-left: 15px;
}
@media(max-width: 991px){
    .about-columns .col1{
        width: calc(55% - 15px);
    }
    .about-columns .col2{
        width: calc(45% - 15px);
    }
    .about-nums-col .item-num{
        font-size: 70px;
    }
    .about-nums-col1 .item-num {
        font-size: 120px;
    }
    .about-nums-col .item-title{
        font-size: 16px;
    }
    .about-images{
        padding-right: 0;
    }
    .about-video{
        margin-left: 0;
    }
    .about-video-title {
        font-size: 16px;
        margin-bottom: 20px;
        padding-top: 20px;
    }
}
@media(max-width: 991px){
    .about-columns .col1{
        width: 100%;
    }
    .about-columns .col2{
        width: 100%;
    }
}
/* /. about page */

/* certificates */
.certificates{
    display: flex;
    flex-wrap: wrap;
    margin-left: -15px;
    margin-right: -15px;
}
.certificates .col{
    width: 25%;
    padding-left: 15px;
    padding-right: 15px;
    margin-bottom: 30px;
}
.certificates .item{
    display: block;
}
.certificates .item img{
    width: 100%;
}
.certificates-carousel > div:not(:first-of-type){
    display: none;
}
@media(max-width: 991px){
    .certificates{
        margin-left: -10px;
        margin-right: -10px;
    }
    .certificates .col{
        width: 33.3333%;
        padding-left: 10px;
        padding-right: 10px;
        margin-bottom: 20px;
    }
}
@media(max-width: 767px){
    .certificates .col{
        width: 50%;
    }
}
@media(max-width: 429px){
    .certificates .col{
        width: 100%;
    }
}
/* /. certificates */

/* contacts page */
.requisites{
    width: 280px;
    max-width: 100%;
    margin-bottom: 30px;
}
.requisites .item + .item{
    margin-top: 10px;
}
.requisites .item{
    display: flex;
    flex-wrap: wrap;
    color: #333333;
}
.requisites .item-key{
    width: 40%;
}
.requisites .item-value{
    font-weight: 600;
}
.requisites .item a{
    text-decoration: underline;
    font-weight: normal;
}
.requisites .item a:hover{
    text-decoration: none;
}

.departments{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    color: #333333;
}
.departments .col{
    width: calc(50% - 15px);
    margin-bottom: 30px;
}
.departments .item-title{
    font-weight: 600;
    margin-bottom: 15px;
    font-size: 16px;
}
.departments .item-row{
    margin-bottom: 10px;
    display: flex;
    flex-wrap: wrap;
}
.departments .item-key{
    width: 130px;
}
.departments .item-value{
    width: calc(100% - 130px);
}
.departments .item-value a{
    color: #333;
    font-weight: 600;
}
.departments .item-value a:hover{
    color: #2978C3;
}
.departments .map{
    margin-top: 40px;
    height: 330px;
}

.contacts-page-feedback{
    width: 760px;
    max-width: 100%;
    margin: 30px auto 0;
    padding: 30px;
    box-shadow: 4px 7px 26.8px 0px #0000001F;
    border-radius: 30px;
}
.contacts-page-feedback form{
    width: 480px;
    max-width: 100%;
    margin: 0 auto;
}
.contacts-page-feedback .form-title{
    font-size: 35px;
    font-weight: 700;
    margin-bottom: 20px;
    color: #000;
    line-height: 1.3;
}

@media(max-width: 991px){
    .departments .col{
        width: 100%;
    }
    .departments .col + .col{
        margin-top: 60px;
    }
    .contacts-page-feedback .form-title{
        font-size: 30px;
    }
}
@media(max-width: 429px){
    .departments .item-row,
    .requisites .item{
        font-size: 13px;
    }
    .contacts-page-feedback{
        padding: 20px;
        border-radius: 15px;
    }
    .contacts-page-feedback .form-title{
        font-size: 26px;
    }
}
/* /. contacts page */
dl{
    padding-left: 20px;
    margin-bottom: 30px;
}
dl dt{
    font-weight: 500;
    position: relative;
}
dl dd{
    margin-bottom: 15px;
}
dl.red-list dt{
    color: #E55B5B;
}
dl.red-list dt:before{
    content: "";
    width: 13px;
    height: 13px;
    background: url(../images/red-list-icon.svg);
    position: absolute;
    top: 6px;
    left: -20px;
}
ul.green-list{
    padding-left: 0;
}
.green-list li{
    padding-left: 20px;
    position: relative;
    list-style: none;
}
.green-list li:before{
    content: "";
    width: 13px;
    height: 13px;
    background: url(../images/green-list-icon.svg);
    position: absolute;
    top: 6px;
    left: 0;
}
.attention{
    width: 1040px;
    max-width: 100%;
    min-width: 108px;
    padding: 35px;
    margin: 30px auto;
    border-radius: 88px;
    background: #2978C2;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}
@media(max-width: 767px){
    .attention{
        border-radius: 15px;
        padding: 25px;
    }
}

/* category page */
#mse2_sort {
    display: block !important;
}
.asmc-container{
    display: flex;
    flex-wrap: wrap;
}
.asmc-container .aside{
    width: 285px;
}
.asmc-container .main-column{
    width: calc(100% - 285px);
    padding-left: 60px;
}

.aside-menu-title{
    height: 44px;
    border-radius: 50px;
    display: flex;
    align-items: center;
    color: #fff;
    background: #464646;
    margin-bottom: 15px;
    padding: 0 25px;
}
.aside-menu > ul > li{
    padding: 10px 10px 10px 20px;
    border-bottom: 1px dashed #e1e1e1;
    position: relative;
}
.aside-menu > ul > li.active > a{
    font-weight: 600;
}
.aside-menu ul ul li.active > a{
    color: #4EB7E4;
}
.aside-menu > ul > li.active:before{
    content: "";
    width: 7px;
    height: 7px;
    background: #4EB7E4;
    border-radius: 50%;
    position: absolute;
    left: 0;
    top: 16px;
}
.aside-menu a{
    line-height: 1.3;
    display: block;
    color: #000;
}
.aside-menu a:hover{
    color: #4EB7E4;
}
.aside-menu ul ul{
    padding: 10px 0 0 10px;
}
.aside-menu ul ul li + li{
    margin-top: 5px;
}

.catalog{
    display: flex;
    flex-wrap: wrap;
    margin-left: -10px;
    margin-right: -10px;
}
.catalog .col{
    width: 25%;
    padding-left: 10px;
    padding-right: 10px;
    margin-bottom: 20px;
}
@media(min-width:992px){
    .catalog.cols5 .col{
        width: 25%;
    }
}
@media(min-width:1200px){
    .catalog.cols5 .col{
        width: 20%;
    }
}
.catalog .item{
    height: 100%;
    background: #fff;
    padding: 15px 10px;
    box-shadow: 0px 4px 14.7px -1px #0000002E;
    border-radius: 12px;
    transition: all ease-out 300ms;
}
.catalog .item form{
    height: 100%;
}
.catalog .item .item-body{
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.catalog .item-img{
    height: 150px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.catalog .item-img img{
    max-height: 100%;
}
.catalog .item-title{
    font-weight: 500;
    font-size: 16px;
    line-height: 1.3;
    margin-bottom: 10px;
}
.catalog .item .property-list{
    font-size: 12px;
    line-height: 1.2;
    margin-bottom: 20px;
}
.property-list-row{
    margin-bottom: 7px;
    width: 100%;
    display: flex;
    align-items: flex-end;
}
.property-list-name{
    width: 100%;
    background: url(../images/dot.svg) 0 calc(100% - 4px) repeat-x;
    flex-grow: 0;
    padding-right: 4px;
    opacity: 0.8;
    white-space: nowrap;
    color: #737373;
}
.property-list-name span{
    background-color: #fff;
    box-shadow: -5px 0 0 #fff, 5px 0 0 #fff;
}
.property-list-value{
    width: 100%;
    display: inline-block;
    padding-left: 5px;
    flex-grow: 0;
    font-weight: 500;
    text-align: right;
    background: url(../images/dot.svg) 0 calc(100% - 4px) repeat-x;
}
.property-list-value span{
    background-color: #fff;
    box-shadow: -5px 0 0 #fff, 5px 0 0 #fff;
}
.catalog .item-price-row{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    min-height: 50px;
    margin-bottom: 10px;
}
.catalog .product-old-price {
    color: #AFAFAF;
    font-size: 16px;
    line-height: 1.2;
    padding-right: 10px;
    font-weight: 500;
    text-align: center;
}
.catalog .product-old-price span{
    text-decoration: line-through;
}
.catalog .product-price{
    font-size: 22px;
    line-height: 1.2;
    font-weight: 500;
}
.catalog .item .btn{
    position: relative;
    z-index: 10;
}
/* .catalog .item .btn:not(:hover){
    background: #fff;
    color: #808080;
    border-color: #808080;
} */
.catalog .item:hover{
    box-shadow: 0px 4px 14.7px -1px #0000006E;
}
.sort-block{
    margin-bottom: 20px;
}

.catalog-sidebar-filters{
    margin-top: 20px;
}
.filter-item{
    background: #F6F6F6;
    border-radius: 7px;
    margin-bottom: 5px;
    padding: 10px 20px;
}
.reset-filters-btn {
    margin-top: 8px;
    border: none;
    padding: 0;
    background: transparent;
    color: #F65454;
    display: inline-flex;
    align-items: center;
    transition: all ease-out 300ms;
    white-space: nowrap;
    font-size: 13px;
}
.filter-item-title {
    padding: 5px 0;
    position: relative;
    cursor: pointer;
    font-size: 14px;
}
.filter-item-title:after {
    content: "";
    background: url(../images/aside-filters-arrow-top.svg) 0 0 no-repeat;
    width: 14px;
    height: 8px;
    position: absolute;
    right: 0;
    top: 50%;
    margin-top: -4px;
    transform: rotate(0);
}
.filter-item .item-dropdown{
    display: none;
}
.filter-item.active .item-dropdown{
    display: block;
}
.filter-item.active .filter-item-title:after {
    transform: rotate(180deg);
}
.reset-filters-btn.hidden {
    display: none;
}

.filter-customcheck {
    position: relative;
    margin-bottom: 10px;
}
.filter-customcheck input[type=checkbox]{
    position: fixed;  
    top: -100000px;
}
.filter-customcheck input[type=checkbox] + label {
    position: relative;
    padding-left: 18px;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    cursor: pointer;
    display: inline-block;
    font-size: 14px;
}
.filter-customcheck input[type=checkbox] + label:before{
    background: url(../images/check-empty.svg) 0 0 no-repeat #fff;
    content: "";
    display: block;
    position: absolute;
    width: 12px;
    height: 12px;
    top: 5px;
    left: 0px;
}
.filter-customcheck input[type=checkbox]:checked + label:before{
    background: url(../images/checked.svg) 0 0 no-repeat #fff;
}
.filter-customcheck label:hover{
    color: #333;
}
.filter-item-wrapper{
    display: none;
}
.filter-item-wrapper.full{
    display: block;
}
.boolean-filter .filter-customcheck:first-of-type + .filter-customcheck{
    display: none !important;
}

.not-boolean-filter .filter-customcheck{
    display: none;
}
.not-boolean-filter .filter-customcheck-wrap > div:nth-of-type(1),
.not-boolean-filter .filter-customcheck-wrap > div:nth-of-type(2),
.not-boolean-filter .filter-customcheck-wrap > div:nth-of-type(3),
.not-boolean-filter .filter-customcheck-wrap > div:nth-of-type(4),
.not-boolean-filter .filter-customcheck-wrap > div:nth-of-type(5),
.not-boolean-filter .filter-customcheck-wrap > div:nth-of-type(6){
    display: block;
}
.not-boolean-filter.open .filter-customcheck-wrap > div{
    display: block;
}

.filter-more-btn {
    display: inline-block;
    position: relative;
    color: #2978c3;
    padding-left: 23px;
    cursor: pointer;
    transition: color ease-out 300ms;
    font-size: 14px;
}
.filter-more-btn:before{
    content:"";
    width: 22px;
    height: 22px;
    position: absolute;
    top: 1px;
    left: 0;
    background: url(../images/down-icon2.svg);
    transition: opacity ease-out 300ms;
}
.filter-more-btn:hover{
    color: #3E5168;
}

.filter-item-wrapper.open .filter-more-btn:after,
.filter-item-wrapper.open .filter-more-btn:before{
    transform: rotate(180deg);
}
.reset-filters-btn-wrapper{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.filters-result-btn {
    order: 1;
    margin-top: 20px;
}
.reset-filters-btn {
    order: 2;
}
.reset-filters-btn.hidden + .filters-result-btn {
    display: none;
}

#mse2_pagination .btn{
    margin-top: 10px;
}

.mse2_number_inputs {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.mse2_number_inputs .col {
    width: calc(50% - 2px);
}
.mse2_number_inputs .form-control{
    border-radius: 0;
    height: 30px;
    font-size: 14px;
    color: #000;
    text-align: center;
    border-color: #A6A6A6;
}

/* ui slider*/
.number_slider_wrapper{
    padding: 0 12px;
}
.catalog-sidebar-filters .ui-slider{
    border: none !important;
    height: 2px;
    background: #E9E9E9;
    margin-bottom: 20px;
    margin-top: 10px;
    width: 100%;
    margin: 5px auto 20px;
    padding: 0;
}
.catalog-sidebar-filters .ui-slider-range{
    background: #6d6d6d;
    border-radius: 0 !important;
}
.catalog-sidebar-filters .ui-slider-handle{
    width: 18px !important;
    height: 18px !important;
    margin-top: 0px !important;
    cursor: pointer !important;
}
.catalog-sidebar-filters .ui-slider-horizontal .ui-slider-handle {
    margin-left: -9px;
}
.catalog-sidebar-filters .ui-corner-all, 
.catalog-sidebar-filters.ui-corner-top, 
.catalog-sidebar-filters .ui-corner-right, 
.catalog-sidebar-filters .ui-corner-tr{
    border-radius: 0 !important;
}
.catalog-sidebar-filters .ui-slider-handle.ui-state-default.ui-corner-all {
    border-radius: 50% !important;
    background: #2978C3 !important;
    border: none;
    top: -8px;
    opacity: 1 !important;
}
/*./ ui slider*/

@media (min-width: 992px) {
    .reset-filters-btn-wrapper{
        display: block;
    }
    .filters-result-btn {
        display: none !important;
    }
}
@media(max-width: 1299px){
    .asmc-container .aside{
        width: 260px;
    }
    .asmc-container .main-column {
        width: calc(100% - 260px);
        padding-left: 30px;
    }
    .catalog .item-title{
        font-size: 14px;
    }
    .catalog .item-img{
        height: 11vw;
    }
}
@media(max-width: 1199px){
    .catalog .col{
        width: 33.3333%;
    }
    .catalog .item-img{
        height: 16vw;
    }
}

@media (max-width: 991px) {
    .asmc-container .aside{
        width: 100%;
    }
    .asmc-container .main-column {
        width: 100%;
        padding-left: 0;
    }
    .catalog-sidebar-inner {
        position: fixed;
        top: 80px;
        bottom: -100px;
        right: -320px;
        width: 320px;
        max-width: 100%;
        background-color: #fff;
        z-index: 600;
        padding: 10px 20px 100px;
        box-shadow: 0 0 15px rgba(0, 0, 0, 0.2);
        height: 100%;
    }
    .catalog-sidebar-scroll{
        height: 100%;
        overflow-y: auto;
    }
    .filters-open-btn{
        height: 36px;
        margin-bottom: 20px;
    }
    .filters-open-btn svg{
        margin-right: 7px;
    }
    .catalog-sidebar-inner-overlay {
        background: rgba(255, 255, 255, 0.8);
        position: fixed;
        top: 46px;
        bottom: -100px;
        left: 0;
        right: 0;
        z-index: -1;
        opacity: 0;
        transition: opacity ease-out 300ms;
    }
    .catalog-sidebar-inner.active + .catalog-sidebar-inner-overlay {
        z-index: 500;
        opacity: 1;
    }
    .catalog-sidebar-inner.active {
        transform: translateX(-320px);
        transition-property: transform;
        transition-duration: .2s;
    }
    .overflow_hidden {
        height: 100%;
        overflow: hidden;
    }
    .aside-menu-title{
        display: none;
    }
    .catalog{
        margin-left: -5px;
        margin-right: -5px;
    }
    .catalog .col{
        padding-left: 5px;
        padding-right: 5px;
        margin-bottom: 10px;
    }
}

@media (max-width: 767px){
    .catalog .col{
        width: 50%;
    }
    .catalog .item-img{
        height: 24vw;
    }
    .catalog .item{
        padding: 2.5vw;
    }
    .catalog .item-title{
        font-size: 2.5vw;
    }
    .catalog .product-price{
        font-size: 18px;
    }
    .catalog .product-old-price{
        font-size: 14px;
    }
}
@media (max-width: 429px){
    .catalog .col{
        width: 100%;
    }
    .catalog .item-img{
        height: 50vw;
    }
    .catalog .item{
        padding: 5vw;
    }
    .catalog .item-title{
        font-size: 5vw;
    }
    .catalog .product-price{
        font-size: 18px;
    }
    .catalog .product-old-price{
        font-size: 14px;
    }
    .filters-open-btn{
        width: 100%;
    }
}
/* /. category page */


/* product page */
.product-page-fs{
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 40px;
}
.product-page-fs .left-part{
    width: 450px;
}
.product-page-fs .right-part{
    width: calc(100% - 450px);
    padding-left: 40px;
}
.product-gallery {
    width: 100%;
}
.product-carousel-wrapper {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
}
.product-carousel-inner {
    width: 100%;
}
.product-thumb-carousel-wrapper {
    display: flex;
    align-items: center;
}
.product-thumb-carousel-inner {
    width: 100%;
}
.product-thumb-carousel {
    margin-left: -3px;
    margin-right: -5px;
    position: relative;
    bottom: -2px;
}
.product-thumb-carousel .item {
    padding: 15px 5px 2px;
    cursor: pointer;
    width: 25%;
}

.product-carousel > div:not(:first-of-type),
.product-thumb-carousel > div:not(:first-of-type){
    display: none;
}

.product-page-fs h1{
    margin-bottom: 10px;
}
.product-page-introtext{
    margin-bottom: 10px;
}
.product-page-fs .avl-status{
    margin-bottom: 20px;
    position: relative;
    padding-left: 15px;
    font-size: 14px;
}
.product-page-fs .avl-status:before{
    content: "";
    width: 6px;
    height: 6px;
    border-radius: 50%;
    position: absolute;
    left: 0;
    top: 9px;
}
.avl-status-true{
    color: #3E8A00;
}
.avl-status-true:before{
    background: #3E8A00;
}
.avl-status-false{
    color: #E55B5B;
}
.avl-status-false:before{
    background: #E55B5B;
}
.product-page-fs .property-list{
    font-size: 14px;
    margin-bottom: 30px;
}
.product-page-fs .property-list-row{
    margin-bottom: 5px;
}
.product-page-description{
    margin-bottom: 30px;
    position: relative;
    padding-left: 20px;
    font-size: 14px;
}
.product-page-description:before{
    content: "";
    background: url(../images/info-icon.svg);
    width: 14px;
    height: 14px;
    position: absolute;
    left: 0;
    top: 4px;
}
.product-page-application-block{
    min-height: 68px;
    background: #2978C3;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    padding: 10px 15px;
    border-radius: 78px;
}
.product-page-application-block .col1{
    width: calc(100% - 240px);
    padding-right: 15px;
    text-align: center;
}
.product-page-application-block .col2{
    width: 240px;
    display: flex;
    align-items: center;
    position: relative;
}
.product-page-application-block .col2:before{
    content: "";
    background: #F3F3F3;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 40%;
    border-radius: 27px 0 0 27px;
}
.item-counter {
    flex-shrink: 0;
    width: 105px;
    height: 40px;
    max-width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    background: #F3F3F3;
    border-radius: 27px;
    padding: 0 12px;
    position: relative;
    z-index: 1;
}
.item-counter .input-number{
    width: 32px;
    border: none;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    height: 100%;
    margin: 0;
    background: transparent;
}
.item-counter button{
    background: transparent;
    padding: 0;
    border: none;
    width: 19px;
    height: 19px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #000;
}
.product-page-application-block .cart-btn{
    height: 40px;
    background: #322D2D;
    width: 100%;
    position: relative;
    z-index: 1;
    font-size: 17px;
}
.product-page-application-block .cart-btn svg{
    margin-right: 5px;
    width: 21px;
    height: 21px;
}
.product-page-application-block .price-block{
    color: #fff;
    font-weight: 500;
    font-size: 35px;
    line-height: 1;
}
.product-page-application-block .old-price-block{
    display: inline-block;
    color: #fff;
    text-decoration: line-through;
    font-weight: 500;
    font-size: 18px;
    opacity: 0.9;
    line-height: 1;
}

.boxes{
    position: relative;
}
.box{
    position: fixed;
    left: 15px;
    right: 15px;
    top: -999999px;
    opacity: 0;
    z-index: -10;
}
.box.visible{
    left: 0;
    right: 0;
    top: 0;
    position: relative;
    z-index: 1;
    opacity: 1;
}

.product-page-tabs{
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 10px;
}
.product-page-tabs li{
    margin: 0 10px 10px 0;
    height: 44px;
    padding: 0 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50px;
    color: #404040;
    background: #D8D8D8;
    cursor: pointer;
    transition: all ease-out 300ms;
}
.product-page-tabs li.current,
.product-page-tabs li:hover{
    background: #2978C2;
    color: #fff;
}

.files-list{
    padding-left: 30px;
}
.files-list .item{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin-bottom: 12px;
    color: #333;
}
.files-list .item:hover{
    color: #2978C3;
}
.files-list .item-icon{
    width: 27px;
}
.files-list .item-title{
    width: calc(100% - 27px);
    padding-left: 12px;
}

@media(max-width: 1459px){
    .product-page-fs .left-part{
        width: 40%;
    }
    .product-page-fs .right-part {
        width: 60%;
        padding-left: 20px;
    }
    .product-page-application-block .price-block{
        font-size: 2.4vw;
    }
}
@media(max-width: 1159px){
    .product-page-application-block .price-block{
        font-size: 2.1vw;
    }
    .product-page-application-block .old-price-block{
        font-size: 1.4vw;
    }
    .product-page-application-block .cart-btn{
        font-size: 14px;
    }
    .product-page-application-block .cart-btn svg {
        width: 19px;
        height: 19px;
    }
    .item-counter{
        width: 94px;
    }
    .product-page-application-block .col1{
        width: calc(100% - 206px);
    }
    .product-page-application-block .col2{
        width: 206px;
    }
    .product-page-application-block {
        min-height: 58px;
        padding: 5px 10px;
    }
}
@media(max-width: 991px){
    .product-page-application-block .price-block{
        font-size: 3.5vw;
    }
    .product-page-application-block .old-price-block{
        font-size: 1.8vw;
    }
}
@media(max-width: 767px){
    .product-page-fs .left-part{
        width: 100%;
        margin-bottom: 30px;
    }
    .product-page-fs .right-part{
        width: 100%;
        padding-left: 0;
    }
    .product-page-application-block .price-block{
        font-size: 4.6vw;
    }
    .product-page-application-block .old-price-block{
        font-size: 2.36vw;
    }
    .product-page-tabs li{
        font-size: 13px;
    }
    .product-page-application-block .col1{
        width: calc(100% - 220px);
    }
    .product-page-application-block .col2{
        width: 220px;
    }
    .files-list{
        padding-left: 10px;
    }
}
@media(max-width: 429px){
    .product-page-application-block .col1{
        width: 100%;
        padding-right: 0;
        margin-bottom: 15px;
    }
    .product-page-application-block .col2{
        margin-left: auto;
        margin-right: auto;
        width: 240px;
    }
    .product-page-application-block{
        border-radius: 10px;
        padding: 15px;
    }
    .product-page-application-block .price-block{
        font-size: 8vw;
    }
    .product-page-application-block .old-price-block{
        font-size: 4vw;
    }
    .product-page-tabs li{
        margin-right: 0;
        width: 100%;
        font-size: 16px;
    }
}
/* /. product page */


/****** cart page*/

.cart-section .cart-body{
    margin-bottom: 20px;
}

.cart-section .cart-item{
    border-bottom: 1px solid #E5E5E5;
    padding: 30px 0;
}
.cart-section .cart-item:first-child{
    border-top: 1px solid #E5E5E5;
}
.cart-section .cart-item-inner{
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap:wrap;
    padding-right: 30px;
    position: relative;
}

.cart-section .remove{
    position: absolute;
    right: 0;
    top: calc(50% - 10px);
}
.cart-section .remove button{
    cursor: pointer;
    color: #6C6C6D;
    padding: 0;
    border: 0;
    background: transparent;
    margin-top: -3px;
}
.cart-section .remove svg{
    width: 26px;
    height: 26px;
    transition: all 200ms ease-out;
}
.cart-section .remove:hover svg{
    transform: rotate(180deg);
}
.cart-section .left-part{
    width: 145px;
    align-self: flex-start;
}
.cart-section .left-part a{
    display: block;
}
.cart-section .left-part a:hover{
    opacity:0.8;
}
.cart-section .right-part{
    width: 400px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.cart-section .center-part{
    width: calc(100% - 545px);
    padding: 0 30px;
}
.cart-section .item-article{
    font-size: 12px;
    font-weight: 300;
    color: #626262;
    margin-bottom: 10px;
}
.item-product-information-option span{
    font-weight: 600;
}

.cart-section .item-counter-inner,
.cart-section .item-counter{
    width: 160px;
    height: 54px;
    max-width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    margin: 0 20px;
    background: #FAFAFA;
    border: 1px solid #ECECEC;
    border-radius: 2px;
    padding: 0 15px;
}
.cart-section .item-counter-inner, 
.cart-section  .item-counter{
    width: auto;
    height: 42px;
    background: #fff;
    border-radius: 27px;
}
.product-page-price-wrapper .item-counter{
    width: 130px;
    margin-left: 0;
    margin-right: 0;
    padding: 0 10px;
}
.cart-section .item-counter-inner .input-number, 
.cart-section .item-counter .input-number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 26px;
    width: 50px;
    padding: 0 5px;
    text-align: center;
    font-size: 12px;
    line-height: 12px;
    border: none;
    margin: 0;
}
.cart-section .item-counter-inner button,
.cart-section .item-counter button{
    width: 24px;
    height: 24px;
    padding: 0;
    border: none;
    background: transparent;
    transition: all 200ms ease-out;
    display: flex;
    align-items: center;
    justify-content: center;
    position: static;
}
.cart-section .item-counter-inner button svg,
.cart-section .item-counter button svg{
    width: 12px;
    height: 12px;
}
.cart-section .item-counter-inner button path,
.cart-section .item-counter button path{
    stroke: #000;
}
.cart-section .count-input-wrapper{
    position: relative;
    display: inline-block;
}
.cart-section .count-input-wrapper:before{
    content:"";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
}
.cart-section .technikal-btn{
    opacity: 0;
    visibility: hidden;
    height: 0;
    width: 0;
    position: absolute;
}
.cart-section .item-price-title,
.cart-section .item-cost-title{
    font-weight: 500;
    color: #747474;
}
.cart-section .item-cost,
.cart-section .item-price{
    font-size: 23px;
    font-weight: 600;
}
.cart-section .item-product-information-title{
    margin-bottom: 15px;
}
.cart-section .item-product-information-title a{
    color: #000;
    font-size: 16px;
    font-weight: 500;
}
.cart-section .item-product-information-title a:hover{
    text-decoration: underline;
}
.cart-section .property-list{
    width: 370px;
    max-width: 100%;
}
.cart-section .property-list-row{
    margin-bottom: 3px;
    font-size: 14px;
}
.cart-section .cart-total{
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 30px;
}
.cart-section .cart-total .col1 a{
    font-size: 17px;
    display: inline-flex;
    align-items: center;
    color: #000;
}
.cart-section .cart-total .col1 a svg{
    margin-right: 5px;
    position: relative;
    top: -1px;
    
}
.cart-section .cart-total .col1 a svg path{
    stroke: #2978C3;
}
.cart-section .cart-total .col1 a:hover{
    color: #2978C3;
}
.cart-section .cart-total .col2{
    text-align: right;
}
.cart-section .cart-total .item{
    font-size: 40px;
    line-height: 1.2;
    font-weight: 600;
    display: inline-flex;
    align-items: center;
}
.cart-section .cart-total .item-title{
    font-size: 20px;
    font-weight: 700;
    margin-right: 15px;
}
.cart-section .cart-total .item-value{
    margin-left: 10px;
}





/* alerts */
.alert {
    padding: 15px;
    border: 1px solid transparent;
    border-radius: 4px;
}
.alert-success {
    background-color: #dff0d8;
    border-color: #d6e9c6;
    color: #244640;
}

.alert-success hr {
    border-top-color: #c9e2b3
}

.alert-success .alert-link {
    color: #356635
}

.alert-info {
    background-color: #d9edf7;
    border-color: #bce8f1;
    color: #3a87ad
}

.alert-info hr {
    border-top-color: #a6e1ec
}

.alert-info .alert-link {
    color: #2d6987
}

.alert-warning {
    background-color: #fcf8e3;
    border-color: #faebcc;
    color: #c09853
}

.alert-warning hr {
    border-top-color: #f7e1b5
}

.alert-warning .alert-link {
    color: #a47e3c
}

.alert-danger {
    background-color: #f2dede;
    border-color: #ebccd1;
    color: #b94a48
}

.alert-danger hr {
    border-top-color: #e4b9c0
}

.alert-danger .alert-link {
    color: #953b39
}
/* /.alerts */
.cart-item .item-colors .item-title{
    font-size: 13px;
    color: #999999;
}
.cart-item.cart-item-header{
    padding-bottom: 10px;
}
.cart-item.cart-item-header *{
    color: #999999;
    font-size: 13px;
    font-weight: normal;
}
.cart-item.cart-item-header .item-price{
    width: calc(50% - 100px);
    text-align: right;
}
.cart-item.cart-item-header .item-cost{
    width: calc(50% - 100px);
    text-align: left;
}
.cart-item.cart-item-header .count{
    width: 160px;
    margin: 0 20px;
    text-align: center;
}

@media(max-width:991px){
    .cart-item.cart-item-header{
        display: none;
    }
    .cart-section .center-part{
        padding: 0 20px;
        width: calc(100% - 320px);
    }
    .item-product-information-title a{
        font-size: 13px;
    }
    .cart-section .item-counter-inner {
        height: 44px;
        margin: 0 15px 0 0;
        width: 100px;
        padding: 0 5px;
    }
    .cart-section .item-counter-inner button{
        width: 20px;
    }
    .cart-section .item-counter-inner .input-number{
        width: 40px;
        font-size: 14px;
        padding: 0;
    }
    .cart-section .item-cost, 
    .cart-section .item-price{
        font-size: 18px;
    }
    .cart-section .right-part{
        width: 320px;
        justify-content: flex-start;
    }
    .cart-section .cart-total{
        flex-wrap: wrap;
        justify-content: flex-start;
    }
    .cart-section .cart-total .col1{
        width: 100%;
        order: 2;
    }
    .cart-section .cart-total .col2{
        width: 100%;
        order: 1;
        text-align: left;
        margin-bottom: 20px;
    }
    .cart-section .cart-item-inner{
        justify-content: flex-start;
    }
    .cart-section .left-part {
        width: 320px;
        max-width: 100%;
        margin-bottom: 15px;
        padding-right: 25px;
    }
    .cart-section .remove{
        top: 3px;
        right: -5px;
    }
}
@media(max-width:767px){
    
    .cart-section .cart-item{
        padding: 20px 0 20px 0;
    }
    .cart-section .right-part{
        width: 100%;
        margin-top: 20px;
        max-width:100%;
        justify-content: flex-start;
    }
    .cart-section .center-part{
        padding: 15px 0 0;
        width: 100%;
    }
    .cart-section .cart-total {
        padding: 5px 0;
        font-size: 14px;
        justify-content: flex-start;
    }
    .ms2_total_count_wrapper {
        margin: 0 4px;
    }
    .ms2_total_cost_wrapper {
        font-size: 16px;
    }
    .cart-section .item-product-information-title a{
        display: inline-block;
        line-height: 1.3;
        margin-bottom: 5px;
    }
    .cart-section .item-article{
        font-size: 13px;
    }
    .cart-section .right-part{
        width: 100%;
    }
    .cart-section .item-cost, 
    .cart-section .item-price{
        font-size: 16px;
    }
}

@media(max-width:499px){
    .cart-section .cart-item-inner{
        position: static;
        padding-right: 0;
    }
    .cart-section .remove{
        top: 20px;
    }
}
/****** /. cart page*/

/* order */
.order-section .btn.disabled, .order-section .btn.disabled:hover {
    background: #dadada !important;
    border-color: #dadada !important;
    color: #959595 !important;
    cursor: default;
    filter: none;
}

.form-order-container{
    width: 660px;
    max-width: 100%;
    margin: auto;
}
#msOrder {
    width: 680px;
    max-width: 100%;
    margin: auto;
    padding: 30px 40px 10px;
    background: #F2F2F2;
    border-radius: 30px;
    margin-bottom: 30px;
}
#msOrder .form-control{
    height: 54px;
}
.orderbutton-wrapper .btn{
    width: 280px;
    height: 60px;
    max-width: 100%;
    font-size: 22px;
    font-weight: 600;
    box-shadow: 0px 15px 20px -15px #000000;
}
.order-section .simple-agreement{
    opacity: 0.3;
}
@media(max-width: 499px){
    #msOrder{
        padding: 25px;
    }
    .agreement label{
        font-size: 12px;
    }
    .agreement input+label:before{
        top: 0;
    }
    .cart-section .cart-total .item{
        font-size: 30px;
    }
    .cart-section .cart-total .item-title {
        font-size: 14px;
        font-weight: 500;
        margin-right: 5px;
    }
}
@media(max-width: 399px){
    #msOrder{
        padding: 15px;
    }
    .agreement label{
        font-size: 10px;
    }
    .cart-section .cart-total .item{
        font-size: 24px;
    }
}


.cart-page-header{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 30px;
}
.cart-page-header h1{
    margin-bottom: 0;
}
/* /. order */













