@charset "UTF-8";
/*!
Theme Name: Ek-Bud
Author: Topref
Description: Будівельна компанія.
Version: 1.0.0
Text Domain: vida
*/
/*--------------------------------------------------------------
>>> ОГЛАВЛЕНИЕ:
----------------------------------------------------------------
# Типографика
# Элементы
# Шапка
# Секции
# Виджеты
# Контент
# Комментарии
# Галерея
# Подвал
--------------------------------------------------------------*/
/*Отзывчивое соотношение - Мы используем этот миксин для создания масштабируемых элементов(обычно изображения/картинки заднего фона), чтобы поддерживать соотношение.*/
/*
Пример:
div {
  @include responsive-ratio(16,9);
}
*/
/*--------------------------------------------------------------
# Типографика
--------------------------------------------------------------*/
@font-face {
    font-family: "Inter";
  src: url("./fonts/Inter/Inter-Regular.eot");
  src: local("Inter Regular"), local("Inter-Regular"), url("./fonts/Inter/Inter-Regular.eot?#iefix") format("embedded-opentype"), url("./fonts/Inter/Inter-Regular.woff2") format("woff2"), url("./fonts/Inter/Inter-Regular.woff") format("woff"), url("./fonts/Inter/Inter-Regular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
    font-family: "Inter";
  src: url("./fonts/Inter/Inter-Black.eot");
  src: local("Inter Black"), local("Inter-Black"), url("./fonts/Inter/Inter-Black.eot?#iefix") format("embedded-opentype"), url("./fonts/Inter/Inter-Black.woff2") format("woff2"), url("./fonts/Inter/Inter-Black.woff") format("woff"), url("./fonts/Inter/Inter-Black.ttf") format("truetype");
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}

@font-face {
    font-family: "Inter";
  src: url("./fonts/Inter/Inter-LightBETA.eot");
  src: local("Inter Light BETA"), local("Inter-LightBETA"), url("./fonts/Inter/Inter-LightBETA.eot?#iefix") format("embedded-opentype"), url("./fonts/Inter/Inter-LightBETA.woff2") format("woff2"), url("./fonts/Inter/Inter-LightBETA.woff") format("woff"), url("./fonts/Inter/Inter-LightBETA.ttf") format("truetype");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
    font-family: "Inter";
  src: url("./fonts/Inter/Inter-SemiBold.eot");
  src: local("Inter Semi Bold"), local("Inter-SemiBold"), url("./fonts/Inter/Inter-SemiBold.eot?#iefix") format("embedded-opentype"), url("./fonts/Inter/Inter-SemiBold.woff2") format("woff2"), url("./fonts/Inter/Inter-SemiBold.woff") format("woff"), url("./fonts/Inter/Inter-SemiBold.ttf") format("truetype");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
    font-family: "Inter";
  src: url("./fonts/Inter/Inter-Bold.eot");
  src: local("Inter Bold"), local("Inter-Bold"), url("./fonts/Inter/Inter-Bold.eot?#iefix") format("embedded-opentype"), url("./fonts/Inter/Inter-Bold.woff2") format("woff2"), url("./fonts/Inter/Inter-Bold.woff") format("woff"), url("./fonts/Inter/Inter-Bold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
    font-family: "Inter";
  src: url("./fonts/Inter/Inter-ExtraBold.eot");
  src: local("Inter Extra Bold"), local("Inter-ExtraBold"), url("./fonts/Inter/Inter-ExtraBold.eot?#iefix") format("embedded-opentype"), url("./fonts/Inter/Inter-ExtraBold.woff2") format("woff2"), url("./fonts/Inter/Inter-ExtraBold.woff") format("woff"), url("./fonts/Inter/Inter-ExtraBold.ttf") format("truetype");
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}

@font-face {
    font-family: "Inter";
  src: url("./fonts/Inter/Inter-Medium.eot");
  src: local("Inter Medium"), local("Inter-Medium"), url("./fonts/Inter/Inter-Medium.eot?#iefix") format("embedded-opentype"), url("./fonts/Inter/Inter-Medium.woff2") format("woff2"), url("./fonts/Inter/Inter-Medium.woff") format("woff"), url("./fonts/Inter/Inter-Medium.ttf") format("truetype");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
/*--------------------------------------------------------------
# Элементы
--------------------------------------------------------------*/
html,
body {
    font-size: 14px;
    font-size: 0.875rem;
    font-family: "Inter", sans-serif;
    color: #383941;
    height: 100%;
}

html.over,
body.over {
    overflow: hidden;
}

/*Изменение максимальной ширины контейнера (bootstrap)*/
@media (min-width: 1400px) {
    .container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container {
        max-width: 1440px;
        padding-left: 30px;
        padding-right: 30px;
    }
}
/*Прижатие подвала к низу сайта*/
#page {
    min-height: 100%;
    display: flex;
    flex-direction: column;
}

.site-content {
    flex: 1 1 auto;
}

embed,
iframe,
object {
    max-width: 100%;
}

/* Заголовки */
h1 {
    font-size: 40px;
    font-size: 2.5rem;
}

h2 {
    font-size: 32px;
    font-size: 2rem;
}

h3 {
    font-size: 28px;
    font-size: 1.75rem;
}

h4 {
    font-size: 24px;
    font-size: 1.5rem;
}

h5 {
    font-size: 20px;
    font-size: 1.25rem;
}

h6 {
    font-size: 16px;
    font-size: 1rem;
}

.title {
    font-size: 40px;
    font-size: 2.5rem;
    color: #FFFFFF;
    font-weight: 600;
    text-transform: uppercase;
    line-height: 1.4;
    margin-bottom: 20px;
}

.title.black {
    color: #383941;
}

img {
    max-width: 100%;
    height: auto;
}

/*Ленивая загрузка*/
.b-lazy {
    transition: opacity 500ms ease-in-out;
    max-width: 100%;
    opacity: 0;
}

.b-lazy.b-loaded {
    opacity: 1;
}

a {
    transition: all 0.2s linear;
    color: #FFA800;
}

a:hover {
    color: rgb(216.75, 142.8, 0);
}

strong {
    font-weight: 700;
}

/* Выравнивание */
.alignleft {
    display: inline;
    float: left;
    margin-right: 1.5em;
}

.alignright {
    display: inline;
    float: right;
    margin-left: 1.5em;
}

.aligncenter {
    clear: both;
    display: block;
    margin-left: auto;
    margin-right: auto;
}

/* Текущее меню */
/* Класс для текущей страницы */
/* Класс для текущей рубрики */
/* Класс для любого другого текущего пункта меню */
/* Класс для таксономии */
/* Класс для страницы */
/* Класс для любого пользовательского элемента, который был добавлен */
/* Класс для элемента, ведущего на главную страницу блога */
/*Форма*/
form {
 /* FF 4-18 */
  /* FF 19+ */
  /* IE 10+ */
}

form div {
    margin-bottom: 10px;
}

form label {
    display: block;
}

form input[type=email],
form input[type=text],
form input[type=number],
form input[type=password],
form input[type=tel],
form textarea {
    transition: all 0.2s linear;
    border-radius: 8px;
    font-size: 14px;
    font-size: 0.875rem;
    color: #222222;
    width: 100%;
    border: 1px solid #8A8A90;
    padding: 12px 20px;
    outline: none;
    background-color: #FFFFFF;
    margin-bottom: 15px;
}

form input[type=email]:focus,
form input[type=text]:focus,
form input[type=number]:focus,
form input[type=password]:focus,
form input[type=tel]:focus,
form textarea:focus {
    border: 1px solid #FFA800;
    outline: none;
}

form input:focus::-webkit-input-placeholder {
    color: transparent;
}

form input:focus:-moz-placeholder {
    color: transparent;
}

form input:focus::-moz-placeholder {
    color: transparent;
}

form input:focus:-ms-input-placeholder {
    color: transparent;
}

form select {
    outline: none;
    padding: 5px;
    border: 1px solid #D1D1D4;
}

form select:focus {
    outline: none;
}

form input[type=checkbox],
form input[type=radio] {
    display: none;
}

form input[type=checkbox] + label:before {
    content: "✓";
    color: transparent;
    display: inline-block;
    border: 1px solid #222222;
    font-size: 20px;
    line-height: 22px;
    margin: -5px 10px 0 0;
    height: 20px;
    width: 20px;
    text-align: center;
    vertical-align: middle;
    transition: color ease 0.3s;
}

form input[type=checkbox]:checked + label:before {
    color: green;
    line-height: 18px;
}

form input[type=radio] + label:before {
    content: "⚫";
    border: 1px solid #000;
    border-radius: 50%;
    display: inline-block;
    font-size: 20px;
    line-height: 20px;
    margin: -5px 10px 0 0;
    height: 20px;
    width: 20px;
    text-align: center;
    vertical-align: middle;
    font-size: 0;
    transition: font-size ease 0.3s;
}

form input[type=radio]:checked + label:before {
    font-size: 12px;
    line-height: 17px;
}

form input[type=submit],
form button[type=submit] {
    transition: all 0.2s linear;
    font-size: 14px;
    font-size: 0.875rem;
    border-radius: 8px;
    font-weight: 500;
    text-align: center;
    text-decoration: none;
    color: #FFFFFF;
    border: none;
    padding: 12px 25px;
    display: inline-block;
    background-color: #FFA800;
}

form input[type=submit]:hover,
form button[type=submit]:hover {
    color: #FFFFFF;
    text-decoration: none;
    cursor: pointer;
    background-color: rgb(216.75, 142.8, 0);
}

form input[type=submit]:focus,
form button[type=submit]:focus {
    outline: none;
}

/*Модальное окно*/
.white-popup {
    position: relative;
    background: #FFFFFF;
    padding: 20px;
    width: auto;
    max-width: 420px;
    margin: 20px auto;
}

.white-popup .form-title {
    font-size: 32px;
    font-size: 2rem;
    font-weight: 700;
    text-align: center;
    margin-bottom: 20px;
}

/*Модалка отправки формы быстрого заказа*/
#sent-form .message {
    margin: 20px;
    padding: 15px;
    border: 2px solid #FFA800;
}

#sent-form .message .message-title {
    font-size: 28px;
    font-size: 1.75rem;
    font-weight: 600;
    text-align: center;
    margin-bottom: 15px;
}

#sent-form .message p {
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 500;
    text-align: center;
    color: #8A8A90;
}

/*Таблица*/
table {
    width: 100%;
    margin-bottom: 15px;
}

table tr th,
table tr td {
    padding: 5px;
}

/*Кнопки*/
.button {
    font-size: 14px;
    font-size: 0.875rem;
    border-radius: 8px;
    font-weight: 500;
    text-align: center;
    text-decoration: none;
    color: #FFFFFF;
    border: none;
    padding: 12px 25px;
    display: inline-block;
    background-color: #FFA800;
}

.button:hover {
    color: #FFFFFF;
    text-decoration: none;
    cursor: pointer;
    background-color: rgb(216.75, 142.8, 0);
}

.button:focus {
    outline: none;
}

.button-white {
    border-radius: 8px;
    text-align: center;
    color: #383941;
    text-decoration: none;
    padding: 10px 25px;
    display: inline-block;
    background-color: #FFFFFF;
}

.button-white:hover {
    color: #FFFFFF;
    text-decoration: none;
    cursor: pointer;
    background-color: #FFA800;
}

.button-white:focus {
    outline: none;
}

/*Временная линия*/
.time-line {
    border-radius: 16px;
    padding: 40px;
    width: 100%;
    background: linear-gradient(90deg, rgb(190, 190, 190) 0%, rgba(56, 57, 65, 0.95) 10%);
}

.time-line ul {
    list-style: none;
    display: flex;
    padding: 0;
    margin: 0;
    border-top: 1px solid #D1D1D4;
}

.time-line ul li {
    color: #FFFFFF;
    font-weight: 300;
    white-space: nowrap;
    padding: 20px 0 0;
    margin-right: 120px;
    position: relative;
}

.time-line ul li:before {
    content: "";
    display: block;
    width: 6px;
    height: 7px;
    background-color: #FFA800;
    position: absolute;
    top: -4px;
    left: 0;
}

.time-line ul li .line-title {
    font-size: 30px;
    font-size: 1.875rem;
    font-weight: 600;
    margin-bottom: 10px;
}

/*Пагинация*/
.pagination {
    text-align: center;
    margin: 15px 0;
}

.pagination .nav-links {
    display: flex;
    justify-content: center;
    align-items: center;
}

.pagination a,
.pagination span {
    font-size: 22px;
    font-size: 1.375rem;
    font-weight: 600;
    text-align: center;
    width: 40px;
    height: 40px;
    margin: 0 5px;
    display: flex;
    justify-content: center;
    align-items: center;
}

@media only screen and (max-width: 576px) {
    .pagination a,
  .pagination span {
        font-size: 20px;
        font-size: 1.25rem;
        width: 30px;
        height: 30px;
    }
}

.pagination span {
    color: #D1D1D4;
}

.pagination span:hover {
    cursor: not-allowed;
}

.pagination a {
    color: #222222;
    text-decoration: none;
}

.pagination a:hover {
    color: #FFA800;
}

.pagination a:hover svg {
    fill: #FFA800;
}

.pagination a svg {
    transition: all 0.2s linear;
    fill: #222222;
}

/*Адаптивные табы*/
#responsiveTabs {
    margin-bottom: 30px;
}

#responsiveTabs ul {
    padding: 10px 0;
}

#responsiveTabs ul li {
    margin-right: 30px;
}

#responsiveTabs ul li:last-child {
    margin-right: 0;
}

#responsiveTabs ul li.r-tabs-state-active a {
    color: red;
}

#responsiveTabs ul li a {
    font-size: 22px;
    font-size: 1.375rem;
    color: #222222;
    font-weight: normal;
    text-decoration: none;
}

#responsiveTabs ul li a:hover {
    color: red;
}

#responsiveTabs .r-tabs-panel {
    padding: 15px 0;
}

#responsiveTabs .r-tabs-accordion-title {
    padding: 5px 0;
    border-bottom: 1px solid #D1D1D4;
    display: none;
    justify-content: space-between;
    align-items: center;
}

@media only screen and (max-width: 768px) {
    #responsiveTabs .r-tabs-accordion-title {
        display: flex;
    }
}

#responsiveTabs .r-tabs-accordion-title a {
    font-size: 26px;
    font-size: 1.625rem;
    color: #222222;
    font-weight: normal;
    text-decoration: none;
    width: 100%;
    position: relative;
    display: flex;
    justify-content: space-between;
}

@media only screen and (max-width: 576px) {
    #responsiveTabs .r-tabs-accordion-title a {
        font-size: 18px;
        font-size: 1.125rem;
    }
}

#responsiveTabs .r-tabs-accordion-title a:hover {
    color: red;
}

#responsiveTabs .r-tabs-accordion-title a:after {
    font-size: 22px;
    font-size: 1.375rem;
    font-family: "Font Awesome 5 Pro";
    font-weight: 900;
    content: "\f105";
    position: relative;
    right: 0;
}

#responsiveTabs .r-tabs-accordion-title.r-tabs-state-active a:after {
    content: "\f107";
}

/*Стилизация полосы прокрутки*/
/**
 * Спиннер.
 */
@keyframes spin {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}
/*--------------------------------------------------------------
# Шапка
--------------------------------------------------------------*/
/*Шапка сайта*/
.site-header {
    background-color: #383941;
}

.site-header .top-header {
    padding: 20px 0;
    top: -120px;
}

.site-header .top-header.fixed {
    transition: all 0.4s linear;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: auto;
    z-index: 99;
    background-color: #383941;
}

.site-header .site-branding a {
    display: block;
}

@media only screen and (max-width: 992px) {
    .site-header .site-branding {
        text-align: center;
        margin-bottom: 30px;
    }
}

@media only screen and (max-width: 767px) {
    .site-header .site-branding {
        margin-bottom: 0;
    }
}

.site-header .wrap-contacts {
    display: flex;
    justify-content: flex-end;
}

@media only screen and (max-width: 1200px) {
    .site-header .wrap-contacts {
        flex-wrap: wrap;
    }
}

@media only screen and (max-width: 992px) {
    .site-header .wrap-contacts {
        justify-content: flex-start;
    }
}

.site-header .phone {
    display: flex;
    align-items: center;
    margin-right: 40px;
}

@media only screen and (max-width: 1200px) {
    .site-header .phone {
        margin-bottom: 10px;
    }
}

.site-header .phone .link-phone {
    color: #FFFFFF;
    text-decoration: none;
    margin-right: 10px;
    display: inline-flex;
    align-items: center;
}

.site-header .phone .link-phone:hover {
    color: #FFA800;
}

.site-header .phone .link-phone svg {
    fill: #FFFFFF;
    margin-right: 15px;
}

.site-header .phone .call-back {
    color: #FFA800;
    display: inline-block;
}

.site-header .phone .call-back:hover {
    text-decoration: none;
}

.site-header ul.messengers {
    display: flex;
    align-items: center;
    padding: 0;
    margin: 0 40px 0 0;
}

.site-header ul.messengers li {
    margin-right: 20px;
}

.site-header ul.messengers li:last-child {
    margin-right: 0;
}

.site-header ul.messengers li a {
    color: #FFFFFF;
    text-decoration: none;
}

.site-header ul.messengers li a:hover {
    color: #FFA800;
}

.site-header ul.messengers li a svg {
    fill: #FFFFFF;
    margin-right: 6px;
}

.site-header .link-request {
    white-space: nowrap;
}

.site-header ul.lang {
    list-style: none;
    display: flex;
    align-items: center;
    padding: 8px 0 8px 25px;
    margin: 0 0 0 25px;
    border-left: 1px solid #FFFFFF;
}

.site-header ul.lang li {
    margin-right: 10px;
}

.site-header ul.lang li:last-child {
    margin-right: 0;
}

.site-header ul.lang li.current-lang a {
    color: #383941;
    background-color: #FFFFFF;
    cursor: default;
}

.site-header ul.lang li a {
    border-radius: 8px;
    color: #FFFFFF;
    text-decoration: none;
    text-transform: uppercase;
    display: inline-block;
    padding: 6px 7px;
}

.site-header ul.lang li a:hover {
    color: #383941;
    background-color: #FFFFFF;
}

.site-header .link-request-mobile svg {
    fill: #FFFFFF;
}

/*Главное меню*/
.main-navigation {
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    border-top: 1px solid #D1D1D4;
}

@media only screen and (max-width: 768px) {
    .main-navigation {
        display: none;
    }
}

.main-navigation ul {
    padding-left: 0;
    margin: 0;
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
}

.main-navigation ul li {
    display: inline-block;
    position: relative;
    margin: 0 12px;
}

@media only screen and (max-width: 992px) {
    .main-navigation ul li {
        margin: 0;
    }
}

.main-navigation ul li:hover > a {
    color: #FFA800;
}

.main-navigation ul li:hover > a:after {
    transform: rotate(90deg);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 192 512'%3E%3Cpath fill='%23FFA800' d='M166.9 264.5l-117.8 116c-4.7 4.7-12.3 4.7-17 0l-7.1-7.1c-4.7-4.7-4.7-12.3 0-17L127.3 256 25.1 155.6c-4.7-4.7-4.7-12.3 0-17l7.1-7.1c4.7-4.7 12.3-4.7 17 0l117.8 116c4.6 4.7 4.6 12.3-.1 17z'/%3E%3C/svg%3E") !important;
}

.main-navigation ul li a {
    font-size: 16px;
    font-size: 1rem;
    text-decoration: none;
    white-space: nowrap;
    color: #FFFFFF;
    display: block;
    padding: 20px 15px;
    position: relative;
}

.main-navigation ul li.menu-item-has-children > a:before {
    display: none;
}

.main-navigation ul li.menu-item-has-children > a:after {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    position: absolute;
    top: calc(50% - 7px);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 192 512'%3E%3Cpath fill='%23FFFFFF' d='M166.9 264.5l-117.8 116c-4.7 4.7-12.3 4.7-17 0l-7.1-7.1c-4.7-4.7-4.7-12.3 0-17L127.3 256 25.1 155.6c-4.7-4.7-4.7-12.3 0-17l7.1-7.1c4.7-4.7 12.3-4.7 17 0l117.8 116c4.6 4.7 4.6 12.3-.1 17z'/%3E%3C/svg%3E");
}

.main-navigation ul li.menu-item-has-children ul {
    background-color: #383941;
    display: none;
    padding: 10px 0;
    z-index: 9;
    position: absolute;
    left: 0;
}

.main-navigation ul li.menu-item-has-children ul li {
    display: block;
}

.main-navigation ul li.menu-item-has-children ul li:hover a:after {
    transform: rotate(90deg);
}

.main-navigation ul li.menu-item-has-children ul li.menu-item-has-children > a:before {
    display: none;
}

.main-navigation ul li.menu-item-has-children ul li.menu-item-has-children > a:after {
    content: "";
    display: inline-block;
    width: 15px;
    height: 15px;
    position: relative;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 192 512'%3E%3Cpath fill='%23FFFFFF' d='M166.9 264.5l-117.8 116c-4.7 4.7-12.3 4.7-17 0l-7.1-7.1c-4.7-4.7-4.7-12.3 0-17L127.3 256 25.1 155.6c-4.7-4.7-4.7-12.3 0-17l7.1-7.1c4.7-4.7 12.3-4.7 17 0l117.8 116c4.6 4.7 4.6 12.3-.1 17z'/%3E%3C/svg%3E");
}

.main-navigation ul li.menu-item-has-children ul li ul {
    top: 0;
    left: calc(100% + 1px);
}

.main-navigation ul li.menu-item-has-children ul li a {
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: 400;
    text-transform: none;
    text-align: left;
    border: none;
    padding: 5px 15px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

/*Кнопка мобильного меню*/
.toggle-mnu {
    display: none;
    width: 30px;
    height: 18px;
    margin-right: 5px;
    margin-left: 30px;
}

@media only screen and (max-width: 768px) {
    .toggle-mnu {
        display: block;
    }
}

.toggle-mnu span:after, .toggle-mnu span:before {
    content: "";
    position: absolute;
    left: 5px;
    top: 8px;
}

.toggle-mnu span:after {
    top: 16px;
}

.toggle-mnu span {
    position: relative;
    display: block;
}

.toggle-mnu span, .toggle-mnu span:after, .toggle-mnu span:before {
    width: 100%;
    height: 3px;
    background-color: #FFFFFF;
    backface-visibility: hidden;
}

.toggle-mnu span:after, .toggle-mnu span:before {
    transition: all 0.3s linear;
}

.toggle-mnu span, .toggle-mnu span:after {
    left: 0;
}

.toggle-mnu.on span {
    background-color: transparent;
}

.toggle-mnu.on span:before {
    transform: rotate(45deg) translate(-5px, 0px);
    background-color: #FFA800;
}

.toggle-mnu.on span:after {
    transform: rotate(-45deg) translate(9px, -7px);
    background-color: #FFA800;
}

/*Мобильное меню*/
#mobile-menu {
    transition: all 0.4s linear;
    width: 100%;
    padding: 15px 15px 30px;
    position: fixed;
    left: -770px;
    bottom: 0;
    z-index: 99;
    display: none;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    background-color: #41434B;
}

@media only screen and (max-width: 768px) {
    #mobile-menu {
        display: flex;
    }
}

@media only screen and (max-width: 576px) {
    #mobile-menu {
        left: -580px;
    }
}

#mobile-menu:after {
    transition: all 0.2s linear;
    content: "";
    width: 2000px;
    height: 100%;
    display: none;
    position: absolute;
    left: 100%;
    top: 0;
    bottom: 0;
    background-color: rgba(34, 34, 34, 0.5);
}

#mobile-menu.open {
    display: flex;
    left: 0;
}

#mobile-menu.open:after {
    display: block;
}

#mobile-menu ul.nav-menu {
    list-style: none;
    padding: 0;
    margin: 0;
}

#mobile-menu ul.nav-menu li {
    text-align: center;
}

#mobile-menu ul.nav-menu li a {
    font-size: 20px;
    font-size: 1.25rem;
    color: #FFFFFF;
    font-weight: 700;
    text-decoration: none;
    display: inline-block;
    padding: 5px;
}

#mobile-menu ul.nav-menu li a:hover {
    text-decoration: underline;
}

#mobile-menu .mobile-menu-contacts {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    padding-top: 20px;
    border-top: 1px solid #D1D1D4;
}

#mobile-menu .mobile-menu-contacts ul.menu-socials {
    list-style: none;
    padding: 0;
    margin-bottom: 15px;
}

#mobile-menu .mobile-menu-contacts ul.menu-socials li {
    display: inline-block;
    margin-right: 15px;
}

#mobile-menu .mobile-menu-contacts ul.menu-socials li:last-child {
    margin-right: 0;
}

#mobile-menu .mobile-menu-contacts ul.menu-socials li a {
    color: #FFFFFF;
    text-decoration: none;
    display: flex;
    align-items: center;
}

#mobile-menu .mobile-menu-contacts ul.menu-socials li a:hover {
    color: #FFA800;
}

#mobile-menu .mobile-menu-contacts ul.menu-socials li a svg {
    fill: #FFFFFF;
    margin-right: 10px;
}

#mobile-menu .mobile-menu-contacts a.link-phone {
    text-decoration: none;
    margin-bottom: 20px;
}

#mobile-menu .mobile-menu-contacts .link-call-back svg {
    margin-right: 10px;
    margin-left: 0;
}

/*Хлебные крошки*/
.breadcrumbs {
    font-size: 12px;
    font-size: 0.75rem;
    font-weight: 400;
    list-style: none;
    padding: 15px 0;
    margin: 0;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

.breadcrumbs a.breadcrumbs__link {
    color: #8A8A90;
    text-decoration: none;
    padding: 2px;
    display: flex;
    align-items: center;
}

.breadcrumbs a.breadcrumbs__link:hover {
    color: #FFA800;
}

.breadcrumbs a.breadcrumbs__link svg {
    margin-right: 5px;
    margin-bottom: 2px;
}

.breadcrumbs span {
    padding: 2px;
}

.breadcrumbs .breadcrumbs__current {
    color: #222222;
    display: inline-block;
}

.breadcrumbs .breadcrumbs__separator {
    font-size: 16px;
    font-size: 1rem;
    color: #222222;
    font-weight: 400;
    margin-bottom: 3px;
}

/*--------------------------------------------------------------
# Секции
--------------------------------------------------------------*/
/*Первый экран*/
.first-image {
    background-color: #41434B;
}

.first-image .first-image-content {
    padding: 70px 0 180px;
    position: relative;
}

@media only screen and (max-width: 576px) {
    .first-image .first-image-content {
        padding: 40px 0 180px;
    }
}

@media only screen and (max-width: 576px) {
    .first-image .first-image-content .title {
        font-size: 32px;
        font-size: 2rem;
    }
}

.first-image .first-image-content .first-desc {
    font-weight: 300;
    color: #FFFFFF;
    margin-bottom: 30px;
}

.first-image .first-image-content a.button {
    margin-bottom: 55px;
}

.first-image .first-image-content .time-line {
    position: absolute;
    left: 0;
    bottom: 75px;
    width: auto;
    box-sizing: content-box;
    background: linear-gradient(90deg, rgb(56, 57, 65) 84%, rgba(56, 57, 65, 0.2) 100%);
}

@media only screen and (max-width: 992px) {
    .first-image .first-image-content .time-line {
        width: auto;
    }
}

@media only screen and (max-width: 576px) {
    .first-image .first-image-content .time-line {
        padding: 40px 20px;
    }
}

@media only screen and (max-width: 768px) {
    .first-image .first-image-content .time-line ul li {
        margin-right: 50px;
    }
}

@media only screen and (max-width: 576px) {
    .first-image .first-image-content .time-line ul li {
        margin-right: 20px;
    }
}

@media only screen and (max-width: 992px) {
    .first-image .wrap-image {
        margin-bottom: 30px;
    }
}

.first-image .wrap-image img {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

/*Почему мы*/
.why-us {
    overflow: hidden;
    margin-bottom: 80px;
}

@media only screen and (max-width: 576px) {
    .why-us {
        margin-bottom: 50px;
    }
}

@media only screen and (max-width: 768px) {
    .why-us .title {
        font-size: 24px;
        font-size: 1.5rem;
        text-align: center;
        line-height: 1.4;
    }
}

.why-us .wrap-time-line {
    padding: 60px 0;
    background-color: #41434B;
    border-top-left-radius: 20px;
    border-bottom-left-radius: 20px;
    position: relative;
}

@media only screen and (max-width: 768px) {
    .why-us .wrap-time-line {
        border-radius: 20px;
    }
}

.why-us .wrap-time-line:before {
    content: "";
    width: 100%;
    display: block;
    position: absolute;
    top: 0;
    right: -100%;
    bottom: 0;
    background-color: #41434B;
}

@media only screen and (max-width: 768px) {
    .why-us .wrap-time-line:before {
        display: none;
    }
}

.why-us .wrap-time-line .time-line {
    padding-left: 80px;
    padding-right: 0;
    margin-left: -40px;
}

@media only screen and (max-width: 768px) {
    .why-us .wrap-time-line .time-line {
        border-radius: 16px;
        padding: 30px 15px;
        margin: 0 15px;
        width: auto;
    }
}

@media only screen and (max-width: 576px) {
    .why-us .wrap-time-line .time-line {
        padding: 30px 10px;
        background: none;
    }
}

@media only screen and (max-width: 1200px) {
    .why-us .wrap-time-line .time-line ul li {
        margin-right: 60px;
    }
}

@media only screen and (max-width: 768px) {
    .why-us .wrap-time-line .time-line ul li {
        margin-right: 30px;
    }

    .why-us .wrap-time-line .time-line ul li .line-desc {
        white-space: normal;
    }
}

@media only screen and (max-width: 576px) {
    .why-us .wrap-time-line .time-line ul li {
        margin-right: 15px;
    }
}

/*Направление*/
.direction {
    margin-bottom: 80px;
}

@media only screen and (max-width: 576px) {
    .direction {
        margin-bottom: 50px;
    }
}

.direction .bg-direction {
    border-radius: 20px;
    padding: 60px 40px;
    overflow: hidden;
    background-color: #41434B;
}

@media only screen and (max-width: 992px) {
    .direction .bg-direction {
        padding: 40px;
    }
}

@media only screen and (max-width: 576px) {
    .direction .bg-direction {
        padding: 30px 15px;
    }
}

.direction .title {
    margin: 0;
}

@media only screen and (max-width: 992px) {
    .direction .title {
        margin-bottom: 30px;
    }
}

@media only screen and (max-width: 768px) {
    .direction .title {
        font-size: 24px;
        font-size: 1.5rem;
        text-align: center;
        line-height: 1.4;
    }
}

.direction ul.direction-items {
    list-style: none;
    display: flex;
    width: 100%;
    padding: 0;
    margin: 0;
}

@media only screen and (max-width: 576px) {
    .direction ul.direction-items {
        flex-direction: column;
    }
}

.direction ul.direction-items li {
    width: 233px;
    margin-right: 60px;
}

@media only screen and (max-width: 1200px) {
    .direction ul.direction-items li {
        margin-right: 20px;
    }
}

@media only screen and (max-width: 768px) {
    .direction ul.direction-items li {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        width: 50%;
        margin-bottom: 30px;
    }
}

@media only screen and (max-width: 576px) {
    .direction ul.direction-items li {
        width: 100%;
        margin-right: 0;
        padding: 0 25px;
        overflow: hidden;
    }
}

@media only screen and (max-width: 1200px) {
    .direction ul.direction-items li:last-child {
        margin-right: 0;
    }
}

.direction ul.direction-items li img {
    border-radius: 8px;
    width: 100%;
    height: 278px;
    margin-bottom: 40px;
    -o-object-fit: cover;
    object-fit: cover;
}

@media only screen and (max-width: 1200px) {
    .direction ul.direction-items li img {
        height: auto;
    }
}

@media only screen and (max-width: 768px) {
    .direction ul.direction-items li img {
        margin-bottom: 15px;
    }
}

.direction ul.direction-items li p {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 500;
    color: #FFFFFF;
    padding-top: 24px;
    margin: 0;
    position: relative;
}

@media only screen and (max-width: 768px) {
    .direction ul.direction-items li p {
        width: 100%;
        padding-top: 20px;
    }
}

.direction ul.direction-items li p:before {
    content: "";
    display: block;
    width: 6px;
    height: 7px;
    position: absolute;
    top: 0;
    left: 0;
    background-color: #FFA800;
    z-index: 2;
}

.direction ul.direction-items li p:after {
    content: "";
    display: block;
    width: 200%;
    height: 1px;
    position: absolute;
    top: 3px;
    left: 0;
    background-color: #D1D1D4;
    z-index: 0;
}

/*Наши проекты*/
.projects {
    overflow: hidden;
    margin-bottom: 80px;
}

@media only screen and (max-width: 576px) {
    .projects {
        margin-bottom: 50px;
    }
}

.projects .bg-news {
    border-top-left-radius: 20px;
    border-bottom-left-radius: 20px;
    padding: 30px 80px;
    background-color: #41434B;
    position: relative;
}

@media only screen and (max-width: 992px) {
    .projects .bg-news {
        border-radius: 20px;
        padding: 30px;
    }
}

@media only screen and (max-width: 576px) {
    .projects .bg-news {
        padding: 30px 15px;
    }
}

.projects .bg-news:after {
    content: "";
    display: block;
    width: 100%;
    position: absolute;
    top: 0;
    left: 100%;
    bottom: 0;
    background-color: #41434B;
}

@media only screen and (max-width: 992px) {
    .projects .bg-news:after {
        display: none;
    }
}

.projects .title {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 30px;
}

@media only screen and (max-width: 1200px) {
    .projects .title {
        margin-left: -40px;
    }
}

@media only screen and (max-width: 992px) {
    .projects .title {
        margin-left: 0;
    }
}

@media only screen and (max-width: 768px) {
    .projects .title {
        font-size: 24px;
        font-size: 1.5rem;
        text-align: center;
        line-height: 1.4;
    }
}

@media only screen and (max-width: 576px) {
    .projects .title {
        flex-direction: column;
        align-items: center;
    }
}

.projects .title a {
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: 300;
    color: #FFA800;
    white-space: nowrap;
    text-decoration: none;
    text-transform: none;
    display: flex;
    align-items: center;
}

@media only screen and (max-width: 576px) {
    .projects .title a {
        margin-top: 15px;
        align-self: flex-end;
    }
}

.projects .title a:hover {
    color: rgb(216.75, 142.8, 0);
}

.projects .title a:hover svg {
    fill: rgb(216.75, 142.8, 0);
    padding-left: 10px;
}

.projects .title a svg {
    transition: all 0.2s linear;
    fill: #FFA800;
    padding-left: 5px;
}

.projects .projectsSlider .projectsSwiper {
    border-radius: 20px;
    position: relative;
    width: calc(100% + 180px);
    right: 180px;
    padding: 40px;
    background: linear-gradient(90deg, rgb(190, 190, 190) 0%, rgba(56, 57, 65, 0.95) 10%);
}

@media only screen and (max-width: 992px) {
    .projects .projectsSlider .projectsSwiper {
        padding: 0;
        right: 0;
        width: 100%;
    }
}

@media only screen and (max-width: 576px) {
    .projects .projectsSlider .projectsSwiper {
        border-radius: 0;
        background: none;
    }
}

.projects .projectsSlider .projectsSwiper .swiper-slide {
    color: #FFFFFF;
}

.projects .projectsSlider .projectsSwiper .swiper-slide a.link-image {
    border-radius: 8px;
    display: block;
    margin-bottom: 25px;
    overflow: hidden;
    position: relative;
}

.projects .projectsSlider .projectsSwiper .swiper-slide a.link-image:hover:before {
    opacity: 1;
}

.projects .projectsSlider .projectsSwiper .swiper-slide a.link-image:hover .link-icon {
    opacity: 1;
}

.projects .projectsSlider .projectsSwiper .swiper-slide a.link-image:before {
    transition: all 0.2s linear;
    content: "";
    display: block;
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(56, 57, 65, 0.6);
}

.projects .projectsSlider .projectsSwiper .swiper-slide a.link-image .link-icon {
    border-radius: 4px;
    display: flex;
    justify-content: center;
    align-items: center;
    opacity: 0;
    width: 40px;
    height: 40px;
    position: absolute;
    top: calc(50% - 20px);
    left: calc(50% - 20px);
    background-color: #383941;
}

.projects .projectsSlider .projectsSwiper .swiper-slide a.link-image .link-icon svg {
    fill: #FFFFFF;
}

.projects .projectsSlider .projectsSwiper .swiper-slide a.link-image img {
    width: 100%;
    height: 200px;
    -o-object-fit: cover;
    object-fit: cover;
}

.projects .projectsSlider .projectsSwiper .swiper-slide .project-title {
    padding-top: 20px;
    margin: 0 0 10px;
    position: relative;
}

@media only screen and (max-width: 576px) {
    .projects .projectsSlider .projectsSwiper .swiper-slide .project-title {
        padding-left: 0;
    }
}

.projects .projectsSlider .projectsSwiper .swiper-slide .project-title a {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 500;
    color: #FFFFFF;
    text-decoration: none;
    line-height: 1.2;
    display: inline-block;
}

.projects .projectsSlider .projectsSwiper .swiper-slide .project-title a:hover {
    color: #FFA800;
}

.projects .projectsSlider .projectsSwiper .swiper-slide .project-title:before {
    content: "";
    display: block;
    width: 6px;
    height: 7px;
    position: absolute;
    top: 0;
    left: 0;
    background-color: #FFA800;
    z-index: 2;
}

.projects .projectsSlider .projectsSwiper .swiper-slide .project-title:after {
    content: "";
    display: block;
    width: 200%;
    height: 1px;
    position: absolute;
    top: 3px;
    left: 0;
    background-color: #D1D1D4;
    z-index: 0;
}

.projects .projectsSlider .swiper-button {
    padding-top: 20px;
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

@media only screen and (max-width: 576px) {
    .projects .projectsSlider .swiper-button {
        padding-top: 0;
        justify-content: space-between;
    }
}

.projects .projectsSlider .swiper-button .swiper-button-next,
.projects .projectsSlider .swiper-button .swiper-button-prev {
    transition: all 0.2s linear;
    font-weight: 300;
    color: #FFFFFF;
    line-height: 1.4;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    width: auto;
    margin: 0 20px;
    display: flex;
    align-items: center;
    position: relative;
}

@media only screen and (max-width: 576px) {
    .projects .projectsSlider .swiper-button .swiper-button-next,
  .projects .projectsSlider .swiper-button .swiper-button-prev {
        margin-left: 0;
    }
}

.projects .projectsSlider .swiper-button .swiper-button-next:after,
.projects .projectsSlider .swiper-button .swiper-button-prev:after {
    display: none;
}

.projects .projectsSlider .swiper-button .swiper-button-next:hover,
.projects .projectsSlider .swiper-button .swiper-button-prev:hover {
    color: #FFA800;
}

.projects .projectsSlider .swiper-button .swiper-button-next:hover svg,
.projects .projectsSlider .swiper-button .swiper-button-prev:hover svg {
    fill: #FFA800;
}

.projects .projectsSlider .swiper-button .swiper-button-next svg,
.projects .projectsSlider .swiper-button .swiper-button-prev svg {
    transition: all 0.2s linear;
    fill: #FFFFFF;
}

.projects .projectsSlider .swiper-button .swiper-button-next {
    margin-right: 0;
}

/*Бренды*/
.brands {
    margin-bottom: 80px;
}

@media only screen and (max-width: 576px) {
    .brands {
        margin-bottom: 50px;
    }
}

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

@media only screen and (max-width: 768px) {
    .brands .title {
        font-size: 24px;
        font-size: 1.5rem;
        line-height: 1.4;
    }
}

.brands .brands-desk {
    font-weight: 300;
    text-align: center;
    margin-bottom: 40px;
}

.brands .brands-border {
    border-radius: 20px;
    margin: 0;
    border: 1px solid #D1D1D4;
    clip-path: inset(0 0 1px 0);
    overflow: hidden;
    position: relative;
}

.brands .brands-border:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border-bottom: 1px solid #D1D1D4;
    z-index: -1;
}

.brands .brand-border {
    border-right: 1px solid #D1D1D4;
    border-bottom: 1px solid #D1D1D4;
}

.brands .brand-border:nth-child(6n) {
    border-right: none;
}

@media only screen and (max-width: 1200px) {
    .brands .brand-border:nth-child(6n) {
        border-right: 1px solid #D1D1D4;
    }

    .brands .brand-border:nth-child(3n) {
        border-right: none;
    }
}

@media only screen and (max-width: 767px) {
    .brands .brand-border:nth-child(3n) {
        border-right: 1px solid #D1D1D4;
    }

    .brands .brand-border:nth-child(2n) {
        border-right: none;
    }
}

@media only screen and (max-width: 576px) {
    .brands .brand-border {
        border: none !important;
    }
}

.brands .link-brand {
    text-decoration: none;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    min-height: 160px;
    margin: 10px;
    overflow: hidden;
}

.brands .link-brand:hover img {
    transform: scale(1.1);
}

.brands .link-brand img {
    transition: all 0.2s linear;
    max-width: 145px;
}

/*Форма консультации*/
#form-consultation {
    margin-bottom: 80px;
}

@media only screen and (max-width: 576px) {
    #form-consultation {
        margin-bottom: 50px;
    }
}

#form-consultation .bg-consultation {
    border-radius: 20px;
    padding: 40px 0;
    background-color: #41434B;
}

#form-consultation .title {
    text-align: center;
    margin-bottom: 40px;
}

@media only screen and (max-width: 768px) {
    #form-consultation .title {
        font-size: 28px;
        font-size: 1.75rem;
        line-height: 1.4;
        margin: 0 60px 30px;
    }
}

@media only screen and (max-width: 576px) {
    #form-consultation .title {
        font-size: 24px;
        font-size: 1.5rem;
        margin: 0 15px 30px;
    }
}

#form-consultation form {
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin: 0 auto;
    max-width: 740px;
}

@media only screen and (max-width: 992px) {
    #form-consultation form {
        flex-direction: column;
        align-items: center;
        margin: 0 30px;
    }
}

@media only screen and (max-width: 576px) {
    #form-consultation form {
        margin: 0 15px;
    }
}

#form-consultation form p {
    width: 100%;
    display: flex;
    align-items: flex-start;
}

@media only screen and (max-width: 768px) {
    #form-consultation form p {
        flex-direction: column;
    }
}

#form-consultation form p .wpcf7-form-control-wrap {
    display: block;
    width: 100%;
    margin-right: 20px;
    margin-bottom: 0;
}

@media only screen and (max-width: 992px) {
    #form-consultation form p .wpcf7-form-control-wrap {
        margin-right: 10px;
    }
}

@media only screen and (max-width: 768px) {
    #form-consultation form p .wpcf7-form-control-wrap {
        margin-right: 0;
        margin-bottom: 15px;
    }
}

#form-consultation form p input {
    margin-bottom: 0;
}

@media only screen and (max-width: 992px) {
    #form-consultation form p input {
        width: 100%;
    }
}

#form-consultation form p input:focus {
    border-color: #FFA800;
}

#form-consultation form p input[type=submit] {
    max-width: 260px;
    margin-bottom: 0;
}

@media only screen and (max-width: 992px) {
    #form-consultation form p input[type=submit] {
        max-width: 180px;
    }
}

@media only screen and (max-width: 576px) {
    #form-consultation form p input[type=submit] {
        max-width: none;
    }
}

#form-consultation form .wpcf7-response-output {
    transition: all 0.2s linear;
    color: #FFFFFF;
}

/*Новости*/
.news {
    overflow: hidden;
    margin-bottom: 80px;
}

@media only screen and (max-width: 576px) {
    .news {
        margin-bottom: 50px;
    }
}

.news .bg-news {
    border-top-left-radius: 20px;
    border-bottom-left-radius: 20px;
    padding: 30px 80px;
    background-color: #41434B;
    position: relative;
}

@media only screen and (max-width: 992px) {
    .news .bg-news {
        border-radius: 20px;
        padding: 30px;
    }
}

@media only screen and (max-width: 576px) {
    .news .bg-news {
        padding: 30px 15px;
    }
}

.news .bg-news:after {
    content: "";
    display: block;
    width: 100%;
    position: absolute;
    top: 0;
    left: 100%;
    bottom: 0;
    background-color: #41434B;
}

@media only screen and (max-width: 992px) {
    .news .bg-news:after {
        display: none;
    }
}

.news .title {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 30px;
}

@media only screen and (max-width: 768px) {
    .news .title {
        font-size: 24px;
        font-size: 1.5rem;
        line-height: 1.4;
    }
}

.news .title a {
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: 300;
    color: #FFA800;
    text-decoration: none;
    text-transform: none;
    display: flex;
    align-items: center;
}

.news .title a:hover {
    color: rgb(216.75, 142.8, 0);
}

.news .title a:hover svg {
    fill: rgb(216.75, 142.8, 0);
    padding-left: 10px;
}

.news .title a svg {
    transition: all 0.2s linear;
    fill: #FFA800;
    padding-left: 5px;
}

.news .newsSlider {
    position: relative;
}

.news .newsSlider .newsSwiper {
    border-radius: 20px;
    padding: 40px;
    position: relative;
    width: calc(100% + 180px);
    right: 180px;
    background: linear-gradient(90deg, rgb(190, 190, 190) 0%, rgba(56, 57, 65, 0.95) 10%);
}

@media only screen and (max-width: 992px) {
    .news .newsSlider .newsSwiper {
        width: 100%;
        right: 0;
    }
}

@media only screen and (max-width: 576px) {
    .news .newsSlider .newsSwiper {
        border-radius: 0;
        padding: 0;
        background: none;
    }
}

.news .newsSlider .newsSwiper .swiper-slide {
    color: #FFFFFF;
    max-width: 60%;
    display: flex;
}

@media only screen and (max-width: 992px) {
    .news .newsSlider .newsSwiper .swiper-slide {
        max-width: none;
    }
}

@media only screen and (max-width: 576px) {
    .news .newsSlider .newsSwiper .swiper-slide {
        display: flex;
        flex-direction: column;
    }
}

.news .newsSlider .newsSwiper .swiper-slide a.link-news {
    border-radius: 8px;
    display: flex;
    justify-content: center;
    min-width: 250px;
    height: 250px;
    margin-right: 30px;
    overflow: hidden;
}

.news .newsSlider .newsSwiper .swiper-slide a.link-news:hover img {
    transform: scale(1.05);
}

.news .newsSlider .newsSwiper .swiper-slide img {
    transition: all 0.2s linear;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

@media only screen and (max-width: 576px) {
    .news .newsSlider .newsSwiper .swiper-slide img {
        width: 100%;
        height: auto;
        margin-right: 0;
        margin-bottom: 30px;
    }
}

.news .newsSlider .newsSwiper .swiper-slide article .news-title {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 500;
    margin-bottom: 10px;
}

.news .newsSlider .newsSwiper .swiper-slide article .news-title a {
    display: block;
    color: #FFFFFF;
    text-decoration: none;
}

.news .newsSlider .newsSwiper .swiper-slide article .news-title a:hover {
    color: #FFA800;
}

.news .newsSlider .newsSwiper .swiper-slide article time {
    font-size: 14px;
    font-size: 0.875rem;
    display: block;
    margin-bottom: 20px;
}

.news .newsSlider .newsSwiper .swiper-slide article .news-content {
    font-size: 12px;
    font-size: 0.75rem;
    font-weight: 300;
    margin-bottom: 25px;
}

.news .newsSlider .newsSwiper .swiper-slide article a.more-link {
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: 300;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
}

.news .newsSlider .newsSwiper .swiper-slide article a.more-link:hover svg {
    fill: rgb(216.75, 142.8, 0);
    padding-left: 10px;
}

.news .newsSlider .newsSwiper .swiper-slide article a.more-link svg {
    transition: all 0.2s linear;
    fill: #FFA800;
    padding-left: 5px;
}

.news .newsSlider .swiper-button {
    padding-top: 20px;
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

@media only screen and (max-width: 576px) {
    .news .newsSlider .swiper-button {
        justify-content: space-between;
    }
}

.news .newsSlider .swiper-button .swiper-button-next,
.news .newsSlider .swiper-button .swiper-button-prev {
    transition: all 0.2s linear;
    font-weight: 300;
    color: #FFFFFF;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    width: auto;
    margin: 0 20px;
    position: relative;
}

@media only screen and (max-width: 576px) {
    .news .newsSlider .swiper-button .swiper-button-next,
  .news .newsSlider .swiper-button .swiper-button-prev {
        margin-left: 0;
    }
}

.news .newsSlider .swiper-button .swiper-button-next:after,
.news .newsSlider .swiper-button .swiper-button-prev:after {
    display: none;
}

.news .newsSlider .swiper-button .swiper-button-next:hover,
.news .newsSlider .swiper-button .swiper-button-prev:hover {
    color: #FFA800;
}

.news .newsSlider .swiper-button .swiper-button-next:hover svg,
.news .newsSlider .swiper-button .swiper-button-prev:hover svg {
    fill: #FFA800;
}

.news .newsSlider .swiper-button .swiper-button-next svg,
.news .newsSlider .swiper-button .swiper-button-prev svg {
    transition: all 0.2s linear;
    fill: #FFFFFF;
}

.news .newsSlider .swiper-button .swiper-button-next {
    margin-right: 0;
}

/*Сертификаты*/
.certificates {
    margin-bottom: 80px;
}

@media only screen and (max-width: 576px) {
    .certificates {
        margin-bottom: 50px;
    }
}

@media only screen and (max-width: 768px) {
    .certificates .title {
        font-size: 24px;
        font-size: 1.5rem;
        line-height: 1.4;
        text-align: center;
        margin: 0;
    }
}

.certificates .certificatesSwiper .swiper-wrapper {
    align-items: center;
    margin: 50px 0 25px;
}

@media only screen and (max-width: 768px) {
    .certificates .certificatesSwiper .swiper-wrapper {
        margin: 30px 0 0;
    }
}

.certificates .certificatesSwiper .swiper-slide {
    transition: all 0.2s linear;
    border-radius: 20px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 25px;
    background-color: #383941;
}

@media only screen and (max-width: 576px) {
    .certificates .certificatesSwiper .swiper-slide {
        padding: 15px;
    }
}

.certificates .certificatesSwiper .swiper-slide.swiper-slide-active {
    transform: scale(1.2, 1.15);
    background-color: #41434B;
    box-shadow: 2px 2px 10px 2px #383941;
    z-index: 9;
}

@media only screen and (max-width: 768px) {
    .certificates .certificatesSwiper .swiper-slide.swiper-slide-active {
        transform: none;
        background-color: #383941;
        box-shadow: none;
    }
}

.certificates .certificatesSwiper .swiper-slide a {
    display: flex;
    justify-content: center;
    width: 100%;
}

.certificates .certificatesSwiper .swiper-slide img {
    width: 180px;
    height: 250px;
    margin-bottom: 20px;
}

@media only screen and (max-width: 768px) {
    .certificates .certificatesSwiper .swiper-slide img {
        width: 100%;
        height: auto;
    }
}

@media only screen and (max-width: 576px) {
    .certificates .certificatesSwiper .swiper-slide img {
        max-width: 300px;
    }
}

.certificates .certificatesSwiper .swiper-slide .certificat-title {
    color: #FFFFFF;
    text-align: center;
}

@media only screen and (max-width: 576px) {
    .certificates .certificatesSwiper .swiper-slide .certificat-title {
        font-size: 12px;
        font-size: 0.75rem;
    }
}

.certificates .certificatesSwiper .swiper-button {
    padding-top: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.certificates .certificatesSwiper .swiper-button .swiper-button-next,
.certificates .certificatesSwiper .swiper-button .swiper-button-prev {
    transition: all 0.2s linear;
    font-weight: 300;
    color: #383941;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    width: auto;
    margin: 0 20px;
    position: relative;
}

.certificates .certificatesSwiper .swiper-button .swiper-button-next:after,
.certificates .certificatesSwiper .swiper-button .swiper-button-prev:after {
    display: none;
}

.certificates .certificatesSwiper .swiper-button .swiper-button-next:hover,
.certificates .certificatesSwiper .swiper-button .swiper-button-prev:hover {
    color: #FFA800;
}

.certificates .certificatesSwiper .swiper-button .swiper-button-next:hover svg,
.certificates .certificatesSwiper .swiper-button .swiper-button-prev:hover svg {
    fill: #FFA800;
}

.certificates .certificatesSwiper .swiper-button .swiper-button-next svg,
.certificates .certificatesSwiper .swiper-button .swiper-button-prev svg {
    transition: all 0.2s linear;
    fill: #383941;
}

/*Слайдер отзывов*/
.reviews {
    margin-bottom: 80px;
}

@media only screen and (max-width: 576px) {
    .reviews {
        margin-bottom: 50px;
    }
}

.reviews .title {
    text-align: center;
    margin-bottom: 10px;
}

@media only screen and (max-width: 768px) {
    .reviews .title {
        font-size: 24px;
        font-size: 1.5rem;
        line-height: 1.4;
    }
}

@media only screen and (max-width: 576px) {
    .reviews .title {
        margin-bottom: 30px;
    }
}

.reviews .main-reviews {
    border-radius: 20px;
    padding: 20px;
    margin-top: 30px;
    background-color: #F5F5F6;
}

@media only screen and (max-width: 576px) {
    .reviews .main-reviews {
        margin-bottom: 30px;
    }
}

.reviews .main-reviews img {
    border-radius: 20px;
    height: inherit;
}

@media only screen and (max-width: 768px) {
    .reviews .main-reviews img {
        width: 100%;
        margin-bottom: 20px;
    }
}

.reviews .main-reviews .main-reviews-title {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 600;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
}

@media only screen and (max-width: 576px) {
    .reviews .main-reviews .main-reviews-title {
        flex-direction: column;
        justify-content: flex-start;
        align-items: flex-start;
    }
}

.reviews .main-reviews .main-reviews-title span {
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: 300;
}

@media only screen and (max-width: 576px) {
    .reviews .main-reviews .main-reviews-title span {
        display: block;
        margin-top: 8px;
    }
}

.reviews .main-reviews p {
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: 300;
}

.reviews .swiper {
    width: 100%;
    height: 100%;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    overflow: hidden;
}

@media only screen and (max-width: 1200px) {
    .reviews .swiper {
        padding: 0;
    }
}

.reviews .swiper-wrapper {
    height: auto;
    align-items: baseline;
    flex-direction: row;
    margin-bottom: 30px;
}

@media only screen and (max-width: 768px) {
    .reviews .swiper-wrapper {
        margin-bottom: 15px;
    }
}

.reviews .swiper-slide {
    border-radius: 10px;
    text-align: left;
    font-size: 18px;
    height: calc((100% - 30px) / 2) !important;
    min-height: 25px;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #F5F5F6;
}

.reviews .swiper-slide.mb-30 {
    margin-bottom: 30px;
}

@media only screen and (max-width: 576px) {
    .reviews .swiper-slide.mb-30 {
        margin-bottom: 0;
    }
}

.reviews .slide-content {
    border-radius: 10px;
    padding: 30px;
    position: relative;
    z-index: 1;
}

.reviews .slide-content .slide-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
}

@media only screen and (max-width: 576px) {
    .reviews .slide-content .slide-head {
        flex-direction: column;
        justify-content: flex-start;
        align-items: flex-start;
    }
}

.reviews .slide-content .slide-head .slide-title {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 500;
}

@media only screen and (max-width: 576px) {
    .reviews .slide-content .slide-head .slide-title {
        margin-bottom: 5px;
    }
}

.reviews .slide-content .slide-head time {
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: 400;
    text-decoration: none;
    display: inline-block;
}

.reviews .slide-content .slide-head time:hover {
    color: #FFA800;
}

.reviews .slide-content p {
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: 400;
    margin-bottom: 20px;
}

.reviews .slide-content .comment-text {
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: 400;
    height: 100px;
    padding-right: 50px;
    overflow: auto;
    position: relative;
    z-index: 3;
}

.reviews .slide-content .bg-socials {
    position: absolute;
    right: 40px;
    bottom: 15px;
    z-index: -2;
}

.reviews .slide-content .bg-socials svg {
    fill: rgba(56, 57, 65, 0.2);
}

.reviews .wrap-button {
    text-align: right;
    width: 100%;
}

@media only screen and (max-width: 768px) {
    .reviews .wrap-button {
        text-align: center;
    }
}

.reviews .wrap-button .reviews-form {
    text-transform: none;
    padding: 15px 100px;
}

@media only screen and (max-width: 576px) {
    .reviews .wrap-button .reviews-form {
        padding: 15px;
        width: 100%;
    }
}

.reviews .slider-navigation {
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: 400;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    height: 100%;
    position: relative;
}

@media only screen and (max-width: 768px) {
    .reviews .slider-navigation {
        padding-bottom: 15px;
        justify-content: space-between;
    }
}

@media only screen and (max-width: 576px) {
    .reviews .slider-navigation {
        padding: 0 15px 15px;
    }
}

.reviews .slider-navigation .reviews-swiper-prev,
.reviews .slider-navigation .reviews-swiper-next {
    transition: all 0.2s linear;
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: 300;
    color: #383941;
    word-wrap: break-word;
    white-space: nowrap;
    padding: 5px 0;
    display: flex;
    align-items: center;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
}

.reviews .slider-navigation .reviews-swiper-prev:hover,
.reviews .slider-navigation .reviews-swiper-next:hover {
    color: #FFA800;
}

.reviews .slider-navigation .reviews-swiper-prev:hover svg,
.reviews .slider-navigation .reviews-swiper-next:hover svg {
    fill: #FFA800;
}

.reviews .slider-navigation .reviews-swiper-prev.swiper-button-disabled,
.reviews .slider-navigation .reviews-swiper-next.swiper-button-disabled {
    color: #383941;
    opacity: 0.5;
    cursor: default;
}

.reviews .slider-navigation .reviews-swiper-prev.swiper-button-disabled svg,
.reviews .slider-navigation .reviews-swiper-next.swiper-button-disabled svg {
    fill: #383941;
}

.reviews .slider-navigation .reviews-swiper-prev svg,
.reviews .slider-navigation .reviews-swiper-next svg {
    transition: all 0.2s linear;
    fill: #383941;
    width: 16px;
    height: 12px;
    margin: 0 8px;
}

@media only screen and (max-width: 768px) {
    .reviews .slider-navigation .reviews-swiper-prev span,
  .reviews .slider-navigation .reviews-swiper-next span {
        display: none;
    }
}

@media only screen and (max-width: 1400px) {
    .reviews .slider-navigation .reviews-swiper-prev svg {
        margin: 0 6px 0 0;
    }
}

.reviews .slider-navigation .reviews-swiper-next {
    margin-left: 20px;
}

.reviews .slider-navigation .reviews-swiper-next svg {
    margin: 0 0 0 6px;
}

/*Полосы прокрутки для текста комментариев*/
.reviews .comment-text::-webkit-scrollbar {
    width: 3px;
 /* ширина всей полосы прокрутки */
}

.reviews .comment-text::-webkit-scrollbar-track {
    background: #FFFFFF;
 /* цвет зоны отслеживания */
    border-radius: 20px;
}

.reviews .comment-text::-webkit-scrollbar-thumb {
    background-color: rgba(56, 57, 65, 0.2);
 /* цвет бегунка */
    border-radius: 20px;
 /* округлось бегунка */
}

/*Контент на главной*/
.main-content {
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: 300;
    margin-bottom: 30px;
}

.main-content .title {
    text-align: left;
    margin-bottom: 20px;
}

@media only screen and (max-width: 768px) {
    .main-content .title {
        font-size: 24px;
        font-size: 1.5rem;
        line-height: 1.4;
        text-align: center;
    }
}

.main-content .content-show {
    position: relative;
}

.main-content .content-show:before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(360deg, white 0%, rgba(255, 255, 255, 0.5) 30%, transparent 100%);
    z-index: 9;
}

.main-content .content-show.show:before {
    background: none;
    z-index: -1;
}

.main-content .content-hidden {
    display: none;
}

.main-content .wrap-button {
    text-align: center;
    width: 100%;
    margin: 30px 0;
}

.main-content .wrap-button a.button {
    text-transform: none;
}

.main-content p:empty {
    display: none;
}

.main-content img {
    border-radius: 8px;
}

/*Форма калькулятора*/
.form-upload {
    margin-bottom: 80px;
}

@media only screen and (max-width: 576px) {
    .form-upload {
        margin-bottom: 50px;
    }
}

.form-upload .bg-upload {
    border-radius: 20px;
    padding: 40px;
    background-color: #41434B;
}

@media only screen and (max-width: 768px) {
    .form-upload .bg-upload {
        padding: 20px;
    }
}

@media only screen and (max-width: 992px) {
    .form-upload .form-image {
        margin-bottom: 30px;
    }
}

.form-upload .form-image img {
    border-radius: 20px;
    width: 100%;
}

.form-upload .wrap-form {
    max-width: 560px;
}

@media only screen and (max-width: 992px) {
    .form-upload .wrap-form {
        width: 100%;
        max-width: none;
    }
}

.form-upload .wrap-form .form-title {
    font-size: 40px;
    font-size: 2.5rem;
    font-weight: 600;
    color: #FFFFFF;
    text-transform: uppercase;
    text-align: center;
    margin-bottom: 40px;
}

@media only screen and (max-width: 1200px) {
    .form-upload .wrap-form .form-title {
        font-size: 32px;
        font-size: 2rem;
        margin-bottom: 25px;
    }
}

.form-upload form {
    display: flex;
    flex-direction: column;
}

.form-upload form .input-line {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 10px;
}

@media only screen and (max-width: 1200px) {
    .form-upload form .input-line {
        margin-bottom: 0;
    }
}

@media only screen and (max-width: 576px) {
    .form-upload form .input-line {
        flex-direction: column;
    }
}

.form-upload form .input-line p {
    display: flex;
    margin: 0;
}

@media only screen and (max-width: 576px) {
    .form-upload form .input-line p {
        flex-direction: column;
        width: 100%;
    }
}

.form-upload form .input-line .wpcf7-form-control-wrap {
    margin-right: 20px;
}

@media only screen and (max-width: 576px) {
    .form-upload form .input-line .wpcf7-form-control-wrap {
        margin-right: 0;
    }
}

.form-upload form .input-line .wpcf7-form-control-wrap:last-child {
    margin-right: 0;
}

.form-upload form .fileName {
    color: #FFFFFF;
    width: 100%;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    overflow: hidden;
    margin-bottom: 5px;
}

.form-upload form .fileName #delFile {
    padding: 4px;
    margin-left: 10px;
}

.form-upload form .fileName #delFile:hover {
    cursor: pointer;
}

.form-upload form .fileName #delFile:hover svg {
    fill: rgb(216.75, 142.8, 0);
}

.form-upload form .fileName #delFile svg {
    transition: all 0.2s linear;
    fill: #FFA800;
}

.form-upload form .file-upload {
    width: 100%;
    display: flex;
    justify-content: flex-start;
    color: #FFFFFF;
    margin-bottom: 20px;
}

@media only screen and (max-width: 1200px) {
    .form-upload form .file-upload {
        margin-bottom: 20px;
    }
}

.form-upload form .file-upload .wpcf7-form-control-wrap {
    margin: 0;
}

.form-upload form .file-upload label {
    display: flex;
    align-items: center;
    padding: 5px 0;
}

.form-upload form .file-upload label:hover {
    cursor: pointer;
}

.form-upload form .file-upload label:hover u {
    color: #FFA800;
    text-decoration: none;
}

.form-upload form .file-upload label svg {
    margin-right: 12px;
}

.form-upload form .file-upload label u {
    transition: all 0.2s linear;
    text-decoration: underline;
}

.form-upload form input[type=file] {
    display: none;
}

.form-upload form input[type=submit] {
    margin: 0 auto;
    max-width: 460px;
}

@media only screen and (max-width: 992px) {
    .form-upload form input[type=submit] {
        width: 320px;
    }
}

@media only screen and (max-width: 576px) {
    .form-upload form input[type=submit] {
        width: 100%;
        max-width: none;
    }
}

.form-upload form div.wpcf7-response-output {
    color: #FFFFFF;
    text-align: center;
    margin-top: 10px;
}

@media only screen and (max-width: 992px) {
    .form-upload form div.wpcf7-response-output {
        margin-top: 20px;
    }
}

/*Популярные вопросы*/
.faq {
    margin-bottom: 80px;
}

@media only screen and (max-width: 576px) {
    .faq {
        margin-bottom: 50px;
    }
}

.faq .title-faq {
    font-size: 40px;
    font-size: 2.5rem;
    font-weight: 500;
}

@media only screen and (max-width: 576px) {
    .faq .title-faq {
        font-size: 24px;
        font-size: 1.5rem;
        text-align: center;
    }
}

.faq .faq-accordion {
    margin-bottom: 30px;
}

.faq .faq-accordion .faq-item {
    border-top: 1px solid #8A8A90;
}

.faq .faq-accordion .faq-item:first-child {
    border-top: none;
}

.faq .faq-accordion .faq-item:last-child {
    border-bottom: 1px solid #8A8A90;
}

.faq .faq-accordion .faq-item.open .question {
    border-radius: 10px;
    margin: 10px 0;
    background-color: #F5F5F6;
}

.faq .faq-accordion .faq-item .question {
    transition: all 0.3s linear;
    font-size: 16px;
    font-size: 1rem;
    font-weight: 500;
    padding: 15px;
    display: flex;
    align-items: center;
}

.faq .faq-accordion .faq-item .question:hover {
    cursor: pointer;
    background-color: #D1D1D4;
}

.faq .faq-accordion .faq-item .question span {
    font-size: 22px;
    font-size: 1.375rem;
    font-weight: 300;
    display: inline-block;
    width: 10px;
    margin-right: 10px;
}

.faq .faq-accordion .faq-item .answer {
    font-size: 14px;
    font-size: 0.875rem;
    display: none;
    margin: 20px 0;
    padding: 0 20px;
}

.faq a.button {
    width: 270px;
}

@media only screen and (max-width: 576px) {
    .faq a.button {
        width: 100%;
    }
}

/*Фотогалерея*/
.photo-gallery {
    padding: 40px 0 30px;
    margin-bottom: 80px;
    background-color: #41434B;
}

@media only screen and (max-width: 992px) {
    .photo-gallery {
        padding-left: 30px;
        padding-right: 30px;
    }
}

@media only screen and (max-width: 768px) {
    .photo-gallery {
        padding: 20px 20px 10px;
    }
}

@media only screen and (max-width: 576px) {
    .photo-gallery {
        padding: 15px 10px 10px;
        margin-bottom: 50px;
    }
}

.photo-gallery .gallery-title {
    font-size: 40px;
    font-size: 2.5rem;
    font-weight: 600;
    color: #FFFFFF;
    text-transform: uppercase;
    text-align: center;
    margin-bottom: 40px;
}

@media only screen and (max-width: 768px) {
    .photo-gallery .gallery-title {
        font-size: 34px;
        font-size: 2.125rem;
        margin-bottom: 20px;
    }
}

@media only screen and (max-width: 576px) {
    .photo-gallery .gallery-title {
        font-size: 24px;
        font-size: 1.5rem;
        margin-bottom: 15px;
    }
}

.photo-gallery .swiperGallery .swiper-wrapper {
    margin-bottom: 30px;
}

@media only screen and (max-width: 768px) {
    .photo-gallery .swiperGallery .swiper-wrapper {
        margin-bottom: 10px;
    }
}

.photo-gallery .swiperGallery .swiper-slide {
    width: 1060px;
}

@media only screen and (max-width: 1200px) {
    .photo-gallery .swiperGallery .swiper-slide {
        width: 800px;
    }
}

.photo-gallery .swiperGallery .swiper-slide img {
    border-radius: 20px;
    width: 100%;
    height: 400px;
    -o-object-fit: cover;
    object-fit: cover;
}

@media only screen and (max-width: 1200px) {
    .photo-gallery .swiperGallery .swiper-slide img {
        height: 360px;
    }
}

@media only screen and (max-width: 992px) {
    .photo-gallery .swiperGallery .swiper-slide img {
        width: 100%;
        height: auto;
    }
}

@media only screen and (max-width: 576px) {
    .photo-gallery .swiperGallery .swiper-slide img {
        min-height: 250px;
    }
}

.photo-gallery .swiperGallery .swiper-slide a.link-image {
    border-radius: 4px;
    width: 40px;
    height: 40px;
    position: absolute;
    right: 20px;
    bottom: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #FFA800;
}

@media only screen and (max-width: 576px) {
    .photo-gallery .swiperGallery .swiper-slide a.link-image {
        width: 30px;
        height: 30px;
        right: 10px;
        bottom: 10px;
    }
}

.photo-gallery .swiperGallery .swiper-slide a.link-image:hover {
    background-color: rgb(216.75, 142.8, 0);
}

.photo-gallery .swiperGallery .swiper-slide a.link-image:hover svg {
    fill: #FFFFFF;
}

.photo-gallery .swiperGallery .swiper-slide a.link-image svg {
    transition: all 0.2s linear;
    fill: #222222;
}

@media only screen and (max-width: 576px) {
    .photo-gallery .swiperGallery .swiper-slide a.link-image svg {
        width: 18px;
        height: 18px;
    }
}

.photo-gallery .swiperGallery .swiper-button {
    display: flex;
    justify-content: center;
    align-items: center;
}

.photo-gallery .swiperGallery .swiper-button .gallery-swiper-prev,
.photo-gallery .swiperGallery .swiper-button .gallery-swiper-next {
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: 300;
    color: #FFFFFF;
    align-items: center;
    padding: 10px;
    display: flex;
    -webkit-touch-callout: none;
 /* Запрет на выделение текста */
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
}

.photo-gallery .swiperGallery .swiper-button .gallery-swiper-prev.swiper-button-disabled,
.photo-gallery .swiperGallery .swiper-button .gallery-swiper-next.swiper-button-disabled {
    color: #8A8A90;
}

.photo-gallery .swiperGallery .swiper-button .gallery-swiper-prev.swiper-button-disabled:hover,
.photo-gallery .swiperGallery .swiper-button .gallery-swiper-next.swiper-button-disabled:hover {
    cursor: default;
}

.photo-gallery .swiperGallery .swiper-button .gallery-swiper-prev.swiper-button-disabled svg,
.photo-gallery .swiperGallery .swiper-button .gallery-swiper-next.swiper-button-disabled svg {
    fill: #8A8A90;
}

.photo-gallery .swiperGallery .swiper-button .gallery-swiper-prev:hover:not(.swiper-button-disabled),
.photo-gallery .swiperGallery .swiper-button .gallery-swiper-next:hover:not(.swiper-button-disabled) {
    color: #FFA800;
}

.photo-gallery .swiperGallery .swiper-button .gallery-swiper-prev:hover:not(.swiper-button-disabled) svg,
.photo-gallery .swiperGallery .swiper-button .gallery-swiper-next:hover:not(.swiper-button-disabled) svg {
    fill: #FFA800;
}

.photo-gallery .swiperGallery .swiper-button .gallery-swiper-prev svg,
.photo-gallery .swiperGallery .swiper-button .gallery-swiper-next svg {
    transition: all 0.2s linear;
    fill: #FFFFFF;
}

.photo-gallery .swiperGallery .swiper-button .gallery-swiper-prev svg {
    margin-right: 6px;
}

.photo-gallery .swiperGallery .swiper-button .gallery-swiper-next svg {
    margin-left: 6px;
}

/*Наши награды*/
.reward {
    overflow: hidden;
    margin-bottom: 80px;
}

@media only screen and (max-width: 576px) {
    .reward {
        margin-bottom: 50px;
    }
}

.reward .bg-news {
    border-top-left-radius: 20px;
    border-bottom-left-radius: 20px;
    padding: 30px 80px;
    background-color: #41434B;
    position: relative;
}

@media only screen and (max-width: 992px) {
    .reward .bg-news {
        border-radius: 20px;
        padding: 30px;
    }
}

@media only screen and (max-width: 576px) {
    .reward .bg-news {
        padding: 30px 15px;
    }
}

.reward .bg-news:after {
    content: "";
    display: block;
    width: 100%;
    position: absolute;
    top: 0;
    left: 100%;
    bottom: 0;
    background-color: #41434B;
}

@media only screen and (max-width: 992px) {
    .reward .bg-news:after {
        display: none;
    }
}

.reward .title {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 30px;
}

@media only screen and (max-width: 1200px) {
    .reward .title {
        margin-left: -40px;
    }
}

@media only screen and (max-width: 992px) {
    .reward .title {
        margin-left: 0;
    }
}

@media only screen and (max-width: 768px) {
    .reward .title {
        font-size: 24px;
        font-size: 1.5rem;
        text-align: center;
        line-height: 1.4;
    }
}

@media only screen and (max-width: 576px) {
    .reward .title {
        flex-direction: column;
        align-items: center;
    }
}

.reward .title a {
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: 300;
    color: #FFA800;
    white-space: nowrap;
    text-decoration: none;
    text-transform: none;
    display: flex;
    align-items: center;
}

@media only screen and (max-width: 576px) {
    .reward .title a {
        margin-top: 15px;
        align-self: flex-end;
    }
}

.reward .title a:hover {
    color: rgb(216.75, 142.8, 0);
}

.reward .title a:hover svg {
    fill: rgb(216.75, 142.8, 0);
    padding-left: 10px;
}

.reward .title a svg {
    transition: all 0.2s linear;
    fill: #FFA800;
    padding-left: 5px;
}

.reward .rewardSlider .rewardSwiper {
    border-radius: 20px;
    position: relative;
    width: calc(100% + 180px);
    right: 180px;
    padding: 40px;
    background: linear-gradient(90deg, rgb(190, 190, 190) 0%, rgba(56, 57, 65, 0.95) 10%);
}

@media only screen and (max-width: 992px) {
    .reward .rewardSlider .rewardSwiper {
        padding: 0;
        right: 0;
        width: 100%;
    }
}

@media only screen and (max-width: 576px) {
    .reward .rewardSlider .rewardSwiper {
        border-radius: 0;
        background: none;
    }
}

.reward .rewardSlider .rewardSwiper .swiper-slide {
    color: #FFFFFF;
}

.reward .rewardSlider .rewardSwiper .swiper-slide a.link-image {
    border-radius: 8px;
    display: block;
    margin-bottom: 25px;
    max-width: 170px;
    overflow: hidden;
    position: relative;
}

@media only screen and (max-width: 576px) {
    .reward .rewardSlider .rewardSwiper .swiper-slide a.link-image {
        width: 100%;
        max-width: none;
    }
}

.reward .rewardSlider .rewardSwiper .swiper-slide a.link-image:hover:before {
    opacity: 1;
}

.reward .rewardSlider .rewardSwiper .swiper-slide a.link-image:hover .link-icon {
    opacity: 1;
}

.reward .rewardSlider .rewardSwiper .swiper-slide a.link-image.reward {
    max-width: 170px;
}

.reward .rewardSlider .rewardSwiper .swiper-slide a.link-image:before {
    transition: all 0.2s linear;
    content: "";
    display: block;
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(56, 57, 65, 0.6);
}

.reward .rewardSlider .rewardSwiper .swiper-slide a.link-image .link-icon {
    border-radius: 4px;
    display: flex;
    justify-content: center;
    align-items: center;
    opacity: 0;
    width: 40px;
    height: 40px;
    position: absolute;
    top: calc(50% - 20px);
    left: calc(50% - 20px);
    background-color: #383941;
}

.reward .rewardSlider .rewardSwiper .swiper-slide a.link-image .link-icon svg {
    fill: #FFFFFF;
}

.reward .rewardSlider .rewardSwiper .swiper-slide a.link-image img {
    height: 200px;
    -o-object-fit: cover;
    object-fit: cover;
}

@media only screen and (max-width: 576px) {
    .reward .rewardSlider .rewardSwiper .swiper-slide a.link-image img {
        width: 100%;
        height: auto;
    }
}

.reward .rewardSlider .rewardSwiper .swiper-slide p {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 500;
    line-height: 1.2;
    padding-top: 20px;
    margin: 0 0 10px;
    position: relative;
}

@media only screen and (max-width: 576px) {
    .reward .rewardSlider .rewardSwiper .swiper-slide p {
        padding-left: 0;
    }
}

.reward .rewardSlider .rewardSwiper .swiper-slide p:before {
    content: "";
    display: block;
    width: 6px;
    height: 7px;
    position: absolute;
    top: 0;
    left: 0;
    background-color: #FFA800;
    z-index: 2;
}

.reward .rewardSlider .rewardSwiper .swiper-slide p:after {
    content: "";
    display: block;
    width: 200%;
    height: 1px;
    position: absolute;
    top: 3px;
    left: 0;
    background-color: #D1D1D4;
    z-index: 0;
}

.reward .rewardSlider .swiper-button {
    padding-top: 20px;
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

@media only screen and (max-width: 576px) {
    .reward .rewardSlider .swiper-button {
        justify-content: space-between;
    }
}

.reward .rewardSlider .swiper-button .swiper-button-next,
.reward .rewardSlider .swiper-button .swiper-button-prev {
    transition: all 0.2s linear;
    font-weight: 300;
    color: #FFFFFF;
    line-height: 1.4;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    width: auto;
    margin: 0 20px;
    display: flex;
    align-items: center;
    position: relative;
}

@media only screen and (max-width: 576px) {
    .reward .rewardSlider .swiper-button .swiper-button-next,
  .reward .rewardSlider .swiper-button .swiper-button-prev {
        margin-left: 0;
    }
}

.reward .rewardSlider .swiper-button .swiper-button-next:after,
.reward .rewardSlider .swiper-button .swiper-button-prev:after {
    display: none;
}

.reward .rewardSlider .swiper-button .swiper-button-next:hover,
.reward .rewardSlider .swiper-button .swiper-button-prev:hover {
    color: #FFA800;
}

.reward .rewardSlider .swiper-button .swiper-button-next:hover svg,
.reward .rewardSlider .swiper-button .swiper-button-prev:hover svg {
    fill: #FFA800;
}

.reward .rewardSlider .swiper-button .swiper-button-next svg,
.reward .rewardSlider .swiper-button .swiper-button-prev svg {
    transition: all 0.2s linear;
    fill: #FFFFFF;
}

.reward .rewardSlider .swiper-button .swiper-button-next {
    margin-right: 0;
}

/*--------------------------------------------------------------
# Виджеты
--------------------------------------------------------------*/
/*Сайтбар*/
aside.widget-area {
    border-radius: 20px;
    padding: 30px;
    margin-bottom: 30px;
    display: flex;
    flex-wrap: wrap;
    background-color: #383941;
}

@media only screen and (max-width: 992px) {
    aside.widget-area {
        margin-top: 30px;
    }
}

@media only screen and (max-width: 768px) {
    aside.widget-area {
        justify-content: space-between;
    }
}

/*Общие стили виджета*/
.widget {
    color: #FFFFFF;
    width: 100%;
    padding-bottom: 15px;
    margin-bottom: 15px;
}

.widget:last-child {
    border: none;
    padding: 0;
    margin: 0;
}

.widget select {
    max-width: 100%;
}

.widget .widget-title {
    font-size: 22px;
    font-size: 1.375rem;
    color: #FFFFFF;
    position: relative;
    padding-bottom: 10px;
    margin-bottom: 15px;
}

.widget .widget-title:after {
    content: "";
    width: 60px;
    height: 4px;
    background-color: #FFA800;
    display: block;
    position: relative;
    left: 0;
    bottom: -8px;
}

.widget ul {
    padding-left: 0;
    margin: 0;
    list-style: none;
}

.widget ul li {
    line-height: 24px;
    margin-bottom: 5px;
}

.widget ul li a {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    color: #FFFFFF;
    text-decoration: none;
}

.widget ul li a:hover {
    color: #FFA800;
    text-decoration: underline;
}

.widget ul li span {
    color: #D1D1D4;
}

.widget ul li ul {
    padding-top: 5px;
    padding-left: 20px;
}

/*Виджет поиска*/
.widget_search {
    width: 100%;
}

.widget_search form {
    width: 100%;
    position: relative;
}

@media only screen and (max-width: 768px) {
    .widget_search form {
        margin: 0 auto 35px;
    }
}

.widget_search form .screen-reader-text {
    display: none;
}

.widget_search form label {
    width: 100%;
}

.widget_search form input[type=search] {
    border-radius: 10px;
    font-size: 16px;
    font-size: 1rem;
    border: 1px solid #D1D1D4;
    width: 100%;
    padding: 8px;
    outline: none;
    background-color: #FFFFFF;
}

.widget_search form input[type=submit],
.widget_search form button[type=submit] {
    background: none;
    border: none;
    outline: none;
    width: 40px;
    line-height: 40px;
    padding: 0;
    position: absolute;
    top: 0;
    right: 0;
}

.widget_search form input[type=submit]:hover,
.widget_search form button[type=submit]:hover {
    cursor: pointer;
}

.widget_search form button[type=submit]:hover svg {
    fill: #FFA800;
}

.widget_search form button[type=submit] svg {
    transition: all 0.2s linear;
    fill: #222222;
}

/*Виджет тегов*/
.widget_tag_cloud .tagcloud a {
    font-weight: 400;
    color: #FFFFFF;
    text-decoration: none;
    padding: 5px 10px;
    margin-right: 5px;
    margin-bottom: 10px;
    border-radius: 4px;
    display: inline-block;
    border: 1px solid #FFA800;
}

.widget_tag_cloud .tagcloud a:hover {
    color: #FFFFFF;
    background-color: #FFA800;
}

/*Виджет свежих комментариев*/
.widget_recent_comments ul li a:hover {
    text-decoration: underline;
}

/*--------------------------------------------------------------
# Контент
--------------------------------------------------------------*/
/*Индексная страница*/
.list-post {
    margin-bottom: 80px;
}

.list-post .archive-title {
    font-size: 40px;
    font-size: 2.5rem;
    font-weight: 600;
    text-transform: uppercase;
    margin-bottom: 30px;
}

@media only screen and (max-width: 768px) {
    .list-post .archive-title {
        font-size: 32px;
        font-size: 2rem;
    }
}

@media only screen and (max-width: 576px) {
    .list-post .archive-title {
        font-size: 24px;
        font-size: 1.5rem;
    }
}

.list-post article {
    border-radius: 20px;
    display: flex;
    padding: 30px;
    background-color: #41434B;
    margin-bottom: 30px;
}

@media only screen and (max-width: 768px) {
    .list-post article {
        flex-direction: column;
    }
}

.list-post article .entry-header {
    flex-basis: 250px;
}

@media only screen and (max-width: 768px) {
    .list-post article .entry-header {
        flex-basis: 100%;
    }
}

.list-post article .entry-header a {
    border-radius: 20px;
    display: block;
    justify-content: center;
    align-items: center;
    margin-right: 30px;
    overflow: hidden;
}

@media only screen and (max-width: 768px) {
    .list-post article .entry-header a {
        margin-right: 0;
        margin-bottom: 15px;
    }
}

.list-post article .entry-header a:hover img {
    transform: scale(1.05);
}

.list-post article .entry-header a img {
    transition: all 0.2s linear;
    width: 100%;
    min-width: 200px;
    height: 200px;
    -o-object-fit: cover;
    object-fit: cover;
}

@media only screen and (max-width: 768px) {
    .list-post article .entry-header a img {
        width: 100%;
        height: auto;
        max-height: 300px;
    }
}

.list-post article .entry-content {
    font-size: 16px;
    font-size: 1rem;
    color: #FFFFFF;
}

.list-post article .entry-content h2 {
    margin-bottom: 10px;
}

.list-post article .entry-content h2 a {
    font-size: 24px;
    font-size: 1.5rem;
    text-decoration: none;
    line-height: 1.4;
    display: block;
}

@media only screen and (max-width: 576px) {
    .list-post article .entry-content h2 a {
        font-size: 20px;
        font-size: 1.25rem;
    }
}

.list-post article .entry-content time {
    font-size: 14px;
    font-size: 0.875rem;
    color: #8A8A90;
    display: block;
    margin-bottom: 15px;
}

.list-post article .entry-content a.more-link {
    text-decoration: none;
}

.list-post article .entry-content a.more-link:hover svg {
    fill: rgb(216.75, 142.8, 0);
    margin-left: 5px;
}

.list-post article .entry-content a.more-link svg {
    transition: all 0.2s linear;
    fill: #FFA800;
}

/*Страница поста*/
article.post,
article.page {
    font-size: 16px;
    font-size: 1rem;
    margin-bottom: 60px;
}

article.post h1,
article.page h1 {
    font-size: 40px;
    font-size: 2.5rem;
    font-weight: 600;
    margin-bottom: 30px;
}

@media only screen and (max-width: 768px) {
    article.post h1,
  article.page h1 {
        font-size: 32px;
        font-size: 2rem;
    }
}

@media only screen and (max-width: 576px) {
    article.post h1,
  article.page h1 {
        font-size: 24px;
        font-size: 1.5rem;
    }
}

/*Домашняя страница*/
.home-page .first-image {
    margin-bottom: 80px;
}

/*Архивная страница услуг*/
.archive-services article {
    margin-bottom: 30px;
}

.service-right {
    padding: 30px 0;
    overflow: hidden;
}

@media only screen and (max-width: 768px) {
    .service-right {
        padding: 15px 0;
    }
}

.service-right .service-title {
    font-size: 40px;
    font-size: 2.5rem;
    font-weight: 600;
    line-height: 1.2;
    padding-left: 110px;
    margin-bottom: 30px;
}

@media only screen and (max-width: 1200px) {
    .service-right .service-title {
        padding-left: 40px;
    }
}

@media only screen and (max-width: 992px) {
    .service-right .service-title {
        padding-left: 0;
    }
}

@media only screen and (max-width: 768px) {
    .service-right .service-title {
        font-size: 28px;
        font-size: 1.75rem;
    }
}

@media only screen and (max-width: 576px) {
    .service-right .service-title {
        margin-bottom: 15px;
    }
}

.service-right ul.list-services {
    list-style: none;
    padding-left: 110px;
    margin: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    overflow: hidden;
}

@media only screen and (max-width: 1200px) {
    .service-right ul.list-services {
        padding-left: 40px;
    }
}

@media only screen and (max-width: 992px) {
    .service-right ul.list-services {
        padding-left: 0;
        margin-bottom: 30px;
    }
}

@media only screen and (max-width: 576px) {
    .service-right ul.list-services {
        margin-bottom: 15px;
    }
}

.service-right ul.list-services li {
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: 500;
    padding: 15px 0;
    display: inline-flex;
    align-items: center;
    position: relative;
}

@media only screen and (max-width: 768px) {
    .service-right ul.list-services li {
        padding: 10px 0;
    }
}

.service-right ul.list-services li:hover {
    cursor: pointer;
}

.service-right ul.list-services li.active span {
    font-weight: 700;
    display: inline-block;
    padding-right: 20px;
    position: relative;
}

.service-right ul.list-services li.active span:after {
    content: "";
    display: inline-block;
    width: 200%;
    height: 1px;
    position: absolute;
    top: 50%;
    left: 100%;
    right: auto;
    background-color: #222222;
}

@media only screen and (max-width: 992px) {
    .service-right ul.list-services li.active span:after {
        display: none;
    }
}

.service-right ul.list-services li:first-child:after {
    display: none;
}

.service-right ul.list-services li:before {
    border-radius: 50%;
    content: "";
    display: block;
    margin-right: 20px;
    width: 24px;
    height: 24px;
    border: 1px solid #FFA800;
}

@media only screen and (max-width: 768px) {
    .service-right ul.list-services li:before {
        width: 16px;
        height: 16px;
    }
}

.service-right ul.list-services li:after {
    content: "";
    display: block;
    width: 1px;
    height: 10px;
    position: absolute;
    top: -5px;
    left: 12px;
    background-color: #8A8A90;
}

@media only screen and (max-width: 768px) {
    .service-right ul.list-services li:after {
        left: 8px;
    }
}

.service-right .image-description {
    border-top-left-radius: 20px;
    border-bottom-left-radius: 20px;
    padding: 40px 40px 20px;
    position: relative;
    background-color: #41434B;
}

@media only screen and (max-width: 576px) {
    .service-right .image-description {
        border-radius: 20px;
        padding: 20px;
    }
}

.service-right .image-description:after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    right: -99%;
    bottom: 0;
    background-color: #41434B;
}

@media only screen and (max-width: 576px) {
    .service-right .image-description:after {
        display: none;
    }
}

.service-right .image-description .link-image {
    border-radius: 20px;
    display: block;
    margin-bottom: 40px;
    overflow: hidden;
}

@media only screen and (max-width: 576px) {
    .service-right .image-description .link-image {
        margin-bottom: 20px;
    }
}

.service-right .image-description .link-image:hover img {
    transform: scale(1.03);
}

.service-right .image-description .link-image img {
    transition: all 0.2s linear;
    width: 100%;
    height: 355px;
    -o-object-fit: cover;
    object-fit: cover;
}

.service-right .image-description .excerpt {
    display: flex;
    align-items: flex-start;
}

@media only screen and (max-width: 576px) {
    .service-right .image-description .excerpt {
        flex-direction: column;
    }
}

.service-right .image-description .excerpt p {
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: 300;
    color: #F5F5F6;
    padding-right: 30px;
    width: 100%;
    height: 55px;
    margin: 0;
    overflow: hidden;
}

@media only screen and (max-width: 576px) {
    .service-right .image-description .excerpt p {
        margin-bottom: 15px;
    }
}

.service-right .image-description .excerpt a.link-more {
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: 300;
    color: #FFA800;
    text-decoration: none;
    white-space: nowrap;
    display: inline-flex;
    align-items: center;
}

.service-right .image-description .excerpt a.link-more:hover {
    color: rgb(216.75, 142.8, 0);
}

.service-right .image-description .excerpt a.link-more:hover svg {
    fill: rgb(216.75, 142.8, 0);
}

.service-right .image-description .excerpt a.link-more svg {
    transition: all 0.2s linear;
    fill: #FFA800;
    margin-left: 5px;
}

.service-left {
    padding: 30px 0;
    overflow: hidden;
}

@media only screen and (max-width: 768px) {
    .service-left {
        padding: 15px 0;
    }
}

.service-left .service-title {
    font-size: 40px;
    font-size: 2.5rem;
    font-weight: 600;
    line-height: 1.2;
    margin-bottom: 30px;
    padding-left: 110px;
}

@media only screen and (max-width: 1200px) {
    .service-left .service-title {
        padding-left: 40px;
    }
}

@media only screen and (max-width: 992px) {
    .service-left .service-title {
        padding-left: 0;
    }
}

@media only screen and (max-width: 768px) {
    .service-left .service-title {
        font-size: 28px;
        font-size: 1.75rem;
    }
}

@media only screen and (max-width: 576px) {
    .service-left .service-title {
        margin-bottom: 15px;
    }
}

.service-left ul.list-services {
    list-style: none;
    padding-left: 110px;
    margin: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

@media only screen and (max-width: 1200px) {
    .service-left ul.list-services {
        padding-left: 40px;
    }
}

@media only screen and (max-width: 992px) {
    .service-left ul.list-services {
        padding-left: 0;
        margin-bottom: 30px;
    }
}

@media only screen and (max-width: 576px) {
    .service-left ul.list-services {
        margin-bottom: 15px;
    }
}

.service-left ul.list-services li {
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: 500;
    padding: 15px 0;
    display: inline-flex;
    align-items: center;
    position: relative;
}

@media only screen and (max-width: 768px) {
    .service-left ul.list-services li {
        padding: 10px 0;
    }
}

.service-left ul.list-services li:hover {
    cursor: pointer;
}

.service-left ul.list-services li.active:after {
    content: "";
    display: inline-block;
    width: 200%;
    height: 1px;
    position: absolute;
    top: 50%;
    left: auto;
    right: calc(100% + 20px);
    background-color: #222222;
}

@media only screen and (max-width: 992px) {
    .service-left ul.list-services li.active:after {
        display: none;
    }
}

.service-left ul.list-services li.active span {
    font-weight: 700;
    display: inline-block;
    position: relative;
}

.service-left ul.list-services li:before {
    border-radius: 50%;
    content: "";
    display: block;
    margin-right: 20px;
    width: 24px;
    height: 24px;
    border: 1px solid #FFA800;
}

@media only screen and (max-width: 768px) {
    .service-left ul.list-services li:before {
        width: 16px;
        height: 16px;
    }
}

.service-left .image-description {
    border-top-right-radius: 20px;
    border-bottom-right-radius: 20px;
    padding: 40px 40px 20px;
    position: relative;
    background-color: #41434B;
}

@media only screen and (max-width: 576px) {
    .service-left .image-description {
        border-radius: 20px;
        padding: 20px;
    }
}

.service-left .image-description:before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: -99%;
    bottom: 0;
    background-color: #41434B;
}

@media only screen and (max-width: 576px) {
    .service-left .image-description:before {
        display: none;
    }
}

.service-left .image-description .link-image {
    border-radius: 20px;
    display: block;
    margin-bottom: 40px;
    overflow: hidden;
}

@media only screen and (max-width: 576px) {
    .service-left .image-description .link-image {
        margin-bottom: 20px;
    }
}

.service-left .image-description .link-image:hover img {
    transform: scale(1.03);
}

.service-left .image-description .link-image img {
    transition: all 0.2s linear;
    width: 100%;
    height: 355px;
    -o-object-fit: cover;
    object-fit: cover;
}

.service-left .image-description .excerpt {
    display: flex;
    align-items: flex-start;
}

@media only screen and (max-width: 576px) {
    .service-left .image-description .excerpt {
        flex-direction: column;
    }
}

.service-left .image-description .excerpt p {
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: 300;
    color: #F5F5F6;
    padding-right: 30px;
    width: 100%;
    height: 55px;
    margin: 0;
    overflow: hidden;
}

@media only screen and (max-width: 576px) {
    .service-left .image-description .excerpt p {
        margin-bottom: 15px;
    }
}

.service-left .image-description .excerpt a.link-more {
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: 300;
    color: #FFA800;
    text-decoration: none;
    white-space: nowrap;
    display: inline-flex;
    align-items: center;
}

.service-left .image-description .excerpt a.link-more:hover {
    color: rgb(216.75, 142.8, 0);
}

.service-left .image-description .excerpt a.link-more:hover svg {
    fill: rgb(216.75, 142.8, 0);
}

.service-left .image-description .excerpt a.link-more svg {
    transition: all 0.2s linear;
    fill: #FFA800;
    margin-left: 5px;
}

/*Страница услуги*/
.single-service {
    padding: 30px 0 0;
    margin-bottom: 70px;
}

@media only screen and (max-width: 992px) {
    .single-service {
        margin-bottom: 15px;
    }
}

.single-service .service-image img {
    border-radius: 20px;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.single-service .service-description {
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: 300;
    margin-left: 40px;
}

@media only screen and (max-width: 992px) {
    .single-service .service-description {
        margin-left: 0;
        margin-bottom: 30px;
    }
}

.single-service .service-description p:last-child {
    margin-bottom: 0;
}

.cooperation {
    padding: 30px 0;
    margin-bottom: 50px;
}

.cooperation .cooperation-title {
    font-size: 40px;
    font-size: 2.5rem;
    font-weight: 600;
    line-height: 1.2;
    margin-right: 50px;
    margin-bottom: 30px;
}

@media only screen and (max-width: 576px) {
    .cooperation .cooperation-title {
        font-size: 24px;
        font-size: 1.5rem;
    }
}

.cooperation ul.cooperation-list {
    list-style: none;
    padding-left: 0;
    margin: 0 50px 0 0;
    position: relative;
}

@media only screen and (max-width: 1200px) {
    .cooperation ul.cooperation-list {
        margin-bottom: 30px;
        margin-right: 20px;
    }
}

@media only screen and (max-width: 992px) {
    .cooperation ul.cooperation-list {
        margin-right: 0;
    }
}

.cooperation ul.cooperation-list:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 16px;
    bottom: 0;
    width: 1px;
    height: 100%;
    z-index: -1;
    background-color: #D1D1D4;
}

.cooperation ul.cooperation-list li {
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: 400;
    display: flex;
    align-items: flex-start;
    margin-bottom: 40px;
    position: relative;
    z-index: 3;
}

@media only screen and (max-width: 1200px) {
    .cooperation ul.cooperation-list li {
        margin-bottom: 20px;
    }
}

.cooperation ul.cooperation-list li:last-child {
    margin-bottom: 0;
}

.cooperation ul.cooperation-list li span {
    border-radius: 50%;
    font-size: 16px;
    font-size: 1rem;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 33px;
    height: 33px;
    min-width: 33px;
    margin-right: 20px;
    border: 1px solid #FFA800;
    background-color: #FFFFFF;
    position: relative;
    z-index: 3;
}

.cooperation ul.cooperation-list li span:before {
    border-radius: 50%;
    content: "";
    display: block;
    width: 53px;
    height: 53px;
    position: absolute;
    border: 10px solid #FFFFFF;
    z-index: 1;
}

@media only screen and (max-width: 1200px) {
    .cooperation ul.cooperation-list li span:before {
        width: 43px;
        height: 43px;
        border: 5px solid #FFFFFF;
    }
}

.cooperation ul.cooperation-list li p {
    margin: 8px 0 0;
}

.cooperation img {
    border-radius: 20px;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

@media only screen and (max-width: 992px) {
    .cooperation img {
        max-height: 500px;
    }
}

@media only screen and (max-width: 576px) {
    .cooperation img {
        max-height: 400px;
    }
}

/*Страница о нас*/
.about {
    padding: 30px 0 0;
    margin-bottom: 70px;
}

.about .about-image img {
    border-radius: 20px;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.about .about-description {
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: 300;
    margin-left: 40px;
}

@media only screen and (max-width: 992px) {
    .about .about-description {
        margin-left: 0;
        margin-bottom: 30px;
    }
}

.about .about-description p:last-child {
    margin-bottom: 0;
}

.advantages {
    overflow: hidden;
    margin-bottom: 80px;
}

.advantages .bg-advantages {
    padding: 30px 0 60px;
    background-color: #41434B;
    border-top-left-radius: 20px;
    border-bottom-left-radius: 20px;
    position: relative;
}

@media only screen and (max-width: 768px) {
    .advantages .bg-advantages {
        border-radius: 20px;
    }
}

.advantages .bg-advantages:before {
    content: "";
    width: 100%;
    display: block;
    position: absolute;
    top: 0;
    right: -99%;
    bottom: 0;
    background-color: #41434B;
}

@media only screen and (max-width: 768px) {
    .advantages .bg-advantages:before {
        display: none;
    }
}

.advantages .advantages-title {
    font-size: 40px;
    font-size: 2.5rem;
    font-weight: 600;
    text-transform: uppercase;
    color: #FFFFFF;
    margin-left: 80px;
    margin-bottom: 30px;
}

@media only screen and (max-width: 768px) {
    .advantages .advantages-title {
        font-size: 34px;
        font-size: 2.125rem;
        text-align: center;
        margin-left: 0;
    }
}

@media only screen and (max-width: 576px) {
    .advantages .advantages-title {
        font-size: 24px;
        font-size: 1.5rem;
    }
}

.advantages .advantages-item {
    border-radius: 16px;
    width: 100%;
    padding: 60px 40px;
    margin-left: -80px;
    background: linear-gradient(90deg, rgb(190, 190, 190) 0%, rgba(56, 57, 65, 0.95) 7%);
}

@media only screen and (max-width: 992px) {
    .advantages .advantages-item {
        margin-left: -30px;
    }
}

@media only screen and (max-width: 768px) {
    .advantages .advantages-item {
        margin-left: 0;
        padding: 60px 15px;
    }
}

.advantages .advantages-item ul.advantages-list {
    list-style: none;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
    justify-content: space-between;
    grid-gap: 0;
    padding-left: 0;
    padding-right: 170px;
    margin: 0;
    position: relative;
}

@media only screen and (max-width: 768px) {
    .advantages .advantages-item ul.advantages-list {
        padding-right: 0;
    }
}

.advantages .advantages-item ul.advantages-list:after {
    content: "";
    width: 70px;
    height: 177px;
    position: absolute;
    top: 30px;
    right: 100px;
    background-image: url("data:image/svg+xml,%3Csvg width='71' height='180' viewBox='0 0 71 180' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 1H50C61.0457 1 70 9.95431 70 21V159C70 170.046 61.0457 179 50 179H0' stroke='white'/%3E%3C/svg%3E%0A");
    background-repeat: no-repeat;
    background-size: contain;
}

@media only screen and (max-width: 1400px) {
    .advantages .advantages-item ul.advantages-list:after {
        right: 76px;
    }
}

@media only screen and (max-width: 1200px) {
    .advantages .advantages-item ul.advantages-list:after {
        right: 102px;
    }
}

@media only screen and (max-width: 992px) {
    .advantages .advantages-item ul.advantages-list:after {
        right: 42px;
    }
}

@media only screen and (max-width: 768px) {
    .advantages .advantages-item ul.advantages-list:after {
        display: none;
    }
}

.advantages .advantages-item ul.advantages-list li {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 500;
    color: #FFFFFF;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    position: relative;
    z-index: 9;
}

@media only screen and (max-width: 768px) {
    .advantages .advantages-item ul.advantages-list li {
        font-size: 12px;
        font-size: 0.75rem;
        max-width: 100px;
    }
}

.advantages .advantages-item ul.advantages-list li:nth-child(-n+5) {
    padding-bottom: 70px;
}

.advantages .advantages-item ul.advantages-list li:nth-child(5n):after {
    content: "";
    position: absolute;
    top: 27px;
    right: 0;
    display: block;
    width: 6px;
    height: 7px;
    background-color: #FFA800;
    z-index: 3;
}

@media only screen and (max-width: 768px) {
    .advantages .advantages-item ul.advantages-list li:nth-child(5n):after {
        display: none;
    }
}

.advantages .advantages-item ul.advantages-list li.linea {
    min-width: 260px;
}

@media only screen and (max-width: 1400px) {
    .advantages .advantages-item ul.advantages-list li.linea {
        min-width: 200px;
    }
}

@media only screen and (max-width: 1200px) {
    .advantages .advantages-item ul.advantages-list li.linea {
        min-width: 150px;
    }
}

@media only screen and (max-width: 992px) {
    .advantages .advantages-item ul.advantages-list li.linea {
        min-width: 100px;
    }
}

@media only screen and (max-width: 768px) {
    .advantages .advantages-item ul.advantages-list li.linea {
        min-width: auto;
    }
}

.advantages .advantages-item ul.advantages-list li.linea:before, .advantages .advantages-item ul.advantages-list li.linea:after {
    content: "";
    position: absolute;
    top: 27px;
    left: 0;
    display: block;
    width: 6px;
    height: 7px;
    background-color: #FFA800;
    z-index: 3;
}

@media only screen and (max-width: 768px) {
    .advantages .advantages-item ul.advantages-list li.linea:before, .advantages .advantages-item ul.advantages-list li.linea:after {
        top: 15px;
    }
}

.advantages .advantages-item ul.advantages-list li.linea:after {
    left: auto;
    right: 0;
}

.advantages .advantages-item ul.advantages-list li.linea span {
    width: 100%;
    height: 1px;
    background-color: #FFFFFF;
    position: absolute;
    top: 30px;
    z-index: 1;
}

@media only screen and (max-width: 768px) {
    .advantages .advantages-item ul.advantages-list li.linea span {
        top: 18px;
    }
}

.advantages .advantages-item ul.advantages-list li img {
    width: 64px;
    height: 64px;
    margin-bottom: 20px;
}

@media only screen and (max-width: 768px) {
    .advantages .advantages-item ul.advantages-list li img {
        width: 40px;
        height: 40px;
    }
}

.about-write {
    margin-bottom: 80px;
}

.about-write .write-title {
    font-size: 40px;
    font-size: 2.5rem;
    font-weight: 600;
    text-transform: uppercase;
    text-align: center;
    margin-bottom: 15px;
}

@media only screen and (max-width: 768px) {
    .about-write .write-title {
        font-size: 34px;
        font-size: 2.125rem;
    }
}

@media only screen and (max-width: 576px) {
    .about-write .write-title {
        font-size: 24px;
        font-size: 1.5rem;
    }
}

.about-write p {
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: 300;
    text-align: center;
    color: #8A8A90;
}

.about-write ul.write-list {
    border-radius: 20px;
    list-style: none;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    padding-left: 0;
    margin: 30px 0 0;
    border: 1px solid #D1D1D4;
}

@media only screen and (max-width: 768px) {
    .about-write ul.write-list {
        flex-direction: column;
    }
}

.about-write ul.write-list li {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    padding: 50px;
    border-right: 1px solid #D1D1D4;
}

@media only screen and (max-width: 992px) {
    .about-write ul.write-list li {
        padding: 30px 20px;
    }
}

@media only screen and (max-width: 768px) {
    .about-write ul.write-list li {
        padding: 30px;
        border-right: none;
        border-bottom: 1px solid #D1D1D4;
    }
}

.about-write ul.write-list li:last-child {
    border: none;
}

.about-write ul.write-list li img {
    width: 100%;
    max-width: 150px;
    max-height: 100px;
}

/*Страница контактов*/
.page-contact .bread-crumbs {
    margin-bottom: 40px;
}

@media only screen and (max-width: 992px) {
    .page-contact .bread-crumbs {
        margin-bottom: 20px;
    }
}

.contact {
    margin-bottom: 80px;
}

.contact .contact-title {
    font-size: 40px;
    font-size: 2.5rem;
    font-weight: 600;
    text-transform: uppercase;
    margin-bottom: 20px;
}

@media only screen and (max-width: 768px) {
    .contact .contact-title {
        font-size: 32px;
        font-size: 2rem;
    }
}

.contact .contact-text {
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: 300;
    padding-right: 60px;
    margin-bottom: 30px;
}

@media only screen and (max-width: 1200px) {
    .contact .contact-text {
        padding-right: 0;
    }
}

.contact .phone {
    display: flex;
    align-items: center;
    margin-bottom: 15px;
}

@media only screen and (max-width: 1200px) {
    .contact .phone {
        margin-bottom: 10px;
    }
}

.contact .phone .link-phone {
    color: #222222;
    text-decoration: none;
    margin-right: 10px;
    display: inline-flex;
    align-items: center;
}

.contact .phone .link-phone:hover {
    color: #FFA800;
}

.contact .phone .link-phone svg {
    fill: #222222;
    margin-right: 15px;
}

.contact .phone .call-back {
    color: #FFA800;
    display: inline-block;
}

.contact .phone .call-back:hover {
    text-decoration: none;
}

.contact ul.messengers {
    list-style: none;
    padding-left: 0;
    display: flex;
    align-items: center;
}

.contact ul.messengers li {
    margin-right: 20px;
}

.contact ul.messengers li:last-child {
    margin-right: 0;
}

.contact ul.messengers li a {
    color: #222222;
    text-decoration: none;
    padding: 4px 0;
    display: flex;
    align-items: center;
}

.contact ul.messengers li a:hover {
    color: #FFA800;
}

.contact ul.messengers li a:hover svg {
    fill: #FFA800;
}

.contact ul.messengers li a svg {
    transition: all 0.2s linear;
    fill: #222222;
    margin-right: 6px;
}

.contact-form {
    border-radius: 20px;
    padding: 40px;
    background-color: #41434B;
}

@media only screen and (max-width: 992px) {
    .contact-form {
        padding: 40px 20px;
        margin-top: 30px;
    }
}

@media only screen and (max-width: 576px) {
    .contact-form {
        padding: 30px 20px;
    }
}

.contact-form .title-form {
    font-size: 30px;
    font-size: 1.875rem;
    font-weight: 600;
    color: #FFFFFF;
    text-transform: uppercase;
    text-align: center;
    line-height: 1.2;
    margin-bottom: 40px;
}

@media only screen and (max-width: 768px) {
    .contact-form .title-form {
        font-size: 24px;
        font-size: 1.5rem;
        line-height: 1.4;
        margin-bottom: 20px;
    }
}

.contact-form form {
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin: 0 auto;
    max-width: 740px;
}

@media only screen and (max-width: 992px) {
    .contact-form form {
        flex-direction: column;
        align-items: center;
        margin: 0 30px;
    }
}

@media only screen and (max-width: 576px) {
    .contact-form form {
        margin: 0 15px;
    }
}

.contact-form form p {
    width: 100%;
    display: flex;
    align-items: flex-start;
}

@media only screen and (max-width: 1200px) {
    .contact-form form p {
        flex-direction: column;
    }
}

@media only screen and (max-width: 992px) {
    .contact-form form p {
        flex-direction: row;
    }
}

@media only screen and (max-width: 768px) {
    .contact-form form p {
        flex-direction: column;
    }
}

.contact-form form p .wpcf7-form-control-wrap {
    display: block;
    width: 100%;
    margin-right: 20px;
    margin-bottom: 0;
}

@media only screen and (max-width: 1200px) {
    .contact-form form p .wpcf7-form-control-wrap {
        margin-right: 0;
        margin-bottom: 15px;
    }
}

@media only screen and (max-width: 992px) {
    .contact-form form p .wpcf7-form-control-wrap {
        margin-right: 10px;
        margin-bottom: 0;
    }
}

@media only screen and (max-width: 768px) {
    .contact-form form p .wpcf7-form-control-wrap {
        margin-right: 0;
        margin-bottom: 15px;
    }
}

.contact-form form p input {
    margin-bottom: 0;
}

@media only screen and (max-width: 992px) {
    .contact-form form p input {
        width: 100%;
    }
}

.contact-form form p input:focus {
    border-color: #FFA800;
}

.contact-form form p input[type=submit] {
    max-width: 260px;
    margin-bottom: 0;
}

@media only screen and (max-width: 992px) {
    .contact-form form p input[type=submit] {
        max-width: 180px;
    }
}

@media only screen and (max-width: 576px) {
    .contact-form form p input[type=submit] {
        max-width: none;
    }
}

.contact-form form .wpcf7-response-output {
    transition: all 0.2s linear;
    color: #FFFFFF;
}

.map-contact {
    margin-bottom: 80px;
}

.map-contact .map-title {
    font-size: 40px;
    font-size: 2.5rem;
    font-weight: 600;
    text-align: center;
    text-transform: uppercase;
    line-height: 1.2;
    margin-bottom: 40px;
}

@media only screen and (max-width: 768px) {
    .map-contact .map-title {
        font-size: 32px;
        font-size: 2rem;
        line-height: 1.4;
    }
}

@media only screen and (max-width: 576px) {
    .map-contact .map-title {
        font-size: 24px;
        font-size: 1.5rem;
    }
}

.map-contact .item-map {
    position: relative;
}

.map-contact .item-map img {
    width: 100%;
    height: 100%;
}

.map-contact .item-map svg {
    position: absolute;
    z-index: 9;
}

@media only screen and (max-width: 768px) {
    .map-contact .item-map svg {
        width: 20px;
        height: 20px;
    }
}

/*Архивная страница проектов*/
.archive-projects .bread-crumbs {
    margin-bottom: 30px;
}

.projects .project {
    border-top-left-radius: 30px;
    border-top-right-radius: 30px;
    border-bottom-left-radius: 20px;
    border-bottom-right-radius: 20px;
    margin-bottom: 30px;
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    background-color: #41434B;
}

.projects .project .link-image {
    border-radius: 20px;
    display: block;
    overflow: hidden;
}

.projects .project .link-image:hover img {
    transform: scale(1.03);
}

.projects .project .link-image img {
    transition: all 0.2s linear;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.projects .project .title-project {
    padding: 10px 20px;
}

.projects .project .title-project a {
    font-size: 22px;
    font-size: 1.375rem;
    font-weight: 500;
    text-decoration: none;
    color: #FFFFFF;
    padding: 5px;
    display: block;
}

@media only screen and (max-width: 768px) {
    .projects .project .title-project a {
        font-size: 18px;
        font-size: 1.125rem;
    }
}

.projects .project .title-project a:hover {
    color: #FFA800;
}

.projects .project .wrap-button {
    padding: 0 20px 30px;
}

.projects .project .wrap-button .link-more {
    min-width: 180px;
}

@media only screen and (max-width: 768px) {
    .projects .project .wrap-button .link-more {
        width: 100%;
    }
}

/*Страница проекта*/
.planning {
    margin-bottom: 80px;
}

@media only screen and (max-width: 576px) {
    .planning {
        margin-bottom: 50px;
    }
}

.planning .plan .plan-title {
    font-size: 40px;
    font-size: 2.5rem;
    font-weight: 600;
    margin-bottom: 20px;
}

.planning .plan table.table-plan {
    max-width: 450px;
}

@media only screen and (max-width: 768px) {
    .planning .plan table.table-plan {
        width: 100%;
        max-width: none;
    }
}

.planning .plan table.table-plan tbody tr:last-child td {
    padding-bottom: 20px;
}

.planning .plan table.table-plan tbody tr td {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    padding: 10px;
}

@media only screen and (max-width: 576px) {
    .planning .plan table.table-plan tbody tr td {
        padding: 5px;
    }
}

.planning .plan table.table-plan tbody tr td:last-child {
    text-align: right;
}

.planning .plan table.table-plan tbody tr td span.count {
    border-radius: 50%;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 33px;
    height: 33px;
    margin-right: 30px;
    border: 1px solid #FFA800;
}

@media only screen and (max-width: 576px) {
    .planning .plan table.table-plan tbody tr td span.count {
        margin-right: 10px;
    }
}

.planning .plan table.table-plan tfoot {
    border-top: 1px solid #D1D1D4;
}

.planning .plan table.table-plan tfoot tr td {
    padding: 20px 10px;
}

.planning .plan table.table-plan tfoot tr td:last-child {
    text-align: right;
}

.planning .sheme-description {
    font-size: 16px;
    font-size: 1rem;
}

.planning .plan-image {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    margin-bottom: 30px;
}

.planning .plan-image:last-child {
    margin-bottom: 0;
}

.planning .plan-image img {
    -o-object-fit: cover;
    object-fit: cover;
}

.planning .plan-image .link-plan {
    border-radius: 6px;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 50px;
    height: 40px;
    position: absolute;
    left: 20px;
    bottom: 20px;
    background-color: #FFA800;
}

.planning .plan-image .link-plan:hover {
    background-color: rgb(216.75, 142.8, 0);
}

.planning .plan-image .link-plan svg {
    fill: #FFFFFF;
}

.review {
    margin-bottom: 80px;
}

@media only screen and (max-width: 576px) {
    .review {
        margin-bottom: 50px;
    }
}

.review .review-title {
    font-size: 40px;
    font-size: 2.5rem;
    font-weight: 600;
    text-transform: uppercase;
    text-align: center;
    margin-bottom: 30px;
}

@media only screen and (max-width: 768px) {
    .review .review-title {
        font-size: 32px;
        font-size: 2rem;
    }
}

@media only screen and (max-width: 576px) {
    .review .review-title {
        font-size: 24px;
        font-size: 1.5rem;
        margin-bottom: 20px;
    }
}

.review .review-item {
    border-radius: 10px;
    display: flex;
    align-items: center;
    padding: 30px;
    background-color: #F5F5F6;
}

@media only screen and (max-width: 768px) {
    .review .review-item {
        flex-direction: column;
    }
}

@media only screen and (max-width: 576px) {
    .review .review-item {
        padding: 15px 15px 30px;
    }
}

.review .review-item .review-logo {
    display: flex;
    justify-content: center;
    align-items: center;
    min-width: 250px;
    padding: 10px;
    margin-right: 80px;
}

@media only screen and (max-width: 992px) {
    .review .review-item .review-logo {
        margin-right: 30px;
        min-width: 200px;
    }
}

@media only screen and (max-width: 768px) {
    .review .review-item .review-logo {
        margin-right: 0;
        margin-bottom: 30px;
    }
}

@media only screen and (max-width: 576px) {
    .review .review-item .review-logo {
        padding: 0;
        margin-bottom: 15px;
    }
}

.review .review-item .review-content {
    flex-grow: 1;
}

.review .review-item .review-content .name {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 500;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
}

.review .review-item .review-content .name time {
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: 400;
}

.review .review-item .review-content .company {
    font-size: 14px;
    font-size: 0.875rem;
    margin-bottom: 12px;
}

.review .review-item .review-content .review-text {
    font-size: 14px;
    font-size: 0.875rem;
}

/*Страница 404*/
.error-404 {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin-top: 30px;
    margin-bottom: 80px;
}

@media only screen and (max-width: 992px) {
    .error-404 {
        margin-bottom: 40px;
    }
}

.error-404 svg {
    width: 300px;
    margin-bottom: 30px;
}

@media only screen and (max-width: 768px) {
    .error-404 svg {
        width: 200px;
    }
}

.error-404 h1 {
    font-weight: 600;
    margin-bottom: 15px;
}

.error-404 p {
    font-size: 16px;
    font-size: 1rem;
    color: #8A8A90;
    margin-bottom: 15px;
}

/*Ничего не найдено*/
.no-results .page-title {
    font-weight: 600;
    margin-bottom: 15px;
}

.no-results p {
    font-size: 16px;
    font-size: 1rem;
    color: #8A8A90;
    font-weight: 400;
    margin-bottom: 15px;
}

.no-results form {
    width: 100%;
    position: relative;
}

@media only screen and (max-width: 768px) {
    .no-results form {
        margin: 0 auto 35px;
    }
}

.no-results form .screen-reader-text {
    display: none;
}

.no-results form label {
    width: 100%;
}

.no-results form input[type=search] {
    transition: all 0.2s linear;
    border-radius: 10px;
    font-size: 16px;
    font-size: 1rem;
    border: 1px solid #8A8A90;
    width: 100%;
    padding: 8px;
    outline: none;
    background-color: #FFFFFF;
}

.no-results form input[type=search]:focus {
    border-color: #FFA800;
}

.no-results form input[type=submit],
.no-results form button[type=submit] {
    background: none;
    border: none;
    outline: none;
    width: 40px;
    line-height: 40px;
    padding: 0;
    position: absolute;
    top: 0;
    right: 0;
}

.no-results form input[type=submit]:hover,
.no-results form button[type=submit]:hover {
    cursor: pointer;
}

.no-results form button[type=submit]:hover svg {
    fill: #FFA800;
}

.no-results form button[type=submit] svg {
    transition: all 0.2s linear;
    fill: #222222;
}

/*--------------------------------------------------------------
# Комментарии
--------------------------------------------------------------*/
.comment-content a {
    word-wrap: break-word;
}

.bypostauthor {
    display: block;
}

/*Блоки с комментариями*/
.comment-area {
    margin-bottom: 40px;
}

.comment-area .comment-title {
    display: flex;
    justify-content: space-between;
    overflow: hidden;
    margin-bottom: 15px;
}

@media only screen and (max-width: 576px) {
    .comment-area .comment-title {
        display: block;
    }
}

.comment-area .comment-title h3 {
    font-size: 24px;
    font-size: 1.5rem;
    font-weight: normal;
}

.comment-area .comment-title a {
    font-size: 14px;
    font-size: 0.875rem;
    color: #FFA800;
    line-height: 35px;
    font-weight: normal;
    display: block;
    float: right;
    text-decoration: none;
}

@media only screen and (max-width: 576px) {
    .comment-area .comment-title a {
        float: left;
    }
}

.comment-area .comment-title a:hover {
    text-decoration: underline;
}

.comment-area .commentlist {
    padding-left: 0;
}

.comment-area .commentlist li {
    list-style-type: none;
}

.comment-area .comment-box {
    border-radius: 20px;
    padding: 15px;
    margin-bottom: 20px;
    border: 1px solid #D1D1D4;
    position: relative;
    display: flex;
    justify-content: space-between;
}

@media only screen and (max-width: 768px) {
    .comment-area .comment-box {
        padding: 10px 10px 20px;
    }
}

.comment-area .comment-box figure {
    margin-right: 15px;
}

.comment-area .comment-box figure img {
    border-radius: 20px;
}

.comment-area .comment-box .comment-inner {
    width: 100%;
}

.comment-area .comment-box .comment-name {
    overflow: hidden;
    border-bottom: 1px solid #D1D1D4;
    margin-bottom: 10px;
}

.comment-area .comment-box .comment-name h3 {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 500;
    display: inline-block;
    margin-right: 10px;
}

.comment-area .comment-box .comment-name h3 a {
    font-size: 16px;
    font-size: 1rem;
    color: #FFA800;
    display: inline-block;
    margin-right: 10px;
}

.comment-area .comment-box .comment-name .comment-info {
    font-size: 13px;
    font-size: 0.8125rem;
    color: #8A8A90;
    font-weight: normal;
    margin-bottom: 6px;
}

.comment-area .comment-box p {
    font-size: 16px;
    font-size: 1rem;
    color: #222222;
    font-weight: normal;
}

.comment-area .comment-box .comment-reply-link {
    font-size: 14px;
    font-size: 0.875rem;
    color: #FFA800;
    font-weight: normal;
    position: relative;
}

.comment-area .comment-box .comment-reply-link:hover {
    color: rgb(216.75, 142.8, 0);
    text-decoration: none;
}

.comment-area .comment-box .comment-reply-link:hover svg {
    fill: rgb(216.75, 142.8, 0);
}

.comment-area .comment-box .comment-reply-link svg {
    transition: all 0.2s linear;
    fill: #FFA800;
}

.comment-area .comment-box .comment-edit-link {
    font-size: 14px;
    font-size: 0.875rem;
    color: green;
    font-weight: normal;
}

@media only screen and (max-width: 576px) {
    .comment-area .children {
        padding-left: 20px;
    }
}

.comment-area .children .comment-box:before {
    display: none;
}

.comment-area .replay-comment {
    margin-left: 50px;
}

@media only screen and (max-width: 576px) {
    .comment-area .replay-comment {
        margin-left: 25px;
    }
}

.comment-area .replay-comment:before {
    display: none;
}

.comment-area .comment-navigation {
    margin: 0 0 1.45em;
}

.comment-area .comment-navigation h2 {
    font-size: 20px;
    font-size: 1.25rem;
    font-weight: normal;
    margin-bottom: 15px;
}

@media (max-width: 576px) {
    .comment-area .comment-navigation h2 {
        text-align: center;
    }
}

.comment-area .comment-navigation .nav-links {
    overflow: hidden;
}

.comment-area .comment-navigation .nav-links .nav-previous a,
.comment-area .comment-navigation .nav-links .nav-next a {
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: normal;
    display: inline-block;
    padding: 5px 10px;
    margin-bottom: 1em;
}

.comment-area .comment-navigation .nav-links .nav-previous a:hover,
.comment-area .comment-navigation .nav-links .nav-next a:hover {
    text-decoration: none;
}

.comment-area .comment-navigation .nav-links .nav-previous {
    float: left;
}

.comment-area .comment-navigation .nav-links .nav-next {
    float: right;
}

/*Форма комментариев*/
.comment-respond .comment-title {
    margin-bottom: 5px;
}

.comment-respond .comment-title h3 {
    font-size: 20px;
    font-size: 1.25rem;
    font-weight: normal;
    width: 100%;
    margin-bottom: 0;
}

.comment-respond .comment-notes {
    font-size: 14px;
    font-size: 0.875rem;
    line-height: 14px;
}

.default-form {
    margin-bottom: 60px;
}

.default-form input:not([type=checkbox]) {
    width: 100%;
    margin-bottom: 15px;
}

.default-form textarea {
    display: block;
    width: 100%;
    margin-bottom: 15px;
}

.default-form button[type=submit] {
    margin: 0;
    width: auto;
}

/*Отступы для ответов на комментарии*/
.comment-area .margin-left {
    margin-left: 30px;
}

/*--------------------------------------------------------------
# Галерея
--------------------------------------------------------------*/
.gallery {
    font-size: 0;
    margin-bottom: 30px;
    display: flex;
    flex-wrap: wrap;
}

.gallery-item {
    display: inline-block;
    text-align: center;
    vertical-align: top;
    width: 100%;
    box-sizing: border-box;
    padding: 10px;
    margin: 0;
}

.gallery-item figcaption {
    font-size: 14px;
}

.gallery-item .gallery-icon {
    height: 100%;
}

.gallery-item a {
    display: block;
    outline: none;
    height: 100%;
}

.gallery-item a img {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

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

.gallery-columns-3 .gallery-item {
    max-width: 33.33%;
}

@media only screen and (max-width: 576px) {
    .gallery-columns-3 .gallery-item {
        max-width: 50%;
    }
}

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

@media only screen and (max-width: 576px) {
    .gallery-columns-4 .gallery-item {
        max-width: 50%;
    }
}

.gallery-columns-5 .gallery-item {
    max-width: 20%;
}

@media only screen and (max-width: 576px) {
    .gallery-columns-5 .gallery-item {
        max-width: 50%;
    }
}

.gallery-columns-6 .gallery-item {
    max-width: 16.66%;
}

@media only screen and (max-width: 576px) {
    .gallery-columns-6 .gallery-item {
        max-width: 50%;
    }
}

.gallery-columns-7 .gallery-item {
    max-width: 14.28%;
}

@media only screen and (max-width: 576px) {
    .gallery-columns-7 .gallery-item {
        max-width: 25%;
    }
}

.gallery-columns-8 .gallery-item {
    max-width: 12.5%;
}

@media only screen and (max-width: 576px) {
    .gallery-columns-8 .gallery-item {
        max-width: 25%;
    }
}

.gallery-columns-9 .gallery-item {
    max-width: 11.11%;
}

@media only screen and (max-width: 576px) {
    .gallery-columns-9 .gallery-item {
        max-width: 25%;
    }
}

.gallery-caption {
    display: block;
}

/*--------------------------------------------------------------
# Подвал
--------------------------------------------------------------*/
/*Подвал сайта*/
.site-footer {
    color: #FFFFFF;
    padding: 30px 0 15px;
    background-color: #41434B;
}

.site-footer .footer-logo img {
    max-width: 200px;
    max-height: 100px;
}

@media only screen and (max-width: 768px) {
    .site-footer .footer-logo {
        display: flex;
        justify-content: center;
    }
}

.site-footer .footer-menu {
    padding: 20px 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid #8A8A90;
}

@media only screen and (max-width: 768px) {
    .site-footer .footer-menu {
        flex-direction: column;
    }
}

.site-footer .footer-menu ul {
    list-style: none;
    padding-left: 0;
    margin: 0;
    display: flex;
}

@media only screen and (max-width: 768px) {
    .site-footer .footer-menu ul {
        margin-bottom: 15px;
    }
}

.site-footer .footer-menu ul li {
    margin-right: 60px;
}

@media only screen and (max-width: 768px) {
    .site-footer .footer-menu ul li {
        margin-right: 20px;
    }
}

.site-footer .footer-menu ul li:last-child {
    margin-right: 0;
}

.site-footer .footer-menu ul li a {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 500;
    color: #FFFFFF;
    text-decoration: none;
    padding: 5px 0;
    display: block;
}

.site-footer .footer-menu ul li a:hover {
    color: #FFA800;
}

.site-footer .footer-contact {
    padding: 20px 0;
    display: flex;
    margin-bottom: 30px;
}

@media only screen and (max-width: 768px) {
    .site-footer .footer-contact {
        flex-direction: column;
        justify-content: center;
        align-items: center;
        margin-bottom: 15px;
    }
}

.site-footer .phone {
    display: flex;
    align-items: center;
    margin-right: 40px;
}

@media only screen and (max-width: 768px) {
    .site-footer .phone {
        margin-right: 0;
        margin-bottom: 15px;
    }
}

.site-footer .phone .link-phone {
    color: #FFFFFF;
    text-decoration: none;
    margin-right: 10px;
    display: inline-flex;
    align-items: center;
}

.site-footer .phone .link-phone:hover {
    color: #FFA800;
}

.site-footer .phone .link-phone svg {
    fill: #FFFFFF;
    margin-right: 15px;
}

.site-footer .phone .call-back {
    color: #FFA800;
    display: inline-block;
}

.site-footer .phone .call-back:hover {
    text-decoration: none;
}

.site-footer ul.messengers {
    list-style: none;
    display: flex;
    align-items: center;
    padding: 0;
    margin: 0 40px 0 0;
}

@media only screen and (max-width: 768px) {
    .site-footer ul.messengers {
        margin: 0;
    }
}

.site-footer ul.messengers li {
    margin-right: 20px;
}

.site-footer ul.messengers li:last-child {
    margin-right: 0;
}

.site-footer ul.messengers li a {
    color: #FFFFFF;
    text-decoration: none;
}

.site-footer ul.messengers li a:hover {
    color: #FFA800;
}

.site-footer ul.messengers li a svg {
    fill: #FFFFFF;
    margin-right: 6px;
}

.site-footer .copy {
    display: flex;
    align-items: center;
}

@media only screen and (max-width: 992px) {
    .site-footer .copy {
        flex-wrap: wrap;
        justify-content: center;
    }
}

.site-footer .copy a, .site-footer .copy p {
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: 600;
    margin: 0 30px 0 0;
}

@media only screen and (max-width: 768px) {
    .site-footer .copy a, .site-footer .copy p {
        margin-right: 0;
        margin-bottom: 30px;
    }
}

@media only screen and (max-width: 576px) {
    .site-footer .copy a, .site-footer .copy p {
        margin-bottom: 15px;
    }
}

@media only screen and (max-width: 768px) {
    .site-footer .copy a {
        flex-basis: 50%;
    }
}

@media only screen and (max-width: 576px) {
    .site-footer .copy a {
        flex-basis: 100%;
        text-align: center;
    }
}

@media only screen and (max-width: 768px) {
    .site-footer .copy a:last-of-type {
        text-align: right;
    }
}

@media only screen and (max-width: 576px) {
    .site-footer .copy a:last-of-type {
        text-align: center;
    }
}

.site-footer .copy > a {
    color: #8A8A90;
    text-decoration: none;
}

.site-footer .copy > a:hover {
    color: #FFA800;
}

@media only screen and (max-width: 992px) {
    .site-footer .copy p.copyrights {
        text-align: center;
        margin-top: 15px;
        order: 4;
        flex-basis: 100%;
    }
}

.site-footer .copy ul.footer-socials {
    list-style: none;
    padding-left: 0;
    margin: 0;
    display: flex;
}

@media only screen and (max-width: 768px) {
    .site-footer .copy ul.footer-socials {
        justify-content: center;
        flex-basis: 100%;
        margin-bottom: 30px;
    }
}

@media only screen and (max-width: 576px) {
    .site-footer .copy ul.footer-socials {
        margin-top: 15px;
    }
}

.site-footer .copy ul.footer-socials li {
    margin-right: 10px;
}

.site-footer .copy ul.footer-socials li:last-child {
    margin-right: 0;
}

.site-footer .copy ul.footer-socials li a {
    border-radius: 50%;
    padding: 8px;
    width: 32px;
    height: 32px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0;
    box-shadow: 1px 1px 5px 4px #383941;
}

.site-footer .copy ul.footer-socials li a:hover svg {
    fill: #FFA800;
}

.site-footer .copy ul.footer-socials li a svg {
    transition: all 0.2s linear;
    fill: #FFFFFF;
}

/*Лоадер отправки формы*/
.form-submitting {
    display: none;
    justify-content: center;
    align-items: center;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1200;
    background-color: rgba(56, 57, 65, 0.9);
}

.form-submitting.loading {
    display: flex;
}

.form-submitting .spinner svg {
    animation: spin 3s infinite ease;
}

@media only screen and (max-width: 576px) {
    .form-submitting .spinner svg {
        width: 60px;
        height: 60px;
    }
}

/*Кнопка наверх*/
#toTop {
    border-radius: 50px;
    transition: all 0.2s linear;
    font-size: 14px;
    font-size: 0.875rem;
    color: #FFFFFF;
    font-weight: 300;
    text-decoration: none;
    text-align: center;
    height: 40px;
    background: #FFA800;
    padding: 12px 20px;
    position: fixed;
    bottom: 40px;
    right: 40px;
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 98;
}

#toTop:hover {
    color: #FFFFFF;
    bottom: 42px;
    background-color: rgb(216.75, 142.8, 0);
}

#toTop:hover svg {
    fill: #FFFFFF;
}

#toTop svg {
    transition: all 0.2s linear;
    fill: #FFFFFF;
    margin-right: 10px;
}

@media only screen and (max-width: 768px) {
    #toTop {
        height: auto;
        padding: 10px;
        right: 10px;
        bottom: 10px;
    }

    #toTop:hover {
        bottom: 15px;
    }

    #toTop span {
        display: none;
    }

    #toTop svg {
        margin: 0;
    }
}

/*--------------------------------------------------------------
# Плагины
--------------------------------------------------------------*/
/*Стили ContactForm7*/
.wpcf7 {
    margin: 0 auto;
}

.wpcf7 input[type=text],
.wpcf7 input[type=search],
.wpcf7 input[type=url],
.wpcf7 input[type=tel],
.wpcf7 input[type=number],
.wpcf7 input[type=range],
.wpcf7 input[type=date],
.wpcf7 input[type=month],
.wpcf7 input[type=week],
.wpcf7 input[type=time],
.wpcf7 input[type=datetime],
.wpcf7 input[type=datetime-local],
.wpcf7 input[type=color],
.wpcf7 input[type=email],
.wpcf7 input[type=file],
.wpcf7 input[type=submit],
.wpcf7 select,
.wpcf7 textarea {
    margin-bottom: 4px;
}

.wpcf7 .screen-reader-response {
    display: none;
}

.wpcf7 input[type=submit] {
    display: block;
    margin: 0 auto;
}

.wpcf7 .wpcf7-form label {
    width: 100%;
}

.wpcf7 form .wpcf7-form-control-wrap {
    display: block;
    margin-bottom: 15px;
}

.wpcf7 form .wpcf7-response-output {
    font-size: 12px;
    font-size: 0.75rem;
    margin-top: 5px;
}

.wpcf7 form .wpcf7-not-valid-tip {
    font-size: 12px;
    font-size: 0.75rem;
    display: inline-block;
    margin-left: 10px;
}

.wpcf7 form .wpcf7-validation-errors {
    font-size: 12px;
    font-size: 0.75rem;
}

.wpcf7 form .wpcf7-spinner {
    display: none;
}
/*# sourceMappingURL=style.css.map */
