

/* Start:/local/templates/granit/template_styles.css?1791200405111125*/
@font-face {
  font-family: 'Nunito Sans';
  font-style: italic;
  font-weight: 200;
  font-stretch: normal;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/nunitosans/v19/pe1kMImSLYBIv1o4X1M8cce4OdVisMz5nZRqy6cmmmU3t2FQWEAEOvV9wNvrwlNstMKW3Y6K5WMwXeVy3GboJ0kTHmoP91Ug.ttf) format('truetype');
}
@font-face {
  font-family: 'Nunito Sans';
  font-style: italic;
  font-weight: 300;
  font-stretch: normal;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/nunitosans/v19/pe1kMImSLYBIv1o4X1M8cce4OdVisMz5nZRqy6cmmmU3t2FQWEAEOvV9wNvrwlNstMKW3Y6K5WMwXeVy3GboJ0kTHmrR91Ug.ttf) format('truetype');
}
@font-face {
  font-family: 'Nunito Sans';
  font-style: italic;
  font-weight: 400;
  font-stretch: normal;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/nunitosans/v19/pe1kMImSLYBIv1o4X1M8cce4OdVisMz5nZRqy6cmmmU3t2FQWEAEOvV9wNvrwlNstMKW3Y6K5WMwXeVy3GboJ0kTHmqP91Ug.ttf) format('truetype');
}
@font-face {
  font-family: 'Nunito Sans';
  font-style: italic;
  font-weight: 500;
  font-stretch: normal;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/nunitosans/v19/pe1kMImSLYBIv1o4X1M8cce4OdVisMz5nZRqy6cmmmU3t2FQWEAEOvV9wNvrwlNstMKW3Y6K5WMwXeVy3GboJ0kTHmq991Ug.ttf) format('truetype');
}
@font-face {
  font-family: 'Nunito Sans';
  font-style: italic;
  font-weight: 600;
  font-stretch: normal;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/nunitosans/v19/pe1kMImSLYBIv1o4X1M8cce4OdVisMz5nZRqy6cmmmU3t2FQWEAEOvV9wNvrwlNstMKW3Y6K5WMwXeVy3GboJ0kTHmpR8FUg.ttf) format('truetype');
}
@font-face {
  font-family: 'Nunito Sans';
  font-style: italic;
  font-weight: 700;
  font-stretch: normal;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/nunitosans/v19/pe1kMImSLYBIv1o4X1M8cce4OdVisMz5nZRqy6cmmmU3t2FQWEAEOvV9wNvrwlNstMKW3Y6K5WMwXeVy3GboJ0kTHmpo8FUg.ttf) format('truetype');
}
@font-face {
  font-family: 'Nunito Sans';
  font-style: italic;
  font-weight: 800;
  font-stretch: normal;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/nunitosans/v19/pe1kMImSLYBIv1o4X1M8cce4OdVisMz5nZRqy6cmmmU3t2FQWEAEOvV9wNvrwlNstMKW3Y6K5WMwXeVy3GboJ0kTHmoP8FUg.ttf) format('truetype');
}
@font-face {
  font-family: 'Nunito Sans';
  font-style: italic;
  font-weight: 900;
  font-stretch: normal;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/nunitosans/v19/pe1kMImSLYBIv1o4X1M8cce4OdVisMz5nZRqy6cmmmU3t2FQWEAEOvV9wNvrwlNstMKW3Y6K5WMwXeVy3GboJ0kTHmom8FUg.ttf) format('truetype');
}
@font-face {
  font-family: 'Nunito Sans';
  font-style: normal;
  font-weight: 200;
  font-stretch: normal;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/nunitosans/v19/pe1mMImSLYBIv1o4X1M8ce2xCx3yop4tQpF_MeTm0lfGWVpNn64CL7U8upHZIbMV51Q42ptCp5F5bxqqtQ1yiU4GVilntA.ttf) format('truetype');
}
@font-face {
  font-family: 'Nunito Sans';
  font-style: normal;
  font-weight: 300;
  font-stretch: normal;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/nunitosans/v19/pe1mMImSLYBIv1o4X1M8ce2xCx3yop4tQpF_MeTm0lfGWVpNn64CL7U8upHZIbMV51Q42ptCp5F5bxqqtQ1yiU4GiClntA.ttf) format('truetype');
}
@font-face {
  font-family: 'Nunito Sans';
  font-style: normal;
  font-weight: 400;
  font-stretch: normal;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/nunitosans/v19/pe1mMImSLYBIv1o4X1M8ce2xCx3yop4tQpF_MeTm0lfGWVpNn64CL7U8upHZIbMV51Q42ptCp5F5bxqqtQ1yiU4G1ilntA.ttf) format('truetype');
}
@font-face {
  font-family: 'Nunito Sans';
  font-style: normal;
  font-weight: 500;
  font-stretch: normal;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/nunitosans/v19/pe1mMImSLYBIv1o4X1M8ce2xCx3yop4tQpF_MeTm0lfGWVpNn64CL7U8upHZIbMV51Q42ptCp5F5bxqqtQ1yiU4G5ClntA.ttf) format('truetype');
}
@font-face {
  font-family: 'Nunito Sans';
  font-style: normal;
  font-weight: 600;
  font-stretch: normal;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/nunitosans/v19/pe1mMImSLYBIv1o4X1M8ce2xCx3yop4tQpF_MeTm0lfGWVpNn64CL7U8upHZIbMV51Q42ptCp5F5bxqqtQ1yiU4GCC5ntA.ttf) format('truetype');
}
@font-face {
  font-family: 'Nunito Sans';
  font-style: normal;
  font-weight: 700;
  font-stretch: normal;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/nunitosans/v19/pe1mMImSLYBIv1o4X1M8ce2xCx3yop4tQpF_MeTm0lfGWVpNn64CL7U8upHZIbMV51Q42ptCp5F5bxqqtQ1yiU4GMS5ntA.ttf) format('truetype');
}
@font-face {
  font-family: 'Nunito Sans';
  font-style: normal;
  font-weight: 800;
  font-stretch: normal;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/nunitosans/v19/pe1mMImSLYBIv1o4X1M8ce2xCx3yop4tQpF_MeTm0lfGWVpNn64CL7U8upHZIbMV51Q42ptCp5F5bxqqtQ1yiU4GVi5ntA.ttf) format('truetype');
}
@font-face {
  font-family: 'Nunito Sans';
  font-style: normal;
  font-weight: 900;
  font-stretch: normal;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/nunitosans/v19/pe1mMImSLYBIv1o4X1M8ce2xCx3yop4tQpF_MeTm0lfGWVpNn64CL7U8upHZIbMV51Q42ptCp5F5bxqqtQ1yiU4Gfy5ntA.ttf) format('truetype');
}
@font-face {
  font-family: 'Anticva';
  src: url('/local/templates/granit/fonts/Anticva-Regular.otf');
}
.up {
  text-transform: uppercase;
}
.none {
  text-decoration: none;
}
.th {
  font-weight: 100;
}
.el {
  font-weight: 200;
}
.l {
  font-weight: 300;
}
.reg {
  font-weight: 400;
}
.med {
  font-weight: 500;
}
.sb {
  font-weight: 600;
}
.bold {
  font-weight: 700;
}
.eb {
  font-weight: 800;
}
.black {
  font-weight: 900;
}
.un {
  text-decoration: underline;
}
.in {
  display: inline-block;
}
.vam {
  vertical-align: middle;
}
.rel {
  position: relative;
}
.bl {
  display: block;
}
.abs {
  position: absolute;
}
.tr {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
.try {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.trx {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}
.tc {
  display: table-cell;
  vertical-align: middle;
}
.dn {
  display: none;
}
.tac {
  text-align: center;
}
.tal {
  text-align: left;
}
.tar {
  text-align: right;
}
.taj {
  text-align: justify;
}
.it {
  font-style: italic;
}
.sn {
  font-style: normal;
}
.b0 {
  border: 0;
}
.bn {
  background: none;
}
.w100 {
  width: 100%;
}
.h100 {
  height: 100%;
}
.wa {
  width: auto;
}
.p0 {
  padding: 0;
}
.m0 {
  margin: 0;
}
.poi {
  cursor: pointer;
}
.auto {
  top: auto;
  bottom: auto;
  left: auto;
  right: auto;
}
.noup {
  text-transform: none;
}
.fix {
  position: fixed;
}
.tn {
  transform: none;
}
.bf {
  background: #fff;
}
.cf {
  color: #fff;
}
.c0 {
  color: #252525;
}
.ap {
  appearance: none;
}
.nw {
  white-space: nowrap;
}
.ma {
  margin: 0 auto;
}
.oh {
  overflow: hidden;
}
.pen {
  pointer-events: none;
}
body,
html {
  width: 100%;
  height: 100%;
}
body {
  background: #fff;
  overflow-x: hidden;
}
body,
th,
td {
  font-family: "Nunito Sans", sans-serif;
  font-size: 14px;
  color: #252525;
}
body,
form,
object,
h1,
h2,
h3,
h4,
h5,
h6,
p {
  margin: 0;
  padding: 0;
}
img,
table {
  border: none;
}
table {
  border-collapse: collapse;
}
table td {
  padding: 0;
}
a {
  color: #252525;
  cursor: pointer;
  -webkit-transition: all 200ms ease;
  -moz-transition: all 200ms ease;
  -ms-transition: all 200ms ease;
  -o-transition: all 200ms ease;
  transition: all 200ms ease;
  text-decoration: none;
}
input,
textarea,
button,
select {
  margin: 0;
  outline: none;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 14px;
  border: 0;
  font-family: "Nunito Sans", sans-serif;
  color: #252525;
}
input:focus::-webkit-input-placeholder,
textarea:focus::-webkit-input-placeholder,
button:focus::-webkit-input-placeholder,
select:focus::-webkit-input-placeholder {
  color: transparent;
}
input:focus::-moz-placeholder,
textarea:focus::-moz-placeholder,
button:focus::-moz-placeholder,
select:focus::-moz-placeholder {
  color: transparent;
}
input:focus:-moz-placeholder,
textarea:focus:-moz-placeholder,
button:focus:-moz-placeholder,
select:focus:-moz-placeholder {
  color: transparent;
}
input:focus:-ms-input-placeholder,
textarea:focus:-ms-input-placeholder,
button:focus:-ms-input-placeholder,
select:focus:-ms-input-placeholder {
  color: transparent;
}
button,
input[type='submit'] {
  -webkit-transition: all 200ms ease;
  -moz-transition: all 200ms ease;
  -ms-transition: all 200ms ease;
  -o-transition: all 200ms ease;
  transition: all 200ms ease;
  cursor: pointer;
  border: 0;
}
ol,
ul {
  padding: 0;
  margin: 0;
  list-style: none;
}
img {
  max-width: 100%;
}
.an {
  -webkit-transition: all 200ms ease;
  -moz-transition: all 200ms ease;
  -ms-transition: all 200ms ease;
  -o-transition: all 200ms ease;
  transition: all 200ms ease;
}
.box {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
section,
header,
footer,
nav,
main {
  display: block;
}
.wrap {
  margin: 0 auto;
  width: 1416px;
}
* {
  outline: none!important;
}
.flex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.flex2 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
}
.flex3 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  align-items: center;
}
.header {
  padding: 20px 0;
  border-bottom: 1px solid #E5E5E5;
}
.header .wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  align-items: center;
}
.header__catalog {
  position: relative;
  margin-left: 30px;
}
.header__catalog-btn {
  width: 158px;
  height: 48px;
  background: #3C3C3C;
  border-radius: 8px;
  color: #fff;
  font-weight: 600;
  font-size: 16px;
}
.header__catalog-btn span {
  display: inline-block;
  vertical-align: middle;
  width: 20px;
  height: 20px;
  background: url('/local/templates/granit/img/catalog-btn.svg');
  margin: -4px 4px 0 0;
}
.header__catalog-btn--active,
.header__catalog-btn:hover {
  background: #e64224;
}
.header__search-form {
  position: relative;
  width: 371px;
  height: 48px;
  margin-right: 30px;
}
.header__search-input {
  width: 100%;
  height: 100%;
  background: none;
  -webkit-transition: all 200ms ease;
  -moz-transition: all 200ms ease;
  -ms-transition: all 200ms ease;
  -o-transition: all 200ms ease;
  transition: all 200ms ease;
  border: 1px solid #E5E5E5;
  border-radius: 8px;
  padding: 0 20px;
  font-size: 16px;
}
.header__search-input:focus {
  border: 1px solid #000;
}
.header__search-btn {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 20px;
  width: 24px;
  height: 24px;
  background: url('/local/templates/granit/img/search-btn.svg');
  filter: grayscale(100%) brightness(1.5);
}
.header__search-btn:hover {
  filter: none;
}
.header__contacts {
  width: 637px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  align-items: center;
}
.header__contacts-adress {
  display: block;
  font-size: 15px;
  line-height: 160%;
  padding-left: 28px;
  background: url('/local/templates/granit/img/adress.svg') no-repeat left;
}
.header__contacts-adress:not(:last-child) {
  margin-bottom: 4px;
}
.header__contacts-links {
  text-align: right;
}
.header__contacts-phone {
  display: block;
  margin-bottom: 4px;
  padding-left: 28px;
  font-family: 'Anticva';
  font-size: 20px;
  line-height: 130%;
  background: url('/local/templates/granit/img/phone.svg') no-repeat left;
  filter: grayscale(100%) brightness(2);
  color: #111;
}
.header__contacts-phone:hover {
  filter: none;
  color: #e64224;
}
.header__contacts-mail {
  display: inline-block;
  padding-left: 28px;
  background: url('/local/templates/granit/img/mail.svg') no-repeat left;
  font-size: 15px;
  line-height: 160%;
  filter: grayscale(100%) brightness(2);
  color: #111;
}
.header__contacts-mail:hover {
  filter: none;
  color: #e64224;
}
.header__callback-btn {
  width: 168px;
  height: 48px;
  background: #E64224;
  border-radius: 8px;
  color: #fff;
  font-weight: 600;
  font-size: 16px;
  margin-left: 20px;
}
.header__callback-btn:hover {
  background: #ff6042;
}
.header__callback-btn span {
  display: inline-block;
  vertical-align: middle;
  width: 20px;
  height: 20px;
  background: url('/local/templates/granit/img/arrow4.svg');
  margin-left: 6px;
}
.header__burger {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  width: 44px;
  height: 44px;
  background: url('/local/templates/granit/img/burger.svg');
  z-index: 5;
  display: none;
}
.catalog-dropdown {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 5;
  background: #fff;
  box-shadow: 0px 15px 30px rgba(23, 26, 28, 0.05);
  border-radius: 20px;
  width: 1080px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 28px 40px 24px 40px;
  margin-top: 10px;
  display: none;
}
.catalog-dropdown--active {
  display: block;
}
.catalog-dropdown__tabs {
  margin-bottom: 32px;
}
.catalog-dropdown__tab-btn {
  height: 45px;
  background: #EFEFEF;
  border-radius: 50px;
  padding: 0 24px;
  font-weight: 600;
  font-size: 16px;
}
.catalog-dropdown__tab-btn:not(:last-child) {
  margin-right: 5px;
}
.catalog-dropdown__tab-btn--active {
  background: #E64224;
  color: #fff;
}
.catalog-dropdown__panel {
  display: none;
}
.catalog-dropdown__panel--active {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.catalog-dropdown__left {
  width: 32.3%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding-right: 20px;
  border-right: 1px solid #EFEFEF;
  margin-bottom: 16px;
}
.catalog-dropdown__item {
  font-size: 18px;
  line-height: 24px;
  cursor: pointer;
  -webkit-transition: all 200ms ease;
  -moz-transition: all 200ms ease;
  -ms-transition: all 200ms ease;
  -o-transition: all 200ms ease;
  transition: all 200ms ease;
  background: url('/local/templates/granit/img/arrow.svg') no-repeat right;
}
.catalog-dropdown__item--active {
  font-weight: 700;
  color: #e64224;
  background: url('/local/templates/granit/img/arrow2.svg') no-repeat right;
}
.catalog-dropdown__item:not(:last-child) {
  margin-bottom: 16px;
}
.catalog-dropdown__right {
  width: 65.6%;
}
.catalog-dropdown__subpanel {
  display: none;
}
.catalog-dropdown__subpanel--active {
  display: block;
}
.catalog-dropdown__links-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.catalog-dropdown__links-list li {
  width: 32%;
  margin-bottom: 16px;
}
.catalog-dropdown__link {
  font-size: 18px;
  line-height: 24px;
}
.catalog-dropdown__count {
  display: inline-block;
  margin-left: 5px;
  font-size: 14px;
  line-height: 24px;
  color: #878787;
}
.top-menu {
  padding: 16px 0;
  border-bottom: 1px solid #E5E5E5;
}
.top-menu .wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  align-items: center;
}
.top-menu__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  align-items: center;
}
.top-menu__item:not(:last-child) {
  margin-right: 32px;
}
.top-menu__link {
  display: block;
  font-size: 16px;
  line-height: 130%;
}
.top-menu__link:hover {
  color: #e64224;
}
.top-menu__action {
  display: inline-block;
  vertical-align: middle;
  width: 20px;
  height: 20px;
  background: url('/local/templates/granit/img/action.svg');
}
.top-menu__widgets {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  align-items: center;
}
.top-menu__widget {
  margin-right: 32px;
}
.top-menu__widget * {
  vertical-align: middle;
}
.top-menu__widget-icon {
  display: inline-block;
  vertical-align: middle;
  width: 20px;
  height: 20px;
  background: url('/local/templates/granit/img/star.svg');
}
.top-menu__widget-rating {
  font-weight: 500;
  font-size: 16px;
  line-height: 24px;
}
.top-menu__socials {
  padding-left: 8px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  align-items: center;
}
.top-menu__socials a {
  font-size: 0;
}
.top-menu__socials a:not(:last-child) {
  margin-right: 16px;
}
.top-menu__socials a svg path {
  -webkit-transition: all 200ms ease;
  -moz-transition: all 200ms ease;
  -ms-transition: all 200ms ease;
  -o-transition: all 200ms ease;
  transition: all 200ms ease;
}
.top-menu__socials a:hover svg path {
  fill: #e64224;
}
.hero {
  background: url('/local/templates/granit/img/hero.svg') no-repeat left / contain;
}
.hero .wrap {
  background: url('/local/templates/granit/img/hero.png') no-repeat right;
  padding: 90px 0 150px;
}
.hero__title {
  margin-bottom: 8px;
  font-family: 'Anticva';
  font-weight: 400;
  font-size: 52px;
  line-height: 150%;
}
.hero__subtitle {
  margin-bottom: 32px;
  color: #e64224;
  font-weight: 600;
  font-size: 27px;
  line-height: 130%;
}
.hero__features {
  padding-bottom: 20px;
}
.hero__feature-item {
  margin-bottom: 12px;
  padding-left: 20px;
  font-size: 18px;
  line-height: 130%;
  position: relative;
}
.hero__feature-item:before {
  content: "";
  position: absolute;
  top: 7px;
  left: 0;
  width: 8px;
  height: 8px;
  background: #E64224;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
}
.hero .header__callback-btn {
  margin: 0;
  width: 267px;
  height: 61px;
}
.section-title {
  margin-bottom: 40px;
  font-family: 'Anticva';
  font-weight: 400;
  font-size: 40px;
  line-height: 150%;
}
.advantages {
  padding: 90px 0 66px;
  background: #FBFBFB;
}
.advantages__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.advantages__item {
  border: 1px solid #E5E5E5;
  border-radius: 8px;
  width: 32.2%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin-bottom: 24px;
  padding: 32px;
  position: relative;
  overflow: hidden;
  -webkit-transition: all 200ms ease;
  -moz-transition: all 200ms ease;
  -ms-transition: all 200ms ease;
  -o-transition: all 200ms ease;
  transition: all 200ms ease;
}
.advantages__item:hover {
  border: 1px solid #e64224;
  background: rgba(230, 66, 36, 0.05);
}
.advantages__item:hover .advantages__number {
  color: #e64224;
  opacity: .05;
}
.advantages__number {
  position: absolute;
  top: -62px;
  right: -16px;
  font-weight: 900;
  font-size: 193.909px;
  line-height: 130%;
  color: rgba(0, 0, 0, 0.02);
  pointer-events: none;
}
.advantages__icon {
  margin-bottom: 20px;
}
.advantages__heading {
  margin-bottom: 8px;
  font-weight: 700;
  font-size: 22px;
  line-height: 130%;
}
.advantages__text {
  font-size: 16px;
  line-height: 130%;
}
.advantages__link {
  color: #e64224;
  text-decoration: underline;
}
.offers {
  padding: 90px 0 82px;
}
.offers .section-title {
  margin-bottom: 20px;
}
.offers__subtitle {
  margin-bottom: 40px;
  font-size: 18px;
  line-height: 130%;
}
.offers__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.offers__item {
  width: 32.3%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin-bottom: 8px;
  padding: 32px;
  background: #FBFBFB;
  border: 1px solid #E5E5E5;
  border-radius: 8px;
  -webkit-transition: all 200ms ease;
  -moz-transition: all 200ms ease;
  -ms-transition: all 200ms ease;
  -o-transition: all 200ms ease;
  transition: all 200ms ease;
}
.offers__item:hover {
  border: 1px solid #e64224;
  background: rgba(230, 66, 36, 0.05);
}
.offers__item:hover .offers__image {
  transform: scale(1.1);
}
.offers__item:hover .offers__heading {
  background: url('/local/templates/granit/img/arrow3.svg') no-repeat right;
}
.offers__image {
  text-align: center;
  -webkit-transition: all 200ms ease;
  -moz-transition: all 200ms ease;
  -ms-transition: all 200ms ease;
  -o-transition: all 200ms ease;
  transition: all 200ms ease;
  margin-bottom: 20px;
}
.offers__heading {
  margin-bottom: 20px;
  font-weight: 700;
  font-size: 24px;
  line-height: 130%;
  display: block;
  padding: 5px 60px 5px 0;
  background: url('/local/templates/granit/img/arrow3.svg') no-repeat right -60px top 50%;
}
.offers__info {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  align-items: center;
  border-top: 1px solid #D9D9D9;
  padding-top: 20px;
}
.offers__material {
  font-weight: 600;
  font-size: 18px;
  line-height: 130%;
  color: #878787;
}
.offers__price {
  color: #e64224;
  font-weight: 700;
  font-size: 28px;
  line-height: 130%;
}
.catalog {
  padding: 90px 0 66px;
  background: #FBFBFB;
}
.catalog--inner {
  padding: 40px 0 90px;
}
.catalog--inner h1.section-title {
  margin-bottom: 60px;
}
.catalog--inner .catalog__list {
  padding-bottom: 36px;
}
.catalog .wrap {
  position: relative;
}
.catalog .section-title {
  margin-bottom: 20px;
}
.catalog__list-title {
  margin-bottom: 24px;
  font-weight: 700;
  font-size: 38px;
  line-height: 130%;
}
.catalog__list-title .catalog__count {
  vertical-align: middle;
  margin-left: 15px;
}
.catalog__intro {
  margin-bottom: 40px;
  font-size: 18px;
  line-height: 130%;
}
.catalog__intro span {
  color: #e64224;
}
.catalog__btn {
  position: absolute;
  right: 0;
  top: 50px;
  width: 207px;
  height: 53px;
  background: #3C3C3C;
  border-radius: 8px;
  color: #fff;
  font-weight: 600;
  font-size: 16px;
}
.catalog__btn:hover {
  background: #505050;
}
.catalog__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
}
.catalog__list--inner .catalog__item {
  overflow: hidden;
}
.catalog__list--inner .catalog__item:hover .catalog__price {
  font-size: 18px;
}
.catalog__list--inner .catalog__item:hover .catalog__image {
  transform: scale(1.1);
}
.catalog__item {
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 24px 24px 0;
  width: calc(33.3334% - 24px);
  border: 1px solid #E5E5E5;
  border-radius: 8px;
  height: 370px;
  padding: 32px;
  -webkit-transition: all 200ms ease;
  -moz-transition: all 200ms ease;
  -ms-transition: all 200ms ease;
  -o-transition: all 200ms ease;
  transition: all 200ms ease;
}
.catalog__item--big {
  width: calc(50% - 24px);
}
.catalog__item:hover {
  border: 1px solid #e64224;
  background: rgba(230, 66, 36, 0.05);
}
.catalog__item:hover .offers__heading {
  background: url('/local/templates/granit/img/arrow3.svg') no-repeat right;
}
.catalog__item:hover .catalog__price {
  font-weight: 800;
  font-size: 32px;
  line-height: 130%;
}
.catalog__item .header__callback-btn {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  margin: 0;
  width: 213px;
  height: 61px;
}
.catalog__item--last:hover {
  background: #e64224;
}
.catalog__item--last .header__callback-btn:hover {
  background: #E64224;
}
.catalog__image {
  position: absolute;
  right: 0;
  bottom: 0;
  -webkit-transition: all 200ms ease;
  -moz-transition: all 200ms ease;
  -ms-transition: all 200ms ease;
  -o-transition: all 200ms ease;
  transition: all 200ms ease;
}
.catalog__item-info {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 32px;
}
.catalog__price {
  display: block;
  margin-bottom: 12px;
  -webkit-transition: all 200ms ease;
  -moz-transition: all 200ms ease;
  -ms-transition: all 200ms ease;
  -o-transition: all 200ms ease;
  transition: all 200ms ease;
  color: #e64224;
  font-weight: 600;
  font-size: 18px;
  line-height: 130%;
}
.catalog__count {
  display: inline-block;
  color: #fff;
  font-weight: 600;
  font-size: 13px;
  line-height: 130%;
  padding: 4px 8px;
  background: #3C3C3C;
  border-radius: 100px;
}
.catalog__filter {
  width: 23.8%;
  margin-bottom: 60px;
}
.catalog__filter .header__callback-btn {
  width: 100%;
  margin: 0;
}
.catalog__filter-form {
  background: #FFFFFF;
  border: 1px solid #E5E5E5;
  border-radius: 8px;
  padding: 28px;
  position: relative;
}
.catalog__filter-title {
  margin-bottom: 28px;
  font-weight: 700;
  font-size: 24px;
  line-height: 130%;
}
.catalog__filter-clear {
  position: absolute;
  top: 33px;
  right: 28px;
  font-size: 16px;
  line-height: 130%;
  text-decoration-line: underline;
  color: #878787;
}
.catalog__filter-clear:hover {
  color: #e64224;
}
.catalog__filter-subtitle {
  cursor: pointer;
  padding-right: 40px;
  background: url('/local/templates/granit/img/faq2.svg') no-repeat right;
  font-weight: 700;
  font-size: 20px;
  line-height: 130%;
  margin-bottom: 12px;
}
.catalog__filter-subtitle--active {
  background: url('/local/templates/granit/img/faq.svg') no-repeat right;
}
.catalog__filter-range {
  margin-bottom: 44px;
  background: #FBFBFB;
  border: 1px solid #F9D6D0;
  border-radius: 8px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  position: relative;
}
.catalog__filter-range:after {
  content: "–";
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 3;
  pointer-events: none;
  font-weight: 600;
  font-size: 16px;
  line-height: 130%;
  opacity: 0.5;
}
.catalog__filter-range input[type='text'] {
  width: 50%;
  height: 61px;
  text-align: center;
  background: none;
  font-weight: 600;
  font-size: 16px;
}
.catalog__filter-range .ui-widget.ui-widget-content {
  position: absolute;
  left: 0;
  bottom: -20px;
  width: 100%;
}
.catalog__filter-range .ui-widget.ui-widget-content {
  border: 0;
}
.catalog__filter-range .ui-widget-content {
  background: #F9D6D0;
}
.catalog__filter-range .ui-slider-horizontal {
  height: 4px;
}
.catalog__filter-range .ui-widget-header {
  background: #e64224;
}
.catalog__filter-range .ui-state-default,
.catalog__filter-range .ui-widget-content .ui-state-default,
.catalog__filter-range .ui-widget-header .ui-state-default,
.catalog__filter-range .ui-button,
.catalog__filter-range html .ui-button.ui-state-disabled:hover,
.catalog__filter-range html .ui-button.ui-state-disabled:active {
  border: 0;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  background: #e64224;
  width: 16px;
  height: 16px;
  margin: -1px 0 0 -8px;
}
.catalog__filter-fields .checkbox:last-child .checkbox__text {
  margin-bottom: 28px;
}
.catalog__filter-fields .checkbox__text {
  margin-bottom: 12px;
}
.catalog__filter-fields .checkbox__text i {
  font-style: normal;
  margin-left: 5px;
  display: inline-block;
  font-size: 14px;
  opacity: .6;
}
.catalog__page {
  width: 74.6%;
  margin-bottom: 60px;
}
.catalog__page-count {
  margin-bottom: 24px;
  font-weight: 700;
  font-size: 24px;
  line-height: 130%;
}
.catalog__sort {
  margin-bottom: 24px;
}
.catalog__sort-link {
  font-size: 16px;
  line-height: 130%;
  color: #878787;
}
.catalog__sort-link:not(:last-child) {
  margin-right: 24px;
}
.catalog__sort-link--active {
  color: #252525;
}
.catalog__list2 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  margin-right: -24px;
}
.catalog__list2 .popular__item {
  width: calc(33.3334% - 24px);
  margin: 0 24px 24px 0;
}
.catalog__more-button {
  position: relative;
  top: auto;
  bottom: auto;
  left: auto;
  right: auto;
  display: block;
  margin: 0 auto;
}
.catalog__mob-button {
  margin-bottom: 20px;
  display: none;
}
.catalog__mob-button button {
  width: 165px;
  height: 48px;
  background: #3C3C3C;
  border-radius: 8px;
  color: #fff;
  font-weight: 600;
  font-size: 16px;
}
.catalog__mob-button button:hover {
  background: #505050;
}
.catalog__mob-button button svg {
  vertical-align: middle;
  margin: -2px 4px 0 0;
}
.catalog__mob-button a {
  margin-left: 20px;
  text-decoration: underline;
  font-size: 16px;
  line-height: 130%;
  color: #3C3C3C;
}
.catalog__mob-button a:hover {
  color: #e64224;
}
.popular {
  background: #FBFBFB;
  padding: 90px 0;
}
.popular .wrap {
  position: relative;
}
.popular__slider-nav {
  position: absolute;
  right: 0;
  top: 0;
}
.popular__slider-link {
  display: inline-block;
  width: 40px;
  height: 40px;
  opacity: .3;
}
.popular__slider-link:hover {
  opacity: 1;
}
.popular__slider-link--prev {
  background: url('/local/templates/granit/img/prev.svg');
  margin-right: 5px;
}
.popular__slider-link--next {
  background: url('/local/templates/granit/img/next.svg');
}
.popular__item {
  position: relative;
}
.popular__item:hover .popular__buttons {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.popular__item:hover .popular__photo img {
  margin: -33px 0;
}
.popular__badge {
  position: absolute;
  z-index: 3;
  top: 20px;
  left: 20px;
  color: #fff;
  text-transform: uppercase;
  background: #E64224;
  border-radius: 4px;
  padding: 4px 12px;
  font-weight: 700;
  font-size: 12px;
  line-height: 130%;
}
.popular__photos {
  border: 1px solid #E5E5E5;
  border-radius: 8px;
  margin-bottom: 20px;
  overflow: hidden;
  position: relative;
}
.popular__photos .swiper2 {
  text-align: center;
}
.popular__dots {
  position: absolute;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 8px;
  box-sizing: border-box;
  left: 0;
  bottom: 0;
  z-index: 5;
}
.popular__dots span {
  flex: 1 1 auto;
  height: 4px;
  aspect-ratio: 1;
  background: rgba(0, 0, 0, 0.1);
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  opacity: 1;
}
.popular__dots span.swiper-pagination-bullet-active {
  background: rgba(0, 0, 0, 0.5);
}
.popular__title {
  margin-bottom: 8px;
  font-size: 18px;
  line-height: 130%;
}
.popular__material {
  margin-bottom: 8px;
  line-height: 130%;
  color: #878787;
}
.popular__price {
  color: #e64224;
  font-weight: 700;
  font-size: 22px;
  line-height: 130%;
}
.popular__buttons {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding-top: 20px;
  display: none;
}
.popular__buttons button {
  width: calc(50% - 4px);
  height: 45px;
  font-weight: 600;
  font-size: 16px;
  color: #fff;
  border-radius: 8px;
}
.popular__buttons button:nth-child(1) {
  background: #3C3C3C;
}
.popular__buttons button:nth-child(1):hover {
  background: #505050;
}
.popular__buttons button:nth-child(2) {
  background: #e64224;
}
.popular__buttons button:nth-child(2):hover {
  background: #ff6042;
}
.popular__menu {
  text-align: center;
  margin-bottom: 40px;
}
.popular__menu li {
  display: inline-block;
  margin: 0 2px;
}
.popular__menu li a {
  display: block;
  font-weight: 600;
  font-size: 16px;
  line-height: 130%;
  padding: 12px 24px;
  background: #EFEFEF;
  border-radius: 50px;
}
.popular__menu li a.selected {
  color: #fff;
  background: #e64224;
}
.about {
  background: #fff;
  padding: 90px 0;
}
.about__info {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-bottom: 60px;
}
.about__image {
  width: calc(50% - 12px);
  border-radius: 8px;
}
.about__content {
  width: calc(50% - 12px);
}
.about__content p {
  margin-bottom: 32px;
  font-size: 18px;
  line-height: 180%;
}
.about__content p span {
  color: #e64224;
  font-weight: 700;
}
.about .section-title {
  margin-bottom: 12px;
}
.about .catalog__btn {
  position: relative;
  top: auto;
  bottom: auto;
  left: auto;
  right: auto;
  margin-bottom: 32px;
}
.about__gallery {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.about__gallery-item {
  width: calc(50% - 10px);
  height: 207px;
  border-radius: 8px;
}
.about__calc {
  background: #fdf0ee url('/local/templates/granit/img/about-calc.png') no-repeat bottom / contain;
  border: 1px solid #F9D6D0;
  border-radius: 8px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 60px 40px;
}
.about__calc-text {
  width: 52.3%;
}
.about__calc-title {
  margin-bottom: 20px;
  font-family: 'Anticva';
  font-weight: 400;
  font-size: 35px;
  line-height: 150%;
}
.about__calc-title span {
  color: #e64224;
}
.about__calc-desc {
  font-weight: 500;
  font-size: 18px;
  line-height: 130%;
}
.about__form {
  width: 43.2%;
}
.about__form .header__callback-btn {
  margin: 0;
  width: 282px;
}
.about__form-inputs {
  padding-bottom: 8px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.about__input {
  width: calc(50% - 6px);
  height: 61px;
  margin-bottom: 12px;
  -webkit-transition: all 200ms ease;
  -moz-transition: all 200ms ease;
  -ms-transition: all 200ms ease;
  -o-transition: all 200ms ease;
  transition: all 200ms ease;
  background: #FBFBFB;
  border: 1px solid #F9D6D0;
  border-radius: 8px;
  padding: 0 20px;
  font-weight: 600;
  font-size: 16px;
}
.about__input:focus {
  border: 1px solid #e64224;
}
.checkbox__input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}
.checkbox__text {
  display: block;
  cursor: pointer;
  -webkit-transition: all 200ms ease;
  -moz-transition: all 200ms ease;
  -ms-transition: all 200ms ease;
  -o-transition: all 200ms ease;
  transition: all 200ms ease;
  margin-bottom: 20px;
  padding-left: 32px;
  font-size: 16px;
  line-height: 24px;
  background: url('/local/templates/granit/img/checkbox.svg') no-repeat 0 0;
}
.checkbox__text a {
  color: #e64224;
}
.checkbox__input:checked + .checkbox__text {
  background: url('/local/templates/granit/img/checkboxa.svg') no-repeat 0 0;
}
.price-compare {
  padding: 90px 0 78px;
  background: #fbfbfb url('/local/templates/granit/img/price-compare.svg') no-repeat right / contain;
}
.price-compare .wrap {
  position: relative;
}
.price-compare__image {
  position: absolute;
  right: 0;
  top: -62px;
  pointer-events: none;
}
.price-compare .section-title {
  margin-bottom: 12px;
}
.price-compare__subtitle {
  margin-bottom: 32px;
  font-size: 22px;
  line-height: 180%;
}
.price-compare__list {
  max-width: 936px;
  margin-bottom: 24px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.price-compare__item {
  width: calc(50% - 12px);
  text-align: center;
  background: #FFFFFF;
  border: 1px solid #E5E5E5;
  border-radius: 8px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 16px 24px;
}
.price-compare__item--our {
  background: rgba(230, 66, 36, 0.05);
  border: 1px solid #E64224;
}
.price-compare__item--our .price-compare__item-price {
  color: #e64224;
}
.price-compare__item--our .price-compare__item-note {
  border-top: 1px solid #e64224;
}
.price-compare__item-title {
  margin-bottom: 4px;
  font-weight: 700;
  font-size: 18px;
  line-height: 130%;
}
.price-compare__item-price {
  margin-bottom: 8px;
  font-weight: 700;
  font-size: 22px;
  line-height: 130%;
}
.price-compare__item-price span {
  font-weight: 700;
  font-size: 37px;
  line-height: 130%;
}
.price-compare__item-note {
  border-top: 1px solid #E5E5E5;
  padding-top: 8px;
  font-size: 16px;
  line-height: 180%;
}
.price-compare__item-note img {
  vertical-align: middle;
  margin: -4px 4px 0 0;
}
.price-compare__benefits {
  padding-bottom: 20px;
  max-width: 936px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.price-compare__benefit {
  width: 32.5%;
  text-align: center;
  padding: 15px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  background: #FFFFFF;
  border: 1px solid #E5E5E5;
  border-radius: 8px;
  font-weight: 500;
  font-size: 16px;
  line-height: 180%;
  margin-bottom: 12px;
}
.price-compare__benefit img {
  vertical-align: middle;
  margin: -2px 4px 0 0;
}
.price-compare .header__callback-btn {
  margin: 0;
  width: 282px;
}
.actions {
  padding: 90px 0;
}
.actions .section-title {
  margin-bottom: 60px;
}
.actions__list {
  overflow: hidden;
  margin-bottom: 90px;
}
.actions__item {
  position: relative;
}
.actions__item:hover .actions__link {
  opacity: 1;
}
.actions__image {
  width: 100%;
  border-radius: 8px;
  margin-bottom: 16px;
}
.actions__title {
  font-weight: 500;
  font-size: 20px;
  line-height: 130%;
}
.actions__date {
  position: absolute;
  left: 16px;
  top: 16px;
  background: #E64224;
  border-radius: 4px;
  color: #fff;
  padding: 4px 12px;
  font-weight: 500;
  font-size: 12px;
  line-height: 16px;
}
.actions__link {
  display: inline-block;
  margin-top: 8px;
  color: #e64224;
  font-weight: 500;
  font-size: 16px;
  line-height: 130%;
  padding-right: 20px;
  background: url('/local/templates/granit/img/arrow9.svg') no-repeat right;
  opacity: 0;
}
.actions .catalog__btn {
  position: relative;
  top: auto;
  bottom: auto;
  left: auto;
  right: auto;
  display: block;
  margin: 0 auto;
  width: 167px;
}
.actions__list2 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  margin-right: -24px;
}
.actions__list2 .actions__item {
  width: calc(33.3334% - 24px);
  margin: 0 24px 24px 0;
  cursor: pointer;
}
.actions--inner {
  padding-top: 40px;
}
.actions--inner .catalog__btn {
  margin: 0 auto 60px auto;
}
.actions--inner h1.section-title {
  margin-bottom: 20px;
}
.actions__top-text {
  margin-bottom: 40px;
  font-size: 22px;
  line-height: 130%;
}
.blog {
  background: #FBFBFB;
  padding: 90px 0;
}
.blog .wrap {
  position: relative;
}
.blog__list {
  overflow: hidden;
  margin-bottom: 40px;
}
.blog__list .swiper-wrapper {
  display: flex;
}
.blog__item {
  position: relative;
  padding: 32px 32px 105px 32px;
  background: #FFFFFF;
  border: 1px solid #E5E5E5;
  border-radius: 8px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  height: auto!important;
  -webkit-transition: all 200ms ease;
  -moz-transition: all 200ms ease;
  -ms-transition: all 200ms ease;
  -o-transition: all 200ms ease;
  transition: all 200ms ease;
}
.blog__item:hover {
  background: rgba(230, 66, 36, 0.05);
  border: 1px solid #E64224;
}
.blog__item .header__callback-btn {
  margin: 0;
  left: 32px;
  bottom: 32px;
  position: absolute;
  width: calc(100% - 64px);
}
.blog__image {
  width: 100%;
  margin-bottom: 24px;
}
.blog__title {
  margin-bottom: 16px;
  font-weight: 700;
  font-size: 22px;
  line-height: 130%;
}
.blog__desc {
  font-size: 16px;
  line-height: 130%;
  margin-bottom: 16px;
}
.blog__info {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.blog__date {
  padding-left: 28px;
  font-size: 16px;
  line-height: 130%;
  color: #878787;
  background: url('/local/templates/granit/img/date.svg') no-repeat left;
}
.blog__count {
  padding-left: 28px;
  font-size: 16px;
  line-height: 130%;
  color: #878787;
  background: url('/local/templates/granit/img/count.svg') no-repeat left;
}
.blog .catalog__btn {
  position: relative;
  top: auto;
  bottom: auto;
  left: auto;
  right: auto;
  display: block;
  margin: 0 auto;
  width: 167px;
}
.blog .catalog__more-button {
  margin-top: 8px;
}
.blog .pages {
  padding-top: 32px;
}
.blog .about__calc {
  margin-top: 60px;
}
.blog--inner {
  padding-top: 40px;
}
.blog--inner .section-title {
  margin-bottom: 20px;
}
.blog__top-text {
  margin-bottom: 40px;
  max-width: 936px;
  font-size: 22px;
  line-height: 130%;
}
.blog__list2 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  margin-right: -24px;
}
.blog__list2 .blog__item {
  width: calc(33.3334% - 24px);
  margin: 0 24px 24px 0;
}
.steps {
  padding: 90px 0;
}
.steps .wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.steps__content {
  width: 66.1%;
}
.steps .section-title {
  margin-bottom: 12px;
}
.steps__subtitle {
  margin-bottom: 44px;
  font-size: 22px;
  line-height: 180%;
}
.steps__list {
  overflow: hidden;
}
.steps__item {
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  height: 270px!important;
  background: #FBFBFB;
  border: 1px solid #E5E5E5;
  border-radius: 8px;
  -webkit-transition: all 200ms ease;
  -moz-transition: all 200ms ease;
  -ms-transition: all 200ms ease;
  -o-transition: all 200ms ease;
  transition: all 200ms ease;
}
.steps__item:hover {
  background: rgba(230, 66, 36, 0.05);
  border: 1px solid #E64224;
}
.steps__item:after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 100%;
  width: 24px;
  height: 24px;
  background: url('/local/templates/granit/img/arrow5.svg') center / cover;
}
.steps__icon {
  position: absolute;
  left: 24px;
  top: 24px;
}
.steps__number {
  position: absolute;
  top: 24px;
  right: 24px;
  font-weight: 900;
  font-size: 20px;
  line-height: 130%;
  color: #D4D4D4;
}
.steps__info {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 24px;
  line-height: 130%;
}
.steps__info h3 {
  margin-bottom: 8px;
  font-weight: 700;
  font-size: 18px;
  line-height: 130%;
}
.steps__form {
  width: 32.2%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 38px 40px;
  background: #FDF0EE;
  border: 1px solid #F9D6D0;
  border-radius: 8px;
}
.steps__form .about__calc-title {
  font-size: 32px;
  margin-bottom: 12px;
}
.steps__form .about__calc-desc {
  line-height: 120%;
  margin-bottom: 20px;
}
.steps__form .about__input {
  width: 100%;
}
.steps__form .checkbox__text {
  font-size: 14px;
  margin: 8px 0 20px;
}
.steps__form .header__callback-btn {
  width: 100%;
  margin: 0;
}
.promo-banner {
  padding: 40px 0;
}
.promo-banner__content {
  background: url('/local/templates/granit/img/promo-banner.png') center / cover;
  border-radius: 8px;
  padding: 40px;
  color: #fff;
}
.promo-banner__title {
  margin-bottom: 8px;
  max-width: 808px;
  font-family: 'Anticva';
  font-weight: 400;
  font-size: 40px;
  line-height: 130%;
}
.promo-banner__offer {
  display: inline-block;
  margin-bottom: 24px;
  background: rgba(230, 66, 36, 0.35);
  border: 1px solid #E64224;
  border-radius: 50px;
  padding: 8px 20px;
  font-weight: 700;
  font-size: 20px;
  line-height: 130%;
}
.promo-banner .hero__features {
  padding-bottom: 12px;
}
.promo-banner .header__callback-btn {
  margin: 0;
  width: 280px;
}
.works {
  padding: 90px 0;
}
.works .wrap {
  position: relative;
}
.works .section-title {
  margin-bottom: 60px;
}
.works__list {
  overflow: hidden;
}
.works__item {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 32px;
  background: #FBFBFB;
  border: 1px solid #E5E5E5;
  border-radius: 8px;
  -webkit-transition: all 200ms ease;
  -moz-transition: all 200ms ease;
  -ms-transition: all 200ms ease;
  -o-transition: all 200ms ease;
  transition: all 200ms ease;
}
.works__item:hover {
  background: rgba(230, 66, 36, 0.05);
  border: 1px solid #E64224;
}
.works__photos {
  overflow: hidden;
  position: relative;
  margin-bottom: 24px;
}
.works__photo {
  font-size: 0;
}
.works__photo img {
  width: 100%;
  border-radius: 8px;
}
.works__dots {
  position: absolute;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 8px;
  box-sizing: border-box;
  left: 0;
  bottom: 0;
  z-index: 5;
}
.works__dots span {
  flex: 1 1 auto;
  height: 4px;
  aspect-ratio: 1;
  background: rgba(255, 255, 255, 0.4);
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  opacity: 1;
}
.works__dots span.swiper-pagination-bullet-active {
  background: #fff;
}
.works__adress {
  padding-left: 24px;
  margin-bottom: 20px;
  font-size: 16px;
  line-height: 130%;
  color: #878787;
  background: url('/local/templates/granit/img/adress2.svg') no-repeat left;
}
.works__services h4 {
  font-weight: 700;
  font-size: 18px;
  line-height: 130%;
}
.works__services-list {
  font-size: 0;
  padding-top: 4px;
}
.works__services-list li {
  display: inline-block;
  margin: 4px 4px 0 0;
  color: #e64224;
  font-weight: 600;
  font-size: 14px;
  line-height: 130%;
  padding: 4px 8px;
  background: rgba(230, 66, 36, 0.1);
  border: 1px solid #E64224;
  border-radius: 4px;
}
.works__list2 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-right: -24px;
}
.works__list2 .works__item {
  width: calc(33.3334% - 24px);
  margin: 0 24px 24px 0;
}
.works .catalog__more-button {
  margin-top: 8px;
}
.works .pages {
  padding-top: 32px;
}
.works .about__calc {
  margin-top: 60px;
}
.works--inner {
  padding-top: 40px;
}
.works--inner .section-title {
  margin-bottom: 40px;
}
.works .catalog__btn {
  position: relative;
  top: auto;
  bottom: auto;
  left: auto;
  right: auto;
  display: block;
  margin: 40px auto 0 auto;
  width: 167px;
}
.reviews {
  background: #FBFBFB;
  padding: 90px 0;
}
.reviews .wrap {
  position: relative;
}
.reviews .section-title {
  margin-bottom: 20px;
}
.reviews .steps__subtitle {
  margin-bottom: 60px;
}
.reviews__list {
  overflow: hidden;
  margin-bottom: 40px;
}
.reviews__list .swiper-wrapper {
  display: flex;
}
.reviews__list .swiper-slide {
  height: auto;
}
.reviews__item {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  background: #FFFFFF;
  border: 1px solid #E5E5E5;
  border-radius: 8px;
  padding: 32px 32px 100px 32px;
  position: relative;
  -webkit-transition: all 200ms ease;
  -moz-transition: all 200ms ease;
  -ms-transition: all 200ms ease;
  -o-transition: all 200ms ease;
  transition: all 200ms ease;
}
.reviews__item:hover {
  background: rgba(230, 66, 36, 0.05);
  border: 1px solid #E64224;
}
.reviews__item-top {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-bottom: 16px;
}
.reviews__author {
  font-weight: 700;
  font-size: 20px;
  line-height: 130%;
}
.reviews__rating {
  padding-left: 24px;
  background: url('/local/templates/granit/img/star.svg') no-repeat left;
  font-weight: 500;
  font-size: 16px;
  line-height: 26px;
}
.reviews__desc {
  font-size: 16px;
  line-height: 160%;
  display: -webkit-box;
  -webkit-line-clamp: 10;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.reviews__photo {
  margin-top: 20px;
}
.reviews__link {
  position: absolute;
  left: 32px;
  bottom: 32px;
  text-align: center;
  width: calc(100% - 64px);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  background: #FBFBFB;
  border: 1px solid #E5E5E5;
  border-radius: 8px;
  height: 47px;
  line-height: 45px;
  font-size: 16px;
}
.reviews__link img {
  vertical-align: middle;
  margin: -2px 4px 0 0;
}
.reviews__sites h4 {
  margin-bottom: 16px;
  font-weight: 500;
  font-size: 22px;
  line-height: 130%;
}
.reviews__sites .top-menu__widget {
  padding: 20px 0;
  background: #FFFFFF;
  border: 1px solid #E5E5E5;
  border-radius: 8px;
  text-align: center;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  display: inline-block;
  width: 224px;
  margin-right: 8px;
}
.contacts {
  padding: 90px 0;
}
.contacts .wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.contacts .section-title {
  margin-bottom: 60px;
  width: 100%;
}
.contacts__left {
  width: 32.3%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  background: #FBFBFB;
  border: 1px solid #E5E5E5;
  border-radius: 8px;
  padding: 32px;
}
.contacts__item:not(:last-child) {
  padding-bottom: 20px;
  margin-bottom: 20px;
  border-bottom: 1px solid #E5E5E5;
}
.contacts__item--active .contacts__header {
  background: url('/local/templates/granit/img/adress3.svg') no-repeat left, url('/local/templates/granit/img/arrow7.svg') no-repeat right;
}
.contacts__item--active .contacts__content {
  max-height: 3000px;
}
.contacts__header {
  cursor: pointer;
  padding: 0 28px;
  font-weight: 500;
  font-size: 18px;
  line-height: 130%;
  background: url('/local/templates/granit/img/adress3.svg') no-repeat left, url('/local/templates/granit/img/arrow6.svg') no-repeat right;
}
.contacts__content {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.4s ease, padding 0.4s ease;
}
.contacts__phone {
  margin-top: 20px;
  display: block;
  font-weight: 500;
  font-size: 18px;
  line-height: 130%;
  padding-left: 28px;
  background: url('/local/templates/granit/img/phone.svg') no-repeat left;
}
.contacts__photo {
  margin-top: 20px;
}
.contacts__photo img {
  width: 100%;
}
.contacts__right {
  width: 66.2%;
  border-radius: 8px;
  overflow: hidden;
}
.contacts__map {
  height: 100%;
  display: none;
}
.contacts__map--active {
  display: block;
}
.contacts--inner {
  padding-top: 40px;
}
.contacts--inner .wrap {
  display: block;
}
.contacts--inner .section-title {
  margin-bottom: 20px;
}
.contacts__text {
  max-width: 936px;
  margin-bottom: 40px;
}
.contacts__text p {
  margin-bottom: 24px;
  font-size: 18px;
  line-height: 160%;
}
.contacts__text p span {
  font-weight: 700;
}
.contacts__text .faq__buttons {
  max-width: 480px;
}
.contacts .about__calc {
  margin-top: 60px;
}
.footer {
  background: url('/local/templates/granit/img/footer.png') center / cover;
  padding: 40px 0 20px;
}
.footer__grid {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.footer__col--company {
  width: 336px;
}
.footer__logo {
  margin-bottom: 18px;
}
.footer__logo img {
  width: 216px;
}
.footer__copy {
  font-weight: 500;
  font-size: 16px;
  line-height: 130%;
  color: #3C3C3C;
}
.footer__copy p {
  font-weight: 700;
}
.footer__heading {
  margin-bottom: 12px;
  font-weight: 700;
  font-size: 16px;
  line-height: 130%;
}
.footer__item:not(:last-child) {
  margin-bottom: 12px;
}
.footer__link {
  display: inline-block;
  font-size: 16px;
  line-height: 130%;
  color: #3C3C3C;
}
.footer__link:hover {
  color: #e64224;
}
.footer__address {
  margin-bottom: 12px;
}
.footer__address p {
  margin-bottom: 8px;
  font-size: 16px;
  line-height: 130%;
  color: #3C3C3C;
}
.footer__phone {
  display: block;
  padding-left: 28px;
  font-weight: 700;
  font-size: 22px;
  line-height: 130%;
  color: #3C3C3C;
  background: url('/local/templates/granit/img/phone.svg') no-repeat left;
}
.footer__phone:hover {
  color: #e64224;
}
.footer__socials {
  font-size: 0;
}
.footer__socials a {
  display: inline-block;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  text-align: center;
  width: 44px;
  height: 44px;
  line-height: 42px;
  background: #FFFFFF;
  border: 1px solid #E5E5E5;
  border-radius: 8px;
}
.footer__socials a:not(:last-child) {
  margin-right: 8px;
}
.footer__socials a:hover {
  border: 1px solid #ff6042;
}
.footer__socials a svg {
  vertical-align: middle;
}
.footer__bottom {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-top: 40px;
  border-top: 1px solid #D9D9D9;
  padding-top: 20px;
}
.footer__legal-link {
  display: inline-block;
  text-decoration: underline;
  font-size: 16px;
  line-height: 130%;
  color: #3C3C3C;
}
.footer__legal-link:not(:last-child) {
  margin-right: 40px;
}
.footer__legal-link:hover {
  color: #e64224;
}
.footer__dev {
  font-size: 16px;
  line-height: 130%;
  color: #3C3C3C;
}
.footer__dev a {
  color: #3C3C3C;
}
.footer__dev a:hover {
  color: #e64224;
}
.breadcrumbs {
  margin-bottom: 20px;
  font-size: 18px;
  line-height: 130%;
  color: #878787;
}
.breadcrumbs a:hover {
  color: #e64224;
}
.company__about {
  padding: 40px 0 90px;
}
.company__about .section-title {
  margin-bottom: 20px;
}
.company__top-text {
  margin-bottom: 20px;
  font-weight: 700;
  font-size: 22px;
  line-height: 180%;
}
.company__about-content {
  width: calc(50% - 12px);
}
.company__about-content p {
  font-size: 18px;
  line-height: 180%;
}
.company__about-content p span {
  font-weight: 700;
  color: #e64224;
}
.company__about-image {
  width: calc(50% - 12px);
}
.company__about-image img {
  width: 100%;
}
.company__quality {
  background: #FBFBFB;
  padding: 90px 0;
}
.company__quality .company__about-content p:not(:last-child) {
  margin-bottom: 32px;
}
.company__quality-features {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding-top: 40px;
}
.company__feature {
  width: 32.3%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  text-align: center;
  background: #FFFFFF;
  border: 1px solid #E5E5E5;
  border-radius: 8px;
  padding: 28px 10px;
  font-weight: 700;
  font-size: 20px;
  line-height: 130%;
}
.company__feature span {
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  background: url('/local/templates/granit/img/check.svg');
  margin: -2px 4px 0 0;
}
.company__delivery {
  padding: 90px 0;
}
.company__delivery .header__callback-btn {
  width: 252px;
  margin: 0;
}
.company__delivery-rates {
  margin: 24px 0;
  background: #FBFBFB;
  border: 1px solid #E5E5E5;
  border-radius: 8px;
  padding: 28px;
}
.company__delivery-rates p {
  font-weight: 700;
}
.company__list {
  padding-left: 20px;
  list-style: disc;
  font-size: 18px;
  line-height: 180%;
}
.company__social {
  padding: 90px 0;
  background: #FBFBFB;
}
.company__social .company__about-image {
  width: 47.2%;
}
.company__social .company__about-content {
  width: 49.3%;
}
.company__social .company__about-content p {
  margin-bottom: 24px;
  font-size: 22px;
  line-height: 180%;
}
.company__slider {
  position: relative;
}
.company__slider .swiper9 {
  overflow: hidden;
}
.company__slider-link {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 3;
  width: 24px;
  height: 24px;
}
.company__slider-link--prev {
  left: -30px;
  background: url('/local/templates/granit/img/prev2.svg');
}
.company__slider-link--next {
  right: -30px;
  background: url('/local/templates/granit/img/next2.svg');
}
.faq {
  padding: 90px 0 82px;
  background: url('/local/templates/granit/img/faq.png') no-repeat bottom 0 left calc(50% + 360px);
}
.faq .wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.faq .section-title {
  margin-bottom: 20px;
}
.faq__left {
  width: 57.6%;
}
.faq__description {
  margin-bottom: 40px;
  max-width: 445px;
  font-size: 22px;
  line-height: 130%;
}
.faq__description a {
  color: #e64224;
  font-weight: 700;
}
.faq__item {
  margin-bottom: 8px;
  background: #FBFBFB;
  border: 1px solid #E5E5E5;
  border-radius: 8px;
  padding: 24px;
  -webkit-transition: all 200ms ease;
  -moz-transition: all 200ms ease;
  -ms-transition: all 200ms ease;
  -o-transition: all 200ms ease;
  transition: all 200ms ease;
}
.faq__item:hover {
  border: 1px solid #e64224;
}
.faq__item--active .faq__trigger {
  background: url('/local/templates/granit/img/faq2.svg') no-repeat right;
}
.faq__trigger {
  cursor: pointer;
  list-style-type: none;
  font-weight: 700;
  font-size: 20px;
  line-height: 130%;
  padding-right: 30px;
  background: url('/local/templates/granit/img/faq.svg') no-repeat right;
}
.faq__content {
  padding-top: 20px;
  font-size: 16px;
  line-height: 160%;
  color: #3C3C3C;
  display: none;
  overflow: hidden;
}
.faq__content p:not(:last-child) {
  margin-bottom: 24px;
}
.faq__right {
  width: 40.7%;
}
.faq__right .faq__description {
  max-width: 100%;
}
.faq__buttons {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.faq__buttons .catalog__btn {
  position: relative;
  top: auto;
  bottom: auto;
  left: auto;
  right: auto;
  width: calc(50% - 6px);
}
.faq__buttons .catalog__btn svg {
  vertical-align: middle;
  margin: -2px 4px 0 0;
}
.pages {
  text-align: center;
  padding-top: 24px;
}
.pages li {
  display: inline-block;
  vertical-align: middle;
  margin: 0 4px;
}
.pages__page {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  vertical-align: middle;
  width: 44px;
  height: 44px;
  line-height: 42px;
  background: #FFFFFF;
  border: 1px solid #E5E5E5;
  border-radius: 8px;
  font-weight: 600;
  font-size: 16px;
  color: #3C3C3C;
  display: inline-block;
}
.pages__page:hover {
  border: 1px solid #e64224;
}
.pages__page--current {
  background: #E5E5E5;
}
.pages__page--current:hover {
  border: 1px solid #E5E5E5;
}
.pages__page--first {
  background: url('/local/templates/granit/img/page-first.svg') no-repeat center;
}
.pages__page--first:hover {
  background: #e5e5e5 url('/local/templates/granit/img/page-first.svg') no-repeat center;
  border: 1px solid #E5E5E5;
}
.pages__page--prev {
  background: url('/local/templates/granit/img/page-prev.svg') no-repeat center;
}
.pages__page--prev:hover {
  background: #e5e5e5 url('/local/templates/granit/img/page-prev.svg') no-repeat center;
  border: 1px solid #E5E5E5;
}
.pages__page--next {
  background: url('/local/templates/granit/img/page-next.svg') no-repeat center;
}
.pages__page--next:hover {
  background: #e5e5e5 url('/local/templates/granit/img/page-next.svg') no-repeat center;
  border: 1px solid #E5E5E5;
}
.pages__page--last {
  background: url('/local/templates/granit/img/page-last.svg') no-repeat center;
}
.pages__page--last:hover {
  background: #e5e5e5 url('/local/templates/granit/img/page-last.svg') no-repeat center;
  border: 1px solid #E5E5E5;
}
.services {
  padding: 40px 0 90px;
}
.services__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding-bottom: 36px;
}
.services__item {
  width: calc(50% - 12px);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin-bottom: 24px;
  background: #FFFFFF;
  border: 1px solid #E5E5E5;
  border-radius: 8px;
  padding: 32px;
  -webkit-transition: all 200ms ease;
  -moz-transition: all 200ms ease;
  -ms-transition: all 200ms ease;
  -o-transition: all 200ms ease;
  transition: all 200ms ease;
}
.services__item:hover {
  background: #FFFFFF;
  border: 1px solid #E64224;
}
.services__item:hover .services__icon {
  background: url('/local/templates/granit/img/arrow10.svg') no-repeat right;
}
.services__icon {
  margin-bottom: 20px;
  position: relative;
}
.services__icon a {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
.services__title {
  margin-bottom: 8px;
  font-weight: 700;
  font-size: 22px;
  line-height: 130%;
}
.services__desc {
  font-size: 16px;
  line-height: 130%;
}
.services__tags {
  font-size: 0;
  padding-top: 8px;
}
.services__tag {
  display: inline-block;
  margin: 4px 4px 0 0;
  color: #e64224;
  font-weight: 600;
  font-size: 14px;
  line-height: 130%;
  padding: 4px 8px;
  background: rgba(230, 66, 36, 0.1);
  border: 1px solid #E64224;
  border-radius: 4px;
}
.service__block1 {
  padding: 40px 0 90px;
  background: #FBFBFB;
}
.service__hero {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.service__hero-content {
  width: calc(50% - 12px);
}
.service__hero-content .header__callback-btn {
  display: block;
  margin: 0;
  width: 282px;
  height: 53px;
}
.service__title {
  margin-bottom: 20px;
  font-family: 'Anticva';
  font-weight: 400;
  font-size: 52px;
  line-height: 130%;
}
.service__hero-desc {
  margin-bottom: 20px;
  font-size: 22px;
  line-height: 130%;
}
.service__hero-features {
  display: inline-block;
  margin-bottom: 20px;
  background: rgba(230, 66, 36, 0.05);
  border: 1px solid #E64224;
  border-radius: 8px;
  padding: 24px 24px 12px 24px;
}
.service__hero-features li {
  margin-bottom: 12px;
  padding-left: 20px;
  position: relative;
  font-size: 16px;
  line-height: 130%;
}
.service__hero-features li:before {
  content: "";
  position: absolute;
  top: 7px;
  left: 0;
  width: 8px;
  height: 8px;
  background: #E64224;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
}
.service__hero-image {
  width: calc(50% - 12px);
}
.service__hero-image img {
  width: 100%;
}
.service__hero-image--mob {
  display: none;
}
.service__block2 {
  padding: 90px 0;
}
.service__block2 p {
  font-size: 18px;
  line-height: 160%;
}
.service__block2 p:not(:last-child) {
  margin-bottom: 32px;
}
.service__block2 p span {
  font-weight: 700;
}
.service__sub-title {
  margin-bottom: 20px;
  max-width: 936px;
  font-family: 'Anticva';
  font-weight: 400;
  font-size: 40px;
  line-height: 130%;
}
.service__block3 {
  padding: 90px 0;
  background: #FBFBFB;
}
.service__steps {
  padding-bottom: 16px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.service__step {
  width: calc(50% - 12px);
  margin-bottom: 24px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  background: #FFFFFF;
  border: 1px solid #E5E5E5;
  border-radius: 8px;
  -webkit-transition: all 200ms ease;
  -moz-transition: all 200ms ease;
  -ms-transition: all 200ms ease;
  -o-transition: all 200ms ease;
  transition: all 200ms ease;
  padding: 28px;
}
.service__step:hover {
  background: #FDF0EE;
  border: 1px solid #F9D6D0;
}
.service__step-title {
  margin-bottom: 12px;
  padding-left: 32px;
  font-weight: 700;
  font-size: 22px;
  line-height: 130%;
  background: url('/local/templates/granit/img/check.svg') no-repeat 0 2px;
}
.service__step-desc {
  font-size: 16px;
  line-height: 130%;
}
.popup {
  filter: drop-shadow(0px 15px 30px rgba(23, 26, 28, 0.05));
  border-radius: 20px;
}
.service-popup__image {
  margin-bottom: 32px;
}
.service-popup__title {
  margin-bottom: 20px;
  font-weight: 700;
  font-size: 24px;
  line-height: 130%;
}
.service-popup__subtitle {
  margin-bottom: 12px;
  font-weight: 700;
  font-size: 18px;
  line-height: 130%;
}
.service-popup__desc {
  margin-bottom: 20px;
  font-size: 16px;
  line-height: 160%;
}
.service-popup__promo {
  margin-bottom: 20px;
  padding-left: 32px;
  font-size: 16px;
  line-height: 160%;
  background: url('/local/templates/granit/img/promo.svg') no-repeat 0 0;
}
.service-popup__promo span {
  font-weight: 700;
}
.service-popup__conditions-title {
  margin-bottom: 12px;
  font-weight: 700;
  font-size: 18px;
  line-height: 130%;
}
.service-popup__conditions {
  margin-bottom: 20px;
  padding-left: 20px;
  list-style: disc;
  font-size: 16px;
  line-height: 160%;
}
.service-popup__conditions span {
  font-weight: 700;
}
.service-popup .header__callback-btn {
  margin: 0;
  width: 251px;
  height: 53px;
}
.article {
  padding: 40px 0 90px;
  background: #FBFBFB;
}
.article__text {
  max-width: 936px;
  margin: 0 auto;
  padding-bottom: 32px;
}
.article__text h1 {
  margin-bottom: 20px;
  font-family: 'Anticva';
  font-weight: 400;
  font-size: 40px;
  line-height: 130%;
}
.article__text p {
  margin-bottom: 28px;
  font-size: 18px;
  line-height: 160%;
}
.article__text ul {
  margin: -28px 0 28px;
  list-style: disc;
  padding-left: 20px;
  font-size: 18px;
  line-height: 160%;
}
.article__text h2 {
  margin-bottom: 12px;
  font-weight: 700;
  font-size: 26px;
  line-height: 160%;
}
.article__text h3 {
  margin-bottom: 12px;
  font-weight: 700;
  font-size: 20px;
  line-height: 160%;
}
.article__image {
  width: 100%;
  margin-bottom: 32px;
}
.article__data {
  margin-bottom: 16px;
}
.article__data .blog__date {
  display: inline-block;
  margin: 0 20px 0 0;
}
.article__data .blog__count {
  display: inline-block;
}
.no-page {
  text-align: center;
  padding: 40px 0 90px;
}
.no-page__image {
  margin-bottom: 28px;
}
.no-page__title {
  margin-bottom: 20px;
  font-weight: 700;
  font-size: 40px;
  line-height: 130%;
}
.no-page__desc {
  margin-bottom: 28px;
  font-size: 20px;
  line-height: 130%;
}
.no-page__buttons button {
  padding: 0 20px;
  margin: 0 4px;
  height: 48px;
  font-weight: 600;
  font-size: 16px;
  color: #fff;
  border-radius: 8px;
}
.no-page__buttons button:nth-child(1) {
  background: #3C3C3C;
}
.no-page__buttons button:nth-child(1):hover {
  background: #505050;
}
.no-page__buttons button:nth-child(2) {
  background: #e64224;
}
.no-page__buttons button:nth-child(2):hover {
  background: #ff6042;
}
.no-page__buttons button svg {
  vertical-align: middle;
  margin: -2px 4px 0 0;
}
.product {
  padding: 40px 0 90px;
}
.product__left {
  width: 66.1%;
}
.product__photos {
  width: 61.6%;
  margin-bottom: 24px;
}
.product__main-photos {
  text-align: center;
  margin-bottom: 12px;
  overflow: hidden;
  background: #FFFFFF;
  border: 1px solid #E5E5E5;
  border-radius: 8px;
}
.product__previews {
  text-align: center;
  overflow: hidden;
}
.product__previews .swiper-slide {
  cursor: pointer;
}
.product__options {
  width: 36%;
  margin-bottom: 24px;
}
.product__options h3 {
  margin-bottom: 16px;
  font-weight: 700;
  font-size: 20px;
  line-height: 130%;
}
.product__options h3:not(:first-child) {
  padding-top: 8px;
}
.product__options .checkbox__text {
  margin-bottom: 12px;
}
.product__tabs {
  margin-bottom: 60px;
}
.product__tabs-nav {
  margin-bottom: 16px;
  display: inline-block;
  font-size: 0;
}
.product__tabs-nav li {
  display: inline-block;
  vertical-align: middle;
}
.product__tabs-nav li a {
  display: block;
  border-bottom: 2px solid #E5E5E5;
  padding: 16px 20px;
  font-weight: 700;
  font-size: 18px;
  line-height: 130%;
  color: #878787;
}
.product__tabs-nav li a.selected {
  color: #252525;
  border-bottom: 2px solid #e64224;
}
.product__tab {
  font-size: 16px;
  line-height: 180%;
}
.product__tab ul {
  padding-left: 20px;
  list-style: disc;
}
.product__right {
  width: 32.2%;
  margin-bottom: 60px;
}
.product__right h3 {
  margin-bottom: 12px;
  font-weight: 700;
  font-size: 24px;
  line-height: 130%;
}
.product__params {
  margin-bottom: 24px;
  background: #FFFFFF;
  border: 1px solid #E5E5E5;
  border-radius: 8px;
  padding: 32px;
}
.product__params--mob {
  display: none;
}
.product__params .header__callback-btn {
  width: 100%;
  height: 53px;
  margin: 0 0 20px 0;
}
.product__params h3 {
  margin-bottom: 20px;
}
.product__param {
  margin-bottom: 12px;
  display: table;
  width: 100%;
}
.product__param--bt {
  padding-top: 12px;
  border-top: 1px solid #E5E5E5;
}
.product__param span {
  display: table-cell;
  vertical-align: middle;
  vertical-align: top;
  font-size: 16px;
  line-height: 130%;
}
.product__param span:first-child {
  white-space: nowrap;
  padding-right: 8px;
  color: #878787;
}
.product__param span:last-child {
  width: 100%;
}
.product__price {
  margin-top: 20px;
  padding: 20px 0;
  border-top: 1px solid #E5E5E5;
  color: #e64224;
  font-weight: 800;
  font-size: 32px;
  line-height: 130%;
}
.product__credit {
  margin-bottom: 20px;
  background: rgba(230, 66, 36, 0.05) url('/local/templates/granit/img/credit.svg') no-repeat right / contain;
  border: 1px solid #E64224;
  border-radius: 8px;
  padding: 20px;
  font-weight: 700;
  font-size: 18px;
  line-height: 130%;
}
.product__credit p {
  color: #e64224;
  margin-bottom: 4px;
  font-weight: 700;
  font-size: 16px;
  line-height: 130%;
}
.product__credit p span {
  font-size: 24px;
}
.product__params-bottom {
  font-size: 16px;
  line-height: 130%;
}
.product__gallery {
  margin-bottom: 60px;
}
.product__gallery h3 {
  margin-bottom: 24px;
  font-weight: 700;
  font-size: 28px;
  line-height: 130%;
}
.product__gallery-list {
  max-width: 456px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.product__gallery-item {
  width: calc(50% - 12px);
}
.product__gallery-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 8px;
}
.product__links {
  padding-bottom: 32px;
  max-width: 936px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.product__links-item {
  width: calc(50% - 12px);
  margin-bottom: 28px;
}
.product__links-item h3 {
  margin-bottom: 24px;
  font-weight: 700;
  font-size: 28px;
  line-height: 130%;
}
.product__links-item ul li:not(:last-child) {
  margin-bottom: 12px;
}
.product__links-item ul li a {
  display: inline-block;
  padding-right: 32px;
  background: url('/local/templates/granit/img/arrow8.svg') no-repeat right;
  font-weight: 700;
  font-size: 18px;
  line-height: 130%;
}
.product__links-item ul li a:hover {
  color: #e64224;
}
.product__select {
  width: 100%;
  height: 57px;
  margin-bottom: 8px;
  appearance: none;
  border: 1px solid #E5E5E5;
  border-radius: 8px;
  padding: 0 24px;
  font-weight: 700;
  font-size: 18px;
  background: url('/local/templates/granit/img/select.svg') no-repeat right 24px top 50%;
  display: none;
}
.mobile-menu {
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  background: #fff;
  z-index: 20;
  padding: 28px 0;
  margin-top: 1px;
  display: none;
}
.mobile-menu .wrap {
  display: block;
}
.mobile-menu .header__search-form {
  display: block;
  width: 100%;
  margin-bottom: 20px;
}
.mobile-menu .top-menu__list {
  padding-bottom: 20px;
  margin-bottom: 20px;
  border-bottom: 1px solid #E5E5E5;
}
.mobile-menu .header__contacts {
  display: block;
}
.mobile-menu .header__contacts .header__contacts-adresses {
  display: block;
  margin-bottom: 18px;
}
.mobile-menu .header__contacts .header__contacts-links {
  text-align: left;
}
.mobile-menu .header__contacts .header__contacts-phone {
  margin-bottom: 18px;
  font-family: 'Nunito Sans';
  font-size: 15px;
  line-height: 160%;
}
.mobile-menu .header__contacts .header__contacts-mail {
  margin-bottom: 18px;
}
.mobile-menu .header__contacts .header__contacts-adress:not(:last-child) {
  margin-bottom: 18px;
}
.mobile-menu .header__callback-btn {
  width: 220px;
  margin: 0 18px 0 0;
  vertical-align: middle;
}
.mobile-menu .top-menu__socials {
  display: inline-block;
  vertical-align: middle;
}
.mobile-menu .top-menu__socials a svg {
  width: 28px;
  height: 28px;
}
.mobile-menu .top-menu__widgets {
  padding-top: 20px;
  margin-top: 20px;
  border-top: 1px solid #E5E5E5;
  display: block;
}
.mobile-menu .header__catalog {
  display: none;
  width: auto;
}
.mobile-menu .header__catalog .header__catalog-btn {
  width: 100%;
}
.mobile-menu .header__catalog .catalog-dropdown {
  position: relative;
  top: auto;
  bottom: auto;
  left: auto;
  right: auto;
  width: auto;
  -webkit-border-radius: 0px;
  -moz-border-radius: 0px;
  border-radius: 0px;
  padding: 0;
}
.mobile-menu .header__catalog .catalog-dropdown__tab-btn {
  font-size: 12px;
}
.mobile-menu .header__catalog .catalog-dropdown__tab-btn span {
  display: none;
}
.mobile-menu .header__catalog .catalog-dropdown__right {
  width: 100%;
}
.mobile-menu .header__catalog .catalog-dropdown__subpanel h3 {
  color: #e64224;
  margin-bottom: 16px;
  font-weight: 700;
  font-size: 18px;
  line-height: 24px;
}
.mobile-menu .header__catalog .catalog-dropdown__links-list {
  display: block;
  height: 360px;
  padding: 0 20px;
  overflow-y: scroll;
}
.mobile-menu .header__catalog .catalog-dropdown__links-list li {
  width: 100%;
  margin-bottom: 12px;
}
.popup {
  padding: 40px!important;
}
.popup .about__calc-text {
  width: 100%;
  margin-bottom: 20px;
}
.popup .about__calc-text .about__calc-title {
  font-size: 33px;
}
.popup .about__form {
  width: 100%;
}
.popup .about__form .about__input {
  width: 100%;
}
.popup .about__form .header__callback-btn {
  width: 100%;
  height: 53px;
}
.popup__mess {
  padding-top: 20px;
}
.popup__mess p {
  margin-bottom: 20px;
  font-weight: 500;
  font-size: 18px;
  line-height: 130%;
}
@media (max-width: 1446px) {
  .wrap {
    width: 970px;
  }
  .header__contacts-adresses {
    display: none;
  }
  .header__contacts {
    width: auto;
  }
  .header__search-form {
    width: 220px;
    margin-right: 0;
  }
  .header__catalog {
    margin-left: 0;
  }
  .header__catalog-btn {
    width: 130px;
  }
  .top-menu__item:not(:last-child) {
    margin-right: 16px;
  }
  .top-menu__widget {
    margin-right: 16px;
  }
  .top-menu__socials {
    padding-left: 0;
  }
  .catalog-dropdown {
    width: 768px;
    padding: 28px;
  }
  .catalog-dropdown__tabs {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 20px;
  }
  .catalog-dropdown__tab-btn:not(:last-child) {
    margin-right: 0;
  }
  .catalog-dropdown__tab-btn {
    width: 32.5%;
    padding: 0;
  }
  .catalog-dropdown__left {
    width: 39%;
    padding-right: 12px;
  }
  .catalog-dropdown__item {
    font-size: 16px;
  }
  .catalog-dropdown__right {
    width: 59%;
  }
  .catalog-dropdown__links-list li {
    width: calc(50% - 10px);
  }
  .catalog-dropdown__link {
    font-size: 16px;
  }
  .hero__title {
    font-size: 48px;
  }
  .offers__heading {
    padding: 5px 0;
  }
  .catalog__item {
    width: calc(50% - 24px);
  }
  .about__calc {
    padding: 40px;
  }
  .price-compare__list {
    max-width: 700px;
  }
  .price-compare__benefits {
    max-width: 700px;
    position: relative;
  }
  .price-compare__benefit {
    width: 49%;
  }
  .price-compare__benefit:last-child {
    width: 100%;
  }
  .price-compare__image {
    width: 400px;
    top: 100px;
  }
  .actions__title {
    font-size: 18px;
  }
  .blog__item {
    padding: 20px 20px 85px 20px;
  }
  .blog__item .header__callback-btn {
    left: 20px;
    bottom: 20px;
    width: calc(100% - 40px);
  }
  .steps__content {
    width: 100%;
    margin-bottom: 24px;
  }
  .steps__form {
    width: 100%;
  }
  .promo-banner__title {
    font-size: 36px;
  }
  .works__item {
    padding: 24px;
  }
  .reviews__item {
    padding: 24px 24px 90px 24px;
  }
  .reviews__link {
    left: 24px;
    bottom: 24px;
    width: calc(100% - 48px);
  }
  .reviews__list {
    width: calc(50vw + 50%);
  }
  .reviews__list .swiper-slide {
    width: 340px;
  }
  .contacts__left {
    padding: 24px;
    width: 46%;
  }
  .contacts__right {
    width: 52%;
  }
  .footer__col {
    margin-bottom: 40px;
  }
  .footer__col--company {
    width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 28px;
  }
  .footer__logo {
    margin: 0;
    width: 167px;
  }
  .footer__copy {
    width: calc(100% - 187px);
  }
  .footer__col--contacts {
    width: 100%;
    margin-bottom: 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .footer__heading {
    width: 100%;
  }
  .company__about-content {
    width: 100%;
    margin-bottom: 24px;
    order: 1;
  }
  .company__about-image {
    width: 100%;
    order: 2;
  }
  .company__feature span {
    display: block;
    margin: 0 auto 12px auto;
  }
  .company__social .company__about-image {
    width: 100%;
    margin-bottom: 10px;
    order: 1;
  }
  .company__social .company__about-content {
    width: 100%;
    margin: 0;
    order: 2;
  }
  .faq__left {
    width: 100%;
    padding-bottom: 32px;
  }
  .faq__right {
    width: 354px;
  }
  .faq__buttons .catalog__btn {
    width: 100%;
  }
  .faq__buttons .catalog__btn:not(:last-child) {
    margin-bottom: 12px;
  }
  .faq {
    background: url('/local/templates/granit/img/faq.png') no-repeat bottom 0 left calc(50% + 120px);
    background-size: 354px;
  }
  .catalog__filter-form {
    padding: 24px;
  }
  .catalog__filter-clear {
    top: 29px;
    right: 24px;
  }
  .catalog__filter {
    width: 25%;
  }
  .catalog__page {
    width: 73%;
  }
  .product__left {
    width: 100%;
  }
  .product__right {
    width: 100%;
  }
  .service__hero-content {
    width: 100%;
    margin-bottom: 24px;
  }
  .service__hero-image {
    width: 100%;
  }
  .contacts__text .faq__buttons .catalog__btn {
    width: calc(50% - 6px);
  }
  .hero .wrap {
    background: url('/local/templates/granit/img/hero.png') no-repeat right / contain;
  }
}
@media (max-width: 991px) {
  .wrap {
    width: 728px;
  }
  .header__search-form {
    display: none;
  }
  .header__contacts {
    display: none;
  }
  .top-menu {
    display: none;
  }
  .header__logo {
    width: 158px;
  }
  .header__catalog {
    width: calc(100% - 178px);
  }
  .catalog-dropdown {
    left: -178px;
  }
  .header .wrap {
    position: relative;
  }
  .header__burger {
    display: block;
  }
  .header {
    position: relative;
  }
  .hero .wrap {
    padding: 60px 0 50px;
  }
  .hero__title {
    font-size: 40px;
  }
  .hero__subtitle {
    font-size: 25px;
  }
  .advantages {
    padding: 60px 0 40px;
  }
  .section-title {
    font-size: 36px;
  }
  .advantages__item {
    width: 48.5%;
    margin-bottom: 20px;
  }
  .offers {
    padding: 60px 0;
  }
  .offers__item {
    width: 31.5%;
    padding: 20px;
  }
  .offers__image {
    margin-bottom: 12px;
  }
  .offers__heading {
    padding: 0;
    font-size: 20px;
    margin-bottom: 12px;
  }
  .offers__info {
    padding-top: 12px;
  }
  .offers__material {
    font-size: 16px;
  }
  .offers__price {
    font-size: 20px;
  }
  .catalog {
    padding: 60px 0 40px;
  }
  .catalog__btn {
    top: 0;
  }
  .catalog__item {
    height: 257px;
    margin-bottom: 20px;
  }
  .catalog__image img {
    height: 208px;
  }
  .catalog__item .offers__heading {
    padding-right: 120px;
  }
  .popular {
    padding: 60px 0;
  }
  .popular__slider-nav {
    display: none;
  }
  .popular__list .swiper-slide {
    width: 261px;
  }
  .about {
    padding: 60px 0;
  }
  .about__image {
    width: 100%;
    height: 263px;
    margin-bottom: 24px;
  }
  .about__content {
    width: 100%;
  }
  .about__info {
    margin-bottom: 40px;
  }
  .about__calc {
    padding: 28px;
  }
  .about__calc-text {
    width: 100%;
    margin-bottom: 20px;
  }
  .about__form {
    width: 100%;
  }
  .price-compare {
    padding: 60px 0;
  }
  .price-compare__list {
    max-width: 565px;
  }
  .price-compare__item {
    padding: 16px 12px;
  }
  .price-compare__benefits {
    max-width: 565px;
  }
  .price-compare__benefit {
    font-size: 14px;
  }
  .price-compare__image {
    width: 376px;
    right: -50px;
  }
  .actions {
    padding: 60px 0;
  }
  .actions .section-title {
    margin-bottom: 40px;
  }
  .actions__title {
    font-size: 16px;
  }
  .actions__link {
    opacity: 1;
  }
  .actions__list {
    margin-bottom: 24px;
  }
  .blog {
    padding: 60px 0;
  }
  .blog .catalog__btn {
    position: absolute;
    right: 0;
    top: 0;
  }
  .blog__list {
    width: calc(50vw + 50%);
  }
  .blog__list .swiper-slide {
    width: 340px;
  }
  .blog__image {
    margin-bottom: 12px;
  }
  .blog__title {
    font-size: 18px;
  }
  .blog__desc {
    font-size: 14px;
  }
  .blog__date {
    font-size: 14px;
  }
  .blog__count {
    font-size: 14px;
  }
  .steps {
    padding: 60px 0;
  }
  .steps__subtitle {
    font-size: 18px;
    margin-bottom: 40px;
  }
  .steps__icon {
    top: 20px;
    left: 20px;
    width: 60px;
  }
  .steps__info {
    padding: 20px;
    font-size: 12px;
  }
  .steps__item {
    height: 207px!important;
  }
  .steps__item:after {
    width: 20px;
    height: 20px;
  }
  .steps__form {
    padding: 28px;
  }
  .promo-banner__content {
    padding: 40px 194px 40px 40px;
  }
  .promo-banner__title {
    font-size: 34px;
    margin-bottom: 12px;
  }
  .promo-banner__offer {
    font-size: 18px;
  }
  .promo-banner__content {
    background: url('/local/templates/granit/img/promo-banner2.png') center / cover;
  }
  .works {
    padding: 60px 0;
  }
  .works .section-title {
    margin-bottom: 40px;
  }
  .works .catalog__btn {
    position: absolute;
    right: 0;
    top: 0;
    margin: 0;
  }
  .works__list {
    width: calc(50vw + 50%);
  }
  .works__list .swiper-slide {
    width: 340px;
  }
  .reviews {
    padding: 60px 0;
  }
  .reviews .steps__subtitle {
    margin-bottom: 18px;
  }
  .contacts {
    padding: 60px 0;
  }
  .contacts .section-title {
    margin-bottom: 40px;
  }
  .contacts__left {
    width: calc(50% - 10px);
  }
  .contacts__right {
    width: calc(50% - 10px);
  }
  .footer__legal {
    width: 100%;
    margin-bottom: 20px;
  }
  .company__about {
    padding: 40px 0 60px;
  }
  .company__top-text {
    font-size: 20px;
  }
  .company__about-content p {
    font-size: 16px;
  }
  .company__quality {
    padding: 60px 0;
  }
  .company__quality .company__about-content p {
    font-size: 18px;
  }
  .company__feature {
    font-size: 16px;
    padding: 20px;
  }
  .company__delivery {
    padding: 60px 0;
  }
  .company__delivery .company__about-content p {
    font-size: 18px;
  }
  .company__social {
    padding: 60px 0;
  }
  .company__social .company__about-content p {
    font-size: 18px;
  }
  .company__slider-link {
    display: none;
  }
  .company__slider .swiper9 {
    width: calc(50vw + 50%);
  }
  .company__slider .swiper9 .swiper-slide {
    width: 216px;
  }
  .catalog {
    padding: 40px 0;
  }
  .catalog--inner .catalog__list {
    padding-bottom: 40px;
  }
  .faq {
    padding: 60px 0 136px;
  }
  .faq__trigger {
    font-size: 18px;
  }
  .faq .section-title {
    white-space: nowrap;
  }
  .faq {
    background: url('/local/templates/granit/img/faq.png') no-repeat bottom 0 left calc(50% + 160px);
    background-size: 354px;
  }
  .catalog__filter {
    width: 100%;
    display: none;
  }
  .catalog__filter.catalog__filter--active {
    display: block;
  }
  .catalog__mob-button {
    display: block;
  }
  .catalog--inner h1.section-title {
    margin-bottom: 20px;
  }
  .catalog__page {
    width: 100%;
  }
  .product {
    padding: 40px 0 60px;
  }
  .product__photos {
    width: calc(50% - 10px);
  }
  .product__options {
    width: calc(50% - 10px);
  }
  .product__tabs-nav {
    display: block;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .product__tabs-nav li {
    width: 25%;
  }
  .product__tabs-nav li a {
    text-align: center;
  }
  .product__tabs {
    margin-bottom: 24px;
  }
  .product__params {
    padding: 28px;
    position: relative;
  }
  .product__params .header__callback-btn {
    position: absolute;
    width: 300px;
    right: 0;
    margin: -68px 28px 0 0;
  }
  .product__right .actions__item h3 {
    font-size: 16px;
    font-weight: 400;
  }
  .product__right .actions__link {
    margin-top: 0;
  }
  .product__right {
    margin-bottom: 36px;
  }
  .services {
    padding: 40px 0 60px;
  }
  .services .section-title {
    margin-bottom: 32px;
  }
  .services__item {
    padding: 20px;
    margin-bottom: 20px;
  }
  .services__icon {
    background: url('/local/templates/granit/img/arrow10.svg') no-repeat right;
  }
  .service__block1 {
    padding: 40px 0 60px;
  }
  .service__title {
    font-size: 36px;
  }
  .service__block2 {
    padding: 60px 0;
  }
  .service__sub-title {
    font-size: 36px;
  }
  .service__block3 {
    padding: 40px 0 60px;
  }
  .service__step-title {
    font-size: 20px;
  }
  .popular {
    padding: 40px 0;
  }
  .popular--inn .popular__list {
    width: calc(50vw + 50%);
  }
  .actions--inner {
    padding: 40px 0 60px;
  }
  .works--inner .catalog__btn {
    position: relative;
    top: auto;
    bottom: auto;
    left: auto;
    right: auto;
    display: block;
    margin: 0 auto;
  }
  .works__list2 {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin: 0;
  }
  .works__list2 .works__item {
    width: calc(50% - 10px);
    margin: 0 0 20px 0;
  }
  .blog--inner {
    padding: 40px 0 60px;
  }
  .blog--inner .catalog__btn {
    position: relative;
    top: auto;
    bottom: auto;
    left: auto;
    right: auto;
    display: block;
    margin: 0 auto;
  }
  .blog__list2 {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin: 0;
  }
  .blog__list2 .blog__item {
    width: calc(50% - 10px);
    margin: 0 0 20px 0;
  }
  .article {
    padding: 40px 0 60px;
  }
  .article__text h1 {
    font-size: 36px;
  }
  .blog__list {
    margin-bottom: 0;
  }
  .contacts--inner {
    padding: 40px 0 60px;
  }
  .contacts .section-title {
    margin-bottom: 20px;
  }
  .no-page {
    padding: 40px 0 60px;
  }
}
@media (max-width: 758px) {
  .wrap {
    width: auto;
    padding: 0 10px;
  }
  .header {
    padding: 12px 0;
  }
  .header__catalog {
    display: none;
  }
  .header__burger {
    right: 10px;
  }
  .mobile-menu .header__catalog {
    display: block;
    margin-bottom: 20px;
  }
  .mobile-menu .header__catalog .catalog-dropdown {
    box-shadow: none;
  }
  .mobile-menu .top-menu__list {
    display: block;
  }
  .top-menu__item {
    display: inline-block;
  }
  .top-menu__item:not(:last-child) {
    margin: 0 16px 16px 0;
  }
  .mobile-menu .top-menu__list {
    padding-bottom: 1px;
  }
  .mobile-menu .header__callback-btn {
    width: 168px;
  }
  .hero .wrap {
    padding: 40px 10px;
  }
  .hero__title {
    font-size: 28px;
  }
  .hero__subtitle {
    font-size: 22px;
    margin-bottom: 16px;
  }
  .hero__features {
    padding-bottom: 192px;
  }
  .hero__feature-item {
    font-size: 16px;
  }
  .hero .header__callback-btn {
    width: 100%;
  }
  .hero {
    background: url('/local/templates/granit/img/hero2.png') no-repeat left 0 bottom 86px / contain;
  }
  .advantages {
    padding: 40px 0 32px;
  }
  .section-title {
    font-size: 28px;
    margin-bottom: 28px;
  }
  .advantages__item {
    width: 100%;
    padding: 20px;
    margin-bottom: 8px;
  }
  .advantages__heading {
    font-size: 18px;
  }
  .advantages__number {
    font-size: 150px;
    top: -33px;
  }
  .offers {
    padding: 40px 0 32px;
  }
  .offers__subtitle {
    margin-bottom: 32px;
  }
  .offers__item {
    width: calc(50% - 4px);
    margin-bottom: 8px;
  }
  .offers__item:last-child {
    width: 100%;
  }
  .offers__heading {
    font-size: 16px;
    margin-bottom: 8px;
  }
  .offers__info {
    padding-top: 8px;
  }
  .offers__material {
    width: 100%;
    font-size: 14px;
    margin-bottom: 8px;
  }
  .offers__price {
    font-size: 18px;
  }
  .offers__image {
    margin-bottom: 8px;
  }
  .offers__image img {
    max-height: 155px;
  }
  .catalog .section-title {
    margin-bottom: 12px;
  }
  .catalog__intro {
    font-size: 16px;
    margin-bottom: 12px;
  }
  .catalog__btn {
    position: relative;
    top: auto;
    bottom: auto;
    left: auto;
    right: auto;
    width: 100%;
    margin-bottom: 40px;
  }
  .catalog__list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .catalog__item {
    width: calc(50% - 4px);
    margin: 0 0 8px 0;
    height: auto;
  }
  .catalog__item {
    padding: 16px;
  }
  .catalog__image {
    position: relative;
    top: auto;
    bottom: auto;
    left: auto;
    right: auto;
    text-align: center;
    margin-bottom: 8px;
  }
  .catalog__item .offers__heading {
    padding: 0;
  }
  .catalog__item-info {
    position: relative;
    top: auto;
    bottom: auto;
    left: auto;
    right: auto;
    width: auto;
    padding: 0;
  }
  .catalog__price {
    font-size: 16px;
    margin-bottom: 8px;
  }
  .popular {
    padding: 40px 0;
  }
  .popular__list {
    overflow: visible!important;
  }
  .popular__list .swiper-slide {
    width: 190px;
  }
  .popular__badge {
    top: 8px;
    left: 8px;
    font-size: 10px;
  }
  .popular__title {
    font-size: 16px;
    font-weight: 400;
  }
  .popular__price {
    font-size: 18px;
  }
  .popular__buttons button {
    font-size: 12px;
    height: 36px;
  }
  .popular {
    overflow: hidden;
  }
  .about {
    padding: 40px 0;
  }
  .about__image {
    height: 196px;
  }
  .about__content p {
    font-size: 16px;
    margin-bottom: 20px;
  }
  .about__calc {
    padding: 20px;
  }
  .about__calc-title {
    font-size: 26px;
    margin-bottom: 12px;
  }
  .about__calc-desc {
    font-size: 16px;
  }
  .about__input {
    width: 100%;
  }
  .checkbox__text {
    font-size: 13px;
    margin-bottom: 12px;
  }
  .about__form .header__callback-btn {
    width: 100%;
  }
  .price-compare {
    padding: 40px 0;
  }
  .price-compare__subtitle {
    font-size: 16px;
    margin-bottom: 84px;
  }
  .price-compare__item {
    width: calc(50% - 4px);
  }
  .price-compare {
    overflow: hidden;
  }
  .price-compare__image {
    width: 214px;
    top: -32px;
  }
  .price-compare__item {
    padding: 20px;
  }
  .price-compare__item-title {
    font-size: 16px;
  }
  .price-compare__item-price span {
    font-size: 28px;
    white-space: nowrap;
  }
  .price-compare__item-note {
    font-size: 14px;
    text-align: left;
    padding-left: 32px;
    position: relative;
    line-height: 120%;
  }
  .price-compare__item-note img {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    margin: 4px 0 0 0;
  }
  .price-compare__benefit {
    width: 100%;
    margin-bottom: 8px;
  }
  .price-compare__benefits {
    padding-bottom: 12px;
  }
  .price-compare .header__callback-btn {
    width: 100%;
  }
  .actions {
    padding: 40px 0;
  }
  .actions .section-title {
    margin-bottom: 32px;
  }
  .actions__list {
    margin-bottom: 32px;
    margin-right: -10px;
  }
  .actions__list .swiper-slide {
    width: 190px;
  }
  .actions__title {
    font-size: 14px;
  }
  .actions__link {
    font-size: 14px;
  }
  .actions .catalog__btn {
    width: 100%;
  }
  .blog {
    padding: 40px 0;
  }
  .blog .section-title {
    margin-bottom: 20px;
  }
  .blog .catalog__btn {
    position: relative;
    top: auto;
    bottom: auto;
    left: auto;
    right: auto;
    width: 100%;
  }
  .blog__list {
    width: auto;
  }
  .blog__list .swiper-slide {
    width: 100%;
    margin-bottom: 8px;
  }
  .blog__list .swiper-wrapper {
    display: block;
  }
  .blog__title {
    font-size: 16px;
  }
  .blog__desc {
    font-size: 12px;
  }
  .blog__list {
    margin-bottom: 32px;
  }
  .steps {
    padding: 40px 0;
  }
  .steps__subtitle {
    font-size: 16px;
    margin-bottom: 32px;
  }
  .steps__list {
    margin-right: -10px;
  }
  .steps__list .swiper-slide {
    width: 170px;
  }
  .steps__form {
    padding: 20px;
  }
  .steps__form .about__calc-title {
    font-size: 28px;
  }
  .promo-banner {
    padding: 20px 0;
  }
  .promo-banner__content {
    padding: 20px;
  }
  .promo-banner__title {
    font-size: 22px;
  }
  .promo-banner__offer {
    font-size: 14px;
  }
  .hero__feature-item {
    font-size: 14px;
  }
  .hero__feature-item:before {
    top: 5px;
  }
  .promo-banner .hero__features {
    padding-bottom: 0;
  }
  .promo-banner .header__callback-btn {
    width: 100%;
  }
  .works {
    padding: 40px 0;
  }
  .works .section-title {
    margin-bottom: 32px;
  }
  .works .catalog__btn {
    position: relative;
    top: auto;
    bottom: auto;
    left: auto;
    right: auto;
    width: 100%;
    margin-top: 12px;
  }
  .works__list {
    width: auto;
  }
  .works__list .swiper-wrapper {
    display: block;
  }
  .works__list .swiper-slide {
    width: auto;
  }
  .works__item {
    padding: 20px;
    margin-bottom: 20px;
  }
  .works__photos .swiper-wrapper {
    display: flex;
  }
  .blog__title {
    font-size: 18px;
    margin-bottom: 8px;
  }
  .works__adress {
    font-size: 14px;
    margin-bottom: 12px;
  }
  .works__services h4 {
    font-size: 16px;
  }
  .reviews {
    padding: 40px 0;
  }
  .reviews .steps__subtitle {
    margin-bottom: 32px;
  }
  .reviews__list .swiper-slide {
    width: 350px;
  }
  .reviews__author {
    font-size: 18px;
  }
  .reviews__rating {
    font-size: 14px;
    line-height: 24px;
  }
  .reviews__item-top {
    margin-bottom: 8px;
  }
  .reviews__desc {
    font-size: 14px;
  }
  .reviews__item {
    padding: 20px 20px 82px 20px;
  }
  .reviews__link {
    left: 20px;
    bottom: 20px;
    width: calc(100% - 40px);
  }
  .reviews__list {
    margin-bottom: 32px;
  }
  .reviews__sites h4 {
    font-size: 18px;
    width: 100%;
  }
  .reviews__sites {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .reviews__sites .top-menu__widget {
    width: calc(44% - 4px);
    margin: 0;
  }
  .reviews__sites .top-menu__widget:last-child {
    width: calc(56% - 4px);
  }
  .top-menu__widget-rating {
    font-size: 14px;
  }
  .contacts {
    padding: 40px 0;
  }
  .contacts .section-title {
    margin-bottom: 28px;
  }
  .contacts__left {
    width: 100%;
    margin-bottom: 8px;
    padding: 20px;
  }
  .contacts__right {
    width: 100%;
    height: 286px;
  }
  .footer {
    padding: 40px 0;
  }
  .footer__copy {
    width: 100%;
    margin-top: 24px;
  }
  .footer__col:nth-child(2) {
    display: none;
  }
  .footer__col:nth-child(3) {
    width: 49%;
  }
  .footer__col:nth-child(4) {
    width: 49%;
  }
  .footer__item:not(:last-child) {
    margin-bottom: 16px;
  }
  .footer__link {
    font-size: 14px;
  }
  .footer__col--company {
    margin-bottom: 22px;
  }
  .footer__col {
    margin-bottom: 22px;
  }
  .footer__heading {
    font-size: 18px;
  }
  .footer__address p {
    font-size: 14px;
  }
  .footer__phone {
    font-size: 18px;
  }
  .footer__col {
    position: relative;
  }
  .footer__address {
    width: 100%;
  }
  .footer__socials {
    position: absolute;
    right: 0;
    top: 35px;
    width: 100px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .footer__socials a {
    width: 44px;
    margin: 0 0 12px 0!important;
  }
  .footer__bottom {
    margin-top: 0;
    padding-top: 16px;
  }
  .footer__legal-link {
    display: block;
  }
  .footer__legal-link:not(:last-child) {
    margin: 0 0 16px 0;
  }
  .company__about {
    padding: 28px 0 40px;
  }
  .breadcrumbs {
    font-size: 16px;
  }
  .company__top-text {
    font-size: 18px;
  }
  .company__quality {
    padding: 40px 0;
  }
  .company__quality .company__about-content p {
    font-size: 16px;
  }
  .company__feature {
    width: 100%;
    text-align: left;
    margin-bottom: 8px;
    padding: 16px 20px;
  }
  .company__feature span {
    display: inline-block;
    vertical-align: middle;
    margin: -2px 4px 0 0;
  }
  .company__delivery {
    padding: 40px 0;
  }
  .company__delivery .company__about-content p {
    font-size: 16px;
  }
  .company__delivery-rates {
    padding: 20px;
    font-size: 16px;
  }
  .company__list {
    font-size: 16px;
  }
  .company__delivery .header__callback-btn {
    width: 100%;
  }
  .company__social {
    padding: 40px 0;
  }
  .company__social .company__about-content p {
    font-size: 16px;
  }
  .company__slider .swiper9 .swiper-slide {
    width: 170px;
  }
  .catalog {
    padding: 28px 0;
  }
  .catalog--inner h1.section-title {
    margin-bottom: 32px;
  }
  .catalog__list-title {
    font-size: 22px;
  }
  .catalog__item--last {
    width: 100%;
    height: 61px;
    border: 0;
  }
  .catalog__item .header__callback-btn {
    width: 100%;
  }
  .catalog__list-title .catalog__count {
    margin-left: 5px;
  }
  .faq {
    padding: 40px 0 145px;
  }
  .faq .section-title {
    margin-bottom: 12px;
  }
  .faq__description {
    font-size: 16px;
    margin-bottom: 32px;
  }
  .faq__item {
    padding: 16px;
  }
  .faq__trigger {
    font-size: 16px;
  }
  .faq__buttons {
    width: 230px;
  }
  .faq {
    background: url('/local/templates/granit/img/faq.png') no-repeat bottom 0 left calc(50% + 90px);
    background-size: 200px;
  }
  .catalog__page-count {
    font-size: 22px;
  }
  .catalog__sort {
    margin: 4px 0 24px;
  }
  .catalog__sort-link:not(:last-child) {
    margin-right: 12px;
  }
  .catalog__list2 {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin: 0;
  }
  .catalog__list2 .popular__item {
    width: calc(50% - 4px);
    margin: 0 0 20px 0;
  }
  .catalog--inner .catalog__btn {
    width: 172px;
    margin: 4px auto 0 auto;
  }
  .pages__page {
    width: 35px;
  }
  .pages li {
    margin: 0;
  }
  .pages__page.pages__page--no-mob {
    display: none;
  }
  .pages__page {
    margin: 0 2px;
  }
  .catalog__page {
    margin-bottom: 40px;
  }
  .product {
    padding: 28px 0 40px;
  }
  .product__photos {
    width: 100%;
    margin-bottom: 20px;
  }
  .product__options {
    width: 100%;
    margin-bottom: 20px;
  }
  .product__options .checkbox__text {
    font-size: 16px;
  }
  .product__tabs-nav {
    display: none;
  }
  .product__select {
    display: block;
  }
  .product__tab {
    font-size: 14px;
  }
  .product__params {
    padding: 20px;
  }
  .product__params h3 {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 12px;
  }
  .product__param--bt,
  .product__param--last {
    display: block;
  }
  .product__param--bt span,
  .product__param--last span {
    display: block;
  }
  .product__param--bt span:first-child,
  .product__param--last span:first-child {
    padding: 0 0 8px 0;
  }
  .product__params .header__callback-btn {
    width: 180px;
  }
  .product__price {
    font-size: 28px;
  }
  .product__credit {
    margin-bottom: 12px;
  }
  .product__params-bottom {
    font-size: 14px;
  }
  .product__right h3 {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 12px;
  }
  .product__gallery h3 {
    font-size: 24px;
  }
  .product__gallery-item {
    width: calc(50% - 4px);
  }
  .product__links-item {
    width: 100%;
  }
  .product__links-item h3 {
    font-size: 24px;
    margin-bottom: 20px;
  }
  .product__links-item ul li a {
    font-size: 16px;
  }
  .services {
    padding: 28px 0 40px;
  }
  .services__item {
    width: 100%;
    margin-bottom: 8px;
  }
  .services__title {
    font-size: 18px;
  }
  .services__desc {
    font-size: 14px;
  }
  .services__list {
    padding-bottom: 52px;
  }
  .service__block1 {
    padding: 28px 0 40px;
  }
  .service__title {
    font-size: 28px;
  }
  .service__hero-desc {
    font-size: 16px;
  }
  .service__hero-features {
    padding: 16px 16px 8px 16px;
  }
  .service__hero-features li {
    font-size: 14px;
    margin-bottom: 8px;
  }
  .service__hero-features li:before {
    top: 4px;
  }
  .service__hero-content .header__callback-btn {
    width: 100%;
  }
  .service__hero-features {
    display: block;
  }
  .service__block2 {
    padding: 40px 0;
  }
  .service__sub-title {
    font-size: 28px;
  }
  .service__block2 p {
    font-size: 16px;
  }
  .service__block2 p:not(:last-child) {
    margin-bottom: 24px;
  }
  .service__block3 {
    padding: 40px 0;
  }
  .service__step {
    width: 100%;
    margin-bottom: 8px;
    padding: 20px;
  }
  .service__step-title {
    font-size: 18px;
    background: url('/local/templates/granit/img/check.svg') no-repeat 0 0;
  }
  .service__step-desc {
    font-size: 14px;
  }
  .service__steps {
    padding-bottom: 24px;
  }
  .popular__menu li a {
    font-size: 14px;
    padding: 12px 16px;
  }
  .popular__menu {
    margin: 0 -10px 32px 0;
    overflow-x: scroll;
    white-space: nowrap;
  }
  .actions {
    padding: 28px 0 40px;
  }
  .actions__top-text {
    font-size: 16px;
    margin-bottom: 28px;
  }
  .actions__list2 {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin: 0;
  }
  .actions__list2 .actions__item {
    width: calc(50% - 4px);
    margin: 0 0 20px 0;
  }
  .actions__list2 {
    padding-bottom: 8px;
  }
  .works--inner {
    padding: 28px 0 40px;
  }
  .works--inner .section-title {
    margin-bottom: 28px;
  }
  .works__list2 .works__item {
    width: 100%;
    margin-bottom: 8px;
  }
  .blog--inner {
    padding: 28px 0 40px;
  }
  .blog__top-text {
    font-size: 16px;
  }
  .blog__list2 .blog__item {
    width: 100%;
    margin-bottom: 8px;
  }
  .blog--inner .catalog__btn {
    width: 170px;
    display: block;
    margin: 32px auto 0 auto;
  }
  .article {
    padding: 28px 0 40px;
  }
  .breadcrumbs {
    white-space: nowrap;
    margin-right: -10px;
    overflow: hidden;
  }
  .article__image {
    border-radius: 8px;
  }
  .article__text h1 {
    font-size: 28px;
  }
  .article__text p {
    font-size: 16px;
  }
  .article__text ul {
    font-size: 16px;
  }
  .article__text h2 {
    font-size: 24px;
  }
  .contacts--inner {
    padding: 28px 0 40px;
  }
  .contacts--inner .section-title {
    margin-bottom: 20px;
  }
  .contacts__text p {
    font-size: 16px;
    margin-bottom: 20px;
  }
  .contacts__text .faq__buttons {
    width: auto;
  }
  .contacts__text .faq__buttons .catalog__btn {
    font-size: 14px;
    padding: 0;
  }
  .contacts__text {
    margin-bottom: 0;
  }
  .no-page {
    padding: 60px 0 40px;
  }
  .no-page__title {
    font-size: 28px;
    text-transform: uppercase;
  }
  .no-page__desc {
    font-size: 14px;
  }
  .no-page__buttons {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .no-page__buttons button {
    margin: 0;
    width: calc(50% - 4px);
  }
  .popup {
    padding: 24px!important;
  }
  .popup .about__calc-text .about__calc-title {
    font-size: 26px;
  }
  .popup__mess {
    padding-top: 12px;
  }
  .popup__mess p {
    font-size: 16px;
    margin-bottom: 12px;
  }
  .popup .faq__buttons {
    width: auto;
  }
  .popup .faq__buttons .catalog__btn {
    width: calc(50% - 6px);
    margin: 0;
  }
  .catalog__item:hover .offers__heading {
    background: none;
  }
  .product__params {
    display: none;
  }
  .product__params--mob {
    display: block;
  }
  .service__hero-image {
    display: none;
  }
  .service__hero-image--mob {
    display: block;
    margin-bottom: 20px;
  }
  .service__hero-content {
    margin-bottom: 0;
  }
}

/* Дополнения к вёрстке для динамического вывода */
.popular__photo img { max-width: 100%; height: auto; }
.popular__title a, .services__title a, .catalog-dropdown__subpanel h3 a { color: inherit; text-decoration: none; }
.product__main-photos img, .product__previews img, .product__gallery-item img { max-width: 100%; height: auto; }
.catalog__empty { margin: 20px 0; font-size: 18px; }

/* End */
/* /local/templates/granit/template_styles.css?1791200405111125 */
