body {
    font-family: tahoma, arial, helvetica, sans-serif;
}
div {
    box-sizing: border-box;
}
/* ----- Боковое меню (выезжающее слева) ----- */
        /* Оверлей (затемнение) */
        .menu-overlay {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background-color: rgba(0, 0, 0, 0.5);
            backdrop-filter: blur(3px);
            visibility: hidden;
            opacity: 0;
            transition: visibility 0.3s ease, opacity 0.3s ease;
            z-index: 1000;
        }

        /* Само меню — ширина 400px, выезжает слева */
        .side-menu {
            position: fixed;
            top: 0;
            left: 0;
            width: 400px;
            max-width: 90vw;     /* на совсем маленьких экранах не более 90% */
            height: 100%;
            background: #ffffff;
            box-shadow: 8px 0 30px rgba(0, 0, 0, 0.2);
            z-index: 1001;
            transform: translateX(-100%);
            transition: transform 0.35s cubic-bezier(0.2, 0.9, 0.4, 1.1);
            display: flex;
            flex-direction: column;
            overflow-y: auto;
        }

        /* Когда меню активно (открыто) */
        .menu-open .side-menu {
            transform: translateX(0);
        }

        .menu-open .menu-overlay {
            visibility: visible;
            opacity: 1;
        }

        /* Шапка меню с кнопкой закрыть */
        .menu-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            padding: 1.2rem 1.5rem;
            background: #2c5e2a;
            color: white;
            border-bottom: 2px solid #e9c46a;
            position: sticky;
            top: 0;
            background: #2c5e2a;
            z-index: 10;
        }

        .menu-header h2 {
            font-size: 1.5rem;
            font-weight: 500;
            letter-spacing: 1px;
            margin: 0;
        }

        .close-btn {
            background: #e76f51;
            border: none;
            color: white;
            font-size: 1.8rem;
            font-weight: bold;
            width: 40px;
            height: 40px;
            border-radius: 40px;
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            transition: 0.2s;
            line-height: 1;
            box-shadow: 0 2px 6px rgba(0,0,0,0.2);
        }

        .close-btn:hover {
            background: #bc4e2c;
            transform: rotate(90deg);
        }

        /* Список пунктов меню */
        .menu-list {
            list-style: none;
            padding: 0.75rem 0 2rem 0;
            margin: 0;
            flex: 1;
        }

        .menu-list li {
            border-bottom: 1px solid #e9ecef;
        }

        .menu-list a {
            display: block;
            padding: 0.9rem 1.8rem;
            text-decoration: none;
            font-size: 1.05rem;
            font-weight: 500;
            color: #1f3b1c;
            transition: all 0.2s;
            background: white;
        }

        .menu-list a:hover {
            background: #e9f5e5;
            color: #e76f51;
            padding-left: 2.2rem;
            border-left: 6px solid #f4a261;
        }

        /* подвал меню (необязательно) */
        .menu-footer {
            padding: 1.5rem;
            font-size: 0.75rem;
            color: #6c757d;
            border-top: 1px solid #dee2e6;
            text-align: center;
            background: #f9f9f5;
        }

        /* Адаптивность для мобильных */
        @media (max-width: 480px) {
            .side-menu {
                width: 400px;   /* сохраняем 400 по ТЗ, но если экран меньше 400, то максимум 90vw */
            }
            .menu-list a {
                padding: 0.8rem 1.4rem;
                font-size: 1rem;
            }
            .site-header {
                padding: 1rem;
            }
            .main-content {
                padding: 1rem;
            }
        }

        /* убираем скролл у body когда меню открыто (опционально) */
        body.menu-open {
            overflow: hidden;
        }

        /* дополнительный стиль для интерактивности */
        .footer-note {
            text-align: center;
            margin-top: 3rem;
            padding: 1rem;
            color: #5f735a;
        }
.menu122 {
	width: 1260px;
	margin-left: auto;
	margin-right: auto;
	overflow: hidden;
	padding-top: 15px;
}
#servicesLink {
	background-color: #026702;
	color: #fff;
	display: inline-block;
	padding-top: 15px;
	padding-bottom: 15px;
	padding-right: 30px;
	padding-left: 70px;
	border-radius: 100px;
	position: relative;
	text-decoration: none;
	text-transform: uppercase;
	font-size: 16px;
	font-weight: 500;
}
#servicesLink img {
	position: absolute;
	left: 30px;
}
nav a {
	text-decoration: none;
}
.price1 {
	color: #000;
	padding-left: 20px;
	font-size: 20px;
}
.contacts1 {
	font-size: 20px;
	color: #000;
	padding-left: 20px;
}
.right-content-menu {
	float: right;
}
.logo1212 {
	display: block;
	float: left;
	height: 50px;
	margin-right: 20px;
}
.logo1212 img {
	height: 50px;
	display: block;
}
.phone1 {
	color: #000;
	font-size: 24px;
	display: block;
	float: left;
	position: relative;
	padding-left: 55px;
	padding-top: 7px;
}
.phone1 img {
	position: absolute;
	left: 0;
	top: 0;
}
.phone1 span {
	font-size: 18px;
	display: inline-block;
	margin-right: 5px;
}
.iconstop {
	margin-left: 20px;
	display: block;
	float: left;
	padding-top: 10px;
}
.iconstop img {
	height: 29px;
}
.zayavka {
	display: block;
	float: left;
	color: #026702;
	border-radius: 100px;
	border: 1px solid;
	padding-top: 15px;
	padding-bottom: 15px;
	padding-right: 30px;
	padding-left: 30px;
	margin-left: 20px;
	font-size: 16px;
	text-transform: uppercase;
}
.slider1 {
	width: 1260px;
	margin-left: auto;
	margin-right: auto;
	position: relative;
}
.hometext1 {
	position: absolute;
	top: 40px;
	color: #fff;
	text-transform: uppercase;
	font-size: 40px;
	width: 530px;
	left: 40px;
}
.hometext2 {
	font-size: 24px;
	position: absolute;
	bottom: 73px;
	color: #fff;
	width: 530px;
	left: 40px;
}
.nav-wrapper {
	box-shadow: 0px 9px 13px 1px rgba(34, 60, 80, 0.18);
	padding-bottom: 15px;
}
.carousel999 {
	position: relative;
	width: 1260px;
	margin-left: auto;
	margin-right: auto;
	margin-top: 40px;
	overflow: hidden;
}
.my-carousel {
	position: absolute;
	max-width: 1260px;
	margin: 0 auto;
	padding-left: 70px;
	top: 170px;
	left: 0;
}
        
.my-carousel__wrapper {
	overflow: hidden;
	border-radius: 16px;
	padding-bottom: 20px;
}
        
        .my-carousel__track {
            display: flex;
            will-change: transform;
        }
        
        .my-carousel__item {
            flex: 0 0 auto;
            box-sizing: border-box;
            width: 280px;          /* базовая ширина для десктопа */
            margin-right: 20px;
        }
        
        /* Адаптив: на планшетах и мобильных */
        @media (max-width: 768px) {
            .my-carousel {
                padding: 0 20px;
            }
            .my-carousel__item {
                width: calc(50% - 10px);  /* 2 блока с учётом gap */
            }
            /* альтернативно, можно задать фиксированную ширину */
        }
        
        /* Для очень маленьких экранов */
        @media (max-width: 480px) {
            .my-carousel__item {
                width: calc(50% - 8px);
                margin-right: 16px;
            }
        }
        
        /* КНОПКИ (стрелки) */
        .my-carousel__btn {
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            width: 44px;
            height: 44px;
            border-radius: 50%;
            background: white;
            border: 1px solid #ddd;
            cursor: pointer;
            font-size: 20px;
            font-weight: bold;
            display: flex;
            align-items: center;
            justify-content: center;
            z-index: 10;
            transition: all 0.2s;
            box-shadow: 0 2px 8px rgba(0,0,0,0.1);
        }
        
        .my-carousel__btn:hover:not(:disabled) {
            background: #000;
            transform: translateY(-50%) scale(1.05);
        }
        
        .my-carousel__btn:disabled {
            opacity: 0.3;
            cursor: not-allowed;
        }
        
.my-carousel__btn--prev {
	right: 140px;
	top: -60px;
	background-color: #026702;
}
        
.my-carousel__btn--next {
	right: 90px;
	top: -60px;
    background-color: #026702;
}
        
        /* На мобильных кнопки можно сделать меньше или скрыть */
        @media (max-width: 768px) {
            .my-carousel__btn {
                width: 36px;
                height: 36px;
                font-size: 16px;
            }
            .my-carousel__btn--prev {
                left: -5px;
            }
            .my-carousel__btn--next {
                right: -5px;
            }
        }
        
        /* ИНДИКАТОРЫ (ТОЧКИ) */
        .my-carousel__dots {
            display: flex;
            justify-content: center;
            gap: 10px;
            margin-top: 20px;
            padding: 10px 0;
        }
        
        .my-carousel__dot {
            width: 10px;
            height: 10px;
            border-radius: 50%;
            background: #ccc;
            cursor: pointer;
            transition: all 0.2s;
        }
        
        .my-carousel__dot.active {
            background: #2c5e2a;
            width: 24px;
            border-radius: 12px;
        }
        
        .my-carousel__dot:hover {
            background: #999;
        }
        
.block {
	background: #f8f9fa;
	border-radius: 20px;
	box-shadow: 0 4px 12px rgba(0,0,0,0.2);
	transition: transform 0.2s;
	display: block;
	overflow: hidden;
	position: relative;
	text-decoration: none;
	padding-bottom: 20px;
}
.block img {
	width: 100%;
}
        
        .block:hover {
            transform: translateY(-4px);
        }
        
.block p {
	margin: 0;
	color: #6c757d;
	padding-top: 10px;
	padding-left: 20px;
	font-size: 16px;
}
.block span {
	display: block;
	float: right;
	margin-right: 20px;
	border: 1px solid #026702;
	color: #000;
	border-radius: 100px;
	padding-top: 10px;
	padding-bottom: 10px;
	padding-right: 20px;
	padding-left: 20px;
	margin-top: 20px;
    transition: 0.3s;
}
.nashi-uslugi-home {
	font-size: 36px;
	position: absolute;
	color: #fff;
	text-transform: uppercase;
	left: 70px;
	top: 40px;
}
.block:hover span {
	color: #fff;
	background-color: #026702;
}
        
        /* Адаптивные отступы для блоков */
        @media (max-width: 768px) {
            .block {
                padding: 16px 12px;
            }
            .block h3 {
                font-size: 1rem;
            }
            .block p {
                font-size: 0.8rem;
            }
        }
.face-home {
	position: absolute;
	width: 271px;
	right: 0;
}
.face-home img {
	display: block;
	float: left;
	margin-top: 9px;
}
.face22 {
	float: right;
}
.face33 {
	font-size: 30px;
	text-align: right;
	color: #026702;
}
.home4455 {
	width: 1260px;
	margin-left: auto;
	margin-right: auto;
	margin-top: 40px;
}
.home9393 {
	width: 1260px;
	margin-left: auto;
	margin-right: auto;
	margin-top: 20px;
	overflow: hidden;
}
.home9393 img {
	display: block;
	float: left;
}
.home9999 {
	margin-top: -8px;
	margin-left: -33px;
	overflow: hidden;
	display: inline-block;
}
.home10000 {
	display: inline-block;
	max-width: 719px;
	margin-left: 30px;
	margin-top: 19px;
}
.home10001 {
	display: inline-block;
	width: 714px;
	margin-top: 18px;
	margin-left: 10px;
}
.blockgr1 {
	background: linear-gradient(90deg, #73AE00 0%, #476823 100%);
	width: 1260px;
	margin-left: auto;
	margin-right: auto;
	border-radius: 20px;
	overflow: hidden;
	margin-top: 40px;
}
.blockgr1 h2 {
	color: #fff;
	font-size: 36px;
	font-weight: 500;
	text-transform: uppercase;
	text-align: center;
	margin-top: 40px;
}
.blockgr1 p {
	color: #fff;
	font-size: 20px;
	text-align: center;
}
.name-custom label {
	display: none;
}
.formhome1 {
	width: 600px;
	margin-left: auto;
	margin-right: auto;
}
.phone-custom label {
	display: none;
}
.text-custom2 label {
	display: none;
}
.name-custom input {
	background-image: url(/wp-content/themes/blank-wordpress-theme-master/img/form-name.svg);
	background-repeat: no-repeat;
	background-position: right 10px center;
	padding-top: 10px;
	padding-bottom: 10px;
	padding-right: 20px;
	padding-left: 20px;
	width: 100%;
	background-size: 25px;
	border-radius: 10px;
	border: 1px solid #ccc;
}
.phone-custom input {
    background-image: url(/wp-content/themes/blank-wordpress-theme-master/img/phone-form.svg);
	background-repeat: no-repeat;
	background-position: right 10px center;
	padding-top: 10px;
	padding-bottom: 10px;
	padding-right: 20px;
	padding-left: 20px;
	width: 100%;
	background-size: 25px;
	border-radius: 10px;
	border: 1px solid #ccc;
}

.text-custom2 textarea {
    background-repeat: no-repeat;
	background-position: right 10px center;
	padding-top: 10px;
	padding-bottom: 10px;
	padding-right: 20px;
	padding-left: 20px;
	width: 100%;
	background-size: 25px;
	border-radius: 10px;
	border: 1px solid #ccc;
}
.politic label {
	float: left;
	display: block;
}
.politic p {
	text-align: left;
	font-size: 10px;
	margin: 0;
}
.sent-custom1 {
	border-radius: 100px;
	padding-top: 15px;
	padding-bottom: 15px;
	padding-right: 20px;
	padding-left: 20px;
	border: 0;
	font-size: 16px;
	background-color: #026702;
	color: #fff;
	margin-left: auto;
	margin-right: auto;
	display: block;
	transition: 0.3s;
	cursor: pointer;
}
.sent-custom1:hover {
	background-color: #000;

}
.footer1 {
	width: 25%;
	float: left;
	box-sizing: border-box;
}
footer {
	width: 1260px;
	margin-right: auto;
	margin-left: auto;
	border-top: 1px solid #ddd;
	margin-top: 40px;
	padding-top: 40px;
	font-size: 16px;
	padding-bottom: 40px;
	overflow: hidden;
}
.adressfooter {
	float: left;
	width: 100%;
	position: relative;
}
.adressfooter img {
	position: absolute;
	left: 0;
	top: 20px;
}
.adressfooter p {
	padding-left: 25px;
}
.footerphone {
	width: 100%;
	float: left;
	position: relative;
}
.footerphone a {
	font-size: 18px;
	text-decoration: none;
	color: #000;
	padding-left: 25px;
}
.footerphone img {
	position: absolute;
	left: 0;
	top: 4px;
}
.timefooter {
	float: left;
	width: 100%;
	position: relative;
}
.timefooter p {
	padding-left: 25px;
}
.timefooter img {
	position: absolute;
	left: -3px;
	top: 18px;
}
.mailfooter {
	width: 100%;
	float: left;
	position: relative;
}
.mailfooter a {
	text-decoration: none;
	color: #000;
	padding-left: 25px;
}
.mailfooter img {
	position: absolute;
	left: 1px;
	top: 4px;
}
.footer1 span {
	font-size: 18px;
	text-transform: uppercase;
	color: #026702;
	border-bottom: 1px dotted;
	display: block;
	padding-bottom: 20px;
}
.footer1 li::marker {
	color: #026702;
}
.footer1 li a {
	color: #026702;
	display: inline-block;
	padding-bottom: 10px;
}
.footer-top-padding {
	margin-top: 58px;
}
.copyfooter {
	background-color: #f6f6f6;
	padding: 10px 20px;
	font-size: 12px;
	border-radius: 20px;
}
.container {
	width: 1260px;
	margin-right: auto;
	margin-left: auto;
	overflow: hidden;
}
.price-link {
	display: block;
	width: 100%;
	float: left;
	padding: 15px;
	border-top: 1px solid #026702;
	border-left: 1px solid #026702;
	border-right: 1px solid #026702;
	text-decoration: none;
	color: #000;
	transition: 0.3s;
	box-sizing: border-box;
}
.price-link:hover {
	text-decoration: underline;
	color: #026702;
	background-color: #ddd;
}
.price-link.price-1 {
	border-top-left-radius: 20px;
	border-top-right-radius: 20px;
}
.price-price {
	display: block;
	float: right;
	font-weight: bold;
	color: #026702;
}
.prices-table {
	display: block;
	width: 100%;
	float: left;
	font-size: 20px;
}
.price-link.price-7 {
	border-bottom: 1px solid #026702;
	border-bottom-left-radius: 20px;
	border-bottom-right-radius: 20px;
}
.price-link-wrap {
	float: right;
	text-align: right;
	background-color: #ddd;
	border-radius: 20px;
	font-size: 20px;
	padding-top: 15px;
	padding-bottom: 15px;
	padding-right: 30px;
	margin-top: 20px;
	margin-bottom: 20px;
	padding-left: 30px;
}
.pdf-price-icon {
	height: 30px;
	display: block;
	float: right;
	margin-left: 20px;
}
.price-download {
	text-decoration: none;
	font-weight: bold;
	color: #026702;
}
 @media (max-width: 768px) {
.menu122 {
	width: 100%;
}
     .logo1212 {
	display: none;
}
     .price1 {
	display: none;
}
     .contacts1 {
	display: none;
}
     #servicesLink {
	padding-top: 10px;
	padding-bottom: 10px;
	padding-right: 15px;
	padding-left: 40px;
	font-size: 14px;
    margin-left: 10px;
}
     #servicesLink img {
	left: 15px;
	width: 15px;
	top: 13px;
}
     .phone1 {
	padding-left: 30px;
	width: 30px;
	overflow: hidden;
	box-sizing: border-box;
	height: 30px;
}
     .iconstop {
	margin-left: 15px;
	padding-top: 0;
}
     .iconstop img {
	height: 26px;
}
     .zayavka {
	display: none;
}
     .right-content-menu {
	margin-top: 4px;
	margin-right: 10px;
}
     .slider1 {
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	position: relative;
}
     .slider1 img {
	width: 100%;
}
.hometext1 {
	top: 10px;
	font-size: 14px;
	width: 100%;
	left: 0;
	padding-left: 10px;
	padding-right: 10px;
	box-sizing: border-box;
	text-align: center;
}
.hometext2 {
	font-size: 14px;
	bottom: 10px;
	width: 100%;
	left: 0;
	text-align: center;
	padding-right: 10px;
	padding-left: 10px;
	box-sizing: border-box;
}
     .car-bg1 img {
	width: 100%;
}
     .carousel999 {
	width: 100%;
}
     .nashi-uslugi-home {
	font-size: 20px;
	color: #fff;
	left: 28px;
	top: 20px;
}
     .face-home {
	display: none;
}
.my-carousel {
	display: none;
}
     .face-home {
	display: none;
}
     .car-bg1 img {
	width: 100%;
}
     .carousel999 {
	display: none;
}
     .home4455 {
	width: 100%;
	padding-left: 10px;
	padding-right: 10px;
}
.home9393 img {
	display: none;
}
    .home9393 {
	width: 100%;
}
     .home9999 {
	margin-top: 0;
	margin-left: 0;
	padding-left: 10px;
	padding-right: 10px;
}
     .home10000 {
	margin-left: 0;
	margin-top: 0;
	padding-left: 10px;
	padding-right: 10px;
}
     .home10001 {
	width: 100%;
	margin-top: 0;
	margin-left: 0;
	padding-left: 10px;
	padding-right: 10px;
}
     .blockgr1 {

	width: 100%;
	margin-left: auto;
	margin-right: auto;    
	margin-top: 20px;
	padding-left: 10px;
	padding-right: 10px;
}
     .formhome1 {
	width: 100%;
	margin-left: auto;
	margin-right: auto;
}
     footer {
	width: 100%;
}
     .footer1 {
	width: 100%;
	float: left;
	padding-left: 10px;
	padding-right: 10px;
	margin-bottom: 20px;
}
     .footer-top-padding {
	margin-top: -30px;
}
     .copyfooter {
	width: 100%;
	box-sizing: border-box;
}
     .politic p {
	padding-left: 30px;
}
     .phone1 img {
	width: 30px;
}
     .container {
	width: 100%;
	padding-left: 10px;
	padding-right: 10px;
}
}