/*!
Theme Name: locksmith
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: locksmith
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready
*/
* {
	box-sizing: border-box;
	margin: 0;
}

body  {
	margin: 0;
	padding: 0;
    font-family: 'IBM Plex Sans', sans-serif;
    overflow-x: hidden;
}

img {
	width: 100%;	
}

input, textarea {
    -webkit-appearance: none;
    border-radius: 0;
}

.fade {
	opacity: 0;
	transform: translateY(80%);
	transition-duration: .5s;
}

.faded {
	opacity: 1;
	transform: translateY(0);
}

.header {
	border-bottom: 2px solid #F1F1F1;
}

.burger {
	display: none;
}

.header__top {
	background: #128C5D;
	padding: 10px 0;
	height: 45px;
	position: fixed;
	width: 100%;
	z-index: 10;
}

.header__top .container {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
}

.header__working {
	color: #F7C63E;
}

.header__contacts a {
	color: #fff;
	text-decoration: none;
	font-weight: 600;
	display: inline-flex; /* Делаем ссылку flex-контейнером, чтобы она оставалась в строке с другими */
    align-items: center;    /* Выравниваем иконку и текст по вертикали (по центру) */
    vertical-align: middle; /* Это можно оставить для выравнивания самой inline-flex ссылки относительно других элементов, если они есть рядом */
}

.header__contacts a:not(:last-of-type) {
	margin-right: 70px;
	font-weight: normal;
}

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

.header__menu {
	padding: 70px 0 30px;
}

.header__menu .container {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.header__logo {
	margin-right: 150px;
}

.header__nav {
	flex-grow: 1;
	height: 100%;
}

.menu {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
	padding: 0;
	margin: 0;
	list-style-type: none;
}

.menu a {
	color: #304045;
	text-decoration: none;
	font-size: 18px;
	font-weight: 600;
	padding: 28px 10px;
}

.menu a:hover {
	color: #128C5D;
}

.menu-item-home-mobile-only,
.menu-item-blog-mobile-only {
    display: none;
}

.sub-menu {
	display: none;
}

.menu-item {
	position: relative;
}

.menu-item ul {
	position: absolute;
	border: 2px solid #F1F1F1;
	background: #fff;
	list-style-type: none;
	width: auto;
	white-space: nowrap;
	padding: 0;
	top: 50px;
	left: -21px;
	z-index: 10;
}

.menu-item ul li {
	padding: 10px 20px;
}

.menu-item ul li a {
	font-weight: normal;
}

.menu-item ul li:not(:last-of-type) {
	border-bottom: 2px solid #F1F1F1;
}

.menu-item ul li:hover {
	background: #128C5D;
}

.menu-item ul li:hover a {
	color: #fff;
}

.home-heading .container {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	padding: 200px 0;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center right;
}

.home-heading__titles {
	width: 50%;
	margin-right: 8.3%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;	
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
}

.title {
	font-size: 42px;
	color: #304045;
	line-height: 1.2;
}

h1 {
	margin: 0;
}

.home-heading__titles h1 {
	margin-bottom: 35px;
}

.home-heading__sub-heading {
	color: #304045;
	font-size: 18px;
	width: 90%;
}

@keyframes vibrate-icon {
    0%, 100% {
        transform: translateY(0) rotate(0deg);
    }
    25% {
        transform: translateY(-2px) rotate(3deg); /* Подпрыгнули, чуть вправо */
    }
    50% {
        transform: translateY(1px) rotate(0deg);  /* Чуть присели, ровно */
    }
    75% {
        transform: translateY(-2px) rotate(-3deg);/* Подпрыгнули, чуть влево */
    }
}

.order-btn {
	background: #F7C63E;
	border: none;
	color: #304045; /* Темный цвет текста (и для иконки по умолчанию через fill: currentColor) */
	font-weight: 600;
	font-size: 18px;
	padding: 15px 60px;
	display: inline-flex;   /* Для выравнивания иконки и текста */
	align-items: center;    /* Вертикальное выравнивание */
    justify-content: center; /* Горизонтальное выравнивание */
	text-decoration: none;
	margin-top: 30px;
 	/* transition-duration: .3s; - можно заменить на более полное правило для фона и цвета */
    transition: background-color 0.3s ease, color 0.3s ease;
}

/* Общие стили для ОБЕИХ иконок */
.order-btn-icon { /* Этот класс должен быть у ОБЕИХ <img> иконок */
    width: 18px;
    height: 18px;
	margin-right: 10px; /* Отступ иконки от текста "Заказать" */
    max-width: none; /* Сброс глобального img { width: 100%; } */
    display: inline-block; /* Чтобы margin-right работал */
    fill: currentColor; /* - убираем, так как иконки уже цветные (серая и белая) */
    /* Их цвета не будут меняться от цвета текста кнопки */
}

/* Иконка для ховера (белая, НЕ вибрирует, НЕ крутится) */
.order-btn .icon-hover {
    display: none;      /* Изначально скрыта */
	fill: #fff; /* Если phone-white.svg должен краситься в белый через CSS (но он и так белый) */
    margin-right: 10px; /* Такой же отступ, как у .icon-default, чтобы текст не прыгал */
}

/* Иконка по умолчанию (серая, вибрирует) */
.order-btn .icon-default {
    /* display: inline-block; - уже есть от .order-btn-icon */
	fill: currentColor; /* Если phone-gray.svg должен краситься цветом текста .order-btn (#304045) */
                            /* Если он уже серый, то это не нужно */
    margin-right: 10px; /* Отступ от текста "Заказать" */
    animation: vibrate-icon 1s infinite ease-in-out;
    transform-origin: center center; /* Для корректной анимации rotate из vibrate-icon */
}

/* Состояние кнопки при НАВЕДЕНИИ */
.order-btn:hover {
	background: #128C5D;
	color: #fff;
}

.order-btn:hover .icon-default {
    display: none; /* Скрываем иконку по умолчанию */
}

.order-btn:hover .icon-hover {
    display: inline-block; /* Показываем иконку для ховера */
}

.home-services {
	background: #F1F1F1;
	padding: 90px 0;
}

.home-services .container {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;	
}

.home-services__img {
	width: 50%;	
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;	
	align-items: center;
}

.home-services_content {
	width: 50%;	
	position: relative;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;	
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

.home-services__title {
	font-size: 36px;	
	color: #304045;
	font-weight: 600;
	margin-bottom: 35px;
	width: 290px;
	text-align: left;	
	text-align: center;	
}

.home-services__links {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
}

.home-services__link {
	color: #304045;
	font-size: 18px;	
	font-weight: 600;
	text-decoration: none;
	padding: 13px 25px;
	background: #F7C63E;
	width: 240px;	
	text-align: center;	
	margin-bottom: 20px;	
	transition-duration: .3s;
}

.home-services__link:hover {
	background: #128C5D;
	color: #fff;
}

.home-advantages {
	margin: 90px 0;
}

.home-advantages .container {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
}

.home-advantages__text {
	width: 41%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.home-advantages__img {
	width: 53%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	align-items: center;
	margin-left: auto;
}

.home-advantages__title {
	font-size: 36px;
	font-weight: 600;
	color: #304045;
	margin-bottom: 25px;
	line-height: 1.2;
}

.home-advantages__list {
	list-style-type: square;
	padding-left: 21px;
	margin: 0;
}

.home-advantages__list li {
	font-size: 18px;
	color: #304045;
	line-height: 2;
}

.home-advantages__list li::marker {
	color: #304045;	
}

.home-prices {
	background: #F1F1F1;
	padding: 90px 0;
}

.home-prices .container {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
}

.home-prices__img {
	width: 41.7%;
	position: relative;
	margin-right: 8.3%;
	text-align: center;
}

.home-prices__img img {
 	height: 100%;
 	width: 350px;
/* 	width: 100%; */
}

.home-prices__content {
	width: 50%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding-left: 40px;
}

.home-prices__title {
	font-size: 36px;
	font-weight: 600;
	color: #304045;
	margin-bottom: 35px;
	width: 80%;
}

.home-prices__title span {
	color: #128C5D;
	font-weight: normal;
	font-size: 36px;
	margin-top: 15px;
}

.home-prices__list-title {
	font-size: 28px;
	color: #304045;
	font-weight: 600;
	margin-bottom: 14px;
}

.home-prices__list-list {
	list-style-type: square;
	padding-left: 20px;
	margin: 0;
}

.home-prices__content > div:last-of-type {
	margin-top: 35px;
}

.home-prices__list-list li {
	font-size: 18px;
	color: #304045;
	line-height: 36px;
	padding-left: 8px;
}

.home-prices__list-list li::marker {
	color: #304045;	
}

.home-prices__list-list li span {
	color: #128C5D;
	font-weight: 600;
}

.home-process {
	margin: 90px 0 40px;
}

.home-process__title {
	font-size: 36px;
	font-weight: 600;
	color: #304045;
	margin-bottom: 50px;
	text-align: center;
}

.home-process__row {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-evenly;
}

.home-process__item {
	margin-bottom: 50px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-direction: column;
	align-items: center;
}

.home-process__item img {
	height: 200px;
	margin-bottom: 30px;
}

.home-process__item div {
	width: 250px;
	font-size: 18px;
	color: #304045;
	text-align: center;
}

.home-sertificates {
	background: #F1F1F1;
	padding: 90px 0;
}

.home-sertificates .container {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	height: 100%;
	align-items: center;
}

.home-sertificates__content h2, .home-sertificates__content h3 {
	color: #304045;
	font-size: 16px;
	margin-bottom: 14px;
}

.home-sertificates__content p {
	line-height: 1.2;
}

.home-sertificates__content ul {
	list-style-type: square;
	width: 85%;
}

.home-sertificates__content li::marker {
	color: #304045;
}

.home-sertificates__content > p:last-of-type, .home-sertificates__content > ul, .home-sertificates__content > ol {
	margin-bottom: 40px;
}

.accordion-block {
	position: relative;
}

.accordion-block:not(:last-of-type) {
	margin-bottom: 40px;
}

.accordion-block .wp-block-group__inner-container {
	position: relative;
}

.home-sertificates__content p, .home-sertificates__content h3, .home-sertificates__content h2 {
	width: 85%;
	margin-bottom: 8px;
}

.home-sertificates__content .hidden-text {
	height: 0;
	opacity: 0.4;
	overflow: hidden;
	transition-duration: .3s;
	width: 85%;
}

.home-sertificates__content .hidden-text > *:not(:last-child) {
	margin-bottom: 8px;
}

.home-sertificates__content .hidden-text.text-active {
	height: auto;
	opacity: 1;
}

.read-more {
	position: absolute;
	top: 0;
	right: 0;
	border: 1px solid #304045;
	border-radius: 50%;
	width: 42px;
	height: 42px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 17px;
	cursor: pointer;
	background-image: url('https://locksmith-services.net/wp-content/themes/locksmith/img/plus.svg');
}

.read-more.plus-active {
	background-image: url('https://locksmith-services.net/wp-content/themes/locksmith/img/minus.svg');
}

.home-sertificates__title {
	font-size: 40px;
	font-weight: 600;
	color: #128C5D;
	margin-bottom: 25px;
}

.home-sertificates__text {
	font-size: 18px;
	color: #304045;
}

.home-feedback {
	background: #304045;
}

.home-feedback .container {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	position: relative;
	padding: 70px 0;
	justify-content: center;
}

.home-feedback__form {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-direction: column;
}

.home-feedback__form br {
	display: none;
}

.home-feedback__form p {
	margin: 0;
}

.home-feedback__title {
	font-size: 36px;
	font-weight: 600;
	color: #fff;
	margin-bottom: 12px;
	text-align: center;
}

.home-feedback__subtitle {
	color: #fff;
	font-size: 16px;
	margin-bottom: 12px;
}

form {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-direction: column;
}

form span {
	display: block;
	height: 50px;
	text-align: center;
}

form span:not(.ajax-loader) {
	margin-bottom: 30px;
}

form span.your-message {
	margin-bottom: 40px;
}

form span input {
	width: 350px;
	height: 50px;
	font-family: 'IBM Plex Sans', sans-serif;
	padding-left: 15px;
	border: none;
	box-sizing: border-box;
}

form span input[placeholder] {
	font-size: 16px;
}

form span textarea {
	box-sizing: border-box;
	width: 350px;
	height: 100%;
	font-family: 'IBM Plex Sans', sans-serif;
	padding-left: 15px;
	resize: none;
	border: none;
	font-size: 16px;
}

form span textarea[placeholder] {
	font-size: 16px;
	padding-top: 15px;
}

form input[type="submit"], .form-button {
	background: #F7C63E;
	border: none;
	color: #304045;
	font-weight: 600;
	font-size: 18px;
	padding: 15px 75px;
	font-family: 'IBM Plex Sans', sans-serif;
	display: block;
	margin: 0 auto;
	transition-duration: .3s;
	cursor: pointer;
	text-align: center;
}

.form-button {
	text-decoration: none;
}

form input[type="submit"]:hover, .form-button:hover {
	background: #128C5D;
	color: #fff;
}

.home-feedback__map {
	width: 50%;
	padding-right: 70px;
}

.home-feedback__map img {
	max-width: 360px;
	padding-left: 100px;
}

.breadcrumbs {
	padding: 20px 0;
}

.breadcrumbs .container > span {
	color: #304045;
	position: relative;
}

.breadcrumbs .container > span:not(:last-of-type) a span {
	color: #304045;
	margin-right: 36px;
}

.breadcrumbs .container > span:not(:last-of-type) a span:hover {
	text-decoration: underline;
}

.breadcrumbs .container > span:not(:last-of-type):after {
	content: '';
	position: absolute;
	width: 10px;
	height: 10px;
	background: #128C5D;
	top: 6px;
	right: 13px;
}

.breadcrumbs span a {
	text-decoration: none;
}

.breadcrumbs span a span {
	color: #838c8f;
}

.services__top .container {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
}

.services__top-heading {
	width: 65%;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center right;
}

.services__top-heading h1 {
	color: #304045;
	text-align: center;
	margin-top: 25px;
	font-size: 42px;
	background: rgba(255, 255, 255, .8);
	padding: 20px 0;
}

.services__top-form {
	width: 35%;
	background: #304045;
	padding: 35px;
	height: 450px;
	display: flex;
    align-items: center;
    justify-content: center;
}

.services__top-form-content {
	display: block;
}

.services__top-form br {
	display: none;
}

.services__top-form .form-button-subtitle {
	font-size: 14px; /* небольшой размер */
	color: #ffffff; /* фон .services__top-form темный (#304045), поэтому текст белый */
	text-align: center; /* по центру, как и кнопка */
	margin-top: 15px; /* Отступ сверху от кнопки */
	line-height: 1.4; /* Для лучшей читаемости, если текст в несколько строк */
	opacity: 0.9; /* Можно сделать немного прозрачнее, если нужно выделить кнопку больше */
}

.services__top-form-name {
	color: #fff;
	font-size: 28px;
	font-weight: 700;
	text-align: center;
}

.services__top-form-price {
	font-size: 28px;
	color: #fff;
	text-align: center;
	margin-bottom: 25px;
}

.services__top-form-price span {
	color: #F7C63E;
}

.services__top-form form > p {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-direction: column;
	margin: 0;
}

.services__top-form form > p span {
	width: 100%;
	margin-bottom: 20px;
	height: auto;
}

.services__top-form input {
	width: 100%;
	height: 40px;
}

.services__top-form textarea {
	height: 85px;
	width: 100%;
}

.services__top-form input[type="submit"], .services__top-form .form-button {
	width: 100%;
	height: 50px;
	font-size: 18px;
	letter-spacing: 0.5px;
	line-height: 50px;
    padding-top: 0;
    padding-bottom: 0;
}

.services__desc {
	padding: 90px 0;
	background: #F1F1F1;
}

.services__desc .container {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
}

.services__desc-list {
	width: 40%;
	margin-right: 10%;
}

.services__desc-list div {
	font-size: 36px;
	color: #304045;
	font-weight: 700;
	margin-bottom: 25px;
	line-height: 1.2;
}

.services__desc-list ul {
	padding: 0 0 0 21px;
	list-style-type: square;
}

.services__desc-list ul li {
	line-height: 2;
	font-size: 18px;
	color: #304045;
	position: relative;
}

.services__desc-img {
	width: 50%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	align-items: center;
}

.blog-title {
	font-size: 36px;
	color: #128C5D;
	text-align: center;
	font-weight: bold;
	margin: 50px 0px 50px;
}

.blog-list h2 a {
	color: inherit;
	text-decoration: none;
}

.blog-list h2 a:hover {
	text-decoration: underline;
}

.blog__text article {
	height: auto;
	overflow-y: unset;
	margin: 40px 0;	
}

.blog__text article a {
	color: #128C5D;
}

.blog__text article img {
	height: auto;
}

.blog__text .container {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
}

.blog-list .container {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
}

.blog_item {
	flex: 1 1 30%;
	max-width: calc(100% / 3 - 20px);
	box-shadow: 0 6px 10px rgba(70,86,132,.08);
	margin-bottom: 40px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-direction: column;
	cursor: pointer;
	transition-duration: .3s;
}

.blog_item:hover {
	box-shadow: 0 6px 10px rgba(70,86,132,.2);
}

.blog_item:nth-child(3n + 2) {
	margin: 0px 30px 40px;
}

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

.blog_item a {
	margin-bottom: auto;
    width: auto;
    height: 200px;
    overflow: hidden;
}
.blog_item a img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.blog_item h2 {
	font-size: 24px;
	padding: 0px 10px;
/* 	Делаем флекс для центрирования заголовков по вертикали */
    display: flex;
    align-items: center; /* Вертикальное центрирование */
    justify-content: center; /* Горизонтальное центрирование */
    min-height: 60px; /* фиксирую высоту, иначе бида */
    box-sizing: border-box;
    flex-grow: 0;
    flex-shrink: 0;
    height: 60px; /* фиксирую высоту, иначе бида */
    flex-basis: 60px; /* фиксирую высоту, иначе бида */
    text-align: center; /* Если justify-content: center для <a> не сработает из-за ее display */
}
/* 	Делаем флекс для центрирования заголовков по вертикали */
.blog_item h2 a {
    display: inline-block;
    color: inherit;
    text-decoration: none;
    display: contents; /* Cбственно центрирование */
}

article h2 {
	font-size: 36px;
	font-weight: 700;
	color: #128C5D;
}

article h3 {
	font-size: 28px;
	font-weight: 700;
	color: #128C5D;
}

article p, article li {
	color: #304045;
	font-size: 16px;
}

.other-services {
	padding: 90px 0;
}

.other-services__title {
	font-size: 36px;
	font-weight: 700;
	color: #304045;
	margin-bottom: 35px;
	text-align: center;
}

.other-services__certain {
	background: #F1F1F1;
	padding: 35px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-direction: column;
}

.other-services__certain:nth-child(2) {
	margin: 0 30px;
}

.other-services__certain img {
	margin-bottom: auto;
}

.other-services__certain-title {
	margin-top: 15px;
	margin-bottom: 5px;
	font-size: 20px;
	font-weight: 700;
	color: #304045;
}

.other-services__certain-desc {
	color: #304045;
	margin-bottom: 15px;
}

.other-services__certain-link {
	background: #F7C63E;
	color: #304045;
	padding: 12px 35px;
	font-weight: bold;
	text-decoration: none;
	display: inline-block;
	transition-duration: .3s;
}

.other-services__certain-link:hover {
	background: #128C5D;
	color: #fff;
}

.other-services__all {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
}

.contacts-page {
	padding: 70px 0;
}

.contacts-page .container {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
}

.contacts-content {
	background: #128C5D;
	width: 85%;
	height: 450px;
	margin-left: 100px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.contacts-content div:first-of-type {
	margin-bottom: 40px;
	color: #fff;
	font-weight: 700;
	font-size: 44px;
	margin-left: 80px;
}

.contacts-content a {
	margin-bottom: 30px;
	font-size: 18px;
	color: #fff;
	text-decoration: none;
	margin-left: 80px;
}

.contacts-content div:last-of-type {
	font-size: 24px;
	color: #fff;
	font-weight: 700;
	margin-left: 80px;
}

.contacts-image {
	flex-grow: 1;
	text-align: center;
}

.contacts-image img {
	width: 400px;
}

.contacts-page .services__top-form {
	margin-left: 100px;
}

.contacts-page .services__top-form-name {
	text-align: center;
	font-size: 36px;
	line-height: 1.2;
	margin-bottom: 10px;
}

.contacts-page .services__top-form-price {
	font-size: 16px;
	text-align: left;
	margin-bottom: 25px;
}

.p404 {
    padding: 40px 0 100px;
}

.p404 .container {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.err {
    font-size: 200px;
    font-weight: 700;
    color: #128C5D;
}

.not-found {
    font-size: 32px;
    text-align: center;
    margin-bottom: 30px;
    color: #304045;
}

.use-search {
    font-size: 22px;
    margin-bottom: 20px;
    color: #304045;
}

.use-search a {
    color: #128C5D;
}

.footer {
	background: #128C5D;
	padding-top: 50px;
}

.footer .container {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
}

.footer__logo img {
	width: 70%;
}

.footer__logo div {
	color: #fff;
	font-size: 18px;
	margin-top: auto;
}

.footer .container > div {
	width: 20%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-direction: column;
}

.footer .container ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
}

.footer .container ul li:not(:last-of-type), .footer__contacts a:not(:last-of-type) {
	margin-bottom: 15px;
}

.footer .container a {
	font-size: 18px;
	text-decoration: none;
	color: #fff;
	display: block;
}

.footer .container a:hover {
	text-decoration: underline;
}

.footer .container a:first-child {
	width: 170px;
}

.footer__copyright {
	background: #fff;
}

.footer__copyright .container {
	padding: 20px 0;
	margin-top: 50px;
	width: 100%;
	color: #304045;
	font-size: 16px;
	line-height: 1.5;
	justify-content: center;
}

.footer-icon, .header-icon {
	width: 18px;
	height: 18px;
	vertical-align: middle;
	margin-right: 8px;
	/* Возможно, понадобится fill: #fff; если SVG не имеют своего цвета и должны быть белыми */
}
.footer__contacts a {
	display: inline-flex; /* или flex */
	align-items: center;
}
.footer .container .footer__contacts a:first-child {
    width: auto; /* или width: fit-content; или width: max-content; */
}

.contact-page-icon {
	width: 20px;
	height: 20px;
	vertical-align: middle;
	margin-right: 10px;
	/* fill: #fff; /* Если нужно для phone-white.svg и viber.svg (если он тоже белый) */
}

.contacts-content a {
	display: inline-flex; /* или flex */
	align-items: center;
}

.container {
	margin-right:auto;
	margin-left:auto;
}

.scroll-to-top-button {
    position: fixed;
    bottom: 300px;
    right: 30px;
    width: 50px; /* размер */
    height: 50px; /* размер */
    /* background-color: #128C5D; /* Цвет фона, как в теме зеленый*/
	background-color: #F7C63E; /* Новый ОСНОВНОЙ ЦВЕТ ФОНА: Желтый */
    /* color: #fff; /* Цвет стрелки */
	color: #304045;/* Новый ОСНОВНОЙ ЦВЕТ стрелки: Темный */
    line-height: 50px; /* Вертикальное выравнивание для текста/символа, если не SVG */
    border-radius: 50%; /* Делает кнопку круглой */
    box-shadow: 0 2px 5px rgba(0,0,0,0.2);
    z-index: 999; /* Чтобы была поверх других элементов */
    opacity: 0;
    visibility: hidden; /* Изначально полностью скрыта и неактивна */
	transform: translateY(20px); /* Начальное положение для анимации появления */
    /* transition: opacity 0.3s ease, visibility 0.3s ease, background-color 0.3s ease; */
	/* Новый transition, для желтого цвета */
	transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.3s ease, background-color 0.3s ease, color 0.3s ease;
    text-decoration: none;
    cursor: pointer;
	display: flex; /* Или block/inline-flex если нужно для содержимого */
	align-items: center;
    justify-content: center;
}
.scroll-to-top-button svg { /* Если SVG */
    width: 24px; /* Размер SVG */
    height: 24px;
    /* vertical-align: middle; /* Для лучшего выравнивания внутри кнопки */
    fill: currentColor; /* SVG будет использовать цвет текста родителя (color: #fff;) */
}
.scroll-to-top-button.show {
    opacity: 1;
    visibility: visible;
	transform: translateY(0); /* Возвращаем в нормальное положение */
}
.scroll-to-top-button:hover {
    /* background-color: #F7C63E; /* Цвет фона при наведении, как в теме */
    /* color: #304045; /* Цвет стрелки при наведении, если нужно менять */
	background-color: #128C5D; /* Новый ЦВЕТ ФОНА ПРИ НАВЕДЕНИИ: Зеленый */
    color: #fff;              /* Новый ЦВЕТ ИКОНКИ ПРИ НАВЕДЕНИИ: Белый */
}


/* Стили для контента одиночной статьи внутри .home-sertificates__content */

body.single-post .home-sertificates__content h1.title.wp-block-heading {
        margin-top: 5px;     /* 1. ОТСТУП СВЕРХУ. Подбери это значение (например, 15px, 20px, 25px). */
                              /* Учитывай, что main уже имеет margin-top: 62px, а .breadcrumbs свой padding. */
                              /* Этот margin-top будет отступом от предыдущего элемента (например, от хлебных крошек). */
        
        padding-left: 0;      /* 2. УБИРАЕМ ЛЕВЫЙ PADDING. */

        /* Если у этого H1 был какой-то другой padding-right, padding-bottom или padding-top, который ты не хочешь, */
        /* но который мог быть задан более общим правилом для .title или .wp-block-heading, */
        /* то их тоже можно обнулить для чистоты, ЕСЛИ это необходимо: */
        /* padding-right: 0; */
        /* padding-top: 0; */   /* Если используем margin-top, то padding-top здесь лучше обнулить */
        padding-bottom: 10px; /* Если не нужен нижний внутренний отступ */
    }

/* 1. Текст по ширине контейнера (для p, h2, h3) */
body.single-post .home-sertificates__content p,
body.single-post .home-sertificates__content h2,
body.single-post .home-sertificates__content h3,
body.single-post .home-sertificates__content ul, /* Также для списков, если они были 85% */
body.single-post .home-sertificates__content ol {
    width: 100%; /* Устанавливаем ширину 100% */
}

/* 2. Отступы на каждом абзаце (добавляем/изменяем margin-bottom) */
body.single-post .home-sertificates__content p {
    margin-bottom: 20px; /* Например, 20px. Подбери значение по вкусу. */
                         /* Это переопределит существующий margin-bottom: 8px */
    /* Если нужен отступ первой строки (красная строка): */
    /* text-indent: 30px; */
}

/* 3. Разные размеры для h2 и h3 */
body.single-post .home-sertificates__content h2 {
    font-size: 28px; /* Новый размер для H2, например */
    color: #304045;  /* Оставляем или меняем цвет, если нужно */
    font-weight: 600; /* Оставляем или меняем насыщенность */
    margin-bottom: 15px; /* Отступ снизу для H2, подбери */
}

body.single-post .home-sertificates__content h3 {
    font-size: 22px; /* Новый размер для H3, например */
    color: #304045;  /* Оставляем или меняем цвет */
    font-weight: 600; /* Оставляем или меняем насыщенность */
    margin-bottom: 12px; /* Отступ снизу для H3, подбери */
}

/* Важно! Если стили article h2 и article h3 все еще перебивают, */
/* можно попробовать повысить специфичность еще больше, хотя body.single-post должно хватить. */
/* Например: */
/* body.single-post article .home-sertificates__content h2 { ... } */
/* Но лучше сначала проверить без этого. */

/* Стили для списков внутри контента статьи, если нужно их тоже на 100% и с отступами */
body.single-post .home-sertificates__content ul,
body.single-post .home-sertificates__content ol {
    margin-bottom: 20px; /* Отступ снизу для списков */
    padding-left: 25px; /* Внутренний отступ слева для маркеров, подбери */
}

body.single-post .home-sertificates__content li {
    margin-bottom: 8px; /* Отступ между элементами списка, если нужно */
}

/* Стили для переключателя языков */
.lang-switcher-dropdown {
    position: relative;
    display: inline-block;
    /* Добавь сюда margin или другие стили для позиционирования всего блока, если нужно */
    /* Например: margin-right: 15px; */
}

.lang-switcher-dropdown .lang-visible-current {
    display: inline-block;
    padding: 6px 10px; /* Уменьшил горизонтальный паддинг, т.к. есть стрелка */
    background-color: #f0f0f0; /* Светло-серый, как на скриншоте */
    color: #333; /* Темный текст */
    font-size: 13px; /* Подбери */
    font-weight: 600; /* Сделаем текущий язык в кнопке жирным */
    text-decoration: none;
    border-radius: 16px; /* Более овальная форма */
    line-height: 1.2; /* Чтобы текст и стрелка были по центру */
    cursor: pointer;
    transition: background-color 0.2s ease;
    white-space: nowrap;
}

.lang-switcher-dropdown .lang-visible-current .arrow-down {
    font-size: 0.6em; /* Маленькая стрелочка */
    margin-left: 4px;
    display: inline-block;
    transition: transform 0.2s ease; /* Для анимации стрелки */
}

.lang-switcher-dropdown:hover .lang-visible-current {
    background-color: #e7e7e7; /* Немного другой фон при наведении на весь блок */
}
.lang-switcher-dropdown:hover .lang-visible-current .arrow-down {
    transform: rotate(180deg); /* Пример: переворачивать стрелку при раскрытии */
}

.lang-switcher-dropdown .lang-dropdown-list {
    display: none;
    position: absolute;
    /* top: calc(100% + 4px); /* Отступ от кнопки */
	top: 100%;
    left: 50%; /* Начинаем с центра кнопки */
    transform: translateX(-50%); /* Центрируем список под кнопкой */
    background-color: #f0f0f0; /* Фон списка */
    border-radius: 10px;
    list-style: none;
    margin: 0;
    padding: 4px 0; /* Небольшие вертикальные паддинги внутри списка */
    z-index: 1000; /* Высокий z-index */
    min-width: 100%; /* Минимальная ширина как у кнопки */
    box-shadow: 0 4px 12px rgba(0,0,0,0.15); /* Более заметная тень */
}

.lang-switcher-dropdown:hover .lang-dropdown-list {
    display: block;
}

.lang-switcher-dropdown .lang-dropdown-list li.lang-item a {
    display: block;
    padding: 0px 10px; /* Паддинги для пунктов */
    text-decoration: none;
    font-size: 13px;
    white-space: nowrap;
    transition: background-color 0.2s ease, color 0.2s ease;
}

/* Стили для АКТИВНОГО языка в выпадающем списке */
.lang-switcher-dropdown .lang-dropdown-list li.is-active a {
    color: #222; /* Более темный/яркий текст */
    font-weight: 600; /* Жирный */
    /* background-color: #e0e0e0; /* Можно легкий фон */
    cursor: default; /* Показываем, что он уже выбран */
}

/* Стили для НЕАКТИВНОГО языка в выпадающем списке */
.lang-switcher-dropdown .lang-dropdown-list li.is-inactive a {
    color: #777777; /* Блеклый текст, как на скриншоте */
    font-weight: normal; /* Обычная насыщенность */
}

.lang-switcher-dropdown .lang-dropdown-list li.is-inactive a:hover {
    background-color: #e7e7e7; /* Фон при наведении на неактивный язык */
    color: #111; /* Текст становится ярче при наведении */
}


@media screen and (max-width: 767px) {
	main {
		margin-top: 62px;
	}
	.body-fixed {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100vh;
		background: #fff;
	}
	.header {
		position: fixed;
		width: 100%;
		height: 62px;
		z-index: 101;
		top: 0;
		left: 0;
	}
	.header__top {
		padding: 0;
		height: 60px;
		position: static;
	}
		
	.header__top .container {
		display: flex; /* Уже есть */
		align-items: center;    /* <--- ДОБАВЛЯЕМ ДЛЯ ВЕРТИКАЛЬНОГО ЦЕНТРИРОВАНИЯ ВСЕХ ДЕТЕЙ */
		justify-content: flex-start; /* <--- ИЗМЕНЯЕМ: Начинаем слева */
		position: relative;
		height: 100%;
        padding-left: 75px; /* <--- Добавляем отступ слева, чтобы было место для абсолютного бургера и не налезало */
	}
	
	.header__menu {
		display: none;
	}
	.header__menu-active {
		display: block;
		background: #fff;
		position: absolute;
		width: 100%;
		height: 100vh;
		z-index: 999;
		padding: 0;
		top: 60px;
	}
	.header__menu .container {
		height: calc(100vh - 150px);
		overflow-y: scroll;
	}
	.header__logo {
		display: none;
	}
	.menu {
		flex-direction: column;
	}
	.header__nav > a {
		display: block;
		color: #304045;
		padding: 20px 10px;
		font-size: 18px;
		font-weight: 600;
		text-decoration: none;
	}
	.header__nav > a:hover {
		color: #128C5D;
	}
	
	.header__menu-active .container {
        padding-top: 25px; /* Подбери значение (например, 10px, 15px, 20px) */
        height: calc(100vh - 150px - 25px); /* Вычитаем новый padding-top из высоты */
        overflow-y: scroll;
    }
	
	.menu a {
		display: block;
		padding: 20px 10px;
	}
	
	.header__menu-active .menu .menu-item-home-mobile-only,
	.header__menu-active .menu .menu-item-blog-mobile-only {
        display: block; /* или list-item, или flex */
    }
	
	.menu-item {
		position: relative;
	}
	.menu-item-plus {
		font-size: 42px;
		line-height: 1;
		width: 42px;
		text-align: center;
		font-weight: 700;
		color: #000;
		position: absolute;
		top: 9px;
		right: 0;
		cursor: pointer;
	}
	.burger {
		display: block;
		width: 30px;
		height: 30px;
		position: absolute;
		left: 20px;
		top: 15px;
		cursor: pointer;
	}
	
	.lang-switcher-dropdown { /* Наш переключатель языков */
        /* order: 1; /* Если нужно явно задать порядок, но он и так будет после бургера (если бургер в потоке) или первым из потоковых */
        margin-left: 0; /* Убедимся, что нет лишних отступов */
        margin-right: 15px; /* Отступ СПРАВА от переключателя до следующего элемента (телефона) */
    }
	
	.sub-menu-active {
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: -o-flex;
		display: flex;
		flex-direction: column;
		width: 100vw !important;
		position: absolute;
		top: 63px !important;
	}
	.sub-menu-active li {
		padding: 0 20px !important;
	}
	.sub-menu-active li a {
		padding: 10px 20px !important;
	}
	.header__contacts {
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: -o-flex;
		display: inline-flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		margin-left: auto;
	}
	.header__contacts a {
		font-size: 18px;
	}
	.header__contacts a:not(:last-child) {
		display: none;
	}
	.header__viber {
		margin: 0;
	}
	.header__working {
		display: none;
		width: 50%;
		max-width: 192px;
	}
	.container {
		padding: 0 15px;
	}
	.home-heading .container {
		padding: 160px 0 0;
	}
	.home-heading__titles {
		width: 100%;
		margin-right: 0;
		background: rgba(255, 255, 255, 0.7);
		padding: 20px 15px;
		text-align: center;
	}
	.order-btn {
		margin: 15px auto 0;
	}
	.home-heading__titles h1 {
		font-size: 22px;
		line-height: normal;
		margin-bottom: 15px;
		line-height: 1.2;
	}
	.home-heading__sub-heading {
		width: 100%;
		font-size: 16px;
	}
	.home-services {
		padding: 60px 0;
	}
	.home-services .container {
		flex-direction: column;
	}
	.home-services__img {
		width: 100%;
	}
	.home-services_content {
		width: 100%;
		margin-left: 0;
		height: auto;
		align-items: center;
	}
	.home-services_content::after {
		width: 100vw;
		right: 0;
		left: -15px;
		z-index: -1;
	}
	.home-services__title {
		text-align: center;
		font-size: 22px;
		margin: 20px 0 17px;
	}
	.home-services__link {
		margin-bottom: 17px;
	}
	.home-services__link:last-child {
		margin-bottom: 0;
	}
	.home-advantages {
		margin: 0;
		padding: 60px 0;
	}
	.home-advantages .container {
		flex-direction: column;
	}
	.home-advantages__img {
		width: 100%;
		margin-top: 30px;
	}
	.home-advantages__text {
		width: 100%;
	}
	.home-advantages__title {
		font-size: 22px;
		margin-bottom: 15px;
		text-align: center;
	}
	.home-advantages__list li {
		font-size: 16px;
		line-height: 1.5;
		margin-bottom: 5px;
	}
	.home-prices {
		padding: 60px 0;
	}
	.home-prices__img {
		display: none;
	}
	.home-prices__content {
		width: 100%;
		padding: 0;
	}
	.home-prices__title {
		width: 100%;
		font-size: 22px;
		margin-bottom: 15px;
		text-align: center;
	}
	.home-prices__title span {
		font-size: 22px;
		margin-top: 0;
	}
	.home-prices__list-title {
		font-size: 20px;
		margin-bottom: 10px;
	}
	.home-prices__list-list li {
		font-size: 16px;
		line-height: 1.2;
		margin-bottom: 12px;
	}
	.home-prices__list-list li:last-of-type {
		margin-bottom: 0;
	}
	.home-prices__content > div:last-of-type {
		margin-top: 20px;
	}
	.home-process {
		margin: 0;
		padding: 60px 0;
	}
	.home-process__title {
		font-size: 22px;
		margin-bottom: 25px;
		text-align: center;
	}
	.home-process__row {
		flex-wrap: wrap;
	}
	.home-process__row:last-of-type {
		display: none;
	}
	.home-process__item {
		width: 50%;
	}
	.home-process__item:nth-of-type(3), .home-process__item:nth-of-type(4) {
		margin-bottom: 0;
	}
	.home-process__item img {
		width: 50%;
		margin-bottom: 10px;
		height: auto;
	}
	.home-process__item div {
		font-size: 14px;
		width: auto;
		padding: 0 10px;
	}
	.home-sertificates {
		padding: 60px 0;
	}
	.home-sertificates__sertificates {
		display: none;
	}
	.home-sertificates__content {
		width: 100%;
	}
	.home-sertificates__content h2 {
		margin-top: 0;
	}
	.home-feedback {
		margin: 0;
		padding: 60px 15px 44px;
	}
	.home-feedback .container {
		flex-direction: column;
		padding: 0;
	}
	.home-feedback__form {
		padding-left: 0;
	}
	.home-feedback__title {
		font-size: 24px;
		margin-bottom: 5px;
	}
	.home-feedback__subtitle {
		font-size: 14px;
		text-align: center;
	}
	form span input, form span textarea {
		max-width: 100%;
	}
	.form {
		margin-bottom: 0;
	}
	.home-feedback__map {
		width: 100%;
		padding: 0;
		height: 60vw;
	}
	.home-feedback__map img {
		padding-left: 0;
		width: auto;
		max-width: unset;
	}
	.breadcrumbs .container > span:not(:last-of-type) a span, .breadcrumbs span a span {
		font-size: 10px;
		margin-right: 28px;
	}
	.breadcrumbs .container > span:not(:last-of-type)::after {
		width: 8px;
		height: 8px;
		top: 8px;
		right: 10px;
	}
	.services__top .container {
		flex-direction: column;
		padding: 0;
	}
	.services__top-heading {
		width: 100%;
		height: 300px;
	}
	.services__top-heading h1 {
		font-size: 22px;
		line-height: 1.2;
	}
	.services__top-form {
		width: 100%;
		height: 300px;
		padding: 15px;
	}
	.contacts-page .services__top-form {
		margin-left: 0;
		margin-bottom: 30px;
	}
	.services__top-form-name {
		font-size: 24px;
	}
	.services__top-form-price {
		font-size: 24px;
	}
	.services__desc {
		padding: 60px 0;
	}
	.services__desc .container {
		flex-direction: column;
	}
	.services__desc-list {
		width: 100%;
		margin: 0;
	}
	.services__desc-list div {
		font-size: 22px;
		margin-bottom: 15px;
		text-align: center;
	}
	.services__desc-list ul li {
		font-size: 16px;
		line-height: 1.5;
		margin-bottom: 5px;
	}
	.services__desc-list ul li::before {
		width: 6px;
		height: 6px;
	}
	.services__desc-img {
		width: 100%;
		margin-top: 30px;
	}
	.services__text {
		position: relative;
	}
	.services__text:after {
		content: '';
		height: 100%;
		width: 15px;
		background: #128C5D;
		position: absolute;
		top: 0;
		right: 0;
	}
	.services__text article {
		height: 300px;
		padding-right: 10px;
		margin-bottom: 30px;
	}
	article h2 {
		margin-top: 0;
		font-size: 24px;
	}
	article h3 {
		font-size: 18px;
	}
	.other-services {
		padding: 60px 0;
	}
	.other-services__title {
		font-size: 22px;
		margin-bottom: 15px;
	}
	.other-services__all {
		flex-direction: column;
	}
	.other-services__certain:nth-child(2) {
		margin: 35px 0;	
	}
	.other-services__certain-title {
		margin-top: 5px;
	}
	.other-services__certain-desc {
		display: none;
	}
	.contacts-page {
		padding: 30px 0;
	}
	.contacts-page .container {
		flex-direction: column;
	}
	.contacts-content {
		width: auto;
		height: auto;
		margin: 0;
		align-items: center;
		padding: 50px 0 50px;
	}
	.contacts-content div:first-of-type, .contacts-content a, .contacts-content div:last-of-type {
		margin-left: 0;
		margin-bottom: 25px;
	}
	.contacts-image {
		margin-top: 30px;
	}
	.contacts-image img {
		width: auto;
	}
	.blog__text h1, .blog-title {
		font-size: 26px;
		padding: 30px 15px 0px;
	}
	.blog-list .container {
		flex-direction: column;
	}
	.blog_item, .blog_item:nth-child(3n+2) {
		flex: 100%;
		margin: 0 0 35px;
		max-width: 100%;
	}
	.blog_item h2 {
		font-size: 22px;
	}
	.footer {
		padding-top: 0;
	}
	.footer__links {
		display: none! important;
	}
	.footer .container {
		padding: 40px 15px;
	}
	.footer .container a {
		font-size: 16px;
		text-align: right;
		margin-bottom: 0;
	}
	.footer .container a:first-child {
		width: 100%;
	}
	.footer .container > div {
		width: 50%;
		justify-content: space-between;
	}
	.footer__logo {
		padding-right: 15px;
	}
	.footer__logo div {
		display: none;
	}
	.footer__logo img {
		width: 100%;
		height: auto;
	}
	.footer .container ul {
		display: none;
	}
	.footer__copyright .container {
		padding: 20px 15px;
		margin-top: 0;
		text-align: center;
		font-size: 14px;
	}
	.err {
		font-size: 160px;
	}
	
	.scroll-to-top-button {
        bottom: 250px;
        right: 20px;
        width: 40px;
        height: 40px;
        line-height: 40px; /* Если не SVG */
    }
    .scroll-to-top-button svg {
        width: 20px;
        height: 20px;
    }
}
@media (min-width: 768px) and (max-width: 991px) { /* <--- ДИАПАЗОН ДЛЯ ПЛАНШЕТОВ */
    .header__logo {
        margin-right: 50px;
    }
	.header__contacts a:not(:last-of-type) {
        margin-right: 20px;
    }
	.menu a {
        padding: 10px 10px 10px 15px;
        font-size: 17px;
        line-height: 1.2;
        display: block;
    }
	
	/* Убираем границы фона на главной странице*/
	.home-heading .container {
        width: 100% !important;       /* Заставляем занимать всю доступную ширину родителя (.home-heading) */
        max-width: none !important;    /* Убираем ограничение max-width, если оно есть от .container */
        margin-left: 0 !important;     /* Убираем автоматический левый отступ */
        margin-right: 0 !important;    /* Убираем автоматический правый отступ */
        padding-left: 0 !important;    /* Убираем боковые внутренние отступы, если они были */
        padding-right: 0 !important;   /* Убираем боковые внутренние отступы */
        /* Вертикальные паддинги (padding: 200px 0; или 160px 0 0;) остаются или настраиваются по нужде */
    }

    /* Контент внутри (.home-heading__titles) теперь нужно будет снова ограничить, */
    /* чтобы он не растягивался на всю ширину экрана. */
    .home-heading__titles {
        /* Стандартная ширина для контента на планшете, например, как у .container */
        max-width: 720px; /* Или 750px - ширина .container на этом разрешении, минус боковые отступы, если они есть */
        width: 90%; /* Или конкретное значение в % */
        margin-left: auto;
        margin-right: auto;
        padding-left: 15px;  /* Боковые отступы для самого текста */
        padding-right: 15px;
        /* width: 50%; margin-right: 8.3%; - эти стили от десктопа, возможно, нужно переопределить */
    }
	
	.home-prices__img img {
 		height: auto;
		width: auto;
	}

	.services__top-form .form-button {
        padding-left: 15px;  /* Уменьшаем боковые отступы, например, до 15px */
        padding-right: 15px; /* Подбери значения, чтобы текст влез */
        /* Остальные свойства (height, line-height, font-size) пока можно оставить */
    }
	
	.contacts-content {
		margin-inline: auto;
	}
	
	.footer .container > div {
		width: 50%;
		justify-content: space-between;
	}

}

@media (min-width:768px) {
	.container {
		width:750px
	}
	.menu-item:hover ul {
		display: block;
	}
}
@media (min-width:992px) {
	.container {
		width:970px
	}
}
@media (min-width:1200px) {
	.container {
		width:1170px
	}
}