@font-face {
  font-family: Alice;
  font-style: normal;
  font-weight: 400;
  src: url(../fonts/Alice-Regular.woff2) format("woff2")
}
@font-face {
  font-family: Alexandria;
  font-style: normal;
  font-weight: 400;
  src: url(../fonts/Alexandria-Regular.woff2) format("woff2")
}
@font-face {
  font-family: Alexandria;
  font-style: normal;
  font-weight: 700;
  src: url(../fonts/Alexandria-Bold.woff2) format("woff2")
}
@font-face {
  font-family: Alexandria;
  font-style: normal;
  font-weight: 800;
  src: url(../fonts/Alexandria-ExtraBold.woff2) format("woff2")
}
body,
html {
  height: 100%
}
body {
  font-family: Montserrat, sans-serif;
  font-size: 1.125em;
  line-height: 1.166666;
  width: 100%;
  min-width: 320px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  color: #757474;
  background-color: #fff;
  font-weight: 400
}
@media all and (max-width:575px) {
  body {
    font-size: 1em;
    line-height: 1.5
  }
}
footer,
header {
  -webkit-box-flex: 0;
  -ms-flex: none;
  flex: none
}
main {
  -webkit-box-flex: 1;
  -ms-flex: 1 0 auto;
  flex: 1 0 auto;

}
ul {
  list-style: none;
  margin: 0
}
 .details__inner ul {
  padding: 0;
  list-style: none;
  counter-reset: li;
}

.details__inner ul li {
  position: relative;
  padding: 12px 20px 20px 28px;
  margin-left: 40px;
  transition-duration: 0.3s;
}

.details__inner li::before {
  border: 6px solid transparent;
  line-height: 30px;
  position: absolute;
  top: 0;
  left: -30px;
  width: 42px;
  text-align: center;
  font-size: 13px;
  font-weight: bold;
  color: #ADCEE9;
  counter-increment: li;
  content: counter(li);
  transition-duration: 0.3s;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.details__inner li::after {
  position: absolute;
  top: 0;
  left: -30px;
  width: 42px;
  height: 42px;
  border: 6px solid #DDDDDD;
  border-radius: 50%;
  content: '';
  opacity: 0.5;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}


p {
  font-style: normal;
  margin: 0;
	padding:5px 0;
}
li{
	padding: 5px 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: Montserrat, sans-serif;
  font-weight: 700;
  font-style: normal;
  margin: 0;
  
}
h2{
	padding: 20px 0;
}
.heading {
  margin-bottom: 46px
}
@media all and (max-width:991px) {
  .heading {
    margin-bottom: 30px
  }
}
.heading h1,
.heading h2 {
  font-size: 30px;
  line-height: 120%
}
.btn {
  display: inline-block;
  text-align: center;
  color: #000;
  background-color: #fff;
  padding: 10px 15px;
  font-size: 16px;
  line-height: 24px;
  font-weight: 400;
  border: none;
  -webkit-transition: .25s all;
  transition: .25s all
}
.btn:hover {
  color: #000;
  background-color: #fff
}
.btn-accent {
  display: inline-block;
  font-size: 20px;
  color: #fff;
  padding: 16px 30px;
  border-radius: 6px;
  background: linear-gradient(85.73deg,#47b5ff .87%,#256d85 97.31%);
  -webkit-box-shadow: 0 7px 14px 0 rgba(0,0,0,.3);
  box-shadow: 0 7px 14px 0 rgba(0,0,0,.3);
  border: none;
  text-align: center
}
@media all and (max-width:575px) {
  .btn-accent {
    padding: 11px 20px
  }
}
.btn-accent:hover {
  color: #fff
}
.btn-accent.btn-accent-white {
  background: linear-gradient(85.73deg,#fff .87%,#fff 97.31%);
  color: #474545;
  border-bottom: 3px solid #0179b8
}
@media all and (max-width:575px) {
  .btn-100 {
    max-width: none!important;
    width: 100%!important
  }
}
a {
  -webkit-transition: .25s all;
  transition: .25s all;
  text-decoration: none
}
a:active,
a:focus,
a:hover {
  text-decoration: none
}
button {
  cursor: pointer;
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out
}
button:active,
button:focus {
  outline: 0
}
button:disabled,
button[disabled] {
  border: 1px solid #999;
  background-color: #ccc;
  color: #666;
  pointer-events: all!important
}
button:disabled:hover,
button[disabled]:hover {
  border: 1px solid #999;
  background-color: #ccc;
  color: #666;
  pointer-events: all!important
}
:focus {
  outline: 0
}
* {
  -webkit-tap-highlight-color: transparent;
  margin: 0;
  padding: 0
}
img {
  max-width: 100%;
  -ms-flex-negative: 0;
  flex-shrink: 0
}
.center {
  text-align: center
}
.stop-scrolling {
  height: 100%;
  overflow: hidden
}
input,
textarea {
  outline: 0!important;
  border-radius: 0
}
input.wpcf7-submit {
  cursor: pointer;
  -webkit-transition: .3s all;
  transition: .3s all
}
details summary::-webkit-details-marker {
  display: none
}
details > summary {
  list-style: none
}
section {
  margin-bottom: 70px
}
@media all and (max-width:1199px) {
  section {
    margin-bottom: 50px
  }
}
.swiper-button-disabled {
  cursor: pointer!important;
  pointer-events: auto!important
}
.mb-0 {
  margin-bottom: 0
}
.modal {
  color: #757474;
  max-width: 682px;
  width: 100%;
  border-radius: 30px;
  background-color: #434343;
  color: #fff;
  padding: 60px 90px
}
@media all and (max-width:767px) {
  .modal {
    padding: 40px 30px;
    border-radius: 20px
  }
}
.modal .modal__heading {
  margin-bottom: 30px
}
.modal .modal__heading h2,
.modal .modal__heading h3,
.modal .modal__heading .modal__title,
.modal .modal__heading .modal__subtitle {
  font-size: 25px;
  line-height: 120%
}
.modal .modal__heading h3,
.modal .modal__heading .modal__subtitle {
  margin-top: 4px
}
.modal .modal__heading p {
  font-size: 14px;
  margin-top: 20px
}
@media all and (max-width:767px) {
  .modal .modal__heading p {
    margin-top: 16px
  }
}
.modal form .form__item {
  margin-bottom: 20px
}
@media all and (max-width:767px) {
  .modal form .form__item {
    margin-bottom: 16px
  }
}
.modal form .form__item input,
.modal form .form__item textarea {
  width: 100%;
  height: 68px;
  border: 1px solid rgba(255,255,255,.5);
  padding-left: 20px;
  padding-right: 10px;
  background-color: #434343;
  border-radius: 0;
  color: #fff
}
@media all and (max-width:767px) {
  .modal form .form__item input,
  .modal form .form__item textarea {
    height: 56px
  }
}
.modal form .form__item input::-webkit-input-placeholder,
.modal form .form__item textarea::-webkit-input-placeholder {
  color: #fff;
  opacity: 1
}
.modal form .form__item input::-moz-placeholder,
.modal form .form__item textarea::-moz-placeholder {
  color: #fff;
  opacity: 1
}
.modal form .form__item input::-ms-placeholder,
.modal form .form__item textarea::-ms-placeholder {
  color: #fff;
  opacity: 1
}
.modal form .form__item input::-webkit-input-placeholder,
.modal form .form__item textarea::-webkit-input-placeholder {
  color: #fff;
  opacity: 1
}
.modal form .form__item input::-moz-placeholder,
.modal form .form__item textarea::-moz-placeholder {
  color: #fff;
  opacity: 1
}
.modal form .form__item input:-ms-input-placeholder,
.modal form .form__item textarea:-ms-input-placeholder {
  color: #fff;
  opacity: 1
}
.modal form .form__item input::-ms-input-placeholder,
.modal form .form__item textarea::-ms-input-placeholder {
  color: #fff;
  opacity: 1
}
.modal form .form__item input::placeholder,
.modal form .form__item textarea::placeholder {
  color: #fff;
  opacity: 1
}
.modal form .form__item textarea {
  height: 150px;
  padding-top: 10px
}
@media all and (max-width:575px) {
  .modal form .form__item textarea {
    height: 120px
  }
}
.modal form .form__submit {
  margin-bottom: 20px;
  position: relative
}
.modal form .form__submit .btn-accent {
  min-width: 268px
}
.modal form .form__submit .wpcf7-spinner {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto
}
.modal form .form__policy p {
  font-size: 12px;
  line-height: 14px;
  color: #fff
}
.modal form .form__policy p a {
  color: #fff;
  text-decoration: underline
}
.modal form .form__policy p a:hover {
  color: #47b5ff
}
header {
  position: relative;
  z-index: 100;
  background-size: cover;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-image: url(../img/2.webp);
  margin-bottom: 40px
}
@media all and (max-width:991px) {
  header {
    background-image: none
  }
}
header.page {
  background-image: none;
  margin-bottom: 10px
}
@media all and (max-width:991px) {
  header.page {
    margin-bottom: 30px;
    border-bottom: 1px solid #47b5ff
  }
}
header.bg__image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1
}
header.bg__image img {
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: 50% 50%;
  object-position: 50% 50%;
  width: 100%;
  height: 100%
}
header .header__wrapper {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 999;
  padding-top: 40px;
  padding-bottom: 40px;
  -webkit-transition: .25s all;
  transition: .25s all
}
@media all and (max-width:1550px) {
  header .header__wrapper {
    padding-top: 20px
  }
}
@media all and (max-width:991px) {
  header .header__wrapper {
    position: relative;
    padding-top: 15px;
    padding-bottom: 15px
  }
}
header .header__wrapper.header__fixed {
  background-color: #fff
}
@media all and (min-width:991px) {
  header .header__wrapper.header__fixed {
    -webkit-box-shadow: 0 7px 14px 0 rgba(0,0,0,.3);
    box-shadow: 0 7px 14px 0 rgba(0,0,0,.3);
    padding-top: 20px;
    padding-bottom: 20px
  }
}
@media all and (min-width:991px) {
  header .header__wrapper.header__fixed .header__top {
    margin-bottom: 20px
  }
}
header .header__top {
  margin-bottom: 40px
}
@media all and (max-width:1550px) {
  header .header__top {
    margin-bottom: 30px
  }
}
@media all and (max-width:991px) {
  header .header__top {
    margin-bottom: 0
  }
}
header .header__top .header__logo img {
  width: 280px;
  height: auto
}
@media all and (max-width:991px) {
  header .header__top .header__logo img {
    width: 160px
  }
}
@media all and (max-width:991px) {
  header .header__top .header__contacts {
    text-align: center
  }
}
header .header__top .header__contacts .phone {
  color: #4a4a4a;
  white-space: nowrap
}
@media all and (min-width:991px) {
  header .header__top .header__contacts .phone {
    display: none
  }
}
@media all and (max-width:991px) {
  header .header__top .header__contacts .contacts__list {
    display: none
  }
}
header .header__top .header__social .social__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end
}
@media all and (max-width:991px) {
  header .header__top .header__social .social__inner {
    display: none
  }
}
header .header__top .header__social .header_burger {
  position: relative;
  display: none;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end
}
@media all and (max-width:991px) {
  header .header__top .header__social .header_burger {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
  }
}
header .header__top .header__social .header_burger .burger_button {
  position: relative;
  top: 2px;
  width: 30px;
  height: 30px;
  display: block;
  -webkit-transform: rotate(0);
  -ms-transform: rotate(0);
  transform: rotate(0);
  -webkit-transition: .5s ease-in-out;
  transition: .5s ease-in-out;
  cursor: pointer;
  z-index: 20
}
header .header__top .header__social .header_burger .burger_button span {
  display: block;
  position: absolute;
  height: 3px;
  width: 100%;
  background: #47b5ff;
  border-radius: 2px;
  opacity: 1;
  left: 0;
  -webkit-transform: rotate(0);
  -ms-transform: rotate(0);
  transform: rotate(0);
  -webkit-transition: .25s ease-in-out;
  transition: .25s ease-in-out
}
header .header__top .header__social .header_burger .burger_button span:nth-child(1) {
  top: 4px
}
header .header__top .header__social .header_burger .burger_button span:nth-child(2) {
  top: 12px
}
header .header__top .header__social .header_burger .burger_button span:nth-child(3) {
  top: 20px
}
header .header__top .header__social .header_burger .burger_button.open span:nth-child(1) {
  top: 9px;
  -webkit-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  transform: rotate(135deg)
}
header .header__top .header__social .header_burger .burger_button.open span:nth-child(2) {
  opacity: 0;
  left: -60px
}
header .header__top .header__social .header_burger .burger_button.open span:nth-child(3) {
  top: 9px;
  -webkit-transform: rotate(-135deg);
  -ms-transform: rotate(-135deg);
  transform: rotate(-135deg)
}
header .header__top .header__social .header_burger .menu_toggle {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  background: #fff;
  margin: 0;
  overflow: auto;
  z-index: 11;
  padding-top: 50px;
  top: 0;
  padding-bottom: 70px;
  -webkit-transform: translateY(70px);
  -ms-transform: translateY(70px);
  transform: translateY(70px);
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
  -webkit-transform: translateX(-100%);
  -ms-transform: translateX(-100%);
  transform: translateX(-100%)
}
header .header__top .header__social .header_burger .menu_toggle.slide {
  -webkit-transform: translateY(70px);
  -ms-transform: translateY(70px);
  transform: translateY(70px)
}
header .header__top .header__social .header_burger .menu_toggle.menuopen {
  -webkit-transform: translateX(0)!important;
  -ms-transform: translateX(0)!important;
  transform: translateX(0)!important
}
header .header__top .header__social .header_burger .menu_toggle .toggle__inner {
  width: 100%;
  margin: 0 auto;
  max-width: 690px
}
@media all and (max-width:767px) {
  header .header__top .header__social .header_burger .menu_toggle .toggle__inner {
    max-width: 510px
  }
}
@media all and (max-width:575px) {
  header .header__top .header__social .header_burger .menu_toggle .toggle__inner {
    padding-left: 15px;
    padding-right: 15px
  }
}
header .header__top .header__social .header_burger .menu_toggle .toggle__inner .mobile__menu {
  margin-bottom: 30px
}
header .header__top .header__social .header_burger .menu_toggle .toggle__inner .mobile__menu li:not(:last-child) {
  margin-bottom: 8px
}
header .header__top .header__social .header_burger .menu_toggle .toggle__inner .mobile__menu li.current-menu-item > a {
  color: #47b5ff
}
header .header__top .header__social .header_burger .menu_toggle .toggle__inner .mobile__menu li .sub-menu {
  padding-left: 20px
}
header .header__top .header__social .header_burger .menu_toggle .toggle__inner .mobile__menu li .sub-menu li:not(:last-child) {
  margin-bottom: 2px
}
header .header__top .header__social .header_burger .menu_toggle .toggle__inner .mobile__menu li a {
  font-size: 18px;
  color: #757474;
  display: inline-block
}
header .header__top .header__social .header_burger .menu_toggle .toggle__inner .mobile__menu li a:hover {
  color: #47b5ff
}
@media all and (max-width:991px) {
  header .header__middle {
    display: none
  }
}
header .header__middle .header__catalog .catalog__inner {
  position: relative
}
header .header__middle .header__catalog #catalog-btn {
  background: linear-gradient(85.73deg,#47b5ff .87%,#256d85 97.31%);
  border-radius: 6px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 14px;
  -webkit-box-shadow: 0 7px 14px 0 rgba(0,0,0,.3);
  box-shadow: 0 7px 14px 0 rgba(0,0,0,.3);
  border: none;
  font-size: 20px;
  line-height: 23px;
  color: #fff;
  max-width: 208px;
  width: 100%;
  height: 56px
}
header .header__middle .header__catalog .menu__wrapper {
  position: absolute;
  top: 100%;
  left: 0;
  opacity: 0;
  visibility: hidden;
  max-width: 208px;
  width: 100%;
  padding-top: 3px;
  -webkit-transform: translateY(-10px);
  -ms-transform: translateY(-10px);
  transform: translateY(-10px);
  -webkit-transition: .25s all;
  transition: .25s all;
  -webkit-box-shadow: 0 7px 14px 0 rgba(0,0,0,.3);
  box-shadow: 0 7px 14px 0 rgba(0,0,0,.3);
  border-radius: 6px;
  z-index: 4
}
header .header__middle .header__catalog .menu__wrapper.active {
  opacity: 1;
  visibility: visible;
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0)
}
header .header__middle .header__catalog ul {
  border-radius: 5px;
  background-color: #fff;
  overflow: hidden;
  margin-top: -3px
}
header .header__middle .header__catalog ul li a {
  font-size: 17px;
  font-weight: 500;
  color: #757474;
  display: block;
  padding: 8px 20px
}
header .header__middle .header__catalog ul li a:hover {
  background-color: #47b5ff
}
header .header__middle .header__phone .phone__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  gap: 16px;
  font-family: Montserrat, sans-serif;
  font-size: 20px;
  font-weight: 700
}
@media all and (max-width:1550px) {
  header .header__middle .header__phone .phone__inner {
    font-size: 18px
  }
}
header .header__middle .header__phone .phone__inner ul li:not(:last-child) {
  margin-bottom: 3px
}
header .header__middle .header__phone .phone__inner .phone {
  color: #757474
}
header .header__middle .header__phone .phone__inner .callback {
  color: #47b5ff;
  text-decoration: underline
}
header .header__menu {
  padding-top: 212px;
  padding-bottom: 30px
}
@media all and (max-width:1550px) {
  header .header__menu {
    padding-top: 190px
  }
}
@media all and (max-width:991px) {
  header .header__menu {
    display: none
  }
}
header .header__menu .menu__inner ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 55px
}
@media all and (max-width:1550px) {
  header .header__menu .menu__inner ul {
    gap: 40px
  }
}
@media all and (max-width:1199px) {
  header .header__menu .menu__inner ul {
    gap: 30px
  }
}
header .header__menu .menu__inner ul li {
  position: relative
}
header .header__menu .menu__inner ul li.current-menu-item a {
  color: #47b5ff
}
header .header__menu .menu__inner ul li:hover > a {
  color: #47b5ff
}
header .header__menu .menu__inner ul li a {
  color: #757474;
  font-size: 24px;
  line-height: 120%;
  padding: 10px 0;
  display: inline-block
}
@media all and (max-width:1199px) {
  header .header__menu .menu__inner ul li a {
    font-size: 20px
  }
}
header .header__menu .menu__inner ul li.menu-item-has-children {
  position: relative
}
header .header__menu .menu__inner ul li.menu-item-has-children > a {
  padding-right: 24px
}
header .header__menu .menu__inner ul li.menu-item-has-children:before {
  position: absolute;
  content: "";
  background-size: contain;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-image: url(../img/down-arrow.svg);
  width: 19px;
  height: 19px;
  top: 4px;
  bottom: 0;
  right: 0;
  margin: auto
}
header .header__menu .menu__inner ul li.menu-item-has-children:hover > ul.sub-menu {
  opacity: 1;
  visibility: visible;
  -webkit-transition-delay: 0s;
  transition-delay: 0s
}
header .header__menu .menu__inner ul li.menu-item-has-children ul.sub-menu {
  position: absolute;
  top: 46px;
  left: 0;
  width: 240px;
  opacity: 0;
  visibility: hidden;
  -webkit-transition-duration: .2s;
  transition-duration: .2s;
  -webkit-transition-timing-function: linear;
  transition-timing-function: linear;
  display: block;
  background-color: #fff;
  z-index: 10;
  border-radius: 6px;
  -webkit-box-shadow: 0 7px 14px 0 rgba(0,0,0,.3);
  box-shadow: 0 7px 14px 0 rgba(0,0,0,.3);
  overflow: hidden
}
@media all and (max-width:991px) {
  header .header__menu .menu__inner ul li.menu-item-has-children ul.sub-menu {
    width: 180px
  }
}
header .header__menu .menu__inner ul li.menu-item-has-children ul.sub-menu li {
  margin-right: 0
}
header .header__menu .menu__inner ul li.menu-item-has-children ul.sub-menu li:after {
  left: 16px
}
header .header__menu .menu__inner ul li.menu-item-has-children ul.sub-menu li:before {
  right: 8px;
  top: 13px;
  bottom: auto
}
@media all and (max-width:991px) {
  header .header__menu .menu__inner ul li.menu-item-has-children ul.sub-menu li:before {
    right: 6px
  }
}
header .header__menu .menu__inner ul li.menu-item-has-children ul.sub-menu li a {
  font-size: 17px;
  font-weight: 500;
  color: #757474;
  display: block;
  padding: 8px 20px
}
header .header__menu .menu__inner ul li.menu-item-has-children ul.sub-menu li a:hover {
  background-color: #47b5ff
}
header .header__menu .menu__inner ul li.menu-item-has-children ul.sub-menu ul.sub-menu {
  left: 198px;
  top: -5px
}
header .search__form {
  max-width: 650px;
  width: 100%;
  height: 62px;
  border: 1px solid #47b5ff;
  border-radius: 10px;
  overflow: hidden;
  -webkit-filter: drop-shadow(0 4px 4px rgba(0, 0, 0, .25)) drop-shadow(0 4px 4px rgba(0, 0, 0, .25));
  filter: drop-shadow(0 4px 4px rgba(0, 0, 0, .25)) drop-shadow(0 4px 4px rgba(0, 0, 0, .25));
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between
}
header .search__form .search__input {
  width: 100%;
  height: 100%;
  border: none;
  border-radius: 0;
  padding-left: 20px;
  padding-right: 10px
}
header .search__form .search__submit {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 66px;
  height: 100%;
  border: none;
  background-color: #fff;
  background-size: 40px;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-image: url(../img/icon_7.svg)
}
header .contacts__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px 34px
}
@media all and (max-width:991px) {
  header .contacts__list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    margin-bottom: 30px
  }
}
header .contacts__list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 25px;
  font-size: 16px;
  line-height: 23px;
  font-weight: bold;
}
@media all and (max-width:1550px) {
  header .contacts__list li {
    font-size: 16px
  }
}
@media all and (max-width:1199px) {
  header .contacts__list li {
    font-size: 15px;
    gap: 10px
  }
}
header .social {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 11px
}
@media all and (max-width:991px) {
  header .social {
    margin-bottom: 30px
  }
}
header .social li a:hover {
  opacity: .8
}
header .social li a img {
  width: 50px
}

.aluprom-header {
  background: #fff;
  background-image: none;
  margin-bottom: 34px;
}

.aluprom-header.page {
  background-image: none;
  margin-bottom: 28px;
}

.aluprom-header .header__wrapper {
  position: relative;
  top: auto;
  left: auto;
  width: 100%;
  padding: 18px 0 0;
  background: #fff;
  box-shadow: 0 10px 24px rgba(31, 38, 45, .08);
}

.aluprom-header .header__wrapper.header__fixed {
  background: #fff;
  box-shadow: 0 10px 24px rgba(31, 38, 45, .08);
}

.aluprom-header__top {
  display: grid;
  grid-template-columns: minmax(280px, 340px) minmax(0, 1fr) auto;
  align-items: center;
  gap: 18px;
}

.aluprom-header__logo {
  display: inline-flex;
  align-items: center;
  width: 100%;
  max-width: 390px;
}

.aluprom-header__logo img {
  display: block;
  width: 100%;
  height: auto;
}

.aluprom-header__info {
  display: flex;
  min-width: 0;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
  color: #666;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.35;
}

.aluprom-header__schedule,
.aluprom-header__address {
  flex: 0 1 auto;
}

.aluprom-header__schedule {
  min-width: 168px;
}

.aluprom-header__address {
  min-width: 178px;
}

.aluprom-header__phone {
  flex: 0 0 auto;
  color: #666;
  font-size: 16px;
  font-weight: 800;
  white-space: nowrap;
}

.aluprom-header__callback {
  position: relative;
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 9px;
  color: #40b5ff;
  font-size: 16px;
  font-weight: 800;
  text-decoration: underline;
  white-space: nowrap;
}

.aluprom-header__callback:before {
  content: "";
  width: 28px;
  height: 28px;
  background: url(../img/icon_8.svg) 50% 50% / contain no-repeat;
}

.aluprom-header__social {
  flex: 0 0 auto;
  margin: 0;
}

.aluprom-header__social li a {
  display: inline-flex;
  width: 52px;
  height: 40px;
  align-items: center;
  justify-content: center;
  border: 1px solid #40b5ff;
  border-radius: 6px;
  background: #fff;
}

.aluprom-header__social li a img {
  width: 27px;
  height: 27px;
  object-fit: contain;
}

.aluprom-header__rule {
  height: 2px;
  margin: 8px 0 26px;
  background: #f05a24;
  opacity: .85;
}

.aluprom-header .header__menu {
  display: block;
  padding: 0 0 28px;
}

.aluprom-header .header__menu .menu__inner ul {
  gap: 38px;
}

.aluprom-header .header__menu .menu__inner ul li a {
  color: #666;
  font-size: 26px;
  font-weight: 500;
  line-height: 1.15;
  padding: 8px 0;
}

.aluprom-header .header__menu .menu__inner ul li.current-menu-item a,
.aluprom-header .header__menu .menu__inner ul li:hover > a {
  color: #40b5ff;
}

.aluprom-header .header__menu .menu__inner ul li.menu-item-has-children:before {
  top: 8px;
}

.aluprom-header .header__menu .menu__inner ul li.aluprom-menu-catalog ul.sub-menu {
  width: 270px;
}

.aluprom-header .header__menu .menu__inner ul li.aluprom-menu-catalog ul.sub-menu li a {
  font-size: 16px;
  line-height: 1.3;
}

.aluprom-header__burger {
  display: none;
}

.aluprom-header .header_burger .burger_button {
  position: relative;
  width: 34px;
  height: 30px;
  display: block;
  cursor: pointer;
  z-index: 20;
}

.aluprom-header .header_burger .burger_button span {
  display: block;
  position: absolute;
  left: 0;
  width: 100%;
  height: 3px;
  border-radius: 999px;
  background: #40b5ff;
  transition: .25s ease-in-out;
}

.aluprom-header .header_burger .burger_button span:nth-child(1) {
  top: 3px;
}

.aluprom-header .header_burger .burger_button span:nth-child(2) {
  top: 13px;
}

.aluprom-header .header_burger .burger_button span:nth-child(3) {
  top: 23px;
}

.aluprom-header .header_burger .burger_button.open span:nth-child(1) {
  top: 13px;
  transform: rotate(135deg);
}

.aluprom-header .header_burger .burger_button.open span:nth-child(2) {
  opacity: 0;
  transform: translateX(-20px);
}

.aluprom-header .header_burger .burger_button.open span:nth-child(3) {
  top: 13px;
  transform: rotate(-135deg);
}

.aluprom-header .header_burger .menu_toggle {
  position: fixed;
  inset: 0;
  z-index: 11;
  overflow: auto;
  padding: 86px 0 70px;
  background: #fff;
  transform: translateX(-100%);
  transition: transform .3s ease-in-out;
}

.aluprom-header .header_burger .menu_toggle.menuopen {
  transform: translateX(0);
}

.aluprom-header .header_burger .menu_toggle .toggle__inner {
  width: 100%;
  max-width: 690px;
  margin: 0 auto;
}

.aluprom-header .header_burger .menu_toggle .toggle__inner .mobile__menu {
  margin-bottom: 30px;
}

.aluprom-header .header_burger .menu_toggle .toggle__inner .mobile__menu li:not(:last-child) {
  margin-bottom: 10px;
}

.aluprom-header .header_burger .menu_toggle .toggle__inner .mobile__menu li a {
  display: inline-block;
  color: #666;
  font-size: 22px;
  line-height: 1.25;
}

.aluprom-header .header_burger .menu_toggle .toggle__inner .mobile__menu li.menu-item-has-children > a {
  color: #444;
  font-weight: 700;
}

.aluprom-header .header_burger .menu_toggle .toggle__inner .mobile__menu li .sub-menu {
  display: grid;
  gap: 8px;
  margin: 10px 0 4px;
  padding-left: 18px;
}

.aluprom-header .header_burger .menu_toggle .toggle__inner .mobile__menu li .sub-menu li:not(:last-child) {
  margin-bottom: 0;
}

.aluprom-header .header_burger .menu_toggle .toggle__inner .mobile__menu li .sub-menu li a {
  color: #27778b;
  font-size: 18px;
}

.aluprom-header .header_burger .menu_toggle .toggle__inner .mobile__menu li.current-menu-item > a,
.aluprom-header .header_burger .menu_toggle .toggle__inner .mobile__menu li a:hover {
  color: #40b5ff;
}

.aluprom-header__mobile-contacts {
  display: grid;
  gap: 12px;
  margin: 0 0 24px;
  color: #666;
  font-size: 17px;
  font-weight: 700;
  line-height: 1.45;
}

.aluprom-header__mobile-contacts a {
  color: #27778b;
}

.aluprom-header__mobile-contacts .callback {
  color: #40b5ff;
  text-decoration: underline;
}

@media all and (max-width:1550px) {
  .aluprom-header__top {
    grid-template-columns: minmax(250px, 320px) minmax(0, 1fr) auto;
    gap: 16px;
  }

  .aluprom-header__info {
    gap: 10px;
    font-size: 14px;
  }

  .aluprom-header__schedule {
    min-width: 150px;
  }

  .aluprom-header__address {
    min-width: 160px;
  }

  .aluprom-header__phone,
  .aluprom-header__callback {
    font-size: 16px;
  }

  .aluprom-header .header__menu .menu__inner ul {
    gap: 26px;
  }

  .aluprom-header .header__menu .menu__inner ul li a {
    font-size: 22px;
  }
}

@media all and (max-width:1199px) {
  .aluprom-header__top {
    grid-template-columns: minmax(220px, 320px) minmax(0, 1fr) auto;
  }

  .aluprom-header__info {
    gap: 14px;
    font-size: 13px;
  }

  .aluprom-header__phone,
  .aluprom-header__callback {
    font-size: 14px;
  }

  .aluprom-header__social li a {
    width: 46px;
    height: 38px;
  }

  .aluprom-header .header__menu .menu__inner ul {
    gap: 18px;
  }

  .aluprom-header .header__menu .menu__inner ul li a {
    font-size: 19px;
  }
}

@media all and (max-width:991px) {
  .aluprom-header,
  .aluprom-header.page {
    margin-bottom: 26px;
    border-bottom: 0;
  }

  .aluprom-header .header__wrapper {
    padding: 10px 0 0;
  }

  .aluprom-header__top {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 16px;
  }

  .aluprom-header__logo {
    max-width: 235px;
  }

  .aluprom-header__info,
  .aluprom-header .header__menu {
    display: none;
  }

  .aluprom-header__burger {
    display: flex;
    position: relative;
    align-items: center;
    justify-content: flex-end;
  }

  .aluprom-header__rule {
    margin: 8px 0 0;
  }

  .aluprom-header .header__top .header__social .header_burger .menu_toggle,
  .aluprom-header .header_burger .menu_toggle {
    top: 0;
    padding-top: 76px;
  }
}

@media all and (max-width:575px) {
  .aluprom-header__logo {
    max-width: 205px;
  }

  .aluprom-header .header_burger .menu_toggle .toggle__inner {
    padding-left: 18px;
    padding-right: 18px;
  }
}

header .header__main {
  background-size: cover;
  background-position: 50% 50%;
  background-repeat: no-repeat
}
@media all and (max-width:991px) {
  header .header__main {
    padding-top: 40px;
    padding-bottom: 40px
  }
}
header .header__main .main__form .inner {
  background-color: #fff;
  border-radius: 20px;
  padding-bottom: 60px;
  overflow: hidden
}
@media all and (max-width:991px) {
  header .header__main .main__form .inner {
    padding-bottom: 40px
  }
}
header .header__main .tabs {
  --transition-time: 0.3s
}
header .header__main .tabs .tabs__caption {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  text-align: center;
  margin-bottom: 80px
}
@media all and (max-width:991px) {
  header .header__main .tabs .tabs__caption {
    margin-bottom: 40px
  }
}
header .header__main .tabs .tabs__caption li {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  font-size: 18px;
  padding: 20px;
  text-transform: uppercase;
  text-decoration: underline;
  cursor: pointer;
  -webkit-transition: .25s all;
  transition: .25s all;
  -ms-user-select: none;
  -moz-user-select: none;
  -khtml-user-select: none;
  -webkit-user-select: none;
  position: relative
}
header .header__main .tabs .tabs__caption li:after {
  position: absolute;
  content: "";
  width: 30px;
  height: calc(100% + 1px);
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  -webkit-clip-path: polygon(100% 0,0 100%,100% 100%);
  clip-path: polygon(100% 0,0 100%,100% 100%);
  background-color: #fff
}
header .header__main .tabs .tabs__caption li:last-child:after {
  right: auto;
  left: 0;
  -webkit-clip-path: polygon(0 4%,0 100%,100% 100%);
  clip-path: polygon(0 4%,0 100%,100% 100%)
}
@media all and (max-width:575px) {
  header .header__main .tabs .tabs__caption li {
    padding: 15px;
    font-size: 16px
  }
}
header .header__main .tabs .tabs__caption li.active {
  background-color: #256d85;
  color: #fff;
  text-decoration: none
}
header .header__main .tabs .tabs__content {
  display: none;
  -webkit-animation: fadeIn var(--transition-time) ease-out;
  animation: fadeIn var(--transition-time) ease-out
}
header .header__main .tabs .tabs__content.active {
  display: block
}
header .header__main .tabs .tabs__content .form__wrapper {
  padding: 0 80px
}
@media all and (max-width:991px) {
  header .header__main .tabs .tabs__content .form__wrapper {
    padding: 0 40px
  }
}
@media all and (max-width:575px) {
  header .header__main .tabs .tabs__content .form__wrapper {
    padding: 0 20px
  }
}
header .header__main .tabs .tabs__content .form__wrapper h3,
header .header__main .tabs .tabs__content .form__wrapper .form__wrapper-title {
  text-align: center;
  font-size: 20px;
  margin-bottom: 20px;
  text-transform: uppercase
}
header .header__main .tabs .tabs__content form .form__item {
  margin-bottom: 30px
}
@media all and (max-width:575px) {
  header .header__main .tabs .tabs__content form .form__item {
    margin-bottom: 16px
  }
}
header .header__main .tabs .tabs__content form .form__item .form__title {
  font-size: 18px;
  margin-bottom: 10px
}
@media all and (max-width:575px) {
  header .header__main .tabs .tabs__content form .form__item .form__title {
    font-size: 14px;
    margin-bottom: 6px
  }
}
header .header__main .tabs .tabs__content form .form__item input,
header .header__main .tabs .tabs__content form .form__item select {
  border: 2px solid #d5d5d5;
  border-radius: 20px;
  width: 100%;
  height: 62px;
  padding-left: 15px;
  padding-right: 10px
}
@media all and (max-width:575px) {
  header .header__main .tabs .tabs__content form .form__item input,
  header .header__main .tabs .tabs__content form .form__item select {
    height: 52px
  }
}
header .header__main .tabs .tabs__content form .form__submit {
  position: relative;
  margin-bottom: 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end
}
@media all and (max-width:575px) {
  header .header__main .tabs .tabs__content form .form__submit {
    margin-bottom: 16px
  }
}
header .header__main .tabs .tabs__content form .form__submit .wpcf7-spinner {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto
}
header .header__main .tabs .tabs__content form .form__policy p {
  color: #535353;
  font-size: 12px;
  line-height: 14px
}
header .header__main .tabs .tabs__content form .form__policy p a {
  color: #535353;
  text-decoration: underline
}
header .header__main .tabs .tabs__content form .form__policy p a:hover {
  color: #47b5ff
}
@-webkit-keyframes showBlock {
  0% {
    opacity: 0
  }
  100% {
    opacity: 1
  }
}
@keyframes showBlock {
  0% {
    opacity: 0
  }
  100% {
    opacity: 1
  }
}
@-webkit-keyframes fadeIn {
  from {
    opacity: 0;
    -webkit-transform: translateY(10px);
    transform: translateY(10px)
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0)
  }
}
@keyframes fadeIn {
  from {
    opacity: 0;
    -webkit-transform: translateY(10px);
    transform: translateY(10px)
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0)
  }
}
.wpcf7-validation-errors {
  display: none!important
}
.wpcf7-form .wpcf7-response-output {
  font-size: 13px;
  line-height: 17px;
  margin: 3px auto 10px auto!important
}
#block-15 input[type=tel].wpcf7-not-valid,
#block-15 input[type=text].wpcf7-not-valid,
#block-7 input[type=tel].wpcf7-not-valid,
#block-7 input[type=text].wpcf7-not-valid,
input[type=date].wpcf7-not-valid,
input[type=email].wpcf7-not-valid,
input[type=tel].wpcf7-not-valid,
input[type=text].wpcf7-not-valid,
select.wpcf7-not-valid,
textarea.wpcf7-not-valid {
  border: 2px solid #ec3c06!important;
  position: relative
}
body span.wpcf7-not-valid-tip {
  display: none!important;
  color: #ec3c06;
  border: none;
  background: 0 0
}
body span.wpcf7-not-valid-tip-no-ajax {
  display: inline-block;
  font-size: 18px;
  margin: 0 0 0 10px
}
body div.wpcf7-validation-errors {
  background: #ffe2e2;
  border: 2px solid #ff8a8a;
  color: #ec3c06;
  font-size: 18px;
  text-align: center;
  position: relative;
  z-index: 12000
}
.contact-inner-form .wpcf7-response-output {
  width: 95%
}
body div.wpcf7-response-output {
  padding: 6px;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  border-radius: 3px
}
body .wpcf7-mail-sent-ng {
  background: #fff2e2;
  border: 1px solid #ffbc8a;
  color: #e17731
}
body .wpcf7-mail-sent-ok {
  border: 1px solid transparent;
  color: #ff5805;
  text-align: center
}
#mainblock {
  margin-bottom: 0
}
#mainblock.page {
  margin-bottom: 70px
}
@media all and (max-width:1199px) {
  #mainblock.page {
    margin-bottom: 50px
  }
}
#mainblock .wrapper .mainblock__item:not(:last-child) {
  margin-bottom: 40px
}
#mainblock .wrapper .mainblock__item:nth-child(2n) .tabs .tabs__caption {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start
}
#mainblock .wrapper .mainblock__item:nth-child(2n) .tabs .tabs__content .image {
  right: auto;
  left: 0
}
#mainblock .wrapper .mainblock__item:nth-child(2n) .tabs .tabs__content .content {
  padding-right: 12px;
  padding-left: 6px
}
@media all and (max-width:1199px) {
  #mainblock .wrapper .mainblock__item:nth-child(2n) .tabs .tabs__content .content {
    padding-left: 12px
  }
}
#mainblock .wrapper .mainblock__item:nth-child(2n) .tabs .tabs__content .content .content__inner {
  background-color: #eff6ff;
  border-radius: 0 20px 0 20px
}
#mainblock .wrapper .mainblock__item:nth-child(2n) .tabs .tabs__content .content .content__inner .content__form {
  border-radius: 0 10px
}
#mainblock .wrapper .mainblock__item .tabs {
  --transition-time: 0.3s
}
#mainblock .wrapper .mainblock__item .tabs .tabs__caption {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 25px;
  margin-bottom: 24px;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  overflow-x: auto;
  -ms-scroll-snap-type: x mandatory;
  scroll-snap-type: x mandatory;
  -ms-overflow-style: none;
  scrollbar-width: none;
  text-align: center
}
@media all and (min-width:991px) {
  #mainblock .wrapper .mainblock__item .tabs .tabs__caption {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end
  }
}
#mainblock .wrapper .mainblock__item .tabs .tabs__caption li {
  text-transform: uppercase;
  cursor: pointer;
  -webkit-transition: .25s all;
  transition: .25s all;
  -ms-user-select: none;
  -moz-user-select: none;
  -khtml-user-select: none;
  -webkit-user-select: none;
  position: relative;
  padding-bottom: 8px;
  scroll-snap-align: start;
  white-space: nowrap
}
#mainblock .wrapper .mainblock__item .tabs .tabs__caption li:after {
  position: absolute;
  content: "";
  height: 1px;
  width: 80%;
  background-color: transparent;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto
}
#mainblock .wrapper .mainblock__item .tabs .tabs__caption li.active {
  font-family: Montserrat, sans-serif;
  font-weight: 700;
  color: #256d85
}
#mainblock .wrapper .mainblock__item .tabs .tabs__caption li.active:after {
  background-color: #256d85
}
#mainblock .wrapper .mainblock__item .tabs .tabs__content {
  display: none;
  -webkit-animation: fadeIn var(--transition-time) ease-out;
  animation: fadeIn var(--transition-time) ease-out;
  position: relative;
  overflow: hidden
}
#mainblock .wrapper .mainblock__item .tabs .tabs__content.active {
  display: block
}
#mainblock .wrapper .mainblock__item .tabs .tabs__content .content {
  padding-right: 6px
}
@media all and (max-width:1199px) {
  #mainblock .wrapper .mainblock__item .tabs .tabs__content .content {
    padding-right: 12px
  }
}
#mainblock .wrapper .mainblock__item .tabs .tabs__content .content .content__inner {
  border: 1px solid rgba(117,116,116,.2);
  border-radius: 20px 0 20px 0;
  overflow: hidden;
  min-height: 600px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 60px
}
@media all and (max-width:1550px) {
  #mainblock .wrapper .mainblock__item .tabs .tabs__content .content .content__inner {
    min-height: 500px
  }
}
@media all and (max-width:991px) {
  #mainblock .wrapper .mainblock__item .tabs .tabs__content .content .content__inner {
    min-height: inherit;
    gap: 20px
  }
}
#mainblock .wrapper .mainblock__item .tabs .tabs__content .content .content__inner .text {
  padding: 90px 50px 40px 50px
}
@media all and (max-width:1550px) {
  #mainblock .wrapper .mainblock__item .tabs .tabs__content .content .content__inner .text {
    padding-top: 60px
  }
}
@media all and (max-width:991px) {
  #mainblock .wrapper .mainblock__item .tabs .tabs__content .content .content__inner .text {
    padding: 30px
  }
}
#mainblock .wrapper .mainblock__item .tabs .tabs__content .content .content__inner .text h2,
#mainblock .wrapper .mainblock__item .tabs .tabs__content .content .content__inner .text .mainblock__subheading {
  font-size: 25px;
  line-height: 120%;
  text-transform: uppercase;
  margin-bottom: 30px
}
@media all and (max-width:575px) {
  #mainblock .wrapper .mainblock__item .tabs .tabs__content .content .content__inner .text h2,
  #mainblock .wrapper .mainblock__item .tabs .tabs__content .content .content__inner .text .mainblock__subheading {
    margin-bottom: 20px
  }
}
#mainblock .wrapper .mainblock__item .tabs .tabs__content .content .content__inner .text p {
  margin-bottom: 10px
}
#mainblock .wrapper .mainblock__item .tabs .tabs__content .content .content__inner .text ul {
  list-style-type: disc;
  padding-left: 17px
}
#mainblock .wrapper .mainblock__item .tabs .tabs__content .content .content__inner .text ul li:not(:last-child) {
  margin-bottom: 4px
}
#mainblock .wrapper .mainblock__item .tabs .tabs__content .content .content__inner .text h3,
#mainblock .wrapper .mainblock__item .tabs .tabs__content .content .content__inner .text .mainblock__price-note {
  font-family: Montserrat, sans-serif;
  font-weight: 400;
  text-align: center;
  margin-top: 40px
}
@media all and (max-width:575px) {
  #mainblock .wrapper .mainblock__item .tabs .tabs__content .content .content__inner .text h3,
  #mainblock .wrapper .mainblock__item .tabs .tabs__content .content .content__inner .text .mainblock__price-note {
    margin-top: 24px
  }
}
#mainblock .wrapper .mainblock__item .tabs .tabs__content .content .content__inner .text h3 strong,
#mainblock .wrapper .mainblock__item .tabs .tabs__content .content .content__inner .text .mainblock__price-note strong {
  font-weight: 800
}
#mainblock .wrapper .mainblock__item .tabs .tabs__content .content .content__inner .text .btn-accent {
  margin-top: 50px
}
@media all and (max-width:575px) {
  #mainblock .wrapper .mainblock__item .tabs .tabs__content .content .content__inner .text .btn-accent {
    margin-top: 30px
  }
}
#mainblock .wrapper .mainblock__item .tabs .tabs__content .image {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  z-index: 1;
  width: 50%
}
@media all and (max-width:991px) {
  #mainblock .wrapper .mainblock__item .tabs .tabs__content .image {
    display: none
  }
}
#mainblock .wrapper .mainblock__item .tabs .tabs__content .image img {
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: 50% 50%;
  object-position: 50% 50%;
  width: 100%;
  height: 100%
}
#mainblock .wrapper .mainblock__item .tabs .tabs__content .image .discout {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  background-color: #256d85;
  border-radius: 5px;
  max-width: 168px;
  min-height: 120px;
  padding: 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  text-align: center;
  font-size: 18px;
  color: #fff
}
#mainblock .wrapper .mainblock__item .tabs .tabs__content .image .discout strong {
  font-size: 32px;
  font-weight: 400
}
.content__form {
  background-color: #256d85;
  border-radius: 10px 0;
  padding: 20px
}
.content__form .form__heading {
  text-align: right;
  margin-bottom: 20px
}
@media all and (max-width:1550px) {
  .content__form .form__heading {
    text-align: left
  }
}
.content__form .form__heading h3,
.content__form .form__heading .form__title {
  font-size: 18px;
  text-transform: none;
  color: #fff;
}
@media all and (max-width:1550px) {
  .content__form .form__items {
    margin-bottom: 16px
  }
}
.content__form .form__items .items__wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 20px
}
@media all and (max-width:575px) {
  .content__form .form__items .items__wrapper {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 14px
  }
}
@media all and (max-width:575px) {
  .content__form .form__items .items__wrapper .item {
    width: 100%
  }
}
.content__form .form__items .items__wrapper .item.item-phone input {
  width: 100%
}
.content__form .form__items .items__wrapper .item .form__title {
  font-size: 15px;
  color: #fff;
  margin-bottom: 8px
}
@media all and (max-width:575px) {
  .content__form .form__items .items__wrapper .item .form__title {
    margin-bottom: 5px
  }
}
.content__form .form__items .items__wrapper .item .form__title sup {
  color: #d21a1a
}
.content__form .form__items .items__wrapper .item input {
  height: 35px;
  border-radius: 5px;
  background-color: #fff;
  border: none;
  text-align: center;
  width: 80px;
  font-size: 12px;
  font-family: Montserrat, sans-serif;
  color: rgba(74,74,74,.4)
}
@media all and (max-width:575px) {
  .content__form .form__items .items__wrapper .item input {
    height: 30px;
    width: 100%;
    font-size: 16px
  }
}
.content__form .form__items .items__wrapper .item input::-webkit-input-placeholder {
  color: rgba(74,74,74,.4);
  opacity: 1
}
.content__form .form__items .items__wrapper .item input::-moz-placeholder {
  color: rgba(74,74,74,.4);
  opacity: 1
}
.content__form .form__items .items__wrapper .item input::-ms-placeholder {
  color: rgba(74,74,74,.4);
  opacity: 1
}
.content__form .form__items .items__wrapper .item input::-webkit-input-placeholder {
  color: rgba(74,74,74,.4);
  opacity: 1
}
.content__form .form__items .items__wrapper .item input::-moz-placeholder {
  color: rgba(74,74,74,.4);
  opacity: 1
}
.content__form .form__items .items__wrapper .item input:-ms-input-placeholder {
  color: rgba(74,74,74,.4);
  opacity: 1
}
.content__form .form__items .items__wrapper .item input::-ms-input-placeholder {
  color: rgba(74,74,74,.4);
  opacity: 1
}
.content__form .form__items .items__wrapper .item input::placeholder {
  color: rgba(74,74,74,.4);
  opacity: 1
}
.content__form .policy__submit .policy {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 10px
}
.content__form .policy__submit .policy .policy__text p {
  color: #fff;
  font-size: 10px;
  line-height: 12px
}
.content__form .policy__submit .policy .policy__text p a {
  color: #fff
}
.content__form .policy__submit .policy .checkbox {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  margin-right: 10px;
  position: relative;
  border: 1px solid #fff;
  width: 12px;
  height: 12px
}
.content__form .policy__submit .policy .checkbox span.wpcf7-form-control-wrap {
  margin-bottom: 0;
  height: auto
}
.content__form .policy__submit .policy .checkbox span.wpcf7-form-control-wrap:before {
  display: none
}
.content__form .policy__submit .policy .checkbox span.wpcf7-form-control-wrap span.wpcf7-acceptance span.wpcf7-list-item input {
  position: absolute;
  opacity: 0;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  cursor: pointer;
  width: 12px;
  height: 12px;
  display: block;
  z-index: 1000
}
.content__form .policy__submit .policy .checkbox span.wpcf7-form-control-wrap span.wpcf7-acceptance span.wpcf7-list-item input:checked ~ .wpcf7-list-item-label {
  background-color: #fff
}
.content__form .policy__submit .policy .checkbox span.wpcf7-form-control-wrap span.wpcf7-acceptance span.wpcf7-list-item input:checked ~ .wpcf7-list-item-label:after {
  display: block
}
.content__form .policy__submit .policy .checkbox span.wpcf7-form-control-wrap span.wpcf7-acceptance span.wpcf7-list-item span.wpcf7-list-item-label {
  position: absolute;
  top: 0;
  left: 0;
  width: 0!important;
  color: transparent
}
.content__form .policy__submit .policy .checkbox span.wpcf7-form-control-wrap span.wpcf7-acceptance span.wpcf7-list-item span.wpcf7-list-item-label:after {
  content: "";
  position: absolute;
  display: none;
  left: 2.5px;
  top: 1px;
  margin: auto;
  width: 5px;
  height: 7px;
  border: solid #4a4a4a;
  border-width: 0 2px 2px 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg)
}
.content__form .policy__submit .submit {
  position: relative
}
.content__form .policy__submit .submit .wpcf7-submit {
  font-family: Montserrat, sans-serif;
  color: #000;
  background-color: #fff;
  border-radius: 5px;
  font-size: 15px;
  text-transform: none;
  font-weight: 700;
  border: none;
  padding: 15px 35px
}
.content__form .policy__submit .submit .wpcf7-spinner {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto
}
#help {
  background-color: #256d85;
  padding: 50px 0;
  color: #fff
}
#help .heading {
  margin-bottom: 50px
}
@media all and (max-width:575px) {
  #help .heading {
    margin-bottom: 40px
  }
}
#help .heading h2 {
  font-size: 40px;
  line-height: 49px
}
@media all and (max-width:575px) {
  #help .heading h2 {
    font-size: 32px;
    line-height: 120%
  }
}
#help form {
  max-width: 1174px;
  width: 100%
}
#help form .form__item {
  margin-bottom: 26px
}
@media all and (max-width:575px) {
  #help form .form__item {
    margin-bottom: 18px
  }
}
#help form .form__item input {
  width: 100%;
  height: 68px;
  border: 1px solid rgba(255,255,255,.6);
  border-radius: 0;
  background-color: #256d85;
  padding-left: 20px;
  padding-right: 10px;
  color: #fff
}
@media all and (max-width:575px) {
  #help form .form__item input {
    height: 56px
  }
}
#help form .form__item input::-webkit-input-placeholder {
  color: #fff;
  opacity: 1
}
#help form .form__item input::-moz-placeholder {
  color: #fff;
  opacity: 1
}
#help form .form__item input::-ms-placeholder {
  color: #fff;
  opacity: 1
}
#help form .form__item input::-webkit-input-placeholder {
  color: #fff;
  opacity: 1
}
#help form .form__item input::-moz-placeholder {
  color: #fff;
  opacity: 1
}
#help form .form__item input:-ms-input-placeholder {
  color: #fff;
  opacity: 1
}
#help form .form__item input::-ms-input-placeholder {
  color: #fff;
  opacity: 1
}
#help form .form__item input::placeholder {
  color: #fff;
  opacity: 1
}
#help form .form__submit {
  position: relative;
  margin-bottom: 26px
}
@media all and (max-width:575px) {
  #help form .form__submit {
    margin-bottom: 18px
  }
}
#help form .form__submit .btn-accent {
  min-height: 68px;
  max-width: 268px;
  width: 100%
}
@media all and (max-width:575px) {
  #help form .form__submit .btn-accent {
    min-height: 56px
  }
}
#help form .form__submit .wpcf7-spinner {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto
}
#help form .form__policy .policy {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  text-align: left
}
#help form .form__policy .policy .policy__text p {
  color: #fff;
  font-size: 16px
}
@media all and (max-width:575px) {
  #help form .form__policy .policy .policy__text p {
    font-size: 14px
  }
}
#help form .form__policy .policy .policy__text p a {
  color: #fff
}
#help form .form__policy .policy .checkbox {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  margin-right: 10px;
  position: relative;
  border: 1px solid #d8d8d8;
  width: 24px;
  height: 24px;
  border-radius: 5px
}
#help form .form__policy .policy .checkbox span.wpcf7-form-control-wrap {
  margin-bottom: 0;
  height: auto
}
#help form .form__policy .policy .checkbox span.wpcf7-form-control-wrap:before {
  display: none
}
#help form .form__policy .policy .checkbox span.wpcf7-form-control-wrap span.wpcf7-acceptance span.wpcf7-list-item input {
  position: absolute;
  opacity: 0;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  cursor: pointer;
  width: 24px;
  height: 24px;
  display: block;
  z-index: 1000
}
#help form .form__policy .policy .checkbox span.wpcf7-form-control-wrap span.wpcf7-acceptance span.wpcf7-list-item input:checked ~ .wpcf7-list-item-label {
  background-color: #fff
}
#help form .form__policy .policy .checkbox span.wpcf7-form-control-wrap span.wpcf7-acceptance span.wpcf7-list-item input:checked ~ .wpcf7-list-item-label:after {
  display: block
}
#help form .form__policy .policy .checkbox span.wpcf7-form-control-wrap span.wpcf7-acceptance span.wpcf7-list-item span.wpcf7-list-item-label {
  position: absolute;
  top: 0;
  left: 0;
  width: 0!important;
  color: transparent
}
#help form .form__policy .policy .checkbox span.wpcf7-form-control-wrap span.wpcf7-acceptance span.wpcf7-list-item span.wpcf7-list-item-label:after {
  content: "";
  position: absolute;
  display: none;
  left: 7px;
  top: 5px;
  margin: auto;
  width: 8px;
  height: 10px;
  border: solid #fff;
  border-width: 0 2px 2px 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg)
}
#price .heading {
  margin-bottom: 40px
}
@media all and (max-width:991px) {
  #price .heading {
    margin-bottom: 20px
  }
}
#price .text {
  margin-bottom: 40px
}
#price .wrapper {
  position: relative
}
#price .wrapper .swiper__nav {
  height: 21px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto
}
#price .wrapper .swiper__nav .swiper-button {
  -ms-user-select: none;
  -moz-user-select: none;
  -khtml-user-select: none;
  -webkit-user-select: none;
  -webkit-transition: .3s all;
  transition: .3s all;
  top: 0;
  bottom: 0;
  position: absolute;
  cursor: pointer;
  margin: auto;
  z-index: 100;
  width: 23px;
  height: 21px;
  background-size: contain;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-image: url(../img/arrow.svg)
}
#price .wrapper .swiper__nav .swiper-button:after {
  display: none!important
}
#price .wrapper .swiper__nav .swiper-button.swiper-button-prev {
  -webkit-transform: rotate(-180deg);
  -ms-transform: rotate(-180deg);
  transform: rotate(-180deg);
  left: -40px
}
@media all and (max-width:1580px) {
  #price .wrapper .swiper__nav .swiper-button.swiper-button-prev {
    left: -30px
  }
}
@media all and (max-width:575px) {
  #price .wrapper .swiper__nav .swiper-button.swiper-button-prev {
    left: 0
  }
}
#price .wrapper .swiper__nav .swiper-button.swiper-button-next {
  right: -40px
}
@media all and (max-width:1580px) {
  #price .wrapper .swiper__nav .swiper-button.swiper-button-next {
    right: -30px
  }
}
@media all and (max-width:575px) {
  #price .wrapper .swiper__nav .swiper-button.swiper-button-next {
    right: 0
  }
}
#price .price__slider {
  padding: 5px!important;
  margin: 0 -5px
}
#price .price__slider .swiper-slide {
  height: auto
}
#price .price__slider .slide__inner {
  min-height: 280px;
  height: 100%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}
#price .price__slider .slide__inner .product__item {
  margin-bottom: 0;
  height: 100%
}
@media all and (max-width:575px) {
  #price .price__slider .slide__inner .product__item {
    max-width: 86%;
    width: 100%;
    margin: 0 auto
  }
}
#price .price__slider .slide__inner .product__item .item__inner {
  height: 100%
}
.product__item {
  margin-bottom: 40px
}
.product__item .item__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  background-color: #fff;
  -webkit-box-shadow: 0 4px 4px rgba(0,0,0,.25);
  box-shadow: 0 4px 4px rgba(0,0,0,.25)
}
.product__item .item__inner .product__price {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 10px 20px;
  margin-bottom: 15px;
  padding-top: 15px;
  padding-right: 15px
}
.product__item .item__inner .product__price .new {
  width: 173px;
  height: 43px;
  font-size: 14px;
  text-transform: uppercase
}
@media all and (max-width:575px) {
  .product__item .item__inner .product__price .new {
    width: 150px;
    height: 38px
  }
}
.product__item .item__inner .product__price .new .new__inner {
  width: 100%;
  height: 100%;
  background-size: contain;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-image: url(../img/icon_10.svg);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding-left: 20px
}
.product__item .item__inner .product__price .price {
  font-family: Montserrat, sans-serif;
  font-size: 20px;
  font-weight: 700;
  color: #757474
}
@media all and (max-width:575px) {
  .product__item .item__inner .product__price .price {
    font-size: 18px
  }
}
.product__item .item__inner .product__image {
  display: block;
  height: 286px;
  overflow: hidden
}
@media all and (max-width:575px) {
  .product__item .item__inner .product__image {
    height: 200px
  }
}
.product__item .item__inner .product__image:hover img {
  -webkit-transform: scale(1.08);
  -ms-transform: scale(1.08);
  transform: scale(1.08)
}
.product__item .item__inner .product__image img {
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: 50% 50%;
  object-position: 50% 50%;
  width: 100%;
  height: 100%;
  will-change: transform;
  -webkit-transition: 1s all;
  transition: 1s all
}
.product__item .item__inner .product__deteils {
  padding: 24px 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  gap: 25px;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1
}
.product__item .item__inner .product__deteils .deteils__inner {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  width: 100%
}
.product__item .item__inner .product__deteils .deteils__inner .product__title {
  color: #757474;
  margin-bottom: 32px;
  display: block
}
@media all and (max-width:575px) {
  .product__item .item__inner .product__deteils .deteils__inner .product__title {
    margin-bottom: 20px
  }
}
.product__item .item__inner .product__deteils .deteils__inner .product__title:hover {
  color: #47b5ff
}
.product__item .item__inner .product__deteils .deteils__inner .product__title h3 {
  font-size: 16px;
  color: inherit
}
.product__item .item__inner .product__deteils .deteils__inner p {
  font-size: 13px;
  line-height: 24px
}
.product__item .item__inner .product__deteils .btn__more {
  width: 100%
}
.product__item .item__inner .product__deteils .more {
  font-size: 15px;
  border: 2px solid #47b5ff;
  color: #47b5ff;
  border-radius: 10px;
  padding: 9.5px 21px;
  display: inline-block;
  text-transform: uppercase
}
.product__item .item__inner .product__deteils .more:hover {
  background-color: #47b5ff;
  color: #fff
}
@media all and (max-width:991px) {
  #faq .faq__main {
    margin-bottom: 50px
  }
}
#faq .faq__main .main__inner h2 {
  font-size: 25px;
  margin-bottom: 40px
}
#faq .faq__main .main__inner .faq_tabs .tabs_item:not(:last-child) {
  margin-bottom: 40px
}
@media all and (max-width:991px) {
  #faq .faq__main .main__inner .faq_tabs .tabs_item:not(:last-child) {
    margin-bottom: 30px
  }
}
#faq .faq__main .main__inner .faq_tabs .tabs_item .title {
  position: relative;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  color: #555;
  padding-right: 30px
}
#faq .faq__main .main__inner .faq_tabs .tabs_item .title:after {
  position: absolute;
  content: "+";
  font-size: 40px;
  color: #e4cb43;
  font-weight: 300;
  top: -16px;
  bottom: 0;
  right: 0;
  margin: auto
}
@media all and (max-width:575px) {
  #faq .faq__main .main__inner .faq_tabs .tabs_item .title:after {
    top: -22px
  }
}
#faq .faq__main .main__inner .faq_tabs .tabs_item .title.active:after {
  content: "-"
}
#faq .faq__main .main__inner .faq_tabs .tabs_item .tab_content {
  display: none;
  padding-right: 30px;
  font-size: 16px;
  padding-top: 15px
}
#faq .faq__form .form__main {
  max-width: 524px;
  width: 100%;
  margin-left: auto;
  margin-right: 0;
  border: 1px solid #e8e8e8;
  border-radius: 15px;
  padding: 50px
}
@media all and (max-width:991px) {
  #faq .faq__form .form__main {
    max-width: none
  }
}
@media all and (max-width:575px) {
  #faq .faq__form .form__main {
    padding: 30px 20px
  }
}
#faq .faq__form .form__main h2 {
  font-size: 25px;
  color: #000;
  margin-bottom: 24px;
  text-align: center
}
#faq .faq__form .form__main form {
  max-width: 365px;
  width: 100%;
  margin: 0 auto
}
#faq .faq__form .form__main form .form__item {
  margin-bottom: 10px
}
#faq .faq__form .form__main form .form__item input {
  width: 100%;
  height: 86px;
  font-size: 16px;
  border: 1px solid #e8e8e8;
  border-radius: 5px;
  padding-left: 20px;
  padding-right: 10px;
  color: #b1b1b1
}
@media all and (max-width:575px) {
  #faq .faq__form .form__main form .form__item input {
    height: 56px
  }
}
#faq .faq__form .form__main form .form__item input::-webkit-input-placeholder {
  color: #b1b1b1;
  opacity: 1
}
#faq .faq__form .form__main form .form__item input::-moz-placeholder {
  color: #b1b1b1;
  opacity: 1
}
#faq .faq__form .form__main form .form__item input::-ms-placeholder {
  color: #b1b1b1;
  opacity: 1
}
#faq .faq__form .form__main form .form__item input::-webkit-input-placeholder {
  color: #b1b1b1;
  opacity: 1
}
#faq .faq__form .form__main form .form__item input::-moz-placeholder {
  color: #b1b1b1;
  opacity: 1
}
#faq .faq__form .form__main form .form__item input:-ms-input-placeholder {
  color: #b1b1b1;
  opacity: 1
}
#faq .faq__form .form__main form .form__item input::-ms-input-placeholder {
  color: #b1b1b1;
  opacity: 1
}
#faq .faq__form .form__main form .form__item input::placeholder {
  color: #b1b1b1;
  opacity: 1
}
#faq .faq__form .form__main form .form__submit {
  position: relative;
  padding-top: 30px;
  margin-bottom: 40px
}
@media all and (max-width:575px) {
  #faq .faq__form .form__main form .form__submit {
    padding-top: 10px;
    margin-bottom: 20px
  }
}
#faq .faq__form .form__main form .form__submit .wpcf7-spinner {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto
}
#faq .faq__form .form__main form .form__policy {
  text-align: center;
  margin-bottom: 40px
}
@media all and (max-width:575px) {
  #faq .faq__form .form__main form .form__policy {
    margin-bottom: 30px
  }
}
#faq .faq__form .form__main form .form__policy p {
  font-size: 12px;
  line-height: 14px;
  color: #535353
}
#faq .faq__form .form__main form .form__policy p a {
  color: #535353;
  text-decoration: underline
}
#faq .faq__form .form__main .social {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 20px;
  max-width: 290px;
  width: 100%;
  margin: 0 auto
}
#faq .faq__form .form__main .social p {
  font-size: 12px;
  line-height: 14px
}
#faq .faq__form .form__main .social ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  gap: 30px
}
#faq .faq__form .form__main .social ul li a:hover {
  opacity: .8
}
#footer {
  background-color: #31353a;
  color: #fff;
  padding-top: 40px;
  margin-bottom: 0
}
#footer a {
  color: #fff
}
#footer h5,
#footer .footer__title {
  font-size: 18px;
  line-height: 120%;
  margin-bottom: 16px;
  text-transform: uppercase
}
#footer .footer__item {
  margin-bottom: 30px
}
#footer .footer__top {
  border-bottom: 1px solid #fff;
  margin-bottom: 20px
}
#footer .footer__menu .menu__inner .menu__item:not(:last-child) {
  margin-bottom: 30px
}
#footer .footer__menu .menu__inner .menu__item ul {
  list-style-type: disc;
  padding-left: 16px
}
#footer .footer__menu .menu__inner .menu__item ul li:not(:last-child) {
  margin-bottom: 5px
}
#footer .footer__menu .menu__inner .menu__item ul li a {
  display: inline-block
}
#footer .footer__menu .menu__inner .menu__item ul li a:hover {
  text-decoration: underline
}
#footer .footer__contacts {
  margin-bottom: 30px
}
#footer .footer__contacts ul li:not(:last-child) {
  margin-bottom: 10px
}
#footer .footer__contacts ul li a {
  display: inline-block
}
#footer .footer__contacts ul li .callback {
  text-decoration: underline
}
#footer .footer__item-bottom {
  margin-bottom: 20px
}
#footer .footer__bottom {
  font-size: 16px
}
#footer .footer__bottom .footer__social .social__inner ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 20px
}
#footer .footer__bottom .footer__social .social__inner ul li a:hover {
  opacity: .8
}
@media all and (min-width:991px) {
  #footer .footer__bottom .footer__policy {
    text-align: right
  }
}
#footer .footer__bottom .footer__policy p a:hover {
  text-decoration: underline
}
#breadcrumbs {
  margin-bottom: 30px
}
#breadcrumbs .breadcrumbs {
  color: #555;
  font-size: 16px;
  line-height: 24px
}
#breadcrumbs .breadcrumbs span {
  color: #555;
  display: inline-block;
  font-weight: 700
}
#breadcrumbs .breadcrumbs span a {
  color: #555;
  display: inline-block;
  font-weight: 400
}
#breadcrumbs .breadcrumbs span a span {
  color: inherit;
  font-weight: 400
}
article .aligncenter,
article div.aligncenter,
article img.centered {
  display: block;
  margin-left: auto;
  margin-right: auto
}
article img.alignright {
  padding: 4px;
  margin: 0 0 2px 7px;
  display: inline
}
article img.alignleft {
  padding: 4px;
  margin: 0 7px 2px 0;
  display: inline
}
article .alignright {
  float: right
}
article .alignleft {
  float: left
}
article h2,
article h3,
article h4,
article h5,
article h6 {
  font-weight: 700;
  margin-bottom: .625em
}
article h2 {
  font-size: 28px;
  line-height: 38px
}
article h3 {
  font-size: 26px;
  line-height: 34px
}
article h4 {
  font-size: 22px
}
article h5 {
  font-size: 18px
}
article h6 {
  font-size: 16px
}
article p {
  margin-bottom: 1em
}
article a {
  color: #47b5ff
}
article ul {
  margin-bottom: 1em;
  list-style-type: disc;
  padding-left: 15px
}
article ul ul {
  margin-bottom: 0
}
article ol li,
article ul li {
  margin-bottom: 4px
}
article ol {
  margin-bottom: 1em;
  padding-left: 15px
}
article mark {
  padding: 0
}
article .wp-block-table,
article table {
  overflow-x: auto;
  width: 100%;
  text-align: left;
  margin-bottom: 30px;
  padding: 0;
  border-spacing: 0
}
article table form,
article table li,
article table p,
article table ul {
  margin: 6px 0;
  padding: 0
}
article table tfoot,
article table thead,
article table.wp-block-table tfoot,
article table.wp-block-table thead {
  border: 1px solid rgba(0,0,0,.12)
}
article table tbody tr:nth-child(odd) {
  background: rgba(0,0,0,.04)
}
article table th,
article table.wp-block-table th {
  font-size: 1.1rem;
  text-transform: uppercase;
  margin: 0;
  padding: 12px;
  border-top: 1px solid rgba(0,0,0,.12);
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}
article table td,
article table.wp-block-table td {
  padding: 12px;
  margin: 0;
  border-top: 1px solid #ddd;
  border-top: 1px solid rgba(0,0,0,.12);
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}
article table.wp-block-table.is-style-stripes {
  border-collapse: collapse
}
article table.wp-block-table.is-style-stripes td {
  border: 1px solid #ddd;
  border: 1px solid rgba(0,0,0,.12)
}
.lightbox-image-container {
  width: 100vw!important
}
.lightbox-image-container figure img {
  width: auto!important;
  height: auto!important;
  -o-object-fit: contain!important;
  object-fit: contain!important;
  max-height: 100%!important
}
#page {
  background-size: cover;
  background-position: 50% 50%;
  background-repeat: no-repeat
}
#page.page-hidden {
  position: relative;
  overflow: hidden
}
#page .page__heading {
  margin-bottom: 30px
}
#page .page__heading h1 {
  font-size: 30px;
  line-height: 120%
}
#page .page__contacts {
  position: relative
}
#page .page__contacts .contacts__wrapper {
  position: absolute;
  top: 50%;
  -webkit-transform: translate(0,-50%);
  -ms-transform: translate(0,-50%);
  transform: translate(0,-50%);
  left: 0;
  width: 100%
}
@media all and (max-width:991px) {
  #page .page__contacts .contacts__wrapper {
    position: relative;
    top: 0;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none
  }
}
#page .page__contacts .contacts__wrapper .content {
  max-width: 620px;
  width: 100%;
  background-color: #fff;
  padding: 42px 65px;
  border-radius: 5px
}
@media all and (max-width:1550px) {
  #page .page__contacts .contacts__wrapper .content {
    max-width: 450px
  }
}
@media all and (max-width:1199px) {
  #page .page__contacts .contacts__wrapper .content {
    max-width: 400px
  }
}
@media all and (max-width:991px) {
  #page .page__contacts .contacts__wrapper .content {
    max-width: none;
    padding: 0 0 40px 0
  }
}
#page .page__contacts .contacts__wrapper .content ul li:not(:last-child) {
  margin-bottom: 26px
}
#page .page__contacts .contacts__wrapper .content ul li h5 {
  font-size: 18px;
  line-height: 120%;
  color: #757474;
  margin-bottom: 16px
}
#page .page__contacts .contacts__wrapper .content ul li a {
  color: #757474
}
#page .page__contacts .contacts__wrapper .content ul li .btn-accent {
  color: #fff
}
#page .page__contacts .map {
  height: 586px
}
@media all and (max-width:991px) {
  #page .page__contacts .map {
    height: 400px
  }
}
@media all and (max-width:575px) {
  #page .page__contacts .map {
    height: 300px
  }
}
#page .page__contacts .map iframe {
  width: 100%;
  height: 100%
}
#page .page__maintenance .tabs {
  --transition-time: 0.3s
}
#page .page__maintenance .tabs .tabs__caption {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 16px 38px;
  margin-bottom: 16px
}
#page .page__maintenance .tabs .tabs__caption li {
  font-size: 16px;
  line-height: 24px;
  text-transform: uppercase;
  color: #757474;
  cursor: pointer;
  -webkit-transition: .25s all;
  transition: .25s all;
  -ms-user-select: none;
  -moz-user-select: none;
  -khtml-user-select: none;
  -webkit-user-select: none;
  padding-bottom: 10px;
  border-bottom: 1px solid transparent
}
@media all and (max-width:575px) {
  #page .page__maintenance .tabs .tabs__caption li {
    padding-bottom: 4px
  }
}
#page .page__maintenance .tabs .tabs__caption li.active {
  font-family: Montserrat, sans-serif;
  font-weight: 700;
  color: #256d85;
  border-bottom: 1px solid #256d85
}
#page .page__maintenance .tabs .tabs__content {
  display: none;
  -webkit-animation: fadeIn var(--transition-time) ease-out;
  animation: fadeIn var(--transition-time) ease-out
}
#page .page__maintenance .tabs .tabs__content.active {
  display: block
}
#page .page__catalog {
  position: relative
}
#page .page__catalog .container {
  height: 100%
}
#page .page__catalog .gallery__wrapper {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  margin: auto;
  width: 100%;
  height: 100%;
  z-index: -1
}
@media all and (max-width:991px) {
  #page .page__catalog .gallery__wrapper {
    display: none
  }
}
#page .page__catalog .gallery__wrapper .gallery__slider {
  position: relative;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  height: 100%
}
#page .page__catalog .gallery__wrapper .gallery__slider .slide__inner {
  height: 100%
}
#page .page__catalog .gallery__wrapper .gallery__slider .slide__inner img {
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: 50% 50%;
  object-position: 50% 50%;
  width: 100%;
  height: 100%
}
#page .page__catalog .gallery__wrapper .swiper-pagination {
  bottom: 50px!important;
  position: absolute;
  left: 80px;
  z-index: 10
}
#page .page__catalog .gallery__wrapper .swiper-pagination span {
  width: 12px;
  height: 12px;
  background-color: #d9d9d9;
  opacity: 1;
  border: 2px solid #d21a1a;
  -webkit-transition: .25s all;
  transition: .25s all
}
#page .page__catalog .gallery__wrapper .swiper-pagination span.swiper-pagination-bullet-active {
  background-color: #d21a1a
}
#page .page__catalog .content {
  position: relative;
  height: 100%
}
#page .page__catalog .content::before {
  position: absolute;
  content: "";
  width: 2000px;
  height: 100%;
  background-color: #fff;
  top: 0;
  bottom: 0;
  left: -1999px;
  margin: auto
}
#page .page__catalog .content .wrapper {
  width: 52%;
  position: relative;
  min-height: 570px;
  background-color: #fff;
  -webkit-clip-path: polygon(0 0,100% 0,94% 100%,0 100%);
  clip-path: polygon(0 0,100% 0,94% 100%,0 100%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 58px
}
@media all and (max-width:1550px) {
  #page .page__catalog .content .wrapper {
    gap: 40px
  }
}
@media all and (max-width:991px) {
  #page .page__catalog .content .wrapper {
    width: 100%;
    min-height: inherit;
    -webkit-clip-path: none;
    clip-path: none
  }
}
#page .page__catalog .content .content__inner {
  color: #4a4a4a;
  text-transform: none;
  padding: 90px 30px 0 120px
}
@media all and (max-width:1550px) {
  #page .page__catalog .content .content__inner {
    padding: 50px 40px 0 50px
  }
}
@media all and (max-width:1199px) {
  #page .page__catalog .content .content__inner {
    padding: 0 40px 0 0
  }
}
#page .page__catalog .content .content__inner h1 {
  font-size: 36px;
  line-height: 48px;
  letter-spacing: .02em;
  margin-bottom: 50px
}
@media all and (max-width:1550px) {
  #page .page__catalog .content .content__inner h1 {
    margin-bottom: 30px
  }
}
@media all and (max-width:575px) {
  #page .page__catalog .content .content__inner h1 {
    font-size: 32px;
    line-height: 120%
  }
}
#page .page__catalog .content .content__inner p {
  margin-bottom: 40px
}
@media all and (max-width:1550px) {
  #page .page__catalog .content .content__inner p {
    margin-bottom: 30px
  }
}
@media all and (max-width:575px) {
  #page .page__catalog .content .content__inner p {
    margin-bottom: 20px
  }
}
#page .page__catalog .content .content__inner ul {
  list-style-type: disc;
  padding-left: 17px
}
#page .page__catalog .content .content__form {
  padding-right: 55px
}
@media all and (min-width:1199px) {
  #page .page__product .product__details .details__inner {
    padding-top: 30px;
   /* max-width: 540px;*/
    width: 100%
  }
}
#page .page__product .product__details .details__inner h3 {
  font-size: 18px;
  font-weight: 600;
  color: rgba(117,116,116,.52);
  margin-bottom: 16px
}
#page .page__product .product__details .details__inner .product__char {
  margin-bottom: 50px
}
#page .page__product .product__details .details__inner .product__char table {
  table-layout: fixed;
  width: 100%
}
#page .page__product .product__details .details__inner .product__char td,
#page .page__product .product__details .details__inner .product__char th {
  width: 2%
}
#page .page__product .product__details .details__inner .product__char table {
  width: 100%
}
#page .page__product .product__details .details__inner .product__char table tr td {
  padding: 4px
}
#page .page__product .product__details .details__inner .product__char table tr td:first-child {
  padding-left: 0
}
#price table {
  table-layout: fixed;
  width: 100%
}
#price td,
#price th {
  width: 2%
}

#price  table {
  width: 100%
}
#price table tr td {
  padding: 4px;
	font-size: 12px;
}

#price table tr td:first-child {
  padding-left: 0
}

#popular table {
  /*table-layout: fixed;*/
  width: 100%
}
#popular td,
#popular th {
  width: 2%
}
#popular table {
  width: 100%
}
#popular table tr td {
  padding: 4px;
	font-size: 12px;
}
#popular table tr td:first-child {
  padding-left: 0
}


.details__inner table {
  table-layout: fixed;
  width: 100%
}
.details__inner td,
.details__inner th {
  width: 2%
}
.details__inner table {
  width: 100%
}
.details__inner table tr td {
  padding: 4px;
	font-size: 12px;
}
.details__inner table tr td:first-child {
  padding-left: 0
}












#page .page__product .product__details .details__inner .price {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 14px 20px;
  margin-bottom: 30px
}
#page .page__product .product__details .details__inner .price span {
  font-family: Montserrat, sans-serif;
  font-size: 25px;
  line-height: 120%;
  font-weight: 800;
  color: #757474
}
#page .page__product .product__details .details__inner .price .price__old {
  font-weight: 400;
  text-decoration: line-through
}
#page .page__product .product__details .details__inner .box__buttons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 14px 40px
}
@media all and (max-width:1199px) {
  #page .page__product .product__details .details__inner .box__buttons {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
  }
}
#page .page__product .product__details .details__inner .box__buttons a {
  border: 1px solid #47b5ff;
  border-radius: 10px;
  font-size: 15px;
  color: #555;
  padding: 18px 40px;
  text-transform: uppercase;
  display: inline-block;
  text-align: center;
  width: 100%
}
#page .page__product .product__details .details__inner .box__buttons a:hover {
  background-color: #47b5ff;
  color: #fff
}
@media all and (max-width:991px) {
  #page .page__product .product__gallery {
    -webkit-box-ordinal-group: 0;
    -ms-flex-order: -1;
    order: -1;
    margin-bottom: 30px
  }
}
#page .page__product .product__gallery .gallery__inner .product__slider {
  margin-bottom: 20px
}
@media all and (max-width:575px) {
  #page .page__product .product__gallery .gallery__inner .product__slider {
    margin-bottom: 10px
  }
}
#page .page__product .product__gallery .gallery__inner .product__slider .slide__inner a {
  display: block;
  height: 450px
}
@media all and (max-width:575px) {
  #page .page__product .product__gallery .gallery__inner .product__slider .slide__inner a {
    height: auto
  }
}
@media all and (min-width:575px) {
  #page .page__product .product__gallery .gallery__inner .product__slider .slide__inner a img {
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
    width: 100%;
    height: 100%
  }
}
@media all and (max-width:575px) {
  #page .page__product .product__gallery .gallery__inner .product__slider .slide__inner a img {
    height: auto;
    max-height: 400px
  }
}
#page .page__product .product__gallery .gallery__inner .gallery__thumb .swiper-slide {
  opacity: .6;
  -webkit-transition: .25s all;
  transition: .25s all
}
#page .page__product .product__gallery .gallery__inner .gallery__thumb .swiper-slide.swiper-slide-thumb-active {
  opacity: 1
}
#page .page__product .product__gallery .gallery__inner .gallery__thumb .slide__inner {
  height: 80px
}
@media all and (max-width:575px) {
  #page .page__product .product__gallery .gallery__inner .gallery__thumb .slide__inner {
    height: 50px
  }
}
#page .page__product .product__gallery .gallery__inner .gallery__thumb .slide__inner img {
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: 50% 50%;
  object-position: 50% 50%;
  width: 100%;
  height: 100%
}
#page .page__search .search-results {
  padding-left: 16px
}
#page .page__search .search-results li:not(:last-child) {
  margin-bottom: 10px
}
#page .page__search .search-results li a {
  color: #757474;
  text-decoration: underline
}
#page .page__search .search-results li a:hover {
  color: #47b5ff
}
#work {
  background-color: #2a2a2a;
  padding-top: 50px;
  color: #fff
}
@media all and (max-width:767px) {
  #work {
    padding-top: 40px;
    padding-bottom: 10px
  }
}
#work .work__item {
  margin-bottom: 50px
}
@media all and (max-width:767px) {
  #work .work__item {
    margin-bottom: 34px
  }
}
#work .work__item .item__inner h4 {
  font-size: 30px;
  line-height: 120%;
  color: #3797b7;
  margin-bottom: 20px
}
@media all and (max-width:767px) {
  #work .work__item .item__inner h4 {
    margin-bottom: 16px
  }
}
.post__item {
  margin-bottom: 30px
}
.post__item .item__inner {
  background-color: #fff;
  -webkit-box-shadow: 0 4px 4px rgba(0,0,0,.25);
  box-shadow: 0 4px 4px rgba(0,0,0,.25);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between
}
.post__item .item__inner .post__image {
  display: block;
  height: 256px;
  overflow: hidden
}
@media all and (max-width:575px) {
  .post__item .item__inner .post__image {
    height: 220px
  }
}
.post__item .item__inner .post__image:hover img {
  -webkit-transform: scale(1.06);
  -ms-transform: scale(1.06);
  transform: scale(1.06)
}
.post__item .item__inner .post__image img {
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: 50% 50%;
  object-position: 50% 50%;
  width: 100%;
  height: 100%;
  will-change: transform;
  -webkit-transition: 1s all;
  transition: 1s all
}
.post__item .item__inner .post__details {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 20px 15px;
  gap: 26px
}
.post__item .item__inner .post__details .details__inner {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1
}
.post__item .item__inner .post__details .details__inner .post__title {
  font-family: Montserrat, sans-serif;
  font-size: 18px;
  font-weight: 700;
  color: #757474;
  margin-bottom: 20px;
  text-align: center;
  display: block
}
@media all and (max-width:575px) {
  .post__item .item__inner .post__details .details__inner .post__title {
    line-height: 24px
  }
}
.post__item .item__inner .post__details .details__inner .post__title:hover {
  color: #47b5ff
}
.post__item .item__inner .post__details .details__inner .post__title h3 {
  color: inherit;
	font-size:16px;
}
.post__item .item__inner .post__details .details__inner p {
  color: #7a7a7a
}
.post__item .item__inner .post__details .more {
  display: inline-block;
  border: 2px solid #47b5ff;
  padding: 8px 20px;
  font-size: 15px;
  text-transform: uppercase;
  color: #47b5ff
}
.post__item .item__inner .post__details .more:hover {
  background-color: #47b5ff;
  color: #fff
}
#popular .wrapper {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 0 116px
}
@media all and (max-width:1550px) {
  #popular .wrapper {
    gap: 0 60px
  }
}
@media all and (max-width:991px) {
  #popular .wrapper {
    grid-template-columns: repeat(2,1fr)
  }
}
@media all and (max-width:767px) {
  #popular .wrapper {
    grid-template-columns: repeat(1,1fr);
    gap: 0 20px
  }
}
#popular .wrapper .product__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}
#popular .wrapper .product__item .item__inner {
  width: 100%
}
#popular article .table__wrapper {
  overflow-x: auto
}
#installtype .heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 20px 40px
}
#installtype .heading .tabs__caption {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 10px 20px
}
#installtype .heading .tabs__caption li {
  cursor: pointer;
  -webkit-transition: .25s all;
  transition: .25s all;
  -ms-user-select: none;
  -moz-user-select: none;
  -khtml-user-select: none;
  -webkit-user-select: none;
  text-transform: uppercase;
  color: #757474
}
#installtype .heading .tabs__caption li.active {
  color: #256d85;
  text-decoration: underline
}
#installtype .tabs {
  --transition-time: 0.3s
}
#installtype .tabs .tabs__content {
  display: none;
  -webkit-animation: fadeIn var(--transition-time) ease-out;
  animation: fadeIn var(--transition-time) ease-out;
  position: relative
}
#installtype .tabs .tabs__content.active {
  display: block
}
#installtype .installtype__slider {
  padding: 5px!important;
  margin: 0 -5px
}
#installtype .installtype__slider .swiper-slide {
  height: auto
}
#installtype .installtype__slider .slide__inner {
  min-height: 280px;
  height: 100%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}
#installtype .installtype__slider .slide__inner .post__item {
  height: 100%
}
@media all and (max-width:575px) {
  #installtype .installtype__slider .slide__inner .post__item {
    max-width: 86%;
    width: 100%;
    margin: 0 auto
  }
}
#installtype .swiper__nav {
  height: 21px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto
}
#installtype .swiper__nav .swiper-button {
  -ms-user-select: none;
  -moz-user-select: none;
  -khtml-user-select: none;
  -webkit-user-select: none;
  -webkit-transition: .3s all;
  transition: .3s all;
  top: 0;
  bottom: 0;
  position: absolute;
  cursor: pointer;
  margin: auto;
  z-index: 100;
  width: 23px;
  height: 21px;
  background-size: contain;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-image: url(../img/arrow.svg)
}
#installtype .swiper__nav .swiper-button:after {
  display: none!important
}
#installtype .swiper__nav .swiper-button.swiper-button-prev {
  -webkit-transform: rotate(-180deg);
  -ms-transform: rotate(-180deg);
  transform: rotate(-180deg);
  left: -40px
}
@media all and (max-width:1580px) {
  #installtype .swiper__nav .swiper-button.swiper-button-prev {
    left: -30px
  }
}
@media all and (max-width:575px) {
  #installtype .swiper__nav .swiper-button.swiper-button-prev {
    left: 0
  }
}
#installtype .swiper__nav .swiper-button.swiper-button-next {
  right: -40px
}
@media all and (max-width:1580px) {
  #installtype .swiper__nav .swiper-button.swiper-button-next {
    right: -30px
  }
}
@media all and (max-width:575px) {
  #installtype .swiper__nav .swiper-button.swiper-button-next {
    right: 0
  }
}

.list4b {
    padding:0;
    list-style: none;
    counter-reset: li;
}    
.list4b li {
    position: relative;
    padding:12px 20px 20px 28px;
    margin-left: 40px;
    transition-duration: 0.3s;
}
.list4b li:before {
    border: 6px solid transparent;
    line-height: 30px;
    position: absolute;
    top: 0;
    left:-30px;
    width:42px;
    text-align:center;
    font-size: 13px;
    font-weight: bold;
    color: #ADCEE9;
    counter-increment: li;
    content: counter(li);
    transition-duration: 0.3s;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;    
}
.list4b li:hover:before {
    color: #337AB7;
}
.list4b li:after {
    position: absolute;
    top: 0;
    left: -30px;
    width: 42px;
    height: 42px;
    border: 6px solid #DDDDDD;
    border-radius: 50%;
    content: '';
    opacity: 0.5;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;    
}
.list4b li:hover:after {
    animation: 500ms ease-in-out 0s bounceIn;
    opacity: 1;
    border: 6px solid #ADCEE9;    
}    
.product__char li{
	padding-bottom: 10px;
}
	
#faq{
		display:none;
	}


@keyframes bounceIn {
    0% {
        opacity: 0;
        transform: scale3d(.3, .3, .3);
    }
    20% {
        transform: scale3d(1.3, 1.3, 1.3);
    }
    40% {
        transform: scale3d(.9, .9, .9);
    }
    60% {
        opacity: 1;
        transform: scale3d(1.03, 1.03, 1.03);
    }
    80% {
        transform: scale3d(.97, .97, .97);
    }
    to {
        opacity: 1;
        transform: scale3d(1, 1, 1);
    }
}

.product-catalog-page {
    padding: 40px 0 72px;
}

.product-catalog-page__head {
    max-width: 880px;
    margin-bottom: 32px;
}

.product-catalog-page__head h1 {
    margin: 0 0 16px;
    color: #27778b;
    font-size: 44px;
    font-weight: 700;
    line-height: 1.15;
}

.product-catalog-page__head p {
    margin: 0;
    color: #666;
    font-size: 20px;
    line-height: 1.45;
}

.product-catalog-page__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
}

.product-catalog-card {
    display: flex;
    min-height: 260px;
    align-items: center;
    gap: 26px;
    padding: 28px;
    border: 1px solid #d8ecf6;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 10px 24px rgba(39, 119, 139, 0.08);
}

.product-catalog-card__image {
    display: flex;
    flex: 0 0 132px;
    width: 132px;
    height: 132px;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    background: #f4fbff;
}

.product-catalog-card__image img {
    max-width: 100px;
    max-height: 100px;
    object-fit: contain;
}

.product-catalog-card__body {
    display: flex;
    min-width: 0;
    align-self: stretch;
    flex-direction: column;
    justify-content: space-between;
}

.product-catalog-card h2 {
    margin: 0 0 14px;
    color: #27778b;
    font-size: 26px;
    font-weight: 700;
    line-height: 1.25;
}

.product-catalog-card p {
    margin: 0 0 24px;
    color: #666;
    font-size: 17px;
    line-height: 1.5;
}

.product-catalog-card__link {
    display: inline-flex;
    width: fit-content;
    min-height: 46px;
    align-items: center;
    justify-content: center;
    padding: 0 22px;
    border: 1px solid #40b5ff;
    border-radius: 6px;
    color: #27778b;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.2;
    text-decoration: none;
}

.product-catalog-card__link:hover {
    background: #40b5ff;
    color: #fff;
}

.product-catalog-page__request {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    margin-top: 32px;
    padding: 28px 30px;
    border-radius: 8px;
    background: #27778b;
    color: #fff;
}

.product-catalog-page__request h2 {
    margin: 0 0 8px;
    color: #fff;
    font-size: 28px;
    font-weight: 700;
    line-height: 1.2;
}

.product-catalog-page__request p {
    margin: 0;
    color: #fff;
    font-size: 17px;
    line-height: 1.45;
}

.product-catalog-page__request .btn {
    flex: 0 0 auto;
}

@media (max-width: 991px) {
    .product-catalog-page {
        padding: 32px 0 56px;
    }

    .product-catalog-page__head h1 {
        font-size: 36px;
    }

    .product-catalog-page__grid {
        grid-template-columns: 1fr;
    }

    .product-catalog-page__request {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 575px) {
    .product-catalog-page__head h1 {
        font-size: 30px;
    }

    .product-catalog-page__head p,
    .product-catalog-card p,
    .product-catalog-page__request p {
        font-size: 16px;
    }

    .product-catalog-card {
        align-items: flex-start;
        flex-direction: column;
        min-height: 0;
        padding: 22px;
    }

    .product-catalog-card__image {
        width: 100%;
        flex-basis: auto;
    }

    .product-catalog-card h2 {
        font-size: 22px;
    }

    .product-catalog-page__request {
        padding: 24px 22px;
    }

    .product-catalog-page__request h2 {
        font-size: 24px;
    }
}

.product-category-page {
    padding: 40px 0 72px;
}

.product-category-page__head {
    max-width: 960px;
    margin-bottom: 26px;
}

.product-category-page__back {
    display: inline-flex;
    margin-bottom: 16px;
    color: #27778b;
    font-size: 15px;
    font-weight: 700;
    text-decoration: underline;
}

.product-category-page__head h1 {
    margin: 0 0 16px;
    color: #27778b;
    font-size: 42px;
    font-weight: 700;
    line-height: 1.18;
}

.product-category-page__head p {
    margin: 0;
    color: #666;
    font-size: 19px;
    line-height: 1.5;
}

.product-category-page__toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 24px;
    padding: 14px 18px;
    border: 1px solid #d8ecf6;
    border-radius: 8px;
    background: #f8fcff;
    color: #666;
    font-size: 15px;
}

.product-category-page__toolbar a {
    color: #27778b;
    font-weight: 700;
    text-decoration: underline;
}

.product-category-page__breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 16px;
    color: #777;
    font-size: 15px;
}

.product-category-page__breadcrumbs a {
    color: #27778b;
    font-weight: 700;
    text-decoration: underline;
}

.product-category-filter-block {
    margin-bottom: 24px;
}

.product-category-filter-block__title {
    display: block;
    margin: 0 0 12px;
    color: #444;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.25;
}

.product-category-groups {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 0 0 26px;
}

.product-category-groups__item {
    display: inline-flex;
    min-height: 42px;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 9px 13px;
    border: 1px solid #d8ecf6;
    border-radius: 6px;
    background: #fff;
    color: #27778b;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.25;
    text-decoration: none;
}

.product-category-groups__item span {
    max-width: 250px;
}

.product-category-groups__item b {
    display: inline-flex;
    min-width: 28px;
    min-height: 24px;
    align-items: center;
    justify-content: center;
    padding: 0 7px;
    border-radius: 999px;
    background: #f4fbff;
    color: #27778b;
    font-size: 13px;
    line-height: 1;
}

.product-category-groups__item:hover,
.product-category-groups__item.active {
    border-color: #40b5ff;
    background: #40b5ff;
    color: #fff;
}

.product-category-groups__item:hover b,
.product-category-groups__item.active b {
    background: rgba(255, 255, 255, 0.22);
    color: #fff;
}

.product-category-groups__item--parent {
    border-color: #27778b;
    background: #27778b;
    color: #fff;
}

.product-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
}

.product-card {
    display: flex;
    min-width: 0;
    min-height: 100%;
    flex-direction: column;
    border: 1px solid #d8ecf6;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 10px 24px rgba(39, 119, 139, 0.08);
    overflow: hidden;
}

.product-card__media {
    position: relative;
    display: flex;
    height: 210px;
    align-items: center;
    justify-content: center;
    padding: 22px;
    background: #f8fcff;
}

.product-card__media img {
    max-width: 100%;
    max-height: 166px;
    object-fit: contain;
}

.product-card__media-link {
    display: flex;
    width: 100%;
    height: 100%;
    align-items: center;
    justify-content: center;
}

.product-card__content h2 a {
    color: inherit;
}

.product-card__content h2 a:hover {
    color: #40b5ff;
}

.product-card__badge {
    position: absolute;
    top: 14px;
    left: 14px;
    padding: 5px 10px;
    border-radius: 6px;
    background: #e93d3d;
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    line-height: 1;
}

.product-card__content {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    padding: 22px 22px 0;
}

.product-card__content h2 {
    margin: 0 0 18px;
    color: #27778b;
    font-size: 19px;
    font-weight: 700;
    line-height: 1.35;
}

.product-card__specs {
    display: grid;
    gap: 8px;
    margin: 0;
}

.product-card__specs div {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    border-bottom: 1px solid #edf5f9;
    padding-bottom: 8px;
}

.product-card__specs dt,
.product-card__specs dd {
    margin: 0;
    color: #666;
    font-size: 14px;
    line-height: 1.35;
}

.product-card__specs dd {
    color: #444;
    font-weight: 700;
    text-align: right;
}

.product-card__footer {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 16px;
    padding: 20px 22px 22px;
}

.product-card__prices {
    display: grid;
    gap: 4px;
}

.product-card__prices del {
    color: #8a8a8a;
    font-size: 14px;
}

.product-card__prices strong {
    color: #27778b;
    font-size: 22px;
    line-height: 1.1;
}

.product-card__prices span {
    color: #666;
    font-size: 13px;
}

.product-card__button {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    padding: 0 18px;
    border-radius: 6px;
    background: #40b5ff;
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    text-decoration: none;
}

.product-card__button:hover {
    background: #27778b;
    color: #fff;
}

@media (max-width: 1199px) {
    .product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    .product-category-page {
        padding: 32px 0 56px;
    }

    .product-category-page__head h1 {
        font-size: 32px;
    }

    .product-category-page__toolbar {
        align-items: flex-start;
        flex-direction: column;
    }

    .product-category-groups {
        display: grid;
        grid-template-columns: 1fr;
    }

    .product-category-groups__item {
        width: 100%;
    }

    .product-category-groups__item span {
        max-width: none;
    }

    .product-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 575px) {
    .product-category-page__head h1 {
        font-size: 28px;
    }

    .product-category-page__head p {
        font-size: 16px;
    }

    .product-card__media {
        height: 190px;
    }

    .product-card__footer {
        align-items: flex-start;
        flex-direction: column;
    }

    .product-card__button {
        width: 100%;
    }
}

.product-detail-page {
    padding: 24px 0 72px;
}

.product-detail-page__breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 24px;
    color: #777;
    font-size: 15px;
}

.product-detail-page__breadcrumbs a {
    color: #27778b;
    font-weight: 700;
    text-decoration: underline;
}

.product-detail-heading {
    max-width: 980px;
    margin-bottom: 24px;
}

.product-detail-heading__brand {
    margin: 0 0 8px;
    color: #40b5ff;
    font-size: 15px;
    font-weight: 800;
    letter-spacing: 0;
    text-transform: uppercase;
}

.product-detail-heading h1 {
    margin: 0 0 14px;
    color: #27778b;
    font-size: 30px;
    font-weight: 700;
    line-height: 1.16;
}

.product-detail-heading p {
    margin: 0;
    color: #666;
    font-size: 18px;
    line-height: 1.55;
}

.product-detail-hero {
    display: grid;
    grid-template-columns: minmax(320px, 0.95fr) minmax(0, 1.05fr);
    gap: 28px;
    align-items: stretch;
    margin-bottom: 34px;
}

.product-detail-hero__media {
    position: relative;
    display: flex;
    min-height: 430px;
    align-items: center;
    justify-content: center;
    padding: 34px;
    border: 1px solid #d8ecf6;
    border-radius: 8px;
    background: #f8fcff;
}

.product-detail-hero__media img {
    max-width: 100%;
    max-height: 360px;
    object-fit: contain;
}

.product-detail-hero--focused .product-detail-hero__media {
    min-height: 380px;
}

.product-detail-hero__badge {
    position: absolute;
    top: 18px;
    left: 18px;
    padding: 6px 12px;
    border-radius: 6px;
    background: #e93d3d;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
}

.product-buy-panel {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 28px;
    border: 1px solid #d8ecf6;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 10px 24px rgba(39, 119, 139, 0.08);
}

.product-buy-panel__price {
    display: grid;
    gap: 7px;
    margin-bottom: 22px;
}

.product-buy-panel__price del {
    color: #8a8a8a;
    font-size: 16px;
}

.product-buy-panel__price strong {
    color: #27778b;
    font-size: 38px;
    line-height: 1.05;
}

.product-buy-panel__price span {
    color: #666;
    font-size: 14px;
    line-height: 1.35;
}

.product-buy-panel__facts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin: 0 0 22px;
}

.product-buy-panel__facts div {
    padding: 13px 14px;
    border-radius: 8px;
    background: #f8fcff;
}

.product-buy-panel__facts dt,
.product-buy-panel__facts dd {
    margin: 0;
    line-height: 1.3;
}

.product-buy-panel__facts dt {
    color: #666;
    font-size: 13px;
}

.product-buy-panel__facts dd {
    color: #27778b;
    font-size: 17px;
    font-weight: 700;
}

.product-buy-panel__actions {
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
    margin-bottom: 0;
}

.product-buy-panel__spec-link,
.product-detail-section__inline-link {
    display: inline-block;
    color: #27778b;
    font-size: 16px;
    font-weight: 700;
    text-decoration: underline;
}

.product-buy-panel__spec-link {
    margin: -4px 0 18px;
}

.product-detail-hero__content {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 32px;
    border: 1px solid #d8ecf6;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 10px 24px rgba(39, 119, 139, 0.08);
}

.product-detail-hero__brand {
    margin: 0 0 10px;
    color: #40b5ff;
    font-size: 15px;
    font-weight: 800;
    letter-spacing: 0;
    text-transform: uppercase;
}

.product-detail-hero__content h1 {
    margin: 0 0 18px;
    color: #27778b;
    font-size: 38px;
    font-weight: 700;
    line-height: 1.18;
}

.product-detail-hero__lead {
    margin: 0 0 24px;
    color: #666;
    font-size: 18px;
    line-height: 1.55;
}

.product-detail-hero__meta {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin: 0 0 28px;
}

.product-detail-hero__meta div {
    padding: 14px;
    border-radius: 8px;
    background: #f8fcff;
}

.product-detail-hero__meta dt,
.product-detail-hero__meta dd {
    margin: 0;
    line-height: 1.3;
}

.product-detail-hero__meta dt {
    color: #666;
    font-size: 13px;
}

.product-detail-hero__meta dd {
    color: #27778b;
    font-size: 18px;
    font-weight: 700;
}

.product-detail-hero__buy {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 22px;
    padding-top: 24px;
    border-top: 1px solid #edf5f9;
}

.product-detail-hero__price {
    display: grid;
    gap: 6px;
}

.product-detail-hero__price del {
    color: #8a8a8a;
    font-size: 16px;
}

.product-detail-hero__price strong {
    color: #27778b;
    font-size: 34px;
    line-height: 1.05;
}

.product-detail-hero__price span {
    color: #666;
    font-size: 14px;
}

.product-detail-hero__button,
.product-detail-file__link {
    display: inline-flex;
    min-height: 50px;
    align-items: center;
    justify-content: center;
    padding: 0 24px;
    border-radius: 6px;
    background: #40b5ff;
    color: #fff;
    font-size: 16px;
    font-weight: 700;
    text-decoration: none;
}

.product-detail-hero__button--secondary {
    border: 1px solid #40b5ff;
    background: #fff;
    color: #27778b;
}

.product-detail-hero__button:hover,
.product-detail-file__link:hover {
    background: #27778b;
    color: #fff;
}

.product-detail-hero__button--secondary:hover {
    border-color: #27778b;
}

.product-detail-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 340px;
    gap: 24px;
    align-items: start;
}

.product-detail-tabs {
    margin-top: 26px;
}

#product-specs {
    scroll-margin-top: 132px;
}

.product-detail-anchor {
    display: block;
    scroll-margin-top: 132px;
}

.product-detail-tabs__nav {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 16px;
}

.product-detail-tabs__nav button {
    min-height: 46px;
    padding: 0 20px;
    border: 1px solid #d8ecf6;
    border-radius: 6px;
    background: #fff;
    color: #27778b;
    font-size: 16px;
    font-weight: 700;
    cursor: pointer;
}

.product-detail-tabs__nav button.active,
.product-detail-tabs__nav button:hover {
    border-color: #40b5ff;
    background: #40b5ff;
    color: #fff;
}

.product-detail-tabs__nav button:focus {
    outline: 2px solid #27778b;
    outline-offset: 2px;
}

.product-detail-tab-panel {
    display: none;
}

.product-detail-tab-panel.active {
    display: block;
}

.product-detail-section,
.product-detail-file {
    padding: 28px;
    border: 1px solid #d8ecf6;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 10px 24px rgba(39, 119, 139, 0.08);
}

.product-detail-section {
    grid-column: 1;
}

.product-detail-file {
    grid-column: 2;
    grid-row: 1 / span 2;
}

.product-detail-section h2,
.product-detail-file h2 {
    margin: 0 0 18px;
    color: #27778b;
    font-size: 28px;
    font-weight: 700;
    line-height: 1.25;
}

.product-detail-section p,
.product-detail-file p {
    margin: 0 0 14px;
    color: #666;
    font-size: 17px;
    line-height: 1.6;
}

.product-spec-table-wrap {
    overflow-x: auto;
}

.product-spec-table {
    width: 100%;
    border-collapse: collapse;
}

.product-spec-table th,
.product-spec-table td {
    padding: 14px 16px;
    border-bottom: 1px solid #edf5f9;
    color: #444;
    font-size: 16px;
    line-height: 1.4;
    text-align: left;
    vertical-align: top;
}

.product-spec-table th {
    width: 48%;
    color: #666;
    font-weight: 600;
}

.product-spec-table td {
    color: #27778b;
    font-weight: 700;
}

.product-detail-file__link {
    width: 100%;
    gap: 10px;
}

.product-detail-file__link span {
    display: inline-flex;
    min-width: 40px;
    min-height: 28px;
    align-items: center;
    justify-content: center;
    border-radius: 4px;
    background: rgba(255, 255, 255, 0.2);
    font-size: 13px;
    line-height: 1;
}

.product-reviews-list {
    display: grid;
    gap: 16px;
    margin-bottom: 28px;
}

.product-review {
    padding: 18px;
    border: 1px solid #edf5f9;
    border-radius: 8px;
    background: #f8fcff;
}

.product-review__head {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 8px 16px;
    margin-bottom: 8px;
}

.product-review__head strong {
    color: #27778b;
    font-size: 17px;
}

.product-review__head time,
.product-review__rating {
    color: #666;
    font-size: 14px;
}

.product-review__rating {
    margin-bottom: 10px;
    font-weight: 700;
}

.product-review__body p:last-child {
    margin-bottom: 0;
}

.product-review-form {
    margin-top: 24px;
    padding-top: 24px;
    border-top: 1px solid #edf5f9;
}

.product-review-form__title {
    margin: 0 0 12px;
    color: #27778b;
    font-size: 24px;
    line-height: 1.25;
}

.product-review-form__note,
.product-review-form .comment-notes {
    margin: 0 0 16px;
    color: #666;
    font-size: 15px;
    line-height: 1.5;
}

.product-review-form__success {
    margin: 0 0 16px;
    padding: 12px 14px;
    border: 1px solid #bce7c6;
    border-radius: 6px;
    background: #f1fff4;
    color: #27783a;
    font-size: 15px;
    font-weight: 700;
}

.product-review-form .comment-form {
    display: grid;
    gap: 16px;
    max-width: 720px;
}

.product-review-form .comment-form p {
    margin: 0;
}

.product-review-form label {
    display: block;
    margin-bottom: 7px;
    color: #555;
    font-size: 15px;
    font-weight: 700;
}

.product-review-form input[type="text"],
.product-review-form input[type="email"],
.product-review-form input[type="url"],
.product-review-form textarea,
.product-review-form select {
    width: 100%;
    min-height: 48px;
    padding: 11px 14px;
    border: 1px solid #d8ecf6;
    border-radius: 6px;
    background: #fff;
    color: #444;
    font-size: 16px;
}

.product-review-form textarea {
    min-height: 132px;
    resize: vertical;
}

.product-review-form .comment-form-cookies-consent {
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

.product-review-form .comment-form-cookies-consent input {
    width: auto;
    margin-top: 4px;
}

.product-review-form .comment-form-cookies-consent label {
    margin: 0;
    font-weight: 400;
}

.product-review-form__submit {
    border: 0;
    cursor: pointer;
}

@media (max-width: 1199px) {
    .product-detail-hero,
    .product-detail-layout {
        grid-template-columns: 1fr;
    }

    .product-detail-file,
    .product-detail-section {
        grid-column: auto;
        grid-row: auto;
    }
}

@media (max-width: 767px) {
    .product-detail-page {
        padding: 24px 0 56px;
    }

    #product-specs {
        scroll-margin-top: 80px;
    }

    .product-detail-anchor {
        scroll-margin-top: 80px;
    }

    .product-detail-heading h1 {
        font-size: 30px;
    }

    .product-detail-hero__media {
        min-height: 300px;
    }

    .product-detail-hero__content {
        padding: 24px;
    }

    .product-detail-hero__content h1 {
        font-size: 30px;
    }

    .product-detail-hero__meta {
        grid-template-columns: 1fr;
    }

    .product-detail-hero__buy {
        align-items: flex-start;
        flex-direction: column;
    }

    .product-detail-hero__button {
        width: 100%;
    }

    .product-buy-panel__facts {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 575px) {
    .product-detail-heading h1 {
        font-size: 30px;
    }

    .product-detail-heading p {
        font-size: 16px;
    }

    .product-detail-hero__content h1 {
        font-size: 26px;
    }

    .product-detail-hero__lead,
    .product-detail-section p,
    .product-detail-file p {
        font-size: 16px;
    }

    .product-detail-section,
    .product-detail-file,
    .product-buy-panel {
        padding: 22px;
    }

    .product-buy-panel__price strong {
        font-size: 32px;
    }

    .product-detail-tabs__nav {
        display: grid;
        grid-template-columns: 1fr;
    }

    .product-spec-table th,
    .product-spec-table td {
        display: block;
        width: 100%;
        padding: 10px 0;
    }

    .product-spec-table th {
        border-bottom: 0;
        padding-bottom: 2px;
    }
}

/* Conversion homepage */
.home-hero,
.home-section,
.home-final-cta {
    color: #26333a;
}

.home-hero {
    position: relative;
    overflow: hidden;
    padding: 64px 0 58px;
    background:
        linear-gradient(105deg, rgba(255,255,255,.96) 0%, rgba(255,255,255,.9) 48%, rgba(255,255,255,.72) 100%),
        url('/wp-content/uploads/2025/09/3.jpg') center / cover no-repeat;
}

.home-hero:before {
    content: "";
    position: absolute;
    inset: auto 0 0;
    height: 6px;
    background: linear-gradient(90deg, #ff642f, #34aef4, #27778b);
}

.home-hero__grid {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(360px, .58fr);
    gap: 42px;
    align-items: center;
}

.home-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 14px;
    color: #27778b;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 0;
    text-transform: uppercase;
}

.home-eyebrow:before {
    content: "";
    width: 28px;
    height: 2px;
    background: #ff642f;
}

.home-hero h1 {
    max-width: 850px;
    margin: 0;
    color: #1d2a30;
    font-size: 52px;
    font-weight: 800;
    line-height: 1.08;
}

.home-hero__lead {
    max-width: 700px;
    margin: 24px 0 0;
    color: #505b61;
    font-size: 21px;
    line-height: 1.55;
}

.home-hero__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 32px;
}

.home-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    padding: 14px 22px;
    border-radius: 8px;
    font-size: 17px;
    font-weight: 800;
    line-height: 1.2;
    text-decoration: none;
    transition: transform .2s ease, box-shadow .2s ease, background .2s ease, color .2s ease;
}

.home-btn:hover {
    transform: translateY(-2px);
    text-decoration: none;
}

.home-btn--primary {
    border: 1px solid #2aa9ed;
    background: linear-gradient(135deg, #38b8fb, #27778b);
    box-shadow: 0 16px 28px rgba(39, 119, 139, .22);
    color: #fff;
}

.home-btn--secondary {
    border: 1px solid #c9e9f8;
    background: #fff;
    color: #27778b;
}

.home-hero__badges {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    max-width: 780px;
    margin: 36px 0 0;
}

.home-hero__badges div {
    min-height: 86px;
    padding: 16px;
    border: 1px solid rgba(39, 119, 139, .16);
    border-radius: 8px;
    background: rgba(255, 255, 255, .88);
    box-shadow: 0 12px 28px rgba(32, 47, 56, .08);
}

.home-hero__badges dt {
    margin: 0 0 5px;
    color: #27778b;
    font-size: 22px;
    font-weight: 900;
    line-height: 1.1;
}

.home-hero__badges dd {
    margin: 0;
    color: #5c666b;
    font-size: 14px;
    line-height: 1.35;
}

.home-calc {
    padding: 28px;
    border: 1px solid rgba(42, 169, 237, .28);
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 24px 50px rgba(32, 47, 56, .16);
}

.home-calc__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 18px;
    color: #6c767b;
    font-size: 14px;
    font-weight: 700;
}

.home-calc__head strong {
    padding: 8px 10px;
    border-radius: 999px;
    background: #fff3ec;
    color: #e45d2d;
    font-size: 13px;
}

.home-calc h2 {
    margin: 0;
    color: #1f3038;
    font-size: 30px;
    font-weight: 800;
    line-height: 1.15;
}

.home-calc p {
    margin: 12px 0 18px;
    color: #667176;
    font-size: 16px;
    line-height: 1.5;
}

.home-calc .wpcf7-form,
.home-final-cta .wpcf7-form {
    display: grid;
    gap: 12px;
}

.home-calc .form__item,
.home-final-cta .form__item {
    margin: 0;
}

.home-calc .form__title,
.home-final-cta .form__title {
    margin-bottom: 6px;
    color: #506068;
    font-size: 14px;
    font-weight: 800;
}

.home-calc input,
.home-calc select,
.home-calc textarea,
.home-final-cta input,
.home-final-cta select,
.home-final-cta textarea {
    width: 100%;
    min-height: 48px;
    border: 1px solid #d5ecf7;
    border-radius: 8px;
    background: #f9fdff;
    color: #253238;
    font-size: 16px;
}

.home-calc input:focus,
.home-calc select:focus,
.home-final-cta input:focus,
.home-final-cta select:focus {
    border-color: #34aef4;
    box-shadow: 0 0 0 3px rgba(52, 174, 244, .16);
    outline: 0;
}

.home-calc input[type="submit"],
.home-final-cta input[type="submit"],
.home-calc .btn-accent,
.home-final-cta .btn-accent {
    width: 100%;
    min-height: 52px;
    border: 0;
    border-radius: 8px;
    background: linear-gradient(135deg, #38b8fb, #27778b);
    color: #fff;
    cursor: pointer;
    font-size: 17px;
    font-weight: 900;
}

.home-section {
    padding: 72px 0;
    background: #fff;
}

.home-section:nth-of-type(odd) {
    background: #f7fbfd;
}

.home-section__head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 28px;
}

.home-section__head h2,
.home-process h2,
.home-final-cta h2 {
    margin: 0;
    color: #27778b;
    font-size: 40px;
    font-weight: 800;
    line-height: 1.14;
}

.home-link {
    color: #27778b;
    font-size: 17px;
    font-weight: 800;
    text-decoration: underline;
    text-underline-offset: 5px;
}

.home-categories__grid {
    display: grid;
    grid-template-columns: 1.25fr 1fr 1fr;
    grid-template-rows: 230px 230px;
    gap: 18px;
}

.home-category-card {
    position: relative;
    display: flex;
    overflow: hidden;
    min-height: 230px;
    align-items: flex-end;
    padding: 24px;
    border-radius: 8px;
    background: #eaf6fb;
    color: #fff;
    text-decoration: none;
    box-shadow: 0 16px 34px rgba(32, 47, 56, .12);
}

.home-category-card--large {
    grid-row: span 2;
    min-height: 478px;
}

.home-category-card img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .28s ease;
}

.home-category-card:after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(17, 34, 42, .07), rgba(17, 34, 42, .25) 44%, rgba(17, 34, 42, .78));
}

.home-category-card strong {
    position: relative;
    z-index: 1;
    max-width: 90%;
    font-size: 28px;
    font-weight: 900;
    line-height: 1.15;
}

.home-category-card--large strong {
    font-size: 36px;
}

.home-category-card p {
    position: relative;
    z-index: 1;
    max-width: 430px;
    margin: 10px 0 0;
    padding: 0;
    color: rgba(255, 255, 255, .9);
    font-size: 15px;
    font-weight: 700;
    line-height: 1.38;
}

.home-category-card--large p {
    font-size: 16px;
}

.home-category-card__badge {
    position: relative;
    z-index: 1;
    display: inline-flex;
    width: max-content;
    min-height: 30px;
    align-items: center;
    margin-bottom: 12px;
    padding: 0 11px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .92);
    color: #27778b;
    font-size: 12px;
    font-weight: 900;
    line-height: 1;
    text-transform: uppercase;
}

.home-category-card:hover img {
    transform: scale(1.05);
}

.home-card-grid {
    display: grid;
    gap: 18px;
}

.home-card-grid--four {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.home-card-grid--three {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.home-solution-card,
.home-catalog-card,
.home-review,
.home-proof__grid article,
.home-step {
    border: 1px solid #d9eff8;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 14px 32px rgba(32, 47, 56, .08);
}

.home-solution-card {
    display: block;
    overflow: hidden;
    color: #4f5c62;
    text-decoration: none;
}

.home-solution-card img {
    width: 100%;
    height: 170px;
    object-fit: cover;
    background: #f3fbff;
}

.home-solution-card span,
.home-catalog-card h3 {
    display: block;
    margin: 18px 18px 8px;
    color: #27778b;
    font-size: 22px;
    font-weight: 900;
    line-height: 1.22;
}

.home-solution-card p,
.home-catalog-card p,
.home-review p,
.home-proof__grid p,
.home-step p {
    margin: 0;
    color: #667176;
    font-size: 16px;
    line-height: 1.55;
}

.home-solution-card p,
.home-catalog-card p {
    padding: 0 18px 22px;
}

.home-catalog-card {
    display: flex;
    flex-direction: column;
    min-height: 100%;
    color: #4f5c62;
    text-decoration: none;
}

.home-catalog-card__image {
    display: flex;
    height: 190px;
    align-items: center;
    justify-content: center;
    padding: 24px;
    background: #f4fbff;
}

.home-catalog-card__image img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

.home-section.home-process {
    background: #20313a;
    color: #fff;
}

.home-process .home-eyebrow,
.home-process h2 {
    color: #fff;
}

.home-process__layout {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
    gap: 36px;
    align-items: start;
}

.home-process__layout > div > p {
    max-width: 620px;
    margin: 18px 0 28px;
    color: rgba(255, 255, 255, .78);
    font-size: 18px;
    line-height: 1.6;
}

.home-process__steps {
    display: grid;
    gap: 14px;
}

.home-step {
    position: relative;
    padding: 24px 24px 24px 88px;
    background: rgba(255, 255, 255, .08);
    border-color: rgba(255, 255, 255, .14);
    box-shadow: none;
}

.home-step span {
    position: absolute;
    top: 22px;
    left: 22px;
    color: #ff7a45;
    font-size: 24px;
    font-weight: 900;
}

.home-step h3 {
    margin: 0 0 8px;
    color: #fff;
    font-size: 22px;
    font-weight: 900;
}

.home-step p {
    color: rgba(255, 255, 255, .76);
}

.home-proof__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}

.home-proof__grid article {
    padding: 24px;
}

.home-proof__grid strong {
    display: block;
    margin-bottom: 10px;
    color: #27778b;
    font-size: 21px;
    line-height: 1.25;
}

.home-review {
    padding: 24px;
}

.home-review strong {
    display: block;
    margin-bottom: 12px;
    color: #1f3038;
    font-size: 19px;
}

.home-review:before {
    content: "★★★★★";
    display: block;
    margin-bottom: 12px;
    color: #ff642f;
    font-size: 16px;
    letter-spacing: 2px;
}

.home-final-cta {
    padding: 72px 0;
    background: linear-gradient(135deg, #eef9fe, #fff);
}

.home-final-cta__inner {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(360px, .55fr);
    gap: 34px;
    align-items: start;
    padding: 34px;
    border: 1px solid #d8edf7;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 20px 46px rgba(32, 47, 56, .1);
}

.home-final-cta p {
    max-width: 670px;
    margin: 18px 0 0;
    color: #5c686e;
    font-size: 19px;
    line-height: 1.6;
}

.home-final-cta__form {
    padding: 24px;
    border-radius: 8px;
    background: #f7fbfd;
}

.home-final-cta__form .row {
    display: grid;
    gap: 12px;
    margin-right: 0;
    margin-left: 0;
}

.home-final-cta__form [class*="col-"] {
    width: 100%;
    max-width: 100%;
    padding-right: 0;
    padding-left: 0;
    flex: 0 0 100%;
}

.home-final-cta__form .wpcf7-list-item {
    margin-left: 0;
}

.home-final-cta__form .form__submit {
    margin-top: 8px;
}

@media (max-width: 1199px) {
    .home-hero__grid,
    .home-final-cta__inner {
        grid-template-columns: 1fr;
    }

    .home-card-grid--four,
    .home-proof__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 991px) {
    .home-hero {
        padding: 42px 0 48px;
    }

    .home-hero h1 {
        font-size: 42px;
    }

    .home-hero__badges,
    .home-categories__grid,
    .home-process__layout {
        grid-template-columns: 1fr 1fr;
    }

    .home-category-card--large {
        grid-row: auto;
        min-height: 260px;
    }

    .home-card-grid--three {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767px) {
    .home-hero h1,
    .home-section__head h2,
    .home-process h2,
    .home-final-cta h2 {
        font-size: 34px;
    }

    .home-hero__lead,
    .home-final-cta p {
        font-size: 17px;
    }

    .home-section {
        padding: 52px 0;
    }

    .home-section__head {
        display: block;
    }

    .home-link {
        display: inline-block;
        margin-top: 14px;
    }

    .home-hero__badges,
    .home-categories__grid,
    .home-card-grid--four,
    .home-proof__grid,
    .home-process__layout {
        grid-template-columns: 1fr;
    }

    .home-category-card,
    .home-category-card--large {
        min-height: 220px;
    }

    .home-calc,
    .home-final-cta__inner,
    .home-final-cta__form {
        padding: 22px;
    }
}

@media (max-width: 575px) {
    .home-hero {
        padding-top: 30px;
    }

    .home-hero h1 {
        font-size: 30px;
    }

    .home-calc h2 {
        font-size: 26px;
    }

    .home-hero__actions .home-btn {
        width: 100%;
    }

    .home-category-card strong {
        font-size: 24px;
    }

    .home-step {
        padding: 76px 20px 22px;
    }
}

/* Roller shutters landing page */
.rol-hero,
.rol-section,
.rol-final {
    color: #26333a;
}

.rol-hero {
    padding: 52px 0 42px;
    background: linear-gradient(180deg, #f7fbfd 0%, #fff 100%);
}

.rol-scenarios {
    padding-top: 48px;
}

.rol-hero__grid {
    display: grid;
    grid-template-columns: minmax(0, .82fr) minmax(560px, 1fr);
    gap: 34px;
    align-items: center;
}

.rol-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 14px;
    color: #27778b;
    font-size: 13px;
    font-weight: 900;
    letter-spacing: 0;
    text-transform: uppercase;
}

.rol-eyebrow:before {
    content: "";
    width: 28px;
    height: 2px;
    background: #ff642f;
}

.rol-hero h1 {
    margin: 0;
    color: #172731;
    font-size: 52px;
    font-weight: 900;
    line-height: 1.08;
}

.rol-hero__lead {
    max-width: 620px;
    margin: 22px 0 0;
    color: #526069;
    font-size: 19px;
    line-height: 1.62;
}

.rol-hero__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 30px;
}

.rol-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 50px;
    padding: 13px 22px;
    border-radius: 8px;
    font-size: 16px;
    font-weight: 900;
    line-height: 1.2;
    text-decoration: none;
    transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.rol-btn:hover {
    transform: translateY(-2px);
    text-decoration: none;
}

.rol-btn--primary {
    border: 1px solid #27778b;
    background: linear-gradient(135deg, #37b5f8, #27778b);
    box-shadow: 0 14px 28px rgba(39, 119, 139, .22);
    color: #fff;
}

.rol-btn--secondary {
    border: 1px solid #c9e5f1;
    background: #fff;
    color: #27778b;
}

.rol-btn--orange {
    min-width: 260px;
    border: 1px solid #ff7a45;
    background: #ff7a2f;
    box-shadow: 0 14px 28px rgba(255, 100, 47, .25);
    color: #fff;
}

.rol-hero__chips {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-top: 38px;
}

.rol-hero__chips span {
    display: flex;
    min-height: 78px;
    align-items: center;
    padding: 16px;
    border: 1px solid #d8edf7;
    border-radius: 8px;
    background: #fff;
    color: #1f3038;
    box-shadow: 0 12px 28px rgba(32, 47, 56, .08);
    font-size: 15px;
    font-weight: 800;
    line-height: 1.25;
}

.rol-hero__media {
    position: relative;
    min-height: 620px;
    overflow: hidden;
    border-radius: 8px;
    background: #dce8ee;
    box-shadow: 0 20px 46px rgba(32, 47, 56, .14);
}

.rol-hero__media > img {
    width: 100%;
    height: 100%;
    min-height: 620px;
    object-fit: cover;
}

.rol-calc {
    position: absolute;
    top: 42px;
    right: 42px;
    width: min(360px, calc(100% - 48px));
    padding: 26px;
    border: 1px solid rgba(42, 169, 237, .26);
    border-radius: 8px;
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 22px 46px rgba(32, 47, 56, .18);
}

.rol-calc__label {
    margin-bottom: 10px;
    color: #ff642f;
    font-size: 14px;
    font-weight: 900;
}

.rol-calc h2 {
    margin: 0 0 18px;
    color: #1f3038;
    font-size: 28px;
    font-weight: 900;
    line-height: 1.16;
}

.rol-calc .wpcf7-form {
    display: grid;
    gap: 12px;
}

.rol-calc .form__item {
    margin: 0;
}

.rol-calc .form__title {
    margin-bottom: 6px;
    color: #53636b;
    font-size: 14px;
    font-weight: 800;
}

.rol-calc input,
.rol-calc select,
.rol-calc textarea {
    width: 100%;
    min-height: 46px;
    border: 1px solid #d4eaf5;
    border-radius: 8px;
    background: #f9fdff;
    color: #253238;
    font-size: 16px;
}

.rol-calc input[type="submit"],
.rol-calc .btn-accent {
    width: 100%;
    min-height: 52px;
    border: 0;
    border-radius: 8px;
    background: linear-gradient(135deg, #37b5f8, #27778b);
    color: #fff;
    cursor: pointer;
    font-size: 17px;
    font-weight: 900;
}

.rol-calc .form__policy,
.rol-calc .form__policy p,
.rol-calc .policy,
.rol-calc .policy__text,
.rol-calc .policy__text p,
.rol-calc .wpcf7-form > p {
    margin: 0;
    padding: 0;
    color: #7b878d;
    font-size: 10px !important;
    font-weight: 500;
    line-height: 1.35;
}

.rol-calc .form__policy a,
.rol-calc .policy__text a,
.rol-calc .wpcf7-form > p a {
    color: #27778b;
    font-size: 10px !important;
    font-weight: 700;
    line-height: 1.35;
    text-decoration: underline;
    text-underline-offset: 2px;
}

.rol-section {
    padding: 70px 0;
    background: #fff;
}

.rol-section:nth-of-type(odd) {
    background: #f7fbfd;
}

.rol-section__head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 28px;
}

.rol-section__head--center {
    justify-content: center;
    text-align: center;
}

.rol-section h2,
.rol-final h2 {
    margin: 0;
    color: #27778b;
    font-size: 39px;
    font-weight: 900;
    line-height: 1.14;
}

.rol-section__note {
    max-width: 420px;
    margin: 0;
    color: #68757b;
    font-size: 15px;
    line-height: 1.5;
}

.rol-link {
    color: #27778b;
    font-size: 16px;
    font-weight: 900;
    text-decoration: underline;
    text-underline-offset: 5px;
}

.rol-card-grid {
    display: grid;
    gap: 18px;
}

.rol-card-grid--four {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.rol-card-grid--three {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.rol-scenario-card,
.rol-series-card,
.rol-benefits__panel,
.rol-step,
.rol-review,
.rol-final__inner {
    border: 1px solid #d8edf7;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 14px 32px rgba(32, 47, 56, .08);
}

.rol-scenario-card {
    display: block;
    overflow: hidden;
    color: #526069;
    text-decoration: none;
}

.rol-scenario-card img {
    width: 100%;
    height: 190px;
    object-fit: cover;
    background: #eef7fb;
}

.rol-scenario-card span {
    display: block;
    margin: 18px 18px 8px;
    color: #1f3038;
    font-size: 23px;
    font-weight: 900;
    line-height: 1.2;
}

.rol-scenario-card p {
    min-height: 76px;
    margin: 0;
    padding: 0 18px 22px;
    color: #5f6d73;
    font-size: 15px;
    line-height: 1.55;
}

.rol-series-card {
    display: grid;
    grid-template-columns: .8fr 1fr;
    overflow: hidden;
}

.rol-series-card > img {
    width: 100%;
    height: 100%;
    min-height: 360px;
    object-fit: cover;
    background: #eef7fb;
}

.rol-series-card__body {
    display: flex;
    flex-direction: column;
    padding: 26px;
}

.rol-series-card h3 {
    margin: 0 0 6px;
    color: #172731;
    font-size: 28px;
    font-weight: 900;
}

.rol-series-card p {
    margin: 0 0 16px;
    color: #66737a;
    font-size: 15px;
    line-height: 1.45;
}

.rol-series-card strong {
    display: block;
    margin-bottom: 18px;
    color: #172731;
    font-size: 26px;
    font-weight: 900;
}

.rol-series-card ul {
    display: grid;
    gap: 10px;
    margin: 0 0 24px;
    padding: 0;
    list-style: none;
}

.rol-series-card li {
    position: relative;
    padding-left: 16px;
    color: #526069;
    font-size: 15px;
    line-height: 1.45;
}

.rol-series-card li:before {
    content: "";
    position: absolute;
    top: .65em;
    left: 0;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #ff642f;
}

.rol-series-card__actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-top: auto;
}

.rol-series-card__actions .rol-btn {
    padding-right: 12px;
    padding-left: 12px;
}

.rol-benefits__panel {
    padding: 34px;
    background: linear-gradient(135deg, #f5fbff, #fff);
}

.rol-benefits__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}

.rol-benefits__grid article {
    padding: 0 20px;
    border-right: 1px solid #d8edf7;
}

.rol-benefits__grid article:last-child {
    border-right: 0;
}

.rol-benefits__grid h3 {
    margin: 0 0 10px;
    color: #172731;
    font-size: 20px;
    font-weight: 900;
    line-height: 1.25;
}

.rol-benefits__grid p,
.rol-step p,
.rol-review p,
.rol-final p {
    margin: 0;
    color: #607078;
    font-size: 15px;
    line-height: 1.58;
}

.rol-process__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 22px;
}

.rol-step {
    position: relative;
    min-height: 210px;
    padding: 34px 24px 26px;
    text-align: center;
}

.rol-step span {
    position: absolute;
    top: 14px;
    left: 14px;
    display: inline-flex;
    width: 30px;
    height: 30px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #ff642f;
    color: #fff;
    font-size: 13px;
    font-weight: 900;
}

.rol-step h3 {
    margin: 22px 0 10px;
    color: #172731;
    font-size: 22px;
    font-weight: 900;
}

.rol-works__grid {
    display: grid;
    grid-template-columns: 1fr 1fr minmax(300px, .8fr);
    gap: 18px;
    align-items: stretch;
}

.rol-works__grid > img {
    width: 100%;
    height: 250px;
    border-radius: 8px;
    object-fit: cover;
    box-shadow: 0 14px 32px rgba(32, 47, 56, .08);
}

.rol-review {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 26px;
}

.rol-review__stars {
    margin-bottom: 14px;
    color: #ff642f;
    font-size: 18px;
    letter-spacing: 2px;
}

.rol-review strong {
    display: block;
    margin-top: 16px;
    color: #172731;
    font-size: 16px;
}

.rol-final {
    padding: 52px 0 70px;
    background: #fff;
}

.rol-final__inner {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 28px;
    align-items: center;
    padding: 34px;
    background: linear-gradient(135deg, #0f5c73, #103646);
}

.rol-final .rol-eyebrow,
.rol-final h2,
.rol-final p {
    color: #fff;
}

.rol-final p {
    max-width: 700px;
    margin-top: 12px;
    color: rgba(255,255,255,.78);
    font-size: 17px;
}

@media (max-width: 1199px) {
    .rol-hero__grid,
    .rol-final__inner {
        grid-template-columns: 1fr;
    }

    .rol-hero__media {
        min-height: 620px;
    }

    .rol-card-grid--four,
    .rol-benefits__grid,
    .rol-process__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .rol-card-grid--three {
        grid-template-columns: 1fr;
    }

    .rol-series-card {
        grid-template-columns: .7fr 1fr;
    }
}

@media (max-width: 991px) {
    .rol-hero h1 {
        font-size: 42px;
    }

    .rol-hero__chips {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .rol-works__grid {
        grid-template-columns: 1fr;
    }

    .rol-works__grid > img {
        height: 260px;
    }
}

@media (max-width: 767px) {
    .rol-hero,
    .rol-section {
        padding: 46px 0;
    }

    .rol-hero h1,
    .rol-section h2,
    .rol-final h2 {
        font-size: 32px;
    }

    .rol-hero__lead,
    .rol-final p {
        font-size: 16px;
    }

    .rol-section__head {
        display: block;
    }

    .rol-section__note,
    .rol-link {
        display: inline-block;
        margin-top: 14px;
    }

    .rol-card-grid--four,
    .rol-benefits__grid,
    .rol-process__grid,
    .rol-hero__chips {
        grid-template-columns: 1fr;
    }

    .rol-hero__media {
        min-height: auto;
    }

    .rol-hero__media > img {
        min-height: 320px;
    }

    .rol-calc {
        position: static;
        width: auto;
        margin: -28px 12px 12px;
    }

    .rol-series-card {
        grid-template-columns: 1fr;
    }

    .rol-series-card > img {
        min-height: 240px;
        max-height: 280px;
    }

    .rol-benefits__panel,
    .rol-final__inner {
        padding: 24px;
    }

    .rol-benefits__grid article {
        padding: 0;
        border-right: 0;
        border-bottom: 1px solid #d8edf7;
        padding-bottom: 18px;
    }

    .rol-benefits__grid article:last-child {
        border-bottom: 0;
        padding-bottom: 0;
    }
}

@media (max-width: 575px) {
    .rol-hero h1 {
        font-size: 30px;
    }

    .rol-hero__actions .rol-btn,
    .rol-final .rol-btn {
        width: 100%;
    }

    .rol-series-card__actions {
        grid-template-columns: 1fr;
    }

    .rol-calc {
        padding: 22px;
    }
}

.rol-clusters {
    padding-top: 42px;
    padding-bottom: 42px;
    background: #fff;
}

.rol-cluster-picker {
    display: grid;
    gap: 22px;
}

.rol-cluster-featured {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}

.rol-cluster-card {
    display: flex;
    overflow: hidden;
    flex-direction: column;
    min-height: 100%;
    border: 1px solid #d8edf7;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 14px 32px rgba(32, 47, 56, .08);
    color: #26333a;
    text-decoration: none;
    transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.rol-cluster-card:hover,
.rol-cluster-card.active {
    border-color: #27778b;
    box-shadow: 0 18px 40px rgba(39, 119, 139, .16);
    color: #26333a;
    text-decoration: none;
    transform: translateY(-2px);
}

.rol-cluster-card__image {
    display: block;
    height: 210px;
    background: #eef8fc;
}

.rol-cluster-card__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.rol-cluster-card__body {
    position: relative;
    display: grid;
    gap: 10px;
    padding: 22px;
}

.rol-cluster-card__title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    color: #27778b;
    font-size: 23px;
    font-weight: 900;
    line-height: 1.2;
}

.rol-cluster-count {
    display: inline-flex;
    flex: 0 0 auto;
    min-width: 32px;
    height: 32px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #eef8fc;
    color: #27778b;
    font-size: 15px;
    font-weight: 900;
}

.rol-cluster-card__text {
    min-height: 48px;
    color: #5d6b72;
    font-size: 16px;
    line-height: 1.5;
}

.rol-cluster-card__arrow {
    justify-self: end;
    color: #27778b;
    font-size: 30px;
    line-height: 1;
}

.rol-cluster-chips {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}

.rol-cluster-chips a {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    min-height: 58px;
    align-items: center;
    gap: 14px;
    padding: 14px 18px;
    border: 1px solid #d8edf7;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 10px 24px rgba(32, 47, 56, .06);
    color: #26333a;
    font-size: 17px;
    font-weight: 900;
    line-height: 1.2;
    text-decoration: none;
    transition: border-color .2s ease, box-shadow .2s ease, color .2s ease;
}

.rol-cluster-icon {
    width: 30px;
    height: 30px;
    color: #27778b;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

.rol-cluster-chip-text {
    min-width: 0;
}

.rol-cluster-chips a:hover,
.rol-cluster-chips a.active {
    border-color: #27778b;
    box-shadow: 0 14px 28px rgba(39, 119, 139, .14);
    color: #27778b;
    text-decoration: none;
}

.rol-cluster-chips a.active {
    background: #f4fbff;
}

.rol-cluster-consult {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 18px;
}

.rol-cluster-consult > span {
    color: #68757b;
    font-size: 17px;
    font-weight: 700;
}

.rol-cluster-consult a {
    display: inline-flex;
    min-height: 54px;
    align-items: center;
    justify-content: center;
    gap: 16px;
    padding: 14px 24px;
    border-radius: 8px;
    background: linear-gradient(135deg, #37b5f8, #27778b);
    box-shadow: 0 14px 28px rgba(39, 119, 139, .22);
    color: #fff;
    font-size: 17px;
    font-weight: 900;
    text-decoration: none;
}

.rol-category-page {
    padding: 42px 0 76px;
    background: linear-gradient(180deg, #f7fbfd 0%, #fff 440px);
}

.rol-category-page__head {
    max-width: 920px;
    margin-bottom: 28px;
}

.rol-category-page__breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 22px;
    color: #78858b;
    font-size: 14px;
}

.rol-category-page__breadcrumbs a {
    color: #27778b;
    font-weight: 800;
    text-decoration: underline;
    text-underline-offset: 4px;
}

.rol-category-page__head h1 {
    max-width: 880px;
    margin: 0;
    color: #172731;
    font-size: 48px;
    font-weight: 900;
    line-height: 1.1;
}

.rol-category-page__head p {
    max-width: 820px;
    margin: 20px 0 0;
    color: #56666e;
    font-size: 19px;
    line-height: 1.6;
}

.rol-category-page__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 28px;
}

.rol-category-page__toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 16px;
    padding: 16px 18px;
    border: 1px solid #d8edf7;
    border-radius: 8px;
    background: #fff;
    color: #5b686f;
    font-size: 16px;
    font-weight: 800;
}

.rol-category-page__toolbar a {
    color: #27778b;
    text-decoration: underline;
    text-underline-offset: 4px;
}

.rol-product-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    margin-top: 26px;
}

.rol-product-card {
    display: flex;
    overflow: hidden;
    flex-direction: column;
    min-height: 100%;
    border: 1px solid #d8edf7;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 14px 32px rgba(32, 47, 56, .08);
}

.rol-product-card__image {
    display: flex;
    height: 230px;
    align-items: center;
    justify-content: center;
    background: #f4fbff;
}

.rol-product-card__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.rol-product-card__body {
    display: flex;
    flex: 1;
    flex-direction: column;
    padding: 22px;
}

.rol-product-card__price {
    margin-bottom: 12px;
    color: #ff642f;
    font-size: 20px;
    font-weight: 900;
}

.rol-product-card h3 {
    margin: 0 0 12px;
    color: #27778b;
    font-size: 22px;
    font-weight: 900;
    line-height: 1.22;
}

.rol-product-card h3 a {
    color: inherit;
    text-decoration: none;
}

.rol-product-card p {
    margin: 0 0 16px;
    color: #63717a;
    font-size: 15px;
    line-height: 1.5;
}

.rol-product-card__specs {
    display: grid;
    gap: 10px;
    margin: 0 0 18px;
    padding-top: 14px;
    border-top: 1px solid #edf6fa;
}

.rol-product-card__specs div {
    display: grid;
    grid-template-columns: 110px 1fr;
    gap: 10px;
}

.rol-product-card__specs dt,
.rol-product-card__specs dd {
    margin: 0;
    color: #63717a;
    font-size: 14px;
    line-height: 1.35;
}

.rol-product-card__specs dt {
    font-weight: 900;
}

.rol-product-card__actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-top: auto;
}

.rol-product-card__actions a {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    padding: 10px 12px;
    border: 1px solid #c9e5f1;
    border-radius: 8px;
    background: #fff;
    color: #27778b;
    font-size: 15px;
    font-weight: 900;
    text-decoration: none;
}

.rol-product-card__actions a:last-child {
    border-color: #27778b;
    background: linear-gradient(135deg, #37b5f8, #27778b);
    color: #fff;
}

.rol-category-page__seo {
    margin-top: 42px;
    padding: 30px;
    border: 1px solid #d8edf7;
    border-radius: 8px;
    background: #f7fbfd;
}

.rol-category-page__seo h2 {
    margin: 0 0 12px;
    color: #27778b;
    font-size: 32px;
    font-weight: 900;
    line-height: 1.18;
}

.rol-category-page__seo p {
    max-width: 980px;
    margin: 0 0 20px;
    color: #5b686f;
    font-size: 17px;
    line-height: 1.6;
}

@media (max-width: 1199px) {
    .rol-cluster-featured,
    .rol-cluster-chips {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .rol-product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    .rol-cluster-featured,
    .rol-cluster-chips {
        grid-template-columns: 1fr;
    }

    .rol-cluster-card__image {
        height: 180px;
    }

    .rol-cluster-consult {
        align-items: stretch;
        flex-direction: column;
    }

    .rol-cluster-consult a {
        width: 100%;
    }

    .rol-category-page__head h1 {
        font-size: 34px;
    }

    .rol-category-page__head p {
        font-size: 16px;
    }

    .rol-category-page__toolbar {
        display: block;
    }

    .rol-category-page__toolbar a {
        display: inline-block;
        margin-top: 10px;
    }

    .rol-product-grid {
        grid-template-columns: 1fr;
    }

    .rol-product-card__specs div {
        grid-template-columns: 1fr;
        gap: 2px;
    }
}

@media (max-width: 575px) {
    .rol-category-page__actions .rol-btn,
    .rol-product-card__actions {
        grid-template-columns: 1fr;
        width: 100%;
    }

    .rol-cluster-card__title {
        font-size: 21px;
    }

    .rol-cluster-chips a {
        font-size: 16px;
    }
}

.rol-product-page {
    padding: 18px 0 76px;
    background: #fff;
}

.rol-product-breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0 0 22px;
    color: #7a878f;
    font-size: 14px;
    line-height: 1.45;
}

.rol-product-breadcrumbs a {
    color: #27778b;
    font-weight: 800;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.rol-product-heading {
    display: grid;
    gap: 10px;
    max-width: 1050px;
    margin-bottom: 24px;
}

.rol-product-heading__eyebrow {
    margin: 0;
    color: #ff642f;
    font-size: 14px;
    font-weight: 900;
    letter-spacing: 0;
    text-transform: uppercase;
}

.rol-product-heading h1 {
    margin: 0;
    color: #202f38;
    font-size: 42px;
    font-weight: 900;
    line-height: 1.08;
}

.rol-product-heading p {
    max-width: 890px;
    margin: 0;
    color: #5f6f78;
    font-size: 18px;
    line-height: 1.55;
}

.rol-product-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.12fr) minmax(380px, .88fr);
    gap: 24px;
    align-items: start;
}

.rol-product-gallery,
.rol-product-panel,
.rol-product-section,
.rol-product-help-card,
.rol-product-related {
    border: 1px solid #d8edf7;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 16px 36px rgba(32, 47, 56, .08);
}

.rol-product-gallery {
    overflow: hidden;
}

.rol-product-gallery__main {
    position: relative;
    display: flex;
    min-height: 450px;
    align-items: center;
    justify-content: center;
    padding: 34px;
    background: linear-gradient(180deg, #f6fbfe 0%, #eef7fc 100%);
}

.rol-product-gallery__main img {
    display: block;
    width: 100%;
    max-height: 390px;
    object-fit: contain;
}

.rol-product-gallery__badge {
    position: absolute;
    top: 18px;
    left: 18px;
    padding: 8px 12px;
    border-radius: 6px;
    background: #27778b;
    color: #fff;
    font-size: 14px;
    font-weight: 900;
    line-height: 1;
}

.rol-product-gallery__thumbs {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 12px;
    padding: 14px;
    border-top: 1px solid #e7f2f7;
    background: #fff;
}

.rol-product-gallery__thumbs a,
.rol-product-gallery__thumbs span {
    display: flex;
    min-height: 82px;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border: 1px solid #d8edf7;
    border-radius: 8px;
    background: #f8fcff;
}

.rol-product-gallery__thumbs .active {
    border-color: #27778b;
    box-shadow: inset 0 0 0 1px #27778b;
}

.rol-product-gallery__thumbs img {
    width: 100%;
    height: 82px;
    object-fit: cover;
}

.rol-product-gallery__scheme {
    flex-direction: column;
    color: #27778b;
    text-align: center;
}

.rol-product-gallery__scheme strong {
    color: #202f38;
    font-size: 15px;
    font-weight: 900;
}

.rol-product-gallery__scheme small {
    color: #63717a;
    font-size: 12px;
}

.rol-product-panel {
    position: sticky;
    top: 16px;
    padding: 26px;
}

.rol-product-panel__top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 20px;
}

.rol-product-price {
    display: grid;
    gap: 4px;
}

.rol-product-price span {
    color: #63717a;
    font-size: 14px;
    font-weight: 800;
}

.rol-product-price strong {
    color: #202f38;
    font-size: 42px;
    font-weight: 900;
    line-height: 1.05;
}

.rol-product-stock {
    display: inline-flex;
    min-height: 34px;
    align-items: center;
    padding: 0 12px;
    border-radius: 6px;
    background: #edf9f0;
    color: #24733a;
    font-size: 13px;
    font-weight: 900;
    white-space: nowrap;
}

.rol-product-facts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin: 0 0 16px;
    overflow: hidden;
    border: 1px solid #e3f0f6;
    border-radius: 8px;
}

.rol-product-facts div {
    min-height: 72px;
    padding: 13px 14px;
    border-right: 1px solid #e3f0f6;
    border-bottom: 1px solid #e3f0f6;
    background: #fff;
}

.rol-product-facts div:nth-child(2n) {
    border-right: 0;
}

.rol-product-facts div:nth-last-child(-n+2) {
    border-bottom: 0;
}

.rol-product-facts dt,
.rol-product-facts dd {
    margin: 0;
    line-height: 1.35;
}

.rol-product-facts dt {
    color: #63717a;
    font-size: 13px;
    font-weight: 800;
}

.rol-product-facts dd {
    color: #202f38;
    font-size: 16px;
    font-weight: 900;
}

.rol-product-panel__spec-link {
    display: inline-flex;
    margin: 0 0 18px;
    color: #27778b;
    font-size: 15px;
    font-weight: 900;
    text-decoration: underline;
    text-underline-offset: 4px;
}

.rol-product-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-bottom: 20px;
}

.rol-product-btn {
    display: inline-flex;
    min-height: 52px;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 12px 16px;
    border: 1px solid #c9e5f1;
    border-radius: 8px;
    background: #fff;
    color: #27778b;
    font-size: 15px;
    font-weight: 900;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
}

.rol-product-btn span {
    display: inline-flex;
    min-width: 26px;
    height: 26px;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    background: #eef8fc;
    color: #27778b;
    font-size: 12px;
    font-weight: 900;
}

.rol-product-btn--primary {
    grid-column: 1 / -1;
    border-color: #ff642f;
    background: linear-gradient(135deg, #ff7a34, #f04c18);
    color: #fff;
}

.rol-product-btn--primary span {
    background: rgba(255, 255, 255, .2);
    color: #fff;
}

.rol-product-btn:hover {
    border-color: #27778b;
    background: #27778b;
    color: #fff;
}

.rol-product-btn:hover span {
    background: rgba(255, 255, 255, .16);
    color: #fff;
}

.rol-product-service {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0;
    border-top: 1px solid #edf6fa;
}

.rol-product-service div {
    display: grid;
    gap: 5px;
    justify-items: center;
    padding: 18px 8px 0;
    text-align: center;
}

.rol-product-service span,
.rol-product-usecases span {
    display: inline-flex;
    width: 42px;
    height: 42px;
    align-items: center;
    justify-content: center;
    border: 2px solid #27778b;
    border-radius: 8px;
    color: #27778b;
    font-size: 14px;
    font-weight: 900;
    line-height: 1;
}

.rol-product-icon {
    width: 24px;
    height: 24px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.9;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.rol-product-service strong,
.rol-product-usecases strong {
    color: #202f38;
    font-size: 15px;
    font-weight: 900;
}

.rol-product-service small,
.rol-product-usecases small {
    color: #63717a;
    font-size: 13px;
    line-height: 1.25;
}

.rol-product-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 28px 0 18px;
    padding-bottom: 2px;
    border-bottom: 1px solid #e3f0f6;
}

.rol-product-tabs a {
    display: inline-flex;
    min-height: 46px;
    align-items: center;
    padding: 0 18px;
    border-bottom: 3px solid transparent;
    color: #5f6f78;
    font-size: 16px;
    font-weight: 900;
    text-decoration: none;
}

.rol-product-tabs a.active,
.rol-product-tabs a:hover {
    border-bottom-color: #ff642f;
    color: #27778b;
}

.rol-product-content {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 390px;
    gap: 18px;
    align-items: start;
}

.rol-product-section,
.rol-product-help-card {
    padding: 26px;
    scroll-margin-top: 120px;
}

.rol-product-section--wide {
    grid-column: 1 / -1;
}

.rol-product-section h2,
.rol-product-help-card h2,
.rol-product-related h2 {
    margin: 0 0 14px;
    color: #27778b;
    font-size: 28px;
    font-weight: 900;
    line-height: 1.18;
}

.rol-product-section p,
.rol-product-help-card p {
    margin: 0 0 16px;
    color: #5f6f78;
    font-size: 17px;
    line-height: 1.62;
}

.rol-product-usecases {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-top: 18px;
}

.rol-product-usecases div {
    display: grid;
    align-content: start;
    gap: 8px;
    min-height: 142px;
    padding: 16px;
    border: 1px solid #e3f0f6;
    border-radius: 8px;
    background: #f8fcff;
}

.rol-product-spec-table-wrap {
    overflow-x: auto;
}

.rol-product-spec-table {
    width: 100%;
    border-collapse: collapse;
}

.rol-product-spec-table th,
.rol-product-spec-table td {
    padding: 14px 16px;
    border-bottom: 1px solid #edf6fa;
    color: #202f38;
    font-size: 16px;
    line-height: 1.4;
    text-align: left;
    vertical-align: top;
}

.rol-product-spec-table th {
    width: 42%;
    color: #63717a;
    font-weight: 900;
}

.rol-product-spec-table td {
    color: #27778b;
    font-weight: 900;
}

.rol-product-kit {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.rol-product-kit li {
    position: relative;
    padding: 13px 14px 13px 36px;
    border: 1px solid #e3f0f6;
    border-radius: 8px;
    background: #f8fcff;
    color: #202f38;
    font-size: 16px;
    font-weight: 800;
}

.rol-product-kit li::before {
    content: "";
    position: absolute;
    top: 18px;
    left: 15px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #ff642f;
}

.rol-product-help-card {
    position: sticky;
    top: 16px;
    background: linear-gradient(180deg, #f3fbff 0%, #fff 100%);
}

.rol-product-help-card a,
.rol-product-inline-cta {
    display: inline-flex;
    min-height: 48px;
    align-items: center;
    justify-content: center;
    padding: 0 20px;
    border-radius: 8px;
    background: linear-gradient(135deg, #37b5f8, #27778b);
    color: #fff;
    font-size: 16px;
    font-weight: 900;
    text-decoration: none;
}

.rol-product-related {
    margin-top: 34px;
    padding: 26px;
}

.rol-product-related__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 6px;
}

.rol-product-related__head a {
    color: #27778b;
    font-size: 16px;
    font-weight: 900;
    text-decoration: underline;
    text-underline-offset: 4px;
}

@media (max-width: 1199px) {
    .rol-product-hero,
    .rol-product-content {
        grid-template-columns: 1fr;
    }

    .rol-product-panel,
    .rol-product-help-card {
        position: static;
    }
}

@media (max-width: 767px) {
    .rol-product-page {
        padding: 16px 0 56px;
    }

    .rol-product-heading h1 {
        font-size: 32px;
    }

    .rol-product-heading p {
        font-size: 16px;
    }

    .rol-product-gallery__main {
        min-height: 310px;
        padding: 22px;
    }

    .rol-product-gallery__main img {
        max-height: 260px;
    }

    .rol-product-gallery__thumbs {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .rol-product-panel,
    .rol-product-section,
    .rol-product-help-card,
    .rol-product-related {
        padding: 20px;
    }

    .rol-product-panel__top {
        display: grid;
    }

    .rol-product-price strong {
        font-size: 34px;
    }

    .rol-product-facts,
    .rol-product-actions,
    .rol-product-service,
    .rol-product-usecases,
    .rol-product-kit {
        grid-template-columns: 1fr;
    }

    .rol-product-facts div,
    .rol-product-facts div:nth-child(2n),
    .rol-product-facts div:nth-last-child(-n+2) {
        border-right: 0;
        border-bottom: 1px solid #e3f0f6;
    }

    .rol-product-facts div:last-child {
        border-bottom: 0;
    }

    .rol-product-service {
        gap: 10px;
        border-top: 0;
    }

    .rol-product-service div {
        align-items: center;
        grid-template-columns: 42px 1fr;
        justify-items: start;
        padding: 12px;
        border: 1px solid #e3f0f6;
        border-radius: 8px;
        text-align: left;
    }

    .rol-product-service small {
        grid-column: 2;
    }

    .rol-product-tabs {
        overflow-x: auto;
        flex-wrap: nowrap;
        padding-bottom: 8px;
    }

    .rol-product-tabs a {
        flex: 0 0 auto;
    }

    .rol-product-section h2,
    .rol-product-help-card h2,
    .rol-product-related h2 {
        font-size: 24px;
    }

    .rol-product-related__head {
        display: grid;
    }
}

@media (max-width: 575px) {
    .rol-product-heading h1 {
        font-size: 28px;
    }

    .rol-product-btn {
        width: 100%;
    }

    .rol-product-gallery__thumbs {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .rol-product-spec-table th,
    .rol-product-spec-table td {
        display: block;
        width: 100%;
        padding: 10px 0;
    }

.rol-product-usecases div {
        min-height: auto;
    }
}

.aluprom-header,
.aluprom-header.page {
    margin-bottom: 0;
    background: #fff;
}

.aluprom-header .header__wrapper,
.aluprom-header .header__wrapper.header__fixed {
    position: relative;
    top: auto;
    left: auto;
    width: 100%;
    padding: 0;
    background: #fff;
    box-shadow: none;
}

.aluprom-header__top {
    display: grid;
    grid-template-columns: minmax(200px, 220px) minmax(0, 1fr) auto;
    gap: 18px;
    align-items: center;
    min-height: 92px;
    padding: 10px 0;
}

.aluprom-header__logo {
    max-width: 210px;
}

.aluprom-header__info {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    color: #3f4f58;
    font-size: 13px;
    font-weight: 800;
    line-height: 1.35;
}

.aluprom-header__contact {
    display: inline-flex;
    min-width: 0;
    align-items: center;
    gap: 10px;
}

.aluprom-header__contact--time {
    min-width: 130px;
}

.aluprom-header__contact--address {
    min-width: 220px;
}

.aluprom-header__contact--phone {
    flex: 0 0 230px;
    min-width: 230px;
}

.aluprom-header__contact-icon {
    display: inline-flex;
    flex: 0 0 auto;
    width: 30px;
    height: 30px;
    align-items: center;
    justify-content: center;
    color: #27778b;
}

.aluprom-header__contact-icon svg,
.aluprom-header__callback svg,
.aluprom-header__search svg {
    width: 25px;
    height: 25px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.aluprom-header__route,
.aluprom-header__recall {
    display: block;
    margin-top: 2px;
    color: #27778b;
    font-size: 13px;
    font-weight: 800;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.aluprom-header__phone {
    display: block;
    color: #202f38;
    font-size: 18px;
    font-weight: 900;
    line-height: 1.08;
    white-space: nowrap;
}

.aluprom-header__callback {
    display: inline-flex;
    min-height: 46px;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 0 15px;
    border: 1px solid #8dcbe7;
    border-radius: 8px;
    background: #fff;
    color: #27778b;
    font-size: 14px;
    font-weight: 900;
    text-decoration: none;
    white-space: nowrap;
}

.aluprom-header__callback:before {
    display: none;
}

.aluprom-header__callback span {
    display: inline-flex;
}

.aluprom-header__callback svg {
    width: 23px;
    height: 23px;
}

.aluprom-header__social {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 0;
}

.aluprom-header__social li {
    padding: 0;
}

.aluprom-header__social li a {
    display: grid;
    width: auto;
    height: auto;
    min-width: 58px;
    justify-items: center;
    gap: 4px;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: #5f6f78;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.15;
}

.aluprom-header__social li a img {
    width: 31px;
    height: 31px;
    object-fit: contain;
}

.aluprom-header__rule {
    display: none;
}

.aluprom-header .header__menu {
    position: relative;
    z-index: 1;
    display: block;
    margin-top: 0;
    padding: 0;
}

.aluprom-header .header__menu.aluprom-header__menu--fixed {
    position: fixed;
    z-index: 1000;
    top: 0;
    right: 0;
    left: 0;
    margin-top: 0;
    background: linear-gradient(135deg, #075f73, #047f93);
    box-shadow: 0 12px 28px rgba(32, 47, 56, .16);
}

.aluprom-header .header__menu.aluprom-header__menu--fixed .menu__inner {
    width: 100%;
    max-width: 1170px;
    margin: 0 auto;
    padding: 0 15px;
}

body.aluprom-nav-is-fixed main {
    padding-top: var(--aluprom-nav-height, 58px);
}

.aluprom-header .header__menu::before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    bottom: 0;
    left: 50%;
    width: 100vw;
    transform: translateX(-50%);
    border-bottom: 3px solid #ff642f;
    background: linear-gradient(135deg, #075f73, #047f93);
}

.aluprom-header .header__menu .menu__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
    min-height: 58px;
}

.aluprom-header .header__menu .menu__inner ul {
    display: flex;
    flex: 1;
    align-items: center;
    gap: 0;
}

.aluprom-header .header__menu .menu__inner ul li {
    padding: 0;
}

.aluprom-header .header__menu .menu__inner ul li a {
    display: inline-flex;
    min-height: 58px;
    align-items: center;
    padding: 0 34px;
    color: #fff;
    font-size: 17px;
    font-weight: 800;
    line-height: 1.2;
}

.aluprom-header .header__menu .menu__inner ul li.current-menu-item a,
.aluprom-header .header__menu .menu__inner ul li:hover > a {
    color: #fff;
    background: rgba(255, 255, 255, .1);
}

.aluprom-header .header__menu .menu__inner ul li.menu-item-has-children:before {
    top: 21px;
    right: 13px;
    border-color: #fff transparent transparent transparent;
}

.aluprom-header .header__menu .menu__inner ul li.menu-item-has-children > a {
    padding-right: 44px;
}

.aluprom-header .header__menu .menu__inner ul li.menu-item-has-children ul.sub-menu {
    top: 58px;
    border: 1px solid #d8edf7;
    border-radius: 0 0 8px 8px;
    background: #fff;
    box-shadow: 0 18px 36px rgba(32, 47, 56, .14);
}

.aluprom-header .header__menu .menu__inner ul li.menu-item-has-children ul.sub-menu li a {
    min-height: 0;
    padding: 12px 18px;
    color: #27778b;
    font-size: 15px;
    font-weight: 800;
}

.aluprom-header .header__menu .menu__inner ul li.menu-item-has-children ul.sub-menu li a:hover {
    color: #fff;
    background: #27778b;
}

.aluprom-header__search {
    display: inline-flex;
    flex: 0 0 auto;
    width: 58px;
    height: 58px;
    align-items: center;
    justify-content: center;
    color: #fff;
}

.aluprom-header__search:hover {
    color: #fff;
    background: rgba(255, 255, 255, .1);
}

#breadcrumbs {
    padding: 16px 0 0;
}

#breadcrumbs .breadcrumbs,
.rol-product-breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
    margin: 0;
    color: #8a949a;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.45;
}

#breadcrumbs .breadcrumbs span,
#breadcrumbs .breadcrumbs span a,
#breadcrumbs .breadcrumbs span a span,
.rol-product-breadcrumbs span,
.rol-product-breadcrumbs a {
    color: #8a949a;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.45;
    text-decoration: none;
}

#breadcrumbs .breadcrumbs span a:hover,
.rol-product-breadcrumbs a:hover {
    color: #27778b;
}

.rol-product-breadcrumbs {
    margin-bottom: 28px;
}

@media all and (max-width: 1399px) {
    .aluprom-header__top {
        grid-template-columns: minmax(190px, 205px) minmax(0, 1fr) auto;
        gap: 14px;
    }

    .aluprom-header__info {
        gap: 10px;
        font-size: 12px;
    }

    .aluprom-header__logo {
        max-width: 195px;
    }

    .aluprom-header__contact-icon {
        width: 26px;
        height: 26px;
    }

    .aluprom-header__contact--address {
        min-width: 205px;
    }

    .aluprom-header__phone {
        font-size: 17px;
    }

    .aluprom-header__callback {
        min-height: 42px;
        padding: 0 12px;
        font-size: 13px;
    }

    .aluprom-header__social li a {
        min-width: 50px;
        font-size: 12px;
    }

    .aluprom-header__social li a img {
        width: 28px;
        height: 28px;
    }

    .aluprom-header .header__menu .menu__inner ul li a {
        padding-left: 24px;
        padding-right: 24px;
    }

    .aluprom-header .header__menu .menu__inner ul li.menu-item-has-children > a {
        padding-right: 38px;
    }
}

@media all and (max-width: 1199px) {
    .aluprom-header__top {
        grid-template-columns: minmax(190px, 250px) minmax(0, 1fr) auto;
    }

    .aluprom-header__contact--time,
    .aluprom-header__contact--address {
        display: none;
    }

    .aluprom-header__contact--phone {
        flex-basis: 220px;
        min-width: 220px;
    }

    .aluprom-header .header__menu .menu__inner ul li a {
        padding-left: 18px;
        padding-right: 18px;
        font-size: 16px;
    }

    .aluprom-header .header__menu .menu__inner ul li.menu-item-has-children > a {
        padding-right: 34px;
    }
}

@media all and (max-width: 991px) {
    .aluprom-header .header__wrapper {
        padding: 0;
    }

    .aluprom-header__top {
        min-height: 82px;
        grid-template-columns: minmax(0, 1fr) auto;
        padding: 10px 0;
    }

    .aluprom-header__logo {
        max-width: 255px;
    }

    .aluprom-header__info,
    .aluprom-header .header__menu {
        display: none;
    }

    .aluprom-header__burger {
        display: flex;
    }

    .aluprom-header__rule {
        display: block;
        height: 3px;
        margin: 0;
        background: #ff642f;
        opacity: 1;
    }
}

@media all and (max-width: 575px) {
    .aluprom-header__logo {
        max-width: 220px;
    }

    #breadcrumbs {
        padding-top: 14px;
    }
}

form .form__policy,
form .policy,
form .policy__text,
form .form__policy p,
form .policy__text p,
form .wpcf7-acceptance .wpcf7-list-item-label {
    color: #7b878d;
    font-size: 10px !important;
    font-weight: 500;
    line-height: 1.35 !important;
}

form .form__policy a,
form .policy__text a,
form .wpcf7-acceptance .wpcf7-list-item-label a {
    color: #27778b;
    font-size: 10px !important;
    font-weight: 700;
    line-height: 1.35 !important;
    text-decoration: underline;
    text-underline-offset: 2px;
}

/* Aluprom footer redesign */
#footer.aluprom-footer {
    margin: 0;
    padding: 64px 0;
    background: linear-gradient(180deg, #eef8fc 0%, #fff 100%);
    color: #fff;
}

.aluprom-footer__box {
    overflow: hidden;
    border-radius: 10px;
    background: #182a32;
    box-shadow: 0 30px 80px rgba(25, 42, 50, .22);
}

.aluprom-footer__top {
    display: grid;
    grid-template-columns: minmax(220px, .8fr) minmax(0, 1.05fr) minmax(280px, 360px);
    gap: 34px;
    align-items: center;
    padding: 36px 46px;
    border-bottom: 4px solid #ff642f;
    background: linear-gradient(135deg, #075f73, #047f93);
}

.aluprom-footer__brand {
    display: inline-flex;
    align-items: center;
    padding: 10px 14px;
    border-radius: 8px;
    background: #fff;
    max-width: 330px;
}

#footer .aluprom-footer__brand img {
    display: block;
    width: 100%;
    height: auto;
    max-height: 92px;
    object-fit: contain;
}

.aluprom-footer__top p {
    margin: 0;
    padding: 0;
    color: rgba(255, 255, 255, .92);
    font-size: 22px;
    font-weight: 800;
    line-height: 1.35;
}

.aluprom-footer__cta {
    display: grid;
    gap: 10px;
}

#footer .aluprom-footer__cta a {
    display: inline-flex;
    min-height: 56px;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    background: #fff;
    color: #27778b;
    font-size: 17px;
    font-weight: 900;
    text-decoration: none;
}

.aluprom-footer__cta span {
    color: rgba(255, 255, 255, .82);
    font-size: 13px;
    font-weight: 800;
    line-height: 1.35;
    text-align: center;
}

.aluprom-footer__main {
    display: grid;
    grid-template-columns: repeat(3, minmax(150px, 1fr)) minmax(310px, 1.2fr);
    gap: 30px;
    padding: 44px 46px 38px;
}

.aluprom-footer__title {
    margin-bottom: 18px;
    color: #fff;
    font-size: 18px;
    font-weight: 900;
    line-height: 1.2;
}

#footer .aluprom-footer__col ul {
    display: grid;
    gap: 11px;
    margin: 0;
    padding: 0;
    list-style: none;
}

#footer .aluprom-footer__col li {
    margin: 0;
    padding: 0;
}

#footer .aluprom-footer__col a {
    color: rgba(255, 255, 255, .74);
    font-size: 15px;
    font-weight: 700;
    line-height: 1.35;
    text-decoration: none;
}

#footer .aluprom-footer__col a:hover {
    color: #fff;
    text-decoration: underline;
    text-underline-offset: 4px;
}

.aluprom-footer__contacts {
    padding: 22px;
    border: 1px solid rgba(143, 226, 255, .18);
    border-radius: 8px;
    background: #20343d;
}

#footer .aluprom-footer__phone {
    display: block;
    margin-bottom: 10px;
    color: #fff;
    font-size: 27px;
    font-weight: 900;
    line-height: 1.08;
    text-decoration: none;
}

#footer .aluprom-footer__callback {
    display: inline-flex;
    margin-bottom: 20px;
    color: #8fe2ff;
    font-size: 15px;
    font-weight: 900;
    text-decoration: underline;
    text-underline-offset: 4px;
}

.aluprom-footer__contact {
    display: grid;
    grid-template-columns: 28px 1fr;
    gap: 10px;
    align-items: start;
    margin-top: 15px;
    color: rgba(255, 255, 255, .78);
    font-size: 15px;
    font-weight: 700;
    line-height: 1.35;
}

.aluprom-footer__contact svg {
    width: 22px;
    height: 22px;
    fill: none;
    stroke: #8fe2ff;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2.2;
}

#footer .aluprom-footer__contact a {
    color: #8fe2ff;
    font-weight: 900;
    text-decoration: underline;
    text-underline-offset: 4px;
}

.aluprom-footer__messengers {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-top: 20px;
}

#footer .aluprom-footer__messengers a {
    display: inline-flex;
    min-height: 48px;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border: 1px solid rgba(143, 226, 255, .25);
    border-radius: 8px;
    color: #fff;
    font-size: 14px;
    font-weight: 900;
    text-decoration: none;
}

#footer .aluprom-footer__messengers span {
    display: inline-flex;
    width: 22px;
    height: 22px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #fff;
    color: #27778b;
    font-size: 10px;
    font-weight: 900;
    line-height: 1;
}

.aluprom-footer__bottom {
    display: grid;
    grid-template-columns: 1fr auto auto;
    gap: 26px;
    align-items: center;
    padding: 22px 46px;
    border-top: 1px solid rgba(255, 255, 255, .1);
    color: rgba(255, 255, 255, .58);
    font-size: 13px;
    font-weight: 700;
}

.aluprom-footer__bottom p {
    margin: 0;
    padding: 0;
}

.aluprom-footer__bottom b {
    color: #ff8b62;
}

#footer .aluprom-footer__bottom a {
    color: rgba(255, 255, 255, .72);
    text-decoration: underline;
    text-underline-offset: 4px;
}

@media (max-width: 1199px) {
    .aluprom-footer__top {
        grid-template-columns: 1fr;
    }

    .aluprom-footer__cta {
        max-width: 360px;
    }

    .aluprom-footer__main {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .aluprom-footer__contacts {
        grid-column: 1 / -1;
    }
}

@media (max-width: 767px) {
    #footer.aluprom-footer {
        padding: 38px 0;
    }

    .aluprom-footer__top,
    .aluprom-footer__main,
    .aluprom-footer__bottom {
        padding-right: 22px;
        padding-left: 22px;
    }

    .aluprom-footer__top p {
        font-size: 18px;
    }

    .aluprom-footer__main,
    .aluprom-footer__bottom {
        grid-template-columns: 1fr;
    }

    .aluprom-footer__bottom {
        gap: 12px;
    }
}

@media (max-width: 575px) {
    .aluprom-footer__messengers {
        grid-template-columns: 1fr;
    }

    #footer .aluprom-footer__phone {
        font-size: 23px;
    }
}

/* Homepage polish */
.home-section,
.home-final-cta {
    scroll-margin-top: calc(var(--aluprom-nav-height, 72px) + 26px);
}

.home-hero__grid {
    align-items: start;
    row-gap: 28px;
}

.home-hero__content {
    grid-column: 1;
    grid-row: 1;
}

.home-hero__badges {
    grid-column: 1 / 2;
    grid-row: 2;
    margin-top: 0;
}

.home-calc {
    position: relative;
    z-index: 1;
    grid-column: 2;
    grid-row: 1 / span 2;
}

.home-calc__title {
    margin: 0;
    color: #1f3038;
    font-size: 30px;
    font-weight: 800;
    line-height: 1.15;
}

.home-calc h2 {
    font-size: inherit;
}

.home-category-card {
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-start;
}

.home-category-card em,
.home-card-action {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: 12px;
    color: #fff;
    font-size: 15px;
    font-style: normal;
    font-weight: 800;
    line-height: 1.2;
    opacity: .94;
}

.home-category-card em:after,
.home-card-action:after {
    content: "";
    width: 18px;
    height: 10px;
    background: currentColor;
    clip-path: polygon(0 42%, 70% 42%, 70% 0, 100% 50%, 70% 100%, 70% 58%, 0 58%);
}

.home-category-card:hover,
.home-solution-card:hover,
.home-catalog-card:hover {
    transform: translateY(-3px);
    text-decoration: none;
}

.home-category-card,
.home-solution-card,
.home-catalog-card {
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.home-category-card:hover,
.home-solution-card:hover,
.home-catalog-card:hover {
    box-shadow: 0 20px 42px rgba(32, 47, 56, .14);
}

.home-catalog-card p {
    flex: 1 1 auto;
}

.home-card-action {
    margin: auto 18px 22px;
    color: #27778b;
}

.home-card-action:after {
    width: 16px;
}

@media (max-width: 1199px) {
    .home-hero__content {
        grid-column: auto;
        grid-row: auto;
    }

    .home-calc {
        grid-column: auto;
        grid-row: auto;
    }

    .home-hero__badges {
        grid-column: auto;
        grid-row: auto;
        order: 3;
    }
}

@media (max-width: 767px) {
    .home-hero {
        padding: 32px 0 38px;
    }

    .home-hero__grid {
        gap: 24px;
    }

    .home-hero__actions {
        margin-top: 24px;
    }

    .home-hero__badges {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }

    .home-hero__badges div {
        min-height: 74px;
        padding: 12px;
    }

    .home-hero__badges dt {
        font-size: 18px;
    }

    .home-hero__badges dd {
        font-size: 12px;
    }

    .home-calc {
        padding: 18px;
    }

    .home-calc__head {
        margin-bottom: 12px;
    }

    .home-calc__title {
        font-size: 24px;
    }

    .home-calc p {
        margin-bottom: 14px;
        font-size: 14px;
    }

    .home-calc .wpcf7-form,
    .home-final-cta .wpcf7-form {
        gap: 9px;
    }

    .home-section {
        padding: 44px 0;
    }

    .home-section__head {
        margin-bottom: 22px;
    }

    .home-category-card,
    .home-category-card--large {
        min-height: 178px;
        padding: 20px;
    }
}

@media (max-width: 575px) {
    .home-hero {
        padding-top: 22px;
    }

    .home-hero h1 {
        font-size: 28px;
        line-height: 1.12;
    }

    .home-hero__lead {
        margin-top: 16px;
        font-size: 16px;
        line-height: 1.48;
    }

    .home-hero__actions .home-btn {
        min-height: 48px;
        padding: 12px 16px;
        font-size: 16px;
    }

    .home-calc__head {
        display: grid;
        justify-content: stretch;
        gap: 8px;
    }

    .home-calc__head strong {
        width: max-content;
    }

    .home-calc input,
    .home-calc select,
    .home-calc textarea,
    .home-final-cta input,
    .home-final-cta select,
    .home-final-cta textarea {
        min-height: 44px;
    }

    .home-categories__grid,
    .home-card-grid {
        gap: 14px;
    }

    .home-category-card,
    .home-category-card--large {
        min-height: 154px;
    }

    .home-category-card strong {
        font-size: 22px;
    }

    .home-category-card em {
        font-size: 13px;
    }

    .home-final-cta {
        padding: 46px 0;
    }
}

/* Homepage category bento */
.home-categories .home-section__head {
    align-items: end;
}

.home-categories .home-section__head p {
    max-width: 760px;
    margin: 14px 0 0;
    padding: 0;
    color: #64727a;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.48;
}

.home-categories__help {
    display: grid;
    justify-items: end;
    gap: 10px;
    min-width: 260px;
}

.home-categories__help span {
    color: #6b767c;
    font-size: 17px;
    font-weight: 800;
}

.home-categories__help .home-btn {
    min-height: 48px;
    padding: 0 20px;
    font-size: 15px;
}

.home-categories__help .home-link {
    margin-top: 4px;
}

.home-category-card--service {
    background: linear-gradient(135deg, rgba(39, 119, 139, .96), rgba(7, 95, 115, .98));
}

.home-category-card--service:before {
    content: "";
    position: absolute;
    inset: 16px;
    border: 1px solid rgba(255, 255, 255, .22);
    border-radius: 8px;
}

.home-category-card--service:after {
    background: radial-gradient(circle at 82% 20%, rgba(255, 100, 47, .2), transparent 34%);
}

.home-category-card__icon {
    position: absolute;
    z-index: 1;
    top: 26px;
    right: 26px;
    display: grid;
    width: 54px;
    height: 54px;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, .38);
    border-radius: 8px;
    color: #fff;
}

.home-category-card__icon svg {
    width: 30px;
    height: 30px;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2.2;
}

.home-category-card--service strong,
.home-category-card--service p,
.home-category-card--service em {
    max-width: calc(100% - 58px);
}

@media (max-width: 1199px) {
    .home-categories__grid {
        grid-template-columns: 1fr 1fr;
        grid-template-rows: auto;
    }

    .home-category-card--large {
        grid-column: 1 / -1;
    }
}

@media (max-width: 767px) {
    .home-categories .home-section__head {
        display: grid;
        gap: 18px;
    }

    .home-categories .home-section__head p {
        font-size: 16px;
    }

    .home-categories__help {
        justify-items: stretch;
        min-width: 0;
    }

    .home-categories__help span {
        font-size: 15px;
    }

    .home-categories__help .home-btn {
        width: 100%;
    }

    .home-categories__grid {
        grid-template-columns: 1fr;
        grid-template-rows: auto;
    }

    .home-category-card,
    .home-category-card--large {
        min-height: 220px;
    }
}

@media (max-width: 575px) {
    .home-category-card strong,
    .home-category-card--large strong {
        font-size: 25px;
    }

    .home-category-card p,
    .home-category-card--large p {
        font-size: 14px;
    }

    .home-category-card__badge {
        min-height: 27px;
        font-size: 11px;
    }

    .home-category-card__icon {
        width: 46px;
        height: 46px;
    }

    .home-category-card--service strong,
    .home-category-card--service p,
    .home-category-card--service em {
        max-width: 100%;
    }
}

/* Homepage final CTA redesign */
.home-final-cta {
    padding: 82px 0;
    background:
        radial-gradient(circle at 82% 14%, rgba(52, 174, 244, .12), transparent 28%),
        linear-gradient(180deg, #f4fbff 0%, #fff 100%);
}

.home-final-cta__inner {
    grid-template-columns: minmax(0, 1fr) minmax(390px, 520px);
    gap: 44px;
    align-items: start;
    padding: 52px;
    border-color: #cfeaf6;
    border-radius: 10px;
    box-shadow: 0 28px 70px rgba(32, 47, 56, .12);
}

.home-final-cta__content {
    display: grid;
    align-content: start;
}

.home-final-cta__content p {
    max-width: 860px;
    margin: 24px 0 0;
    color: #5f6f78;
    font-size: 21px;
    font-weight: 700;
    line-height: 1.52;
}

.home-final-cta__chips {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 28px;
}

.home-final-cta__chips span {
    display: inline-flex;
    min-height: 42px;
    align-items: center;
    gap: 9px;
    padding: 0 15px;
    border: 1px solid #d7edf7;
    border-radius: 999px;
    background: #f7fcff;
    color: #27778b;
    font-size: 15px;
    font-weight: 900;
}

.home-final-cta__chips svg,
.home-final-cta__steps svg {
    width: 19px;
    height: 19px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2.4;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.home-final-cta__steps {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    margin-top: 36px;
}

.home-final-cta__steps article {
    min-height: 132px;
    padding: 20px;
    border: 1px solid #d7edf7;
    border-radius: 8px;
    background: linear-gradient(180deg, #f8fdff, #fff);
}

.home-final-cta__steps b {
    display: inline-flex;
    width: 34px;
    height: 34px;
    align-items: center;
    justify-content: center;
    margin-bottom: 12px;
    border-radius: 8px;
    background: #fff1ea;
    color: #ff642f;
    font-size: 16px;
    font-weight: 900;
}

.home-final-cta__steps strong {
    display: block;
    color: #1f3038;
    font-size: 18px;
    font-weight: 900;
    line-height: 1.25;
}

.home-final-cta__steps span {
    display: block;
    margin-top: 8px;
    color: #68767d;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.35;
}

.home-final-cta__form {
    position: relative;
    overflow: hidden;
    align-self: start;
    padding: 34px;
    border: 1px solid #d7edf7;
    border-radius: 10px;
    background: linear-gradient(180deg, #f3fbff 0%, #fff 100%);
    box-shadow: none;
}

.home-final-cta__form:before {
    content: "";
    position: absolute;
    inset: 0 0 auto;
    height: 7px;
    background: linear-gradient(90deg, #ff642f, #38b8fb, #27778b);
}

.home-final-cta__form-head {
    display: flex;
    justify-content: space-between;
    gap: 18px;
    align-items: flex-start;
    margin-bottom: 24px;
}

.home-final-cta__form-head span {
    display: inline-flex;
    min-height: 30px;
    align-items: center;
    margin-bottom: 10px;
    padding: 0 12px;
    border-radius: 999px;
    background: #fff1ea;
    color: #e45d2d;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}

.home-final-cta__form-head strong {
    display: block;
    color: #1f3038;
    font-size: 30px;
    font-weight: 900;
    line-height: 1.12;
}

.home-final-cta__form-head em {
    min-width: 86px;
    padding: 10px;
    border: 1px solid #d7edf7;
    border-radius: 8px;
    background: #fff;
    color: #27778b;
    font-size: 12px;
    font-style: normal;
    font-weight: 900;
    line-height: 1.25;
    text-align: center;
}

.home-final-cta__form .wpcf7-form {
    gap: 12px;
}

.home-final-cta__form .form__item {
    margin: 0;
}

.home-final-cta__form .form__title {
    margin-bottom: 7px;
    color: #53636b;
    font-size: 13px;
    font-weight: 900;
}

.home-final-cta__form input,
.home-final-cta__form select,
.home-final-cta__form textarea {
    min-height: 54px;
    border-color: #cce9f6;
    background: #fff;
    font-weight: 700;
}

.home-final-cta__form input[type="submit"],
.home-final-cta__form .btn-accent {
    min-height: 58px;
    margin-top: 4px;
    box-shadow: 0 16px 28px rgba(39, 119, 139, .24);
    font-size: 20px;
}

.home-final-cta__form .wpcf7-acceptance {
    display: block;
}

.home-final-cta__form .wpcf7-list-item {
    margin: 0;
}

.home-final-cta__form .wpcf7-acceptance input {
    width: 14px;
    min-height: 14px;
    height: 14px;
    margin: 0 6px 0 0;
    vertical-align: -2px;
}

.home-final-cta__form .policy {
    display: flex;
    gap: 9px;
    align-items: flex-start;
    margin: 0;
}

.home-final-cta__form .policy .checkbox {
    flex: 0 0 auto;
    padding-top: 1px;
}

.home-final-cta__form .policy__text p {
    margin: 0;
    padding: 0;
}

.home-final-cta__form .wpcf7-list-item-label {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
}

.home-final-cta__messengers {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin-top: 18px;
}

.home-final-cta__messengers a {
    display: inline-flex;
    min-height: 50px;
    align-items: center;
    justify-content: center;
    gap: 9px;
    border: 1px solid #cce9f6;
    border-radius: 8px;
    background: #fff;
    color: #27778b;
    font-size: 15px;
    font-weight: 900;
    text-decoration: none;
}

.home-final-cta__messengers img {
    width: 22px;
    height: 22px;
    object-fit: contain;
}

@media (max-width: 1199px) {
    .home-final-cta__inner {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767px) {
    .home-final-cta {
        padding: 50px 0;
    }

    .home-final-cta__inner {
        padding: 24px;
    }

    .home-final-cta__content p {
        font-size: 17px;
    }

    .home-final-cta__steps {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .home-final-cta__steps article {
        min-height: auto;
    }

    .home-final-cta__form {
        padding: 24px;
    }

    .home-final-cta__form-head {
        display: grid;
    }

    .home-final-cta__form-head strong {
        font-size: 26px;
    }
}

@media (max-width: 575px) {
    .home-final-cta__inner {
        padding: 18px;
    }

    .home-final-cta__chips span {
        width: 100%;
        justify-content: center;
    }

    .home-final-cta__messengers {
        grid-template-columns: 1fr;
    }
}

/* Contextual calc modal */
.modal-calc-mount {
    position: relative;
    max-width: 780px;
    max-height: calc(100vh - 48px);
    overflow: visible;
    overflow-y: auto;
    padding: 0;
    border: 1px solid #c8e8f2;
    border-radius: 10px;
    background: #fff;
    color: #132a33;
    box-shadow: 0 34px 90px rgba(7, 72, 93, .24);
}

.modal-calc-mount:before {
    content: "";
    display: block;
    height: 8px;
    border-radius: 10px 10px 0 0;
    background: linear-gradient(90deg, #ff6336 0%, #38b8f3 46%, #006a78 100%);
}

.modal-calc-mount__close {
    position: absolute;
    z-index: 2;
    top: 18px;
    right: 18px;
    width: 42px;
    height: 42px;
    border: 1px solid #c8e8f2;
    border-radius: 50%;
    background: #fff;
    color: #087988;
    cursor: pointer;
    font-size: 25px;
    line-height: 40px;
    text-align: center;
}

.modal-calc-mount__inner {
    padding: 40px 44px 34px;
}

.modal-calc-mount__head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 108px;
    gap: 22px;
    align-items: start;
}

.modal-calc-mount__pill {
    display: inline-flex;
    width: max-content;
    align-items: center;
    padding: 10px 17px;
    border-radius: 999px;
    background: #fff0e9;
    color: #ff6336;
    font-size: 15px;
    font-weight: 900;
    text-transform: uppercase;
}

.modal-calc-mount__title {
    max-width: 560px;
    margin-top: 15px;
    color: #132a33;
    font-size: 42px;
    font-weight: 900;
    line-height: 1.08;
}

.modal-calc-mount__timer {
    display: flex;
    min-height: 86px;
    align-items: center;
    justify-content: center;
    padding: 14px 12px;
    border: 1px solid #c8e8f2;
    border-radius: 8px;
    background: #f8fdff;
    color: #087988;
    font-size: 16px;
    font-weight: 900;
    line-height: 1.15;
    text-align: center;
}

.modal-calc-mount__lead {
    max-width: 650px;
    margin: 22px 0;
    color: #516873;
    font-size: 18px;
    line-height: 1.45;
}

.modal-calc-mount__context {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 14px;
    align-items: center;
    margin-bottom: 20px;
    padding: 15px 16px;
    border: 1px solid #c8e8f2;
    border-radius: 8px;
    background: #f3fbff;
    color: #3f5d66;
    font-size: 15px;
    line-height: 1.35;
}

.modal-calc-mount__context strong,
.modal-calc-mount__context em {
    display: block;
}

.modal-calc-mount__context strong {
    color: #132a33;
    font-weight: 900;
}

.modal-calc-mount__context em {
    margin-top: 2px;
    font-style: normal;
}

.modal-calc-mount__context-icon {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border: 2px solid #087988;
    border-radius: 8px;
    color: #087988;
    font-size: 20px;
    font-weight: 900;
}

.modal-calc-mount__benefits {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 18px;
}

.modal-calc-mount__benefits div {
    min-height: 74px;
    padding: 13px 14px;
    border: 1px solid #c8e8f2;
    border-radius: 8px;
    background: #fbfeff;
}

.modal-calc-mount__benefits span {
    display: inline-flex;
    min-width: 24px;
    margin-right: 8px;
    color: #087988;
    font-size: 19px;
    font-weight: 900;
}

.modal-calc-mount__benefits strong {
    color: #087988;
    font-size: 17px;
    font-weight: 900;
}

.modal-calc-mount__benefits small {
    display: block;
    margin-top: 5px;
    color: #74858c;
    font-size: 13px;
    line-height: 1.25;
}

.modal-calc-mount form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.modal-calc-mount form .hidden-fields-container {
    display: none;
}

.modal-calc-mount__fields {
    display: grid;
    grid-column: 1 / -1;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.modal-calc-mount__field {
    display: grid;
    gap: 7px;
    margin: 0;
    color: #53636b;
    font-size: 13px;
    font-weight: 900;
}

.modal-calc-mount form .modal-calc-mount__field input,
.modal-calc-mount form .modal-calc-mount__field select,
.modal-calc-mount form .form__item input,
.modal-calc-mount form .form__item textarea {
    width: 100%;
    min-height: 60px;
    height: 60px;
    padding: 0 16px;
    border: 1px solid #c8e8f2;
    border-radius: 8px;
    background: #fbfeff;
    color: #132a33;
    font-size: 18px;
    font-weight: 800;
}

.modal-calc-mount form .modal-calc-mount__field select {
    appearance: auto;
}

.modal-calc-mount form .modal-calc-mount__field input::placeholder,
.modal-calc-mount form .form__item input::placeholder {
    color: #697b84;
    opacity: 1;
}

.modal-calc-mount form .form__item {
    margin: 0;
}

.modal-calc-mount form > .form__item:nth-of-type(4) {
    display: none;
}

.modal-calc-mount form .form__submit {
    grid-column: 1 / -1;
    margin: 8px 0 0;
}

.modal-calc-mount form .form__submit .btn-accent,
.modal-calc-mount form input[type="submit"] {
    width: 100%;
    min-height: 62px;
    border-radius: 8px;
    background: linear-gradient(90deg, #36b7f1, #087988);
    box-shadow: 0 16px 28px rgba(18, 132, 157, .25);
    color: #fff;
    font-size: 23px;
    font-weight: 900;
}

.modal-calc-mount__hint {
    grid-column: 1 / -1;
    margin: -3px 0 0;
    color: #74858c;
    font-size: 13px;
}

.modal-calc-mount form .form__policy p {
    color: #74868d;
    font-size: 10px;
    line-height: 1.35;
}

.modal-calc-mount form .form__policy,
.modal-calc-mount form .wpcf7-response-output {
    grid-column: 1 / -1;
}

.modal-calc-mount form .form__policy p a {
    color: #087988;
}

@media (max-width: 767px) {
    .modal-calc-mount {
        max-width: calc(100vw - 24px);
        border-radius: 10px;
    }

    .modal-calc-mount__inner {
        padding: 30px 22px;
    }

    .modal-calc-mount__head,
    .modal-calc-mount__benefits,
    .modal-calc-mount__fields {
        grid-template-columns: 1fr;
    }

    .modal-calc-mount__timer {
        width: 102px;
        min-height: 70px;
    }

    .modal-calc-mount__title {
        font-size: 32px;
    }
}

/* Contextual product question modal */
.modal-product-question {
    position: relative;
    max-width: 720px;
    max-height: calc(100vh - 48px);
    overflow: visible;
    overflow-y: auto;
    padding: 0;
    border: 1px solid #c8e8f2;
    border-radius: 10px;
    background: #fff;
    color: #132a33;
    box-shadow: 0 34px 90px rgba(7, 72, 93, .24);
}

.modal-product-question:before {
    content: "";
    display: block;
    height: 8px;
    border-radius: 10px 10px 0 0;
    background: linear-gradient(90deg, #ff6336 0%, #38b8f3 46%, #006a78 100%);
}

.modal-product-question__close {
    position: absolute;
    z-index: 2;
    top: 18px;
    right: 18px;
    width: 42px;
    height: 42px;
    border: 1px solid #c8e8f2;
    border-radius: 50%;
    background: #fff;
    color: #087988;
    cursor: pointer;
    font-size: 25px;
    line-height: 40px;
    text-align: center;
}

.modal-product-question__inner {
    padding: 38px 40px 32px;
}

.modal-product-question__head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 104px;
    gap: 22px;
    align-items: start;
}

.modal-product-question__pill {
    display: inline-flex;
    width: max-content;
    align-items: center;
    padding: 10px 17px;
    border-radius: 999px;
    background: #fff0e9;
    color: #ff6336;
    font-size: 15px;
    font-weight: 900;
    text-transform: uppercase;
}

.modal-product-question__title {
    margin-top: 15px;
    color: #132a33;
    font-size: 38px;
    font-weight: 900;
    line-height: 1.08;
}

.modal-product-question__timer {
    display: flex;
    min-height: 82px;
    align-items: center;
    justify-content: center;
    padding: 14px 12px;
    border: 1px solid #c8e8f2;
    border-radius: 8px;
    background: #f8fdff;
    color: #087988;
    font-size: 16px;
    font-weight: 900;
    line-height: 1.15;
    text-align: center;
}

.modal-product-question__lead {
    margin: 20px 0;
    color: #516873;
    font-size: 18px;
    line-height: 1.45;
}

.modal-product-question__context {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 14px;
    align-items: center;
    margin-bottom: 18px;
    padding: 15px 16px;
    border: 1px solid #c8e8f2;
    border-radius: 8px;
    background: #f3fbff;
    color: #3f5d66;
    font-size: 15px;
    line-height: 1.35;
}

.modal-product-question__context strong,
.modal-product-question__context em {
    display: block;
}

.modal-product-question__context strong {
    color: #132a33;
    font-weight: 900;
}

.modal-product-question__context em {
    margin-top: 2px;
    font-style: normal;
}

.modal-product-question__context-icon {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border: 2px solid #087988;
    border-radius: 8px;
    color: #087988;
    font-size: 20px;
    font-weight: 900;
}

.modal-product-question form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.modal-product-question form .hidden-fields-container {
    display: none;
}

.modal-product-question__fields {
    display: grid;
    grid-column: 1 / -1;
    gap: 12px;
}

.modal-product-question__topics {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.modal-product-question__topics button {
    min-height: 42px;
    padding: 0 14px;
    border: 1px solid #c8e8f2;
    border-radius: 999px;
    background: #fff;
    color: #087988;
    cursor: pointer;
    font-size: 15px;
    font-weight: 900;
}

.modal-product-question__topics button.active {
    border-color: #087988;
    background: #087988;
    color: #fff;
}

.modal-product-question__field {
    display: grid;
    gap: 7px;
    margin: 0;
    color: #53636b;
    font-size: 13px;
    font-weight: 900;
}

.modal-product-question__field--full {
    grid-column: 1 / -1;
}

.modal-product-question form .modal-product-question__field textarea,
.modal-product-question form .form__item input,
.modal-product-question form .form__item textarea {
    width: 100%;
    min-height: 60px;
    padding: 0 16px;
    border: 1px solid #c8e8f2;
    border-radius: 8px;
    background: #fbfeff;
    color: #132a33;
    font-size: 18px;
    font-weight: 800;
}

.modal-product-question form .modal-product-question__field textarea {
    height: 118px;
    padding-top: 16px;
    line-height: 1.35;
    resize: vertical;
}

.modal-product-question form .modal-product-question__field textarea::placeholder,
.modal-product-question form .form__item input::placeholder {
    color: #697b84;
    opacity: 1;
}

.modal-product-question form .form__item {
    margin: 0;
}

.modal-product-question form .form__submit {
    grid-column: 1 / -1;
    margin: 8px 0 0;
}

.modal-product-question form .form__submit .btn-accent,
.modal-product-question form input[type="submit"] {
    width: 100%;
    min-height: 62px;
    border-radius: 8px;
    background: linear-gradient(90deg, #36b7f1, #087988);
    box-shadow: 0 16px 28px rgba(18, 132, 157, .25);
    color: #fff;
    font-size: 23px;
    font-weight: 900;
}

.modal-product-question form .form__policy,
.modal-product-question form .wpcf7-response-output {
    grid-column: 1 / -1;
}

.modal-product-question form .form__policy p {
    color: #74868d;
    font-size: 10px;
    line-height: 1.35;
}

.modal-product-question form .form__policy p a {
    color: #087988;
}

@media (max-width: 767px) {
    .modal-product-question {
        max-width: calc(100vw - 24px);
        border-radius: 10px;
    }

    .modal-product-question__inner {
        padding: 30px 22px;
    }

    .modal-product-question__head,
    .modal-product-question form {
        grid-template-columns: 1fr;
    }

    .modal-product-question__timer {
        width: 104px;
        min-height: 70px;
    }

    .modal-product-question__title {
        font-size: 32px;
    }
}

/* Contextual product quote modal */
.modal-product-quote {
    position: relative;
    max-width: 760px;
    max-height: calc(100vh - 48px);
    overflow: visible;
    overflow-y: auto;
    padding: 0;
    border: 1px solid #c8e8f2;
    border-radius: 10px;
    background: #fff;
    color: #132a33;
    box-shadow: 0 34px 90px rgba(7, 72, 93, .24);
}

.modal-product-quote:before {
    content: "";
    display: block;
    height: 8px;
    border-radius: 10px 10px 0 0;
    background: linear-gradient(90deg, #ff6336 0%, #38b8f3 46%, #006a78 100%);
}

.modal-product-quote__close {
    position: absolute;
    z-index: 2;
    top: 18px;
    right: 18px;
    width: 42px;
    height: 42px;
    border: 1px solid #c8e8f2;
    border-radius: 50%;
    background: #fff;
    color: #087988;
    cursor: pointer;
    font-size: 25px;
    line-height: 40px;
    text-align: center;
}

.modal-product-quote__inner {
    padding: 38px 40px 32px;
}

.modal-product-quote__head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 104px;
    gap: 22px;
    align-items: start;
}

.modal-product-quote__pill {
    display: inline-flex;
    width: max-content;
    align-items: center;
    padding: 10px 17px;
    border-radius: 999px;
    background: #fff0e9;
    color: #ff6336;
    font-size: 15px;
    font-weight: 900;
    text-transform: uppercase;
}

.modal-product-quote__title {
    max-width: 520px;
    margin-top: 15px;
    color: #132a33;
    font-size: 38px;
    font-weight: 900;
    line-height: 1.08;
}

.modal-product-quote__timer {
    display: flex;
    min-height: 82px;
    align-items: center;
    justify-content: center;
    padding: 14px 12px;
    border: 1px solid #c8e8f2;
    border-radius: 8px;
    background: #f8fdff;
    color: #087988;
    font-size: 16px;
    font-weight: 900;
    line-height: 1.15;
    text-align: center;
}

.modal-product-quote__lead {
    margin: 20px 0;
    color: #516873;
    font-size: 18px;
    line-height: 1.45;
}

.modal-product-quote__context {
    display: grid;
    grid-template-columns: 50px minmax(0, 1fr);
    gap: 14px;
    align-items: center;
    margin-bottom: 18px;
    padding: 15px 16px;
    border: 1px solid #c8e8f2;
    border-radius: 8px;
    background: #f3fbff;
    color: #3f5d66;
    font-size: 15px;
    line-height: 1.35;
}

.modal-product-quote__context strong,
.modal-product-quote__context em {
    display: block;
}

.modal-product-quote__context strong {
    color: #132a33;
    font-weight: 900;
}

.modal-product-quote__context em {
    margin-top: 2px;
    font-style: normal;
}

.modal-product-quote__context-icon {
    display: grid;
    width: 50px;
    height: 42px;
    place-items: center;
    border: 2px solid #087988;
    border-radius: 8px;
    color: #087988;
    font-size: 14px;
    font-weight: 900;
}

.modal-product-quote form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.modal-product-quote form .hidden-fields-container {
    display: none;
}

.modal-product-quote__fields {
    display: grid;
    grid-column: 1 / -1;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.modal-product-quote__field {
    display: grid;
    gap: 7px;
    margin: 0;
    color: #53636b;
    font-size: 13px;
    font-weight: 900;
}

.modal-product-quote__field--full {
    grid-column: 1 / -1;
}

.modal-product-quote form .modal-product-quote__field input,
.modal-product-quote form .modal-product-quote__field select,
.modal-product-quote form .modal-product-quote__field textarea,
.modal-product-quote form .form__item input,
.modal-product-quote form .form__item textarea {
    width: 100%;
    min-height: 58px;
    padding: 0 16px;
    border: 1px solid #c8e8f2;
    border-radius: 8px;
    background: #fbfeff;
    color: #132a33;
    font-size: 18px;
    font-weight: 800;
}

.modal-product-quote form .modal-product-quote__field textarea {
    height: 92px;
    padding-top: 15px;
    line-height: 1.35;
    resize: vertical;
}

.modal-product-quote form .modal-product-quote__field input::placeholder,
.modal-product-quote form .modal-product-quote__field textarea::placeholder,
.modal-product-quote form .form__item input::placeholder {
    color: #697b84;
    opacity: 1;
}

.modal-product-quote form .form__item {
    margin: 0;
}

.modal-product-quote form .form__submit {
    grid-column: 1 / -1;
    margin: 8px 0 0;
}

.modal-product-quote form .form__submit .btn-accent,
.modal-product-quote form input[type="submit"] {
    width: 100%;
    min-height: 62px;
    border-radius: 8px;
    background: linear-gradient(90deg, #36b7f1, #087988);
    box-shadow: 0 16px 28px rgba(18, 132, 157, .25);
    color: #fff;
    font-size: 23px;
    font-weight: 900;
}

.modal-product-quote form .form__policy,
.modal-product-quote form .wpcf7-response-output {
    grid-column: 1 / -1;
}

.modal-product-quote form .form__policy p {
    color: #74868d;
    font-size: 10px;
    line-height: 1.35;
}

.modal-product-quote form .form__policy p a {
    color: #087988;
}

@media (max-width: 767px) {
    .modal-product-quote {
        max-width: calc(100vw - 24px);
        border-radius: 10px;
    }

    .modal-product-quote__inner {
        padding: 30px 22px;
    }

    .modal-product-quote__head,
    .modal-product-quote form,
    .modal-product-quote__fields {
        grid-template-columns: 1fr;
    }

    .modal-product-quote__timer {
        width: 104px;
        min-height: 70px;
    }

    .modal-product-quote__title {
        font-size: 31px;
    }
}

/* Contextual product selection modal */
.modal-product-selection {
    position: relative;
    max-width: 760px;
    max-height: calc(100vh - 48px);
    overflow: visible;
    overflow-y: auto;
    padding: 0;
    border: 1px solid #c8e8f2;
    border-radius: 10px;
    background: #fff;
    color: #132a33;
    box-shadow: 0 34px 90px rgba(7, 72, 93, .24);
}

.modal-product-selection:before {
    content: "";
    display: block;
    height: 8px;
    border-radius: 10px 10px 0 0;
    background: linear-gradient(90deg, #ff6336 0%, #38b8f3 46%, #006a78 100%);
}

.modal-product-selection__close {
    position: absolute;
    z-index: 2;
    top: 18px;
    right: 18px;
    width: 42px;
    height: 42px;
    border: 1px solid #c8e8f2;
    border-radius: 50%;
    background: #fff;
    color: #087988;
    cursor: pointer;
    font-size: 25px;
    line-height: 40px;
    text-align: center;
}

.modal-product-selection__inner {
    padding: 38px 40px 32px;
}

.modal-product-selection__head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 112px;
    gap: 22px;
    align-items: start;
}

.modal-product-selection__pill {
    display: inline-flex;
    width: max-content;
    align-items: center;
    padding: 10px 17px;
    border-radius: 999px;
    background: #fff0e9;
    color: #ff6336;
    font-size: 15px;
    font-weight: 900;
    text-transform: uppercase;
}

.modal-product-selection__title {
    max-width: 520px;
    margin-top: 15px;
    color: #132a33;
    font-size: 38px;
    font-weight: 900;
    line-height: 1.08;
}

.modal-product-selection__timer {
    display: flex;
    min-height: 82px;
    align-items: center;
    justify-content: center;
    padding: 14px 12px;
    border: 1px solid #c8e8f2;
    border-radius: 8px;
    background: #f8fdff;
    color: #087988;
    font-size: 15px;
    font-weight: 900;
    line-height: 1.15;
    text-align: center;
}

.modal-product-selection__lead {
    margin: 20px 0;
    color: #516873;
    font-size: 18px;
    line-height: 1.45;
}

.modal-product-selection__context {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 14px;
    align-items: center;
    margin-bottom: 18px;
    padding: 15px 16px;
    border: 1px solid #c8e8f2;
    border-radius: 8px;
    background: #f3fbff;
    color: #3f5d66;
    font-size: 15px;
    line-height: 1.35;
}

.modal-product-selection__context strong,
.modal-product-selection__context em {
    display: block;
}

.modal-product-selection__context strong {
    color: #132a33;
    font-weight: 900;
}

.modal-product-selection__context em {
    margin-top: 2px;
    font-style: normal;
}

.modal-product-selection__context-icon {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border: 2px solid #087988;
    border-radius: 8px;
    color: #087988;
    font-size: 20px;
    font-weight: 900;
}

.modal-product-selection form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.modal-product-selection form .hidden-fields-container {
    display: none;
}

.modal-product-selection__fields {
    display: grid;
    grid-column: 1 / -1;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.modal-product-selection__places {
    display: grid;
    grid-column: 1 / -1;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
}

.modal-product-selection__places button {
    min-height: 112px;
    padding: 14px;
    border: 1px solid #c8e8f2;
    border-radius: 8px;
    background: #fbfeff;
    color: #132a33;
    cursor: pointer;
    text-align: left;
}

.modal-product-selection__places button.active {
    border-color: #087988;
    background: #f0fbff;
    box-shadow: inset 0 0 0 1px #087988;
}

.modal-product-selection__places span {
    display: grid;
    width: 34px;
    height: 34px;
    place-items: center;
    margin-bottom: 10px;
    border: 2px solid #087988;
    border-radius: 8px;
    color: #087988;
    font-size: 14px;
    font-weight: 900;
}

.modal-product-selection__places strong {
    display: block;
    font-size: 16px;
    font-weight: 900;
}

.modal-product-selection__places small {
    display: block;
    margin-top: 4px;
    color: #74858c;
    font-size: 12px;
    line-height: 1.25;
}

.modal-product-selection__field {
    display: grid;
    gap: 7px;
    margin: 0;
    color: #53636b;
    font-size: 13px;
    font-weight: 900;
}

.modal-product-selection__field--full {
    grid-column: 1 / -1;
}

.modal-product-selection form .modal-product-selection__field select,
.modal-product-selection form .modal-product-selection__field textarea,
.modal-product-selection form .form__item input,
.modal-product-selection form .form__item textarea {
    width: 100%;
    min-height: 58px;
    padding: 0 16px;
    border: 1px solid #c8e8f2;
    border-radius: 8px;
    background: #fbfeff;
    color: #132a33;
    font-size: 18px;
    font-weight: 800;
}

.modal-product-selection form .modal-product-selection__field textarea {
    height: 100px;
    padding-top: 15px;
    line-height: 1.35;
    resize: vertical;
}

.modal-product-selection form .modal-product-selection__field textarea::placeholder,
.modal-product-selection form .form__item input::placeholder {
    color: #697b84;
    opacity: 1;
}

.modal-product-selection form .form__item {
    margin: 0;
}

.modal-product-selection form .form__submit {
    grid-column: 1 / -1;
    margin: 8px 0 0;
}

.modal-product-selection form .form__submit .btn-accent,
.modal-product-selection form input[type="submit"] {
    width: 100%;
    min-height: 62px;
    border-radius: 8px;
    background: linear-gradient(90deg, #36b7f1, #087988);
    box-shadow: 0 16px 28px rgba(18, 132, 157, .25);
    color: #fff;
    font-size: 23px;
    font-weight: 900;
}

.modal-product-selection form .form__policy,
.modal-product-selection form .wpcf7-response-output {
    grid-column: 1 / -1;
}

.modal-product-selection form .form__policy p {
    color: #74868d;
    font-size: 10px;
    line-height: 1.35;
}

.modal-product-selection form .form__policy p a {
    color: #087988;
}

@media (max-width: 767px) {
    .modal-product-selection {
        max-width: calc(100vw - 24px);
        border-radius: 10px;
    }

    .modal-product-selection__inner {
        padding: 30px 22px;
    }

    .modal-product-selection__head,
    .modal-product-selection form,
    .modal-product-selection__fields {
        grid-template-columns: 1fr;
    }

    .modal-product-selection__places {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .modal-product-selection__timer {
        width: 112px;
        min-height: 70px;
    }

    .modal-product-selection__title {
        font-size: 31px;
    }
}

/* Contextual callback modal */
.modal-callback-contact {
    position: relative;
    max-width: 680px;
    max-height: calc(100vh - 48px);
    overflow: visible;
    overflow-y: auto;
    padding: 0;
    border: 1px solid #c8e8f2;
    border-radius: 10px;
    background: #fff;
    color: #132a33;
    box-shadow: 0 34px 90px rgba(7, 72, 93, .24);
}

.modal-callback-contact:before {
    content: "";
    display: block;
    height: 8px;
    border-radius: 10px 10px 0 0;
    background: linear-gradient(90deg, #ff6336 0%, #38b8f3 46%, #006a78 100%);
}

.modal-callback-contact__close {
    position: absolute;
    z-index: 2;
    top: 18px;
    right: 18px;
    width: 42px;
    height: 42px;
    border: 1px solid #c8e8f2;
    border-radius: 50%;
    background: #fff;
    color: #087988;
    cursor: pointer;
    font-size: 25px;
    line-height: 40px;
    text-align: center;
}

.modal-callback-contact__inner {
    padding: 38px 40px 32px;
}

.modal-callback-contact__head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 104px;
    gap: 22px;
    align-items: start;
}

.modal-callback-contact__pill {
    display: inline-flex;
    width: max-content;
    align-items: center;
    padding: 10px 17px;
    border-radius: 999px;
    background: #fff0e9;
    color: #ff6336;
    font-size: 15px;
    font-weight: 900;
    text-transform: uppercase;
}

.modal-callback-contact__title {
    margin-top: 15px;
    color: #132a33;
    font-size: 38px;
    font-weight: 900;
    line-height: 1.08;
}

.modal-callback-contact__timer {
    display: flex;
    min-height: 82px;
    align-items: center;
    justify-content: center;
    padding: 14px 12px;
    border: 1px solid #c8e8f2;
    border-radius: 8px;
    background: #f8fdff;
    color: #087988;
    font-size: 16px;
    font-weight: 900;
    line-height: 1.15;
    text-align: center;
}

.modal-callback-contact__lead {
    margin: 20px 0;
    color: #516873;
    font-size: 18px;
    line-height: 1.45;
}

.modal-callback-contact form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.modal-callback-contact form .hidden-fields-container {
    display: none;
}

.modal-callback-contact__fields {
    display: grid;
    grid-column: 1 / -1;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.modal-callback-contact__field {
    display: grid;
    gap: 7px;
    margin: 0;
    color: #53636b;
    font-size: 13px;
    font-weight: 900;
}

.modal-callback-contact form .modal-callback-contact__field select,
.modal-callback-contact form .modal-callback-contact__field input,
.modal-callback-contact form .form__item input {
    width: 100%;
    min-height: 58px;
    padding: 0 16px;
    border: 1px solid #c8e8f2;
    border-radius: 8px;
    background: #fbfeff;
    color: #132a33;
    font-size: 18px;
    font-weight: 800;
}

.modal-callback-contact form .modal-callback-contact__field input::placeholder,
.modal-callback-contact form .form__item input::placeholder {
    color: #697b84;
    opacity: 1;
}

.modal-callback-contact form .form__item {
    margin: 0;
}

.modal-callback-contact form .form__submit {
    grid-column: 1 / -1;
    margin: 8px 0 0;
}

.modal-callback-contact form .form__submit .btn-accent,
.modal-callback-contact form input[type="submit"] {
    width: 100%;
    min-height: 62px;
    border-radius: 8px;
    background: linear-gradient(90deg, #36b7f1, #087988);
    box-shadow: 0 16px 28px rgba(18, 132, 157, .25);
    color: #fff;
    font-size: 23px;
    font-weight: 900;
}

.modal-callback-contact form .form__policy,
.modal-callback-contact form .wpcf7-response-output {
    grid-column: 1 / -1;
}

.modal-callback-contact form .form__policy p {
    color: #74868d;
    font-size: 10px;
    line-height: 1.35;
}

.modal-callback-contact form .form__policy p a {
    color: #087988;
}

@media (max-width: 767px) {
    .modal-callback-contact {
        max-width: calc(100vw - 24px);
        border-radius: 10px;
    }

    .modal-callback-contact__inner {
        padding: 30px 22px;
    }

    .modal-callback-contact__head,
    .modal-callback-contact form,
    .modal-callback-contact__fields {
        grid-template-columns: 1fr;
    }

    .modal-callback-contact__timer {
        width: 104px;
        min-height: 70px;
    }

    .modal-callback-contact__title {
        font-size: 31px;
    }
}
