@charset "UTF-8";
/*
Theme Name: GORN 2
Details URI: https://update.goodwinpress.ru/themes/gorn2-changelog.html
Theme URI: https://goodwinpress.ru/tema-gorn-2
Author: GoodwinPress
Author URI: https://goodwinpress.ru/
Description: Новая тема от Гудвина для бизнес-сайта с каталогом на CMS WordPress. Красивая, быстрая, с категориями и карточками продуктов, готовыми разделами на Главной, с микроразметкой schema.org и open graph, хлебными крошками и др
Version: 1.2.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: gorn-2
Domain Path: /languages
Tags: theme-options, custom-colors, custom-menu, custom-logo, editor-style, featured-images, blog, translation-ready
*/

/*
===============================
= Содержание файла стилей =
============================================
01 Переменные 
02 Очистка
03 Глобальные стили
04 Подключение шрифта
05 Базовые контейнеры
06 Базовые заголовки
07 Кнопки сайта
08 Шапка сайта
09 Брендинг и описание в шапке
10 Кнопка открытия моб меню
11 Контакты в шапке
12 Кнопка поиска в меню
13 Главное меню сайта
14 Метки для привлечения внимания в меню
15 Раздел на Главной - Постер
16 Кнопка звонка
17 Кнопка рейтинга
18 Раздел Главной - Категории каталога
19 Раздел Главной - Карусель в галерее
20 Раздел Главной - Преимущества
21 Раздел Главной - FAQ
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 Галереи WP и подобные элементы
48 Элементы блочного редактора
49 Навигация внутри записей (предыдущая / следующая)
50 Кнопки для расшаривания в карточках и записях
51 Пагинация
52 Виджеты в сайдбаре
53 Метки в блоге
54 Страница Контакты
55 Контактная форма на странице Контакты
56 Контакты на странице Контакты
57 Страница 404
58 Поп-ап в карточке продукта
59 Дополнительные стили для CF7
60 Отзывы в продуктах
61 Окно для cookies в подвале
62 Кнопки мессенджеров в подвале
*/


/*
===============================
= 01 Переменные 
============================================
*/

:root {
  /* ширина секции */
  --width: 1300px;

  /* жирность текста */
  --medium: 500;
  --bold: 700;

  /* цвет плейсхолдера в инпутах */
  --placeholder: #a7a8ba;

  /* белый для фонов и текстов на цветном фоне */
  --lightColor: #fff;

  /* серый для второстепенных текстов, подсказок */
  --greyColor: #73767e;

  /* серый фон */
  --greyBg: #f3f3f9;

  /* цвет бордюров, разделителей */
  --borderColor: #e2e3ee;

  /* радиус закругления */
  --bradius: 5px;
}

/*
 ===============================
 = 02 Очистка
 ============================================
 */

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

body {
  line-height: 1
}

main {
  display: block
}

strong {
  font-weight: var(--bold)
}

em,
i {
  font-family: Georgia, serif;
  font-style: italic
}

ol,
ul {
  list-style: none
}

blockquote,
q {
  quotes: none
}

blockquote::after,
blockquote::before,
q::after,
q::before {
  content: ""
}

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

iframe {
  max-width: 100%
}

embed,
img,
object,
svg,
video {
  display: block;
  max-width: 100%;
  height: auto;
  border: 0
}

embed,
iframe,
object {
  margin-bottom: 1.5rem
}

figure {
  margin: 0 0 1.5rem;
  max-width: 100%;
}

figure>a {
  display: block
}

.aligncenter {
  margin: 0 auto 1.2rem
}

.alignleft {
  float: left
}

.alignright {
  float: right
}

big {
  font-size: 131.25%
}

ins {
  text-decoration: none
}

a {
  background-color: transparent
}

abbr[title] {
  border-bottom: 0;
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted
}

small {
  font-size: 80%
}

sub,
sup {
  position: relative;
  vertical-align: baseline;
  font-size: 75%;
  line-height: 0
}

sub {
  bottom: -.25em
}

sup {
  top: -.5em
}

input,
textarea {
  vertical-align: middle;
  background: var(--lightColor);
}

pre {
  font-family: monospace;
  font-size: 1em;
  overflow-y: auto;
}

.screen-reader-text {
  display: none
}

[hidden] {
  display: none
}

/*
===============================
= 03 Глобальные стили
============================================
*/

.wp-block-separator,
hr {
  display: block;
  clear: both;
  margin: 2em auto;
  border-top: 0;
  border-bottom: 1px solid var(--borderColor);
  width: 100%;
  height: 1px
}

:focus {
  outline: 0;
}

input::-moz-placeholder,
select::-moz-placeholder {
  color: var(--placeholder)
}

input:-ms-input-placeholder,
select:-ms-input-placeholder {
  color: var(--placeholder)
}

input:-moz-placeholder-shown {
  color: var(--placeholder)
}

input:-ms-input-placeholder {
  color: var(--placeholder)
}

input::placeholder,
input:placeholder-shown,
select::placeholder {
  color: var(--placeholder)
}

::-moz-selection {
  color: var(--lightColor);
  background-color: #3f60c2;
}

::selection {
  color: var(--lightColor);
  background-color: #3f60c2;
}

legend {
  display: table;
  padding: 0;
  max-width: 100%;
  white-space: normal;
  color: inherit
}

progress {
  vertical-align: baseline
}

textarea {
  overflow: auto
}

[type=checkbox],
[type=radio] {
  padding: 0;
  box-sizing: border-box
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto
}

[type=search] {
  -webkit-appearance: textfield;
  appearance: textfield;
  outline-offset: -2px
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
  appearance: none
}

p {
  margin-bottom: 1.1rem
}

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

button {
  font-family: var(--primeFont);
  -webkit-appearance: none;
  appearance: none;
  border: 0;
  border-radius: 0;
  -webkit-font-smoothing: inherit;
  -moz-osx-font-smoothing: inherit;
  background: 0 0;
  cursor: pointer
}

.gallery-caption,
.wp-caption,
.wp-caption-text {
  font-size: 15px;
  color: var(--greyColor)
}

.wp-caption.alignleft {
  margin-right: 1.2rem;
}

.wp-caption.alignright {
  margin-left: 1.2rem;
}

img.alignright {
  float: right;
  margin-left: 1.2rem;
}

img.alignleft {
  float: left;
  margin-right: 1.2rem;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: var(--medium)
}

.disable-scroll {
  overflow: hidden;
  width: 100%;
}

a {
  color: var(--mainColor);
  text-decoration: underline;
  transition: color 0.3s ease-in-out
}

a:hover {
  color: var(--hoverColor);
  text-decoration: underline;
  transition: color 0.3s ease-in-out
}

.sticky,
.bypostauthor {
  background-color: initial
}

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

.required {
  color: red
}

label {
  margin-bottom: 0.5rem;
  font-family: var(--primeFont);
  font-size: 0.9rem;
  color: var(--mainColor);
  font-weight: var(--medium);
  display: block;
}

fieldset {
  margin-bottom: 1.5rem;
}

input[type='text'],
input[type='email'],
input[type='url'],
input[type='password'],
input[type='search'],
input[type='number'],
input[type='tel'],
input[type='range'],
input[type='date'],
input[type='month'],
input[type='week'],
input[type='time'],
input[type='datetime'],
input[type='datetime-local'],
input[type='color'],
textarea {
  padding: 0.6rem 1rem;
  display: block;
  width: 100%;
  min-height: 2rem;
  -webkit-transition: border-color .15s ease-in-out;
  transition: border-color .15s ease-in-out;
  color: var(--mainColor);
  border: 1px solid #c9c5db;
  border-radius: var(--bradius);
  outline: none;
  background-color: var(--lightColor);
  -webkit-box-shadow: none;
  box-shadow: none;
  font-family: var(--primeFont);
  font-size: 1rem;
  line-height: 1.5;
  -webkit-appearance: none;
  -webkit-backface-visibility: hidden;
  appearance: none;
  backface-visibility: hidden;
}

select {
  padding: 0 0.6rem;
  width: 100%;
  height: 2rem;
  color: var(--mainColor);
  border: 1px solid #c9c5db;
  border-radius: var(--bradius);
  outline: none;
  background: var(--lightColor);
  -webkit-box-shadow: none;
  box-shadow: none;
  -webkit-appearance: none;
  appearance: none;
  font-family: var(--primeFont);
  font-size: 0.9rem;
  line-height: 1.5;
  cursor: pointer;
}

input[type='text']:focus,
input[type='email']:focus,
input[type='url']:focus,
input[type='password']:focus,
input[type='search']:focus,
input[type='number']:focus,
input[type='tel']:focus,
input[type='range']:focus,
input[type='date']:focus,
input[type='month']:focus,
input[type='week']:focus,
input[type='time']:focus,
input[type='datetime']:focus,
input[type='datetime-local']:focus,
input[type='color']:focus,
select:focus,
textarea:focus {
  border-color: #5a7ee8;
}

input[type='search']::-webkit-search-decoration {
  display: none;
}

textarea {
  max-width: 100%;
  height: 150px;
  padding-top: 1rem;
  padding-bottom: 1rem;
  resize: vertical;
}


/*
===============================
= 04 Подключение шрифта
============================================
*/

/* Поскольку в теме предлагается несколько шрифтов на выбор, их подключение перенесено в assets/header-styles.php */

/*
  ===============================
  = 05 Базовые контейнеры
  ============================================
  */

html {
  box-sizing: border-box;
  font-size: 18px;
  height: 100%;
}

@media (max-width: 1260px) {
  html {
    font-size: 17px;
  }
}

@media (max-width: 600px) {
  html {
    font-size: 16px;
  }
}

@media (max-width: 415px) {
  html {
    font-size: 15px;
  }
}

*,
::before,
::after {
  box-sizing: border-box;
}

body {
  font-family: var(--primeFont);
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.6;
  word-wrap: break-word;
  color: var(--mainColor);
  background-color: var(--bodyBg);
  scroll-behavior: smooth;
}

.wrap {
  margin: 0 auto;
  position: relative;
  width: 100%;
  height: 100%;
  max-width: 1920px;
  display: flex;
  min-height: 100vh;
  flex-direction: column;
  background-color: var(--lightColor);
}

.main {
  flex: 1;
  position: relative;
}

.container {
  margin: 0 auto;
  padding: 0 2rem;
  max-width: calc(var(--width) + 4rem);
}

@media (max-width: 1080px) {
  .container {
    --width: 800px;
  }
}

@media (max-width: 415px) {
  .container {
    padding: 0 1rem;
  }
}

.section {
  margin-bottom: 4rem;
}

.section--animate {
  opacity: 0;
  transform: translateY(20px);
}

.section--animate.section--show {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 0.8s, transform 1s;
}

.section--grey {
  padding: 4rem 0;
  background-color: rgb(206 212 226 / 19%);
}

.section__header {
  margin: 0 auto 2.5rem;
  position: relative;
  z-index: 2;
  text-align: center;
}

.section__title {
  margin-bottom: 3rem;
  display: inline-block;
  position: relative;
  font-size: 1.8rem;
  line-height: 120%;
  font-weight: var(--bold);
}

@media (max-width: 600px) {
  .section__title {
    font-size: 1.6rem;
  }
}

.section__title::before {
  content: "";
  width: 60px;
  height: var(--bradius);
  position: absolute;
  left: 0;
  bottom: -1.7rem;
  background-image: url("assets/img/shape2.svg");
  background-repeat: no-repeat;
  background-position: center;
}

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

.section__title--center::before {
  left: 50%;
  transform: translateX(-50%);
}

.section__descr {
  margin: 0 auto;
  display: block;
  max-width: 820px;
  color: var(--greyColor);
}

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

@media (max-width: 1360px) {
  .blank-page {
    padding: 0 2rem;
    max-width: calc(1280px + 4rem);
  }
}


/*
===============================
= 06 Базовые заголовки
============================================
*/

.post-content h1,
.post-content h2,
.post-content h3,
.post-content h4,
.post-content h5,
.post-content h6,
.custom-section h1,
.custom-section h2,
.custom-section h3,
.custom-section h4,
.custom-section h5,
.custom-section h6 {
  margin-bottom: 1.2rem;
}

.post-content h1 {
  font-size: 1.3rem
}

.post-content h2 {
  font-size: 1.25rem
}

.post-content h3 {
  font-size: 1.2rem
}

.post-content h4 {
  font-size: 1.15rem
}

.post-content h5 {
  font-size: 1.1rem
}

.post-content h6 {
  font-size: 1rem
}

.visually-hidden {
  position: absolute;
  margin: -1px;
  width: 1px;
  height: 1px;
  clip: rect(0 0 0 0);
}

#custom .section__title,
#custom2 .section__title {
  margin-bottom: 1rem;
}

/*
===============================
= 07 Кнопки сайта
============================================
*/

a.btn,
button.btn,
.wpcf7-submit,
.comment-form .submit,
.search-submit,
.error404-btn,
.wpcf7-submit,
.wp-block-search__button {
  padding: 1rem 1.65rem;
  position: relative;
  font-family: var(--primeFont);
  display: inline-block;
  border: none;
  border-radius: var(--bradius);
  background-color: var(--btnBg);
  color: var(--btnColor);
  font-weight: 500;
  font-size: 1rem;
  line-height: 1;
  text-decoration: none;
  transition: border-color 0.3s ease-in-out, background-color 0.3s ease-in-out, color 0.3s ease-in-out;
  cursor: pointer;
  overflow: hidden;
}

a.btn:hover,
button.btn:hover,
.wpcf7-submit:hover,
.comment-form .submit:hover,
.error404-btn:hover,
.search-submit:hover,
.wpcf7-submit:hover,
.wp-block-search__button:hover {
  background-color: var(--btnBgHover);
  color: var(--btnColorHover);
}

.btn-ghost {
  padding: 0.6rem 1.3rem;
  position: relative;
  display: inline-block;
  overflow: hidden;
  background-color: var(--lightColor);
  border: 1px solid var(--mainColor);
  border-radius: var(--bradius);
  font-weight: 500;
  color: var(--mainColor);
  font-size: 0.92rem;
  text-decoration: none;
  transition: border-color 0.3s ease-in-out, background-color 0.3s ease-in-out, color 0.3s ease-in-out;
}

.btn-ghost:hover {
  text-decoration: none;
  background-color: var(--btnBgHover);
  border-color: var(--btnBgHover);
  color: var(--lightColor);
  transition: border-color 0.3s ease-in-out, background-color 0.3s ease-in-out, color 0.3s ease-in-out;
}


a.btn::before,
button.btn::before,
.wpcf7-submit::before,
.comment-form .submit::before,
.search-submit::before,
.error404-btn::before,
.wpcf7-submit::before,
.wp-block-search__button::before,
.btn-ghost::before {
  content: "";
  display: block;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to right, transparent, var(--lightColor));
  position: absolute;
  z-index: 1;
  transform: skewX(-10deg) translateX(-120%);
  opacity: .5;
}

a.btn:hover::before,
button.btn:hover::before,
.wpcf7-submit:hover::before,
.comment-form .submit:hover::before,
.search-submit:hover::before,
.error404-btn:hover::before,
.wpcf7-submit:hover::before,
.wp-block-search__button:hover::before,
.btn-ghost::before {
  transform: skewX(-10deg) translateX(120%);
  transition: transform 0.6s ease-in-out;
}


/*
===============================
= 08 Шапка сайта
============================================
*/

#scroll-progress {
  position: fixed;
  top: 0;
  width: 0%;
  height: 4px;
  background: var(--progressBg);
  z-index: 10000;
  border-top-right-radius: 2px;
  border-bottom-right-radius: 2px;
}

.site-header {
  margin-bottom: 3rem;
  position: relative;
}

@media (max-width:1080px) {
  .site-header {
    margin: 0 auto 3rem;
  }
}

@media(max-width: 900px) {
  .site-header {
    margin-bottom: 2rem;
  }
}

.site-header__wrap {
  padding-top: 1.2rem;
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-start;
  align-items: center;
}

@media (max-width:1240px) {
  .site-header__wrap {
    justify-content: space-between;
  }
}


/*
===============================
= 09 Брендинг и описание в шапке
============================================
*/

.site-header__branding {
  margin-right: 1rem;
  max-width: 300px;
  display: flex;
  justify-content: center;
  position: relative;
}

@media(max-width: 1100px) {
  .site-header__branding {
    padding: 0;
    max-width: 230px;
  }
}

@media(max-width: 600px) {
  .site-header__branding {
    max-width: 200px;
  }
}

.site-header__descr {
  padding-left: 1.5rem;
  display: flex;
  flex-wrap: wrap;
  max-width: 275px;
  color: var(--greyColor);
  font-size: 0.8rem;
  line-height: 145%;
  border-left: 1px solid var(--borderColor);
}

@media(max-width: 1290px) {
  .site-header__descr {
    max-width: 265px;
  }
}

@media(max-width: 800px) {
  .site-header__descr {
    max-width: 210px;
  }
}

@media(max-width: 750px) {
  .site-header__descr {
    display: none;
  }
}

.site-title {
  display: inline-flex;
  text-align: center;
  font-size: 1.4rem;
  font-weight: var(--bold);
  line-height: 115%;
}

.site-title__link {
  color: var(--mainColor);
  text-decoration: none;
}

.site-title__link:hover {
  color: var(--hoverColor);
  text-decoration: none;
}


/*
===============================
= 10 Кнопка открытия моб меню
============================================
*/

.site-header__btn {
  padding-top: 0.9rem !important;
  padding-bottom: 0.9rem !important;
  display: flex !important;
  flex-flow: row nowrap;
  justify-content: space-between;
  align-items: center;
  width: 165px;
  color: var(--btnColor);
  border-top-left-radius: var(--bradius);
  border-bottom-left-radius: var(--bradius);
  border-top-right-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
}

.btn--catalog {
  margin-right: 10px;
  width: 1.2rem;
  height: 1.2rem;
  stroke: currentColor;
}

.site-header__btn--mobile {
  display: none !important;
  max-width: 140px;
  border-top-right-radius: var(--bradius) !important;
  border-bottom-right-radius: var(--bradius) !important;
}

@media (max-width:1260px) {
  .site-header__btn--mobile {
    margin-left: auto;
    display: flex !important;
  }
}

@media (max-width:500px) {
  .site-header__btn--mobile {
    margin-top: 0.6rem;
    width: 100% !important;
    max-width: 500px;
    align-items: center;
    justify-content: center;
    font-size: 1rem !important;
  }
}


/*
===============================
= 11 Контакты в шапке
============================================
*/

.header__contacts {
  margin-left: auto;
  display: flex;
  flex-flow: row wrap;
}

@media (max-width:1260px) {
  .header__contacts {
    margin-left: 0;
    margin-top: 1.2rem;
    width: 100%;
    flex-flow: row wrap;
  }
}

@media (max-width:600px) {
  .header__contacts {
    margin-top: 1rem;
  }
}

.contacts-item {
  position: relative;
  padding-left: 3.4rem;
}

@media (max-width:1260px) {
  .contacts-item {
    padding: 0.8rem 0.8rem;
    padding-left: 4.4rem;
    flex: 1;
    background-color: var(--greyBg);
    border-radius: var(--bradius)
  }
}

@media (max-width:860px) {
  .contacts-item {
    padding-left: 3.8rem;
  }
}

@media (max-width: 600px) {
  .contacts-item {
    padding-left: 0.8rem;
  }
}

.contacts-item:not(:last-child) {
  margin-right: 2rem;
}

@media (max-width:1330px) {
  .contacts-item:not(:last-child) {
    margin-right: 1.1rem;
  }
}

@media (max-width:820px) {
  .contacts-item:not(:last-child) {
    margin-right: 0;
  }
}

@media (max-width:820px) {
  .contacts-item:last-child {
    display: none;
  }
}

@media (max-width:820px) {
  .contacts-item:first-child {
    margin-right: 0.7rem;
  }
}

.contacts-item__link,
.contacts-item__descr,
.contacts-item__text {
  display: block;
  line-height: 1.3;
}

.contacts-item__link,
.contacts-item__text {
  font-weight: var(--medium);
  font-size: 1rem;
}

@media (max-width: 800px) {

  .contacts-item__link,
  .contacts-item__text {
    font-size: 0.9rem;
  }
}

@media (max-width: 600px) {

  .contacts-item__link,
  .contacts-item__text {
    font-size: 1rem;
  }
}

@media (max-width: 375px) {

  .contacts-item__link,
  .contacts-item__text {
    font-size: 0.94rem;
    line-height: 1.8;
  }
}

.contacts-item__descr {
  color: #45474a;
  font-size: 0.84rem;
}

@media (max-width: 800px) {
  .contacts-item__descr {
    font-size: 0.7rem;
  }
}

@media (max-width: 800px) {
  .contacts-item__descr {
    font-size: 0.8rem;
  }
}

.contacts-item__link {
  text-decoration: none;
}

.phone-item::before,
.chat-item::before,
.chat2-item::before,
.mail-item::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 2.5rem;
  height: 2.5rem;
  background-position: center;
  background-repeat: no-repeat;
  background-size: 1.5rem 1.5rem;
  background-color: var(--supportColor);
  border-radius: var(--bradius);
}

.phone-item::before {
  background-image: url("assets/img/phone.svg");
}

.chat-item::before {
  background-image: url("assets/img/chat.svg");
}

.chat2-item::before {
  background-image: url("assets/img/telegram.svg");
}

.mail-item::before {
  background-image: url("assets/img/mail.svg");
}

@media (max-width:1260px) {

  .phone-item::before,
  .chat-item::before,
  .chat2-item::before,
  .mail-item::before {
    left: 1rem;
  }
}

@media (max-width:860px) {

  .phone-item::before,
  .chat-item::before,
  .chat2-item::before,
  .mail-item::before {
    width: 2rem;
    height: 2rem;
    background-size: 1.2rem 1.2rem;
    left: 1.3rem;
  }
}

@media (max-width:600px) {

  .phone-item::before,
  .chat-item::before,
  .chat2-item::before,
  .mail-item::before {
    display: none;
  }
}



/*
===============================
= 12 Кнопка поиска в меню
============================================
*/

.site-search__btn {
  margin-left: 1rem;
  padding: 0 !important;
  width: 3rem !important;
  height: 3rem !important;
  background-color: var(--mobSearchBtn) !important;
  color: var(--lightColor) !important;
  display: none !important;
  justify-content: center;
  align-items: center;
}

@media (max-width: 1260px) {
  .site-search__btn {
    display: flex !important;
  }
}

@media (max-width: 500px) {
  .site-search__btn {
    position: absolute !important;
    top: 1.8rem;
    right: 2rem;
    z-index: 5;
  }
}

@media (max-width: 415px) {
  .site-search__btn {
    top: 1.9rem;
    right: 1rem;
  }
}

.site-search__btn svg {
  width: 22px;
  height: 22px;
  fill: currentColor
}

.site-search-btn {
  position: absolute;
  padding-left: 1rem;
  right: 0.5rem;
  top: 51%;
  width: 60px;
  height: 40px;
  color: var(--lightColor);
  transform: translateY(-50%);
  border-left: 1px solid #6c7078;
}

.site-search-btn svg {
  width: 30px;
  height: 30px;
  fill: currentColor;
}


/*
===============================
= 13 Главное меню сайта
============================================
*/

.site-header__nav {
  margin-top: 2rem;
  position: relative;
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-start;
  width: 100%;
  max-width: var(--width);
  background-color: var(--mainMenuBg);
  border-radius: var(--bradius);
}

@media(max-width: 1260px) {
  .site-header__nav {
    display: none;
  }
}

.nav-menu {
  margin: 0 1.8rem;
  display: flex;
  flex-flow: row wrap;
  max-width: var(--width);
}

.nav-menu .menu-item {
  position: relative;
  font-weight: 500;
  font-size: 1rem;
}

@media(max-width: 1400px) {
  .nav-menu .menu-item {
    font-size: 0.92rem;
  }
}

.nav-menu .current-menu-item >.sub-menu a,
.nav-menu .sub-menu .current-menu-item a:hover {
  color: var(--mainMenuColor) !important;
}

.nav-menu .menu-item:not(:last-child) {
  margin-right: 1.55rem;
}

@media(max-width: 1400px) {
  .nav-menu .menu-item:not(:last-child) {
    margin-right: 1.3rem;
  }
}

.nav-menu li.menu-item-has-children {
  margin-right: 2.6rem !important;
}

@media(max-width: 1400px) {
  .nav-menu li.menu-item-has-children {
    margin-right: 2rem !important;
  }
}

.nav-menu .menu-item-has-children::before {
  content: "";
  position: absolute;
  right: -1.3rem;
  top: 51%;
  z-index: 1;
  width: 20px;
  height: 20px;
  background-image: url("assets/img/arrow-down.svg");
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  transform: translateY(-50%);
}

.nav-menu .menu-item a {
  padding: 0.9rem 0;
  position: relative;
  z-index: 2;
  display: inline-block;
  color: var(--mainMenuColor);
  text-decoration: none;
}

.nav-menu .menu-item a:hover {
  color: var(--mainMenuHover);
  text-decoration: none
}

.nav-menu .sub-menu {
  position: absolute;
  z-index: 10;
  left: 50%;
  top: 100%;
  z-index: 10;
  margin-top: 10px;
  padding: 1rem 0;
  width: 230px;
  background-color: var(--mainMenuDropBg);
  border-radius: var(--bradius);
  visibility: hidden;
  opacity: 0;
  transform: translate(-50%, 20px);
  transition: .3s;
}

.nav-menu li:hover>.sub-menu {
  visibility: visible;
  opacity: 1;
  transform: translate(-50%, 0);
}

.nav-menu .sub-menu .menu-item {
  display: block;
  width: 100%;
  margin: 0;
  padding: 0;
  font-size: 0.9rem;
  background-color: transparent;
  line-height: 120%;
  transition: background-color 0.2s ease-in-out;
  z-index: 2;
}

.nav-menu .sub-menu .menu-item a {
  padding: 0.7rem 1.4rem;
  padding-right: 2rem;
  display: block;
  color: var(--mainMenuDropColor);
}

.nav-menu .sub-menu .menu-item a:hover {
  color: var(--mainMenuDropColor);
  text-decoration: none;
}

.nav-menu .sub-menu .menu-item:hover {
  background-color: var(--mainMenuDropHover);
  transition: background-color 0.2s ease-in-out;
}

.nav-menu .sub-menu .menu-item>.sub-menu {
  margin-top: 4px;
  left: 50%;
  top: 0;
  transform: translate(54%, 0);
  z-index: 20;
}

.nav-menu .sub-menu li:hover>.sub-menu {
  transform: translate(54%, -1.2rem);
}

.nav-menu .sub-menu li.menu-item-has-children {
  margin-right: 0;
}

.nav-menu .sub-menu li.menu-item-has-children::before {
  right: 1rem;
  top: 0.76rem;
  width: 18px;
  height: 18px;
  background-image: url("assets/img/arrow-down.svg");
  transform: rotate(-90deg);
}

.nav-menu .sub-menu::after {
  content: "";
  height: 50px;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: transparent;
  transform: translateY(-50%);
}

.nav-menu .sub-menu .menu-item>.sub-menu::after {
  content: "";
  height: 100%;
  width: 40px;
  position: absolute;
  top: 0;
  left: 0;
  background-color: transparent;
  transform: translateX(-50%);
}

.nav-menu li.menu-item-has-children:hover::after {
  content: "";
  position: absolute;
  bottom: -7px;
  left: 0.5rem;
  z-index: 1;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 11px 9px 0;
  border-color: var(--mainMenuBg) transparent transparent transparent;
}

.nav-menu .sub-menu .menu-item>.sub-menu::before,
.nav-menu .sub-menu li.menu-item-has-children:hover::after {
  display: none;
}


/*
===============================
= 14 Метки для привлечения внимания в меню
============================================
*/

.nav-menu .hot::after,
.nav-menu .new::after {
  content: "";
  position: absolute;
  right: -0.9rem;
  top: 0.8rem;
  width: 10px;
  height: 10px;
  color: var(--lightColor);
  border-radius: 50%;
}

.nav-menu .hot::after {
  background-color: var(--pulse1);
  animation: pulse1 2000ms infinite;
}

@keyframes pulse1 {
  0% {
    box-shadow: var(--pulse1) 0 0 0 0;
  }

  75% {
    box-shadow: var(--mainMenuBg) 0 0 0 10px;
  }
}

.nav-menu .new::after {
  background-color: var(--pulse2);
  animation: pulse2 1800ms infinite;
}

@keyframes pulse2 {
  0% {
    box-shadow: var(--pulse2) 0 0 0 0;
  }

  75% {
    box-shadow: var(--mainMenuBg) 0 0 0 10px;
  }
}

.footer-menu .hot::after,
.footer-menu .new::after {
  content: "";
  position: absolute;
  right: -0.9rem;
  top: -0.1rem;
  width: 10px;
  height: 10px;
  color: var(--lightColor);
  border-radius: 50%;
}

@media (max-width: 1080px) {
  .footer-menu .hot::after,
  .footer-menu .new::after {
   display: none;
 }
}

.footer-menu .hot::after {
  background-color: var(--pulse1);
  animation: pulse3 2000ms infinite;
}

@keyframes pulse3 {
  0% {
    box-shadow: var(--pulse1) 0 0 0 0;
  }

  75% {
    box-shadow:  #f3f3f9 0 0 0 10px;
  }
}


.footer-menu .new::after {
  background-color:var(--pulse2);
  animation: pulse4 1800ms infinite;
}

@keyframes pulse4 {
  0% {
    box-shadow: var(--pulse2) 0 0 0 0;
  }

  75% {
    box-shadow: #f3f3f9 0 0 0 10px;
  }
}



/*
===============================
= 15 Раздел на Главной - Постер
============================================
*/

.section--poster {
  margin-bottom: 3rem;
}

.poster__wrap {
  display: grid;
  gap: 2rem;
  grid-template-columns: repeat(12, 1fr);
}

@media(max-width: 1080px) {
  .poster__wrap {
    display: block;
  }
}

.poster__caption {
  grid-column: 6 span;
  align-self: center;
}

@media(max-width: 1080px) {
  .poster__caption {
    margin-bottom: 1.5rem;
  }
}

.poster__media {
  position: relative;
  grid-column: 6 span;
}

@media(max-width: 1160px) {
  .poster__caption {
    grid-column: 8 span;
  }

  .poster__media {
    grid-column: 4 span;
  }
}

.section__title--poster {
  font-size: 1.9rem;
}

@media(max-width: 1240px) {
  .section__title--poster {
    font-size: 1.6rem;
  }
}

@media(max-width: 600px) {
  .section__title--poster {
    font-size: 1.5rem;
  }
}

.poster__descr {
  margin-bottom: 2.5rem;
  display: block;
  font-size: 1rem;
  color: var(--greyColor);
}

@media(max-width: 600px) {
  .poster__descr {
    word-wrap: normal;
    hyphens: none;
  }
}

.poster__img {
  border-radius: var(--bradius);
  opacity: 1;
  transition: opacity 0.3s;
}

.poster__img:hover {
  opacity: 0.9;
  transition: opacity 0.3s;
}

.poster__btns {
  display: flex;
  align-items: center;
}

@media(max-width: 600px) {
  .poster__btns {
    flex-direction: column;
    align-items: flex-start;
  }
}


/*
===============================
= 16 Кнопка звонка
============================================
*/

.call-button {
  margin-left: 2rem;
  padding: 0.6rem 1.4rem 0.6rem 4rem;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-decoration: none;
  border-radius: 2rem;
  transition: background-color 0.3s;
}

@media(max-width: 600px) {
  .call-button {
    margin-left: 0;
    margin-top: 1.5rem;
  }
}

.call-button:hover {
  text-decoration: none;
}

.call-button::before {
  content: "";
  width: 3rem;
  height: 3rem;
  position: absolute;
  left: 0.5rem;
  top: 50%;
  transform: translateY(-50%);
  background-color: var(--greyBg);
  background-image: url("assets/img/phone2.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 1.4rem 1.4rem;
  border-radius: 50%;
  transition: transform 0.4s ease-in-out;
}

@media(max-width: 600px) {
  .call-button::before {
    left: 0;
  }
}

.call-button:hover::before {
  transform: translateY(-50%) rotate(360deg);
  transition: transform 0.4s ease-in-out;
}

.call-button__label {
  margin-bottom: 0.15rem;
  font-size: 0.8rem;
  color: var(--greyColor);
}

.call-button:hover .call-button__label {
  color: var(--hoverColor);
}

.call-button__number {
  font-weight: var(--bold);
  font-size: 1.1rem;
  line-height: 1;
}


/*
===============================
= 17 Кнопка рейтинга
============================================
*/

.rating-button {
  padding: 0.7rem 1.4rem 0.7rem 4rem;
  position: absolute;
  right: 2rem;
  bottom: 2rem;
  background-color: var(--lightColor);
  border-radius: 2rem;
  box-shadow: 0 10px 20px rgba(51, 51, 51, 0.22);
  text-decoration: none;
  cursor: pointer;
  transition: transform 0.3s, box-shadow 0.3s;
}

@media(max-width: 1160px) {
  .rating-button {
    right: 0;
    bottom: 0;
  }
}

@media(max-width: 1080px) {
  .rating-button {
    right: 2rem;
    bottom: 2rem;
  }
}

.rating-button::before {
  content: "";
  width: 3rem;
  height: 3rem;
  position: absolute;
  left: 0.5rem;
  top: 50%;
  transform: translateY(-50%);
  background-color: var(--greyBg);
  background-image: url("assets/img/award.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 1.5rem 1.5rem;
  border-radius: 50%;
  transition: transform 0.4s ease-in-out;
}

.rating-button:hover {
  text-decoration: none;
  transform: translateY(5px);
  box-shadow: none;
  transition: transform 0.3s, box-shadow 0.3s;
}

.rating-button__wrap {
  display: flex;
  flex-direction: row;
  align-items: center;
}

.rating-button__num {
  display: block;
  font-weight: var(--medium);
}

.rating-button:hover .rating-button__num {
  color: var(--mainColor);
}

.rating-button__label {
  display: block;
  line-height: 130%;
  font-size: 0.8rem;
  color: var(--greyColor);
}

.rating-button__stars {
  margin-left: 0.5rem;
  --percent: calc(var(--rating) / 5 * 100%);
  display: inline-block;
  font-size: 1.1rem;
  font-family: Helvetica, Arial, sans-serif;
  line-height: 1;
}

.rating-button__stars::before {
  content: '★★★★★';
  letter-spacing: 1px;
  background: linear-gradient(90deg, #fb8022 var(--percent), #cbd1da var(--percent));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}


/*
===============================
= 18 Раздел Главной - Категории каталога
============================================
*/

.products-wrap {
  position: relative;
  z-index: 2;
}


.terms__list {
  display: grid;
  gap: 2rem;
  grid-template-columns: repeat(4, 1fr);
}

.page-template-catalog-services .terms__list,
.page-template-catalog-products .terms__list {
  margin: 2rem 0 4rem;
}


.page-template-catalog .terms__list {
  grid-template-columns: repeat(3, 1fr);
}

.page-template-catalog .page-wrap__content--fullwidth .terms__list {
  grid-template-columns: repeat(4, 1fr);
}

@media (max-width:1160px) {
  .terms__list {
    gap: 1.6rem;
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width:900px) {
  .terms__list {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width:600px) {
  .terms__list {
    display: block;
  }
}

.terms__item {
  position: relative;
  max-width: 400px;
  height: 260px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  border-radius: var(--bradius);
  overflow: hidden;
  background-color: var(--lightColor);
  border: 1px solid rgba(242, 242, 254, 1);
  box-shadow: 0 10px 20px rgb(51 51 51 / 22%);
  transition: transform 0.3s;
}

@media (max-width:600px) {
  .terms__item {
    margin-left: auto;
    margin-right: auto;
    max-width: 400px;
  }
}

@media (max-width:600px) {
  .terms__item:not(:last-child) {
    margin-bottom: 1.8rem;
  }
}

.terms__item:hover {
  transform: translateY(-5px);
  transition: transform 0.3s;
}

.terms__item::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  background: linear-gradient(18deg, rgba(51, 51, 51, 0.9), rgba(51, 51, 51, 0) 65%)
}

.term-item__content {
  padding: 1.4rem;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 2;
}

.term-item__title {
  margin-bottom: 5px;
  font-size: 1.1rem;
  line-height: 120%;
  font-weight: var(--medium);
  color: var(--lightColor);
}

.term-item__count {
  font-size: 0.92rem;
  color: #d6cfcf;
}

.term-item__link {
  outline: 0;
  position: absolute;
  inset: 0;
  z-index: 3;
  text-decoration: none;
}

.term-item__btn {
  position: absolute;
  right: 1.5rem;
  top: 1.5rem;
  z-index: 2;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  display: flex;
  flex-flow: row wrap;
  align-content: center;
  justify-content: center;
  background-color: var(--supportColor);
  color: var(--lightColor);
  transition: transform 0.3s ease-in-out, background-color 0.3s ease-in-out;
}

.term-item:hover .term-item__btn {
  background-color: var(--btnBg);
  color: var(--lightColor);
  transition: transform 0.4s ease-in-out, background-color 0.3s ease-in-out;
}

.term-item__btn svg {
  width: 28px;
  height: 28px;
  stroke: currentColor;
}

.terms__item:hover .term-item__btn {
  transform: rotate(360deg);
  transition: transform 0.4s ease-in-out, background-color 0.3s ease-in-out;
}


.products-wrap__btns {
  margin-top: 3rem;
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
}


.download-btn {
  padding-left: 4rem !important;
  position: relative;
  background-color: var(--priceBtnBg) !important;
}

.download-btn::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 3rem;
  height: 100%;
  background-color: var(--btnBg);
  background-image: url("assets/img/file.svg");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 1.6rem 1.6rem;
  transition: background-color 0.3s ease-in-out;
}

.download-btn:hover {
  background-color: var(--btnBgHover) !important;
}

.download-btn:hover::after {
  background-color: var(--btnBgHover);
  transition: background-color 0.3s ease-in-out;
}

.cat-btns--sidebar {
  margin: 0 0 2rem 0;
}

.cat-btns--sidebar .download-btn {
  font-size: 0.94rem !important;
}


/*
===============================
= 19 Раздел Главной - Карусель в галерее
============================================
*/

.owl-nav.disabled {
  display: none
}

@media (max-width: 600px) {
  .gallery-carousel {
    margin: 0 auto;
    max-width: 385px;
  }
}

.owl-prev {
  position: absolute;
  top: 50%;
  left: -25px;
  width: 50px;
  height: 50px;
  text-align: center;
  overflow: hidden;
  cursor: pointer;
  transform: translateY(-50%);
}

.owl-next {
  position: absolute;
  top: 50%;
  right: -25px;
  width: 50px;
  height: 50px;
  text-align: center;
  overflow: hidden;
  cursor: pointer;
  transform: translateY(-50%);
}

.owl-prev,
.owl-next {
  color: var(--lightColor);
  border-radius: 50%;
  z-index: 10;
}

@media (max-width: 600px) {
 .home .owl-prev,
 .home .owl-next {
    width: 40px;
    height: 40px;
    top: initial;
    bottom: -4rem;
  }

  .home  .owl-prev {
    left: 2rem;
  }

  .home .owl-next {
    right: 2rem;
  }
}

.owl-prev:before,
.owl-next:before {
  content: '';
  background-size: 26px 26px;
  background-repeat: no-repeat;
  background-position: center center;
  width: 50px;
  height: 50px;
  position: absolute;
  top: 0;
  left: 0;
  background-color: var(--btnBg);
  transition: background-color 0.3s ease-in-out;
}

@media (max-width: 600px) {
  .home .owl-prev:before,
  .home .owl-next:before {
    width: 40px;
    height: 40px;
  }
}

.owl-prev:hover:before,
.owl-next:hover:before {
  background-color: var(--btnBgHover);
  transition: background-color 0.3s ease-in-out;
}

.owl-prev:before {
  background-image: url("assets/img/arrow-gallery-left.svg");
}

.owl-next:before {
  background-image: url("assets/img/arrow-gallery-right.svg");
}

.owl-carousel .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
}

.owl-carousel .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 {
  display: none;
  width: 100%;
  -webkit-tap-highlight-color: transparent;
  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: auto;
  -moz-user-select: auto;
  -ms-user-select: auto;
  user-select: auto
}

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


.section--gallery {
  margin-bottom: 7rem;
}

@media (max-width: 1600px) {
  .section--gallery {
    padding: 0 1.4rem;
  }
}

@media(max-width: 600px) {
  .section--gallery {
    margin-bottom: 6rem;
  }
}

.home-gallery-item {
  position: relative;
  border-radius: var(--bradius);
  overflow: hidden;
}

.home-gallery-item__link {
  outline: 0;
  position: absolute;
  inset: 0;
  z-index: 5;
  text-decoration: none;
}

.home-gallery-item__caption {
  padding: 0 0.5rem;
  position: absolute;
  top: 4%;
  left: 4%;
  right: 4%;
  bottom: 4%;
  z-index: 1;
  width: 92%;
  height: 92%;
  display: flex;
  flex-flow: column wrap;
  justify-content: center;
  align-items: center;
  background-color: rgba(0, 0, 0, .82);
  color: var(--lightColor);
  font-size: 1rem;
  text-align: center;
  line-height: 120%;
  font-weight: var(--medium);
  border-radius: var(--bradius);
  opacity: 0;
  transform: scale(0);
  transition: opacity 0.3s ease-in-out, transform 0.3s ease-in-out;
}

.home-gallery-item:hover .home-gallery-item__caption {
  opacity: 1;
  transform: scale(1);
}

.home-gallery-item__expand {
  margin-top: 1rem;
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  display: flex;
  flex-flow: row wrap;
  align-content: center;
  justify-content: center;
  background-color: var(--supportColor);
  color: var(--lightColor);
}

.home-gallery-item__expand svg {
  display: block;
  width: 1.2rem;
  height: 1.2rem;
  stroke: currentColor;
}

.owl-dots {
  position: absolute;
  bottom: -30px;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  text-align: center;
}

@media(max-width: 600px) {
  .owl-dots {
    display: none;
  }
}

.owl-dot {
  margin: 0 5px !important;
}

.owl-dot {
  width: 12px;
  height: 12px;
  border-radius: var(--bradius);
  background-color: #acb0bd;
  transition: width 0.3s ease-in-out;
}

.owl-dot.active {
  background-color: var(--btnBg);;
  width: 22px;
  transition: width 0.3s ease-in-out;
}


/*
===============================
= 20 Раздел Главной - Преимущества
============================================
*/

.advntgs-list {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 1.8rem;
  grid-template-columns: repeat(3, 1fr);
}

@media(max-width: 1080px) {
  .advntgs-list {
    display: block;
  }
}

.advntgs-list__item {
  padding: 1.6rem 2rem;
  background-color: var(--advantBg);
  background-image: url("assets/img/item-bg.png");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  border-radius: var(--bradius);
  overflow: hidden;
  font-size: 0.92rem;
  color: var(--advantColor);
}

@media(max-width: 1080px) {
  .advntgs-list__item:not(:last-child) {
    margin-bottom: 1rem;
  }
}

.advntgs-list__item--alt {
  background-image: url("assets/img/item-bg-2.png");
}

.advntgs-list__item--image {
  padding: 0 !important;

}

.advntgs-list__item--colored {
  background-color: var(--advantColoredBg) !important;
}

.advntgs-list__icon {
  margin-bottom: 1rem;
  width: 3rem;
  height: 3rem;
  object-fit: cover;
}

.advntgs-list__title {
  margin-bottom: 0.5rem;
  font-size: 1rem;
  font-weight: var(--medium);
}


/*
===============================
= 21 Раздел Главной - FAQ
============================================
*/

.faq__wrap {
  display: grid;
  gap: 3rem;
  grid-template-columns: repeat(2, 1fr);

}

@media (max-width: 1160px) {
  .faq__wrap {
    grid-template-columns: repeat(12, 1fr);

  }
}

@media (max-width: 1080px) {
  .faq__wrap {
    display: block
  }
}

.faq__media {
  align-self: start;
  position: relative;
  order: 1;
}

.faq-accordion {
  order: 2;
}

@media (max-width: 1160px) {
  .faq-accordion {
    grid-column: 8 span;

  }

  .faq__media {
    grid-column: 4 span;
  }
}

@media (max-width: 1080px) {
  .faq-accordion {
    margin-bottom: 2rem;
    order: 1;
  }

  .faq__media {
    order: 2;
  }
}

.section__descr--faq {
  margin-bottom: 1.5rem;
}

@media (max-width: 1080px) {
  .section__descr--faq {
    margin: 0 0 1.5rem 0;

  }
}

.faq-media__img {
  border-radius: var(--bradius);
}

.call-button--faq {
  margin: 0 !important;
  padding: 0.8rem 1.4rem 0.8rem 4rem;
  position: absolute;
  left: 1rem;
  bottom: 2rem;
  background-color: var(--lightColor);
  border-radius: 2rem;
  transform: translateY(0);
  box-shadow: 0 10px 20px rgba(51, 51, 51, 0.22);
  transition: transform 0.3s, box-shadow 0.3s;
}

@media (max-width: 1080px) {
  .call-button--faq {
    top: initial;
    left: initial;
    bottom: 2rem;
    right: 2rem;
    transform: translateY(0);
  }
}

.call-button--faq::before {
  left: 0.5rem;
}

.call-button--faq:hover {
  transform: translateY(5px);
  box-shadow: none;
  transition: transform 0.3s, box-shadow 0.3s;
}

@media (max-width: 1080px) {
  .call-button--faq:hover {
    transform: translateY(5px);
    box-shadow: none;
    transition: transform 0.3s, box-shadow 0.3s;
  }
}

.faq-accordion__item {
  border-radius: var(--bradius);
  margin-bottom: 1rem;
  background-color: var(--lightColor);
  border: 1px solid var(--borderColor);
}

.faq-accordion__title {
  position: relative;
  cursor: pointer;
  padding: 0.7rem 5rem 0.7rem 1.3rem;
  position: relative;
  font-weight: var(--medium);
  background-color: rgba(242, 242, 251, 0.4);
  transition: background-color 0.3s ease-in-out;
}

.faq-accordion__title:hover {
  background-color: rgba(242, 242, 251, 0.8);
  transition: background-color 0.3s ease-in-out;
}

.faq-accordion__title::before {
  content: "";
  position: absolute;
  right: 1rem;
  top: 0.9rem;
  width: 1.2rem;
  height: 1.2rem;
  background-image: url("assets/img/close-alt.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  transform: rotate(45deg);
  transition: transform 0.3s ease-in-out;
}

.faq-accordion__title.is-shown::before {
  transform: rotate(0);
  transition: transform 0.3s ease-in-out;
}

.faq-accordion__content {
  display: none;
  padding: 1rem 1.5rem;
  border-top: 1px solid var(--borderColor)
}

.faq-accordion__content.is-shown {
  display: block;
}


/*
===============================
= 22 Раздел Главной - Призыв к действию
============================================
*/

.section--action {
  padding: 4rem 0 !important;
  position: relative;
  z-index: 5;
  background-color: var(--actionBg);
  background-image: url("assets/img/item-bg3.png");
  background-position: center;
  background-repeat: no-repeat;
}

#action2 {
  padding: 0 !important;
  overflow-y: hidden;
}

#action2 .action__content {
  padding-top: 1rem;
  padding-bottom: 1rem;
  order: 2
}

@media (max-width: 1080px) {
  #action2 .action__content {
    padding-top: 4rem;
    padding-bottom: 0;
    order: 1
  }
}

.action__wrap {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  align-items: center;
}

@media (max-width: 1080px) {
  .action__wrap {
    display: block
  }
}

.action__wrap>* {
  flex-basis: 48%;
}

.action__content {
  color: var(--actionColor);
}

@media (max-width: 1080px) {
  .action__content {
    padding-right: 0;
    text-align: center;
  }
}

.action-title {
  margin-bottom: 1rem;
  display: inline-block;
  position: relative;
  font-size: 1.8rem;
  line-height: 120%;
  font-weight: var(--bold);
}

@media (max-width: 1280px) {
  .action-title {
    font-size: 1.4rem;
  }
}

.action__text {
  margin-bottom: 1.6rem !important;
  display: block;
}

.action__contact {
  display: flex;
  flex-direction: row;
  align-items: center;
}

@media (max-width: 1280px) {
  .action__contact {
    display: block
  }
}

.action_phone {
  margin-left: 1.5rem;
  font-weight: var(--medium);
}

@media (max-width: 1280px) {
  .action_phone {
    margin-left: 0;
    margin-top: 1rem;
    display: block;
  }
}

.action_link {
  margin-left: 0.5rem;
  color: var(--actionColor);
  text-decoration: none;
}

.action_link:hover {
  color: var(--hoverColor);
  text-decoration: underline;
}

.action-list {
  display: grid;
  gap: 2rem;
  grid-template-columns: repeat(3, 1fr);
  color: var(--actionColor);
}

@media (max-width: 1280px) {
  .action-list {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 1080px) {
  .action-list {
    margin-top: 3rem;
    display: block;
  }
}

.action-item {
  padding: 1.1rem;
  background-color: var(--actionBg);
  border: 1px solid #4a4d52;
  border-radius: var(--bradius);
  text-align: center;
}

@media (max-width: 1080px) {
  .action-item:not(:last-child) {
    margin-bottom: 1.5rem;
  }
}

.action-item--colored {
  background-color: var(--actionColoredBg) !important;
  border-color: var(--actionColoredBg) !important;
}

.action-item__num {
  display: block;
  font-size: 1.6rem;
  font-weight: var(--bold);
}

@media (max-width: 1280px) {
  .action-item__num {
    font-size: 1.3rem;
  }
}

.action-item__value {
  display: block;
  line-height: 120%;
}

.action__scroll {
  display: flex;
  flex-direction: column;
  align-items: start;
  position: relative;
  height: 390px;
  order: 1
}

@media (max-width: 1080px) {
  .action__scroll {
    align-items: center;
    height: auto;
    order: 2;
    background-color: var(--actionBg);
  }
}

@media (max-width: 1080px) {
  .action-scroll-list--clone {
    display: none !important;
    transform: none;
  }
}

.action__scroll::before {
  content: "";
  width: 100%;
  height: 4rem;
  background: linear-gradient(to bottom, var(--actionBg) 75%, rgba(0, 0, 0, 0));
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1;
}

.action__scroll::after {
  content: "";
  width: 100%;
  height: 4rem;
  background: linear-gradient(to top, var(--actionBg) 75%, rgba(0, 0, 0, 0));
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1;
}

@media (max-width: 1080px) {

  .action__scroll::before,
  .action__scroll::after {
    display: none;
  }
}

.action-scroll-list {
  display: flex;
  flex-direction: column;
  animation: 14s infiniteScroll linear infinite;
}

@media (max-width: 1080px) {
  .action-scroll-list {
    margin: 3rem 0 4rem;
    padding: 2rem;
    border: 1px solid #4a4d52;
    border-radius: var(--bradius);
    animation: none;
    display: grid;
    row-gap: 1rem;
    column-gap: 3rem;
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 700px) {
  .action-scroll-list {
    display: block;
  }
}

.scroll-item {
  margin-bottom: 1.8rem;
  padding-left: 2rem;
  display: inline-block;
  position: relative;
  color: var(--actionColor);
}

@media (max-width: 1080px) {
  .scroll-item {
    margin-bottom: 0;
    font-size: 0.92rem;
  }
}

@media (max-width: 700px) {
  .scroll-item {
    display: block;
  }

  .scroll-item:not(:last-child) {
    margin-bottom: 1rem;
  }
}

.scroll-item::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.27rem;
  width: 1.1rem;
  height: 1.1rem;
  background-image: url(assets/img/circle-check.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

@media (max-width: 1080px) {
  .scroll-item::before {
    top: 0.2rem;
  }
}

@media (min-width: 1080px) {
  .action-scroll-list+.action-scroll-list {
    transform: translateY(100%);
  }
}

@keyframes infiniteScroll {
  0% {
    transform: translateY(0)
  }

  100% {
    transform: translateY(-100%)
  }
}


/*
===============================
= 23 Карточки продуктов на Главной и внутряках
============================================
*/

.cards-list {
  display: grid;
  gap: 2rem;
  grid-template-columns: repeat(4, 1fr);
}

@media (max-width: 1360px) {
  .cards-list {
    gap: 2rem;
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 1060px) {
  .cards-list {
    gap: 1.5rem;
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 600px) {
  .cards-list {
    display: block !important;
  }
}

.cards-list--inner {
  grid-template-columns: repeat(3, 1fr);
}

.page-wrap__content--fullwidth .cards-list--inner {
  grid-template-columns: repeat(4, 1fr);
}

@media (max-width: 1280px) {
  .page-wrap__content--fullwidth .cards-list--inner {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 1024px) {
  .page-wrap__content--fullwidth .cards-list--inner {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 1300px) {
  .cards-list--inner {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 1160px) {
  .cards-list--inner {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 1080px) {
  .cards-list--inner {
    grid-template-columns: repeat(2, 1fr);
  }
}

.card-item {
  display: flex;
  flex-direction: column;
  height: 100%;
  background-color: rgb(242 242 251 / 42%);
  border: 1px solid var(--lightColor);
  border-radius: var(--bradius);
  overflow: hidden;
  box-shadow: 0 10px 20px rgb(178 178 209 / 29%);
  transition: border-color 0.3s;
}

@media (max-width: 600px) {
  .card-item {
    margin-left: auto;
    margin-right: auto;
    max-width: 400px;
  }
}

@media (max-width: 600px) {
  .card-item:not(:last-child) {
    margin-bottom: 2rem;
  }
}

.card-item:hover {
  border-color: var(--borderColor);
  transition: border-color 0.3s;
}

.card-item__link {
  text-decoration: none;
}

.card-item__image {
  transition: opacity 0.3s;
}

.card-item .card-item__content {
  padding: 1rem;
}

.card-item__image:hover {
  opacity: 0.8;
  transition: opacity 0.3s;
}

.card-item__category {
  margin-bottom: 0.6rem;
  display: flex;
  flex-direction: row;
}

@media (max-width: 600px) {
  .card-item__category {
    margin-bottom: 1rem;
  }
}

.card-item__category li {
  font-size: 0.8rem;
  line-height: 135%;
}

@media (max-width: 600px) {
  .card-item__category li {
    font-size: 0.92rem;
  }
}

.card-item__category li:not(:last-child) {
  margin-right: 10px;
}

.card-item__category a {
  color: var(--greyColor);
  text-decoration: none;
}

.card-item__category a:hover {
  color: var(--hoverColor);
  text-decoration: underline;
}

.card-item__title {
  display: inline-block;
  font-size: 1rem;
  line-height: 135%;
  font-weight: var(--bold);
}

@media (max-width: 600px) {
  .card-item__title {
    margin-bottom: 0.5rem;
    font-size: 1.2rem;
  }
}

.card-item__descr {
  margin: 0.6rem 0;
  display: inline-block;
  font-size: 0.9rem;
  line-height: 135%;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
}

.card-item__footer {
  margin-top: auto;
  padding: 0 1rem 1.2rem;
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  align-items: end;
}

.card-item__price {
  font-size: 0.96rem;
  line-height: 1;
  font-weight: var(--medium);
}

.card-item__cost {
  display: flex;
  flex-direction: column;
}

.card-item__calc {
  margin-top: 3px;
  display: flex;
}

.card-item__old-price {
  margin-right: 10px;
  display: inline-block;
  font-size: 14px;
  color: var(--greyColor);
  text-decoration: line-through;
}

.card-item__difference {
  padding: 5px 7px;
  display: inline-block;
  font-size: 13px;
  line-height: 1;
  color: var(--mainColor);
  background-color: #ffda69;
  border-radius: 3px;
}

.card-item__btn {
  position: relative;
  color: var(--btnBg);
  font-weight: var(--medium);
  font-size: 0.9rem;
  line-height: 1;
  text-decoration: none;
  transition: padding-right 0.3s;
}

.card-item__btn:hover {
  text-decoration: underline;
  color: var(--hoverColor);
}


/*
===============================
= 24 Раздел на Главной - Услуги
============================================
*/

.services-list {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 1.8rem;
  grid-template-columns: repeat(3, 1fr);
}

@media (max-width: 1080px) {
  .services-list {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 600px) {
  .services-list {
    display: block;
  }
}

.services-list__item {
  padding: 1rem 1.3rem;
  background-color: var(--lightColor);
  border: 1px solid var(--borderColor);
  border-radius: var(--bradius);
  transition: box-shadow 0.3s
}

@media (max-width: 600px) {
  .services-list__item:not(:last-child) {
    margin-bottom: 1.5rem;
  }
}

.services-list__item:hover {
  box-shadow: 0 10px 20px rgb(178 178 209 / 29%);
  transition: box-shadow 0.3s
}

.service-item__title {
  margin-bottom: 0.5rem;
  display: block;
  font-size: 1.1rem;
  font-weight: var(--bold);
}

.service-item__icon {
  margin-bottom: 1rem;
  width: 3rem;
  height: 3rem;
  object-fit: cover;
}

.service-item__btn {
  margin-top: 1.4rem;
}

/*
===============================
= 25 Раздел на Главной - Контакты
============================================
*/

.section--contacts {
  margin-bottom: 4rem;
  padding: 0;
  overflow: hidden;
}

.home-contacts-list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}

@media (max-width: 1160px) {
  .home-contacts-list {
    gap: 1.6rem;
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 600px) {
  .home-contacts-list {
    display: block;
  }
}

.home-contacts-item {
  padding: 3rem 2rem;
  position: relative;
  z-index: 2;
  background-color: var(--connectBg);
  background-image: url("assets/img/item-bg4.png");
  background-position: bottom right;
  background-repeat: repeat-x;
  background-size: cover;
}

@media (max-width: 1160px) {
  .home-contacts-item {
    border-radius: var(--bradius) !important;
  }
}

.home-contacts-item--first {
  border-top-left-radius: var(--bradius);
  border-bottom-left-radius: var(--bradius);
}

.home-contacts-item--alt {
  border-top-right-radius: var(--bradius);
  border-bottom-right-radius: var(--bradius);
  background-color: var(--connectColoredBg);
  background-image: url("assets/img/item-bg3.png");
  background-position: top center;
  background-repeat: no-repeat;
  background-size: cover;
}

.home-contacts-item:not(:last-child) {
  padding-right: 2rem;
  border-right: 1px solid #4a4d52;
}

@media (max-width: 1160px) {
  .home-contacts-item:not(:last-child) {
    padding-right: 0;
    border: none;
  }
}

@media (max-width: 600px) {
  .home-contacts-item:not(:last-child) {
    margin-bottom: 1.5rem;
  }
}

.home-contacts-item>* {
  display: block;
  color: var(--connectColor);
}

.home-contacts__label {
  margin-bottom: 1rem;
  padding-left: 1.6rem;
  position: relative;
  font-size: 0.86rem;
}

.home-contacts--phone::before,
.home-contacts--mail::before,
.home-contacts--chat::before,
.home-contacts--social::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  z-index: 1;
  width: 1rem;
  height: 1rem;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  transform: translateY(-50%);
}

.home-contacts--phone::before {
  background-image: url("assets/img/phone.svg");
}

.home-contacts--mail::before {
  background-image: url("assets/img/mail.svg");
}

.home-contacts--chat::before {
  background-image: url("assets/img/chat.svg");
}

.home-contacts--social::before {
  background-image: url("assets/img/globe.svg");
}

.home-contacts__value {
  font-weight: var(--medium);
  font-size: 1.1rem;
}

.home-contacts__link {
  color: var(--connectLinkColor);
  text-decoration: none;
}

.home-contacts__link:hover {
  color: var(--connectColor);
  text-decoration: underline;
}

.social-btns {
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-start;
}

.social-btns__item {
  margin-bottom: 8px;
  display: flex;
  align-content: center;
  width: 30px;
  height: 30px;
  opacity: 1;
}

.social-btns__item:not(:last-child) {
  margin-right: 10px;
}

.social-btns__link {
  display: block;
  color: var(--connectColor);
}

.social-btns__link:hover {
  display: block;
  color: var(--connectBg);
}

.social-btns__link svg {
  width: 30px;
  height: 30px;
  fill: currentColor;
  transition: fill 0.3s ease-in-out;
}



/*
===============================
= 26 Сетка блога на Главной и на странице блога
============================================
*/

.blog-list {
  display: grid;
  gap: 2rem;
  grid-template-columns: repeat(4, 1fr);
}

@media (max-width: 1360px) {
  .blog-list {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 1080px) {
  .blog-list {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 600px) {
  .blog-list {
    display: block;
  }
}

.page-wrap .blog-list {
  grid-template-columns: repeat(3, 1fr);
}

@media(max-width: 900px) {
  .page-wrap .blog-list {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media(max-width: 600px) {
  .page-wrap .blog-list {
    display: block;
  }
}

.page-wrap__content--fullwidth .blog-list {
  grid-template-columns: repeat(4, 1fr);
}

@media(max-width: 1180px) {
  .page-wrap__content--fullwidth .blog-list {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media(max-width: 800px) {
  .page-wrap__content--fullwidth .blog-list {
    grid-template-columns: repeat(2, 1fr);
  }
}

.blog-item {
  padding: 1rem;
  background-color: var(--lightColor);
  text-align: center;
  border-radius: var(--bradius);
  overflow: hidden;
  border: 1px solid var(--borderColor);
}

@media (max-width:600px) {
  .blog-item {
    margin-left: auto;
    margin-right: auto;
    max-width: 400px;
  }
}

@media (max-width: 600px) {
  .blog-item:not(:last-child) {
    margin-bottom: 1.5rem;
  }
}

.blog-item--nothumb {
  text-align: left;
}

.blog-item__thumbnail {
  margin-bottom: 2.4rem;
  position: relative;
  transition: opacity 0.3s;
}

.blog-item__thumbnail:hover {
  opacity: 0.8;
  transition: opacity 0.3s;
}

.blog-item__thumbnail img {
  border-radius: var(--bradius);
}

.blog-item__date {
  position: absolute;
  bottom: -1.5rem;
  left: 50%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 3.1rem;
  height: 3.1rem;
  border-radius: 50%;
  transform: translateX(-50%);
  color: var(--lightColor);
  text-align: center;
  font-size: 0.8rem;
  line-height: 1.1;
  font-weight: var(--medium);
  background-color: var(--supportColor);
  border: 3px solid var(--lightColor);
  transition: transform 0.3s ease-in-out;
}

.blog-item__date em {
  font-style: normal;
  font-family: inherit;
  font-size: 0.75rem;
  font-weight: 400
}

.blog-item .post-categories {
  margin-bottom: 0.5rem;
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
}

.blog-item--nothumb .post-categories {
  padding-top: 0.5rem;
  justify-content: flex-start;
}

.blog-item .post-categories li {
  margin: 0 5px;
  font-size: 0.8rem;
}

@media (max-width: 500px) {
  .blog-item .post-categories li {
    font-size: 0.93rem;
  }
}

.blog-item--nothumb .post-categories li:not(:last-child) {
  margin-right: 10px;
  margin-left: 0;
}

.blog-item .post-categories li a {
  color: var(--greyColor);
  text-decoration: none;
}

.blog-item .post-categories li a:hover {
  color: var(--hoverColor);
  text-decoration: underline;
}

.blog-item__title {
  margin-bottom: 0.5rem;
  display: inline-block;
  font-size: 1rem;
  line-height: 128%;
  font-weight: var(--bold);
}

@media (max-width: 1080px) {
  .blog-item__title {
    font-size: 1.1rem;
  }
}

@media (max-width: 600px) {
  .blog-item__title {
    font-size: 1.2rem;
    line-height: 140%;
  }
}

.blog-item__link {
  text-decoration: none;
}

.blog-item__text {
  margin-top: 1rem;
  font-size: 0.92rem;
  color: var(--greyColor);
}

.blog-item:hover .blog-item__date {
  transform: translateX(-50%) rotate(360deg);
  transition: transform 0.3s ease-in-out;
}

.blog-list--btn {
  margin: 3rem auto 0 !important;
  display: table !important;
}


/*
===============================
= 27 Подвал сайта
============================================
*/


.footer-about__link {
  text-decoration: none;
}

.footer-about__link:hover {
  text-decoration: underline;
}

.footer__contacts {
  margin-bottom: 3rem;
  display: grid;
  grid-row-gap: 1.2rem;
  grid-column-gap: 2rem;
  grid-template-columns: repeat(4, 1fr);
}

@media (max-width:1160px) {
  .footer__contacts {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 600px) {
  .footer__contacts {
    display: block;
  }

  .footer__contacts>* {
    margin-bottom: 2rem;
  }
}

.footer-about__contacts {
  padding-left: 3.7rem;
  position: relative;
  font-size: 0.9rem;
  line-height: 130%;
}

@media (max-width: 600px) {
  .footer-about__contacts {
    font-size: 1rem;
  }
}

.footer-about__contacts::before,
.footer-about__connect::before,
.footer-about__info::before,
.footer-about__schedule::before {
  content: "";
  position: absolute;
  top: 2px;
  left: 0;
  z-index: 1;
  width: 2.6rem;
  height: 2.6rem;
  background-position: center;
  background-repeat: no-repeat;
  background-size: 1.5rem 1.5rem;
  background-color: var(--supportColor);
  border-radius: var(--bradius);
}

.footer-about__contacts::before {
  background-image: url("assets/img/location.svg");
}

.footer-about__connect {
  padding-left: 3.7rem;
  position: relative;
  font-size: 0.92rem;
}

.footer-about__connect::before {
  background-image: url("assets/img/phone.svg");
}

.footer-about__info {
  padding-left: 3.7rem;
  position: relative;
  font-size: 0.92rem;
}

.footer-about__info::before {
  background-image: url("assets/img/info.svg");
}

.footer-about__schedule {
  padding-left: 3.7rem;
  position: relative;
  font-size: 0.92rem;
}

.footer-about__schedule::before {
  background-image: url("assets/img/schedule.svg");
}


@media (max-width: 600px) {
  .footer-about__connect li:not(:last-child), 
  .footer-about__schedule li:not(:last-child),
  .footer-about__info li:not(:last-child) {
    margin-bottom: 5px;
  }
}

.footer-menu {
  margin: 2rem 0 0;
  padding: 1rem 1.8rem;
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-start;
  background-color: var(--greyBg);
  border-radius: var(--bradius);
}

@media (max-width: 500px) {
  .footer-menu {
    display: block;
  }
}

.footer-menu li {
  margin-right: 1rem;
  position: relative;
  font-size: 0.92rem;
}

@media (max-width: 500px) {
  .footer-menu li {
    margin-bottom: 0.4rem;
  }
}

.footer-menu li:not(:last-child) {
  margin-right: 2rem;
}

.footer-menu li a {
  color: var(--greyColor);
  text-decoration: none;
}


.footer-menu li a:hover {
  color: var(--hoverColor);
  text-decoration: underline;
}


/*
===============================
= 28 Кредитсы в подвале
============================================
*/

.credits__wrap {
  padding: 1.5rem 2rem 3rem;
  position: relative;
  display: flex;
  flex-flow: row wrap;
  align-items: center;
}

@media (max-width:1520px) {
  .credits__wrap {
    padding: 1.5rem 2rem;
  }
}

@media (max-width:900px) {
  .credits__wrap {
    padding-right: 5rem;
    flex-flow: column wrap;
    align-items: start;
  }
}

.credits__copy,
.credits__year,
.credits__dev,
.credits__descr {
  font-size: 0.8rem;
  color: var(--greyColor);
}

.credits__dev,
.credits__descr {
  margin-left: 1.2rem;
  position: relative;
}

.credits__dev::before,
.credits__descr::before {
  content: "·";
  color: var(--greyColor);
  font-size: 0.8rem;
  position: absolute;
  left: -0.7rem;
  top: -3px;
}

.credits__counter {
  margin-left: auto;
  opacity: 0.6;
  transition: opacity 0.3s;
}

@media (max-width:900px) {
  .credits__counter {
    margin-left: 0;
    margin-top: 1rem;
  }
}

.credits__counter:hover {
  opacity: 1;
}

.credits__year em {
  font-style: normal;
  font-family: inherit;
}

/*
===============================
= 29 Кнопка вверх
============================================
*/

.back2top {
  margin-left: 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--bradius);
  width: 36px;
  height: 36px;
  text-align: center;
  color: var(--btnColor);
  background-color: var(--btnBg);
  cursor: pointer;
  transition: background-color 0.3s ease-in-out;
}

@media (max-width: 900px) {
  .back2top {
    margin: 0;
    position: absolute;
    top: 1.5rem;
    right: 2rem;
    margin: 0;
  }
}

.back2top:hover {
  background-color: var(--btnBgHover);
  color: var(--btnColorHover);
  transition: background-color 0.3s ease-in-out;
}

.back2top svg {
  display: block;
  width: 1.4rem;
  height: 1.4rem;
  stroke: currentColor;
}


/*
===============================
= 30 Панель поиска по сайту
============================================
*/

.search-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 0;
  z-index: 200;
  background-color: #17181e;
  opacity: 0.96;
  transform: translateY(-100%);
  transition: height 0.4s ease-in-out, transform  0.4s ease-in-out;
}

.search-overlay.is-shown {
  height: 100%;
  transform: translateY(0);
  transition: height 0.4s ease-in-out, transform  0.4s ease-in-out;
}

.search-panel {
  padding: 2rem;
  width: 100%;
  max-width: 600px;
  position: absolute;
  top: 0;
  left: 50%;
  z-index: -1;
  opacity: 0;
  transform: translate(-50%, -100%);
  transition: opacity 0.6s ease-in-out, transform  0.6s ease-in-out;
}

.search-panel.is-open {
  z-index: 999;
  opacity: 1;
  transform: translate(-50%, 100%);
  transition: opacity 0.4s ease-in-out, transform 0.9s ease-in-out;
}

.search-panel .search-form {
  position: relative;
}

.search-panel input[type="search"] {
  padding: 1.3rem 1rem;
  padding-right: 5rem;
  font-family: var(--primeFont);
  display: block;
  width: 100%;
  color: var(--mainColor);
  font-size: 1.2rem;
  background-color: var(--lightColor);
  border: 1px solid var(--borderColor);
  border-radius: var(--bradius);
  -webkit-box-shadow: none;
  box-shadow: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

input[type="search"]::-webkit-search-cancel-button {
  display: none;
}

.search-panel input[type="search"]:focus {
  border-color: #5a7ee8;
  outline: none
}

.search-panel .search-submit {
  position: absolute;
  top: 50%;
  right: 0;
  overflow: hidden;
  width: 4rem;
  height: 4rem;
  padding: 0;
  color: var(--lightColor);
  border: 0;
  background-color: transparent;
  cursor: pointer;
  background-image: url("assets/img/search-alt.svg");
  background-position: center;
  background-size: 2rem 2rem;
  background-repeat: no-repeat;
  text-indent: -9999px;
  transform: translate(0, -50%);
}

.search-panel__text {
  margin-top: 1rem;
  text-align: center;
  display: block;
  font-size: 0.92rem;
  color: var(--lightColor);
}

.modal-search__hint {
  margin-left: 10px;
  border-bottom: 1px dotted var(--lightColor);
  cursor: pointer;
  transition: color 0.3s;
}

.search-panel__text:hover .modal-search__hint {
  color: var(--hoverColor);
  transition: color 0.3s;
}

.search-panel__close {
  position: absolute;
  top: 0;
  right: 0;
  overflow: hidden;
  width: 5rem;
  height: 5rem;
  padding: 0;
  border: 0;
  background-color: transparent;
  cursor: pointer;
  background-image: url("assets/img/close.svg");
  background-position: center;
  background-size: 2rem 2rem;
  background-repeat: no-repeat;
  transform: translateY(-3rem);
}


/*
===============================
= 31 Панель моб меню с каталогом
============================================
*/

.terms-panel {
  position: fixed;
  top: 0;
  left: 0;
  z-index: -1;
  opacity: 0;
  width: 100%;
  height: 100vh;
  max-width: 400px;
  display: flex;
  flex-direction: column;
  overflow-y: auto;
  transform: translateX(-100%);
  background-color: var(--lightColor);
}

.terms-panel.is-open {
  z-index: 999;
  opacity: 1;
  transform: translateX(0);
  transition: opacity 0.6s, visibility 0.6s, transform 0.6s;
}

.terms-panel__wrap {
  margin-bottom: 2rem;
  padding: 2rem 2rem 0;
}

.terms-list {
  margin-bottom: 2rem;
}

.terms-list li {
  font-size: 1rem;
}

.terms-list li a {
  text-decoration: none;
}

.terms-panel__overlay {
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  width: 0;
  z-index: 200;
  background-color: #17181e;
  opacity: 0.92;
  transition: width 0.4s ease-in-out, transform 0.4s ease-in-out;
}

.terms-panel__overlay.is-shown {
  width: 100%;
  transition: width 0.4s ease-in-out, transform 0.4s ease-in-out;
}

.terms-panel__title {
  margin-bottom: 2rem;
  padding-bottom: 0.6rem;
  position: relative;
  display: block;
  font-weight: var(--medium);
  font-size: 1rem;
  line-height: 1;
}

.terms-panel__title::before {
  content: "";
  width: 40px;
  height: 3px;
  position: absolute;
  left: 0;
  bottom: -0.5rem;
  background-image: url("assets/img/shape2.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.terms-panel__list {
  margin-bottom: 1.5rem;
  list-style: none;
  display: flex;
  flex-direction: column;
}

.panel-item {
  padding: 0.7rem 1.1rem;
  padding-right: 3rem;
  position: relative;
  font-size: 0.9rem;
  line-height: 130%;
  background-color: var(--greyBg);
  border-radius: var(--bradius);
}

.panel-item:not(:last-child) {
  margin-bottom: 0.8rem;
}

.panel-item__link {
  text-decoration: none;
}

.panel-item__link:hover {
  text-decoration: var(--hoverColor);
  text-decoration: underline;
}

.panel-item__count {
  padding: 5px 8px;
  position: absolute;
  right: 0.9rem;
  top: 0.6rem;
  display: inline-block;
  background-color: var(--supportColor);
  color: var(--lightColor);
  border-radius: 3px;
  line-height: 1.1;
  font-size: 0.7rem;
  font-weight: 400;
}

.terms-panel__close {
  position: absolute;
  top: 0;
  right: 1rem;
  overflow: hidden;
  width: 1.8rem;
  height: 1.8rem;
  padding: 0;
  border: 0;
  border-radius: 50%;
  cursor: pointer;
  background-image: url("assets/img/close-alt.svg");
  background-position: center;
  background-size: 1.8rem 1.8rem;
  background-repeat: no-repeat;
  transform: translateY(1.4rem);
}

.terms-panel__socials {
  margin-top: auto;
  padding: 1.5rem 0.5rem;
  padding-left: 2rem;
  background-color: var(--supportColor);
}

.terms-panel__socials .social-btns__link {
  color: var(--mobSocialBg);
}

.terms-panel__socials .social-btns__link:hover {
  color: var(--hoverColor);
}

.terms-panel__link {
  margin-bottom: 3rem;
  display: flex !important;
  flex-flow: row wrap;
  justify-content: center;
  align-items: center;
  font-size: 0.9rem !important;
  font-weight: 400 !important;
  text-decoration: none;
}

.terms-panel__link svg {
  margin-right: 10px;
  width: 1rem;
  height: 1rem;
  border-radius: 50%;
  border: 1px solid var(--lightColor);
  stroke: currentColor;
}

.terms-panel__nav {
  margin-bottom: 2rem;
}

.terms-panel__menu {
  display: flex;
  flex-direction: column;
}

.terms-panel__menu li {
  position: relative;
  display: block;
  font-size: 0.9rem;
}

.terms-panel__menu li a {
  padding: 8px 0;
  padding-left: 1rem;
  padding-right: 2rem;
  position: relative;
  display: inline-block;
  text-decoration: none;
}

.terms-panel__menu li a:hover {
  text-decoration: underline;
}

.terms-panel__menu .sub-menu {
  margin: 5px 0;
  padding: 12px 19px;
  padding-right: 17px;
  display: none;
  background-color: var(--greyBg);
  border-radius: var(--bradius);
}

.terms-panel__menu .sub-menu .sub-menu {
  background-color: #edebf7;
}

.terms-panel__menu .sub-menu li {
  font-size: 0.86rem;
}

.terms-panel__menu .sub-menu li a {
  padding: 6px 0;
  padding-right: 0;
}

.terms-panel__menu li a::before {
  content: "";
  width: 6px;
  height: 6px;
  background-color: var(--supportColor);
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  border-radius: 50%;
}

.terms-panel__menu .sub-menu li a::before {
  display: none !important;
}

.terms-panel__menu .menu-item-has-children::after,
.terms-panel__menu .reverse::after {
  content: "";
  position: absolute;
  right: 0.5rem;
  top: 10px;
  z-index: 1;
  width: 20px;
  height: 20px;
  background-image: url("assets/img/arrow-down-alt.svg");
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}

.terms-panel__menu .reverse::after {
  transform: rotate(-180deg);
}

.terms-panel__menu .sub-menu .menu-item-has-children::after {
  right: -9px;
}



/*
===============================
= 32 Хлебные крошки
============================================
*/

.breadcrumbs {
  margin-bottom: 1rem;
}



.breadcrumbs__item {
  position: relative;
  font-size: 0.85rem;
  display: inline;
}


.breadcrumbs__item::before {
  content: "\2014";
  padding-right: 0.5rem;
  color: var(--greyColor);
}

.breadcrumbs__item:not(:last-child) {
  margin-right: 0.5rem;
}

.breadcrumbs__item:first-child::before {
  display: none;
}

.breadcrumbs__link {
  display: inline-flex;
  text-decoration: none;
  color: var(--greyColor);
}

@media (max-width: 600px) {
  .breadcrumbs__link {
    display: inline;
  }
}

.breadcrumbs__link:not(a[href]):hover {
  text-decoration: none;
  color: var(--greyColor);
}

.breadcrumbs__link:hover {
  text-decoration: underline;
  color: var(--hoverColor);
}

.breadcrumbs__item:last-child span {
  max-width: 295px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

@media (max-width: 1080px) {
  .breadcrumbs__item:last-child span {
    max-width: 200px;
  }
}

@media (max-width: 600px) {
  .breadcrumbs__item:last-child span {
    max-width: 100%;
    overflow: visible;
    white-space: normal
  }
}


/*
===============================
= 33 Шаблон внутренней страницы
============================================
*/

.page-header {
  margin-bottom: 3rem;
  width: 100%;
  display: flex;
  flex-direction: column;
}

.single-post .page-header {
  margin-bottom: 2rem;
}

.page-header__title {
  display: inline-block;
  position: relative;
  font-size: 1.8rem;
  line-height: 120%;
  font-weight: var(--bold);
}

@media (max-width:600px) {
  .page-header__title {
    font-size: 1.5rem;
  }
}

.page-header__title::before {
  content: "";
  width: 60px;
  height: 6px;
  position: absolute;
  left: 0;
  bottom: -1.5rem;
  background-image: url(assets/img/shape2.svg);
  background-repeat: no-repeat;
  background-position: center;
}

.page-header__count {
  margin: 0.5rem 0 1rem;
  display: block;
  font-size: 0.88rem;
  color: var(--greyColor);
}

.page-wrap {
  margin-bottom: 4rem;
  display: grid;
  gap: 3rem;
  grid-template-columns: repeat(12, 1fr);
}

@media (max-width:1160px) {
  .page-wrap {
    display: block;
  }
}

@media (max-width:1280px) {
  .single-services .page-wrap {
    display: block;
  }
}

.page-wrap__sidebar {
  grid-column: 3 span;
  order: 1;
}

.single-post .page-wrap__sidebar,
.page-template-default .page-wrap__sidebar,
.blog .page-wrap__sidebar,
.category .page-wrap__sidebar,
.tag .page-wrap__sidebar,
.search-results .page-wrap__sidebar {
  order: 2;
}

.page-wrap__content {
  grid-column: 9 span;
  order: 2;
}

.page-wrap__content--fullwidth {
  grid-column: 12 span;
}

.single-post .page-wrap__content,
.page-template-default .page-wrap__content,
.blog .page-wrap__content,
.category .page-wrap__content,
.tag .page-wrap__content,
.search-results .page-wrap__content {
  order: 1;
}

@media (max-width:1280px) {
  .single-services .page-wrap__content {
    margin-bottom: 3rem;
  }
}

@media (max-width:1160px) {
  .page-wrap__content {
    margin-bottom: 4rem;
  }
}

.page-content__descr {
  margin-bottom: 2rem;
  color: var(--greyColor);
}

.blog-sidebar .cat-item {
  padding: 4px 0;
  padding-left: 1rem;
  border: 0 !important;
}

.blog-sidebar ul {
  padding: 0 !important
}

.post-content {
  word-wrap: break-word;
}


/*
===============================
= 34 Список карточек на странице Каталог
============================================
*/

.catalog-list {
  display: grid;
  gap: 2rem;
  grid-template-columns: repeat(3, 1fr);
}

@media (max-width:1280px) {
  .catalog-list {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width:700px) {
  .catalog-list {
    display: block;
  }
}

.catalog-item {
  display: flex;
  flex-direction: column;
  border: 1px solid var(--borderColor);
  border-radius: var(--bradius);
}

@media (max-width:700px) {
  .catalog-item:not(:last-child) {
    margin-bottom: 2rem;
  }
}

.catalog-item__header {
  margin-bottom: 1rem;
  padding: 1rem;
  background-color: var(--greyBg);
}

.catalog-item-header__link {
  flex-shrink: 0;
}

.catalog-item__content {
  padding: 0 1rem;
}

.catalog-item__title {
  margin-bottom: 6px;
  font-size: 1.12rem;
  line-height: 120%;
  font-weight: var(--bold);
}

.catalog-title__link {
  text-decoration: none;
}

.catalog-item__count {
  display: block;
  font-size: 0.8rem;
  color: var(--greyColor);
}

.catalog-item__descr {
  margin-bottom: 1.5rem;
  font-size: 0.9rem;
  line-height: 140%;
}

@media (max-width: 500px) {
  .catalog-item__descr {
    font-size: 0.92rem;
  }
}

.subcats-list {
  margin-bottom: 0.6rem;
  display: flex;
  flex-flow: row wrap;
}

.subcats-list__item {
  font-size: 0.9rem;
}

.subcats-list__item:not(:last-child) {
  padding-right: 0.5rem;
}

.subcats-list__item:not(:last-child)::after {
  content: "\2014";
  padding-left: 0.5rem;
  color: var(--hoverColor);
}

.subcats-list__link {
  color: var(--hoverColor);
  text-decoration: none;
}

.catalog-item__footer {
  margin-top: auto;
  padding: 1rem;
  padding-top: 0;
  padding-bottom: 1.5rem;
}

.catalog-item__btn {
  padding: 0.6rem 1.65rem;
  border: 1px solid var(--btnBg);
  border-radius: var(--bradius);
  font-size: 0.9rem;
  color: var(--btnBg);
  font-weight: var(--medium);
  text-decoration: none;
  transition: color 0.3s, background-color 0.3s, border-color 0.3s;
}

.catalog-item__btn:hover {
  text-decoration: none;
  background-color: var(--btnBgHover);
  border-color: var(--btnBgHover);
  color: var(--btnColorHover);
  transition: color 0.3s, background-color 0.3s, border-color 0.3s;
}


/*
===============================
= 35 Виджет каталога в сайдбаре
============================================
*/

.catalog-sidebar__wrap {
  margin-bottom: 2rem;
  border: 1px solid var(--borderColor);
  border-radius: var(--bradius);
}

.catalog-sidebar__header {
  padding: 0.9rem 1.2rem;
  padding-right: 1rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-weight: var(--medium);
  color: var(--mainColor);
  cursor: pointer;
}

.catalog-sidebar__header svg {
  width: 1rem;
  height: 1rem;
  object-fit: cover;
  fill: currentColor;
  transform: rotate(-180deg);
}

.catalog-sidebar__header.is-up svg {
  transform: rotate(0);
}

.catalog-sidebar__header svg:hover {
  fill: var(--btnBg);
}

.catalog-sidebar__list {
  padding-bottom: 0.25rem;
}

.cat-item {
  padding: 0.7rem 1.2rem;
  padding-right: 2rem;
  position: relative;
  list-style: none;
  font-size: 0.9rem;
  line-height: 140%;
}

@media (max-width:1080px) {
  .cat-item {
    padding: 0.9rem 1.2rem;
  }
}

@media (max-width:500px) {
  .cat-item {
    font-size: 1rem;
  }
}

.cat-item:not(:last-child) {
  border-bottom: 1px solid var(--borderColor);
}

.cat-item:first-child {
  border-top: 1px solid var(--borderColor);
}

.cat-item a {
  text-decoration: none;
}

.cat-item a:hover {
  text-decoration: underline;
}

.cat-item .children {
  padding-top: 1rem;
  display: none;
}

.has-caret {
  padding-right: 2.2rem;
}

.has-caret::before,
.is-down::before {
  content: "";
  width: 1rem;
  height: 1rem;
  position: absolute;
  right: 1rem;
  top: 0.8rem;
  background-color: var(--lightColor);
  background-image: url(assets/img/arrow-down-alt.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  cursor: pointer;
}

@media (max-width:1080px) {

  .has-caret::before,
  .is-down::before {
    top: 1.1rem;
  }
}

.is-down::before {
  transform: rotate(-180deg);
}

.has-caret:hover::before,
.is-down:hover::before {
  background-color: var(--greyBg);
}

.activ::after {
  content: "";
  width: 2px;
  height: 15px;
  position: absolute;
  left: 0;
  top: 0.95rem;
  background-color: #3f60c2;
}

.cat-item .children .cat-item {
  padding: 0 0 0 1rem;
  position: relative;
  font-size: 0.88rem;
  border: none !important;
}

@media (max-width:500px) {
  .cat-item .children .cat-item {
    font-size: 0.92rem;
  }
}

.cat-item .children .cat-item:not(:last-child) {
  margin-bottom: 6px;
}

@media (max-width:500px) {
  .cat-item .children .cat-item:not(:last-child) {
    margin-bottom: 10px;
  }
}

.cat-item .children .cat-item::before {
  content: "";
  width: 6px;
  height: 6px;
  background-color: var(--supportColor);
  position: absolute;
  left: 0;
  top: 0.45rem;
  border-radius: 50%;
}

.cards-list--inner .card-item__btn {
  font-size: 0.82rem;
}


/*
===============================
= 36 Список дочерних категорий на странице родительской
============================================
*/

.page-content__sublist {
  margin-bottom: 2rem;
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(4, 1fr);
}

@media (max-width: 1440px) {
  .page-content__sublist {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 1160px) {
  .page-content__sublist {
    grid-template-columns: repeat(4, 1fr);
  }
}

@media (max-width: 900px) {
  .page-content__sublist {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 700px) {
  .page-content__sublist {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 600px) {
  .page-content__sublist {
    display: block;
  }
}

.page-content__subitem {
  padding: 0.6rem 1rem;
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  border: 1px solid var(--borderColor);
  border-radius: var(--bradius);
}

@media (max-width: 600px) {
  .page-content__subitem {
    margin-left: auto;
    margin-right: auto;
    max-width: 400px;
  }
}

@media (max-width: 600px) {
  .page-content__subitem:not(:last-child) {
    margin-bottom: 1rem;
  }
}

.page-content__sublink {
  text-decoration: none;
}

.page-content__subimg {
  margin-right: 0.8rem;
  flex-shrink: 0;
}

.page-content__subimg img {
  width: 50px;
  height: 50px;
  border-radius: 50%;

}

.page-content__subtitle {
  display: inline-flex;
  font-size: 0.9rem;
  line-height: 120%;

}

.page-content__wrap {
  margin-bottom: 3rem;
}

.single .page-content__wrap {
  margin-bottom: 2rem;
}


/*
===============================
= 37 Основные контейнеры карточки
============================================
*/

.card-page {
  display: grid;
  gap: 2rem;
  grid-template-columns: repeat(12, 1fr);
}

@media (max-width: 1080px) {
  .card-page {
    display: block;
  }
}

.card-page__slider,
.card-page__img {
  grid-column: 8 span;
  /* grid-column: 1 / span 8;*/
}

@media (max-width: 1080px) {

  .card-page__slider,
  .card-page__img {
    margin-bottom: 2rem;
  }
}

.card-page__slider {
  overflow: hidden;
}

.card-page__atts {
  grid-column: 4 span;
  /* grid-column: 9 / span 4;*/
  align-self: self-start;
}

@media (max-width: 1080px) {
  .card-page__atts {
    margin-bottom: 2rem;
  }
}

.card-page__wrap {
  margin-bottom: 1rem;
  padding: 1rem 1.5rem;
  background-color:rgb(246 246 255 / 71%);
  border-radius: var(--bradius);
}

@media (max-width: 1080px) {
  .card-page__wrap {
    margin: 1.5rem 0;
    clear: both;
  }
}

.card-page__descr {
  margin-top: 0.5rem;
  grid-column: 12 span;
}

@media (max-width: 1080px) {
  .card-page__descr {
    margin-bottom: 2rem;
  }
}

.card-page__related {
  grid-column: 12 span;
}

.card-page__tabs {
  grid-column: 12 span;
}

@media (max-width: 1080px) {
  .card-page__tabs {
    margin-bottom: 2rem;
  }
}


/*
===============================
= 38 Элементы слайдера в карточках
============================================
*/

.card-page__slider .owl-prev::before,
.card-page__slider .owl-next::before {
  width: 40px;
  height: 40px;
  background-color: var(--lightColor) !important;
}

.card-page__slider .owl-prev:hover::before,
.card-page__slider .owl-next:hover::before {
  background-color: var(--greyBg) !important;
}

.card-page__slider .owl-prev:before {
  background-image: url("assets/img/arrow-gallery-left-alt.svg");
}

.card-page__slider .owl-next:before {
  background-image: url("assets/img/arrow-gallery-right-alt.svg");
}

.card-page__slider .owl-prev {
  left: -2rem;
  width: 40px;
  height: 40px;
  opacity: 0;
  transition: left 0.3s ease-in-out, opacity 0.3s ease-in-out;
}
 
.card-page__slider:hover .owl-prev {
  left: 1rem;
  opacity: 1;
  box-shadow: 0 10px 20px rgba(51, 51, 51, 0.4);
}

@media (max-width: 600px) {
  .card-page__slider .owl-prev {
    left: 0.5rem;
    opacity: 1;
    transform: scale(0.8) translateY(-13px);
  }

  .card-page__slider:hover .owl-prev {
    left: 0.5rem;
  }
}

.card-page__slider .owl-next {
  right: -2rem;
  width: 40px;
  height: 40px;
  opacity: 0;
  transition: right 0.3s ease-in-out, opacity 0.3s ease-in-out;
}

.card-page__slider:hover .owl-next {
  right: 1rem;
  opacity: 1;
  box-shadow: 0 10px 20px rgba(51, 51, 51, 0.5);
}

@media (max-width: 600px) {
  .card-page__slider .owl-next {
    right: 0.5rem;
    opacity: 1;
    transform: scale(0.8) translateY(-10px);
  }

  .card-page__slider:hover .owl-next {
    right: 0.5rem;
  }
}


.card-page__slider .owl-dots {
  transform: scale(0.8);
  left: 0;
  bottom: 9px
}

@media (max-width: 1024px) {
  .card-page__slider .owl-dots {
    bottom: 5px;
  }
}

.card-slider-list__item,
.card-page__img {
  position: relative;
}

.card-slider-list__item::after,
.card-page__img::after {
  content: "";
  position: absolute;
  left: 1rem;
  top: 1rem;
  z-index: 1;
  width: 1.4rem;
  height: 1.4rem;
  background-color: rgba(0, 0, 0, 0.4);
  background-image: url("assets/img/expand.svg");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 0.8rem 0.8rem;
  border-radius: 4px;
}


/*
===============================
= 39 Блок с ценой, атрибутами и кнопкой в карточках
============================================
*/

.card-page__atts .card-item__cost {
  margin-bottom: 1rem;
}

@media (max-width: 1080px) {
  .card-page__atts .card-item__cost {
    float: left;
    width: 60%;
  }
}

.card-page__atts .card-item__price {
  margin-bottom: 0.4rem;
  font-size: 1.3rem;
  font-weight: var(--medium);
}

.card-page__info {
  margin-bottom: 1rem;
  display: block;
  font-size: 0.88rem;
  line-height: 140%;
}

.products-attr__item {
  padding-left: 1rem;
  position: relative;
  font-size: 0.9rem;
  line-height: 145%;
  color: var(--mainColor);
}

.products-attr__item:not(:last-child) {
  margin-bottom: 0.65rem;
}


.products-attr__item::before {
  content: "";
  width: 6px;
  height: 6px;
  background-color: var(--supportColor);
  position: absolute;
  left: 0;
  top: 8px;
  border-radius: 50%;
}

@media (max-width: 1024px) {
  .products-attr__item::before {
    top: 8px;
  }
}

.card-page__btn {
  margin-bottom: 1.2rem;
  width: 100%;
}

@media (max-width: 1080px) {
  .card-page__btn {
    margin-bottom: 0;
    width: 40%;
  }
}

@media (max-width: 415px) {
  .card-page__btn {
    padding: 0.9rem !important;
    font-size: 1.1rem !important
  }
}

a.card-page__btn {
  text-align: center;
}

.card-page__note {
  position: relative;
  padding-left: 1.3rem;
  display: block;
  font-size: 0.85rem;
  line-height: 130%;
  color: var(--greyColor);
}

.card-page__note::before {
  content: "";
  width: 16px;
  height: 16px;
  position: absolute;
  left: 0;
  top: 1px;
  background-image: url(assets/img/info-alt.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}


/*
===============================
= 40 Табы в карточках
============================================
*/

.tab {
  margin-top: 0.5rem;
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-start;
}

@media (max-width: 760px) {
  .tab {
    display: none;
  }
}

.tablinks {
  padding: 0.8rem 1.5rem;
  margin: 0;
  font-size: 0.95rem;
  font-weight: var(--medium);
  transition: color 0.3s;
}

.tablinks:not(:last-child) {
  margin-right: 1.1rem;
}

.tablinks:hover {
  color: var(--hoverColor);
}

.tablinks.active {
  position: relative;
  z-index: 1;
  color: var(--btnBg);
  border: 1px solid var(--borderColor);
  border-bottom: 0;
  border-top-right-radius: var(--bradius);
  border-top-left-radius: var(--bradius);
}

@media (max-width: 760px) {
  .tablinks.active {
    border: none !important;
  }
}

.tablinks.active::after {
  content: "";
  width: 100%;
  position: absolute;
  bottom: -40%;
  z-index: -1;
  left: 0;
  height: 30px;
  background-color: var(--lightColor);
}

@media (max-width: 760px) {
  .tablinks.active::after {
    display: none;
  }
}

.tablinks:first-child.active::after {
  left: -1px;
  border-left: 1px solid var(--borderColor);
}

.tabcontent {
  display: none;
  padding: 1.2rem 1.5rem;
  border: 1px solid var(--borderColor);
  border-radius: var(--bradius);
}

@media (max-width: 760px) {
  .tabcontent {
    margin-bottom: 1.5rem;
    padding: 1.2rem 1.2rem;
    display: block !important;
  }
}

.tabcontent__title {
  display: none;
  margin-bottom: 1rem;
  font-size: 1rem;
  font-weight: var(--medium);
}

@media (max-width: 760px) {
  .tabcontent__title {
    display: block;
  }
}

.tabcontent a {
  text-decoration: none;
}

.tabcontent a:hover {
  text-decoration: underline;
}

/*
===============================
= 41 Похожие карточки
============================================
*/

.card-page__related .cards-list {
  grid-template-columns: repeat(3, 1fr);
}

@media (max-width: 960px) {
  .card-page__related .cards-list {
    grid-template-columns: repeat(2, 1fr);
  }
}

.no-more-cards {
  font-size: 0.8rem;
  color: var(--greyColor);
}

.related-cards-list__title {
  margin-bottom: 3rem;
  position: relative;
  display: block;
  font-size: 1.2rem;
  font-weight: var(--medium);
}

.related-cards-list__title::before {
  content: "";
  width: 60px;
  height: 6px;
  position: absolute;
  left: 0;
  bottom: -1.5rem;
  background-image: url(assets/img/shape2.svg);
  background-repeat: no-repeat;
  background-position: center;
}

@media (max-width: 1024px) {
  .related-cards-list .card-page__img {
    margin-bottom: 0;
  }
}

.related-cards-list .card-item__title {
  margin-bottom: 1.6rem;
  font-size: 1rem;
}

@media (max-width: 760px) {
  .related-cards-list .card-item__title {
    font-size: 1.1rem;
  }
}

.card-item--related:nth-child(4) {
  display: none;
}

@media (max-width: 960px) {
  .card-item--related:nth-child(4) {
    display: flex;
  }
}


/*
===============================
= 42 Список комментариев
============================================
*/

.comments__list {
  margin-bottom: 2.6rem;
}

.comments__wrapper.open {
  height: auto;
  display: block;
  overflow: visible;
  opacity: 1;
}

.comments {
  position: relative;
}

.comments__title {
  margin-bottom: 1.5rem;
  display: block;
  font-weight: var(--bold);
  font-size: 1.2rem;
}

#respond .comments__title {
  margin-bottom: 1rem;
  border: 0;
}

@media (max-width:415px) {

  .comments__title,
  #respond .comments__title {
    font-size: 1rem;
  }
}

@media (max-width: 900px) {
  .comments {
    margin-bottom: 2rem;
  }
}

.comment {
  padding: 1rem 1.4rem;
  display: flex;
  flex-flow: column nowrap;
  font-size: 1rem;
  border: 1px solid var(--borderColor);
  border-radius: 8px;
}

@media (max-width: 500px) {
  .comment {
    padding: 1rem 0.9rem 0.6rem;
  }
}

.comment:not(:last-child) {
  margin-bottom: 3rem;
}

.comment .children {
  margin: 0.5rem 0;
  padding: 1rem 0 0 1rem;
}

@media (max-width: 500px) {
  .comment .children {
    padding-left: 0.8rem;
  }
}

.comment__wrapper {
  display: flex;
  flex-direction: column;
}

.comment__header {
  padding-bottom: 0.5rem;
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid var(--borderColor);
}

.comment-author-info {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
}

.comment-edit-link {
  margin-left: 1rem;
  padding-top: 5px;
  color: var(--greyColor);
  font-size: 0.75rem;
  text-decoration: none;
}

@media (max-width: 500px) {
  .comment-edit-link {
    display: none;
  }
}

.comment-edit-link:hover {
  text-decoration: underline;
  color: var(--hoverColor);
}

.comment__reply {
  color: var(--greyColor);
  cursor: pointer;
  font-size: 0.75rem;
}

.comment__reply:hover {
  text-decoration: underline;
  color: var(--hoverColor);
}

.comment__text {
  padding: 1rem 0 0.5rem;
  font-size: 0.92rem;
  line-height: 150%;
}

.comment__author {
  font-weight: var(--medium);
  font-size: 1rem;
}

@media (max-width: 600px) {
  .comment__author {
    font-size: 0.9rem;
    line-height: 2;
  }
}

.comment__author .url {
  text-decoration: none;
}

.comment__author .url:hover {
  text-decoration: underline;
}

.comment-author-info__label {
  position: relative;
}

.comment-author-info__label::after {
  content: "Автор";
  margin-left: 14px;
  padding: 5px 8px;
  display: inline-flex;
  background-color: var(--supportColor);
  color: var(--lightColor);
  font-size: 13px;
  line-height: 1;
  border-radius: 4px;
}

@media (max-width: 600px) {
  .comment-author-info__label::after {
    content: " ";
    margin-left: 8px;
    padding: 0;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    transform: translateY(-10px)
  }
}

.comment__meta {
  font-size: 0.82rem;
}

.comment__meta a {
  text-decoration: none;
  color: var(--greyColor);
}

.children .comment {
  padding: 0;
  border: none;
}

.children .comment:not(:last-child) {
  margin-bottom: 1rem;
}

.comment-awaiting-moderation {
  display: block;
  margin-bottom: 1.5rem;
  font-style: normal;
  font-size: 0.9rem;
  font-style: italic;
}


/*
===============================
= 43 Форма отправки комментариев
============================================
*/

.comment-form {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}

.comment-form .comment-notes,
.logged-in-as {
  display: block;
  flex-basis: 100%;
  margin-bottom: 1.5rem;
  font-size: 0.9rem;
  color: var(--greyColor);
}

@media (max-width:415px) {

  .comment-form .comment-notes,
  .logged-in-as {
    font-size: 0.8rem;
  }

  .required-field-message {
    display: block;
  }
}

.comment-form .comment-notes input {
  margin-right: 1rem;
}

.comment-form .comment-notes a,
.logged-in-as a,
.comment-form__agreement a {
  color: var(--greyColor);
}

.comment-form .comment-notes a:hover,
.logged-in-as a:hover,
.comment-form__agreement a:hover {
  color: var(--hoverColor);
}

#comments-checkbox {
  margin-right: 10px;
}

.comment-form-cookies-consent {
  flex-basis: 100%;
  margin-bottom: 0.6rem;
  display: none;
}

.comment-form-cookies-consent input {
  margin-right: 1rem;
}

.comment-form-author {
  flex: 1;
  margin-right: 1rem;
}

@media (max-width: 600px) {
  .comment-form-author {
    flex-basis: 100%;
    margin-right: 0;
  }
}

.comment-form-email {
  flex: 1;
  margin-left: 1rem;
}

@media (max-width: 600px) {
  .comment-form-email {
    flex-basis: 100%;
    margin-left: 0;
  }
}

.comment-form-comment {
  flex-basis: 100%;
  margin-bottom: 1rem;
}

.comment-form .submit {
  margin: 0;
  margin-top: 0.8rem;
}

.comment-form .submit:disabled,
.wpcf7-submit:disabled {
  opacity: 0.45;
  cursor: not-allowed;
  transition: opacity 0.3s ease-in-out;
}

.comment-form .submit:hover,
.error404-btn:hover,
.wpcf7-submit:hover {
  text-decoration: none;
  color: var(--btnColor);
  background-color: var(--btnBgHover);
  transition: background-color 0.3s ease-in-out;
}

a#cancel-comment-reply-link {
  display: inline-block;
  padding-left: 10px;
  text-decoration: none;
  overflow: hidden;
  width: 36px;
  height: 36px
}

a#cancel-comment-reply-link:before {
  content: "\00D7";
  font-size: 30px;
  color: red;
  width: 36px;
  height: 36px
}

.form-checkbox {
  position: relative;
  display: flex;
  flex-flow: row wrap;
  width: 100%;
  font-weight: 400;
}

.form-checkbox__input {
  position: absolute;
  opacity: 0;
}

.form-checkbox__text {
  margin-left: 1.6rem;
  font-size: 0.88rem;
  line-height: 1;
  flex: 0 100%;
  color: var(--greyColor);
}

@media (max-width:800px) {
  .form-checkbox__text {
    line-height: 20px
  }
}

@media (max-width:500px) {
  .form-checkbox__text {
    font-size: 13px;
  }
}

.form-submit {
  margin-bottom: 0 !important;
}

@media (max-width:415px) {
  .form-submit {
    width: 100%;
  }
}

.form-checkbox__text::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 1rem;
  height: 1rem;
  background-color: transparent;
  border: 1px solid #c9c5db;
  border-radius: 4px;
}

@media (max-width:500px) {
  .form-checkbox__text::before {
    top: 4px;
  }
}

.form-checkbox__input:checked+.form-checkbox__text::before {
  background-image: url("assets/img/checked.svg");
  background-position: center;
  background-size: 1.1rem;
  background-repeat: no-repeat;
  border-color: transparent;
  background-color: var(--hoverColor);
}

.form-checkbox__text a {
  color: var(--hoverColor);
  text-decoration: none;
}

.form-checkbox__text a {
  color: var(--hoverColor);
  text-decoration: underline;
}

.comment-navigation {
  margin: 0 0 3rem !important;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}

@media (max-width: 415px) {
  .comment-navigation {
    flex-direction: column;
  }
}

.comment-navigation a {
  padding: 1rem;
  display: block;
  font-size: 0.86rem;
  border: 1px solid var(--borderColor);
  border-radius: 6px;
  font-weight: var(--medium);
  color: var(--greyColor);
  text-decoration: none;
  margin: 0.5rem 0;
  text-align: center;
}

.comment .comment-respond {
  margin-top: 1rem;
  padding: 1.2rem;
  padding-top: 0.5rem;
  background-color: #f8f8fb;
  border-radius: 6px;
}

.comment .comments__title {
  margin-bottom: 0.5rem;
}


/*
===============================
= 44 Маркированные и нумерованные списки
============================================
*/

.post-content ul:not(:last-child),
.widget ul:not(:last-child) {
  margin: 1rem 0;
}

.post-content ul {
  padding-left: 1rem;
}

.post-content ul li ul {
  margin-top: 0.6rem;
}

.post-content ul li {
  padding-left: 1rem;
  position: relative;
}

.post-content ul li:not(:last-child) {
  margin-bottom: 0.5rem;
}

.post-content ul li::before {
  content: "";
  width: 6px;
  height: 6px;
  background-color: var(--markerBg);
  position: absolute;
  left: 0;
  top: 0.66rem;
  border-radius: 50%;
}

.post-content ol {
  margin: 1rem 0;
  padding-left: 1rem;
  list-style: decimal;
  list-style-position: inside;
}

.post-content ol li {
  padding: 0
}

.post-content ol li:not(:last-child) {
  margin-bottom: 0.6rem;
}

.post-content ol ol {
  list-style: upper-alpha
}

.post-content ol ol ol {
  list-style: lower-roman
}

.post-content ol ol ol ol {
  list-style: lower-alpha
}


/*
===============================
= 45 Элементы записей
============================================
*/

blockquote {
  margin-bottom: 1.2rem;
  padding: 1.3rem 2rem;
  display: flex;
  flex-direction: column;
  letter-spacing: 0.5px;
  border-width: 0 0 0 5px;
  border-style: solid;
  border-color: var(--bquoteBorder);
  background-color: #fafafb;
}

blockquote p {
  font-size: 1rem;
  line-height: 155%;
}

blockquote cite {
  font-size: 0.75rem;
  font-weight: var(--medium);
}

.wp-block-group__inner-container {
  padding: 1rem;
}

.wp-block-media-text {
  margin-bottom: 1rem;
}

.post-content div,
figure.aligncenter {
  margin-bottom: 1.2rem;
}

.wp-block-search__button {
  margin: 0;
  margin-left: 10px;
  padding: 0.3rem 0.6rem;
  font-size: 0.88rem;
  font-weight: var(--medium);
}

.page-header__info {
  margin: 3rem 0 0;
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-start;
}

.post-meta__date,
.post-meta__comments {
  padding-left: 1.4rem;
  position: relative;
  font-size: 0.9rem;
  color: var(--greyColor);
}

.post-meta__date::before,
.post-meta__comments::before {
  content: "";
  position: absolute;
  top: 0.2rem;
  left: 0;
  width: 0.9rem;
  height: 0.9rem;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}

.post-meta__date::before {
  width: 1rem;
  height: 1rem;
  background-image: url("assets/img/calendar.svg");
}

.post-meta__comments::before {
  background-image: url("assets/img/comments.svg");
}
 

.page-header__info li:not(:last-child) {
  margin-right: 1.2rem;
}


/*
===============================
= 46 Таблицы
============================================
*/

table,
.wp-block-table {
  margin: 0 0 1.2rem;
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
}

table th {
  padding: 0.5rem 1rem;
  text-align: left;
  font-size: 0.9rem;
  font-weight: var(--medium);
  border: 1px solid var(--borderColor);
  background-color: #f6f7fb;
  word-break: normal
}

table td {
  padding: 0.5rem 1rem;
  font-size: 0.9rem;
  line-height: 1.5;
  border: 1px solid var(--borderColor);
  vertical-align: top;
  word-break: normal;
}

.wp-block-table td,
.wp-block-table th {
  font-size: 0.9rem;
  line-height: 1.5;
  border: 1px solid var(--borderColor);
  padding: 0.5rem 1rem;
}

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

table tr:nth-of-type(even) {
  background-color: var(--lightColor);
}

table,
.wp-block-table {
  border-collapse: collapse
}

.wp-block-table {
  border-collapse: collapse
}

dt,
dd {
  margin-bottom: 1rem;
}

table::-webkit-scrollbar {
  height: 0.5rem;
}

table::-webkit-scrollbar-track {
  -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);
}

table::-webkit-scrollbar-thumb {
background-color: var(--supportColor);
outline: 1px solid var(--supportColor);
}

/*
===============================
= 47 Галереи WP и подобные элементы
============================================
*/

figcaption {
  margin-top: -5px;
  color: var(--greyColor);
  font-size: 0.8rem;
}

.blocks-gallery-grid,
.wp-block-gallery {
  margin-top: 0 !important;
}


.blocks-gallery-grid,
.wp-block-gallery {
  margin-left: 0 !important
}

.wp-block-gallery,
.post-content .gallery {
  margin-bottom: 1.2rem;
}

.wp-block-gallery.is-cropped .blocks-gallery-item img {
  height: 100%;
  flex: 1;
  object-fit: cover
}

.blocks-gallery-grid li {
  padding-left: 0 !important;
}

.blocks-gallery-grid li::before {
  display: none;
}

.wp-block-image {
  display: initial;
}

.wp-block-image .alignleft {
  margin: 0 2rem 1rem 0;
}

img.alignleft {
  float: left;
  margin: 0 2rem 1rem 0;
}

.wp-block-image .alignright {
  margin: 0 0 1rem 2rem;
}

img .alignright {
  float: right;
  margin: 0 0 1rem 2rem;
}

@media (max-width: 900px) {

  .wp-block-image .alignleft,
  .wp-block-image .alignright {
    margin: 0 auto 1rem;
    float: none;
    display: table
  }
}

.gallery {
  margin: 1rem auto 0;
  display: inline-block;
}

.gallery .gallery-item {
  margin: 0;
  padding: 0;
}

.gallery .gallery-item img {
  border-radius: 6px;
}

.gallery-columns-2 {
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(2, 1fr);
}

.gallery-columns-3 {
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(3, 1fr);
}

@media (max-width:600px) {
  .gallery-columns-3 {
    grid-template-columns: repeat(2, 1fr);
  }
}

.gallery-columns-4 {
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(4, 1fr);
}

@media (max-width:600px) {
  .gallery-columns-4 {
    grid-template-columns: repeat(2, 1fr);
  }
}

.wp-block-cover {
  margin-bottom: 1.2rem;
}


/*
===============================
= 48 Элементы блочного редактора
============================================
*/

.wp-block-buttons {
  margin-bottom: 1.2rem
}

.wp-block-code {
  margin-bottom: 1.2rem;
  padding: 1.5rem;
  padding-left: 2rem;
  max-width: 100%;
  overflow: auto;
  white-space: pre;
  color: #40f1ad;
  border-top-right-radius: 6px;
  border-bottom-right-radius: 6px;
  border: 0;
  border-left: 5px solid #57e;
  background-color: #22283e;
  font-family: monospace;
}

.wp-block-code code {
  padding: 0;
  background-color: transparent;
  font-size: 0.88rem;
}

code {
  margin: 1rem 0;
  padding: 1rem;
  display: block;
  background-color: #22283e;
  color: #40f1ad;
}

.wp-block-verse {
  white-space: pre-wrap;
}

.wp-block-embed__wrapper>* {
  margin-right: auto;
  margin-left: auto;
}

.wp-block-latest-posts.is-grid li {
  padding: 1rem;
  border: 1px solid var(--borderColor);
  font-size: 0.9rem;
  font-weight: var(--medium);
  line-height: 125%;
  border-radius: 6px;
}

.wp-block-latest-posts.is-grid li a {
  text-decoration: none;
}

.wp-block-latest-posts.is-grid li a:hover {
  text-decoration: underline;
  color: var(--hoverColor);
}

.wp-block-latest-posts__featured-image {
  margin-bottom: 0.6rem;
}

.wp-block-latest-posts__featured-image img {
  border-radius: 4px;
}

.wp-block-columns {
  font-size: 0.96rem;
}


.wp-block-columns p:not(:last-child) {
  margin-bottom: 0.5rem;
}

.wp-block-columns img {
  border-radius: 6px;
}


/*
===============================
= 49 Навигация внутри записей (предыдущая / следующая)
============================================
*/

.post-navigation .nav-links {
  margin-bottom: 2rem;
  padding: 2rem 0;
  border-top: 1px solid var(--borderColor);
  border-bottom: 1px solid var(--borderColor);
  width: 100%;
  display: grid;
  gap: 2rem;
  grid-template-columns: repeat(auto-fit, minmax(205px, 1fr));
}

.post-navigation .nav-links>* {
  border-radius: 6px;
}

.post-navigation .nav-links>* a {
  background-color: transparent;
  text-decoration: none;
}

.post-navigation .nav-links>*:hover {
  text-decoration: none;
}

.post-navigation .nav-links .nav-next {
  padding-left: 1rem;
  text-align: right;
}

@media(max-width: 500px) {
  .post-navigation .nav-links .nav-next {
    padding-left: 0;
    text-align: left;
  }
}

.post-navigation .nav-links .nav-prev {
  padding-right: 1rem;
}

.post-navigation .nav-links__label {
  margin-bottom: 0.4rem;
  display: inline-block;
  font-size: 0.82rem;
  color: var(--greyColor)
}

.post-navigation .nav-links__title {
  font-weight: var(--medium);
  line-height: 135%;
  word-break: keep-all;
}

.post-navigation .nav-links__title:hover {
  color: var(--hoverColor);
  text-decoration: underline;
}

.single-post__nav {
  display: flex;
  align-items: center;
}

.single-post__nav p {
  display: none
}

.single-post__nav .post-page-numbers {
  margin-right: 8px;
  display: flex;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  border-radius: 4px;
  background-color: var(--greyBg);
  line-height: 2rem;
  transition: background-color 0.3s, color 0.3s;
}

.single-post__nav a.post-page-numbers {
  text-decoration: none;
  background-color: var(--greyBg);
}

.single-post__nav .current,
.single-post__nav a.post-page-numbers:hover {
  background-color: var(--btnBg);
  color: var(--lightColor);
}


/*
===============================
= 50 Кнопки для расшаривания в карточках и записях
============================================
*/

.share-btns__list {
  margin-bottom: 2rem;
  display: flex;
  flex-flow: row nowrap;
  justify-content: flex-start;
}

.share-btns__title {
  display: block;
  margin-bottom: 0.6rem;
  font-size: 0.82rem;
  color: var(--greyColor);
}

.share-btns__item:not(:last-child) {
  margin-right: 0.5rem;
}

.share-btns__link {
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 4px;
  width: 1.6rem;
  height: 1.6rem;
  color: var(--btnBg);
}

.share-btns__link:hover {
  color: var(--btnBgHover);
}

.share-btns__link svg {
  border-radius: 4px;
  width: 1.6rem;
  height: 1.6rem;
  fill: currentColor;
}


/*
===============================
= 51 Пагинация
============================================
*/

.pagination {
  margin-top: 3rem;
}

@media(max-width: 1160px) {
  .pagination {
    margin: 3rem 0;
  }
}

.pagination .nav-links {
  display: flex;
  flex-flow: row wrap;
}

@media(max-width: 600px) {
  .pagination .nav-links {
    justify-content: center;
  }
}

.pagination .nav-links>* {
  margin-right: 0.9rem;
  padding: 0.65rem 0.9rem;
  display: inline-flex;
  font-size: 0.9rem;
  line-height: 1;
  border-radius: 4px;
  background-color: var(--greyBg);
  transition: background-color 0.3s ease-in-out, color 0.3s ease-in-out;
}

.pagination .page-numbers {
  text-decoration: none;
  color: var(--mainColor);
}

.pagination .page-numbers.current,
.pagination .page-numbers:hover {
  background-color: var(--btnBg);
  color: var(--btnColor);
}

.pagination .dots:hover {
  background-color: var(--greyBg);
  color: var(--mainColor);
}

@media (max-width: 1100px) {
  .pagination .page-numbers {
    display: none;
  }

  .pagination .current,
  .pagination .prev,
  .pagination .next {
    display: inline-flex;
  }
}

.archive .page-content__wrap,
.blog .page-content__wrap {
  margin-bottom: 0;
}

.blog-item__more {
  padding-left: 5px;
  color: var(--hover);
  text-decoration: none;
  font-weight: var(--medium);
}


/*
===============================
= 52 Виджеты в сайдбаре
============================================
*/

.widget-title {
  margin-bottom: 1rem;
  padding-bottom: 1.2rem;
  display: block;
  font-weight: var(--medium);
  font-size: 0.9rem;
  line-height: 1;
  border-bottom: 1px solid var(--borderColor);
  color: var(--greyColor);
}

.widget_nav_menu ul {
  padding-left: 0 !important;
}

.widget_nav_menu ul li {
  padding-left: 1rem;
  position: relative;
  font-size: 0.9rem;
}

.widget_nav_menu ul li::before {
  content: "";
  width: 6px;
  height: 6px;
  background-color: var(--markerBg);
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  border-radius: 50%;
}

.widget_nav_menu ul li:not(:last-child) {
  margin-bottom: 0.3rem;
}

.widget_nav_menu ul li a {
  text-decoration: none;
}

.widget_nav_menu ul li a:hover {
  color: var(--hoverColor);
  text-decoration: underline;
}

.widget #calendar_wrap {
  width: 100%;
}

.widget #wp-calendar th {
  text-align: center;
  padding: 5px 4px;
  font-size: 0.8rem;
  font-weight: var(--medium);
  border: 1px solid var(--borderColor)
}

.widget #wp-calendar td {
  padding: 5px 6px;
  border: 1px solid rgba(29, 43, 100, .06);
  text-align: center;
  font-size: 0.8rem;
}

.widget #wp-calendar caption {
  margin-bottom: 0.5rem;
  font-size: 14px;
  color: var(--greyColor);
}

.widget:not(:last-child) {
  margin-bottom: 2rem;
}

.widget li,
.widget p {
  font-size: 0.96rem !important;
}

.widget a {
  text-decoration: none;
}

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


/*
===============================
= 53 Метки в блоге
============================================
*/

.tagcloud {
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-start;
}

.tagcloud a {
  margin: 0 9px 12px 0;
  padding: 8px;
  line-height: 12px;
  font-size: 12px !important;
  text-decoration: none;
  text-transform: uppercase;
  border: 1px solid rgba(29, 43, 100, .1);
  border-radius: 4px;
  transition: background-color 0.3s, color 0.3s;
}

.widget .tagcloud a:hover {
  text-decoration: none;
  background-color: var(--btnBgHover);
  color: var(--lightColor);
  transition: background-color 0.3s, color 0.3s;
}

.page-content__tags {
  margin-bottom: 1.8rem;
}

.tags-list,
.single-post__tags {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}

.tags-list__item,
.single-post__tags a {
  font-size: 0.8rem;
}

.tags-list__item:not(:last-child),
.single-post__tags a {
  margin-bottom: 0.9rem;
  margin-right: 0.9rem;
}

.tags-list__link,
.single-post__tags a {
  display: inline-flex;
  align-items: center;
  position: relative;
  padding: 0.3rem 0.7rem;
  background-color: var(--greyBg);
  border: 1px solid var(--borderColor);
  border-radius: var(--bradius);
  text-decoration: none;
}

.tags-list__link::before,
.single-post__tags a::before {
  content: "";
  margin-right: 0.5rem;
  width: 0.7rem;
  height: 0.7rem;
  background-image: url("assets/img/hashtag.svg");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}

.tags-list__link:hover,
.single-post__tags a:hover {
  color: var(--btnBg);
  text-decoration: none;
}

.single-post__tags {
  margin-bottom: 1.5rem;
}


/*
===============================
= 54 Страница Контакты
============================================
*/

.contact-page-wrap {
  margin-bottom: 4rem;
}

.contact-wrapper {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  align-items: center;
}

@media (max-width: 1100px) {
  .contact-wrapper {
    display: block;
  }
}


/*
===============================
= 55 Контактная форма на странице Контакты
============================================
*/

.contact-form {
  padding: 1.6rem 2rem;
  flex-basis: 38%;
  order: 1;
  border-radius: var(--bradius);
  background-color: rgb(206 212 226 / 19%);
}

@media (max-width: 415px) {
  .contact-form {
    padding: 1.6rem 1.5rem;
  }
}

.contact-form__title {
  display: inline-block;
  margin-bottom: 0.6rem;
  font-weight: var(--medium);
  font-size: 1.2rem;
}

.contact-form__descr {
  margin-bottom: 1.5rem;
  font-size: 0.9rem;
  line-height: 130%;
  color: var(--greyColor);
}

.wpcf7-text,
.wpcf7-email,
.wpcf7-tel,
.wpcf7-textarea {
  margin: 10px 0;
  border: 1px solid var(--borderColor);
  border-radius: var(--bradius);
  padding: 1rem;
  width: 100%;
  height: 52px;
  font-family: inherit;
  font-size: 1rem;
  line-height: 1;
  color: var(--mainColor);
}

.wpcf7-textarea {
  height: 120px;
}

.wpcf7-text:focus,
.wpcf7-email:focus,
.wpcf7-tel:focus,
.wpcf7-textarea:focus,
.wpcf7-submit:focus {
  border-color: #5a7ee8;
  outline: none
}

.wpcf7-form p {
  margin: 0;
}

.wpcf7 label {
  font-size: 0.8rem;
  line-height: 110%;
  font-weight: 400;
  color: var(--greyColor);
}

.wpcf7-form-control-wrap {
  margin-bottom: 1.2rem;
  display: block;
}

.wpcf7-not-valid {
  border: 1px solid red;
}

.wpcf7-not-valid-tip {
  margin-bottom: 10px;
  line-height: 1;
}

.wpcf7 form .wpcf7-response-output {
  margin: 1rem 0 0 0;
  padding: 1rem;
  font-size: 14px;
}

.wpcf7-not-valid-tip {
  font-size: 0.65rem !important;
}

.wpcf7-acceptance {
  margin: 1rem 0;
  display: block;
}

.wpcf7-acceptance input {
  position: absolute;
  width: 0;
  height: 0;
  opacity: 0;
  visibility: hidden;
}

.wpcf7-acceptance .wpcf7-list-item {
  display: inline-block;
  margin: 0;
}

.modal .wpcf7-acceptance .wpcf7-list-item {
  margin-top: -12px;
}

.wpcf7-acceptance .wpcf7-list-item-label {
  position: relative;
  display: block;
  padding-left: 2rem;
  font-size: 0.8rem;
}

.wpcf7-acceptance .wpcf7-list-item-label a {
  color: var(--greyColor);
}

.wpcf7-acceptance .wpcf7-list-item-label::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.1rem;
  width: 1.3rem;
  height: 1.3rem;
  background-color: var(--lightColor);
  border: 1px solid #c9c5db;
  border-radius: 4px;
}

.wpcf7-acceptance input:checked+span::before {
  background-color: var(--supportColor);
  background-image: url("assets/img/checked.svg");
  background-position: center;
  background-size: 1.1rem;
  background-repeat: no-repeat;
  border-color: transparent;
}

.wpcf7-submit:disabled {
  opacity: 0.6;
}

.wpcf7 form .wpcf7-response-output {
  font-size: 0.75rem !important;
  padding: 0.4rem !important;
  text-align: center;
  border-radius: 6px;
}

@media (max-width: 1100px) {
  .flex-wrapper {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
  }

  .flex-wrapper .modal-form__label {
    margin-bottom: 0;
  }

  .page-template-contact-page .wpcf7-acceptance .wpcf7-list-item-label::before {
    top: -0.2rem !important
  }
}

@media (max-width: 500px) {
  .flex-wrapper {
    display: block
  }

  .flex-wrapper .modal-form__label {
    margin-bottom: 1rem;
  }
}

@media (max-width: 868px) {
  .page-template-contact-page .wpcf7-acceptance .wpcf7-list-item-label::before {
    top: 0 !important
  }
}

#poster-modal .modal-form__label {
  margin-bottom: 1rem;
}

#poster-modal .wpcf7-acceptance {
  margin-top: 1.5rem;
}


/*
===============================
= 56 Контакты на странице Контакты
============================================
*/

.contact-content {
  flex-basis: 56%;
  order: 2
}

@media (max-width: 1100px) {
  .contact-content {
    margin-bottom: 3rem;
  }
}

.contact-content__descr {
  margin-top: 2rem;
  font-size: 0.9rem;
  color: var(--greyColor);
}

.contact-content__item {
  display: grid;
  grid-template-columns: 1fr 3fr;
}

.contact-content__data {
  text-align: right;
}

.contact-content__item:not(:last-child) {
  margin-bottom: 1rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid var(--borderColor);
}

.contact-content__label {
  font-size: 0.92rem;
  color: var(--greyColor);
  font-weight: var(--medium)
}

@media (max-width:500px) {
  .contact-content__item {
    grid-template-columns: 1fr;
  }

  .contact-content__label {
    margin-bottom: 0.5rem;
    font-size: 0.8rem;
  }

  .contact-content__data {
    text-align: left;
  }
}

@media (max-width:415px) {
  .contact-content__label {
    font-size: 0.9rem;
  }
}

.contact-content__link {
  text-decoration: none;
}

.contact-content__link:hover {
  text-decoration: underline;
}

@media (max-width:900px) {
  .contact-content__link {
    display: inline-block;
  }
}

.contact-map {
  margin-top: 3rem;
  padding: 1rem;
  background-color: var(--lightColor);
  box-shadow: 0 10px 20px rgba(121, 121, 139, 0.2);
}

.contact-map iframe {
  margin-bottom: 0;
}


/*
===============================
= 57 Страница 404
============================================
*/

.error404 .site-header__branding {
  margin: 0 auto;
}


.error-section {
  margin: 2rem auto 0;
  text-align: center;
}

.error-section__title {
  margin-bottom: 2rem;
  font-size: 4rem;
  font-weight: var(--medium);
}

.error-section__text {
  margin: 0 auto 2rem;
  max-width: 750px;
  word-break: keep-all;
}

.error404-btn {
  margin: 0 auto;
}



/*
===============================
= 58 Поп-ап в карточке продукта
============================================
*/

.modal-overlay {
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  width: 0;
  z-index: 200;
  background-color: #17181e;
  opacity: 0.92;
  transition: width 0.3s, transform 0.3s;
}

.modal-overlay.is-open {
  width: 100%;
  transition: width 0.3s, transform 0.3s;
}

.modal {
  position: fixed;
  left: 50%;
  top: 50%;
  z-index: 10001;
  width: 100%;
  max-width: 500px;
  overflow-y: auto;
  max-height: 638px;
  background-color: var(--lightColor);
  opacity: 0;
  visibility: hidden;
  border-radius: var(--bradius);
  transform: translate(-50%, -30%);
  transition: opacity 0.3s, visibility 0.3s, transform 0.3s;
}


.modal.is-open {
  opacity: 1;
  visibility: visible;
  transform: translate(-50%, -50%);
  transition: opacity 0.6s, visibility 0.6s, transform 0.6s;
}

.modal__close {
  content: "";
  position: absolute;
  right: 1.2rem;
  top: 1rem;
  z-index: 9999;
  width: 2rem;
  height: 2rem;
  background-image: url("assets/img/close-alt.svg");
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}

.modal__content {
  padding: 1.5rem 2rem;
}

.modal__subtitle {
  margin-bottom: 0.3rem;
  color: var(--greyColor);
  display: block;
  font-size: 0.88rem;

}

.modal__title {
  margin-bottom: 1rem;
  display: block;
  font-weight: var(--bold);
  font-size: 1.2rem;
  line-height: 120%
}

.modal__descr {
  margin-bottom: 1.5rem;
  padding-left: 1.7rem;
  position: relative;
  padding-top: 1rem;
  font-size: 0.9rem;
  line-height: 145%;
  border-top: 1px solid var(--borderColor);
}

@media(max-width: 500px) {
  .modal__descr {
    margin-bottom: 1.8rem;
    font-size: 0.8rem;
  }
}

.modal__descr::before {
  content: "";
  position: absolute;
  left: 0;
  top: 1.1rem;
  width: 1.2rem;
  height: 1.2rem;
  background-image: url(assets/img/circle-check.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.modal-form {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}

.modal-form__label {
  margin-bottom: 10px;
  flex-basis: 48%;
}

.modal-form__label .wpcf7-form-control-wrap {
  margin: 0 !important;
}

.modal .wpcf7-acceptance {
  margin: 0.8rem 0;
}

.modal .wpcf7-form-control-wrap {
  margin-bottom: 0;
}

.modal .wpcf7-submit {
  width: 100%;
}


/*
===============================
= 59 Доп стили для CF7
============================================
*/

.page-template-default .wpcf7-form-control-wrap {
  display: block;
  width: 100%;
}

.page-template-default .wpcf7-radio {
  padding: 1rem;
  display: flex;
  flex-direction: column;
  background-color: #f7f6fb;
  border-radius: var(--bradius);
}

.page-template-default .wpcf7-list-item label {
  display: flex;
  flex-flow: row wrap;
  justify-content: start;
  align-items: center;
}

.page-template-default .wpcf7-list-item:not(:last-child) {
  margin-bottom: 1.1rem;
}

.page-template-default .wpcf7-list-item-label {
  margin-left: 1rem;
  padding-top: 3px;
  color: var(--mainColor);
}


.page-template-default .wpcf7 p {
  margin-bottom: 1.2rem;
}

.page-template-default .wpcf7 label {
  font-size: 0.8rem;
  line-height: 1;
  color: var(--greyColor)
}

.page-template-default .wpcf7-text {
  padding: 1.15rem;
  width: 100%;
  font-size: 1rem;
  border: 1px solid #c9c9ce;
  border-radius: 6px;
  color: var(--mainColor);
}

.page-template-default .wpcf7 textarea {
  padding: 1.15rem;
  width: 100%;
  height: 160px;
  font-size: 1rem;
  border: 1px solid #c9c9ce;
  border-radius: 6px;
  color: var(--mainColor);
}

.page-template-default .wpcf7-submit {
  padding: 1rem 3rem;
  display: inline-block;
  color: var(--lightColor);
  background-color: var(--btnBg);
  border: 0;
  box-shadow: none;
  border-radius: var(--bradius);
  font-size: 1rem;
  line-height: 1;
  font-weight: bold;
  cursor: pointer;
  transition: opacity 0.3s;
}

.page-template-default .wpcf7-submit:hover {
  opacity: 0.8;
}


/*
===============================
= 60 Отзывы в продуктах
============================================
*/

.single-feedback-wrapper {
  margin: 2rem 0 0;
  grid-column: 12 span;
}

@media (max-width:1080px) {
  .single-feedback-wrapper {
    margin: 2rem 0;
  }
}

.single-feedback-wrapper__title {
  margin-bottom: 4rem;
  position: relative;
  display: block;
  font-size: 1.2rem;
  font-weight: var(--medium);
}

.single-feedback-wrapper__title::before {
  content: "";
  width: 60px;
  height: 6px;
  position: absolute;
  left: 0;
  bottom: -1.5rem;
  background-image: url(assets/img/shape2.svg);
  background-repeat: no-repeat;
  background-position: center;
}

.single-feedback:not(:last-child) {
  margin-bottom: 2rem;
  padding-bottom: 2rem;
  border-bottom: 1px solid var(--borderColor);
  font-size: 0.96rem;
}


.single-feedback__info {
  display: flex;
  align-items: center;
  margin-bottom: 1rem;
}

.single-feedback__person {
  font-weight: var(--medium);
  display: inline-block;
}

.single-feedback__img {
  max-width: 70px;
  border-radius: 50%;
  margin-right: 1rem;
}

@media (max-width:800px) {
  .single-feedback__img {
    max-width: 50px;
  }
}

.single-feedback .rating-button__stars {
  margin: 1rem 0 0 0;
  display: block;
}


.single-products_card .post-navigation {
  grid-column: 12 span;
}

@media(max-width: 1080px) {
  .single-products_card .post-navigation {
    margin-top: 2rem;
  }
}
 

/*
===============================
= 61 Cookies
============================================
*/

.cookies-box {
  padding: 1.3rem 1.3rem;
  display: none;
  position: fixed;
  bottom: 2rem;
  left: 2rem;
  z-index: 1000;
  max-width: 400px;
  border-radius: var(--bradius);
  background-color: #f7f6fb;
  border: 1px solid var(--borderColor);
  box-shadow: -5px 12px 30px 0 rgba(15, 8, 49, 0.3);
}

@media (max-width:600px) {
  .cookies-box {
    max-width: 320px;
  }
}

@media (max-width:376px) {
  .cookies-box {
    max-width: 300px;
    font-size: 0.86rem;
  }
}

.cookies-box__descr {
  margin-bottom: 1.5rem;
  font-size: 0.85rem;
}

.cookies-box__btn {
  padding: 0.8rem 0;
  border-radius: var(--bradius);
  width: 100%;
  height: 52px;
  border: 1px solid var(--greyColor);
  text-align: center;
  font-size: 0.9rem;
  font-family: inherit;
  font-weight: var(--medium);
  transition: color .3s,background-color .3s,border-color .3s
}

.cookies-box__btn:hover  {
  text-decoration: none;
  background-color: var(--btnBgHover);
  border-color: var(--btnBgHover);
  color: var(--btnColorHover);
  transition: color .3s,background-color .3s,border-color .3s
}

.cookies-box__icon {
  width: 56px;
  height: 56px;
  float: left;
  margin-right: 15px;
  margin-top: 1rem;
  color: #303543
}

.cookies-box__icon svg {
  width: 52px;
  height: 52px;
  object-fit: cover;
  display: block;
  stroke: currentColor;
}

@media (max-width:600px) {
  .cookies-box__icon {
    display: none;
  }
}


/*
===============================
= 62 Кнопки мессенджеров в подвале
============================================
*/

.chat-btn {
  padding: 0.6rem 0.9rem;
  position: fixed;
  bottom: 5rem;
  right: 2rem;
  z-index: 99;
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  align-items: center;
  border-radius: var(--bradius);
  text-decoration: none;
  color: var(--lightColor);
  box-shadow: -5px 12px 30px 0 rgba(15, 8, 49, 0.3);
  transition: background-color 0.3s, transform 0.3s;
}

@media (max-width:900px) {
  .chat-btn {
    bottom: 2rem;
  }
}

@media (max-width:500px) {
  .chat-btn {
    padding: 0.5rem;
  }
}

.chat-btn--whatsapp {
  background-color: #2eba63;
}

.chat-btn--telegram {
  background-color: #08c;
}

.chat-btn:hover {
  text-decoration: none;
  color: var(--lightColor);
  background-color: var(--btnBgHover);
  transform: translateY(5px);
  transition: background-color 0.3s, transform 0.3s;
}

.chat-btn svg {
  width: 1.4rem;
  height: 1.4rem;
  fill: currentColor;
}

.chat-btn__text {
  margin-left: 0.8rem;
 }

@media (max-width:500px) {
 .chat-btn__text {
  margin-left: 0;
  display: none;
 }
}



/* прозрачность лайтбокса и всякая мелочь */
.pswp__bg {
  opacity: 0.85 !important;
}

.divider {
  margin: 2rem auto 3rem;
  width: 100%;
  max-width: var(--width);
  border-top: 1px dashed var(--borderColor);
}


.card-item--related .card-item__btn {
  display: none;
}

.gp-block-num {
  font-weight: var(--medium);
}

.wp-block-column {
  word-wrap: normal;
}

.wp-block-column p {
  hyphens: none;
}
