@charset "utf-8";
/* Переменные */
:root {
  /* 009786 */
  --gabriel-main-color: #555;
  /* 00322d */
  --gabriel-main-color-darkest: #111;
  /* c2fff8 */
  --gabriel-main-color-lightest: #efefef;
  /* 00a898 */
  --gabriel-main-color-border: var(--gabriel-main-color-darkest);
  /* rgba (0, 168, 152, .8) */
  --gabriel-main-color-with-opacity: rgba(0, 0, 0, 0.75);
  /* f11 */
  --gabriel-main-color-with-dedicated: #222;
  /* ca0000 */
  --gabriel-main-color-with-dedicated-darkest: #000;
}

/* Глобальные стили */

html {
  background: #fbfbfb url(../images/html.png) repeat center top;
}

html.noscroll {
  overflow: hidden;
}

body {
  float: left;
  position: absolute;
  display: block;
  width: 100%;
  min-height: 100%;
  /*background: url(../images/body.png) repeat-y top center;*/
  background: none;
  margin: auto;
  padding: 0;
  font-family: "PT Sans", Tahoma, Arial, sans-serif;
  font-weight: normal;
  font-size: 16px;
  color: #333;
  line-height: 20px;
  text-shadow: 0 1px 0 #fff;
  text-align: left;
  overflow-x: hidden;
}

body.loading {
  overflow: hidden;
  cursor: wait;
}

body.loading:before {
  content: "";
  position: fixed;
  display: block;
  width: 100%;
  height: 100%;
  z-index: 9999;
  background: rgba(255, 255, 255, 0.9) url(../images/preloader.gif) no-repeat
    center center;
}

body.loading:after {
}

body * {
  line-height: 18px;
}

/* *::selection {
	color: #eee;
	background-color: #666;
}
 */

/* Easing animation */

a {
  transition: all 500ms ease;
}

/* Links */

a {
  color: var(--gabriel-main-color-border);
  text-decoration: underline;
}

a:active,
a:hover {
  color: var(--gabriel-main-color-darkest);
}

/* Head & pharagraph */

h1,
h2,
h3,
h4,
h5,
.b-header-1,
.b-header-2,
.b-header-3,
.b-header-4,
.b-header-5 {
  line-height: 32px;
  margin: 0 0 10px;
  font-family: "PT Sans Narrow";
  font-weight: bold;
  color: var(--gabriel-main-color-border);
}

h1,
.b-header-1 {
  font-size: 24px;
}

h2,
.b-header-2 {
  font-size: 22px;
}

h3,
.b-header-3 {
  font-size: 20px;
}

h4,
.b-header-4 {
  font-size: 18px;
}

h5,
.b-header-5 {
  font-size: 16px;
}

p:not([class]),
p.hidden {
  margin: 0 0 15px;
}

blockquote {
  padding: 5px 10px;
  margin: 0 0 15px;
  border-left: 3px solid #ccc;
  background: rgba(255, 255, 255, 0.75);
}

ol:not([class]),
ul:not([class]),
ol.hidden,
ul.hidden {
  margin: 0 0 10px 20px;
}

ol:not([class]) li,
ul:not([class]) li,
ol.hidden li,
ul.hidden li {
  margin: 0 0 7px;
}

article ul:not([class]) > li,
aside ul:not([class]) > li,
article ul.hidden > li,
aside ul.hidden > li {
  list-style-position: inside;
  margin-bottom: 7px;
  /*list-style: square;*/
}

article ul + ul:not([class]) > li,
aside ul + ul:not([class]) > li,
article ul + ul.hidden > li,
aside ul + ul.hidden > li {
  list-style-image: url(../images/marker.png);
}

/* Content tables */

article table {
  float: left;
  width: 100%;
  padding: 0;
  margin: 0 0 20px;
  background: rgba(255, 255, 255, 0.1);
  color: #666;
}

article table td,
article table th {
  padding: 5px 10px;
  border: 1px solid #ccc;
}

article table th {
  background: #f7f7f7;
}

article table tr:nth-child(odd) {
  background: #fafafa;
}

.imagewrapper {
  cursor: pointer;
}

/* Blocks */

.wrapper {
  float: none;
  width: 1200px;
  height: auto;
  margin: 0 auto;
  padding: 0;
  position: relative;
}

body > header:before,
body > section:before,
body > footer:before {
  content: "";
  position: absolute;
  background: #fff;
  left: 50%;
  top: 0;
  bottom: 0;
  width: 1200px;
  height: 100%;
  margin: 0 -600px;
  z-index: -1;
}

body > header:before {
  margin-top: 10px;
  border-top: 1px solid #ccc;
  height: calc(100% - 10px);
  box-shadow: 0 2px 25px rgba(0, 0, 0, 0.2);
}

body > section:before {
  box-shadow: 0 2px 25px rgba(0, 0, 0, 0.2);
}

body > footer:before {
  background: transparent;
}

#logo {
  display: inline-block;
  position: relative;
  margin: 20px 10px 15px 0;
  padding: 70px 0 0;
  font-family: "PT Sans Narrow";
  background: url(../images/gabriel-logo.svg) no-repeat center top;
  width: 250px;
  text-align: center;
  font-size: 15px;
  text-transform: uppercase;
  text-decoration: none;
  color: #333;
  background-size: 70%;
}

#logo > span {
  display: none;
  visibility: hidden;
}

#logo > strong {
  display: inline-block;
  box-sizing: border-box;
  padding: 2px 4px 0;
  background: #24b4b0;
  color: #fff;
  text-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
  border-radius: 2px;
}

#logo span.gblogotype,
#logo a.gblogotype {
  position: absolute;
  font-size: 0;
  display: block;
  left: 0;
  top: 0;
  right: 0;
  height: 63px;
}

.header-infoblock {
  display: inline-block;
  vertical-align: top;
  margin: 20px 20px 10px 0;
  float: right;
}

.header-infoblock > .row {
  display: inline-block;
  margin: 0 15px 0 0;
  width: 200px;
  vertical-align: top;
}

.header-infoblock > .row.company-info {
  width: 200px;
  margin: 0;
}

.header-infoblock > .row.company-info b {
  font-size: 17px;
}

.header-infoblock > .row.company-info .header-phone,
.header-infoblock > .row.company-info .header-time,
.header-infoblock > .row.company-info .header-place {
  height: auto;
}

.header-infoblock > .row.contacts {
  margin-right: 0;
  width: 650px;
}

.header-infoblock > .row .contact-out-item {
  display: block;
  clear: both;
  line-height: 30px;
  position: relative;
  font-size: 14px;
}

.header-infoblock > .row .contact-out-item.hidden {
  opacity: 0;
  height: 0;
  transition: all 0.2s linear;
}
.header-infoblock:hover > .row .contact-out-item.hidden {
  height: 30px;
  opacity: 1;
}

.header-infoblock > .row > .contact-out-item .heading {
  font-weight: bold;
  font-size: 16px;
  margin: 0 7px 0 0;
}

.header-infoblock > .row > .contact-out-item .heading img {
  display: inline-block;
  vertical-align: middle;
  margin: 0 7px 0 0;
}

.header-infoblock > .row > .contact-out-item a,
.header-infoblock > .row > .contact-out-item a:hover {
  color: inherit;
  text-decoration: none;
  border-bottom: var(--gabriel-main-color-lightest) 1px dotted;
}

.header-infoblock > .row > .contact-out-item a:hover {
  border-bottom-style: solid;
}

.header-infoblock > .row > .contact-out-item .region {
}

.header-infoblock > .row > .contact-out-item .place {
}

.header-infoblock > .row > .contact-out-item .phone {
}

.one-phone-wrapper {
  position: absolute;
  right: 20px;
  top: 20px;
  text-align: right;
}

.one-phone-wrapper .phone {
  display: block;
  font-weight: bold;
  font-size: 24px;
  line-height: 40px;
  margin: 0 0 10px;
}

.one-phone-wrapper .phone a {
  color: #333;
  text-decoration: none;
}

.header-infoblock > .row > .contact-out-item .place > i,
.header-infoblock > .row > .contact-out-item .phone > i,
.one-phone-wrapper .phone > i {
  display: inline-block;
  margin: 0 5px 0 0;
  height: 20px;
  vertical-align: middle;
}

.header-infoblock > .row > .contact-out-item .place > i {
  width: 12px;
  background: url(../images/top-contacts-sprite.png) no-repeat left center;
}

.one-phone-wrapper .phone > i,
.header-infoblock > .row > .contact-out-item .phone > i {
  width: 20px;
  background: url(../images/top-contacts-sprite.png) no-repeat center center;
}

.header-infoblock > .row .contact-out-item .more.this-more {
  position: absolute;
  top: 0;
  right: 0;
  height: 30px;
  width: 20px;
  border-radius: 2px;
  background: var(--gabriel-main-color);
  color: #fff;
  font-size: 0;
  cursor: pointer;
  text-shadow: 1px 0 0 var(--gabriel-main-color-darkest);
}

.header-infoblock > .row .contact-out-item .more.this-more:before {
  content: "\2023";
  display: inline-block;
  width: 20px;
  height: 20px;
  font-size: 22px;
  transform: rotate(90deg) translateX(10px);
}

.header-infoblock > .row .contact-out-item .more.this-more.active:before {
  transform: rotate(-90deg) translateX(0);
}

.header-infoblock > .row .contact-out-item .other-current-contacts {
  display: none;
  width: 100%;
  clear: both;
  position: absolute;
  left: 0;
  top: 30px;
  padding: 0;
  background: #fefefe;
  border-bottom: 1px solid #e4e4e4;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.15);
  z-index: 10;
}

.header-infoblock
  > .row
  .contact-out-item
  .other-current-contacts
  > .contact-out-item {
  display: block;
  box-sizing: border-box;
  width: 100%;
  padding: 4px 7px;
  line-height: 22px;
}

.header-infoblock
  > .row
  .contact-out-item
  .other-current-contacts
  > .contact-out-item:nth-child(2n-1) {
  background: #efefef;
}

.header-infoblock > .row .contact-out-item .other-current-contacts.active {
  display: block;
}

.header-infoblock > .row .other-info {
  display: block;
  clear: both;
  font-size: 14px;
  line-height: 30px;
  margin: 4px 0 0;
}

.header-infoblock > .row .contact-out-item .contact-out-item {
}

.header-infoblock .header-phone a,
.header-infoblock .header-phone a:hover {
  text-decoration: none;
  color: inherit;
}

nav[data-role="site-main-menu"] {
  display: block;
  position: relative;
  text-align: center;
  padding: 0 10px 0;
  box-sizing: border-box;
  width: 100%;
  clear: both;
  border-top: #eee solid 1px;
  box-shadow: 0 -1px 0 #fff;
  background: #f1f1f1 url(../images/noize-bg-pattern.png) repeat top center;
}

nav[data-role="site-main-menu"] hr {
  margin: 7px 0 4px;
  padding: 0;
  background: none;
  border: none;
  border-top: 1px dotted #ccc;
}

nav[data-role="site-main-menu"] span.menu-item-wrapper {
  position: relative;
  display: inline-block;
  vertical-align: top;
  list-style: none;
  width: auto;
  height: auto;
  padding: 10px 4px 12px 6px;
  margin: 0 3px;
  font-family: "PT Sans Narrow";
}

nav[data-role="site-main-menu"] span.menu-item-wrapper.dedicated {
  font-weight: bold;
}

nav[data-role="site-main-menu"] span.menu-item-wrapper.dedicated > a {
  color: var(--gabriel-main-color-with-dedicated);
}

nav[data-role="site-main-menu"] span.menu-item-wrapper:last-child {
  padding-right: 0;
  background: none;
}

nav[data-role="site-main-menu"]
  span.menu-item-wrapper.has-sub-menu
  > .menu-item:after {
  content: "\2023";
  display: inline-block;
  padding: 0 0 0 2px;
  text-align: center;
  font-size: 14px;
  color: #999;
  width: 5px;
  transform: rotate(90deg) translateX(0);
}

nav[data-role="site-main-menu"] > .menu-item {
  padding-bottom: 5px;
}

nav[data-role="site-main-menu"] a.menu-item,
nav[data-role="site-main-menu"] span.menu-item {
  display: inline;
  text-decoration: none;
  border-bottom: var(--gabriel-main-color-border) 1px dotted;
  color: #111;
  font-size: 18px;
}

nav[data-role="site-main-menu"] a.menu-item:hover {
  border-bottom-style: solid;
}

nav[data-role="site-main-menu"] span.sub-menu {
  position: absolute;
  text-align: left;
  left: 0;
  top: 100%;
  background: #f1f1f1 url(../images/noize-bg-pattern.png) repeat top center;
  z-index: 300;
  box-shadow: 0 1px 7px rgba(0, 0, 0, 0.25);
  border-bottom: 2px solid #ccc;
  height: 0;
  padding: 0;
  margin: 0;
  max-height: 0px;
  opacity: 0;
  overflow: hidden;
  transition: all 200ms linear;
}

nav[data-role="site-main-menu"] span.menu-item-wrapper:hover span.sub-menu {
  opacity: 1;
  height: auto;
  max-height: inherit;
}

nav[data-role="site-main-menu"] span.sub-menu .menu-item {
  display: inline-block;
  width: 100%;
  box-sizing: border-box;
  font-size: 16px;
  margin: 0;
  padding: 2px 5px;
  border: none;
}

nav[data-role="site-main-menu"] span.sub-menu .menu-item:hover {
  background: var(--gabriel-main-color);
  color: #fff;
  text-shadow: 0 1px 0 var(--gabriel-main-color-darkest);
}

.header-left-side,
.header-right-side {
  display: block;
  position: absolute;
  top: 15px;
  font-family: "PT Sans Narrow";
  font-size: 18px;
}

.header-right-side {
  right: 20px;
  text-align: right;
}

.header-left-side {
  left: 20px;
  text-align: left;
}

.header-phone,
.header-time,
.header-place {
  height: 20px;
  display: block;
  margin: 0 0 5px;
  line-height: 20px;
  color: #aaa;
}

.header-phone b,
.header-time b,
.header-place b {
  color: #111;
}

.header-phone > i,
.header-time > i,
.header-place > i {
  float: left;
  display: block;
  height: 20px;
  width: 17px;
  margin: 0 12px 0 0;
  background: url(../images/top-contacts-sprite.png) no-repeat center center;
}

.header-right-side .header-phone a,
.header-right-side .header-phone a:hover {
  color: inherit;
  text-decoration: none;
}

.header-time > i {
  background: url(../images/top-contacts-sprite.png) no-repeat right center;
}

.header-place > i {
  width: 12px;
  margin: 0 12px 0 4px;
  background: url(../images/top-contacts-sprite.png) no-repeat left center;
}

a.header-place {
  font-size: 14px;
  color: #777;
  font-weight: bold;
}

a.header-place:hover {
  color: #000;
}

header,
section,
footer {
  position: relative;
  float: left;
  width: 100%;
  padding: 0;
  margin: 0;
}

header {
  /*    background: url(../images/header-flat.png) no-repeat top center;*/
  padding: 13px 0 0;
}

section {
  /*    background: url(../images/section.jpg) repeat-y top center;
    */
  min-height: 300px;
}

section > .wrapper {
  z-index: 30;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  max-width: 100%;
}

footer {
  margin: -16px 0 0;
  padding: 56px 0 40px;
  position: relative;
  z-index: 20;
  /*    background: url(../images/footer.jpg) no-repeat top center;*/
}

/* Main menu */

ul.menu-left-side,
ul.menu-right-side {
  float: left;
  margin: 82px 0 0;
  width: 370px;
  height: 60px;
  line-height: 60px;
  text-align: center;
}

ul.menu-right-side {
  float: right;
}

ul.menu-left-side li,
ul.menu-right-side li {
  display: inline-block;
  position: relative;
  list-style: none;
  height: 60px;
  line-height: 60px;
  padding: 0 20px 0 7px;
  background: url(../images/marker.png) no-repeat right 27px;
  font-family: "PT Sans Narrow";
}

ul.menu-left-side li.last,
ul.menu-right-side li.last {
  background: none;
}

ul.menu-left-side > li > a,
ul.menu-right-side > li > a,
ul.menu-left-side > li > span,
ul.menu-right-side > li > span {
  font-size: 18px;
  border-bottom: 1px dotted var(--gabriel-main-color-border);
  color: #000;
  text-decoration: none;
}

ul.menu-left-side li a:hover,
ul.menu-right-side li a:hover {
  border-bottom: 1px solid var(--gabriel-main-color-border);
}

ul.menu-left-side li > span,
ul.menu-right-side li > span {
  border-bottom-style: solid;
}

ul.menu-left-side li > ul,
ul.menu-right-side li > ul {
  position: absolute;
  left: 0;
  top: 59px;
  background: #f1f1f1 url(../images/noize-bg-pattern.png) repeat top center;
  z-index: 300;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
  border-bottom: 2px solid #ccc;
  height: 0;
  padding: 0;
  margin: 0;
  max-height: 0px;
  opacity: 0;
  overflow: hidden;
  transition: all 200ms linear;
}

ul.menu-left-side li:hover > ul,
ul.menu-right-side li:hover > ul {
  opacity: 1;
  height: auto;
  padding: 0 0 5px;
  max-height: 500px;
  z-index: 999;
}

ul.menu-left-side li > ul li,
ul.menu-right-side li > ul li {
  display: block;
  width: 100%;
  margin: 0 10px 2px;
  list-style: none;
  background: none;
  padding: 0;
  margin: 0;
  clear: both;
  white-space: nowrap;
  text-align: left;
  line-height: 30px;
  height: 30px;
}

ul.menu-left-side li > ul li:hover,
ul.menu-right-side li > ul li:hover {
  background: var(--gabriel-main-color);
  text-shadow: 0 1px 0 var(--gabriel-main-color-darkest);
}

ul.menu-left-side li > ul li a,
ul.menu-right-side li > ul li a,
ul.menu-left-side li > ul li span,
ul.menu-right-side li > ul li span {
  float: left;
  height: 30px;
  line-height: 30px;
  width: 100%;
  font-size: 14px;
  text-decoration: none;
  color: #333;
  padding: 0 10px;
  text-decoration: underline;
  /*border-bottom: 1px dotted var(--gabriel-main-color-border);*/
  font-family: "PT Sans";
}

ul.menu-left-side li > ul li:hover a,
ul.menu-right-side li > ul li:hover a {
  color: #fff;
  text-decoration: none;
  font-weight: bold;
}

ul.menu-left-side li > ul li.active a,
ul.menu-right-side li > ul li.active a,
ul.menu-left-side li > ul li.active span,
ul.menu-right-side li > ul li.active span {
  font-weight: bold;
  text-decoration: none;
}

ul.menu-left-side li > ul li.active:hover a,
ul.menu-right-side li > ul li.active:hover a,
ul.menu-left-side li > ul li.active:hover span,
ul.menu-right-side li > ul li.active:hover span {
  color: #fff;
}

/* Header Blocks */

#contacts-place-wrapper {
  float: left;
  width: 100%;
  position: relative;
  padding: 10px 20px;
  box-sizing: border-box;
  background: rgba(20, 20, 20, 0.05);
  border-bottom: 1px solid #e4e4e4;
}

#contacts-place-wrapper > a {
  color: #333;
}

#contacts-place-wrapper .current-heading {
  float: left;
  display: block;
  padding: 0;
  margin: 0 20px 0 0;
  font-size: 18px;
  color: #333;
  text-decoration: none;
  height: 34px;
  line-height: 34px;
  font-weight: bold;
  cursor: pointer;
  font-family: "PT Sans Narrow";
}

#contacts-place-wrapper span.alladrhv {
  display: inline-block;
  position: relative;
  font-size: 16px;
  font-weight: normal;
  color: var(--gabriel-main-color-with-dedicated-darkest);
  border-bottom: 1px dotted var(--gabriel-main-color-with-dedicated-darkest);
  height: inherit;
  line-height: inherit;
  margin-top: 7px;
}

#contacts-place-wrapper .current-heading > span {
  color: var(--gabriel-main-color);
  font-size: 9px;
  line-height: 14px;
  margin: 1px 2px 1px;
  position: relative;
  display: block;
  float: left;
  width: 14px;
  text-align: center;
  border: 1px solid var(--gabriel-main-color);
  border-radius: 2px;
}

#contacts-place-wrapper .current-heading:hover {
  border-bottom-style: solid;
}

#contacts-place-wrapper .selector {
  float: left;
  font-size: 16px;
  font-family: "PT Sans Narrow";
  margin: 0 20px 0 0;
  max-width: 150px;
  background: #fdfdfd;
}

#contacts-place-wrapper .selector:after {
  top: 5px;
  right: 3px;
  height: 33px;
  padding: 0 0 0 10px;
  border-left: 1px solid #aaa;
}

#switcher-placeholder {
  float: left;
  font-size: 16px;
  font-family: "PT Sans Narrow";
}

#switcher-placeholder > div {
  float: left;
  width: 100%;
  font-size: 18px;
}

#switcher-placeholder > div > div {
  float: left;
  display: inline-block;
  height: 34px;
  line-height: 34px;
  margin: 0 10px 0 0;
  width: 180px;
  white-space: nowrap;
  color: var(--gabriel-main-color);
  font-weight: bold;
}

#switcher-placeholder > div > span {
  float: left;
  display: block;
  margin: 0 20px 0 0;
  height: 34px;
  line-height: 34px;
}

#switcher-placeholder > div > span.place {
  width: auto;
  margin: 0 20px 0 0;
}

#switcher-placeholder > div > span.phone {
  display: none;
}

#other-places > .place-line > span.place.dobleline {
  line-height: 16px;
}

#switcher-placeholder > div > span > i,
#other-places span > i {
  float: left;
  display: block;
  height: 34px;
  width: 17px;
  margin: 0 5px 0 0;
}

span.place > i {
  background: url(../images/top-contacts-sprite.png) no-repeat left center;
}

span.phone > i {
  background: url(../images/top-contacts-sprite.png) no-repeat center center;
}

span.time > i {
  background: url(../images/top-contacts-sprite.png) no-repeat right center;
}

.callback-caller {
  float: right;
}

#contacts-place-wrapper .callback-caller.button,
.button.green {
  background: linear-gradient(to top, #fdc037, #e4c726);
  color: #111;
  text-shadow: 0 1px 0 #ffe759;
  border-color: #fdc037;
  font-weight: bold;
}

#contacts-place-wrapper .callback-caller.button {
  position: absolute;
  right: 20px;
  top: 10px;
}

/* Other places */

#other-places {
  position: absolute;
  display: none;
  left: 0;
  top: 54px;
  width: 1000px;
  min-width: 1000px;
  padding: 0;
  margin: 0;
  border-top: 1px solid #ccc;
  background: #f1f1f1 url(../images/noize-bg-pattern.png) repeat top center;
  z-index: 200;
  border-bottom: 3px solid #cfcfcf;
}

#other-places > .place-line {
  float: left;
  display: block;
  width: 960px;
  margin: 0;
  color: #333;
  padding: 5px 20px;
  border-bottom: 1px dotted #ccc;
}

#other-places > .place-line > span {
  float: left;
  margin: 0 20px 0 0;
  width: 250px;
  height: 34px;
  line-height: 34px;
}

#other-places > .place-line > span.phone {
  margin: 0;
  width: 220px;
}

#other-places > .place-line > span.time {
  margin: 0;
  width: 240px;
}

#other-places > .place-line > .region-name {
  float: left;
  font-size: 18px;
  font-family: "PT Sans Narrow";
  margin: 0 20px 0 0;
  width: 200px;
  height: 34px;
  line-height: 34px;
  font-weight: bold;
}

#other-places > .place-line:hover {
  background: rgba(0, 0, 0, 0.02);
  color: #000;
}

/* Content Bloks */

#infographica {
  float: left;
  width: 100%;
  clear: both;
  margin: 0;
  padding: 20px 30px;
  background: #f6f6f6;
  border-bottom: 1px solid #ccc;
  box-sizing: border-box;
  text-align: center;
}

#infographica > .item {
  display: inline-block;
  margin: 0;
  padding: 0;
  position: relative;
}

#infographica > .item:nth-child(2) {
  margin: 0 40px;
}

#infographica > .item .iconset {
  display: table-cell;
  padding: 0 15px 0 0;
  width: 72px;
  height: 72px;
}

#infographica > .item .textplace {
  display: table-cell;
  text-align: left;
  vertical-align: middle;
  font-size: 14px;
  font-weight: normal;
  min-width: 220px;
}

#infographica > .item .textplace > span {
  font-weight: bold;
  font-size: 20px;
  font-family: "PT Sans Narrow";
  /*color: var(--gabriel-main-color-border);*/
  color: #000;
}

#infographica > .item .textplace > .button {
  margin: 7px 0 0;
  white-space: nowrap;
  font-size: 15px;
}

.textplace sup {
  font-size: 60%;
}

#infographica > .item .iconset .bg,
#infographica > .item .iconset .icon {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 72px;
  height: 72px;
}

#infographica > .item .iconset .bg {
  transition: all 0ms ease;
  background: url(../images/iconset-bg.png) no-repeat center center;
  transform: rotate(0);
}

#infographica > .item .iconset .icon {
  font-size: 30px;
  line-height: 72px;
  font-weight: bold;
  text-decoration: none;
  text-align: center;
  color: #00b1a2;
  margin: 0;
  position: relative;
  background-size: cover;
  font-family: "PT Sans Narrow";
  transition: all 300ms ease;
}

.item.key .icon {
  background: url(../images/key-icon.png) no-repeat center center;
}

.item.up .icon {
  background: url(../images/up-icon.png) no-repeat center center;
}

.item.square .icon {
  background: url(../images/liner-icon.png) no-repeat center center;
}

#infographica > .item:hover .bg {
  transform: rotate(180deg);
  transition: all 1200ms ease;
}

#infographica > .item:hover .icon {
  font-size: 28px;
  width: 64px;
  height: 64px;
  line-height: 64px;
  margin: 4px;
}

#infographica .full-view-aftertext {
  float: left;
  width: 100%;
  padding: 15px 0 0;
  margin: 20px 0 0;
  border-top: 1px dotted #ccc;
  font-size: 22px;
  color: var(--gabriel-main-color-with-dedicated-darkest);
  font-family: "PT Sans Narrow";
}

article#main-content-placeholder,
article.appendix {
  float: left;
  width: 100%;
  clear: both;
  padding: 20px 30px;
  box-sizing: border-box;
}

article.appendix {
  border-top: 1px solid #eee;
}

#aftercontent-placeholder:empty + ul.sell-buttons-list {
  margin-top: auto;
}

/* Footer Blocks */

footer {
  color: #bbb;
}

.copyright-placeholder {
  float: left;
  margin: 0 60px 0 20px;
}

.contacts-list-footer {
  float: left;
  margin: 0;
  color: #2f2f2f;
}

.contacts-list-footer b {
  color: #bbb;
}

.contacts-list-footer ul li {
  list-style: none;
}

footer a {
  color: #2f2f2f;
  text-decoration: none;
  border-bottom: 1px dotted var(--gabriel-main-color-border);
}

footer a:hover {
  color: #000;
  border-bottom: 1px solid #000;
}

a.sitemap {
  font-size: 10px;
  border: none;
  padding: 0 0 0 20px;
  text-decoration: underline;
  background: url(../images/sitemap-icon.png) no-repeat left center;
}

footer a.link {
  font-size: 12px;
}

a.sitemap:hover {
  border: none;
}

/* Arrows */

.right-arrow,
.left-arrow {
  float: left;
  width: 30px;
  height: 45px;
  overflow: hidden;
  text-indent: -9999px;
  background: url(../images/arrows.png) no-repeat right center;
  cursor: pointer;
  opacity: 1;
}

.left-arrow {
  background-position: left center;
}

.right-arrow:hover,
.left-arrow:hover {
  opacity: 0.8;
}

.right-arrow:active,
.left-arrow:active {
  opacity: 0.5;
}

/* Sorting */

.sorting-wrapper {
  float: right;
  width: 750px;
  white-space: nowrap;
  margin: 0 0 20px;
  border-bottom: 1px dotted #ccc;
  font-size: 14px;
}

.sorting-wrapper form#sortform label {
  display: inline-block;
  width: auto;
}

.sorting-wrapper form#sortform label:first-child {
  margin-right: 7px;
}

.sorting-wrapper form#sortform label:last-child {
  float: right;
}

.sorting-wrapper form#sortform label:last-child .selector {
  min-width: 40px;
}

/* Paging */

#catalog-out-placeholder + .paging {
  float: right;
  width: 750px;
}

.paging {
  float: left;
  width: 100%;
  clear: both;
  margin: 15px 0;
}

.paging > span:not(.splitPagination) {
  display: inline-block;
  line-height: 18px;
  padding: 7px 10px;
  background: linear-gradient(to top, #f1f1f1, #eaeaea);
  border-radius: 3px;
  border: 1px solid #aaa;
}

.paging > span.ditto_currentpage {
  box-shadow: inset 0 0 0 2px #333;
  font-weight: bold;
}

.paging > a {
  display: inline-block;
  padding: 7px 10px;
  margin: 0 3px;
  text-decoration: none;
  line-height: 18px;
  color: #888;
  background: #efefef;
  border-radius: 3px;
  border: 1px solid #ccc;
  text-shadow: 0 1px 0 #fff;
  outline: none;
  box-shadow: 0 1px 0 #fff;
}

.paging > a:hover {
  color: var(--gabriel-main-color);
  border-color: var(--gabriel-main-color);
  box-shadow: 0 0 5px var(--gabriel-main-color);
}

span.splitPagination {
  margin: 0 10px;
}

.pager-results {
  float: right;
}

/* Blog */

.date {
  float: left;
  width: 30px;
  border-top: 1px solid #aaa;
  padding: 4px 7px;
  margin: 5px 14px 4px 0;
  background: #efefef;
  text-align: left;
}

.date > strong {
  float: left;
  color: #444;
  margin-bottom: 4px;
  display: block;
  font-size: 20px;
  width: 100%;
}

.author {
  font-size: 11px;
  font-weight: bold;
  color: #888;
  margin: 0 0 10px;
}

.author:after {
  content: " \00a9";
}

/* Allerts */

.errors,
.complete {
  float: left;
  margin: 0 0 20px;
  padding: 7px 24px 7px 14px;
  font-size: 14px;
  width: auto;
  line-height: 18px;
  cursor: pointer;
  border-radius: 0;
  background: #fe8d73
    url("data:image/png; base64, iVBORw0KGgoAAAANSUhEUgAAAAEAAABkCAYAAABHLFpgAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYxIDY0LjE0MDk0OSwgMjAxMC8xMi8wNy0xMDo1NzowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNS4xIFdpbmRvd3MiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MTQ5MUJBMDc3NEI3MTFFMjhCMjk5QUU4QjQwMkFGRkIiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MTQ5MUJBMDg3NEI3MTFFMjhCMjk5QUU4QjQwMkFGRkIiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDoxNDkxQkEwNTc0QjcxMUUyOEIyOTlBRThCNDAyQUZGQiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDoxNDkxQkEwNjc0QjcxMUUyOEIyOTlBRThCNDAyQUZGQiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PuGHXnkAAAAsSURBVHjaYvj//z8DEwMQDE4CBBhRxXByKWYRK0GENpL04lRCiVtwexUgwACpMAPoD1ikoAAAAABJRU5ErkJggg==")
    repeat-x bottom left;
  border: 1px solid #83210b;
  color: #83210b;
  box-shadow: inset 0 1px 0 0 #ffd5cb;
  text-shadow: 0 1px 0 #f2b9ac;
}

.complete {
  background-color: #6ad26c;
  border: 1px solid #115913;
  color: #115913;
  box-shadow: inset 0 1px 0 0 #d1ffd3;
  text-shadow: 0 1px 0 #b8f5ba;
}

/* Window */

.no-overlay-window {
  display: none;
  position: fixed;
  width: 890px;
  background: #fafafa;
  background: linear-gradient(to bottom, #fafafa, #eee);
  border: 1px solid #ccc;
  padding: 40px 15px 15px;
  border-radius: 3px;
  box-shadow: 0 3px 15px rgba(0, 0, 0, 0.2), 0 0 0 1000px rgba(0, 0, 0, 0.7);
  margin: 0 -460px;
  height: 70%;
  top: 10%;
  left: 50%;
  z-index: 1000;
  overflow: hidden;
}

.no-overlay-window .closethis {
  z-index: 10000;
  top: 5px;
  right: 15px;
}

.no-overlay-window .inner-scroller {
  float: left;
  position: absolute;
  left: 0;
  top: 0;
  width: 920px;
  height: 100%;
  clear: both;
  overflow-x: hidden;
  overflow-y: scroll;
}

.overlay {
  position: fixed;
  width: 100%;
  height: 100%;
  background-color: #222;
  background-color: rgba(0, 0, 0, 0.8);
  z-index: 100000;
  overflow: hidden;
  display: none;
}

.popup {
  position: absolute;
  padding: 10px 15px;
  width: 400px;
  top: 0;
  right: 0;
}

.window {
  float: left;
  display: none;
  color: #777;
  position: fixed;
  width: 300px;
  top: 10%;
  left: 50%;
  background: #fafafa;
  background: linear-gradient(to bottom, #fafafa, #eee);
  border: 1px solid #ccc;
  padding: 40px 15px 15px;
  margin: 0 -165px;
  border-radius: 3px;
  box-shadow: 0 3px 15px rgba(0, 0, 0, 0.2);
}

.closethis {
  float: right;
  width: 20px;
  height: 20px;
  margin: 15px 15px 0 0;
  position: absolute;
  right: 0;
  top: 0;
  cursor: pointer;
  overflow: hidden;
  text-indent: -9999px;
  background: url("data:image/png; base64, iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAZJJREFUeNqslDFLw0AUx3OJXLFkEqeMHdotozROhYAfQCEi+BH6CVqyZuvW7yAGdFfMaqKQJZuZ7SaCpS30II33JAfJ9aUG7YNHcvm//Lh7/5eQPM+VfYaq7DlQoOM4hzy1updA46k3AgJMVdUnQsgtBoVnoGma9ohBVQy22WxOeW8vZKiAgZZlmYVBiTAFBA57AFilgJA7XnNZ3P/AyjqHhhx+5vv+ogIMw/AoCIK3JEmO5WMAFK4yDMI0zQ/btnuWZX1WgDwoY+xmOp2eR1HUyNF+v68Mh8N7SukVXzK5hwwEKIDCv8AwlxtB62B1c8jiOL6ez+fvdUDQoEaGyT3cGo1dRxbuc3ezXXPYCCYcx4ZfbQKDnmE9xaAH4qbT6ejr9Xowm81QA4rl1kgZhjFotVrwtXzJPdRXq1Xged5JmqaYm4o8p91uVxmNRq/tdtvmy4XYdjn15XL54rpuPplMcr5jaDwt6RSegTYej3OohXfKDBkooM8IrALFYJCk5o+tFzPGakymRS5+ncP/xrcAAwAhPUnORhN7JQAAAABJRU5ErkJggg==")
    no-repeat center center;
}

/* Back to header */

.go-top {
  position: fixed;
  font-size: 20px;
  background: var(--gabriel-main-color-border) url(../images/top.png) no-repeat
    center 0;
  width: 40px;
  height: 40px;
  line-height: 40px;
  border-radius: 2px;
  color: #000;
  left: 20px;
  bottom: 20px;
  z-index: 1000;
  text-align: center;
  cursor: pointer;
  text-indent: -999px;
  overflow: hidden;
  transition: all 200ms linear;
  border: 4px solid transparent;
}

.go-top:hover {
  bottom: 22px;
  border-color: var(--gabriel-main-color-lightest);
  box-shadow: 0 2px 17px rgba(0, 0, 0, 0.1);
  background-position: center -2px;
}

/* Breadcrumbs */

#breadcrumbs {
  float: left;
  padding: 7px 15px;
  width: 100%;
  background: #fcfcfc;
  font-size: 14px;
  box-sizing: border-box;
  border-bottom: 1px solid #eee;
  color: #777;
}

.B_currentCrumb {
  font-weight: bold;
}

#breadcrumbs a {
  text-decoration: none;
  border-bottom: 1px dotted var(--gabriel-main-color-border);
}

#breadcrumbs .separator {
  color: 11px;
  font-weight: normal;
  color: #ccc;
  margin: 0 3px;
}

/* HTML Sitemap */

ul.html-sitemap {
  float: left;
  width: 100%;
  box-sizing: border-box;
  clear: both;
  border-top: 1px dashed #ccc;
  margin: 20px 0 0;
  padding: 20px 0 20px 20px;
}

ul.html-sitemap > li {
  float: left;
  width: 960px;
  list-style: square;
  color: #000;
  font-size: 16px;
  line-height: 20px;
  margin: 0 0 10px;
}

ul.html-sitemap > li > a {
  text-decoration: none;
  border-bottom: 1px dotted #000;
}

ul.html-sitemap > li ul {
  margin: 20px 0 0 10px;
}

ul.html-sitemap > li ul > li {
  float: left;
  width: 220px;
  list-style-image: url(../images/marker.png);
  font-size: 12px;
}

/* 404 */

.errorpage-heading {
  font-size: 70px;
  line-height: 80px;
  color: #000;
}

/* Slider */

#slider-placeholder {
  float: left;
  position: relative;
  width: 100%;
  height: 220px;
  margin: 0;
  padding: 0;
  overflow: hidden;
  background: #000 url(../images/loading.gif) no-repeat center center;
  border-top: 1px solid #fff;
}

#slider-placeholder:after {
  content: "";
  display: block;
  position: absolute;
  background: url(../images/slider-overlay.png) no-repeat center bottom;
  background-size: 101% auto;
  width: 100%;
  height: 22px;
  overflow: hidden;
  left: 0;
  bottom: 0;
  z-index: 99;
}

#slider-placeholder .slides {
  float: left;
  display: block;
  margin: 0;
  padding: 0;
  width: 100%;
  height: 220px;
  overflow: hidden;
}

#slider-placeholder .slides > .slide {
  float: left;
  display: block;
  width: 100%;
  height: 220px;
  position: relative;
  background-repeat: no-repeat !important;
  background-size: 100% auto !important;
}

.slide .slide-content {
  float: left;
  position: absolute;
  left: 0;
  top: 90px;
  height: 80px;
  padding: 25px 30px;
  z-index: 50;
  width: 380px;
  background: url(../images/slide-content-bg.png) no-repeat left top;
  color: #fff;
  text-shadow: 0 1px 0 #000;
}

.slide-content .heading {
  margin: 0 0 10px;
  font-size: 20px;
  font-family: "PT Sans Narrow";
  color: var(--gabriel-main-color-darkest);
  text-shadow: none;
}

#slider-placeholder .pager {
  position: absolute;
  right: 20px;
  bottom: 40px;
  z-index: 90;
}

#slider-placeholder .pager > span {
  display: block;
  float: left;
  margin: 0 4px;
  width: 20px;
  height: 20px;
  border-radius: 2px;
  text-indent: -999px;
  overflow: hidden;
  background: rgba(255, 255, 255, 0.7);
  cursor: pointer;
  transition: all 200ms linear;
}

#slider-placeholder .pager > span:hover,
#slider-placeholder .pager > span.active {
  border-radius: 10px;
  background: var(--gabriel-main-color-border);
}

#slider-placeholder .pager > span:hover {
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.7);
}

#slider-placeholder .arrow {
  position: absolute;
  z-index: 100;
  width: 30px;
  height: 220px;
  left: 0;
  top: 0;
  background: url(../images/arrows.png) no-repeat left center;
  text-indent: -999px;
  overflow: hidden;
  cursor: pointer;
  opacity: 0;
  transition: all 200ms linear;
}

#slider-placeholder .arrow#next {
  left: auto;
  right: 0;
  background-position: right center;
}

#slider-placeholder:hover .arrow {
  opacity: 0.5;
}

#slider-placeholder .arrow:hover {
  opacity: 1;
}

/* SMB Block */

#smb {
  float: right;
  margin: 10px 0;
  padding: 0;
}

#smb .heading {
  float: left;
  display: block;
  line-height: 36px;
  font-size: 16px;
  font-weight: bold;
  color: #000;
  margin: 0 15px 0 0;
}

#smb > a {
  display: inline-block;
  width: 32px;
  height: 32px;
  margin: 0 2px;
  padding: 0;
  text-indent: -9999px;
  overflow: hidden;
  background: #fff url(../images/sm-iconset.png) no-repeat left top;
  border-radius: 2px;
  opacity: 0.7;
}

#smb > a.tw {
  background-position: -40px top;
}

#smb > a.yt {
  background-position: -80px top;
}

#smb > a.vk {
  background-position: -120px top;
}

#smb > a.fb {
  background-position: -160px top;
}

#smb > a.od {
  background-position: -200px top;
}

#smb > a:hover {
  border-radius: 32px;
  opacity: 1;
}

/* Catalog grid */

#catalog-grid {
  float: left;
  width: 660px;
  margin: 20px 0 0 20px;
  height: auto;
}

#catalog-grid > .catalog-item {
  float: left;
  margin: 0 20px 20px 0;
  width: 200px;
  background: #efefef url(../images/preloader.gif) no-repeat center center;
  height: 160px;
  position: relative;
  overflow: hidden;
}

.catalog-item > img {
  position: absolute;
  width: 200px;
  left: 0;
  top: 0;
  z-index: 5;
}

.catalog-item > .heading {
  position: absolute;
  right: 0;
  bottom: 0;
  height: 40px;
  line-height: 40px;
  padding: 0 12px;
  font-weight: bold;
  font-size: 18px;
  color: #fff;
  text-shadow: none;
  background: var(--gabriel-main-color-with-opacity);
  z-index: 10;
  transition: all 200ms linear;
}

.catalog-item:hover {
  box-shadow: 0 0 0 5px var(--gabriel-main-color-border);
}

.catalog-item:hover > .heading {
  background: var(--gabriel-main-color-border);
}

/* Right block aside */

#infoblock-placeholder {
  float: left;
  width: 300px;
  margin: 20px 20px 20px 0;
  padding: 0;
  min-height: 20px;
  box-shadow: 0 2px 15px rgba(0, 0, 0, 0.1);
  background: #f1f1f1 url(../images/noize-bg-pattern.png) repeat top center;
  border-bottom: 3px solid #dfdfdf;
}

a.configurator {
  float: left;
  display: block;
  background: var(--gabriel-main-color-border)
    url(../images/3d-constructor-bg.png) no-repeat left top;
  width: 170px;
  height: 50px;
  border-bottom: 1px solid var(--gabriel-main-color-darkest);
  font-size: 26px;
  font-family: "PT Sans Narrow";
  color: var(--gabriel-main-color-lightest);
  line-height: 24px;
  text-decoration: none;
  padding: 25px 30px 25px 100px;
}

a.configurator:hover {
  color: #fff;
}

a.sketches {
  float: left;
  display: block;
  position: relative;
  background: url(../images/sketches-bg.png) no-repeat left top;
  width: 300px;
  height: 60px;
}

a.sketches > span {
  position: absolute;
  right: 0;
  bottom: 0;
  color: #fff;
  text-shadow: none;
  background: var(--gabriel-main-color-with-opacity);
  height: 40px;
  line-height: 40px;
  padding: 0 12px;
  font-weight: bold;
  font-size: 18px;
  transition: all 200ms linear;
}

a.sketches:hover {
  box-shadow: 0 0 0 5px var(--gabriel-main-color-border);
}

a.sketches:hover > span {
  background: var(--gabriel-main-color-border);
}

article a.sketches {
  float: right;
  margin: 0 0 20px 10px;
  border: 1px solid var(--gabriel-main-color-border);
}

ul.phones-list {
  float: left;
  padding: 0;
  margin: 0;
  width: 260px;
}

ul.phones-list li {
  float: left;
  cursor: pointer;
  display: block;
  width: 100%;
  margin: 0;
  padding: 14px 20px;
  list-style: none;
  border-bottom: 1px solid #f1f1f1;
  transition: all 200ms linear;
}

ul.phones-list li:hover {
  background: var(--gabriel-main-color-border);
  color: #fff;
  font-weight: bold;
  text-shadow: none;
  text-shadow: 0 1px 0 var(--gabriel-main-color-darkest);
}

ul.phones-list li > img {
  float: left;
  margin: 0 10px 0 0;
  padding: 0;
}

ul.phones-list li .textplace-wrapper {
  float: left;
  width: 190px;
  margin: 8px 0 0;
}

.textplace-wrapper > .region-name {
  font-family: "PT Sans Narrow";
  font-weight: bold;
  font-size: 16px;
  color: #000;
  border-bottom: 1px dotted var(--gabriel-main-color-border);
  white-space: nowrap;
  margin: 0 0 4px;
  text-decoration: none;
}

.textplace-wrapper:hover > .region-name,
.textplace-wrapper > .region-name:hover {
  color: #fff;
}

.textplace-wrapper > .phone {
  font-size: 22px;
  font-family: "PT Sans Narrow";
  line-height: 30px;
  margin: 4px 0 0;
}

/* Map */

#map-place {
  float: left;
  width: 100%;
  min-height: 400px;
  background: #f1f1f1 url(../images/preloader.gif) no-repeat center center;
  margin: 0;
  padding: 0;
  border-top: 1px solid #ccc;
  border-bottom: 3px solid #ccc;
  overflow: hidden;
  position: relative;
  z-index: 190;
}

/* Filiters style */

aside#filters {
  float: left;
  width: 360px;
  margin: 0 20px 0 0;
}

#use-filters {
  float: left;
  margin: 0 0 20px;
  width: 100%;
  box-sizing: border-box;
  padding: 0 0 20px;
  border-bottom: 1px dotted #ccc;
}

#use-filters .header {
  display: block;
  position: relative;
  clear: both;
  margin: 0 0 10px;
  font-size: 20px;
  font-weight: bold;
  padding: 0 10px;
  box-sizing: border-box;
}

#use-filters .header:after,
.more-specification-caller:after {
  position: absolute;
  content: "";
  display: block;
  width: 0;
  height: 0;
  border: 7px solid transparent;
  border-top-color: #ccc;
  right: 0;
  top: 6px;
  transition: all 0.2s linear;
  cursor: pointer;
}

#use-filters .header:hover:after {
  border-top-color: #aaa;
}

#use-filters.expanded .header:after {
  transform: rotate(180deg);
  top: -3px;
}

#use-filters ul.use-filter-list {
  float: left;
  width: 100%;
  margin: 0 0 -5px;
  padding: 0;
}

#use-filters ul.use-filter-list.epitaphy {
  margin: 20px 20px 0;
}

#use-filters ul.use-filter-list li {
  float: left;
  display: none;
  list-style: none;
  width: calc(100% - 10px);
  padding: 0;
  margin: 0 10px 5px 0;
  text-align: left;
}

#use-filters.expanded ul.use-filter-list li {
  display: block;
}

#use-filters ul.use-filter-list li a,
#use-filters ul.use-filter-list li span {
  display: inline-block;
  margin: 0;
  font-size: 16px;
  padding: 4px 10px;
}

#use-filters ul.use-filter-list li a {
}

#use-filters ul.use-filter-list li a:hover {
  background: var(--gabriel-main-color);
  color: #fff;
  text-decoration: none;
  border-radius: 3px;
  text-shadow: 0 1px 0 var(--gabriel-main-color-darkest);
}

#use-filters ul.use-filter-list li span {
  color: #000;
  font-weight: bold;
}

#specification-filters {
  float: left;
  display: block;
  margin: 0 0 20px 0;
  width: auto;
  padding: 0;
}

#specification-filters ul.specification-filter-list {
  float: left;
  display: block;
  width: 100%;
  border-bottom: 3px solid #dfdfdf;
  box-shadow: 0 2px 15px rgba(0, 0, 0, 0.1);
  background: #f1f1f1 url(../images/noize-bg-pattern.png) repeat top center;
  margin: 0 0 20px;
  padding: 0;
}

#specification-filters.toggled ul.specification-filter-list {
  margin: 0;
  border-bottom: none;
}

#specification-filters.toggled ul.specification-filter-list:last-of-type {
  border-bottom: 3px solid #dfdfdf;
  margin: 0 0 20px;
}

#specification-filters ul.specification-filter-list li {
  display: block;
  width: 100%;
  margin: 0;
  padding: 0;
}

#specification-filters ul.specification-filter-list li:nth-child(2n) {
  background: rgba(0, 0, 0, 0.02);
}

#specification-filters ul.specification-filter-list li a,
#specification-filters ul.specification-filter-list li span {
  display: block;
  font-size: 18px;
  padding: 10px 15px 10px 20px;
  background: url(../images/marker.png) no-repeat 5px 16px;
}

#specification-filters ul.specification-filter-list li a:hover {
  background: var(--gabriel-main-color);
  color: #fff;
  padding: 10px 15px;
  text-decoration: none;
  text-shadow: 0 1px 0 var(--gabriel-main-color-darkest);
}

#specification-filters ul.specification-filter-list li span {
  font-weight: bold;
}

#precontent-placeholder,
#aftercontent-placeholder {
  float: left;
  width: 100%;
  margin: 0;
  padding: 0;
}

/* Video */

.video-js {
  background: #000;
  text-shadow: 0 1px 0 #000;
  color: #fff;
}

/* Manager contacts */

div#use-filters + div#lead-magnet-form {
  position: relative;
  display: block;
  clear: both;
}

#manager-contact,
#lead-magnet-form.order-lm {
  float: right;
  margin: 10px 10px 20px;
  padding: 15px;
  width: 200px;
  box-shadow: 0 2px 7px rgba(0, 0, 0, 0.2);
  text-align: center;
  background: #f1f1f1 url(../images/noize-bg-pattern.png) repeat top center;
  position: relative;
}

#lead-magnet-form.order-lm {
  text-align: left;
}

#lead-magnet-form.is-loading::before {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  background: #fff url(../images/preloader.gif) no-repeat center center;
  left: 0;
  top: 0;
  z-index: 100;
}

#manager-contact > .heading,
#lead-magnet-form.order-lm > .heading {
  float: left;
  clear: both;
  font-weight: bold;
  font-size: 18px;
  text-transform: uppercase;
  width: 100%;
  border-bottom: 1px dotted #eee;
  margin: 0 0 10px;
  padding: 0;
  height: auto;
  line-height: 20px;
  color: #999;
  padding: 0 0 10px;
  font-family: "PT Sans Narrow";
}

#manager-contact > .phone {
  float: left;
  width: 100%;
  clear: both;
  margin: 0 0 20px;
  padding: 0;
  font-size: 18px;
  line-height: 30px;
  font-family: "PT Sans Narrow";
}

#manager-contact > .phone b {
  font-size: 30px;
}

#manager-contact .other-all {
  float: left;
  width: 100%;
  clear: both;
  margin: 10px 0;
}

.button.big.green {
  padding: 13px 20px !important;
}

/* Product */

.product-element {
  display: inline-block;
  position: relative;
  text-align: left;
  width: 360px;
  margin: 0 10px 10px 0;
  padding: 0 0 50px;
  border: 1px solid #ccc;
  background: #fefefe;
  text-decoration: none;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.07);
  border-bottom-width: 3px;
  vertical-align: top;
}

li > .product-element {
  margin: 0;
}

.product-element.mini {
  width: 300px;
}

.product-element:hover {
  box-shadow: 0 1px 5px var(--gabriel-main-color-border);
  border-color: var(--gabriel-main-color-border);
}

.product-element .product-image-wrapper {
  float: left;
  /* background: #fff url(../images/preloader.gif) no-repeat center center; */
  background: #ddd;
  margin: 0;
  width: 100%;
  min-height: 100px;
  overflow: hidden;
  position: relative;
  border-bottom: 1px solid #ccc;
  text-align: center;
  line-height: 0;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
}

.product-element.mini .product-image-wrapper {
  border: none;
}

.product-element .product-image {
  float: none;
  left: -100px;
  position: relative;
}

.product-element .product-image.alternative,
.page_14 .product-element .product-image,
.product-element:not(.parent-13) .product-image {
  left: 0;
  float: none;
}

.product-element.mini .product-image {
  right: auto;
}

.product-element .heading {
  float: left;
  display: block;
  box-sizing: border-box;
  margin: 0;
  width: 100%;
  position: relative;
  text-align: left;
  font-size: 24px;
  line-height: 24px;
  font-weight: bold;
  font-family: "PT Sans Narrow";
  color: #000;
  padding: 20px 20px 10px;
}

.product-element .out-param {
  display: block;
  clear: both;
  width: 100%;
  color: #555;
  font-size: 14px;
  padding: 10px;
  box-sizing: border-box;
}

.product-element .out-param ul {
  width: calc(100% - 20px);
  margin: 0;
}

.product-element .out-param ul li {
  list-style: none;
}

.product-element.mini .heading {
  padding: 20px 20px 7px;
}

.product-element .buybutton {
  position: absolute;
  margin: 0 10px 10px;
  box-sizing: border-box;
  width: calc(100% - 20px);
  text-align: center;
  bottom: 0;
  left: 0;
}

.product-element .price-wrapper {
  float: left;
  position: relative;
  margin: 0;
  width: 100%;
  box-sizing: border-box;
  text-align: center;
  padding: 10px;
  background: rgba(0, 0, 0, 0.5);
  color: #fff;
  text-shadow: 0 1px 0 #000;
  transition: all 200ms linear;
}

.product-element.mini .price-wrapper {
  width: 280px;
}

.product-element:hover .price-wrapper {
  background: rgba(0, 0, 0, 0.8);
}

.product-element .intor-wrapper {
  display: block;
  margin: 10px 0;
  padding: 0 15px;
  color: #444;
}

.product-element.mini .description-placeholder {
  float: left;
  width: 300px;
}

.product-element.mini .description-placeholder span.articul {
  white-space: nowrap;
}

.product-element.mini .description-placeholder span.intor-wrapper {
  padding: 0 20px 25px;
  float: left;
  display: block;
  color: #777;
}

/* Product page */

.articul {
  font-size: 12px;
  color: #bbb;
}

.product-params-wrapper,
.product-color-variants {
  float: left;
  clear: left;
  width: calc(40% - 40px);
  padding: 0 20px 0 0;
  border-right: 1px solid #eee;
  margin: 10px 20px 10px 0;
}

.product-params-wrapper {
  margin-bottom: 40px;
}

.product-params-wrapper .heading,
.product-color-variants .heading {
  display: inline-block;
  text-transform: uppercase;
  font-size: 18px;
  height: 34px;
  line-height: 34px;
  color: #999;
  font-family: "PT Sans Narrow";
  font-weight: bold;
  margin: 0 0 10px;
}

.product-color-variants .heading {
  color: var(--gabriel-main-color-with-dedicated);
}

.product-color-variants span.other-show {
  float: left;
  margin: 5px 0 7px;
  line-height: 26px;
  font-size: 18px;
  color: var(--gabriel-main-color-with-dedicated);
  text-decoration: none;
  border-bottom: 1px dotted var(--gabriel-main-color);
  cursor: pointer;
  font-weight: normal;
}

.product-color-variants span.other-show:hover {
  color: #000;
  border-color: var(--gabriel-main-color);
}

table.product-params-table {
  margin: 0;
}

table.product-params-table th {
  background: var(--gabriel-main-color);
  text-shadow: 0 1px 0 var(--gabriel-main-color-darkest);
  border-color: var(--gabriel-main-color-border);
  color: #fff;
  font-size: 18px;
  text-align: center;
}

ul.product-var-color {
  float: left;
  margin: 0;
  padding: 0;
  width: 100%;
  clear: both;
}

ul.product-var-color > li {
  float: left;
  list-style: none;
  display: block;
  width: 60px;
  height: 60px;
  margin: 0 12px 5px 0;
  padding: 0;
  border: 3px solid #ccc;
}

ul.product-var-color > li:hover {
  border-color: var(--gabriel-main-color-border);
}

ul.product-var-color > li > span {
  overflow: hidden;
  float: left;
  position: relative;
  width: 100%;
  height: 100%;
}

ul.product-var-color > li.var-item > span > img {
  position: absolute;
  left: 0;
  top: 0;
}

ul.product-var-color > li.var-item .zoomed {
  position: relative;
  display: block;
  width: 60px;
  height: 60px;
  background: #f1f1f1 url(../images/preloader.gif) no-repeat center center;
  border: 2px solid #ccc;
  opacity: 0;
  margin: 0;
  z-index: 300;
  transition: all 300ms linear;
}

ul.product-var-color > li.var-item .zoomed .title-t {
  position: absolute;
  top: 15px;
  left: 50%;
  width: 200px;
  font-size: 18px;
  padding: 10px 20px;
  margin: 0 -120px;
  color: #fff;
  font-weight: normal;
  text-shadow: none;
  text-align: center;
}

ul.product-var-color > li.var-item .zoomed .subheading {
  position: absolute;
  bottom: 0;
  left: 0;
  background: #777;
  background: rgba(0, 0, 0, 0.7);
  color: #fff;
  text-shadow: 0 1px 0 #000;
  text-align: center;
  padding: 7px 15px;
  font-size: 16px;
  width: 100%;
  box-sizing: border-box;
}

ul.product-var-color > li.var-item > span:hover {
  overflow: visible;
}

ul.product-var-color > li.var-item > span:hover .zoomed {
  opacity: 1;
  width: 300px;
  height: 300px;
  margin: -120px;
  overflow: hidden;
}

#additional-products-placeholder {
  float: left;
  width: 100%;
  box-sizing: border-box;
  margin: 0;
  padding: 0 30px;
  text-align: center;
  border-top: 1px solid #eee;
}

#additional-products-placeholder #relative-placeholder,
#additional-products-placeholder #inscription-placeholder,
#additional-products-placeholder #proposal-placeholder {
  float: none;
  display: inline-block;
  width: 360px;
  box-sizing: border-box;
  padding: 20px 0;
  margin: 0;
  text-align: center;
  vertical-align: top;
}

#additional-products-placeholder #inscription-placeholder {
  margin: 0 19px;
  border-left: 1px solid #eee;
  border-right: 1px solid #eee;
}

#relative-placeholder .b-header-3,
#inscription-placeholder .b-header-3,
#proposal-placeholder .b-header-3 {
  float: left;
  clear: both;
  font-weight: bold;
  font-size: 18px;
  text-transform: uppercase;
  width: calc(100% - 40px);
  box-sizing: border-box;
  border-bottom: 1px dotted #eee;
  margin: 0 20px 10px;
  padding: 0;
  height: 34px;
  text-align: center;
  line-height: 34px;
  color: #999;
  font-family: "PT Sans Narrow";
}

#proposal-placeholder .proposal-in-image .product-element .product-image {
  right: 0;
  width: 240px;
  height: auto !important;
}

#other-out-carousel .product-element .product-image:not(.alternative) {
  right: 280px;
}

/* Callback popup */

.popup#callback {
  display: none;
  z-index: 301;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
  border-bottom: 2px solid #ccc;
  width: 200px;
  top: 195px;
  padding: 50px 15px 0;
  background: #f1f1f1 url(../images/noize-bg-pattern.png) repeat top center;
}

.popup#callback input[type="text"] {
  width: 180px;
  font-size: 16px;
}

.popup#callback input[type="submit"] {
  width: 200px;
}

#additional-products-placeholder #relative-placeholder .product-element,
#additional-products-placeholder #inscription-placeholder .product-element,
#additional-products-placeholder #proposal-placeholder .product-element {
  float: none;
  display: inline-block;
}

/* Sell buttons */

ul.sell-buttons-list,
.sell-button {
  float: left;
  display: block;
  position: relative;
  width: 100%;
  height: auto;
  margin: 10px 0 0;
  padding: 10px 15px;
  box-sizing: border-box;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
  border-bottom: 2px solid #ccc;
  text-align: center;
  background: #f1f1f1 url(../images/noize-bg-pattern.png) repeat top center;
}

ul.sell-buttons-list {
  border-top: 1px solid #ccc;
  text-align: center;
  white-space: nowrap;
}

.sell-button {
  margin: 0 20px 20px 0;
}

.sell-button:hover {
  border-bottom-color: var(--gabriel-main-color-darkest);
  background: var(--gabriel-main-color);
  text-decoration: none;
  overflow: hidden;
}

.sell-button.bordered {
  background: #24b4b0;
  color: #fff;
  text-shadow: 0 1px 0 #ffffff50;
  border: 2px solid var(--gabriel-main-color-border);
}
.sell-button.bordered:hover {
  background: #333;
}

.sell-button:hover a {
  text-shadow: 0 1px 0 var(--gabriel-main-color-darkest);
  color: #fff;
}

.sell-button:hover a img {
  font-weight: bold;
  opacity: 0;
  margin-left: -42px;
}

ul.sell-buttons-list > li {
  float: none;
  display: inline-block;
  padding: 0 15px 0;
  margin: 0;
  vertical-align: top;
}

ul.sell-buttons-list > li:first-child {
  text-align: left;
}

ul.sell-buttons-list > li:last-child {
  text-align: right;
}

ul.sell-buttons-list > li a,
ul.sell-buttons-list > li span,
.sell-button > a,
.sell-button > span {
  display: inline-block;
  border-radius: 2px;
  padding: 2px 10px;
  text-decoration: none;
  text-align: left;
  cursor: pointer;
  color: var(--gabriel-main-color-border);
  font-size: 24px;
  white-space: nowrap;
  font-family: "PT Sans Narrow";
  transition: all 200ms linear;
  height: 33px;
  line-height: 33px;
}

ul.sell-buttons-list > li a:hover,
ul.sell-buttons-list > li span:hover {
  color: #fff;
  background: var(--gabriel-main-color);
  text-decoration: none;
  overflow: hidden;
  text-transform: uppercase;
  text-shadow: 0 1px 0 var(--gabriel-main-color-darkest);
}

ul.sell-buttons-list > li img,
.sell-button img {
  transition: all 200ms linear;
  position: relative;
  margin: 0 10px -7px 0;
}

ul.sell-buttons-list > li a:hover img,
ul.sell-buttons-list > li span:hover img {
  opacity: 0;
  margin-left: -42px;
}

/* gallery */

.gallery {
  float: left;
  width: 100%;
  margin: 0 0 20px;
  background: none;
  padding: 0;
  text-align: left;
}

.gallery .gallery-item {
  display: inline-block;
  vertical-align: middle;
  margin: 7px;
  width: 200px;
  height: auto;
  max-height: 150px;
  overflow: hidden;
  background: #fff;
  position: relative;
  border: 7px solid #ccc;
  transition: border-color 200ms linear;
}

.gallery .gallery-item:hover {
  border-color: var(--gabriel-main-color-border);
}

/*.gallery .gallery-item img,
.gallery .gallery-item span {
	float: left;
	display: block;
	margin: 0;
	padding: 0;
}*/

.gallery .gallery-item > span {
  display: block;
  float: left;
  margin: 0;
  padding: 0;
}

.gallery .gallery-item .floater {
  display: none;
}

.gallery .gallery-item > span img {
  display: inline-block;
  vertical-align: middle;
}

/* Player */

.video-frame-wrapper {
  display: inline-block;
  position: relative;
  margin: 5px;
  background: #ccc;
  padding: 5px;
}

aside#our-production .video-frame-wrapper {
  width: 545px;
}

aside#our-production .video-frame-wrapper .video-js {
  width: 100% !important;
}

.video-frame-wrapper .heading {
  position: absolute;
  z-index: 101;
  background: #ccc;
  color: #000;
  top: 0;
  right: 0;
  text-shadow: 0 1px 0 #fff;
  font-size: 18px;
  font-weight: bold;
  font-family: "PT Sans Narrow";
  padding: 7px 20px;
}

/*article .video-frame-wrapper:nth-child(2n) {
	clear: left;
}*/

.vjs-default-skin .vjs-play-progress,
.vjs-default-skin .vjs-volume-level {
  background-color: var(--gabriel-main-color-border) !important;
}

.vjs-error .vjs-error-display:before {
  content: "\00D7" !important;
  text-shadow: none !important;
  font-size: 560px !important;
  font-weight: normal !important;
  opacity: 0.2 !important;
}

.vjs-big-play-button {
  margin: -1.3em -2em !important;
  top: 50% !important;
  left: 50% !important;
}

/* Our works */

#our-works-link,
#discount-link,
#stone-catalog-page-link {
  float: left;
  width: 260px;
  margin: 20px 0 0;
  background: #f1f1f1 url(../images/noize-bg-pattern.png) repeat top center;
  padding: 10px 20px;
  font-family: "PT Sans Narrow";
  font-size: 24px;
  font-weight: bold;
  color: #333;
  height: 40px;
  line-height: 40px;
  border-bottom: 3px solid #dfdfdf;
  text-decoration: none;
  box-shadow: 0 2px 15px rgba(0, 0, 0, 0.1);
  text-align: left;
}

#discount-link,
#stone-catalog-page-link {
  width: 100%;
  font-size: 22px;
  margin: 0 0 20px;
  height: 60px;
  box-sizing: border-box;
  text-align: center;
  white-space: nowrap;
}

#our-works-link:hover,
#discount-link:hover {
  color: var(--gabriel-main-color-border);
  background: #fff;
  box-shadow: 0 2px 15px rgba(0, 0, 0, 0.2);
}

#our-works-link img {
  float: left;
  position: relative;
  margin: 5px 15px -5px 0;
}

/* Cover */

#cover {
  position: relative;
  background-color: #eee;
  background-position: top center;
  background-repeat: no-repeat;
  background-size: 1200px auto;
  width: 100%;
  box-sizing: border-box;
  padding: 20px;
  height: 350px;
  float: left;
  transition: all 100ms linear;
}

#cover:after {
  content: "";
  display: block;
  position: absolute;
  background: url(../images/cover-overlay.png) no-repeat center bottom;
  background-size: 101% auto;
  width: 100%;
  height: 22px;
  overflow: hidden;
  left: 0;
  bottom: 0;
  z-index: 99;
}

#product #cover:hover {
  background-size: 1300px auto;
}

#cover.alternative-header,
#product #cover.alternative-header:hover {
  background: #eee !important;
  background: linear-gradient(to top, #eee, #f6f6f6) !important;
  height: auto;
  padding: 0;
  box-sizing: border-box;
  width: calc(100%);
}

#cover.alternative-header .pageheader {
  float: right;
  margin: 0;
  box-sizing: border-box;
  padding: 20px 40px 0 0;
  text-align: left;
  width: 570px;
  max-width: initial;
}

#cover.alternative-header .price-wrapper {
  bottom: 30px;
}

#cover.alternative-header img.alternative-cover-image {
  position: relative;
  left: 0;
  top: 0;
}

#cover.alternative-header:after {
  display: none;
  visibility: hidden;
}

#cover .pageheader {
  font-family: "PT Sans Narrow";
  color: #222;
  text-shadow: 0 1px 0 #fff;
  font-weight: bold;
  font-size: 30px;
  line-height: 30px;
  margin: 10px 0 0 20px;
  max-width: 430px;
}

#cover .articul {
  margin: 5px 0 30px 20px;
  display: block;
  width: 200px;
  clear: both;
  color: #333;
}

#cover .price-wrapper,
.small-product-image-placeholder .price-wrapper {
  clear: both;
  position: absolute;
  bottom: 50px;
  margin: 0 0 0 20px;
  padding-right: 10px;
  background: #777;
  background: rgba(0, 0, 0, 0.5);
  border-radius: 2px;
  color: #fff;
  text-shadow: 0 1px 0 #000;
  display: flex;
  align-items: center;
  height: 38px;
  min-width: 350px;
  width: auto;
}

#cover .price-wrapper > span:not([class]),
.small-product-image-placeholder .price-wrapper > span:not([class]) {
  padding: 10px 15px;
  margin-right: 10px;
  position: relative;
  border-radius: 2px 0 0 2px;
  display: block;
  background: var(--gabriel-main-color);
  color: #fff;
  text-shadow: 0 1px 0 var(--gabriel-main-color-darkest);
}

.small-product-image-placeholder + .video-schema {
  margin: 0 0 50px;
  width: 60%;
  text-align: center;
  background: #000;
}

.small-product-image-placeholder + .video-schema iframe {
  display: inline-block;
  vertical-align: top;
  float: none;
  width: 100% !important;
}

/* product */

#catalog-out-placeholder {
  text-align: center;
  /*
    float: right;
    width: 750px; */
}
/* 
#catalog-out-placeholder-full {
    float: left;
    width: 100%;
    box-sizing: border-box;
} */
/* 
#catalog-out-placeholder .product-element:nth-child(3n) {
    margin: 0 0 10px 0;
} */

/* inner small product */

.product-small.heading-wrapper,
.product-small.heading-wrapper .articul {
  float: left;
  width: 100%;
  clear: both;
}

.small-product-image-placeholder {
  position: relative;
  float: left;
  clear: left;
  width: calc(40% - 20px);
  padding: 0 0;
  margin: 10px 20px 70px 0;
}

.small-product-image-placeholder img {
  float: left;
  display: block;
  width: 100%;
}

.small-product-image-placeholder .price-wrapper {
  position: absolute;
  left: 0;
  bottom: 0;
  margin: 0;
  min-width: 250px;
  width: calc(100% - 10px);
}

/* other elements */

ul.elements-list {
  float: left;
  width: 880px;
  margin: 40px 20px 20px;
}

ul.elements-list li {
  float: left;
  display: block;
  position: relative;
  background: #fff url(../images/preloader.gif) no-repeat center center;
  margin: 9px;
  list-style: none;
  width: 200px;
  height: auto;
  overflow: hidden;
  border: 1px solid #eee;
}

ul.elements-list li:hover {
  border-color: #ccc;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

.other-var-element .subheading {
  position: relative;
  float: left;
  clear: both;
  height: 20px;
  line-height: 20px;
  padding: 10px;
  width: 180px;
  background: #777;
  background: rgba(0, 0, 0, 0.7);
  color: #fff;
  text-shadow: 0 1px 0 #000;
  text-align: center;
  font-size: 14px;
  font-weight: bold;
}

/* Work Gallery */

#main-content-placeholder .gallery-menu-item {
  float: left;
  display: block;
  position: relative;
  width: 550px;
  padding: 0;
  height: 400px;
  line-height: 140px;
  margin: 0 9px 20px;
  overflow: hidden;
  border: 1px solid #ccc;
  background: #efefef url(../images/preloader.gif) no-repeat center center;
}

.gallery-menu-item:first-child {
  clear: left;
}

#main-content-placeholder .gallery-menu-item:hover {
  box-shadow: 0 0 0 5px var(--gabriel-main-color-border);
  border-color: var(--gabriel-main-color-border);
}

#main-content-placeholder .gallery-menu-item img {
  margin: 0;
  width: inherit;
}

#main-content-placeholder .gallery-menu-item .heading {
  position: absolute;
  float: left;
  clear: both;
  height: 20px;
  left: 0;
  bottom: 0;
  line-height: 20px;
  padding: 10px 15px;
  width: 550px;
  white-space: nowrap;
  background: #777;
  background: rgba(0, 0, 0, 0.7);
  color: #fff;
  text-shadow: 0 1px 0 #000;
  text-align: center;
  font-size: 20px;
  font-weight: bold;
}

/* Article IMG */

article img.justifyleft {
  float: left;
  margin: 0 20px 20px 0;
  padding: 0;
}

article img.justifyright {
  float: right;
  margin: 0 0 20px 20px;
  padding: 0;
}

/* Counters */

a.metrika-informer {
  float: right;
  margin: 0;
  padding: 0;
  text-decoration: none;
  border: none;
}

/* Alert message */

#alert-message {
  float: left;
  padding: 20px;
  width: 100%;
  box-sizing: border-box;
  font-size: 22px;
  font-family: "PT Sans Narrow";
  font-weight: bold;
  text-align: center;
  background: var(--gabriel-main-color);
  color: #c2fff8;
  text-shadow: 0 1px 0 var(--gabriel-main-color-darkest);
  border: 1px solid var(--gabriel-main-color-border);
}

#alert-message:empty {
  display: none;
}

#banner {
  position: relative;
  float: left;
  padding: 20px 70px;
  width: 100%;
  box-sizing: border-box;
  font-size: 22px;
  line-height: 30px;
  font-family: "PT Sans Narrow";
  font-weight: bold;
  text-align: center;
  background: linear-gradient(to top, #efefef, #fff);
  border-bottom: 1px solid #eee;
  overflow: hidden;
}

#banner > span {
  display: inline-block;
  padding: 0 50px;
  margin: -10px;
  position: absolute;
  left: -20px;
  top: 50%;
  background: linear-gradient(to top, #fdc037, #fddd1c);
  border-bottom: 1px solid #fdc037;
  color: #111;
  line-height: 20px;
  text-shadow: 0 1px 0 #ffe759;
  font-size: 12px;
  transform: rotate(-55deg);
}

/* callback */

#callback-form input[type="text"],
#callback-form input[type="tel"] {
  width: 280px;
}

#cbksubmit {
  float: right;
}

/* epitaphy-out-item */

.epitaphy-out-item {
  display: inline-block;
  vertical-align: top;
  float: none;
  width: 330px;
  height: auto;
  padding: 0 25px;
  margin: 50px 0;
  background: url(../images/epitaphy-line.png) repeat-y center top;
  background-size: 100%;
  position: relative;
}

.epitaphy-out-item:before,
.epitaphy-out-item:after {
  content: "";
  position: absolute;
  left: 0;
  display: block;
  width: 100%;
  height: 50px;
  background: url(../images/epitaphy-bg.png) no-repeat center top;
  background-size: 100%;
}

.epitaphy-out-item:before {
  top: -50px;
}

.epitaphy-out-item:after {
  bottom: -50px;
  background-position: center bottom;
}

#inscription-placeholder .epitaphy-out-item {
  width: 250px;
  height: auto;
}

.epitaphy-out-item .heading {
  float: left;
  width: 100%;
  clear: both;
  text-align: center;
  font-weight: bold;
  font-family: "PT Sans Narrow";
  font-size: 24px;
  border-bottom: 1px dotted #ccc;
  padding: 0 0 25px;
  margin: 0 0 5px;
}

#inscription-placeholder .epitaphy-out-item .heading {
  white-space: nowrap;
  padding: 0 0 10px;
  font-size: 20px;
  margin: 0 0 7px;
}

.epitaphy-out-item .epitaphy-text {
  float: left;
  width: 100%;
  clear: both;
  margin: 0;
  padding: 0;
  overflow: hidden;
}

.epitaphy-out-item .epitaphy-text pre {
  font-family: "PT Sans";
  line-height: 24px;
  font-size: 18px;
  text-align: left;
  margin: 0;
  padding: 0;
  white-space: normal;
}

#inscription-placeholder .epitaphy-out-item .epitaphy-text pre {
  font-size: 14px;
  line-height: 16px;
}

/* Relative */
/* 
#relative-placeholder .product-element {
    margin: 0 30px 15px;
}

#relative-placeholder .product-element:last-child {
    margin: 0 30px;
} */

/* aftercontent */

section#utp-block,
aside#our-production,
aside#our-stones,
aside#our-works,
aside#our-sketches,
aside#our-fences {
  float: left;
  width: 100%;
  clear: both;
  padding: 20px 32px;
  margin: 0;
  box-sizing: border-box;
}

section#utp-block,
aside#our-stones,
aside#our-sketches {
  background: rgba(0, 0, 0, 0.05);
}

aside#our-production > .header-placeholder,
aside#our-stones > .header-placeholder,
aside#our-works > .header-placeholder,
aside#our-sketches > .header-placeholder,
aside#our-fences > .header-placeholder {
  float: left;
  width: 100%;
  clear: both;
  margin: 0 0 20px;
}

aside#our-production > .header-placeholder .heading,
aside#our-stones > .header-placeholder .heading,
aside#our-works > .header-placeholder .heading,
aside#our-sketches > .header-placeholder .heading,
aside#our-fences > .header-placeholder .heading {
  font-weight: bold;
  font-size: 24px;
  font-family: "PT Sans Narrow";
  color: #000;
  text-decoration: none;
  border-bottom: 1px dotted var(--gabriel-main-color-border);
}

aside#our-production > .header-placeholder .heading:hover,
aside#our-stones > .header-placeholder .heading:hover,
aside#our-works > .header-placeholder .heading:hover,
aside#our-sketches > .header-placeholder .heading:hover,
aside#our-fences > .header-placeholder .heading:hover {
  border-bottom-style: solid;
}

aside#our-works .gallery-menu-item {
  float: left;
  margin: 10px;
  width: 430px;
  height: 280px;
  overflow: hidden;
  background: #fff;
  position: relative;
  border: 7px solid #ccc;
  transition: border-color 200ms;
}

aside#our-works .gallery-menu-item:hover {
  border-color: var(--gabriel-main-color-border);
}

aside#our-works .gallery-menu-item {
}

aside#our-stones .product-image-wrapper > img {
  min-height: 300px;
  width: 1000px;
  left: -460px;
}

.in-o-buttons-inline {
  float: left;
  width: 100%;
  clear: both;
  margin: 20px 0;
  text-align: center;
}

.sell-button {
  border: 1px solid var(--gabriel-main-color-border);
}

.in-o-buttons-inline .sell-button {
  float: none;
  vertical-align: top;
  display: inline-block;
  margin-top: 0;
  margin-bottom: 0;
}

.product-info-add-bordered {
  display: inline-block;
  padding: 14px;
  border: 1px solid #e00;
  color: #e00;
  font-size: 14px;
  line-height: 16px;
}

article div.justifyright {
  text-align: right;
}

a[data-type="dedicated"] {
}

.side-content-wrapper {
  float: right;
  width: 100%;
}

aside#filters + .side-content-wrapper {
  width: calc(100% - 190px);
}

h1.clear,
h2.clear,
h3.clear,
h4.clear,
h5.clear {
  clear: right;
  clear: left;
}

.content-add {
  display: inline-block;
  float: right;
  clear: right;
}

#catalog-out-placeholder + .content-add {
  display: block;
  margin-top: 30px;
  width: 100%;
}

/* add carousel */

#other-products-carousel {
  padding: 20px 30px;
  box-sizing: border-box;
  margin: 0;
  width: 100%;
  clear: both;
  border-top: 1px solid #eee;
}

#other-products-carousel .arrow {
  position: absolute;
  z-index: 100;
  width: 30px;
  height: 310px;
  left: 20px;
  bottom: auto;
  background: url(../images/arrows.png) no-repeat left center;
  text-indent: -999px;
  overflow: hidden;
  cursor: pointer;
  opacity: 0.5;
  transition: all 200ms linear;
}

#other-products-carousel .arrow:nth-child(2) {
  background-position: right center;
  left: auto;
  right: 20px;
}

#other-products-carousel .arrow:hover {
  opacity: 1;
}

#other-products-carousel h2 {
  display: block;
  float: left;
  clear: both;
  font-weight: bold;
  font-size: 18px;
  text-transform: uppercase;
  width: 100%;
  margin: 0 20px 10px;
  padding: 0;
  height: 34px;
  text-align: center;
  line-height: 34px;
  color: #999;
  font-family: "PT Sans Narrow";
}

#other-out-carousel {
  display: block;
  width: auto;
  height: auto;
  margin: 0 auto;
  white-space: nowrap;
  text-align: center;
}

#other-out-carousel ul li {
  margin: 0 15px;
}

/*discount, popular*/

.adapt-shild,
.popular-shild,
.discount-shild {
  display: block;
  position: absolute;
  left: -6px;
  top: 3px;
  height: 20px;
}

aside#cover .popular-shild {
  top: 3px;
}

aside#cover .discount-shild {
}

.product-element > .discount-shild + .popular-shild {
  top: 29px;
}

.adapt-shild > span,
.popular-shild > span,
.discount-shild > span {
  display: block;
  white-space: nowrap;
  position: absolute;
  left: 0;
  top: 0;
  background: #ff9f3f;
  padding: 0 7px;
  font-weight: bold;
  font-family: "PT Sans Narrow";
  color: #fff;
  font-size: 15px;
  line-height: 28px;
  text-shadow: 0 1px 0 #d06800;
  border-top: 1px solid #ffedda;
  border-bottom: 1px solid #d06800;
  z-index: 18;
}

.discount-shild > span {
  background: var(--gabriel-main-color-with-dedicated-darkest);
  color: #fff;
  text-shadow: 0 1px 0 #100;
  border-top-color: #fe0000;
  border-bottom-color: #9a0000;
}

.adapt-shild:before,
.popular-shild:before,
.discount-shild:before {
  content: "";
  position: absolute;
  border-color: transparent #8e4700 transparent transparent;
  bottom: -15px;
  left: -5px;
  width: 0;
  height: 0;
  border-width: 5px;
  border-style: solid;
  z-index: 1;
}

.discount-shild:before {
  border-color: transparent #540000 transparent transparent;
}

.popular-shild > span {
  text-transform: uppercase;
}

.old-price {
  display: inline-block;
  vertical-align: bottom;
  text-decoration: line-through;
  background: var(--gabriel-main-color-with-dedicated-darkest);
  text-shadow: none;
  margin: 0 5px;
  padding: 0 5px;
  font-size: 11px;
  border-bottom: 1px solid #540000;
}

/* search */

aside#search-out {
  float: left;
  position: relative;
  width: 100%;
  clear: both;
  box-sizing: border-box;
  background: rgba(255, 255, 255, 0.2);
  border-bottom: 1px solid #e4e4e4;
  padding: 10px 20px;
}

aside#search-out.maxed {
  position: fixed;
  left: 50%;
  top: 10%;
  height: 80%;
  width: 1000px;
  margin: 0 -500px;
  background: #fefefe;
  border: 1px solid #ccc;
  box-shadow: 0 4px 40px rgba(0, 0, 0, 0.2),
    0 0 0 2048px rgba(255, 255, 255, 0.9);
  z-index: 500;
  padding: 50px 20px 20px;
}

.return-to-small {
  position: absolute;
  top: 0;
  right: 0;
  height: 30px;
  line-height: 30px;
  width: 30px;
  font-size: 24px;
  font-weight: bold;
  color: #777;
  text-align: center;
  background: #eee;
  cursor: pointer;
  transition: all 0.2s linear;
}

.return-to-small:hover {
  color: #fff;
  font-size: 30px;
  background: var(--gabriel-main-color-border);
  text-shadow: none;
}

aside#search-out > .return-to-small,
aside#search-out > #flysearch-results-placeholder {
  display: none;
}

aside#search-out.maxed > .return-to-small {
  display: block;
}

aside#search-out input {
  width: 100%;
  border: 1px solid #ccc;
  border-radius: 0;
  box-sizing: border-box;
  height: 34px;
  line-height: 34px;
  padding: 0px 10px 0 32px !important;
  background: #fefefe url(../images/search.svg) no-repeat 7px center;
  background-size: 20px 20px;
  transition: all 0.2s linear;
}

aside#search-out input:hover,
aside#search-out input:focus {
  border-color: var(--gabriel-main-color);
  box-shadow: 0 0 0 2px var(--gabriel-main-color),
    0 1px 7px 1px var(--gabriel-main-color);
}

#flysearch-results-placeholder.loading {
  background: url(../images/preloader.gif) no-repeat center center;
}

#flysearch-results-placeholder.loading > * {
  filter: blur(5px);
  opacity: 0.5;
}

aside#search-out.maxed > #flysearch-results-placeholder {
  display: block;
  position: absolute;
  left: 0;
  top: 120px;
  height: calc(100% - 120px);
  width: 100%;
  padding: 20px 20px 0 20px;
  box-sizing: border-box;
  overflow: hidden;
  overflow-y: auto;
  border-top: 1px solid #ccc;
}

a.search-item {
  display: inline-block;
  vertical-align: top;
  width: 100%;
  clear: both;
  margin: 0 0 20px;
  border-bottom: 1px dotted #eee;
  padding: 10px;
  text-decoration: none;
  color: #222;
  font-weight: normal;
  transition: all 0.2s linear;
  box-sizing: border-box;
  border: 1px solid transparent;
}

a.search-item:hover {
  background: #eee;
  border-color: #ccc;
}

a.search-item img {
  max-height: 100px;
  float: right;
}

a.search-item .pagetitle,
a.search-item .introtext {
  display: inline-block;
  vertical-align: top;
  max-width: 760px;
}

a.search-item .pagetitle {
  font-weight: bold;
  font-size: 30px;
  line-height: 30px;
  margin: 0 0 10px;
}

a.search-item .introtext {
}

/* full size contacts */

aside#contacts-placeholder {
  display: block;
  float: left;
  width: 100%;
  position: relative;
  padding: 0;
  background: #fefefe;
  border-bottom: 1px solid #e4e4e4;
}

aside#contacts-placeholder .contact-out-item {
  display: block;
  clear: both;
  width: 100%;
  box-sizing: border-box;
  padding: 10px 20px;
  margin: 0;
  border-bottom: 1px solid #eee;
}

aside#contacts-placeholder .contact-out-item:nth-child(odd) {
  background: rgba(0, 0, 0, 0.05);
}

aside#contacts-placeholder .contact-out-item .heading {
  display: inline-block;
  vertical-align: middle;
  margin: 0;
  font-size: 20px;
  font-family: "PT Sans Narrow";
  white-space: normal;
  min-width: 60px;
  font-weight: bold;
}

aside#contacts-placeholder
  .contact-out-item
  .heading
  .region:not(:empty):before {
  content: " и ";
}

aside#contacts-placeholder .contact-out-item .heading > i {
  display: block;
  float: left;
  height: 30px;
  width: 30px;
  margin: 5px 12px 0 0;
  background-size: contain !important;
}

aside#contacts-placeholder .contact-out-item .heading > img {
  display: inline-block;
  vertical-align: middle;
  margin: 0 10px 0 0;
}

aside#contacts-placeholder .contact-out-item.minsk .heading > i {
  background: url(/assets/images/city/minsk-obl.png) no-repeat center center;
}

aside#contacts-placeholder .contact-out-item.brest .heading > i {
  background: url(/assets/images/city/brest-obl.png) no-repeat center center;
}

aside#contacts-placeholder .contact-out-item.gomel .heading > i {
  background: url(/assets/images/city/gomel-obl.png) no-repeat center center;
}

aside#contacts-placeholder .contact-out-item.grodno .heading > i {
  background: url(/assets/images/city/grodno-obl.png) no-repeat center center;
}

aside#contacts-placeholder .contact-out-item.vitebsk .heading > i {
  background: url(/assets/images/city/vitbsk-obl.png) no-repeat center center;
}

aside#contacts-placeholder .contact-out-item.mogilev .heading > i {
  background: url(/assets/images/city/mogilev-obl.png) no-repeat center center;
}

aside#contacts-placeholder .contact-out-item .place,
aside#contacts-placeholder .contact-out-item .time,
aside#contacts-placeholder .contact-out-item .phone {
  display: inline-block;
  vertical-align: top;
  width: auto;
}

aside#contacts-placeholder .contact-out-item .place,
aside#contacts-placeholder .contact-out-item .phone {
  margin: 0 0 0 20px;
}

aside#contacts-placeholder .contact-out-item .time {
}

aside#contacts-placeholder .contact-out-item .phone {
  text-align: right;
  white-space: nowrap;
}

aside#contacts-placeholder .contact-out-item .place > i,
aside#contacts-placeholder .contact-out-item .time > i,
aside#contacts-placeholder .contact-out-item .phone > i {
  display: inline-block;
  margin: 0 5px 0 0;
  height: 20px;
  vertical-align: top;
}

aside#contacts-placeholder .contact-out-item .place > i {
  width: 12px;
  background: url(../images/top-contacts-sprite.png) no-repeat left center;
}

aside#contacts-placeholder .contact-out-item .time > i {
  width: 18px;
  background: url(../images/top-contacts-sprite.png) no-repeat right center;
}

aside#contacts-placeholder .contact-out-item .phone > i {
  width: 20px;
  background: url(../images/top-contacts-sprite.png) no-repeat center center;
}

aside#contacts-placeholder > .other-info {
  display: block;
  box-sizing: border-box;
  padding: 3px 20px;
  background: #eaeaea;
  height: 40px;
  line-height: 32px;
  font-size: 16px;
  border-top: 1px solid #ccc;
}

/* floated header */

.floated-header {
  display: none;
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  min-width: 100%;
  background: #fefefe;
  background: linear-gradient(to bottom, #fefefe, #fff);
  border-bottom: 1px solid #eee;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.2);
  z-index: 100;
}

.floated-header ul.phones {
  display: block;
  float: left;
  width: auto;
  padding: 0;
  margin: 12px 20px;
}

.floated-header ul > li.phone {
  display: inline-block;
  height: 20px;
  padding: 0;
  line-height: 20px;
  color: #aaa;
  margin: 0 20px 0 0;
}

.floated-header ul > li.phone b {
  color: #111;
}

.floated-header ul > li.phone > i {
  float: left;
  display: block;
  height: 20px;
  width: 17px;
  margin: 0 12px 0 0;
  background: url(../images/top-contacts-sprite.png) no-repeat center center;
}

.floated-header > .callback-caller {
  width: auto;
  margin: 5px;
}

.floated-header a,
.floated-header a:hover {
  color: inherit;
  text-decoration: none;
}

/* cities */
.catalog-list-footer,
.city-list-footer {
  display: inline-block;
  vertical-align: top;
  position: relative;
  margin: 0 0 0 40px;
}

.current-catalog.changer.list-caller .current-city.changer.list-caller {
  position: relative;
  padding: 0 20px 0 0;
  margin: 5px 0 0;
  display: inline-block;
  font-size: 12px;
  color: #333;
  border-bottom: var(--gabriel-main-color-lightest) 1px dotted;
  cursor: pointer;
}
.current-catalog.changer.list-caller:hover,
.current-city.changer.list-caller:hover {
  border-bottom-style: solid;
}

.current-catalog.changer.list-caller:after,
.current-city.changer.list-caller:after {
  position: absolute;
  content: "";
  display: block;
  width: 0;
  height: 0;
  border: 7px solid transparent;
  border-top-color: #ccc;
  right: 0;
  top: 6px;
  transition: all 0.2s linear;
  cursor: pointer;
}
.current-catalog.changer.list-caller:hover:after,
.current-city.changer.list-caller:hover:after {
  border-top-color: #333;
}

ul.catalog-popup-list,
ul.cities-list {
  position: absolute;
  left: 0;
  top: 44px;
  height: 0;
  opacity: 0;
  transition: all 0.2s linear;
  height: 0;
  width: 100%;
  overflow: hidden;
}
ul.catalog-popup-list.active,
ul.cities-list.active {
  opacity: 1;
  height: 140px;
  overflow-y: scroll;
  padding: 10px 0;
  background: #fff;
  box-shadow: 0 2px 15px rgba(0, 0, 0, 0.2);
  border-bottom: 3px solid #ccc;
  z-index: 5;
}
ul.catalog-popup-list > li,
ul.cities-list > li {
  display: block;
  clear: both;
  width: 100%;
  line-height: 24px;
  font-size: 13px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  padding: 0 10px;
  box-sizing: border-box;
}
ul.catalog-popup-list > li:nth-child(odd),
ul.cities-list > li:nth-child(odd) {
  background: rgba(0, 0, 0, 0.025);
}
ul.catalog-popup-list > li a,
ul.catalog-popup-list > li span,
ul.cities-list > li a,
ul.cities-list > li span {
}

ul.catalog-popup-list > li span,
ul.cities-list > li span {
  font-weight: bold;
  color: #111;
}

/* older assets */

aside#lead-magnet-form {
  padding: 20px;
  background: #fff;
  text-align: center;
  border-top: 1px dotted #ccc;
}

aside#lead-magnet-form form {
  display: block;
  width: 100%;
  max-width: 400px;
  margin: 0 auto;
}

aside#lead-magnet-form label {
  margin: 0 0 10px !important;
}

#catalog-grid + #lead-magnet-form {
  display: inline-block;
  float: left;
  margin: 20px 0;
  padding: 15px;
  width: 270px;
  background: #ccc;
  border: 1px solid #ccc;
  box-shadow: 0 2px 15px rgba(0, 0, 0, 0.15);
}

#catalog-grid.fullwidth + aside#lead-magnet-form,
#product aside#additional-products-placeholder + aside#lead-magnet-form {
  box-sizing: border-box;
  width: 100%;
  clear: both;
  margin: 0;
  box-shadow: none;
  border: none;
  border-top: 1px dotted #ccc;
  border-bottom: 1px solid #ccc;
  padding: 15px 30px;
}

#catalog-grid.fullwidth + aside#lead-magnet-form {
  background: #fff;
  border-top: 1px dotted #aaa;
  border-bottom: 1px solid #aaa;
}

#product aside#additional-products-placeholder + aside#lead-magnet-form form,
#main #catalog-grid.fullwidth + aside#lead-magnet-form form {
  width: 100%;
}

#product
  aside#additional-products-placeholder
  + aside#lead-magnet-form
  form
  label,
#main #catalog-grid.fullwidth + aside#lead-magnet-form label {
}

#product
  aside#additional-products-placeholder
  + aside#lead-magnet-form
  form
  input,
#main #catalog-grid.fullwidth + aside#lead-magnet-form input {
  height: 40px;
  line-height: 20px;
}

#product aside#additional-products-placeholder + aside#lead-magnet-form {
  position: relative;
  float: left;
  border-bottom: none;
  margin: 0 1px -9px;
  width: calc(100% - 2px);
  background: #fff;
}

#product
  aside#additional-products-placeholder
  + aside#lead-magnet-form
  form
  input {
  width: 240px;
}

#catalog aside#lead-magnet-form,
#sort aside#lead-magnet-form,
#inner-mixed aside#lead-magnet-form {
  float: left;
  display: block;
  width: 370px;
  margin: 5px 0 0;
  box-sizing: border-box;
  padding: 20px;
  border: none;
  background: #fff;
  position: relative;
}

#product aside#additional-products-placeholder + aside#lead-magnet-form:before,
#product aside#additional-products-placeholder + aside#lead-magnet-form:after,
#lead-magnet-form.order-lm:before,
#lead-magnet-form.order-lm:after,
#catalog aside#lead-magnet-form:before,
#sort aside#lead-magnet-form:before,
#inner-mixed aside#lead-magnet-form:before,
#catalog aside#lead-magnet-form:after,
#sort aside#lead-magnet-form:after,
#inner-mixed aside#lead-magnet-form:after {
  content: "";
  position: absolute;
  left: -2px;
  top: -2px;
  /*
    background: linear-gradient(45deg, #fb0094, #0000ff, #00ff00, #ffff00, #ff0000, #fb0094,
            #0000ff, #00ff00, #ffff00, #ff0000);
*/
  background: linear-gradient(
    45deg,
    var(--gabriel-main-color-border),
    #27ccbc,
    var(--gabriel-main-color-border),
    #40ecdc,
    var(--gabriel-main-color-border),
    #21b1a3,
    var(--gabriel-main-color-border),
    #1ce6d3,
    var(--gabriel-main-color-border),
    #27ccbc
  );
  background-size: 400%;
  width: calc(100% + 4px);
  height: calc(100% + 4px);
  z-index: -1;
  animation: steam 20s linear infinite;
}

@keyframes steam {
  0% {
    background-position: 0 0;
  }

  50% {
    background-position: 400% 0;
  }

  100% {
    background-position: 0 0;
  }
}

#product aside#additional-products-placeholder + aside#lead-magnet-form:after,
#lead-magnet-form.order-lm:after,
#catalog aside#lead-magnet-form:after,
#sort aside#lead-magnet-form:after,
#inner-mixed aside#lead-magnet-form:after {
  filter: blur(10px);
  opacity: 0.2;
}

#lead-magnet-form form,
#lead-magnet-form form input,
#lead-magnet-form form button {
  box-sizing: border-box;
  width: 100%;
  clear: both;
}

#catalog-grid.fullwidth + #lead-magnet-form form,
#catalog-grid.fullwidth + #lead-magnet-form form input,
#catalog-grid.fullwidth + #lead-magnet-form form button {
  width: 240px;
}

#lead-magnet-form .heading {
  font-size: 22px;
  line-height: 26px;
  font-weight: bold;
  margin: 0 0 10px;
}

#lead-magnet-form.order-lm input[type="submit"],
aside#lead-magnet-form input[type="submit"] {
  background: linear-gradient(to top, #fdc037, #fddd1c);
  border: 2px solid #fdc037;
  color: #000;
  line-height: 30px;
  text-shadow: 0 1px 0 #ffe759;
  font-size: 18px;
}

p.text-uppercase {
  text-transform: uppercase;
}

#catalog-grid.fullwidth {
  float: left;
  width: 100%;
  box-sizing: border-box;
  padding: 0;
  margin: 0;
  font-size: 0;
}

#catalog-grid.fullwidth .catalog-grid-out-item {
  float: left;
  display: block;
  position: relative;
  width: 20%;
  height: 100px;
  background: #fefefe;
  text-align: center;
  overflow: hidden;
}

#catalog-grid.fullwidth .catalog-grid-out-item:nth-child(odd) {
  background: #efefef;
}

#catalog-grid.fullwidth .catalog-grid-out-item img {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
  opacity: 0.8;
  min-width: 100%;
  transition: all 100ms linear;
  opacity: 0.05;
  filter: brightness(140%);
}

#catalog-grid.fullwidth .catalog-grid-out-item:hover img {
  opacity: 1;
}

#catalog-grid.fullwidth .catalog-grid-out-item .heading {
  line-height: 40px;
  padding: 0 12px;
  font-weight: bold;
  width: 200px;
  font-size: 18px;
  text-align: center;
  text-shadow: none;
  position: absolute;
  background: transparent;
  bottom: calc(50% - 20px);
  left: calc(50% - 112px);
  z-index: 5;
  color: #333;
}

#catalog-grid.fullwidth .catalog-grid-out-item:hover .heading {
  background: var(--gabriel-main-color-with-opacity);
  left: 0;
  bottom: 0;
  line-height: 100px;
  height: 100px;
  width: 100%;
  box-sizing: border-box;
  font-size: 22px;
  color: #fff;
}

/* YT wrapper */
.video-schema {
  display: block;
  float: left;
  margin: 0 30px 30px 0;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.25);
}

.video-schema iframe {
  float: left;
}

.video-schema .video-schema-meta {
  display: none;
}

.cart-fixed {
  position: fixed;
  top: 30%;
  right: 0;
  z-index: 901;
}

.cart-btn {
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  width: 63px;
  height: 63px;
  background: #333;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.2);
  transition: 0.2s;
  border-radius: 2px;
}

.cart-fixed .icon {
  width: 34px;
  height: 29px;
  fill: #efefef;
}

.cart-btn > svg path {
  opacity: 1 !important;
}

.cart-btn:hover {
  opacity: 1;
  transform: scale(1.1);
}

.minicart .badge {
  display: block;
  position: absolute;
  top: 10px;
  right: 20px;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  font-weight: bold;
  line-height: 18px;
  text-align: center;
  font-size: 12px;
  background: #ff0000;
  color: #fff;
}

.order-button,
.to-cart {
  position: absolute;
  right: 0;
  background: linear-gradient(to top, #fdc037, #fddd1c);
  border: 1px solid #d4b600;
  color: #000;
  font-size: 18px;
  font-weight: 700;
  display: block;
  margin-left: 10px;
  padding: 13px 15px;
  border-radius: 5px;
  text-shadow: none;
  text-decoration: none;
}

.order-button:hover,
.to-cart:hover {
  color: #000;
  background: linear-gradient(to top, #fddd1c, #fdc037);
}

.buy-button-wrapper {
  float: left;
  clear: left;
  width: calc(40% - 40px);
  height: auto;
  text-align: center;
  margin: 0 40px 40px 0;
}

.buy-button-text {
  margin-top: -30px;
  font-size: 12px;
  margin-bottom: 15px;
}

.buy-button-wrapper .to-cart {
  position: static;
  background: linear-gradient(to bottom, #eee, #efefef);
  border: 1px solid #ddd;
  margin: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  min-width: 90px;
}

.buy-button-wrapper .to-cart:hover {
  background: linear-gradient(to top, #eee, #efefef);
}

/* bitrix24 STYLE fix */
.b24-form-wrapper input,
.b24-form-wrapper input:hover {
  box-shadow: none;
}

article.stones-page-gallery {
  float: left;
  width: 100%;
  clear: both;
  padding: 20px 32px;
  margin: 0;
  box-sizing: border-box;
}

article.stones-page-gallery .stone-page-gallery-item {
  display: block;
  width: 100%;
  clear: both;
}
article.stones-page-gallery .stone-page-gallery-item:not(:last-of-type) {
  border-bottom: 1px dotted #ccc;
  margin-bottom: 30px;
}

article.stones-page-gallery .gallery {
  text-align: center;
}

article.stones-page-gallery .gallery .gallery-item {
  width: auto;
  border-width: 0;
}

article.stones-page-gallery .stone-page-gallery-item .row {
  display: inline-block;
  width: calc(50% - 5px);
  vertical-align: top;
  box-sizing: border-box;
}

article.stones-page-gallery .stone-page-gallery-item .row:first-of-type {
  text-align: center;
  padding-right: 25px;
}

article.stones-page-gallery
  .stone-page-gallery-item
  img.stone-page-gallery-image {
  width: 100%;
}

article.stones-page-gallery .stone-page-gallery-item h3 {
  margin-bottom: 20px;
}

article.stones-page-gallery .stone-page-gallery-item hr {
  background: none;
  border: none;
  border-top: 1px dotted #aaa;
  margin: 20px 0 15px;
  padding: 0;
  display: block;
  clear: both;
}

a.stone-catalog-link {
  font-family: "PT Sans Narrow";
  font-size: 18px;
  height: 34px;
  line-height: 34px;
  color: var(--gabriel-main-color-with-dedicated-darkest);
}

#stone-catalog-page-link {
  color: var(--gabriel-main-color-with-dedicated-darkest);
}

/* #lead-magnet-form .b24-form-wrapper.b24-form-border-bottom {
    border: none !important;
}

#lead-magnet-form .b24-form-wrapper.b24-form-shadow {
    box-shadow: none !important;
} */

button.quiz-caller {
  display: block;
  margin: 20px auto;
  padding: 10px 20px;
  box-sizing: border-box;
  font-size: 16px;
  font-weight: bold;
  text-align: center;
  background: var(--gabriel-main-color);
  color: #fefefe;
  text-shadow: 0 1px 0 var(--gabriel-main-color-darkest);
  border: 1px solid var(--gabriel-main-color-border);
  border-bottom: 4px solid var(--gabriel-main-color-darkest);
  border-radius: 3px;
}

.window#quiz-window {
  top: 10%;
  left: 20%;
  right: 20%;
  width: 60%;
  height: auto;
  margin: 0;
  padding: 0;
  background: #fff;
  border-radius: 15px;
  overflow: hidden;
  border: none;
  border-bottom: 4px solid #ccc;
}

#quiz .errors,
#quiz .complete {
  float: none;
}

.window#quiz-window #quiz {
  height: auto;
  max-height: 70vh;
  overflow: hidden;
  overflow-y: auto;
}

.window#quiz-window #quiz form {
  height: auto;
  overflow: hidden;
}

.window#quiz-window #quiz > p,
.window#quiz-window #quiz .thank-wrapper {
  padding: 30px;
}

.window#quiz-window #quiz .labeled {
  display: flex;
  flex-wrap: nowrap;
  align-content: flex-start;
  justify-content: center;
  align-items: center;
  width: fit-content;
  gap: 20px;
  margin: 0 auto 20px;
}

.window#quiz-window #quiz .labeled > label {
  display: flex;
}

.quiz-header {
  background: #f1f1f1 url(../images/noize-bg-pattern.png) repeat top center;
  padding: 0 50px 0 30px;
  height: 50px;
  border-bottom: 1px solid #eee;
}

.quiz-header .header-content {
  display: block;
  font-weight: bold;
  font-size: 22px;
  font-family: "PT Sans Narrow";
  color: #333;
  text-align: center;
  display: none;
}

.quiz-pages-counter {
  display: flex;
  width: 50px;
  margin: 20px;
  margin-left: auto;
  font-size: 18px;
  text-align: center;
  background: #fff;
  border-radius: 3px;
  padding: 5px 10px;
  box-shadow: 0 2px 7px rgb(0 0 0 / 10%);
}

.quiz-pages-counter .current {
  color: #00796b;
}

.quiz-pages-counter .all {
  font-weight: bold;
}

.quiz-pages-counter .all:before {
  display: inline-block;
  content: "/";
  font-size: 11px;
  color: #ccc;
  margin: 0 5px;
  vertical-align: middle;
}

.quiz-progress {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 10px;
  background: #ccc;
}

.quiz-progress .progress-handler {
  display: block;
  position: relative;
  left: 0;
  height: 10px;
  background: linear-gradient(to left, #00b3a5, #009887);
  overflow: hidden;
}
.quiz-progress .progress-handler:before {
  content: "";
  position: absolute;
  left: -160px;
  top: -20px;
  height: 40px;
  width: 100px;
  transform: rotate(15deg);
  background: linear-gradient(#fff, transparent, #fff);
  background-blend-mode: hard-light;
  filter: blur(2px);
  animation: 2s linear 0s infinite blink_to_right;
}

@keyframes blink_to_right {
  0% {
    left: -160px;
    opacity: 0;
    filter: blur(2px);
  }

  20% {
    opacity: 1;
    filter: blur(15px);
  }

  40% {
    left: 120%;
    opacity: 0;
    filter: blur(2px);
  }

  100% {
    left: 120%;
    opacity: 0;
    filter: blur(2px);
  }
}

.quiz-pages {
  padding: 30px;
  color: #333;
  text-align: center;
}
.quiz-pages .quiz-page {
  position: relative;
  opacity: 1;
  height: auto;
  transition: all 0.2s linear;
  z-index: 2;
}

.quiz-pages .quiz-page.hidden {
  opacity: 0;
  height: 0;
}

.quiz-page-header {
  display: block;
  font-size: 22px;
  line-height: 30px;
  margin: 0 0 20px;
}

.quiz-item {
  display: inline-block;
  vertical-align: top;
  box-sizing: border-box;
  padding: 10px 20px;
  border: 1px dotted #ccc;
  cursor: pointer;
  margin: 5px;
  width: 240px;
  background: #eee;
  transition: all 0.2s ease;
  overflow: hidden;
  text-overflow: ellipsis;
}

.quiz-item:hover,
.quiz-item.active {
  background: #fff;
  border: 1px solid var(--gabriel-main-color-border);
  box-shadow: 0 0 7px #00b3a5;
}

.quiz-item img[src=""] {
  display: none;
  visibility: hidden;
}

.quiz-item img {
  display: block;
  width: 240px;
  margin: -10px -20px 20px;
}

.quiz-pages label {
  float: none;
}

.quiz-controls {
  padding: 30px;
  background: #eee;
}

.quiz-controls .button,
.quiz-controls button {
  vertical-align: top;
}

#quiz button[type="submit"] {
  display: inline-block;
  margin: 0;
  padding: 12px 30px;
  box-sizing: border-box;
  font-size: 16px;
  font-weight: bold;
  text-align: center;
  background: var(--gabriel-main-color);
  color: #efefef;
  text-shadow: 0 1px 0 var(--gabriel-main-color-darkest);
  border: 1px solid var(--gabriel-main-color-border);
  border-bottom: 4px solid var(--gabriel-main-color-darkest);
  border-radius: 3px;
}

form#sendfiles-form label {
  width: 100%;
}

form#sendfiles-form label input,
form#sendfiles-form label textarea,
form#sendfiles-form label button form#sendfiles-form .uploader {
  box-sizing: border-box;
  width: 100%;
}

form#sendfiles-form label textarea {
  font-family: inherit;
}

form#sendfiles-form .uploader {
  min-width: 100%;
}

/* grayscaled */

#infographica > .item .iconset,
ul.sell-buttons-list > li img,
.sell-button img,
.header-infoblock > .row > .contact-out-item .heading img {
  filter: grayscale(1);
}

#lead-magnet-form > * {
}

/* --- */

.more-specification-caller {
  display: block;
  position: relative;
  clear: both;
  cursor: pointer;
}

.more-specification-caller.clicked:after {
  transform: rotate(-180deg) translateY(10px);
}

#specification-filters ul.specification-filter-list:empty {
  display: none;
}

#specification-filters ul.specification-filter-list li a.hidden {
  display: none;
}

#specification-filters
  ul.specification-filter-list
  li
  a.hidden.temporary-displayed {
  display: block;
}

aside#our-production[data-only="true"] .video-frame-wrapper {
  width: calc(100% + 54px);
  margin: -20px -32px -24px;
}

aside#main-video-wrapper {
  width: 100%;
  background: #000;
  text-align: center;
  min-height: 500px;
  float: left;
  position: relative;
}

aside#main-video-wrapper .yt-player-frame {
  display: inline-block;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  height: 500px;
}

.price-info-assets {
  position: absolute;
  bottom: -50px;
  left: 0;
  right: 0;
  font-size: 14px;
  font-weight: bold;
}

.price-info-assets b {
  font-size: 20px;
  color: #a10000;
}

section#utp-block {
  display: flex;
  height: auto;
  flex-direction: row;
  flex-wrap: nowrap;
  align-content: flex-start;
  justify-content: center;
  align-items: center;
}

section#utp-block .utp-element {
  text-align: center;
  padding: 10px 20px;
}

section#utp-block .utp-element img {
  width: 90px;
  height: 90px;
  margin: 0 auto 20px;
}

section#utp-block .utp-element .title {
  font-family: "PT Sans Narrow";
  font-weight: bold;
  font-size: 18px;
  margin: 0 0 20px;
}

/* order-form */
form#cart-order-form {
  display: flex;
  margin: 20px auto;
  flex-direction: column;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: center;
  width: 320px;
}

form#cart-order-form .form-group {
  display: flex;
  margin: 0 0 10px;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
}

form#cart-order-form .form-group label {
  padding: 0 15px 0 0;
}

form#cart-order-form .form-group.hori-view {
  flex-wrap: wrap;
}

form#cart-order-form .form-group.hori-view label {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
}

form#cart-order-form .form-group.hori-view label svg {
  width: 60px;
}

form#cart-order-form button[type="submit"] {
  padding: 10px 20px;
}

form#cart-order-form .agenda {
}

form#cart-order-form .agenda p {
  margin: 20px 0;
}

form#cart-order-form .agenda p.light {
  font-size: 12px;
  font-weight: normal;
  color: #999;
}

form#cart-order-form .agenda p.pickup-address {
  line-height: 24px;
}

form#cart-order-form .agenda[data-active="false"] {
  display: none;
}

.we-are-accept {
  display: inline-block;
  vertical-align: top;
  position: relative;
  margin: 0 0 0 40px;
}

.we-are-accept .accept-list {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
}

.we-are-accept .accept-list img {
  display: flex;
  margin: 0 15px 0 0;
}

/* discounts */

.header-discounts-wrapper {
  display: flex;
  clear: both;
  width: 100%;
  align-items: center;
  justify-content: center;
  gap: 20px;
  padding: 10px;
  border-top: 1px dashed #eee;
}

.header-discounts-item,
.header-discounts-wrapper > .header-discounts-item {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  gap: 10px;
  text-decoration: dotted underline #24b4b0;
}

.one-phone-wrapper + .header-discounts-item {
  justify-content: flex-end;
  position: absolute;
  right: 20px;
  top: 112px;
}
.header-discounts-item strong,
.header-discounts-wrapper > .header-discounts-item strong {
  display: inline-block;
  padding: 0 5px;
  border-radius: 2px;
  color: #fff;
  text-shadow: 0 0 1px #000;
  letter-spacing: 3px;
  font-size: 80%;
  background: #333;
  text-decoration: underline transparent !important;
}

.quiz-fixed {
  opacity: 1;
  position: fixed;
  display: flex;
  bottom: 40px;
  right: -160px;
  z-index: 901;
  background: #333;
  box-shadow: 0 2px 12px rgb(0 0 0 / 20%);
  transition: 0.2s;
  height: 63px;
  color: #fff;
  text-shadow: 0 1px 0 #000;
  flex-direction: row-reverse;
  flex-wrap: nowrap;
  align-items: center;
  cursor: pointer;
  border-radius: 2px;
}

.quiz-fixed:hover {
  right: 0;
}

.quiz-fixed svg {
  width: 40px;
  height: 40px;
  margin: 20px;
}
.quiz-fixed svg path {
  fill: #fff;
}

.quiz-fixed span {
  padding: 10px 10px 10px 0;
  width: 150px;
}

#stone-banner-wrapper {
  position: relative;
  display: flex;
  text-align: center;
  flex-direction: column;
  align-content: center;
  flex-wrap: nowrap;
  align-items: center;
}

#stone-banner-wrapper .banner-button {
  position: absolute;
  display: flex;
  bottom: 35px;
  padding: 15px 25px;
  background: linear-gradient(to top, #fdc037, #e4c726);
  color: #111;
  text-shadow: 0 1px 0 #ffe759;
  border-color: #97711c;
  transition: 0.2s;
}

#stone-banner-wrapper .banner-button:hover {
  background: linear-gradient(to bottom, #fdc037, #e4c726);
  transform: scale(1.05);
  box-shadow: 0 0 30px #fdc03720;
}

#other-out-carousel .product-element .product-image-wrapper {
  overflow: hidden;
  height: 200px;
}

#other-out-carousel
  .product-element
  .product-image-wrapper
  img.nopreview.product-image.parent-14,
#other-out-carousel
  .product-element
  .product-image-wrapper
  img.nopreview.product-image.alternative {
  width: inherit;
  height: auto;
}

section[data-ajaxify="content"] {
  display: flex;
}
