/*
Theme Name: WP Commander
Details URI: https://update.goodwinpress.ru/themes/commander-changelog.html
Theme URI:  https://www.goodwinpress.ru/tema-wp-commander
Author: Goodwin
Author URI: https://www.goodwinpress.ru/
Description:  Тема 2020 года для бизнес-сайта, развёрнутого на WordPress.  Оптимизация, скорость, богатство функций.  Статическая главная с 14-ю готовыми блоками. 2 меню + мобильное меню. Для двуязычных сайтов на основе Polylang. Карточки продуктов с атрибутами, слайдером, скидкой, описанием, рейтингом. Липкое меню, липкий сайдбар, хлебные крошки, улучшенный поиск. Микроразметка в товарах и статьях. Формы для сбора контактов.
Version: 2.1.2
License: GNU General Public License v2 or later
Text Domain: gpress
*/

/*
Содержание файла стилей:
*
01 0чистка
02 Шрифт Roboto Condensed
03 Таблицы
04 Ссылки
05 Админ-бар
06 Отложенная загрузка картинок (lazy load)
07 Основные контейнеры
08 Шапка
09 Верхняя панель
10 переключение языков
11 Логотип / текстовый заголовок
12 Контакты в шапке
13 Меню в шапке
14 Липкое меню
15 Кнопка для моб. меню
16 Поиск по сайту
17 Результаты поиска
18 Раздел Постер
19 Заголовки разделов Главной
20 Раздел Категории продуктов
21 Раздел Продукты
22 Ячейки продуктов
23 Цена
24 Атрибуты продукта
25 Раздел для сбора контактов
26 Форма для сбора
27 Поп-ап для сбора в постере
28 Раздел О нас
29 Раздел Портфолио, галерея
30 Раздел Отзывы
31 Карусель для отзывов
32 Раздел Услуги
33 Разделы для произвольного контента 
34 Новости на Главной
35 Подвал сайта
36 Меню в подвале
37 Заголовки сайта
38 Постраничная навигация в блоге и рубриках
39 Оформление записей и внутряков
40 Поп ап заказа продукта
41 Внутренняя навигация в записях
42 Хлебные крошки
43 Список дочерних рубрик
44 Оформление карточки продукта
45 Слайдер в карточке продукта
46 Рекомендованные продукты
47 Виджеты сайта
48 Комментарии  
49 Списки сайта
50 Оформление изображений, галерей
51 Чистая страница
52 Раздел Контакты на главной и на внутряке
53 иконки соц сетей в контактах
54 Адаптивность
55 Мобильное меню
*
*/

/* 01 Очистка*/
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline
}

body {
  line-height: 1
}

em,
i {
  font-style: italic
}

ol,
ul {
  list-style: none
}

strong,
b {
  font-weight: bold
}

blockquote,
q {
  quotes: none
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: '';
  content: none
}

table {
  border-collapse: collapse;
  border-spacing: 0
}

img,
video,
object,
embed,
iframe {
  max-width: 100%;
  vertical-align: bottom
}

img {
  height: auto
}

p {
  margin-bottom: 20px
}

p:last-child {
  margin-bottom: 0
}

img {
  border: 0
}

.aligncenter {
  margin: 0 auto 20px
}

.alignleft {
  float: left
}

.alignright {
  float: right
}

html {
  font-size: 100%;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  overflow-x: hidden
}

dl {
  margin: 0 0 24px
}

dt {
  font-weight: bold
}

dd {
  margin-bottom: 18px
}

big {
  font-size: 131.25%
}

ins {
  text-decoration: none
}

abbr,
acronym {
  border-bottom: 1px dotted #666;
  cursor: help
}

sup,
sub {
  height: 0;
  line-height: 1;
  position: relative;
  vertical-align: baseline
}

sup {
  bottom: 1ex
}

sub {
  top: .5ex
}

input,
textarea {
  color: #333;
  vertical-align: middle
}

input:focus {
  outline: 0
}

pre {
  border: 0;
  margin-bottom: 35px;
  max-width: 100%;
  overflow: auto;
  padding: 22px;
  white-space: pre;
  white-space: pre-wrap;
  word-wrap: break-word;
  font-family: monospace;
  background: #f9f9f9
}

hr {
  display: block;
  width: 100%;
  height: 1px;
  border: 0;
  border-bottom: 1px solid #eeeeef;
  margin: 30px auto 40px;
  clear: both
}

input:focus {
  border: 1px solid orange
}

.red {
  color: red
}

.gp-clearfix:after {
  content: "\00A0";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0
}

input::placeholder,
input:placeholder-shown {
  color: #999
}

::-moz-selection {
  background: navy;
  color: #fff
}

::selection {
  background: navy;
  color: #fff
}

::-webkit-selection {
  background: navy;
  color: #fff
}

button:focus {
  outline: 0
}

p {
  -webkit-hyphens: auto;
  -moz-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto
}

button {
  -webkit-appearance: none;
  border: 0;
  background: transparent;
  -webkit-font-smoothing: inherit;
  -moz-osx-font-smoothing: inherit;
  cursor: pointer;
  border-radius: 0
}

a.gpress {
  text-decoration: none;
  color: #666
}

/* 02 Шрифт Roboto Condensed для заголовков */
@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: local('Roboto Condensed'), local('RobotoCondensed-Regular'), url('files/back/font/roboto-condensed-v18-latin_cyrillic-regular.woff2') format('woff2'), url('files/back/font/roboto-condensed-v18-latin_cyrillic-regular.woff') format('woff')
}

@font-face {
  font-family: 'Roboto Condensed';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: local('Roboto Condensed Bold'), local('RobotoCondensed-Bold'), url('files/back/font/roboto-condensed-v18-latin_cyrillic-700.woff2') format('woff2'), url('files/back/font/roboto-condensed-v18-latin_cyrillic-700.woff') format('woff')
}

h1,
h2,
h3,
h4,
h5,
h6,
.site-title h1,
.site-title span,
.top-menu a,
h2.gp-poster_title,
.homepage-block-title,
.gp-term-name,
.offer-title,
ul.foot-menu li a,
h1.blog-title,
h1.product-title,
h1.archive-title,
h1.contact-page-title,
h1.post-title,
h1.single-product-title,
.gp-product-title,
.service-item-title,
.blog-post h2.post-title,
.widget-title,
#reply-title,
.comment-title,
.service-item:before,
blockquote cite,
.call-title,
#product-action .call-title,
.search-title,
.gallery-caption,
.news-post .post-title,
.gp-search-title,
.product-content-title,
.recommend-title,
.comment-title,
.contact-form-title,
.sub-title {
  font-family: 'Roboto Condensed', Arial, sans-serif;
  text-transform: uppercase;
  font-weight: 700
}


/* 03 Таблицы */
table {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  display: block;
  width: fit-content;
  width: 100%;
  margin: 10px 0 35px
}

table th {
  text-align: left;
  padding: 15px 14px;
  border: 1px solid #eaeaea;
  background: #f6f7fb
}

table td {
  font-size: 16px;
  padding: 13px 14px;
  border: 1px solid #eaeaea;
  vertical-align: top
}

table tr:nth-of-type(odd) {
  background: #f6f7fb
}

table tr:nth-of-type(even) {
  background: #fff
}

table::-webkit-scrollbar-thumb {
  background: #32e0c4
}

table::-webkit-scrollbar {
  height: 10px;
  background: #eee
}

/* 04 Ссылки */
a {
  text-decoration: underline;
  transition: all .3s ease-in-out
}

a:hover {
  text-decoration: underline
}

/* 05 Админ бар*/
#wpadminbar .gpress-toolbar-link {
  position: relative;
  padding-left: 20px;
  margin-left: 15px
}

#wpadminbar .gpress-toolbar-link:before {
  font-family: dashicons;
  content: "\f111";
  font-size: 16px;
  top: -3px;
  position: absolute;
  left: 0
}

/* 06 Lazy Load*/
.lazy-hidden {
  opacity: 0
}

.lazy-loaded {
  -webkit-transition: opacity .3s;
  -moz-transition: opacity .3s;
  -ms-transition: opacity .3s;
  -o-transition: opacity .3s;
  transition: opacity .3s;
  opacity: 1
}


/* 07 Основные контейнеры */
* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box
}

body {
  font-weight: 400;
  word-wrap: break-word;
  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
  font-size: 17px;
  line-height: 1.6;
  background: #fff
}

.wrap {
  width: 100%;
  max-width: 1920px;
  margin: 0 auto;
  position: relative;
  background: #fff
}

.port {
  width: 100%;
  max-width: 1260px;
  margin: 0 auto;
  position: relative
}

.gp-container {
  float: left;
  width: 100%;
  position: relative;
  z-index: 1
}

.post-container {
  float: left;
  width: 100%
}

.post-col {
  width: 67%
}

.sidebar {
  float: left;
  width: 28%;
  position: relative;
  z-index: 1
}

.post-col-fullwidth {
  float: left;
  width: 100%;
}

.post-col-fullwidth .post-navigation {
  float: none;
  width: 100%;
  max-width: 800px;
  margin: 0px auto 0
}

.post-col-fullwidth .tech-info,
.post-col-fullwidth .ya-share-btns {
  text-align: center
}

.post-col-fullwidth .comments-box {
  float: none;
  width: 100%;
  max-width: 800px;
  margin: 30px auto 20px
}


/* 08 Шапка */
header {
  position: relative
}

/* 09 Верхняя панель */
.gp-promo {
  width: 100%;
  padding: 12px 0;
  margin-bottom: 25px;
  font-size: 14px;
  position: relative
}

.gp-promo a {
  text-decoration: underline
}

/* 10 Переключение языков polylang */
.pl-lang-select {
  position: absolute;
  top: -1px;
  right: 0;
  text-align: right;
  width: 150px;
  z-index: 100
}

.pl-lang-select li {
  list-style: none;
  display: inline-block;
  font-size: 14px;
  margin-left: 15px
}

.pl-lang-select li a {
  text-decoration: none
}

.pl-lang-select li a:hover {
  text-decoration: underline
}

.pl-lang-select li img {
  vertical-align: baseline
}

/* 11 Логотип / текстовый заголовок */
.site-title {
  float: left;
  width: 42%
}

.site-title h1,
.site-title span {
  font-size: 28px;
  display: block;
  text-transform: uppercase;
  font-weight: bold;
  margin: 0
}

.site-title h1 a,
.site-title span a {
  text-decoration: none
}

.logo-title a {
  width: 300px;
  height: 65px
}

.header-site-desc {
  color: #999;
  font-size: 14px;
  display: block;
  font-weight: normal
}

.text-title {
  line-height: 1.3;
  padding-top: 7px
}

/* 12 Контакты в шапке */
.contact-header {
  float: right;
  width: 50%;
  display: flex;
  text-align: right;
  margin-bottom: 25px
}

.contact-header-item {
  float: left;
  width: 48%;
  margin-right: 4%;
  font-weight: bold;
  font-size: 16px;
  padding: 9px 70px 9px 20px;
  position: relative
}

.contact-header-item:nth-of-type(2) {
  border: 0;
  margin-right: 0
}

.contact-header-item span {
  color: #555;
  font-size: 14px;
  display: block;
  font-weight: normal
}

.contact-header-item_one:before,
.contact-header-item_two:before,
.contact-header-item_three:before {
  font-family: dashicons;
  font-size: 30px;
  line-height: 50px;
  text-align: center;
  width: 50px;
  height: 50px;
  position: absolute;
  top: 8px;
  right: 0;
  bottom: 0;
  color: #fff
}

.contact-header-item a {
  text-decoration: none;
  border-bottom: 1px dotted #999
}


/* 13 Меню в шапке */
.menunav {
  float: left;
  width: 100%;
  max-width: 1260px;
  position: relative;
  border-top: 1px solid #e6e6e6;
  border-bottom: 1px solid #e6e6e6;
  margin-bottom: 30px
}

.top-menu {
  padding-right: 65px
}

.home .menunav {
  margin-bottom: 0;
  border-bottom: 0
}

.top-menu ul,
.top-menu li,
.top-menu a {
  margin: 0;
  padding: 0;
  line-height: normal;
  list-style: none;
  display: block;
  position: relative;
}

.top-menu ul {
  opacity: 0;
  position: absolute;
  top: 56px;
  left: -9999px;
  z-index: 999;
  transition: opacity .2s ease-in;
  box-shadow: 1px 12px 15px -5px rgba(119, 119, 119, 0.3)
}

.top-menu ul li ul {
  top: -15px !important
}

.top-menu li:hover>ul {
  left: 0;
  opacity: 1;
  z-index: 1000
}

.top-menu ul li:hover>ul {
  top: 0;
  left: 100%
}

.top-menu li {
  cursor: default;
  float: left;
  white-space: nowrap;
  transition: all .2s ease-in-out
}

.top-menu ul li {
  float: none
}

.top-menu ul {
  min-width: 230px;
  padding: 15px 0
}

.top-menu a {
  padding: 18px 30px 18px 0;
  font-size: 17px;
  text-decoration: none
}

.top-menu li li a,
.top-menu li:hover li a {
  padding: 10px 20px;
  font-size: 14px;
  font-weight: 400
}

.top-menu li li a:hover,
.top-menu li:hover li a:hover {
  text-decoration: underline
}

.top-menu .menu-item-has-children a {
  padding-right: 45px
}

.menu-item-has-children:after {
  font-family: dashicons;
  content: "\f140";
  font-size: 20px;
  position: absolute;
  top: 15px;
  right: 22px;
  font-weight: normal
}

.top-menu li ul li.menu-item-has-children:after {
  font-family: dashicons;
  content: "\f139";
  font-size: 21px;
  position: absolute;
  top: 6px;
  right: 10px;
  font-weight: normal
}


/* 14 Липкое меню */
.banner--clone {
  position: fixed;
  z-index: 1000;
  top: -100px;
  left: 0;
  right: 0;
  transition: all .3s ease-in-out;
  border: 0
}

.banner--stick {
  top: 0;
  transform: translateY(0%)
}

.banner--clone.menunav {
  width: 100%;
  margin: 0 auto 0;
  padding-left: 10px;
  background: #fff;
  box-shadow: 1px 12px 15px -5px rgba(119, 119, 119, 0.16)
}

.banner--clone.menunav ul {
  border: 0;
  margin: 0 auto;
  max-width: 1260px;
  float: none
}

.banner--clone .toggle-search {
  top: 10px
}

/* 15 Кнопка моб. меню */
#menu-icon {
  position: absolute;
  top: -65px;
  left: 0;
  font-size: 16px;
  display: inline-block;
  width: 120px;
  height: 45px;
  text-align: center;
  color: #fff;
  line-height: 45px;
  font-weight: bold;
  padding-left: 30px;
  display: none;
  text-decoration: none
}

#menu-icon:before {
  font-family: dashicons;
  content: "\f333";
  font-size: 26px;
  line-height: 42px;
  position: absolute;
  top: 2px;
  left: 13px
}

/* 16 Поиск по сайту */
.toggle-search {
  position: absolute;
  bottom: 10px;
  right: 0;
  width: 60px;
  height: 40px;
  text-align: center;
  line-height: 40px;
  border-left: 1px solid #e6e6e6
}

.toggle-search:before {
  font-family: dashicons;
  content: "\f179";
  font-size: 23px
}

.gp-search-bg {
  background: rgba(0, 0, 0, 0.87);
  visibility: hidden;
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  transition: .4s ease
}

.gp-search-modal {
  width: 100%;
  max-width: 680px;
  position: fixed;
  top: -2000px;
  left: 50%;
  z-index: 1000;
  margin-left: -340px;
  transition: .5s ease;
  background: #fff
}

.search-container {
  padding: 20px 30px 25px
}

.gp-search-title {
  font-size: 18px;
  margin-bottom: 10px;
  display: block;
  text-align: center;
  padding: 20px
}

.search-container .s {
  width: 80%;
  padding: 15px;
  margin-right: 2%;
  color: #333;
  background: #fff;
  border: 1px solid #999;
  font-size: 18px;
}

.search-container .searchSubmit {
  width: 18%;
  padding: 15px 0;
  margin: 0;
  font-size: 18px;
  cursor: pointer;
  border: 0;
  transition: .3s ease;
  -webkit-appearance: none;
  box-shadow: none;
  border-radius: 2px
}

.search-container input:focus {
  outline: 0
}

.gp-search-modal .close {
  background: #f7f6fb;
  padding: 15px 0;
  cursor: pointer;
  text-align: center;
  transition: .3s ease
}

.search-container p {
  font-size: 15px;
  display: block;
  margin-top: 15px;
  text-align: center;
  color: #999
}

.gp-inp-text {
  border-width: 0 0 1px 0;
  border-style: dotted;
  cursor: pointer
}


/* 17 Результаты поиска */
.search-post {
  float: left;
  width: 48%;
  margin-right: 4%;
  margin-bottom: 30px
}

.search-post:nth-of-type(2n) {
  margin-right: 0
}

.search-title {
  display: block;
  font-size: 20px;
  line-height: 1.35
}

h1.search-title {
  margin-bottom: 20px;
  font-size: 26px;
}

.search-title a {
  text-decoration: none
}

.search-title a:hover {
  text-decoration: underline
}

.search-wrap {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap
}

.search-post-header {
  display: block;
  font-size: 13px;
  margin-bottom: 12px;
  color: #999
}

.search-post-header a {
  color: #999;
  text-decoration: underline !important
}

.search-post-header a:hover {
  color: #d9455f
}

.search-thumb {
  float: left;
  margin: 0 30px 10px 0;
  background: #f9f9f9
}

.empty-thumb {
  width: 100px;
  height: 100px;
  float: left;
  margin: 0 30px 10px 0;
  background: rgba(214, 229, 250, 0.2);
  border: 1px solid #f4f4f4
}

#gp-promo-search-button {
  top: -10px;
  right: 160px;
  display: none
}


/* 18 Раздел Постер */
.gp-poster {
  width: 100%;
  height: auto;
  position: relative
}

.gp-poster:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 100%;
  z-index: 1
}

.gp-poster_caption {
  padding: 160px 0;
  text-shadow: 0 3px 4px rgba(0, 0, 0, .15);
  position: relative;
  z-index: 10
}

h2.gp-poster_title {
  font-size: 58px;
  width: 100%;
  max-width: 850px;
  line-height: 1.25;
  margin-bottom: 30px;
  text-transform: uppercase
}

.gp-poster_caption p {
  font-size: 24px;
  line-height: 1.4;
  font-weight: bold;
  display: block;
  max-width: 700px
}

.gp-poster_button {
  display: table;
  font-size: 17px;
  line-height: 1;
  font-weight: bold;
  text-align: center;
  padding: 20px 40px;
  text-decoration: none;
  margin-top: 40px;
  transition: all .4s ease-in-out;
  text-decoration: none;
  border-radius: 2px
}

.gp-poster_button:hover {
  text-decoration: none
}

.blog .gp-poster {
  margin-bottom: 50px
}

/* 19 Заголовки разделов Главной */
.homepage-block-title {
  display: block;
  font-size: 35px;
  margin-bottom: 40px;
  line-height: 1.3;
  text-transform: uppercase;
  letter-spacing: .5px;
  text-align: center;
  position: relative;
}

.homepage-block-title:before {
  font-size: 100px;
  letter-spacing: 5px;
  text-align: center;
  position: absolute;
  bottom: -20px;
  left: 0;
  right: 0;
  z-index: -1;
}


/* 20 Раздел Категории продуктов */
.terms-container {
  background: url('img/dotted-bg.png') repeat;
  padding: 140px 0 50px !important
}

.gp_terms ul {
  width: 100%;
  max-width: 1260px;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap
}

.gp_terms ul li,
.gp-tax-item {
  float: left;
  width: 22.75%;
  margin-bottom: 40px;
  margin-right: 3%;
  text-align: center;
  line-height: 1.3;
  transition: all .4s ease;
  box-shadow: 0 22px 30px 0 rgba(15, 8, 49, 0.1);
  position: relative;
  z-index: 10;
  background: #fff
}

.gp_terms ul li:nth-of-type(4n),
.gp-tax-item:nth-of-type(4n) {
  margin-right: 0
}

.gp_terms ul li a,
.gp-tax-item a {
  display: block;
  text-decoration: none
}

.gp-term-name {
  display: block;
  font-size: 20px;
  margin-top: 20px;
  padding: 0 20px
}

.gp-term-description {
  display: block;
  color: #555;
  font-size: 15px;
  margin-top: 8px;
  ;
  margin-bottom: 25px;
  padding: 0 20px;
  line-height: 1.35
}

.gp_terms ul li:hover,
.gp-tax-item:hover {
  box-shadow: 1px 12px 15px -5px rgba(0, 0, 0, 0.15)
}

.gp-term-img {
  overflow: hidden;
  position: relative
}

.gp_terms ul li .gp-term-img:before,
.img-wrap:before,
.img-wrapper:before,
.nav-box-img:before,
.gp-tax-item .gp-term-img:before {
  position: absolute;
  top: 0;
  left: -75%;
  z-index: 1;
  display: block;
  content: '';
  width: 50%;
  height: 100%;
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, .25) 100%);
  transform: skewX(-24deg);
  transition: all 0.5s ease-out;
}

.gp_terms ul li:hover .gp-term-img:before,
.img-wrap:hover:before,
.img-wrapper:hover:before,
.nav-box-img:hover:before,
.gp-tax-item:hover .gp-term-img:before {
  left: 125%;
}

.terms-additional-text,
.tax-additional-text {
  position: relative;
  float: left;
  width: 100%;
  margin: 10px 0 15px
}


/* 21 Раздел Продукты */
.product-container {
  padding: 70px 0 0;
  position: relative;
  z-index: 1;
  margin-bottom: 40px
}

.product-wrap {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap
}

/* 22 Ячейки продуктов */
.gp-product-item {
  float: left;
  width: 31.333%;
  margin-right: 3%;
  margin-bottom: 40px;
  position: relative;
  z-index: 1;
  border-radius: 4px;
  box-shadow: 0 22px 30px 0 rgba(15, 8, 49, 0.1);
  transition: all .3s ease-in-out
}

.gp-product-item:nth-of-type(3n) {
  margin-right: 0
}

.gp-product-wrap {
  width: 100%;
  padding: 20px 25px 15px
}

.gp-product-title {
  font-size: 19px;
  line-height: 1.35;
  display: block;
  margin-bottom: 20px
}

.gp-product-title a {
  text-decoration: none
}

.gp-product-title a:hover {
  text-decoration: underline
}

.gp-product-item:hover {
  box-shadow: 1px 12px 15px -5px rgba(0, 0, 0, 0.15)
}

.img-wrap {
  overflow: hidden;
  position: relative;
}

.gp-discount {
  position: absolute;
  top: 20px;
  right: 20px;
  display: block;
  text-align: center;
  color: #fff;
  font-size: 18px;
  z-index: 10;
  width: 62px;
  height: 62px;
  line-height: 62px;
  border-radius: 50%;
  font-weight: bold;
  box-shadow: 1px 12px 15px -5px rgba(0, 0, 0, 0.15);
}

.product-term-name {
  display: block;
  padding: 12px 18px;
  text-align: center;
  color: #fff;
  text-decoration: none;
  position: absolute;
  top: 28px;
  left: 0;
  font-size: 14px;
  box-shadow: 1px 12px 15px -5px rgba(0, 0, 0, 0.15);
  z-index: 10
}

.product-term-name:hover {
  text-decoration: underline;
  color: #fff
}

/* 23 Цена */
.gp-price-option {
  font-size: 30px;
  font-weight: bold
}

.gp-price-option span {
  display: inline;
  position: relative
}

.gp-old-price-option {
  font-style: normal;
  font-weight: bold;
  font-size: 15px;
  position: absolute;
  top: 0;
  right: -95px;
  text-decoration: line-through;
  color: #bbb
}

.gp-home-price {
  float: right;
  width: 50%;
  font-size: 22px;
  display: block;
  text-align: right;
  font-weight: bold;
}

.gp-home-price span,
.gp-price-option span {
  font-family: Arial, sans-serif
}


/* 24 Атрибуты продукта */
ul.product-attributes {
  margin-bottom: 20px
}

.gp-product-metabox {
  padding: 15px 20px;
  margin-bottom: 10px;
  width: 100%;
  border-top: 1px solid #e6e6e6;
  border-bottom: 1px solid #e6e6e6
}

.gp-product-metabox ul.product-attributes {
  margin-bottom: 0;
  font-size: 15px
}

.gp-product-metabox ul.product-attributes li {
  margin-bottom: 4px
}

ul.product-attributes li {
  position: relative;
  padding-left: 20px
}

ul.product-attributes li:last-child {
  margin: 0
}

ul.product-attributes li:before {
  font-family: dashicons;
  content: '';
  content: "\f147";
  position: absolute;
  top: -2px;
  left: -6px;
  font-size: 18px;
  color: #00a1ab
}

a.product-button {
  display: block;
  padding: 16px 0;
  font-size: 18px;
  text-align: center;
  margin: 10px 0 23px;
  text-decoration: none;
  font-weight: bold;
  border-radius: 2px
}

a.product-custom-link {
  font-size: 15px;
  display: block;
  color: #999
}

.ya-share-btns {
  margin-top: 25px
}

.rtng-star-rating {
  width: 120px;
  float: left;
  height: 26px;
  overflow: hidden
}

.rtng-total {
  background: #63b7af;
  color: #fff !important;
  font-weight: bold;
  display: inline-block;
  width: 30px;
  height: 30px;
  line-height: 30px;
  text-align: center;
  border-radius: 50%;
  font-size: 14px
}

.gp-product-wrap .rtng-total,
.product-content .rtng-form {
  display: none
}

.rtng-thankyou {
  display: block;
  float: right;
  font-size: 12px;
  padding-top: 5px
}

.rtng-star .dashicons {
  font-size: 16px
}


/* 25 Раздел для сбора контактов */
.offer-container {
  position: relative;
  overflow: hidden
}

.offer-container:before {
  content: '';
  width: 2000px;
  height: 2000px;
  position: absolute;
  top: -1000px;
  left: 50%;
  transform: rotate(65deg);
  box-shadow: 10px 10px 10px #111
}

.gp-offer {
  padding: 75px 0;
  position: relative;
  z-index: 1;
  text-align: center;
  overflow: hidden
}

.offer-title {
  font-size: 38px;
  line-height: 1.3;
  display: block;
  text-shadow: 0 3px 4px rgba(0, 0, 0, .15);
  margin-bottom: 26px;
}

/* 26 Форма для сбора */
.form-wrap {
  position: relative;
  width: 100%;
  max-width: 460px;
  margin: 0 auto;
  margin-bottom: 10px
}

.offer-submit {
  width: 54px;
  height: 54px;
  text-align: center;
  line-height: 54px;
  transition: all .4s ease;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1;
}

.offer-submit:before {
  font-family: dashicons;
  content: "\f474";
  font-size: 23px;
  color: #fff
}

.gp-offer label,
.call-action label {
  display: block;
  font-size: 15px;
  text-transform: uppercase;
  letter-spacing: .5px;
  margin-bottom: 15px
}

.gp-offer .wpcf7-tel,
.call-action .wpcf7-tel {
  font-family: inherit;
  width: 100%;
  max-width: 400px;
  padding: 15px 25px;
  display: block;
  border: 1px solid #fff;
  margin: 0;
  font-size: 18px;
  position: relative;
  z-index: 100;
  background: #fff;
  color: #52627b;
}

.gp-offer .wpcf7-tel::placeholder {
  color: #777
}

.gp-offer p {
  display: block;
  font-size: 15px;
  margin: 10px auto 0;
  max-width: 480px
}

.gp-offer .wpcf7 input:focus {
  outline: 0;
  border-color: #0fabbc
}

#offer2.offer-container:before {
  left: -1150px;
  transform: rotate(30deg)
}


/* 27 Поп-ап для сбора в постере */
.call-action-bg {
  background: rgba(0, 0, 0, 0.87) none repeat scroll 0 0;
  visibility: hidden;
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0
}

.call-action {
  width: 500px;
  position: fixed;
  left: 50%;
  top: -2000px;
  margin-left: -250px;
  transition: .5s ease;
  z-index: 1000;
  background: #fff
}

.call-action img {
  display: block;
  margin: 0 auto
}

.call-caption {
  text-align: center;
  background: #fff
}

.call-title {
  display: block;
  padding: 20px;
  color: #fff;
  margin-bottom: 20px;
  font-size: 20px;
  line-height: 1.3
}

.call-action .close {
  background: #f7f6fb;
  padding: 15px 0;
  cursor: pointer;
  transition: .3s ease
}

.call-action .close:hover,
.gp-search-modal .close:hover {
  background: #f2f2fc
}

.call-caption em {
  font-style: normal;
  font-size: 12px;
  line-height: 18px;
  display: block;
  color: #999;
  padding: 0 15px 20px
}

.call-action .wpcf7-tel {
  border: 1px solid #666
}

.call-action .form-wrap {
  padding: 0 30px
}

.call-action label {
  color: inherit;
  font-size: 14px
}

.call-action .wpcf7-tel {
  max-width: 330px
}

.call-action .offer-submit {
  right: 30px
}

.call-action p {
  margin: 0
}


/* 28 Раздел О нас */
.about-container {
  padding: 130px 0 60px;
  background: url('img/dotted-bg.png') repeat
}

.home-about-wrap {
  width: 100%;
  float: left;
  position: relative;
  z-index: 1
}

.home-about-img {
  float: left;
  width: 50%
}

.home-about-img img {
  border: 20px solid #fff;
  box-shadow: 1px 12px 15px -5px rgba(0, 0, 0, 0.2);
  position: relative
}

.home-about-items {
  float: left;
  width: 50%
}

.about-item {
  padding: 40px 0 40px 50px
}

.about-item .item-title {
  display: block;
  margin: 15px 0;
  font-size: 20px;
  line-height: 1.25;
  font-weight: bold
}

.about-counter {
  margin-top: 40px
}

.counter-item {
  float: left;
  width: 31.33%;
  margin-right: 3%;
  font-size: 16px;
  padding-top: 5px
}

.counter-item:last-child {
  margin-right: 0
}

.counter {
  display: block;
  font-size: 50px;
  line-height: 1;
  margin-bottom: 5px;
  font-weight: bold
}




/* 29 Раздел Портфолио, галерея */
.gallery-container {
  padding: 130px 0 40px
}

.home-gallery-wrap {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap
}

.gp-gallery-item {
  width: 31.333%;
  position: relative;
  overflow: hidden;
  margin: auto;
  margin-bottom: 25px;
  border-radius: 6px
}

.gp-gallery-item:before {
  content: '';
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition: all .4s ease;
  border-radius: 6px
}

.gp-gallery-item:hover:before {
  opacity: .95
}

.gallery-caption {
  display: block;
  position: absolute;
  bottom: 40px;
  left: -140px;
  font-size: 18px;
  line-height: 1.3;
  opacity: 0;
  transition: all .4s ease;
  width: 250px
}

a.gallery-caption {
  text-decoration: none;
}

.gp-gallery-item:hover .gallery-caption {
  opacity: 1;
  left: 40px
}

a.gallery-caption:hover {
  text-decoration: underline
}

.gp-gallery-item a.img-icon {
  display: block;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  position: absolute;
  top: 40px;
  right: 40px;
  text-align: center;
  text-decoration: none;
  opacity: 0
}

.gp-gallery-item a.img-icon:before {
  font-family: dashicons;
  content: "\f128";
  font-size: 20px;
  line-height: 50px;
  color: #fff
}

.gp-gallery-item:hover a.img-icon {
  transition: opacity .4s;
  opacity: 1
}


/* 30 Раздел Отзывы */
.testimonials-container {
  padding: 130px 0 35px;
  background: url('img/dotted-bg.png') repeat
}

.home-testimonials-wrap {
  width: 80%;
  margin: auto;
  margin-bottom: 50px;
  position: relative
}

.testimonials-text {
  width: 60%;
  margin: 0 auto;
  position: relative;
  text-align: center
}

.testimonials-carousel {
  cursor: move
}

.person-info em {
  font-style: normal;
  font-size: 18px;
  margin-bottom: 25px;
  display: block
}

.person-info {
  margin-top: 30px
}

.person-info .name {
  display: block;
  font-size: 24px;
  font-weight: bold;
}

.person-foto {
  width: 150px;
  height: 150px;
  margin: 0 auto 20px;
  position: relative;
  z-index: 1
}

.person-foto img {
  width: 150px;
  height: 150px;
  border-radius: 50%;
  text-align: center;
  box-shadow: 1px 12px 15px -5px rgba(0, 0, 0, 0.2);
  border: 8px solid #fff
}

.person-foto:after {
  font-family: dashicons;
  content: "\f122";
  width: 40px;
  height: 40px;
  border-radius: 50%;
  line-height: 40px;
  color: #fff;
  font-size: 22px;
  text-align: center;
  position: absolute;
  top: 9px;
  left: -9px;
  z-index: 1
}



/* 31 Карусель для отзывов */
.owl-dots {
  text-align: center;
  margin-top: 50px
}

.owl-dot {
  display: inline-block;
  zoom: 1;
  border: 0;
  background: 0;
  margin: 0;
  padding: 0;
  cursor: pointer
}

.owl-dot span {
  width: 14px;
  height: 14px;
  background: transparent;
  display: block;
  -webkit-backface-visibility: visible;
  -webkit-transition: opacity 200ms ease;
  -moz-transition: opacity 200ms ease;
  -ms-transition: opacity 200ms ease;
  -o-transition: opacity 200ms ease;
  transition: opacity 200ms ease;
  border-radius: 50%
}

.owl-dots button {
  margin-right: 12px
}

.owl-dots button:last-child {
  margin-right: 0
}

.animated {
  -webkit-animation-duration: 1000ms;
  animation-duration: 1000ms;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both
}

.owl-animated-in {
  z-index: 0
}

.owl-animated-out {
  z-index: 1
}

.fadeOut {
  -webkit-animation-name: fadeOut;
  animation-name: fadeOut
}

@-webkit-keyframes fadeOut {
  0% {
    opacity: 1
  }

  100% {
    opacity: 0
  }
}

@keyframes fadeOut {
  0% {
    opacity: 1
  }

  100% {
    opacity: 0
  }
}

.owl-carousel,
.owl-slider {
  display: none;
  width: 100%;
  -webkit-tap-highlight-color: transparent;
  cursor: move;
  position: relative;
  z-index: 1
}

.owl-stage {
  position: relative;
  -ms-touch-action: pan-Y
}

.owl-stage:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0
}

.owl-stage-outer {
  position: relative;
  overflow: hidden;
  -webkit-transform: translate3d(0px, 0px, 0px)
}

.owl-controls .owl-nav .owl-prev,
.owl-controls .owl-nav .owl-next,
.owl-controls .owl-dot {
  cursor: pointer;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none
}

.owl-loaded {
  display: block
}

.owl-loading {
  opacity: 0;
  display: block
}

.owl-hidden {
  opacity: 0
}

.owl-refresh .owl-item {
  display: none
}

.owl-item {
  position: relative;
  min-height: 1px;
  float: left;
  -webkit-backface-visibility: hidden;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none
}

.owl-text-select-on .owl-item {
  -webkit-user-select: all;
  -moz-user-select: all;
  -ms-user-select: auto;
  user-select: all
}

.no-js .owl-carousel {
  display: block
}

.owl-nav button {
  width: 50px;
  height: 50px;
  cursor: pointer
}

.owl-prev,
.owl-next {
  padding: 0;
  border: 0;
  transition: all .4s ease;
  cursor: pointer
}

.owl-prev {
  position: absolute;
  left: 30px;
  top: 46%;
  display: none
}

.owl-next {
  position: absolute;
  left: 48%;
  bottom: 0;
  margin-left: -60px
}

.owl-prev span,
.owl-next span {
  font-size: 22px;
  text-align: center;
  line-height: 1;
  line-height: 60px
}

.owl-nav button {
  background: #fe346e;
  color: #fff;
  width: 60px;
  height: 60px
}

.testimonials-carousel .owl-prev,
.testimonials-carousel .owl-next {
  display: none
}



/* 32 Раздел Услуги */
.service-container {
  padding: 130px 0 40px;
  background: url('img/dotted-bg.png') repeat
}

.home-service-wrap {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 40px;
  position: relative
}

.service-item {
  float: left;
  width: 31.333%;
  margin-right: 3%;
  height: auto;
  position: relative;
  margin-bottom: 45px;
  padding: 45px 25px 25px;
  border-radius: 4px;
  box-shadow: 0 22px 30px 0 rgba(15, 8, 49, 0.1);
  transition: all .3s ease-in-out;
  background: #fff;
  overflow: hidden
}

.service-item:nth-of-type(3n) {
  margin-right: 0
}

.service-item:before {
  line-height: 50px;
  position: absolute;
  bottom: 0;
  right: 20px;
  font-size: 180px
}

.service-item:nth-of-type(1):before {
  content: '1'
}

.service-item:nth-of-type(2):before {
  content: '2'
}

.service-item:nth-of-type(3):before {
  content: '3'
}

.service-item:nth-of-type(4):before {
  content: '4'
}

.service-item:nth-of-type(5):before {
  content: '5'
}

.service-item:nth-of-type(6):before {
  content: '6'
}

.service-item:nth-of-type(7):before {
  content: '7'
}

.service-item:nth-of-type(8):before {
  content: '8'
}

.service-item:nth-of-type(9):before {
  content: '9'
}

.service-item:hover {
  box-shadow: 1px 12px 15px -5px rgba(0, 0, 0, 0.05);
  transform: translate(0, -10px)
}

.service-text {
  position: relative;
  z-index: 1
}

.service-item-title {
  display: block;
  font-size: 19px;
  margin-bottom: 20px;
  line-height: 1.35
}

.service-item-title a {
  text-decoration: none
}

.service-item-title a:hover {
  text-decoration: underline
}

.service-text p {
  display: block;
  margin-bottom: 30px
}

a.service-more {
  display: table;
  font-size: 15px;
  font-weight: bold;
  text-align: center;
  padding: 12px 28px;
  text-decoration: none;
  border-radius: 2px
}

.service-item ul {
  margin: 0
}

.service-item ul li {
  position: relative;
  padding: 0;
  margin-bottom: 9px;
  list-style-type: square;
  list-style-position: inside
}

.service-item img.aligncenter {
  margin: 0 auto
}

/* 33 Разделы для произвольного контента на Главной */
.custom-container {
  padding: 100px 0 30px;
  margin-bottom: 20px
}



/* 34 Новости на Главной */
.news-container {
  background: url('img/dotted-bg.png') repeat;
  padding: 130px 0 20px
}

.home-news-wrap {
  position: relative
}

.home-news-inner {
  float: left;
  width: 100%;
  display: flex;
  flex-wrap: wrap
}

.news-post {
  margin-right: 3%;
  width: 31.333%;
  float: left;
  padding: 25px;
  margin-bottom: 40px;
  background: #fff;
  box-shadow: 0 22px 30px 0 rgba(15, 8, 49, 0.1);
  border-radius: 6px;
  transition: all .4s ease
}

.news-post:hover {
  box-shadow: 1px 12px 15px -5px rgba(0, 0, 0, 0.15)
}

.news-post:nth-of-type(3n) {
  margin-right: 0
}

.img-wrapper {
  margin: 0 auto 15px;
  overflow: hidden;
  position: relative
}

.news-post .post-title {
  display: block;
  font-size: 17px;
  margin-bottom: 20px;
  line-height: 1.3;
  font-weight: bold
}

.news-post .post-title a {
  text-decoration: none;
}

.news-post .post-title a:hover {
  text-decoration: underline;
}

.news-post .post-footer {
  display: block;
  font-size: 13px;
  padding: 0;
  margin: 0;
  border: 0
}

.news-post .post-footer a {
  text-decoration: none;
  color: #999
}

.news-post .post-footer a:hover {
  text-decoration: underline;
  color: #d9455f
}


/* 35 Подвал сайта */
footer {
  float: left;
  width: 100%;
  padding: 30px 0;
  position: relative;
  z-index: 1;
  margin-top: 50px
}

.credits {
  float: left;
  width: 100%;
  font-size: 14px;
  line-height: 1.6;
  color: #666;
  padding: 30px 0 20px;
  text-align: center;
  margin-top: 20px
}

.backtop {
  position: fixed;
  bottom: 30px;
  display: none;
  right: 50px;
  z-index: 100;
  width: 50px;
  height: 50px;
  text-align: center;
  line-height: 44px;
  transition: all .4s ease;
  border-radius: 50%;
  box-shadow: 0 22px 30px 0 rgba(15, 8, 49, 0.1);
}

.backtop:before {
  font-family: dashicons;
  content: "\f343";
  font-size: 30px;
  color: #fff
}

.footer-content {
  padding: 10px 0
}

/* 36 Меню в подвале */
ul.foot-menu {
  float: left;
  width: 100%;
  display: block;
  text-align: center;
}

ul.foot-menu li {
  display: inline-block;
  margin: 0 15px;
  position: relative;
  padding: 0
}

ul.foot-menu li a {
  text-decoration: none;
  display: block;
  font-size: 17px;
}

ul.foot-menu li a:hover {
  text-decoration: underline
}

ul.foot-menu span {
  padding: 0;
  margin: 0
}

/* 37 Заголовки сайта */
h1 {
  font-size: 23px
}

h1.blog-title,
h1.product-title,
h1.archive-title,
h1.contact-page-title {
  display: block;
  font-size: 30px;
  margin-bottom: 20px;
  line-height: 1.3
}

h1.post-title {
  font-size: 30px;
  line-height: 1.2;
  margin-bottom: 25px;
}

h1.archive-title {
  margin-bottom: 20px
}

h1.single-product-title {
  font-size: 30px;
  margin-bottom: 30px;
  line-height: 1.2
}

.post-content h1,
.post-content h2,
.post-content h3,
.post-content h4,
.post-content h5,
.post-content h6,
.gp-custom-content h1,
.gp-custom-content h2,
.gp-custom-content h3,
.gp-custom-content h4,
.gp-custom-content h5,
.gp-custom-content h6 {
  margin-bottom: 18px
}

h1 {
  font-size: 26px
}

h2 {
  font-size: 24px
}

h3 {
  font-size: 22px
}

h4 {
  font-size: 20px
}

h5 {
  font-size: 19px
}

h6 {
  font-size: 18px
}

.product-content-title,
.recommend-title,
.comment-title,
.contact-form-title,
.sub-title {
  display: block;
  font-size: 16px;
  margin-bottom: 35px;
  padding-bottom: 10px;
  border-bottom: 1px solid #e6e6e6;
  position: relative
}

.product-content-title:before,
.recommend-title:before,
.comment-title:before,
.contact-form-title:before,
.sub-title:before {
  content: '';
  width: 50px;
  height: 1px;
  position: absolute;
  bottom: -1px;
  left: 0;
  background: #f77754
}


/* 38 Постраничная навигация в блоге и рубриках */
.pagination {
  display: block;
  width: 100%;
  float: left;
  font-weight: bold;
  margin: 20px 0 30px
}

.nav-links .page-numbers,
.pagination a.page-numbers,
.pagination .page-numbers.current,
.post-page-numbers,
.post-page-numbers.current {
  display: inline-block;
  font-size: 16px;
  padding: 8px 16px;
  text-align: center;
  text-decoration: none;
  margin: 0
}

.pagination a.page-numbers {
  background: rgba(247, 246, 251, 1)
}

.pagination .page-numbers.current,
.pagination .page-numbers:hover,
.post-page-numbers:hover,
.post-page-numbers.current {
  text-decoration: none;
  color: #fff
}

.search-results .nav-links,
.blog .nav-links {
  display: block;
  float: left
}


/* 39 Оформление записей и внутряков */
.blog-post {
  width: 100%;
  float: left;
  margin-bottom: 35px;
  transition: all .4s ease
}

.blog-thumb {
  float: left;
  margin: 0 30px 10px 0;
  position: relative
}

.blog-post h2.post-title {
  display: block;
  font-size: 26px;
  margin-bottom: 16px;
  line-height: 1.3
}

.blog-post h2.post-title a {
  text-decoration: none;
  color: #333
}

.blog-post h2.post-title a:hover {
  text-decoration: underline;
  color: #d9455f
}

.blog-post .post-header {
  display: block;
  font-size: 13px;
  padding-top: 15px;
  margin-bottom: 15px;
  color: #999
}

.blog-post .post-header a {
  text-decoration: none;
  color: #999
}

.blog-post .post-header a:hover {
  text-decoration: underline;
  color: #d9455f
}

a.read-more {
  color: #fff;
  text-decoration: none;
  background: #d9455f;
  display: inline-block;
  padding: 12px 25px;
  text-align: center;
  border-radius: 2px;
  position: relative
}

a.read-more:hover {
  text-decoration: none;
  background: #543864;
  padding: 12px 60px 12px 25px
}

a.read-more:before {
  font-family: dashicons;
  content: "\f344";
  color: #fff;
  position: absolute;
  top: 12px;
  right: 25px;
  opacity: 0;
  transition: all 0.3s ease-in-out
}

a.read-more:hover:before {
  opacity: 1
}

.entry-thumb {
  margin-bottom: 25px
}

.entry-header {
  width: 100%;
  position: relative;
  z-index: 1
}

.archive-desc {
  margin-bottom: 25px;
  font-size: 16px;
  background: rgba(214, 229, 250, 0.2);
  padding: 25px
}

.tos-caption {
  display: none
}

.tech-info {
  display: block;
  font-size: 15px;
  color: #999;
  margin-top: 20px
}

blockquote {
  margin: 10px 0 30px;
  padding: 30px 40px;
  position: relative;
  border-left: 2px solid #333;
}

blockquote p {
  margin: 0;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.4
}

blockquote cite {
  font-weight: normal;
  font-size: 15px;
  display: block;
  margin-top: 25px
}

.wp-block-pullquote {
  padding: 0;
  margin: 20px 0 35px
}

.wp-block-pullquote blockquote {
  background: 0;
  padding: 20px 0;
  margin: 0;
  border-top: 15px solid #f4f4f4;
  border-bottom: 15px solid #f4f4f4;
  border-left: 0
}

.wp-block-pullquote blockquote:after {
  display: none
}

.wp-block-pullquote p {
  margin: 0;
  line-height: 1.4;
  font-size: 20px
}

.search-desc {
  margin-bottom: 40px;
  font-size: 15px
}

.blog-post .rtng-form {
  display: none
}

a.more-link {
  color: #d9455f;
  text-decoration: none;
  padding-left: 5px;
  position: relative;
  display: inline-block
}

a.more-link:before {
  font-family: dashicons;
  content: "\f344";
  position: absolute;
  top: 5px;
  right: -22px;
  font-size: 13px
}

a.more-link:hover {
  text-decoration: underline
}

/* 40 Поп ап заказа товара */
#product-action .call-title {
  font-size: 20px
}

#product-action .wpcf7 input[type="text"] {
  font-family: inherit;
  width: 100%;
  float: left;
  padding: 10px 20px;
  display: block;
  border: 1px solid #999;
  margin: 0 0 20px 0;
  font-size: 16px;
  position: relative;
  z-index: 100;
  background: #fff
}

#product-action .wpcf7 input[type="tel"] {
  margin-bottom: 25px
}

#product-action .wpcf7 input[type="submit"] {
  width: 200px;
  font-size: 17px;
  text-align: center;
  border: 0;
  text-decoration: none;
  -webkit-appearance: none;
  box-shadow: none;
  cursor: pointer;
  padding: 14px 40px;
  margin: 0 auto;
  transition: all .5s ease;
  position: relative;
  display: block;
  font-weight: bold;
  border-radius: 2px
}

#product-action label {
  font-size: 15px;
  text-transform: none;
  text-align: left;
  color: #666
}

#product-action .callme-form p.gp-wpcf7-note,
#product-action .callme-form p.gp-wpcf7-note a {
  color: #444;
  font-size: 13px
}

#product-action p {
  color: #fff;
  font-size: 14px;
  display: block;
  margin-bottom: 0;
  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
  font-weight: normal;
  text-transform: none
}

#product-action .wpcf7 input[type="text"]:focus {
  border-color: #0fabbc !important
}


/* 41 Внутренняя навигация в записях */
.post-navigation {
  margin: 40px 0 0;
  float: left;
  width: 100%
}

.main-col-fullwidth .post-navigation {
  max-width: 900px;
  margin: 0 auto 40px
}

.nav-box-item-wrapper {
  float: left;
  width: 100%
}

.nav-box-next {
  float: right;
  width: 48%
}

.nav-box-prev {
  float: left;
  width: 48%;
  margin-right: 4%
}

.nav-box {
  position: relative
}

.nav-box-img {
  float: left;
  position: relative;
  margin-bottom: 10px;
  overflow: hidden
}

.nav-box-next,
.nav-box-prev {
  transition: .3s ease
}

.nav-box-next:hover,
.nav-box-prev:hover {
  box-shadow: 1px 12px 15px -5px rgba(0, 0, 0, 0.15)
}

.nav-box em {
  font-size: 13px;
  line-height: 1;
  display: block;
  font-style: normal;
  position: absolute;
  bottom: 10px;
  left: 0;
  padding: 12px 18px;
  text-align: center;
  font-weight: bold
}

.nav-box span.post-title {
  font-size: 18px;
  line-height: 1.3;
  margin: 0;
  font-weight: bold;
  display: block;
  padding: 20px
}

.nav-box span.post-title a {
  text-decoration: none
}

.nav-box span.post-title a:hover {
  text-decoration: underline
}


/* 42 Хл. крошки */
.breadcrumbs {
  font-size: 14px;
  color: #999;
  margin-bottom: 15px
}

.breadcrumbs a {
  text-decoration: none;
  color: #999
}

.breadcrumbs a:hover {
  text-decoration: underline
}

.breadcrumbs__separator .dashicons-arrow-right-alt {
  font-size: 11px !important;
  font-weight: 300;
  padding-top: 5px
}

/* 43 Список дочерних рубрик*/
.sub-cat-title {
  display: inline-block;
  font-size: 15px;
  color: #999;
  margin-right: 20px
}

ul.gp-child-cat-list {
  display: inline-block;
  margin: 0 0 10px;
  list-style: none
}

.tax-tovar_cat ul.gp-child-cat-list {
  margin-top: 25px
}

ul.gp-child-cat-list li {
  display: inline-block;
  font-size: 15px
}

ul.gp-child-cat-list li a {
  display: block;
  padding: 10px 18px;
  margin: 0 15px 15px 0;
  text-decoration: none;
  border-radius: 2px
}

ul.gp-child-cat-list li a:hover {
  text-decoration: none
}

/* 44 Оформление карточки продукта */
.product-bg {
  padding: 25px;
  background: #f7f6fb;
  margin-bottom: 25px
}

.product-bg p {
  font-size: 16px
}

.product-slider {
  float: left;
  width: 67%;
  margin-right: 5%;
  margin-bottom: 40px;
  position: relative;
  z-index: 1
}

.product-single-img {
  margin-bottom: 25px
}

.product-content {
  float: left;
  width: 67%;
  margin-right: 5%;
}

.product-content-fullwidth {
  float: left;
  width: 100%
}

a.scrolling-to-desc {
  color: #999;
  text-decoration: none;
  border-bottom: 1px dotted #999;
  font-size: 16px
}

a.scrolling-to-desc:hover {
  color: #444;
  text-decoration: none
}

.product-info-col {
  float: left;
  width: 28%;
  margin-bottom: 40px
}


/* 45 Слайдер в карточке продукта */
#slider {
  margin-bottom: 15px
}

#carousel .flex-active-slide {
  opacity: .7
}

#carousel img:hover {
  cursor: pointer
}

.loading {
  background: #fff url('img/ajax-loader.gif') 50% 50% no-repeat;
  min-height: 650px;
  width: 100%;
  position: relative;
  z-index: 50
}

.product-slider .wp-caption-text {
  display: none
}

.product-slider-wrapper {
  position: relative
}

.flex-container a:hover,
.flex-slider a:hover {
  outline: 0
}

.slides,
.slides>li,
.flex-control-nav,
.flex-direction-nav {
  margin: 0;
  padding: 0;
  list-style: none
}

.flex-pauseplay span {
  text-transform: capitalize
}

.flexslider {
  margin: 0;
  padding: 0
}

.flexslider .slides>li {
  display: none;
  -webkit-backface-visibility: hidden
}

.flexslider .slides img {
  width: 100%;
  display: block
}

.flexslider .slides:after {
  content: "\0020";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0
}

html[xmlns] .flexslider .slides {
  display: block
}

* html .flexslider .slides {
  height: 1%
}

.no-js .flexslider .slides>li:first-child {
  display: block
}

.flexslider {
  margin: 0;
  position: relative;
  zoom: 1
}

.flexslider .slides {
  zoom: 1
}

.flexslider .slides img {
  height: auto;
  -moz-user-select: none
}

.flex-viewport {
  max-height: 2000px;
  -webkit-transition: all 1s ease;
  -moz-transition: all 1s ease;
  -ms-transition: all 1s ease;
  -o-transition: all 1s ease;
  transition: all 1s ease
}

.loading .flex-viewport {
  max-height: 300px
}

@-moz-document url-prefix() {
  .loading .flex-viewport {
    max-height: none
  }
}

.carousel li {
  margin-right: 5px
}

.flex-direction-nav {
  *height: 0
}

.flex-direction-nav a {
  outline: 0
}

.flex-direction-nav a {
  text-decoration: none;
  display: block;
  width: 40px;
  height: 40px;
  margin: -20px 0 0;
  position: absolute;
  top: 50%;
  z-index: 10;
  overflow: hidden;
  opacity: 0;
  cursor: pointer;
  background: rgba(0, 0, 0, 8);
  transition: all .3s ease-in-out;
  border-radius: 50%
}

.flex-direction-nav a:before {
  font-family: dashicons;
  content: "\f341";
  font-size: 24px;
  width: 40px;
  height: 40px;
  line-height: 40px;
  color: #fff;
  padding-left: 7px
}

.flex-direction-nav a.flex-next:before {
  content: "\f345";
  padding-right: 7px
}

.flex-direction-nav .flex-prev {
  left: -50px
}

.flex-direction-nav .flex-next {
  right: -50px;
  text-align: right
}

.flexslider:hover .flex-direction-nav .flex-prev {
  opacity: .7;
  left: 10px
}

.flexslider:hover .flex-direction-nav .flex-prev:hover {
  opacity: 1
}

.flexslider:hover .flex-direction-nav .flex-next {
  opacity: .7;
  right: 10px
}

.flexslider:hover .flex-direction-nav .flex-next:hover {
  opacity: 1
}

.flex-direction-nav .flex-disabled {
  opacity: 0 !important;
  filter: alpha(opacity=0);
  cursor: default;
  z-index: -1
}

.flex-control-nav {
  width: 100%;
  position: absolute;
  bottom: -40px;
  text-align: center
}

.flex-control-nav li {
  margin: 0 6px;
  display: inline-block;
  zoom: 1;
  *display: inline
}

.flex-control-paging li a {
  width: 11px;
  height: 11px;
  display: block;
  background: #666;
  background: rgba(0, 0, 0, 0.5);
  cursor: pointer;
  text-indent: -9999px;
  -webkit-box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.3);
  -moz-box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.3);
  -o-box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.3);
  box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.3);
  -webkit-border-radius: 20px;
  -moz-border-radius: 20px;
  border-radius: 20px
}

.flex-control-paging li a:hover {
  background: rgba(0, 0, 0, 0.7)
}

.flex-control-paging li a.flex-active {
  background: #000;
  background: rgba(0, 0, 0, 0.9);
  cursor: default
}

.flex-control-thumbs {
  margin: 5px 0 0;
  position: static;
  overflow: hidden
}

.flex-control-thumbs li {
  width: 25%;
  float: left;
  margin: 0
}

@media screen and (max-width:860px) {
  .flex-direction-nav .flex-prev {
    opacity: 0;
    display: none
  }

  .flex-direction-nav .flex-next {
    opacity: 0;
    display: none
  }
}

/* 46 Рекомендованные продукты */
.product-recommend {
  float: left;
  width: 100%;
  margin-top: 30px
}

.product-recommend .gp-product-title {
  font-size: 16px
}

.product-recommend .gp-product-item {
  float: left;
  width: 47.5%;
  margin-right: 5%;
  margin-bottom: 0;
  position: relative;
  z-index: 1;
  border-radius: 4px
}

.product-recommend .gp-product-item:nth-of-type(2n) {
  margin-right: 0
}

.error404 .product-recommend .gp-product-item {
  width: 31.333%;
  margin-right: 3%
}

.error404 .product-recommend .gp-product-item:nth-of-type(2n) {
  margin-right: 3%
}

.error404 .product-recommend .gp-product-item:nth-of-type(3n) {
  margin-right: 0
}

.product-recommend .gp-home-price {
  font-size: 18px
}


/* 47 Виджеты сайта */
.widget {
  margin-bottom: 50px
}

.widget-title {
  display: block;
  font-size: 14px;
  padding-bottom: 15px;
  margin-bottom: 25px;
  border-bottom: 1px solid #e6e6e6;
  position: relative;
  font-weight: bold;
  text-transform: uppercase
}

.widget-title:before {
  content: '';
  width: 50px;
  height: 1px;
  position: absolute;
  bottom: -1px;
  left: 0;
  background: #d9455f
}

.widget a {
  text-decoration: none
}

.widget a:hover {
  text-decoration: underline
}

.widget p a,
.widget p a:hover {
  text-decoration: underline
}

.widget:last-child {
  margin-bottom: 0
}

.widget .screen-reader-text {
  display: none
}

.widget ul {
  margin: 0
}

/* Виджет метки */
.widget .tagcloud {
  width: 100%;
  display: inline-block
}

.widget .tagcloud a {
  float: left;
  line-height: 13px;
  font-size: 13px !important;
  text-decoration: none;
  margin: 0 9px 9px 0;
  padding: 10px 8px;
  border: 1px dashed #e6e6e6;
  color: #999
}

.widget .tagcloud a:hover {
  text-decoration: none
}


/* 48 Комментарии в записях */

/* список комментов */


.comments-box {
  margin: 0;
  float: left;
  width: 100%
}

ol.commentlist {
  margin: 20px 0 15px
}

ol.commentlist li div.vcard cite.fn a.url:hover {
  text-decoration: none
}

ol.commentlist li {
  margin-top: 25px;
  list-style-type: none;
  position: relative
}

ol.commentlist li .comment-author .fn {
  font-size: 18px;
  position: relative;
  font-weight: bold
}

ol.commentlist li div.vcard cite.fn a.url {
  text-decoration: none
}

ol.commentlist li .comment-author {
  position: relative
}

ol.commentlist li .avatar {
  float: left;
  margin: 0 20px 15px 0
}

ol.commentlist li div.commentmetadata {
  font-size: 12px;
  color: #aeaeb2
}

ol.commentlist li div.comment-meta {
  margin: 0 0 10px 0
}

ol.commentlist li div.comment-meta a {
  text-decoration: none;
  color: #aeaeb2
}

.comment-note {
  font-size: 14px;
  display: block
}

.comment-notes {
  padding: 6px 0;
  margin: 0
}

ol.commentlist li p {
  padding: 10px 0 7px 0;
  margin: 0
}

ol.commentlist li .reply {
  display: inline-block;
  font-size: 15px;
  line-height: 1;
  cursor: pointer;
  text-decoration: none;
  transition: all .3s ease-in-out;
  border: 1px solid #eeeeef;
  padding: 8px 10px;
  margin: 10px 0;
  color: #999
}

ol.children {
  margin: 0;
  padding: 0
}

ol.children li {
  margin: 30px 0 20px 25px;
  padding: 0;
  position: relative
}

ol.children li:before {
  content: '';
  background: url('img/dots.png') no-repeat;
  position: absolute;
  top: -11px;
  left: -25px;
  width: 15px;
  height: 15px
}

#comment {
  margin-bottom: 30px
}

#reply-title {
  margin: 40px 0 25px;
  display: block;
  font-size: 20px
}

.comment-title {
  margin-bottom: 40px;
  display: block;
  font-size: 20px
}

.comment-reply-title {
  margin-top: 30px
}

.top-text .vcard {
  display: inline-block;
  margin-bottom: 40px
}

a#cancel-comment-reply-link {
  display: inline-block;
  padding-top: 2px;
  position: relative;
  text-decoration: none;
  overflow: hidden;
  width: 30px;
  height: 30px
}

a#cancel-comment-reply-link:before {
  font-family: dashicons;
  content: "\f335";
  font-size: 24px;
  color: red
}

.comments-box .says {
  display: none
}

.comments-box .navigation {
  width: 100%;
  margin: 40px 0 40px;
  text-align: center;
  border-top: 1px solid #eeeeef;
  border-bottom: 1px solid #eeeeef;
  padding: 20px 0
}

.comments-box .navigation .nav-previous {
  width: 50%;
  float: left;
  text-align: left;
  position: relative
}

.comments-box .navigation .nav-previous a {
  padding-left: 42px
}

.comments-box .navigation .nav-previous a:before {
  text-align: center;
  position: absolute;
  top: 0;
  left: 0;
  font-size: 18px;
  width: 28px;
  height: 28px;
  line-height: 28px;
  font-family: dashicons;
  font-weight: 400;
  content: "\f340"
}

.comments-box .navigation .nav-next {
  width: 50%;
  float: right;
  text-align: right
}

.comments-box .navigation .nav-next a {
  padding-right: 42px
}

.comments-box .navigation .nav-next a:before {
  text-align: center;
  position: absolute;
  top: 0;
  right: 0;
  font-size: 18px;
  width: 28px;
  height: 28px;
  line-height: 28px;
  font-family: dashicons;
  font-weight: 400;
  content: "\f344"
}

.comments-box .navigation a {
  color: #999;
  text-decoration: none;
  position: relative
}

.comments-box .navigation a:hover {
  text-decoration: underline
}

/* форма отправки комментария */
.gp-comment-form {
  margin-bottom: 0
}

.comment-form input[type="text"],
.comment-form input[type="email"] {
  font-family: inherit;
  font-size: 18px;
  width: 100%;
  padding: 10px;
  margin: 0;
  border: 1px solid #999
}

#commentform textarea {
  font-family: inherit;
  height: 200px;
  width: 100%;
  border: 1px solid #999;
  padding: 10px;
  font-size: 18px;
  line-height: 24px;
  display: block;
  float: left;
  position: relative;
  z-index: 2
}

p.comment-form-author,
p.comment-form-email,
p.comment-form-url {
  width: 48%;
  float: left;
  margin-left: 4%;
  display: block
}

.comment-form label {
  font-size: 15px;
  margin-bottom: 12px;
  color: #999
}

#commentform input:focus,
#commentform textarea:focus {
  outline: 0;
  border-color: #50bda1
}

ol.commentlist li #respond p.comment-form-author,
ol.commentlist li #respond p.comment-form-email,
ol.commentlist li #respond p.comment-form-url {
  width: 48%;
  float: left;
  margin-left: 4%
}

ol.commentlist li #respond p.comment-form-comment {
  margin-left: 0
}

p.comment-form-author,
ol.commentlist li #respond p.comment-form-author {
  margin-left: 0
}

.logged-in-as a,
.comment-notes,
.comment-awaiting-moderation,
.logged-in-as,
.form-allowed-tags {
  font-size: 16px;
  margin-bottom: 30px;
  color: #999
}

.no-comments {
  color: #aeaeb2;
  padding-top: 1.6em
}

.comment-navigation+.no-comments {
  border-top: 0
}

.required,
a#cancel-comment-reply-link {
  color: red
}

#wp-comment-cookies-consent {
  margin-right: 10px
}

.comments-box .gp-notice {
  margin-bottom: 0;
  display: inline-table;
  padding: 0;
  font-size: 15px;
  line-height: 1.5;
  color: #999
}

.comments-box .gp-notice a {
  color: #999
}

.comment-awaiting-moderation {
  color: green;
  font-size: 12px;
  line-height: 1.3;
  display: block;
  font-style: normal;
  text-align: left;
  padding: 0;
  margin: 0
}

#comments-checkbox {
  display: block;
  float: left;
  margin: 5px 10px 15px 5px
}

.comment-form input[type="submit"] {
  display: block;
  padding: 16px 24px;
  text-align: center;
  margin: 26px 0 20px;
  border: 0;
  font-size: 17px;
  -webkit-appearance: none;
  cursor: pointer;
  transition: all .4s ease;
  font-weight: bold
}

ol.commentlist li p.form-submit {
  padding: 0
}

/* 49 Списки сайта */
/* маркированные */
.post-content ul li,
.widget ul li,
.gp-custom-content ul li {
  position: relative;
  padding: 0;
  margin-bottom: 10px;
  list-style-type: square;
  list-style-position: inside
}

.post-content ul li ul,
.widget ul li ul,
.gp-custom-content ul li ul {
  margin: 15px 0 15px 20px
}

.post-content ul li ul li ul,
.widget ul li ul li ul,
.gp-custom-content ul li ul li ul {
  margin: 10px 0 14px 20px
}

.widget ul li:last-child,
.gp-custom-content ul i:last-child {
  margin-bottom: 0
}

.post-content ul,
.post-content ol {
  margin: 5px 0 25px 0
}

.product-content ul li {
  position: relative;
  padding: 0;
  margin-bottom: 10px;
  list-style-type: square;
  list-style-position: inside
}

.product-content ul li ul {
  margin: 15px 0 15px 20px
}

.product-content ul li ul li ul {
  margin: 10px 0 14px 20px
}

.product-content ol {
  margin: 20px 0 25px 0
}

/* нумерованные */
ol {
  list-style: decimal;
  list-style-position: inside;
  margin: 25px 0 25px 0
}

ol li {
  margin: 0;
  padding: 0 0 10px 0
}

ol ol {
  list-style: upper-alpha
}

ol ol ol {
  list-style: lower-roman
}

ol ol ol ol {
  list-style: lower-alpha
}


/* 50 Оформление изображений, галерей */
img.alignleft,
iframe.alignleft {
  float: left;
  margin: 5px 35px 20px 0
}

img.aligncenter {
  float: none !important;
  margin: 30px auto
}

img.aligncenter:after {
  content: '';
  display: block;
  clear: both
}

.aligncenter,
div.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto
}

.wp-caption {
  margin-bottom: 15px;
  max-width: 100%;
  height: auto
}

.wp-caption img {
  margin: 0;
  padding: 0;
  border: 0 none
}

.wp-caption-text,
.blocks-gallery-caption,
figcaption {
  font-size: 14px;
  line-height: 1.2;
  color: #999;
  display: block;
  margin-bottom: 5px
}

.wp-caption.alignleft {
  float: left;
  margin: 5px 30px 7px 0
}

.wp-caption.alignright {
  float: right;
  margin: 5px 0 7px 30px
}

.wp-caption.aligncenter,
.attachment img {
  display: block;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 20px
}

img.alignright,
iframe.alignright {
  float: right;
  margin: 5px 0 20px 35px
}

.gallery,
.wp-block-gallery {
  margin: 10px 0 20px;
  width: 100%
}

.gallery .gallery-item {
  float: left;
  margin-top: 0;
  margin-bottom: 10px;
  padding: 0 5px;
  width: 33.33%
}

.gallery-columns-2 .gallery-item {
  width: 50%
}

.gallery-columns-4 .gallery-item {
  width: 25%
}

.gallery img:hover {
  background: white
}

.gallery-columns-2 .attachment-medium {
  max-width: 92%;
  height: auto
}

.gallery-columns-4 .attachment-thumbnail {
  max-width: 84%;
  height: auto
}

.gallery .gallery-caption {
  color: #999;
  font-size: 17px;
  margin: 0 0 12px 5px
}

.gallery dl,
.gallery dt {
  margin: 0
}

.gp-sli-wid {
  margin: 0;
  position: relative;
  max-width: 370px
}

.wp-block-gallery .blocks-gallery-item {
  display: inline-block
}

.blocks-gallery-grid {
  margin: 0 !important
}

.wp-block-embed.aligncenter iframe {
  display: block;
  margin: 0 auto 30px;
  float: none
}

.wp-block-embed.aligncenter figcaption {
  text-align: center
}

.wp-block-gallery figcaption {
  bottom: -5px !important;
  text-align: left !important
}

.wp-block-embed {
  margin: 20px auto 40px;
  width: 100%;
  max-width: 780px;
  display: block
}

.blocks-gallery-caption {
  color: #999;
  font-size: 14px;
  margin-bottom: 10px
}

.wp-block-image {
  margin-bottom: 30px
}

.wp-block-cover {
  margin-bottom: 35px
}

.wp-block-image {
  position: relative
}

.wp-block-image figcaption {
  position: absolute;
  bottom: -14px;
  left: 0;
  width: 100%;
  padding: 10px 15px;
  background: rgba(51, 51, 51, .6);
  font-size: 14px;
  color: #f9f9f9
}


/* 51 Чистая страница */
.blank-page-wrap {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  background-color: #fff
}

.blank-page-port {
  max-width: 1200px;
  margin: 0 auto
}

/* 52 Раздел Контакты на главной и на внутряке */
.contact-container {
  padding: 130px 0 20px
}

.contact-container-wrap {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  max-width: 1260px;
  margin: auto
}

.sub-title {
  display: table
}

/* Левая и правая колонки */
.gp-contact-left {
  float: left;
  width: 50%;
  margin-right: 5%;
  padding-top: 35px
}

.gp-contact-right {
  float: left;
  width: 45%;
  position: relative;
  margin-bottom: 20px
}

/* ячейки в левой колонке */
.contact-item {
  float: left;
  width: 48%;
  position: relative;
  padding-left: 70px;
  margin-right: 4%;
  margin-bottom: 40px;
  z-index: 10
}

.contact-item:nth-of-type(2n) {
  margin-right: 0
}

.contact-item.item1:before,
.contact-item.item2:before,
.contact-item.item3:before,
.contact-item.item4:before {
  font-family: dashicons;
  font-size: 30px;
  line-height: 50px;
  text-align: center;
  width: 50px;
  height: 50px;
  position: absolute;
  top: 2px;
  left: 0;
  bottom: 0;
  color: #fff
}

.contact-item.item1:before {
  content: "\f525"
}

.contact-item.item2:before {
  content: "\f473"
}

.contact-item.item3:before {
  content: "\f231"
}

.contact-item.item4:before {
  content: "\f469"
}

/* форма отправки сообщений в правой колонке */
.contact-form-container {
  padding: 40px 35px 40px;
  box-shadow: 0 22px 30px 0 rgba(15, 8, 49, 0.1);
  border-radius: 9px;
  background: rgba(214, 229, 250, 0.7)
}

.gp-contact-right .wpcf7 input[type="text"],
.gp-contact-right .wpcf7 input[type="tel"],
.gp-contact-right .wpcf7 input[type="email"] {
  font-family: inherit;
  width: 100%;
  float: left;
  padding: 15px 15px;
  display: block;
  border: 1px solid #fff;
  margin: 0;
  color: #52627b;
  font-size: 16px;
  position: relative;
  z-index: 100;
  background: #fff;
  -webkit-appearance: none
}

.gp-contact-right .wpcf7 textarea {
  font-family: inherit;
  width: 100%;
  height: 120px;
  float: left;
  padding: 15px 15px;
  display: block;
  border: 1px solid #fff;
  margin: 0;
  color: #52627b;
  font-size: 16px;
  position: relative;
  z-index: 100;
  background: #fff;
}

.gp-contact-right .wpcf7 p {
  margin: 0
}

.wpcf7 input:focus,
.wpcf7 textarea:focus,
.wpcf7-select:focus {
  outline: 0;
  border-color: #46b3e6 !important
}

.contact-form-notice {
  font-size: 13px;
  display: block;
  margin: 0;
  line-height: 1.4;
  color: #777;
  position: absolute;
  width: 250px;
  bottom: 40px;
  right: 30px
}

.gp-contact-right .gp-notice a {
  text-decoration: underline
}

.gp-contact-right .wpcf7-submit {
  font-size: 16px;
  padding: 16px 25px;
  text-decoration: none;
  display: inline-block;
  text-align: center;
  cursor: pointer;
  transition: all .4s ease;
  font-weight: bold;
}

.gp-contact-right .wpcf7-not-valid-tip {
  font-size: 13px !important;
  border: none !important;
  display: block !important
}

.gp-contact-right .wpcf7-response-output.wpcf7-display-none.wpcf7-validation-errors {
  display: inline-block;
  width: 100%;
  text-align: center;
  margin: 0 auto 20px;
  border: 0;
  background: red;
  color: #fff;
  font-size: 15px
}

.gp-contact-right .wpcf7-mail-sent-ok {
  border: none !important;
  background: #5eb7b7;
  color: #fff;
  margin: 0 0 20px 0 !important;
  padding: 15px !important
}

.gp-contact-right .wpcf7-response-output {
  text-align: center;
  width: 100%;
  font-size: 16px
}

.gp-contact-right .wpcf7-mail-sent-ok {
  display: inline-block
}

.gp-contact-right .wpcf7-select {
  font-family: inherit;
  width: 100%;
  float: left;
  padding: 15px 15px;
  display: block;
  border: 1px solid #fff;
  margin: 0;
  color: #444;
  font-size: 17px;
  position: relative;
  z-index: 100;
  background: #fff;
  -webkit-appearance: none;
  overflow: hidden;
  border-radius: 0 !important;
  display: block
}

.gp-contact-right .wpcf7-select:hover {
  cursor: pointer
}

.gp-contact-right .wpcf7-form-control-wrap {
  display: block;
  margin-bottom: 23px;
  float: left;
  width: 100%
}

.gp-contact-left .contact-icons {
  float: left;
  text-align: left;
  margin-right: 0;
  margin-top: 0
}

.gp-contact-left .transparent-icons li {
  transition: all .4s ease
}

.gp-contact-left .transparent-icons li:first-child {
  margin-left: 0
}

div.wpcf7-response-output {
  margin: 5px 0 20px !important;
  border: 0 !important;
  background: #eb6383;
  color: #fff;
  padding: 20px !important;
  display: inline-block
}

div.wpcf7-mail-sent-ok,
.wpcf7 form.sent .wpcf7-response-output {
  margin: 15px 0 !important;
  border: 0 !important;
  background: #43d8c9;
  color: #fff;
  padding: 20px !important
}

/* 53 иконки соц сетей в контактах */
.transparent-icons li {
  float: left;
  margin-right: 15px;
  width: 40px;
  height: 40px;
  line-height: 40px;
  text-align: center;
  padding: 0;
  display: block;
  margin-bottom: 15px;
  border-radius: 50%;
}

.transparent-icons li a {
  width: 100%;
  height: 100%;
  display: block;
  transition: all .3s linear;
  text-indent: -9999px;
  text-decoration: none
}

.transparent-icons .vk {
  background: url('img/social-icons/transparent/vkontakte.png') no-repeat;
  background-size: cover
}

.transparent-icons .fb {
  background: url('img/social-icons/transparent/facebook.png') no-repeat;
  background-size: cover
}

.transparent-icons .tw {
  background: url('img/social-icons/transparent/twitter.png') no-repeat;
  background-size: cover
}

.transparent-icons .inst {
  background: url('img/social-icons/transparent/instagram.png') no-repeat;
  background-size: cover
}

.transparent-icons .yt {
  background: url('img/social-icons/transparent/youtube.png') no-repeat;
  background-size: cover
}

.transparent-icons .tg {
  background: url('img/social-icons/transparent/telegram.png') no-repeat;
  background-size: cover
}

.transparent-icons .ok {
  background: url('img/social-icons/transparent/odnoklassniki.png') no-repeat;
  background-size: cover
}



/* 54 Адаптивность */


@media only screen and (max-width:1280px) {
  .port {
    padding: 0 30px
  }

  .pl-lang-select {
    text-align: left
  }

  .gp-poster_caption {
    padding: 140px 0;
    margin-left: 100px
  }

  h2.gp-poster_title {
    font-size: 46px
  }

  .about-container {
    padding-top: 90px
  }

  .testimonials-text {
    width: 80%;
  }
}

@media only screen and (max-width:1240px) {
  .contact-form-notice {
    position: relative;
    bottom: 0;
    right: 0;
    left: 0;
    margin-top: 22px;
    width: 100%
  }

  .top-menu a {
    padding: 18px 22px 18px 0;
    font-size: 16px
  }
}

@media only screen and (max-width:1150px) {
  .top-menu a {
    padding: 18px 18px 18px 0;
    font-size: 15px
  }
}

@media only screen and (max-width:1100px) {
  body {
    font-size: 16px
  }

  .test-foto1,
  .test-foto2,
  .test-foto3,
  .test-foto4,
  .test-foto5,
  .test-foto6 {
    display: none
  }

  .home-testimonials-wrap,
  .testimonials-text {
    width: 100%
  }

  .testimonials-text {
    padding: 0 20px
  }

  .person-foto,
  .person-foto img {
    width: 130px;
    height: 130px
  }

  .search-title {
    font-size: 18px
  }
}

@media only screen and (max-width:1070px) {
  .post-col {
    width: 100%;
    float: left;
    margin: 0 0 30px 0
  }

  .sidebar {
    width: 100%;
    margin: 0;
    padding: 0 80px
  }

  .product-recommend {
    padding: 0 80px
  }

  .product-content {
    width: 100%;
    margin-right: 0;
    margin-bottom: 30px
  }
}

@media only screen and (max-width:1024px) {
  .port {
    padding: 0 20px
  }

  .gp-promo {
    height: 45px;
    margin-bottom: 20px
  }

  .gp-promo-content {
    display: none
  }

  #gp-promo-search-button {
    display: block;
    color: #fff
  }

  header {
    border-bottom: 1px solid #e6e6e6;
    margin-bottom: 25px;
    padding-bottom: 15px
  }

  .home header {
    margin-bottom: 0;
    border: 0
  }

  #menu {
    margin-left: -9999px;
    width: 0;
    height: 0;
    overflow: hidden
  }

  .top-menu {
    border: none
  }

  .menunav {
    border: none;
    margin-bottom: 0;
  }

  .top-menu ul {
    opacity: 1;
    position: relative;
    top: 0;
    left: 0;
    background: none;
    box-shadow: none;
    padding: 0;
    min-width: 100%;
    transition: none
  }

  .top-menu a {
    font-size: 15px;
    font-weight: 400
  }

  .top-menu li li a,
  .top-menu li:hover li a {
    padding: 10px 10px 10px 20px;
    color: #444;
    /*font-size: 13px*/
  }

  .top-menu li a:hover,
  .top-menu li li a:hover,
  .top-menu li:hover li a:hover {
    color: #32e0c4;
    text-decoration: underline;
  }

  .menu-item-has-children:after,
  .top-menu li ul li.menu-item-has-children:after {
    content: ''
  }

  .top-menu .menu-item-has-children a {
    padding-right: 0;
    z-index: 100
  }

  .top-menu ul li ul {
    top: 0 !important
  }

  .top-menu li {
    transition: none
  }

  .site-title {
    width: 60%
  }

  .contact-header-item {
    width: 100%;
    margin: 0;
    padding: 5px 0 0 0;
    font-size: 16px;
    text-align: right;
  }

  .contact-header-item span {
    display: none
  }

  .contact-header {
    width: 40%;
    flex-direction: column;
    margin-bottom: 12px
  }

  .gp-poster_caption {
    padding: 100px 0;
    margin-left: 40px;
    max-width: 650px
  }

  h2.gp-poster_title {
    font-size: 36px
  }

  .gp-poster_caption p {
    font-size: 18px
  }

  .gp-poster_button {
    padding: 16px 25px
  }

  .toggle-search {
    top: -63px;
    border: 0;
    left: 120px;
    z-index: 10;
    color: #fff
  }

  .toggle-search:before {
    font-size: 20px
  }

  #menu-icon {
    display: block
  }

  .product-container {
    padding: 90px 0 0
  }

  .home-about-img {
    width: 100%
  }

  .home-about-items {
    width: 100%;
    padding: 0 30px
  }

  .about-item {
    padding: 30px 0 0
  }

  .counter-item {
    font-size: 13px
  }

  .counter {
    font-size: 36px
  }

  .home .rtng-star .dashicons,
  .archive .rtng-star .dashicons {
    font-size: 15px
  }

  .home .rtng-rating-total,
  .home .rtng-star-rating,
  .archive .rtng-rating-total {
    width: 110px;
  }

  .home .gp-home-price,
  .archive .gp-home-price {
    width: 100px;
    font-size: 17px
  }

  .gp_terms ul li,
  .gp-tax-item {
    width: 31.33%;
    margin-right: 3%
  }

  .gp_terms ul li:nth-of-type(3n),
  .gp-tax-item:nth-of-type(3n) {
    margin-right: 0
  }

  .gp_terms ul li:nth-of-type(4n),
  .gp-tax-item:nth-of-type(4n) {
    margin-right: 3%
  }

  .gp-product-title {
    font-size: 18px;
    margin-bottom: 15px
  }

  .offer-title {
    font-size: 30px
  }

  .gp-offer p {
    font-size: 13px;
    line-height: 1.3
  }

  #offer2.offer-container:before {
    left: -1650px
  }

  .service-item {
    width: 48%;
    margin-right: 4%
  }

  .service-item:nth-of-type(3n) {
    margin-right: 4%
  }

  .service-item:nth-of-type(2n) {
    margin-right: 0
  }

  .service-container {
    padding-bottom: 0
  }

  .gallery-caption {
    font-size: 17px
  }

  .gp-gallery-item:hover .gallery-caption {
    left: 25px
  }

  .person-info .name {
    font-size: 20px
  }

  .news-container {
    padding-bottom: 0
  }

  .news-post {
    width: 48%;
    margin-right: 4%
  }

  .news-post:nth-of-type(3n) {
    margin-right: 4%
  }

  .news-post:nth-of-type(2n) {
    margin-right: 0
  }

  .contact-container-wrap {
    display: block
  }

  .gp-contact-left {
    width: 100%;
    margin: 0 auto;
    float: none;
    padding-top: 0;
    margin-bottom: 40px;
    text-align: center
  }

  .gp-contact-right {
    width: 100%;
    margin: 0 auto 40px;
    float: none
  }

  .contact-item {
    padding: 80px 20px 20px 20px;
    background: rgba(214, 229, 250, 0.3)
  }

  .contact-item.item1:before,
  .contact-item.item2:before,
  .contact-item.item3:before,
  .contact-item.item4:before {
    top: 20px;
    left: 50%;
    margin-left: -25px
  }

  .gp-contact-left .contact-icons {
    float: none;
    margin: 0 auto;
    text-align: center
  }

  .contact-form-title {
    margin-bottom: 30px
  }

  .transparent-icons li {
    text-align: center;
    float: none;
    display: inline-block
  }

  .product-slider,
  .product-info-col {
    width: 100%
  }

  .single-tovar .gp-product-title {
    font-size: 14px
  }

  /*.single-tovar .gp-home-price {float: left; text-align: left}*/
  .sidebar .widget:last-child {
    margin-bottom: 0
  }

  .search-results .nav-links,
  .blog .nav-links {
    float: none;
    text-align: center
  }

  .product-recommend .gp-product-item {
    max-width: 400px
  }

  .product-recommend {
    margin-bottom: 30px
  }

  .transparent-icons li {
    width: 34px;
    height: 34px;
    line-height: 32px
  }

  .search-title {
    font-size: 16px
  }

  .product-content-title:before,
  .recommend-title:before,
  .comment-title:before,
  .contact-form-title:before,
  .sub-title:before {
    content: '';
    background: none
  }

  .sub-title {
    border: none;
    margin-bottom: 20px
  }

  .sidebar {
    padding: 0
  }

  .product-recommend {
    padding: 0
  }

  h1.search-title {
    font-size: 22px
  }

  a.scrolling-to-desc {
    display: none
  }

  .widget_media_image {
    text-align: center
  }
}

@media only screen and (max-width:900px) {
  .rtng-star .dashicons {
    font-size: 18px
  }

  .rtng-star-rating {
    width: 135px;
  }

  h1.single-product-title {
    font-size: 28px;
    margin-top: 10px
  }

  .breadcrumbs {
    font-size: 12px
  }

  .breadcrumbs__separator .dashicons-arrow-right-alt {
    padding-top: 3px
  }

  .gp-home-price {
    width: 100px;
    font-size: 20px
  }

  .gp-product-item {
    width: 48%;
    margin-right: 4%
  }

  .gp-product-item:nth-of-type(3n) {
    margin-right: 4%
  }

  .gp-product-item:nth-of-type(2n) {
    margin-right: 0
  }

  .gp-gallery-item {
    width: 48%;
    margin: 0 4% 0 0;
    margin-bottom: 30px
  }

  .gp-gallery-item:nth-of-type(2n) {
    margin-right: 0
  }

  .product-wrap,
  .home-gallery-wrap,
  .home-service-wrap,
  .home-news-wrap {
    padding: 0 15px
  }

  .search-title {
    font-size: 15px
  }
}

@media only screen and (max-width:800px) {
  .search-container {
    padding: 20px
  }

  .search-container p {
    font-size: 13px
  }

  .gp-search-modal {
    max-width: 500px;
    margin-left: -230px;
  }

  .gp-search-title {
    font-size: 17px
  }

  .search-container .s {
    font-size: 16px;
    width: 70%
  }

  .search-container .searchSubmit {
    font-size: 16px;
    width: 28%
  }

  .gp_terms ul li,
  .gp-tax-item {
    width: 48%;
    margin-right: 4%
  }

  .gp_terms ul li:nth-of-type(3n),
  .gp-tax-item:nth-of-type(3n) {
    margin-right: 4%
  }

  .gp_terms ul li:nth-of-type(2n),
  .gp-tax-item:nth-of-type(2n) {
    margin-right: 0
  }

  .gp-product-item {
    width: 48%;
    margin-right: 4%
  }

  .gp-product-item:nth-of-type(3n) {
    margin-right: 4%
  }

  .gp-product-item:nth-of-type(2n) {
    margin-right: 0
  }

  h1.blog-title,
  h1.product-title,
  h1.archive-title,
  h1.contact-page-title {
    font-size: 20px
  }

  ul.foot-menu li {
    margin: 0 11px 6px
  }

  ul.foot-menu li a {
    font-size: 14px;
  }

  .call-action {
    width: 100%;
    max-width: 500px;
    margin-left: -250px;
    margin-top: -40px
  }

  .gp-offer .wpcf7 form.sent .wpcf7-response-output {
    padding: 10px !important
  }

  #product-action .wpcf7 form.sent .wpcf7-response-output {
    padding: 5px !important;
    margin: 0 0 15px 0 !important
  }

  .call-caption em {
    font-size: 11px;
    line-height: 17px;
    padding: 0 10px 10px
  }

  div.wpcf7-response-output {
    margin: 0px auto 15px !important;
    padding: 10px !important;
    font-size: 13px
  }

  .search-post {
    width: 100%;
    margin-right: 0
  }

  .search-title {
    font-size: 18px
  }

  .error404 .product-recommend .gp-product-item {
    width: 100%;
    margin-right: 0;
    margin-bottom: 25px
  }

  .error404 .product-recommend .gp-product-item:nth-of-type(2n) {
    margin: 0 0 35px 0
  }

  .product-recommend .gp-product-item:last-child {
    margin: 0
  }
}

@media only screen and (max-width:700px) {
  .site-title {
    width: 100%;
    margin-bottom: 16px;
    padding-bottom: 17px;
    border-bottom: 1px solid #e6e6e6
  }

  .logo-title a {
    text-align: center;
    margin: 0 auto;
    float: none
  }

  .text-title {
    text-align: center;
  }

  .contact-header {
    width: 100%;
    float: none;
    margin: 0 auto 0;
    flex-direction: row
  }

  .contact-header-item {
    width: 50%;
    margin: 0;
    padding: 0 20px;
    font-size: 15px;
    text-align: center;
    border-right: 1px solid #e6e6e6
  }

  .contact-header-item:nth-of-type(2) {
    border: 0
  }

  .contact-header-item span {
    display: block;
    font-size: 12px
  }

  .text-title h1,
  .text-title span {
    font-size: 24px
  }

  .header-site-desc {
    font-size: 12px
  }

  .gp-product-item {
    float: none;
    width: 100%;
    max-width: 390px;
    margin: 0 auto 40px
  }

  .gp-product-item:nth-of-type(3n),
  .gp-product-item:nth-of-type(2n) {
    margin: 0 auto 40px
  }

  .gp-product-wrap {
    padding: 15px 20px 12px
  }

  .gp-product-metabox {
    padding: 15px;
    margin-bottom: 0
  }

  .gp-product-metabox ul.product-attributes {
    font-size: 15px
  }

  .gp-home-price {
    font-size: 20px
  }

  .rtng-star .dashicons {
    font-size: 17px
  }

  .single-tovar .gp-home-price {
    float: right;
    text-align: right
  }

  .single-tovar .gp-product-title {
    font-size: 17px
  }

  .gp-gallery-item {
    float: none;
    width: 100%;
    max-width: 400px;
    margin: 0 auto 30px
  }

  .gp-gallery-item:nth-of-type(3n),
  .gp-gallery-item:nth-of-type(2n) {
    margin: 0 auto 30px
  }

  .service-item {
    float: none;
    width: 100%;
    max-width: 390px;
    margin: 0 auto 40px;
    padding: 20px
  }

  .service-item:nth-of-type(3n),
  .service-item:nth-of-type(2n) {
    margin: 0 auto 40px
  }

  .news-post {
    float: none;
    width: 100%;
    max-width: 390px;
    margin: 0 auto 40px
  }

  .news-post:nth-of-type(3n),
  .news-post:nth-of-type(2n) {
    margin: 0 auto 40px
  }

  .blog-post .post-header {
    padding-top: 0;
    margin-bottom: 7px
  }

  .blog-thumb {
    width: 200px
  }

  .blog-post h2.post-title {
    font-size: 18px
  }

  .blog-post p {
    font-size: 15px
  }

  .pagination a.page-numbers,
  .pagination .dots {
    display: none
  }

  .pagination .page-numbers.current,
  .pagination .next,
  .pagination .prev {
    display: inline-block !important
  }

  h1.post-title {
    font-size: 24px
  }

  .archive-desc {
    padding: 18px;
    font-size: 15px;
    text-align: left
  }

  #reply-title,
  .comment-title {
    font-size: 18px
  }

  ol.commentlist li .comment-author .fn {
    font-size: 16px
  }

  ol.commentlist li .avatar {
    margin-bottom: 5px
  }

  .logged-in-as a,
  .comment-notes,
  .comment-awaiting-moderation,
  .logged-in-as,
  .form-allowed-tags,
  .comment-form-cookies-consent label,
  .comments-box .gp-notice {
    font-size: 13px
  }

  .comment-notes {
    margin-bottom: 20px
  }

  .comment-form input[type="submit"] {
    padding: 16px 20px;
    font-size: 15px
  }

  h1 {
    font-size: 20px
  }

  h2 {
    font-size: 18px
  }

  h3 {
    font-size: 16px
  }

  h4 {
    font-size: 15px
  }

  h5 {
    font-size: 14px
  }

  h6 {
    font-size: 13px
  }

  h1.search-title {
    font-size: 18px
  }
}

@media only screen and (max-width:600px) {
  .gp-poster_caption {
    padding: 100px 0 80px;
    margin-left: 20px;
    max-width: 550px
  }

  h2.gp-poster_title {
    font-size: 30px
  }

  .gp-poster_caption p {
    font-size: 16px
  }

  .blog-post {
    margin-bottom: 45px;
    border-bottom: 1px solid #e6e6e6;
    padding-bottom: 35px
  }

  .blog-thumb {
    width: auto;
    float: none;
    display: block;
    margin: 0 auto 20px
  }

  .blog-post h2.post-title,
  .blog-post p,
  .blog-post .post-header {
    text-align: center
  }

  a.read-more {
    padding-left: 0
  }

  .blog-post h2.post-title {
    font-size: 20px
  }

  .tech-info {
    font-size: 13px;
    text-align: center
  }

  .post-col .ya-share-btns {
    text-align: center
  }

  .nav-box-next,
  .nav-box-prev {
    float: none;
    width: 100%;
    max-width: 390px;
    margin: 0px auto 30px
  }

  .nav-box span.post-title {
    font-size: 16px
  }

  .nav-box-next .blog-thumb,
  .nav-box-prev .blog-thumb {
    margin-bottom: 10px
  }

  p.comment-form-author,
  p.comment-form-email,
  p.comment-form-url {
    width: 100%;
    margin: 0 0 20px 0
  }

  footer {
    margin-top: 40px
  }

  .product-recommend .gp-product-title {
    margin: 10px 0 0 0
  }

  .search-results .entry-header {
    text-align: center
  }

  .search-title {
    font-size: 15px
  }

  .product-content-title,
  .recommend-title,
  .comment-title,
  .contact-form-title {
    font-size: 14px
  }

  .product-recommend .gp-product-item {
    float: left;
    width: 100%;
    margin: 0 0 35px 0
  }

  .product-recommend .gp-product-item:nth-of-type(2n) {
    margin: 0
  }

  .product-recommend .product-wrap {
    display: block
  }

  .gp-search-modal {
    max-width: 440px;
    margin-left: -220px
  }

  ul.gp-child-cat-list li {
    font-size: 14px
  }

  ul.gp-child-cat-list li a {
    padding: 8px 12px;
    margin: 0 10px 10px 0
  }
}

@media only screen and (max-width:500px) {
  body {
    font-size: 15px
  }

  .text-title h1,
  .text-title span {
    font-size: 22px
  }

  h2.gp-poster_title {
    font-size: 28px;
    max-width: 500px;
    margin-bottom: 20px
  }

  .gp-poster_caption p {
    font-size: 15px;
    max-width: 500px
  }

  .gp-poster_button {
    font-size: 14px;
    padding: 15px 20px;
    margin-top: 20px
  }

  a.service-more {
    font-size: 14px;
    padding: 10px 20px;
    margin-top: 20px
  }

  .gp-contact-right .wpcf7-submit {
    font-size: 14px;
    padding: 12px 20px
  }

  .about-container {
    padding: 35px 0 20px
  }

  .home-about-title {
    font-size: 24px;
    margin-bottom: 20px
  }

  .home-about-img img {
    border: 5px solid #fff
  }

  .home-about-items {
    padding: 0
  }

  .about-counter {
    margin-top: 20px
  }

  .counter-item {
    margin-right: 3%;
    font-size: 12px
  }

  .counter {
    font-size: 28px
  }

  .terms-title {
    font-size: 24px;
    margin-bottom: 20px
  }

  .product-container {
    padding-top: 35px;
    margin-bottom: 10px
  }

  .gp-term-name {
    font-size: 16px;
    padding: 0 10px
  }

  .gp-term-description {
    font-size: 13px;
    margin-bottom: 15px;
    padding: 0 10px
  }

  .products-title {
    font-size: 24px;
    margin-bottom: 20px
  }

  .gp-offer {
    padding: 50px 0
  }

  .offer-title {
    font-size: 22px;
    margin-bottom: 20px
  }

  .gp-offer label,
  .call-action label {
    font-size: 12px
  }

  .gp-offer .wpcf7-tel,
  .call-action .wpcf7-tel {
    width: 80%;
    padding: 15px 26px;
    font-size: 16px
  }

  .gallery-title {
    font-size: 24px;
    margin-bottom: 20px
  }

  .gallery-container {
    padding-top: 45px
  }

  .testimonials-container {
    padding: 30px 0 10px
  }

  .testimonials-title {
    font-size: 24px;
    margin-bottom: 20px
  }

  .person-foto,
  .person-foto img {
    width: 100px;
    height: 100px
  }

  .person-foto:after {
    width: 20px;
    height: 20px;
    line-height: 20px;
    font-size: 10px;
    top: 10px;
    left: 0
  }

  .person-info .name {
    font-size: 19px
  }

  .person-info em {
    font-size: 15px
  }

  .item p {
    text-align: left;
    font-size: 16px
  }

  #offer2.offer-container:before {
    left: -1880px
  }

  .service-container {
    padding: 50px 0 0
  }

  .service-title {
    font-size: 24px;
    margin-bottom: 20px
  }

  .service-item-title {
    font-size: 18px;
    margin-bottom: 17px;
    line-height: 1.25
  }

  .service-text p {
    margin-bottom: 20px
  }

  .custom-container {
    padding-top: 30px
  }

  .custom-content1-title,
  .custom-content2-title,
  .custom-content3-title {
    font-size: 24px;
    margin-bottom: 20px;
    padding: 0 15px
  }

  .news-container {
    padding: 30px 0 10px
  }

  .home-news-title {
    font-size: 24px;
    margin-bottom: 20px
  }

  .news-post {
    margin-right: 0;
    width: 100%;
    padding: 20px
  }

  .news-post:nth-of-type(3n) {
    margin-right: 0
  }

  .news-post .post-title {
    font-size: 15px
  }

  .contact-container {
    padding: 30px 0 10px
  }

  .contact-title {
    font-size: 24px;
    margin-bottom: 20px
  }

  .contact-item {
    width: 100%;
    margin: 0 auto 30px;
    padding: 80px 20px 20px 20px;
    background: rgba(214, 229, 250, 0.3)
  }

  .contact-form-container {
    padding: 20px
  }

  .backtop {
    bottom: 20px;
    right: 20px
  }

  .credits {
    padding: 20px 0 30px;
    font-size: 13px;
    line-height: 1.35
  }

  h1.single-product-title {
    font-size: 24px
  }

  .product-bg p,
  a.scrolling-to-desc {
    font-size: 15px
  }

  blockquote {
    padding: 20px 20px 0 20px
  }

  blockquote:after {
    content: ''
  }

  blockquote p {
    font-size: 16px
  }

  #commentform textarea,
  .comment-form input[type="text"],
  .comment-form input[type="email"],
  .comment-form input[type="url"] {
    font-size: 16px
  }

  ol.children li {
    margin: 10px 0 10px 0
  }

  ol.children {
    border-left: 1px solid #e6e6e6;
    padding-left: 20px
  }

  ol.children li:before {
    background: none
  }

  ol.children ol {
    padding: 0;
    border: 0
  }

  ol.commentlist li .comment-author .fn {
    font-size: 15px
  }

  .comment-title {
    margin-bottom: 40px
  }

  .comment-form input[type="submit"] {
    margin-bottom: 20px
  }

  h1.post-title {
    font-size: 22px;
    margin: 0 0 15px;
    line-height: 1.35
  }

  p.comment-form-author,
  p.comment-form-email,
  p.comment-form-url {
    width: 100%;
    margin: 0 0 15px 0
  }

  ol.commentlist li #respond p.comment-form-author,
  ol.commentlist li #respond p.comment-form-email,
  ol.commentlist li #respond p.comment-form-url {
    width: 100%;
    margin: 0 0 8px 0;
    padding: 0
  }

  #respond .comment-note {
    margin-bottom: 20px
  }

  .comment-notes,
  .comment-note,
  .comment-form-cookies-consent label {
    font-size: 13px !important
  }

  #comments-checkbox {
    margin: 4px 10px 40px 5px
  }

  .call-action {
    max-width: 340px;
    margin-left: -170px
  }

  .gp-offer .wpcf7-tel,
  .call-action .wpcf7-tel {
    width: 100%;
    max-width: 100%;
    padding: 12px 10px
  }

  .offer-submit {
    position: relative;
    float: none;
    margin: 15px auto 20px;
    width: 130px;
  }

  .call-action .offer-submit {
    right: -6px
  }

  .gp-search-title {
    font-size: 14px;
  }

  .search-container .s {
    font-size: 15px;
    width: 70%
  }

  .search-container .searchSubmit {
    font-size: 15px;
    width: 28%
  }

  .search-container p {
    font-size: 12px;
    padding-bottom: 10px
  }

  .gp-search-modal .close {
    padding: 10px 0
  }

  h2.search-title {
    font-size: 14px
  }

  .search-post-header {
    font-size: 11px
  }

  a.more-link:before {
    top: 3px
  }
}

@media only screen and (max-width:414px) {
  .contact-header-item {
    padding: 0 10px
  }

  .gp-poster_caption {
    margin-left: 10px;
    max-width: 400px
  }

  h2.gp-poster_title {
    font-size: 22px
  }

  .gp-poster_caption p {
    font-size: 15px
  }

  .gp_terms ul li,
  .gp-tax-item {
    width: 100%;
    margin-right: 0
  }

  .gp_terms ul li:nth-of-type(3n),
  .gp-tax-item:nth-of-type(3n) {
    margin-right: 0
  }

  .custom-content1-title,
  .custom-content2-title,
  .custom-content3-title {
    font-size: 20px
  }

  .logged-in-as a,
  .comment-notes,
  .comment-awaiting-moderation,
  .logged-in-as,
  .form-allowed-tags,
  .comment-form-cookies-consent label,
  .comments-box .gp-notice {
    font-size: 12px
  }

  h1.search-title {
    font-size: 14px
  }

  .gp-search-modal {
    max-width: 380px;
    margin-left: -190px
  }

  ul.gp-child-cat-list li {
    font-size: 13px
  }

  ul.gp-child-cat-list li a {
    padding: 7px 9px
  }
}

@media only screen and (max-width:375px) {

  .product-wrap,
  .home-gallery-wrap,
  .home-service-wrap,
  .home-news-wrap {
    padding: 0
  }

  .contact-header {
    display: block
  }

  .gp-home-price {
    width: 100%;
    float: none;
    font-size: 18px
  }

  .home .gp-home-price,
  .archive .gp-home-price {
    width: 50%;
    float: right;
    text-align: right;
    font-size: 14px
  }

  .gp-offer p {
    font-size: 12px
  }

  .gallery-caption {
    font-size: 16px
  }

  .nav-links .page-numbers,
  .pagination a.page-numbers,
  .pagination .page-numbers.current,
  .post-page-numbers,
  .post-page-numbers.current {
    font-size: 14px
  }

  h1.single-product-title {
    font-size: 19px
  }

  ul.foot-menu li a {
    font-size: 13px
  }

  .product-content-title,
  .recommend-title,
  .comment-title {
    font-size: 18px
  }

  .call-title,
  #product-action .call-title {
    font-size: 16px
  }

  .search-title {
    font-size: 13px
  }

  .gp-search-modal {
    max-width: 320px;
    margin-left: -160px
  }
}

@media only screen and (max-width:320px) {

  .text-title h1,
  .text-title span {
    font-size: 18px
  }

  .header-site-desc {
    font-size: 11px
  }

  .gp-search-modal {
    max-width: 300px;
    margin-left: -150px
  }

  .pl-lang-select {
    width: 125px;
    right: 5px
  }

  .contact-header-item {
    width: 100%;
    margin-top: 10px;
    border-right: 0
  }

  .entry-header {
    text-align: left
  }

  h1.post-title,
  .blog-post h2.post-title {
    font-size: 18px
  }

  .pagination {
    margin-top: 0
  }

  .blog-post {
    padding: 0 0 30px
  }

  .blog-post h2.post-title,
  .blog-post p,
  .blog-post .post-header {
    text-align: left
  }

  .blog-thumb {
    margin: 0 0 20px
  }

  .call-action {
    max-width: 300px;
    margin-left: -150px;
  }

  .search-thumb,
  .empty-thumb {
    display: none
  }

  .search-title {
    font-size: 15px
  }
}


/*  55 Мобильное меню*/


.mm-listview>li {
  float: none
}

.mm-panels>.mm-panel {
  padding: 0 !important
}

.mm-menu,
.mm-panels,
.mm-panels>.mm-panel {
  margin: 0;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: 0;
  box-sizing: border-box
}

.mm-btn,
.mm-menu {
  box-sizing: border-box
}

.mm-listview a,
.mm-listview a:hover,
.mm-navbar a,
.mm-navbar a:hover {
  text-decoration: none
}

.mm-hidden {
  display: none !important
}

.mm-wrapper {
  overflow-x: hidden;
  position: relative
}

.mm-menu {
  display: block;
  padding: 0;
  position: absolute
}

.mm-panels,
.mm-panels>.mm-panel {
  background: inherit;
  border-color: inherit;
  position: absolute
}

.mm-btn,
.mm-panel.mm-highest {
  z-index: 1
}

.mm-panels {
  overflow: hidden
}

.mm-panel {
  transition: -webkit-transform .4s ease;
  transition: transform .4s ease;
  transition: transform .4s ease, -webkit-transform .4s ease;
  -webkit-transform: translate3d(100%, 0, 0);
  transform: translate3d(100%, 0, 0)
}

.mm-panel.mm-opened {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0)
}

.mm-panel.mm-subopened {
  -webkit-transform: translate3d(-30%, 0, 0);
  transform: translate3d(-30%, 0, 0)
}

.mm-panels>.mm-panel {
  -webkit-overflow-scrolling: touch;
  overflow: scroll;
  overflow-x: hidden;
  overflow-y: auto;
  padding: 0 20px
}

.mm-listview .mm-divider,
.mm-listview>li>a,
.mm-listview>li>span,
.mm-navbar .mm-title {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden
}

.mm-panels>.mm-panel.mm-hasnavbar {
  padding-top: 40px
}

.mm-panels>.mm-panel:after,
.mm-panels>.mm-panel:before {
  content: '';
  display: block;
  height: 20px
}

.mm-vertical .mm-panel {
  -webkit-transform: none !important;
  transform: none !important
}

.mm-listview .mm-vertical .mm-panel,
.mm-vertical .mm-listview .mm-panel {
  display: none;
  padding: 10px 0 10px 10px
}

.mm-listview .mm-vertical .mm-panel .mm-listview>li:last-child:after,
.mm-vertical .mm-listview .mm-panel .mm-listview>li:last-child:after {
  border-color: transparent
}

.mm-vertical li.mm-opened>.mm-panel,
li.mm-vertical.mm-opened>.mm-panel {
  display: block
}

.mm-listview>li.mm-vertical>.mm-next,
.mm-vertical .mm-listview>li>.mm-next {
  height: 40px;
  bottom: auto
}

.mm-listview>li.mm-vertical>.mm-next:after,
.mm-vertical .mm-listview>li>.mm-next:after {
  top: 16px;
  bottom: auto
}

.mm-listview>li.mm-vertical.mm-opened>.mm-next:after,
.mm-vertical .mm-listview>li.mm-opened>.mm-next:after {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  right: 19px
}

.mm-btn {
  width: 40px;
  height: 40px;
  position: absolute;
  top: 0
}

.mm-clear:after,
.mm-clear:before,
.mm-close:after,
.mm-close:before {
  content: '';
  border: 2px solid transparent;
  display: block;
  width: 5px;
  height: 5px;
  margin: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg)
}

.mm-clear:before,
.mm-close:before {
  border-right: 0;
  border-bottom: 0;
  right: 18px
}

.mm-clear:after,
.mm-close:after {
  border-left: none;
  border-top: 0;
  right: 25px
}

.mm-arrow:after,
.mm-next:after,
.mm-prev:before {
  content: '';
  border: 2px solid transparent;
  display: block;
  width: 8px;
  height: 8px;
  margin: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg)
}

.mm-prev:before {
  border-right: 0;
  border-bottom: 0;
  left: 23px
}

.mm-arrow:after,
.mm-next:after {
  border-top: 0;
  border-left: none;
  right: 23px
}

.mm-navbar {
  border-bottom: 1px solid;
  border-color: inherit;
  text-align: center;
  line-height: 20px;
  height: 40px;
  padding: 0 40px;
  margin: 0;
  position: absolute;
  top: 0;
  left: 0;
  right: 0
}

.mm-navbar>* {
  display: block;
  padding: 10px 0
}

.mm-navbar .mm-btn:first-child {
  padding-left: 20px;
  left: 0
}

.mm-navbar .mm-btn:last-child {
  text-align: right;
  padding-right: 20px;
  right: 0
}

.mm-panel .mm-navbar {
  display: none
}

.mm-panel.mm-hasnavbar .mm-navbar {
  display: block
}

.mm-listview,
.mm-listview>li {
  list-style: none;
  display: block;
  padding: 0;
  margin: 0
}

.mm-listview {
  font: inherit;
  font-size: 14px;
  line-height: 20px
}

.mm-listview>li {
  position: relative
}

.mm-listview>li,
.mm-listview>li .mm-next,
.mm-listview>li .mm-next:before,
.mm-listview>li:after {
  border-color: inherit
}

.mm-listview>li>a,
.mm-listview>li>span {
  color: inherit;
  display: block;
  padding: 10px 10px 10px 20px;
  margin: 0
}

.mm-listview>li>a.mm-arrow,
.mm-listview>li>span.mm-arrow {
  padding-right: 50px
}

.mm-listview>li:not(.mm-divider):after {
  content: '';
  border-bottom-width: 1px;
  border-bottom-style: solid;
  display: block;
  position: absolute;
  right: 0;
  bottom: 0;
  left: 20px
}

.mm-listview .mm-next {
  background: rgba(3, 2, 1, 0);
  width: 50px;
  padding: 0;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: 2
}

.mm-listview .mm-next:before {
  content: '';
  border-left-width: 1px;
  border-left-style: solid;
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0
}

.mm-listview .mm-next+a,
.mm-listview .mm-next+span {
  margin-right: 50px
}

.mm-listview .mm-next.mm-fullsubopen {
  width: 100%
}

.mm-listview .mm-next.mm-fullsubopen:before {
  border-left: none
}

.mm-listview .mm-next.mm-fullsubopen+a,
.mm-listview .mm-next.mm-fullsubopen+span {
  padding-right: 50px;
  margin-right: 0
}

/*.mm-panels>.mm-panel>.mm-listview{margin:20px -20px}*/
.mm-panels>.mm-panel>.mm-listview:first-child,
.mm-panels>.mm-panel>.mm-navbar+.mm-listview {
  margin-top: -20px
}

.mm-listview .mm-inset {
  list-style: disc inside;
  padding: 0 10px 15px 40px;
  margin: 0
}

.mm-listview .mm-inset>li {
  padding: 5px 0
}

.mm-listview .mm-divider {
  font-size: 10px;
  text-transform: uppercase;
  text-indent: 20px;
  line-height: 25px
}

.mm-listview .mm-spacer {
  padding-top: 40px
}

.mm-listview .mm-spacer>.mm-next {
  top: 40px
}

.mm-listview .mm-spacer.mm-divider {
  padding-top: 25px
}

.mm-menu {
  background: #f3f3f3;
  border-color: rgba(0, 0, 0, .1);
  color: rgba(0, 0, 0, .7)
}

.mm-menu .mm-navbar a,
.mm-menu .mm-navbar>* {
  color: rgba(0, 0, 0, .3)
}

.mm-menu .mm-btn:after,
.mm-menu .mm-btn:before {
  border-color: rgba(0, 0, 0, .3)
}

.mm-menu .mm-listview {
  border-color: rgba(0, 0, 0, .1)
}

.mm-menu .mm-listview>li .mm-arrow:after,
.mm-menu .mm-listview>li .mm-next:after {
  border-color: rgba(0, 0, 0, .3)
}

.mm-menu .mm-listview>li.mm-selected>a:not(.mm-next),
.mm-menu .mm-listview>li.mm-selected>span {
  background: rgba(255, 255, 255, .5)
}

.mm-menu .mm-divider,
.mm-menu .mm-listview>li.mm-opened.mm-vertical>.mm-panel,
.mm-menu .mm-listview>li.mm-opened.mm-vertical>a.mm-next,
.mm-menu.mm-vertical .mm-listview>li.mm-opened>.mm-panel,
.mm-menu.mm-vertical .mm-listview>li.mm-opened>a.mm-next {
  background: rgba(0, 0, 0, .05)
}

.mm-page {
  box-sizing: border-box;
  position: relative
}

.mm-slideout {
  transition: -webkit-transform .4s ease;
  transition: transform .4s ease;
  transition: transform .4s ease, -webkit-transform .4s ease;
  z-index: 1
}

html.mm-opened {
  overflow-x: hidden;
  position: relative
}

html.mm-blocking,
html.mm-blocking body {
  overflow: hidden
}

html.mm-background .mm-page {
  background: inherit
}

#mm-blocker {
  background: rgba(3, 2, 1, 0);
  display: none;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 2
}

html.mm-blocking #mm-blocker {
  display: block
}

.mm-menu.mm-offcanvas {
  z-index: 0;
  display: none;
  position: fixed
}

.mm-menu.mm-offcanvas.mm-current {
  display: block
}

.mm-menu {
  width: 80%;
  min-width: 140px;
  max-width: 440px
}

html.mm-opening .mm-slideout {
  -webkit-transform: translate3d(80%, 0, 0);
  transform: translate3d(80%, 0, 0)
}

@media all and (max-width:175px) {
  html.mm-opening .mm-slideout {
    -webkit-transform: translate3d(140px, 0, 0);
    transform: translate3d(140px, 0, 0)
  }
}

@media all and (min-width:550px) {
  html.mm-opening .mm-slideout {
    -webkit-transform: translate3d(440px, 0, 0);
    transform: translate3d(440px, 0, 0)
  }
}