@media (max-width: 767px) {
	.title-h2 {
		font-size: 28px;
		margin: 15px 0;
	}
	.about-block {
		flex-direction: column;
		gap: 20px;
	}
	.about {
		padding: 40px 0;
	}
	.about-txt, .about-img {
		width: 100%;
	}
	.best {
		padding: 50px 0;
	}
	.best-block {
		grid-template-columns: 1fr;
		gap: 20px;
		padding-top: 20px;
	}
	.price-cena {
		width: 25%;
	}
	.price-txt {
		width: 75%;
	}
	.price-txt, .price-cena {
		font-size: 14px;
	}
	.title-h3.white {
		font-size: 18px;
		margin: 10px 0;
	}
	.price-item-block {
		margin-top: 25px;
	}
	.faq {
		padding: 40px 0;
	}
	.accordion {
		padding-top: 0px;
		overflow: hidden;
	}
	.accordion-header {
		padding: 10px 0px;
	}
	.accordion-icon {
		width: 40px;
		height: 31px;
	}
	.accordion-title {
		font-size: 17px;
	}
	.accordion-content-inner {
		padding: 0px 20px 20px 50px;
		font-size: 14px;
	}
	.head-desc {
		display: none;
	}

	/* Показываем мобильную шапку */
	.mobile-header {
		display: block;
		position: relative;
		z-index: 1000;
	}

	.mobile-header-container {
		display: flex;
		justify-content: space-between;
		align-items: center;
		padding: 15px 0px;
	}

	.mobile-logo img {
		height: 40px;
		width: auto;
	}

	/* Бургер-иконка */
	.mobile-burger {
		width: 30px;
		height: 24px;
		background: none;
		border: none;
		cursor: pointer;
		position: relative;
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		padding: 0;
	}

	.mobile-burger span {
		display: block;
		width: 100%;
		height: 3px;
		background-color: #274F37;
		transition: all 0.3s ease;
		border-radius: 2px;
	}

	/* Анимация бургера при открытом меню */
	.mobile-burger.active span:nth-child(1) {
		transform: rotate(45deg) translate(8px, 8px);
	}

	.mobile-burger.active span:nth-child(2) {
		opacity: 0;
	}

	.mobile-burger.active span:nth-child(3) {
		transform: rotate(-45deg) translate(8px, -8px);
	}

	/* Сайдбар (выезжающее меню) */
	.mobile-sidebar {
		position: fixed;
		top: 0;
		right: -100%;
		width: 85%;
		max-width: 350px;
		height: 100%;
		background: #fff;
		box-shadow: -2px 0 15px rgba(0,0,0,0.1);
		z-index: 1001;
		transition: right 0.3s ease;
		overflow-y: auto;
	}

	.mobile-sidebar.open {
		right: 0;
	}

	.mobile-sidebar-inner {
		padding: 20px;
		min-height: 100%;
		display: flex;
		flex-direction: column;
	}

	/* Кнопка закрытия */
	.mobile-close {
		position: absolute;
		top: 15px;
		right: 20px;
		background: none;
		border: none;
		font-size: 28px;
		cursor: pointer;
		color: #274F37;
		padding: 0;
		width: 30px;
		height: 30px;
		display: flex;
		align-items: center;
		justify-content: center;
	}

	/* Мобильное меню */
	.mobile-menu-wrapper {
		margin-top: 50px;
	}

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

	.mobile-menu li {
		margin-bottom: 0px;
		position: relative;
	}

	.mobile-menu a {
		text-decoration: none;
		color: #274F37;
		font-size: 16px;
		font-weight: 500;
		display: block;
		padding: 10px 0;
		transition: color 0.3s ease;
	}

	.mobile-menu a:hover {
		color: #FEC748;
	}

	/* Подменю (второй и третий уровень) - мобильная версия */
	.mobile-menu .sub-menu {
		list-style: none;
		padding-left: 20px;
		margin-top: 0;
		margin-bottom: 0;
		display: none; /* Скрыты по умолчанию, показываются через JS */
		background: #f8f9fa;
		border-radius: 5px;
		margin-left: 0px;
	}

	.mobile-menu .sub-menu li {
		margin-bottom: 0;
	}

	.mobile-menu .sub-menu a {
		font-size: 15px;
		font-weight: normal;
		padding: 8px 15px;
	}

	/* Для третьего уровня */
	.mobile-menu .sub-menu .sub-menu {
		padding-left: 20px;
		margin-left: 5px;
		background: #f0f1f2;
	}

	.mobile-menu .sub-menu .sub-menu a {
		font-size: 14px;
		padding: 8px 15px;
	}

	/* Индикатор для пунктов с подменю (стрелка) */
	.mobile-menu .menu-item-has-children > a {
		position: relative;
		padding-right: 30px;
	}

	.mobile-menu .menu-item-has-children > a::after {
		content: '▼';
		position: absolute;
		right: 5px;
		top: 50%;
		transform: translateY(-50%);
		font-size: 12px;
		transition: transform 0.3s ease;
		color: #274F37;
	}

	.mobile-menu .menu-item-has-children.is-open > a::after {
		transform: translateY(-50%) rotate(180deg);
	}

	/* Для подменю второго уровня - стрелка вправо */
	.mobile-menu .sub-menu .menu-item-has-children > a::after {
		content: '▶';
	}

	.mobile-menu .sub-menu .menu-item-has-children.is-open > a::after {
		transform: translateY(-50%) rotate(90deg);
	}

	/* Контакты в сайдбаре */
	.mobile-contacts {
		margin-top: auto;
		padding-top: 30px;
		border-top: 1px solid #eee;
	}

	.mobile-phone {
		display: flex;
		flex-direction: column;
		gap: 10px;
		margin-bottom: 20px;
	}

	.mobile-phone-link {
		text-decoration: none;
		color: #274F37;
		font-size: 20px;
		font-weight: bold;
	}

	.mobile-mail-link {
		text-decoration: none;
		color: #666;
		font-size: 16px;
	}

	.mobile-socials {
		display: flex;
		gap: 15px;
		margin-bottom: 25px;
	}

	.mobile-social-link svg {
		width: 40px;
		height: 40px;
		transition: transform 0.3s ease;
	}

	.mobile-social-link:hover svg {
		transform: scale(1.1);
	}

	.mobile-button {
		margin-bottom: 20px;
	}

	.mobile-order-btn {
		display: block;
		background-color: #FEC748;
		color: #274F37;
		text-align: center;
		padding: 14px 20px;
		text-decoration: none;
		border-radius: 5px;
		font-weight: bold;
		font-size: 16px;
		transition: all 0.3s ease;
	}

	.mobile-order-btn:hover {
		background-color: #274F37;
		color: #FEC748;
	}

	/* Затемнение фона */
	.mobile-overlay {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: rgba(0,0,0,0.5);
		z-index: 1000;
		opacity: 0;
		visibility: hidden;
		transition: all 0.3s ease;
	}

	.mobile-overlay.active {
		opacity: 1;
		visibility: visible;
	}
	
	.footer-menu .main-navigation .menu {
		list-style: none;
		margin: 0;
		padding: 0;
		gap: 20px;
		display: flex;
		flex-direction: row;
		justify-content: flex-start;
		flex-wrap: wrap;
	}
	.footer-desc-bottom {
		flex-direction: column;
		justify-content: space-between;
		padding: 20px 0;
		gap: 25px;
	}
	.footer-contact {
		display: flex;
		gap: 20px;
		align-items: flex-start;
		flex-direction: row;
		flex-wrap: wrap;
	}
	.portfolio-grid {
		grid-template-columns: 1fr;
		gap: 20px;
		padding: 15px 0;
	}
	.portfolio-section {
		padding: 30px 0;
	}
	.portfolio-content {
		padding: 20px;
	}
	.portfolio-image a img {
		width: 100%;
		height: 300px;
	}
	.portfolio-title a {
		font-size: 18px;
		width: 80%;
	}
	.area-value {
		font-size: 14px;
	}
	.portfolio-all {
		margin-bottom: 50px;
	}
	.portfolio-grid {
		grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
		gap: 25px;
	}
	
	.portfolio-tabs-page {
		padding: 20px 0;
	}
	
	.page-title {
		font-size: 32px;
	}
	
	.portfolio-tabs-nav {
		gap: 5px;
	}
	
	.portfolio-tab-btn {
		padding: 8px 16px;
		font-size: 14px;
	}
	
	.portfolio-grid {
		grid-template-columns: 1fr;
		gap: 20px;
	}
	
	.portfolio-thumbnail {
		height: 300px;
	}
	
	.portfolio-content {
		padding: 15px;
	}
	.title-h1 {
		font-size: 32px;
	}
	#breadcrumbs a {
		color: #000000;
		font-size: 13px;
		font-family: 'Etelka Pro';
	}
	#breadcrumbs span {
		color: #000000;
		font-size: 13px;
		font-family: 'Etelka Pro';
	}
	.ukrgo-nav-arrow {
		width: 40px;
		height: 40px;
		font-size: 28px;
	}
	
	.ukrgo-thumbnail {
		width: 33%;
		height: 80px;
	}
	
	.ukrgo-thumb-nav {
		width: 30px;
		height: 80px;
		font-size: 20px;
	}
	
	.ukrgo-thumbnails-track {
		gap: 10px;
	}
	
	.header-port {
		gap: 15px;
		padding: 20px 0 25px 0;
	}	
	.port-block {
		flex-direction: column;
		gap: 30px;
	}
	.port-block-gal, .port-left-txt {
		width: 100%;
	}
	.ukrgo-main-image img {
		height: 300px;
	}
	.title-single .title-h1 {
		font-size: 28px;
	}
	.port-content {
		padding: 25px 0;
	}
	.price-page .price-txt, .price-page .price-cena {
		font-size: 14px;
	}
	.form-grid {
		flex-direction: column;
		margin-top: 20px;
	}
	.form-item-but {
		width: 100%;
	}
	.call {
		padding: 30px 0;
	}
	.popup-content {
		padding: 30px 30px;
		max-width: 90%;
	}
	.contact-block {
		flex-direction: column;
		gap: 40px;
	}
	.contact-txt {
		width: 100%;
	}
	.contact-map {
		width: 100%;
	}
	.phone-cont {
		font-size: 22px;
	}
	.title-h3 {
		font-size: 22px;
		margin: 10px 0 10px 0;
	}
	.footer-menu .main-navigation .sub-menu {
		left: -100px;
	}

	.services-block {
		display: grid;
		grid-template-columns: 1fr;
		gap: 30px;
		padding: 10px 0;
	}
	.service-description {
		font-size: 13px;
	} 
	.opis-us h3 a {
		font-size: 18px;
	}
	.serv-home .service-description {
		font-size: 13px;
	}
	.slider-slide {
		min-height: 280px;
	}
	.slide-content {
		max-width: 85%;
		padding: 10px 80px 10px 20px;
		left: 0px;
	}
	.serv {
		padding-top: 220px;
		margin-top: -210px;
		padding-bottom: 20px;
	}
	.form-name {
		width: 90%;
	}
	
	/* Дополнительные стили для мобильного меню */
	.mobile-menu .menu-item-has-children {
		position: relative;
	}
	
	/* Плавное открытие подменю */
	.mobile-menu .sub-menu {
		overflow: hidden;
		transition: max-height 0.3s ease, opacity 0.3s ease;
		min-height: 0;
		
	}
	
	.mobile-menu .sub-menu.active {
		max-height: 500px; /* Достаточно для подменю */
		opacity: 1;
	}
	
	/* Стили для подменю в мобильной версии */
    .mobile-menu .sub-menu {
        display: none; /* Скрыты по умолчанию */
        list-style: none;
        padding-left: 20px;
        margin: 5px 0 5px 0;
        background: #f8f9fa;
        border-radius: 5px;
    }

    .mobile-menu .sub-menu li {
        margin-bottom: 0;
        border-bottom: 1px solid #eee;
    }

    .mobile-menu .sub-menu li:last-child {
        border-bottom: none;
    }

    .mobile-menu .sub-menu a {
        font-size: 15px;
        font-weight: normal;
        padding: 8px 15px;
        color: #274F37;
    }

    .mobile-menu .sub-menu a:hover {
        color: #FEC748;
    }

    /* Третий уровень вложенности */
    .mobile-menu .sub-menu .sub-menu {
        padding-left: 20px;
        margin-left: 5px;
        background: #f0f1f2;
    }

    .mobile-menu .sub-menu .sub-menu a {
        font-size: 14px;
        padding: 8px 15px;
    }

    /* Стрелка для пунктов с подменю */
    .mobile-menu .menu-item-has-children > a {
        position: relative;
        padding-right: 35px;
    }

    .mobile-menu .menu-item-has-children > a::after {
        content: '▼';
        position: absolute;
        right: 10px;
        top: 50%;
        transform: translateY(-50%);
        font-size: 12px;
        transition: transform 0.3s ease;
        color: #274F37;
    }

    .mobile-menu .menu-item-has-children.is-open > a::after {
        transform: translateY(-50%) rotate(180deg);
    }

    /* Для подменю второго уровня - стрелка вправо/вниз */
    .mobile-menu .sub-menu .menu-item-has-children > a::after {
        content: '▶';
    }

    .mobile-menu .sub-menu .menu-item-has-children.is-open > a::after {
        transform: translateY(-50%) rotate(90deg);
    }
}