
.clearfix:before, .clearfix:after {
    content: '';
    display: table;
}
.clearfix:after {
    clear: both;
}

*::-webkit-input-placeholder {
	color: #fff;
	opacity: 1;
}

*:-moz-placeholder {
	color: #fff;
	opacity: 1;
}
*::-moz-placeholder {
	color: #fff;
	opacity: 1;
}
*:-ms-input-placeholder {
	color: #fff;
	opacity: 1;
}

*{
    box-sizing: border-box;
    -moz-box-sizing: border-box;
}

body {
    width: 100%;
    font-size: 16px;
    font-family: 'Onest', sans-serif;
    line-height: 1.3;
    position: relative;
}

.container{
    width: 100%;
    max-width: 1780px;
    min-width: 320px;
    padding-left: 15px;
    padding-right: 15px;
    margin: 0 auto;
    position: relative;
    z-index: 3;
}

.hidden {
  display: none !important;
}


input[type='text'],
input[type='password'],
input[type='search']{
    width: 100%;
    height: 55px;
    padding: 0 20px;
    color: #fff;
    font-family: 'Onest', sans-serif;
    font-weight: 500;
    font-size: 16px;
    background: rgba(217, 217, 217, 0.3);
    border: none;
    border-radius: 4px;
    transition: .3s;
}

textarea{    
    width: 100%;
    height: 120px;
    padding: 20px;
    color: #fff;
    font-family: 'Onest', sans-serif;
    font-weight: 500;
    font-size: 16px;
    background: rgba(217, 217, 217, 0.3);
    border: none;
    border-radius: 4px;
    resize: none;
}

input:focus{
    outline: none;
}

textarea:focus{
    outline: none;
}

.feedback{
    position: relative;
}

.feedback input{
    padding-right: 70px;
}

.feedback__btn{
    width: 74px;
    height: 55px;
    background: #cd2c2c url(../img/footer/arrow.svg) center no-repeat!important;
    border-radius: 4px;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 3;
}

.cols{
    display: flex;
    
}

.col{
    
}

.btn{
    display: inline-block;
    border: medium none;
    background: transparent;
    cursor: pointer;
    transition: .3s;
    font-family: 'Onest', sans-serif;
}

.btn-red{
    min-height: 54px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 3px 24px;
    background: #cd2c2c;
    border-radius: 4px;
    font-size: 14px;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: #fff;
    text-align: center;
}

.btn-red:active,
.btn-red:hover{
    opacity: .888;
}

.btn-border-white{
    min-height: 54px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 3px 24px;
    background: transparent;
    border: 1px solid #fff;
    border-radius: 4px;
    font-size: 14px;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: #fff;
    text-align: center;
}

.btn-border-white:active,
.btn-border-white:hover{
    opacity: .888;
}

.btn-border-red{
    min-height: 54px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 3px 24px;
    background: transparent;
    border: 1px solid #cd2c2c;
    border-radius: 4px;
    font-size: 14px;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: #cd2c2c;
    text-align: center;
}

.btn-border-red:active,
.btn-border-red:hover{
    opacity: .888;
}

button:focus{
    outline: none;
}

.slick-dots{
    position: absolute;
    text-align: center;
    bottom: 25px;    
    width: 100%;
    margin: 0 auto !important;
    padding: 0 !important;
}

.slick-dots li{
    width: auto;
    height: auto;
    margin: 0 6px!important;
    padding: 0!important;
}

.slick-dots li:before{
    display: none;
}

.slick-dots li button{
    width: 15px;
    height: 15px;
    padding: 0;
    overflow: hidden;
    border-radius: 50%;
    background-color: transparent;
    border: 1px solid #00728A;
    opacity: 1;
    text-indent: -9999px;
    transition: .3s;
}

.slick-dots li.slick-active button{
    background-color: #00728A;
}

.slick-prev, 
.slick-next{
    width: 65px;
    height: 65px;
    z-index: 9;
    top: 50%;
    transform: translateY(-50%);
    transition: .3s;
    border-radius: 0;
    background-position: center !important;
    background-color: transparent !important;
    background-repeat: no-repeat !important;
}

.slick-prev:before,
.slick-next:before{
    content: none;
    
}

.slick-prev{
    left: 0;
    background-image: url(../img/prev.svg)!important;
}

.slick-prev:hover{
    opacity: .8;
}

.slick-next{
    right: 0;
    background-image: url(../img/next.svg)!important;

}

.slick-next:hover{
    opacity: .8;
}

.slick-dotted.slick-slider{
    margin-bottom: 0;
}

.section{
    padding-top: 100px;
    padding-bottom: 100px;
    position: relative;
    z-index: 1;
}

.section.gray{
    background: #f6f6f6;
}

.section-dark{
    background: #171C24 url(../img/reviews/section-dark.jpg) right center no-repeat;
    background-size: cover;
    background-attachment: fixed;
}

.section-parallax{

}

.bg-1{
    width: 363px;
    height: 767px;
    background: url(../img/bg_1.png) center no-repeat;
    background-size: contain;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
    will-change: transform;
}

.section .bg-2{
    width: 467px;
    height: 516px;
    background: url(../img/bg_2.png) center no-repeat;
    background-size: contain;
    position: absolute;
    top: 50px;
    right: 0;
    z-index: 1;
    will-change: transform;
}

.overflow-hidden{
    overflow: hidden;
}

.z-index-3{
    position: relative;
    z-index: 3!important;
}

.title-block{
    margin-bottom: 50px;
    font-family: 'Viaoda Libre';
    font-weight: 400;
    font-size: 60px;
    line-height: 1.08333;
    text-transform: uppercase;
    color: #131718;
}

.title-block span{
    color: #cd2c2c;
}

.title-block.white{
    color: #fff;
}

.flex-bot{
    display: flex;
    justify-content: center;
    padding-top: 45px;
}

.flex-bot .btn{
    padding-left: 35px;
    padding-right: 35px;
}

.two-cols{
    display: flex;
    flex-wrap: wrap;
}

.two-cols__left{
    width: 310px;
    flex-shrink: 0;
    padding-right: 30px;
}

.two-cols__right{
    width: calc(100% - 310px);
}

.b-head{
    align-items: flex-end;
    justify-content: space-between;
    column-gap: 28px;
    margin-bottom: 50px;
}

.b-head .title-block{
    margin-bottom: 0;
}

/**HEADER**/
.header{
    width: 100%;
    display: block;
    padding-top: 20px;
    padding-bottom: 20px;
    background: #121617;
    position: relative;
    z-index: 8;
}

.header-2{
    background: #fff;
}

.header__slogan{
    font-weight: 400;
    font-size: 13px;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: #fff;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.header__slogan.black{
    color: #161b22;
}

.header .cols{
    align-items: center;
    justify-content: space-between;
    column-gap: 15px;
    position: relative;
    z-index: 1;
}

.header .logo img{
    width: 219px;
    display: block;
}

.header .items{
    display: flex;
    align-items: center;
    column-gap: 40px;
}

.header__phone{
    font-size: 14px;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: #fff;
}

.header__phone.black{
    color: #161b22;
}

.header__phone a{
    color: inherit;
}

.burger{
    width: 32px;
    height: 22px;
    background: url(../img/header/burger.svg) center no-repeat;
    cursor: pointer;
}

.burger.black{
    background-image: url(../img/header/burger-2.svg);
}

.menu-mob{
    width: 100%;
    position: fixed;
    top: 0;
    height: 100%;
    padding: 55px 15px 25px;
    overflow: auto;
    background: linear-gradient(180deg, #121617 0%, #1c2335 100%);
    z-index: 99;
    display: none;
}

.menu-close{
    width: 28px;
    height: 28px;
    display: block;
    position: absolute;
    background: transparent url(../img/header/close.svg) center no-repeat;
    background-size: contain;
    top: 15px;
    right: 15px;
    z-index: 2;
}

.menu-mob__item{
    display: flex;
    justify-content: center;
    margin-top: 35px;
}

.menu-mob .logo{
    display: flex;
    justify-content: center;
    margin-bottom: 35px;
}

.menu-mob .logo img{
    width: 200px;
    display: block;
}

.nav{
    list-style: none;
    text-align: center;
}

.nav li{
    margin-bottom: 20px;
}

.nav li:last-child{
    margin-bottom: 0;
}

.nav li a{
    display: block;
    font-weight: 500;
    font-size: 18px;
    color: #fff;
    transition: .3s;
}

.nav li a:hover{
    color: #CD2C2C;
}

.menu-mob .header__phone{
    font-size: 20px;
}

/**INTRO**/
.intro{
    width: 100%;
    display: block;
    background: linear-gradient(180deg, #121617 0%, #1c2335 100%);
    position: relative;
    z-index: 3;
}

.intro .in{
    height: 712px;
    padding-top: 40px;
    padding-bottom: 48px;
}

.intro .center{
    height: 520px;
    display: flex;
    flex-wrap: wrap;
    align-content: space-between;
}

.intro .top{
    width: 100%;
    position: relative;
    z-index: 3;
}

.intro .bottom{
    width: 100%;
    position: relative;
    z-index: 3;
}

.intro .title{
    margin-bottom: 20px;
    font-family: 'Viaoda Libre';
    font-weight: 400;
    font-size: 60px;
    line-height: 1.08333;
    text-transform: uppercase;
    text-align: center;
    color: #fff;
}

.intro .sub{
    font-family: 'Viaoda Libre';
    font-weight: 400;
    font-size: 120px;
    text-transform: uppercase;
    color: #fff;
    text-align: center;
    line-height: 1;
}

.intro .pic{
    width: 100%;
    max-width: 806px;
    height: 486px;
    margin: 0 auto;
    position: absolute;
    top: 60px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1;

}

.intro .pic__1{
    width: 239px;
    display: block;
    box-shadow: 2px 1px 3px 0 rgba(0, 0, 0, 0.06), 7px 4px 7px 0 rgba(0, 0, 0, 0.11), 18px 9px 13px 0 rgba(0, 0, 0, 0.14), 34px 17px 25px 0 rgba(0, 0, 0, 0.16), 58px 29px 47px 0 rgba(0, 0, 0, 0.2), 89px 45px 80px 0 rgba(0, 0, 0, 0.27);
    position: absolute;
    top: 96px;
    left: 0;
    z-index: 2;

}

.intro .pic__2{
    width: 433px;
    display: block;
    box-shadow: -1px 1px 3px 0 rgba(0, 0, 0, 0.05), -7px 5px 7px 0 rgba(0, 0, 0, 0.09), -16px 12px 13px 0 rgba(0, 0, 0, 0.11), -31px 23px 25px 0 rgba(0, 0, 0, 0.13), -52px 39px 47px 0 rgba(0, 0, 0, 0.17), -80px 60px 80px 0 rgba(0, 0, 0, 0.22);
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1;
}

.intro .pic__3{
    width: 239px;
    display: block;
    box-shadow: -1px 1px 3px 0 rgba(0, 0, 0, 0.05), -7px 5px 7px 0 rgba(0, 0, 0, 0.09), -16px 12px 13px 0 rgba(0, 0, 0, 0.11), -31px 23px 25px 0 rgba(0, 0, 0, 0.13), -52px 39px 47px 0 rgba(0, 0, 0, 0.17), -80px 60px 80px 0 rgba(0, 0, 0, 0.22);
    position: absolute;
    bottom: 32px;
    right: 0;
    z-index: 3;
}

.intro .chisel{
    width: 100%;
    max-width: 566px;
    padding: 55px 80px;
    background: #cd2c2c;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
}

.intro .chisel p{
    font-size: 18px;
    color: #fff;
}

.intro__btn{
    padding-left: 47px!important;
    padding-right: 47px!important;
}

/**CONTENT**/
.content{
    width: 100%;
    display: block;        
    position: relative;
    z-index: 1;
}

.content__head{
    padding-top: 60px;
    padding-bottom: 65px;
    background: linear-gradient(180deg, #121617 0%, #1c2335 100%);
}

.content__head.white{
    background: #fff;
}

.content__head.gray{
    background: #f9f9f9;
}

.content__section{
    padding-top: 100px;
}

.content__head .title{
    font-family: 'Viaoda Libre';
    font-weight: 400;
    font-size: 120px;
    text-transform: uppercase;
    text-align: center;
    color: #fff;
    line-height: 1;
}

.content__head .title.black{
    color: #161b22;
}

.breadcrumbs{
    margin-bottom: 30px;
}

.breadcrumbs ul{
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-bottom: 55px;
}

.breadcrumbs ul li{
    padding-right: 20px;
    position: relative;
    font-size: 14px;
    color: #fff;
}

.breadcrumbs.black ul li{
    color: #161b22;
}

.breadcrumbs ul li:last-child{
    padding-right: 0;
}

.breadcrumbs ul li:before{
    content: "/";
    color: #fff;
    position: absolute;
    top: 50%;
    right: 6px;
    transform: translateY(-50%);
}

.breadcrumbs.black ul li:before{
    color: #161b22;
}

.breadcrumbs ul li:last-child:before{
    content: none;
}

.breadcrumbs ul li a{
    display: block;
    color: #fff;
}

.breadcrumbs.black ul li a{
    color: #161b22;
}

.content__body{
    padding-top: 35px;
    padding-bottom: 100px;
    position: relative;
    z-index: 1;
}

.content__body.gray{
    background: #f9f9f9;
}

.content__body.dark{
    background: linear-gradient(180deg, #121617 0%, #1c2335 100%);
}

.sorting{
    display: flex;
    justify-content: space-between;
    column-gap: 28px;
    padding-bottom: 35px;
}

.sorting__col{

}

.sorting__items{
    display: flex;
    column-gap: 24px;
}

.sorting-1{
    position: relative;
}

.sorting-1 i{
    width: 32px;
    height: 32px;
    position: absolute;
    top: 50%;
    left: 15px;
    transform: translateY(-50%);
    z-index: 9999999;
}

.i-sort-1{
    background: url(../img/icons/sort-1.svg) center no-repeat;
}

.i-sort-2{
    background: url(../img/icons/sort-2.svg) center no-repeat;
}

.i-sort-3{
    background: url(../img/icons/sort-3.svg) center no-repeat;
}

.i-sort-4{
    background: url(../img/icons/sort-4.svg) center no-repeat;
}

.i-sort-5{
    background: url(../img/icons/sort-5.svg) center no-repeat;
}

.sorting-2{
    display: flex;
    align-items: center;
}

.sorting-2 i{
    width: 14px;
    height: 18px;
    display: block;
    flex-shrink: 0;
    margin-right: 10px;
    background: url(../img/icons/sort.svg) center no-repeat;
}

.select-wrap-1{
    width: 222px;
}

.select-wrap-2{
    width: 289px;
    flex-shrink: 0;
}

.select2-container{
    height: 56px;
    display: block;
    margin-bottom: 0px;
    z-index: 99999;
}

.select2-container--default .select2-selection--single .select2-selection__rendered{
    height: 100%;
    padding-left: 16px;
    padding-right: 28px;
    margin-right: 0;
    color: #000;
    font-weight: 400;
    font-size: 16px;
    line-height: 56px;
}

.select2-container--default .select2-selection--single .select2-selection__placeholder{
    color: #000;
}

.sorting-1 .select2-container--default .select2-selection--single .select2-selection__rendered{
    padding-left: 56px;
}

.select2-container--default .select2-selection--single,
.select2-container--default .select2-selection--multiple{
    height: 100%;
    border-radius: 4px;
    background-color: #fff;
    border: 1px solid #e5e7eb;
    transition: .3s;
}

.select2-container--default.select2-container--open.select2-container--below .select2-selection--single,
.select2-container--default.select2-container--open.select2-container--below .select2-selection--multiple{
    background: #fff;
    color: #000;
    box-shadow: none;
}

.select2-container--default.select2-container--focus .select2-selection--multiple{
    background: #fff;
    color: #000;
    box-shadow: none;
    border: inherit;
}

.select2-container--default .select2-selection--single .select2-selection__arrow{
    width: 8px;
    height: 4px;
    background-image: url(../img/icons/down.svg);
    background-repeat: no-repeat;
    top: 52%;
    transform: translateY(-50%);
    right: 14px;
}

.sorting-1 .select2-container--default .select2-selection--single .select2-selection__arrow{
    width: 10px;
    height: 19px;
    background-image: url(../img/icons/arrow_down.svg);
}

.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow{
    transform: translateY(-50%) rotate(180deg);
}

.select2-container--default .select2-selection--single .select2-selection__arrow b{
    border: none;
    height: 0;
    left: 50%;
    margin-left: -4px;
    margin-top: -3px;
    position: absolute;
    top: 50%;
    width: 0;
    display: none;
}

.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b{
    border: none;
}

.select2-dropdown{
    padding: 8px 0;
    border: none;
    border-radius: 4px!important;
    background: #fff;
    box-shadow: 0px 4px 29px rgba(0, 0, 0, 0.15)
}


.select2-search--dropdown{
    padding: 0;
}

.select2-container--default .select2-results__option[aria-selected=true],
.select2-container--default .select2-results__option--highlighted[aria-selected]{
    color: #cd2c2c!important;
    background-color: transparent!important;
}

.select2-results__option{
    padding: 7px 15px 7px 25px;
    color: #000;
    font-size: 16px;
}

.select2-results__option:hover{
    color: #cd2c2c!important;
    background-color: transparent!important;
}

.select2-container--default .select2-results__option[aria-selected=true]:hover{
    color: #cd2c2c;
}

.select2-container--default .select2-selection--multiple .select2-selection__rendered{
    padding: 0 13px;
}

.select2-container .select2-search--inline .select2-search__field{
    margin-top: 0;
}

.type{
    display: flex;
    flex-wrap: wrap;
    column-gap: 70px;
    padding-bottom: 28px;
}

.type__item{
    margin-bottom: 20px;
}

.type__item a{
    display: flex;
    align-items: center;
    padding: 18px 0;
    font-weight: 600;
    font-size: 16px;
    color: #000;
    position: relative;
}

.type__item a:before{
    content: "";
    width: 80px;
    height: 80px;
    background: #cd2c2c;
    border-radius: 100%;
    position: absolute;
    top: 50%;
    left: -40px;
    z-index: 1;
    transform: translateY(-50%);
    opacity: 0;
    pointer-events: none;
}

.type__item.active a:before{
    opacity: 1;
}

.type__item i{
    width: 40px;
    height: 40px;
    display: block;
    flex-shrink: 0;
    margin-right: 6px;
    position: relative;
    z-index: 3;
}

.type__item.active i{
    filter: brightness(0) invert(100%);
}

.type__item .i_1{
    background: url(../img/icons/type_1.svg) center no-repeat;
}

.type__item .i_2{
    background: url(../img/icons/type_2.svg) center no-repeat;
}

.type__item .i_3{
    background: url(../img/icons/type_3.svg) center no-repeat;
}

.type__item .i_4{
    background: url(../img/icons/type_4.svg) center no-repeat;
}

/**SERVICES**/
.services{
    position: relative;
    z-index: 1;
}   

.services.mob{
    display: none;
}

.services .cols{
    flex-wrap: wrap;
    margin: 0 -14px;
}

.services .col{
    width: 33.33%;
    padding: 0 14px;
}

.services .item{
    position: relative;
    margin-bottom: 28px;
}

.services .item .in{
    height: 258px;
    display: flex;
    justify-content: space-between;
    padding: 25px;
    background: #fff;
    border-top: 1px solid #9d9d9d;
    border-left: 1px solid #9d9d9d;
    border-right: 1px solid #9d9d9d;
    border-bottom: 8px solid #cd2c2c;
    position: relative;
    z-index: 1;
    transition: 1s;
}

.services .item .in:hover{
    transform: translate(55px, -56px);
    z-index: 3;
}

.services .item .in:before{
    content: "";
    width: 100%;
    height: 100%;
    background: radial-gradient(50% 50% at 62.24% 50%, #1a212f 0%, #131719 100%);
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    transition: .7s;
    opacity: 0;
}

.services .item .in:hover:before{
    opacity: 1;
    box-shadow: -4px 4px 6px 0 rgba(0, 0, 0, 0.03), -19px 17px 13px 0 rgba(0, 0, 0, 0.05), -46px 41px 27px 0 rgba(0, 0, 0, 0.06), -89px 79px 53px 0 rgba(0, 0, 0, 0.08), -149px 133px 97px 0 rgba(0, 0, 0, 0.1), -230px 205px 165px 0 rgba(0, 0, 0, 0.13);

}

.services .item.h-2 .in{
    height: 470px;
}

.services .item .left{
    display: flex;
    flex-wrap: wrap;
    align-content: space-between;
    flex-grow: 1;
    position: relative;
    z-index: 3;
}

.services .item .num{
    padding-left: 28px;
    font-family: 'Viaoda Libre';
    font-weight: 400;
    font-size: 60px;
    line-height: 1.08333;
    text-transform: uppercase;
    color: #cd2c2c;
    position: relative;
    z-index: 3;
    transition: .5s;
}

.services .item .in:hover .num{
    color: #fff;
}

.services .item .top{
    width: 100%;
}

.services .item .bottom{
    width: 100%;
}

.services .item .title{
    font-weight: 700;
    font-size: 24px;
    color: #131718;
    transition: .5s;
}

.services .item .in:hover .title{
    color: #fff;
}

.services .item .title a{
    color: inherit;
}

.services .item .arrow{
    width: 40px;
    height: 19px;
    background: url(../img/services/arrow.svg) center no-repeat;
    position: absolute;
    bottom: 35px;
    right: 25px;
    z-index: 3;
    transition: .5s;
    opacity: 0;
}

.services .item .in:hover .arrow{
    opacity: 1;
}

.services .item .pic{
    width: 146px;
}

.services .item .pic_2{
    width: 245px;
}

.services .item .pic img{
    width: 100%;
    display: block;
    border-radius: 8px;
}

/**ABOUT**/
.about{
    width: 100%;
    display: block;
    padding-top: 70px;
    background: linear-gradient(175deg, #121617 0%, #1c2232 100%);
    position: relative;
    z-index: 1;
    overflow: hidden;
}

.about:before{
    content: "";
    width: 100%;
    height: 130px;
    background: #cd2c2c;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 2;
}

.about .bg{
    width: 543px;
    height: 349px;
    background: url(../img/about/bg.png) center no-repeat;
    background-size: contain;
    position: absolute;
    bottom: 129px;
    left: 0;
    z-index: 1;
    will-change: transform;
}

.about .title-block{

}

.about .title-block div{
    padding-top: 10px;
    padding-left: 170px;
}

.about .bottom{
    display: flex;
    align-items: center;
    justify-content: flex-end;
    margin-top: -150px;
}

.about .left{
    width: 515px;
    flex-shrink: 0;
    padding-right: 75px;
}

.about p{
    margin-bottom: 20px;
    font-size: 16px;
    line-height: 1.5;
    color: #fff;
}

.about p span{
    color: #bbb;
}

.about .pic{
    width: 550px;
    flex-shrink: 0;
}

.about .pic img{
    width: 100%;
    display: block;
}

/**PRODUCTS**/
.products{

}

.products .items{
    display: flex;
    flex-wrap: wrap;
    margin:  0 -22px;
}

.products .item{
    width: 25%;
    padding: 0 22px;
    margin-bottom: 55px;
}

.products .item .in{

}

.products-2 .item .in{
    background: #fff;
    padding: 8px;
}

.products .item .top{
    margin-bottom: 16px;
    position: relative;
}

.products .item .pic{
    height: 280px;
    position: relative;
    z-index: 1;
}

.products .item .pic img{
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    border-radius: 4px;
}

.products-2 .item .pic img{
    border-radius: 60px;
}

.products .item .shild{
    padding: 8px 12px 6px;
    background: #fff;
    border-radius: 2px;
    font-size: 16px;
    color: #000;
    line-height: 1;
    white-space: nowrap;
    position: absolute;
    top: 20px;
    left: 20px;
    z-index: 3;
}

.products .item .shild_right{
    left: auto;
    right: 20px;
}

.products .item .title{
    min-height: 46px;
    margin-bottom: 10px;
    font-weight: 600;
    font-size: 18px;
    color: #000;
}

.products .item .title.white{
    color: #fff;
}

.products .item .title a{
    color: inherit;
    transition: .3s;
}

.products .item .title a:hover{
    color: #cd2c2c;
}

.products .item .bottom{
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.products .item .price{
    padding-right: 20px;
    font-weight: 600;
    font-size: 24px;
    color: #000;
}

.products .item .price.white{
    color: #fff;
}

.products .item .btn{
    padding-left: 35px;
    padding-right: 35px;
}

.products .item .chisel{
    margin-top: -8px;
    margin-bottom: 8px;
    padding: 16px;
    background: #fff;
    border-radius: 8px;
}

.products-2 .item .chisel{
    padding: 0;
    border-radius: 0;
    background: transparent;
}

.products .item .name{
    display: flex;
    justify-content: space-between;
    column-gap: 20px;
    margin-bottom: 7px;
    font-size: 16px;
    color: #000;
}

.products-2 .item .name{
    font-size: 14px;
    color: #747474;
}

.products-2 .item .name span{
    font-weight: 600;
    color: #cd2c2c;
}

.products .item .place{
    font-weight: 600;
    font-size: 16px;
    color: #000;
}

.products-2 .item .place{
    color: #747474;
}

/**REVIEWS**/
.reviews{

}

.reviews .items{
    display: flex;
    flex-wrap: wrap;
    margin: 0 -22px;
}

.reviews .item{
    width: 25%;
    padding: 0 22px;
}

.reviews .item .in{
    height: 100%;
    padding: 32px 24px;
    background: #fff;
    border: 1px solid #e6e6e6;
    border-radius: 24px;
}

.reviews .item .pic{
    width: 72px;
    height: 72px;
    margin: 0 auto 16px;
}

.reviews .item .pic img{
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
    border-radius: 100%;
}

.reviews .item .title{
    margin-bottom: 24px;
    font-weight: 600;
    font-size: 20px;
    text-align: center;
    color: #0f1125;
}

.reviews .item .title span{
    display: block;
    color: #717276;
}

.reviews .item .bottom{
    padding: 24px 7px 0;
    border-top: 1px solid #e9eff5;
}

.reviews .item p{
    margin-bottom: 12px;
    font-weight: 500;
    font-size: 16px;
    line-height: 1.5;
    color: #0f1125;
}

.raiting{
    display: flex;
    justify-content: center;
    column-gap: 2px;
}

.raiting__item{
    width: 24px;
    height: 24px;
    flex-shrink: 0;
    background: url(../img/reviews/star.svg) center no-repeat;
}

.raiting__item.active{
    background-image: url(../img/reviews/star_active.svg);
}

/**TEAM**/
.team{
    position: relative;
    z-index: 3;
}

.team .items{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    column-gap: 100px;
    row-gap: 60px;
}

.team .item{

}

.team .item .in{
    width: 300px;
}

.team .item .pic{
    height: 300px;
    margin-bottom: 14px;
}

.team .item .pic img{
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    border-radius: 12px;
}

.team .item .title{
    font-weight: 600;
    font-size: 20px;
    text-align: center;
    color: #0f1125;
}

.team .item .title span{
    display: block;
    padding-top: 8px;
    font-weight: 500;
    font-size: 18px;
    color: #717276;
}

.top-title{
    padding-bottom: 250px;
    position: relative;
    z-index: 1;
}

.top-title .title-block{
    position: relative;
    z-index: 3;
}

.top-title .title-block div{
    padding-left: 380px;
    padding-top: 10px;
    font-size: 50px;
}

.top-title .pic{
    position: absolute;
    top: -90px;
    left: 270px;
    z-index: 1;
}

.top-title .pic_1{
    width: 482px;
    display: block;
    position: relative;
    z-index: 3;
}

.top-title .pic_2{
    width: 1344px;
    display: block;
    position: absolute;
    top: 200px;
    left: 200px;
    z-index: 1;
}

/**CARD**/
.card{

}

.card__cols{
    display: flex;
    flex-wrap: wrap;
}

.card__left{
    width: 855px;
    flex-shrink: 0;
}

.card__right{
    width: calc(100% - 855px);
    padding-left: 80px;
}

.card-slider{

}

.card-slider__top{
    border-radius: 12px;
    overflow: hidden;
}

.card-slider__top .pic{
    height: 500px;
}

.card-slider .pic img{
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

.card-slider__bottom{
    padding-top: 14px;
    margin: 0 -7px;
}

.card-slider__bottom .item{
    padding: 0 7px;
}

.card-slider__bottom .item .in{
    height: 140px;
    border-radius: 12px;
    position: relative;
    overflow: hidden;
}

.card-slider__bottom .item .overlay{
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 5px;
    background: rgba(217, 217, 217, 0.14);
    border: 1px solid rgba(255, 255, 255, 0.25);
    font-size: 15px;
    text-transform: uppercase;
    text-align: center;
    color: #fff;
}

.card-slider__bottom .item .overlay.black{
    color: #444;
}

.card-slider__bottom .item .in > .overlay{
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
}

.card-slider__bottom .pic{
    height: 100%;
}

.card-slider__bottom .pic img{
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: .3s;
}

.card-slider__bottom .slick-slide.slick-current.slick-active .pic img{
    opacity: .7;
}

.card__title{
    margin-bottom: 20px;
    font-family: 'Viaoda Libre';
    font-weight: 400;
    font-size: 44px;
    color: #fff;
}

.card__title.black{
    color: #000;
}

.card__line{
    justify-content: space-between;
    column-gap: 18px;
    margin-bottom: 25px;
}

.card__line.v-center{
    align-items: center;
}

.card__price{
    margin-bottom: 7px;
    font-size: 24px;
    color: #fff;
}

.card__price.black{
    color: #000;
}

.card__sq{
    font-size: 14px;
    color: #cd2c2c;
}

.card__art{
    font-size: 16px;
    color: #fff;
}

.card__art.black{
    color: #000;
}

.opt{
    width: 285px;
    display: flex;
    column-gap: 7px;
    justify-content: space-between;
    padding: 12px 8px 12px 0;
    border-top: .5px solid rgba(255, 255, 255, .8);
    border-bottom: .5px solid rgba(255, 255, 255, .8);
}

.opt.border{
    border-top: .5px solid rgba(0, 0, 0, .55);
    border-bottom: .5px solid rgba(0, 0, 0, .55);
}

.products .opt{
    width: 100%;
    padding: 6px 0;
    margin-bottom: 8px;
    border-color: #9e9e9e;
}

.opt__item{
    font-size: 13px;
    color: #d7d7d7;
}

.opt__item.black{
    color: #8d8d8d;
}

.products .opt__item{
    font-size: 11px;
    color: #797979;
}

.opt__item span{
    display: block;
    padding-top: 10px;
    font-size: 16px;
}

.opt__item.black span{
    color: #000;
}

.products .opt__item span{
    padding-top: 5px;
    color: #282828;
}

.card__btn{
    padding-left: 35px;
    padding-right: 35px;
}

.card__des{
    padding-top: 60px;
}

.card__des .title{
    margin-bottom: 17px;
    font-family: 'Viaoda Libre';
    font-weight: 400;
    font-size: 28px;
    color: #fff;
}

.card__des.black .title{
    color: #000;
}

.card__des p{
    font-weight: 400;
    font-size: 16px;
    color: #fff;
}

.card__des.black p{
    color: #000;
}

/**BLOG**/
.blog{

}

.blog .items{
    display: flex;
    flex-wrap: wrap;
    margin: 0 -22px;
}

.blog .item{
    width: 25%;
    padding: 0 22px;
    margin-bottom: 55px;
}

.blog .item .in{
    height: 100%;
    padding: 8px 8px 30px;
    background: #fff;
    border-radius: 4px;
}

.blog .item .pic{
    height: 246px;
    margin-bottom: 55px;
}

.blog .item .pic img{
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    border-radius: 60px;
}

.blog .item .sub{
    margin-bottom: 12px;
    font-weight: 600;
    font-size: 14px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    text-align: center;
    color: #cd2c2c;
}

.blog .item .sub a{
    color: inherit;
}

.blog .item .title{
    margin-bottom: 30px;
    font-weight: 600;
    font-size: 18px;
    text-align: center;
    color: #000;
}

.blog .item .title a{
    color: inherit;
    transition: .3s;
}

.blog .item .bottom{
    display: flex;
    justify-content: space-between;
    column-gap: 12px;
    padding: 0 20px;
}

.blog .item .date{
    font-weight: 400;
    font-size: 14px;
    color: #b8b8b8;
}

.blog .item .more{
    display: inline-flex;
    align-items: center;
    font-weight: 600;
    font-size: 14px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    text-align: center;
    color: #000;
}

.rv-portfolio .item .title{
    margin-bottom: 12px;
}

.rv-portfolio__text{
    line-height: 1.45;
    color: rgba(255, 255, 255, 0.75);
}

.blog .item .more i{
    width: 19px;
    height: 10px;
    display: block;
    flex-shrink: 0;
    margin-left: 7px;
    background: url(../img/blog/arrow.svg) center no-repeat;
}

/**SERV**/
.serv{

}

.serv .title{
    margin-bottom: 30px;
    font-weight: 400;
    font-size: 120px;
    text-transform: uppercase;
    text-align: center;
    color: #131718;
    font-family: 'Viaoda Libre';
    line-height: 1.2;
}

.serv .title span{
    display: block;
    font-size: 44px;
}

.serv .center{
    max-width: 884px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
}

.serv .center .left{
    width: 460px;
    flex-shrink: 0;
    min-height: 420px;
}

.serv .center .right{
    width: calc(100% - 460px);
    display: flex;
    flex-wrap: wrap;
    align-content: space-between;
    padding-left: 60px;
}

.serv .center .top{
    width: 100%;
    padding-bottom: 20px;
}

.serv .center .bottom{
    width: 100%;
}

.serv .pic{
    height: 100%;
    min-height: 420px;
}

.serv .pic img{
    width: 100%;
    height: 100%;
    min-height: 420px;
    display: block;
    object-fit: cover;
    border-radius: 4px;
}

.serv p{
    margin-bottom: 45px;
    font-size: 16px;
    line-height: 1.625;
    text-transform: uppercase;
    color: #000;
}

.list{
    list-style: none;
}

.list li{
    margin-bottom: 20px;
    padding-left: 33px;
    position: relative;
    font-size: 14px;
    text-transform: uppercase;
    color: #000;
}

.list li:last-child{
    margin-bottom: 0;
}

.list li:before{
    content: "";
    width: 20px;
    height: 20px;
    background: url(../img/serv/list.svg) center no-repeat;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}

/**ADVANTAGES**/
.advantages{

}

.advantages .items{
    display: flex;
    flex-wrap: wrap;
    margin: 0 -22px;
}

.advantages .item{
    width: 33.33%;
    padding: 0 22px;
    margin-bottom: 44px;
}

.advantages .item .in{
    min-height: 230px;
    height: 100%;
    padding: 50px 30px 30px;
    border: 1px solid #d1cfcf;
    border-radius: 12px;
}

.advantages .item .icon{
    width: 52px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 50px;
}

.advantages .item .icon img{
    max-width: 100%;
    max-height: 100%;
    display: block;
}

.advantages .item p{
    font-size: 16px;
    line-height: 1.5;
    text-transform: uppercase;
    text-align: center;
    color: #000;
}

/**FOOTER**/
.footer{
    width: 100%;
    display: block;
    padding-top: 55px;
    background: url(../img/footer/bg.jpg) right center no-repeat;
    background-size: cover;
    position: relative;
    z-index: 3;
}

.footer__top{
    padding-bottom: 40px;
    position: relative;
    z-index: 1;
}

.footer__top .cols{
    justify-content: space-between;
    column-gap: 30px;
}

.footer .subtitle{
    margin-bottom: 12px;
    font-weight: 500;
    font-size: 16px;
    color: rgba(255, 255, 255, 0.6);
}

.footer__contact{
    margin-bottom: 55px;
    font-weight: 500;
    font-size: 28px;
    color: #fff;
}

.footer__contact a{
    color: inherit;
}

.social{
    display: flex;
    column-gap: 8px;
}

.social .item a{
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 5px;
    border: 1px solid #fff;
    border-radius: 2px;
}

.social .item img{
    max-width: 100%;
    max-height: 100%;
    display: block;
}

.footer .logo-1{
    margin-top: 110px;
}

.footer .logo-1 img{
    width: 219px;
    display: block;
}

.footer .title{
    margin-bottom: 10px;
    font-weight: 500;
    font-size: 28px;
    color: #fff;
}

.footer__top p{
    margin-bottom: 30px;
    font-weight: 500;
    font-size: 16px;
    color: #fff;
}

.footer .feedback{
    max-width: 270px;
}

.footer__top .bottom{
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    column-gap: 30px;
    padding-top: 160px;
}

.footer__bottom{
    padding-top: 20px;
    padding-bottom: 20px;
    border-top: 1px solid rgba(255, 255, 255, .5);
}

.footer-nav{
    list-style: none;
}

.footer-nav li{
    margin-bottom: 20px;
}

.footer-nav li:last-child{
    margin-bottom: 0;
}

.rv-feedback-consent{
    display: block;
    margin-top: 12px;
    font-size: 12px;
    line-height: 1.4;
    color: rgba(255, 255, 255, .85);
}
.rv-feedback-consent a{
    color: #fff;
    text-decoration: underline;
}
.rv-form-message{
    margin-bottom: 12px;
    font-size: 14px;
    line-height: 1.4;
}
.rv-form-message_ok{ color: #9fe8a8; }
.rv-form-message_err{ color: #ffb4b4; }
.rv-section-empty{
    padding: 40px 0;
    color: #333;
    font-size: 18px;
}
.rv-catalog-empty{
    padding: 40px 0;
    color: #333;
    font-size: 18px;
    text-align: center;
}
.rv-catalog-empty p{
    margin: 0 0 20px;
}
.rv-catalog-empty .btn{
    min-width: 220px;
}
.rv-blog-article__pic img{
    width: 100%;
    height: auto;
    margin-bottom: 24px;
}
.rv-blog-article__date{
    margin-bottom: 16px;
    color: #888;
    font-size: 14px;
}
.rv-blog-article__lead{
    margin-bottom: 24px;
    font-size: 18px;
    font-weight: 500;
}

.footer-nav li a{
    display: block;
    font-weight: 500;
    font-size: 16px;
    color: #fff;
    transition: .3s;
}

.footer-nav li a:hover{
    color: #CD2C2C;
}

.footer .logo-2 img{
    width: 200px;
    display: block;
}

.footer__bottom .cols{
    align-items: center;
    justify-content: space-between;
    column-gap: 30px;
}

.footer__bottom p{
    font-size: 14px;
    color: #fff;
}

.footer__bottom p a{
    color: inherit;
}



