/*
Theme Name: Modality Child
Theme URI: http://vpthemes.com/modality/
Template: modality
Author: Vitaly Pinchev
Author URI: http://vpthemes.com
Description: Modality introducing a very clean and neat design that can be used for any type of website. It comes with great variety of options to customize the look and feel of the theme via Customizer. Theme supports responsive design, customizable home page sections, Google fonts, unlimited colors, animation, automatic image resizing and more. The FontAwesome icon pack delivers Retina Ready icons that look great on an iPad or other HD devices. 4 footer widget columns, scroll to top feature, social links, support for WooCommerce and Contact Form 7 plugins, five post formats and more.
Tags: black,white,blue,light,one-column,two-columns,right-sidebar,left-sidebar,fluid-layout,responsive-layout,custom-background,custom-menu,custom-colors,featured-images,post-formats,theme-options,threaded-comments,translation-ready,full-width-template,custom-header,featured-image-header
Version: 10.4.1740829881
Updated: 2025-03-01 11:51:21

*/

/* ВАЖНО: На сайте стоит Cloudflare. После изменения CSS нужно очистить кеш Cloudflare, иначе изменения не будут видны. */

.type-news a {
	color: #33452f;
}

.container {
	margin: 0 auto;
	padding: 20px;
}

h1 {
	text-align: left;
	font-size: 36px !important;
	font-weight: bold !important;
	line-height: 55px !important;
	margin-bottom: 20px;
}

h2:not(.woocommerce-loop-product__title) {
	font-size: 28px !important;
	line-height: 43px !important;
}

.woocommerce-Tabs-panel--description > h2:first-child {
	display: none;
}

.woocommerce div.product .product_title,
.woocommerce #content div.product .product_title,
.woocommerce-page div.product .product_title,
.woocommerce-page #content div.product .product_title {
	font-size: 36px !important;
	font-weight: 900 !important;
	line-height: 55px !important;
	letter-spacing: 1px;
}

@media screen and (max-width: 1080px) {
	h1 {
		font-size: 28px !important;
		line-height: 43px !important;
	}
	h2 {
		font-size: 24px !important;
		line-height: 37px !important;
	}
	.woocommerce div.product .product_title,
	.woocommerce #content div.product .product_title,
	.woocommerce-page div.product .product_title,
	.woocommerce-page #content div.product .product_title {
		font-size: 28px !important;
		line-height: 43px !important;
	}
}

.news-list {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	flex-wrap: wrap;
	gap: 15px;
}

article {
	background: #fff;
	padding: 12px 12px 20px 12px;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
	transition: transform 0.3s ease-in-out;
	position: relative;
	width: 100%;

}

.excerpt {
	display: -webkit-box;
	overflow: hidden;
	height: 75px;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
}

article h2 {
	font-size: 22px;
	margin: 20px 0 0;
	padding: 0;
	overflow: hidden;
	display: -webkit-box;
	height: 65px;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	line-height: normal;
}

article h2 a {
	text-decoration: none;
	color: #333;
	transition: color 0.3s ease-in-out;
}

article h2 a:hover {
	color: #0073aa;
}

article a {
	inset: 0;
	z-index: 10;
}

article img {
	width: 100%;
}

article p strong {
	font-weight: bold;
	color: #666;
}


.post-thumbnail img {
	width: 100%;
	height: auto;
	border-radius: 5px;
	margin: 0;
}

.excerpt {
	font-size: 16px;
	line-height: 1.5;
	color: #444;
	margin: 12px 0 0;
}

.pagination {
	text-align: center;
	margin-top: 30px;
}

.pagination a,
.pagination span {
	display: inline-block;
	padding: 10px 15px;
	margin: 5px;
	border-radius: 5px;
	background: #f1f1f1;
	color: #333;
	text-decoration: none;
	transition: background 0.3s;
}

.pagination a:hover {
	background: #0073aa;
	color: #fff;
}

.pagination .current {
	background: #0073aa;
	color: #fff;
}

.news_date {
	color: #4A4A4A;
	margin: 8px 0 0;
	opacity: .5;
}

.content-with-sidebar article h1 {
	margin: 0;
	padding: 0;
	font-size: 32px !important;
	line-height: normal !important;
	letter-spacing: 1px;
}

.content-with-sidebar article .news_date {
	margin: 10px 0;
}

.content-with-sidebar article p img {
	width: auto;
	margin: 0 auto;
	display: block;
}


.woocommerce-loop-product__title {
	overflow: hidden;
	display: -webkit-box;
	height: 90px;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
}

.slick-list {
	margin: 0 -10px;
}

.slick-slide {
	margin: 0 10px;
}

.recent-posts {
	margin: 0;
}

.recent-post-item {
	background: #fff;
	padding: 12px 12px 20px;
}

.recent-post-item a h3 {
	overflow: hidden;
	display: -webkit-box;
	height: 50px;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	margin: 12px 0 0;
	padding: 0;
}

.recent-post-item a img {
	display: block;
	width: 100%;
	height: 200px;
	object-fit: cover;
	margin: 0;
}

.recent-post-info p {
	overflow: hidden;
	display: -webkit-box;
	height: 75px;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	margin: 10px 0 0;
	padding: 0;
}


.slick-prev {
	left: -12px;
	z-index: 10;
}

.slick-prev::before {
	color: #33452f;
	font-size: 30px;
}


.slick-next {
	right: -12px;
	z-index: 10;
}

.slick-next::before {
	color: #33452f;
	font-size: 30px;
}

@media (min-width: 648px) {
	.container {
		width: 100% !important;
	}

	.container .news-list {
		flex-direction: row;
		gap: 20px;
	}

	.container .news-list article {
		width: calc(50% - 10px);
	}

	.container .news-list article img {
		object-fit: cover;
		height: 200px;
	}
}

@media (min-width: 960px) {
	.container .news-list {
		flex-direction: row;
		gap: 20px;
	}

	.container .news-list article {
		width: calc(33% - 11px);
	}

}


@media (min-width: 1366px) {
	.container {
		width: 1360px !important;
		margin: 0 auto !important;
		padding: 0 !important;
	}

	.container .news-list {
		flex-direction: row;
		gap: 20px;
	}

	.container .news-list article {
		width: calc(33% - 11px);
	}

	.container .news-list article:hover {
		transform: translate(0, -5px);
	}

	.content-with-sidebar article h1 {
		font-size: 50px !important;
		letter-spacing: 2px;
	}

}

@media (min-width: 1880px) {
	.container {
		width: 1360px !important;
		margin: 0 auto !important;
	}

	.container .news-list {
		flex-direction: row;
		gap: 20px;
	}

	.container .news-list article {
		width: calc(25% - 15px);
	}

}

.homescreen8wrapright h4 {
	font-family: 'Kudryashev Display';
	font-style: normal;
	font-weight: 500;
	font-size: 48px;
	line-height: 73px;
	text-transform: uppercase;
	color: #5A7454;
	margin-top: 0px;
	padding-top: 0px;
}

.homescreen2 h4 {
	font-family: 'Kudryashev Display';
	font-style: normal;
	font-weight: 500;
	font-size: 48px;
	line-height: 73px;
	text-transform: uppercase;
	color: #5A7454;
	width: 1300px;
	margin: 0 auto;
	padding-top: 185px;
	padding-bottom: 50px;
}

.homescreen7 h2 {
	font-family: 'Kudryashev Display';
	font-style: normal;
	font-weight: 500;
	font-size: 48px;
	line-height: 73px;
	text-transform: uppercase;
	color: #5A7454;
	padding-top: 0px;
	padding-bottom: 50px;
	max-width: 1300px;
	margin: 0 auto;
}

@media screen and (max-width: 1300px) {
	.homescreen2 h4 {
		width: 1090px;
		padding: 0px 15px;
		padding-top: 185px;
		padding-bottom: 50px;
	}

	.homescreen7 h2 {
		padding: 0px 15px;
		padding-top: 0px;
		padding-bottom: 50px;
		max-width: 1090px;
	}
}

@media screen and (max-width: 1090px) {
	.homescreen8wrapplanset h4 {
		font-family: 'Kudryashev Display';
		font-style: normal;
		font-weight: 500;
		font-size: 40px;
		line-height: 61px;
		text-transform: uppercase;
		color: #5A7454;
	}

	.homescreen2 h4 {
		width: 768px;
		padding: 0px 45px;
		padding-top: 100px;
		padding-bottom: 50px;
	}

	.homescreen7 h2 {
		padding: 0px 45px;
		padding-top: 0px;
		padding-bottom: 50px;
		max-width: 768px;
		font-size: 40px;
		line-height: 61px;
	}

	.homescreen8wrapplanset h4 {
		font-family: 'Kudryashev Display';
		font-style: normal;
		font-weight: 500;
		font-size: 40px;
		line-height: 61px;
		text-transform: uppercase;
		color: #5A7454;
	}

}

.homescreen7 h4 {
	font-family: 'Kudryashev Display';
	font-style: normal;
	font-weight: 500;
	font-size: 48px;
	line-height: 73px;
	text-transform: uppercase;
	color: #5A7454;
	padding-top: 0px;
	padding-bottom: 50px;
	max-width: 1300px;
	margin: 0 auto;
}

.homescreen6wrap h5 {
	font-family: 'Kudryashev Headline';
	font-style: normal;
	font-weight: 500;
	font-size: 20px;
	line-height: 30px;
	display: flex;
	align-items: center;
	color: #262222;
	text-transform: none;
	margin-left: 0px !important;
}

.homescreen6 h4 {
	font-family: 'Kudryashev Display';
	font-style: normal;
	font-weight: 500;
	font-size: 48px;
	line-height: 73px;
	text-transform: uppercase;
	color: #5A7454;
	max-width: 1300px;
	margin: 0 auto;
}

.homescreen5wrap h2 {
	font-family: 'Kudryashev Display';
	font-style: normal;
	font-weight: 500;
	font-size: 48px;
	line-height: 73px;
	text-transform: uppercase;
	color: #5A7454;
	margin: 0px;
	padding-top: 200px;
	padding-bottom: 70px;
	max-width: 645px;
}

.homescreen4wrap h2 {
	font-family: 'Kudryashev Display';
	font-style: normal;
	font-weight: 500;
	font-size: 48px;
	line-height: 73px;
	text-transform: uppercase;
	color: #FFFFFF;
	margin: 0px;
	max-width: 860px;
	padding-top: 35px;
	padding-bottom: 35px;
}

.homescreen3wrapleft h2 {
	font-family: 'Kudryashev Display';
	font-style: normal;
	font-weight: 500;
	font-size: 48px;
	line-height: 73px;
	text-transform: uppercase;
	color: #FFFFFF;
	padding: 0px;
	margin: 0px;
	padding-bottom: 50px;
}

.single-news .sidebar h4 {
	font-size: 30px;
}

.single-news .sidebar h4 {
	margin-top: 20px;
	margin-bottom: 10px;
}

.single-news .sidebar h4 {
	font-family: inherit;
	font-weight: 500;
	line-height: 1.1;
	color: inherit;
}

@media screen and (max-width: 1090px) {
	.homescreen3wrapleft h2 {
		font-size: 40px;
		line-height: 61px;
		width: 768px;
		padding: 0px 45px;
		margin: 0 auto;
		padding-bottom: 50px;
	}

	.homescreen7 h4 {
		padding: 0px 45px;
		padding-top: 0px;
		padding-bottom: 50px;
		max-width: 768px;
		font-size: 40px;
		line-height: 61px;
	}

	.homescreen6 h4 {
		max-width: 768px;
		padding: 0px 45px;
		font-size: 40px;
		line-height: 61px;
	}

	.homescreen5wrap h2 {
		padding-top: 100px;
		font-size: 40px;
		line-height: 61px;
	}

	.homescreen4wrap h2 {
		font-size: 40px;
		line-height: 61px;
		padding-top: 80px;
		padding-bottom: 30px;
	}
}

@media screen and (max-width: 1300px) {
	.homescreen7 h4 {
		padding: 0px 15px;
		padding-top: 0px;
		padding-bottom: 50px;
		max-width: 1090px;
	}

	.homescreen6 h4 {
		max-width: 1090px;
		padding: 0px 15px;
	}
}

@media screen and (max-width: 768px) {
	.homescreen3wrapleft h2 {
		font-size: 26px;
		line-height: 40px;
		width: 320px;
		padding: 0px 10px;
		margin: 0 auto;
		padding-bottom: 30px;
	}

	.homescreen5wrap h2 {
		padding-top: 85px;
		font-size: 26px;
		line-height: 40px;
		padding-bottom: 45px;
	}

	.homescreen6 h4 {
		max-width: 320px;
		padding: 0px 10px;
		font-size: 26px;
		line-height: 40px;
		padding-top: 80px;
	}

	.homescreen7 h4 {
		padding: 0px 10px;
		padding-top: 0px;
		padding-bottom: 50px;
		max-width: 320px;
		font-size: 26px;
		line-height: 40px;
	}

	.homescreen6wrap h5 {
		font-size: 16px;
		line-height: 24px;
	}

	.homescreen2 h4 {
		width: 100%;
		padding: 0px 10px;
		padding-top: 100px;
		padding-bottom: 50px;
		font-size: 26px;
		line-height: 40px;
	}

	.homescreen7 h2 {
		padding: 0px 10px;
		padding-top: 0px;
		padding-bottom: 50px;
		max-width: 320px;
		font-size: 26px;
		line-height: 40px;
	}

	

	.homescreen7 h2 {
		padding: 0px 15px;
		padding-top: 0px;
		padding-bottom: 50px;
		max-width: 1090px;
	}

	.homescreen7 h2 {
		padding: 0px 10px;
		padding-top: 0px;
		padding-bottom: 50px;
		max-width: 320px;
		font-size: 26px;
		line-height: 40px;
	}

	.homescreen4wrap h2 {
		font-size: 26px;
		line-height: 40px;
	}
}
.homescreen8wrapright h4 {
	display: none;
}
.home .thumb-wrapper img {
	display: none;
}

.block-content img {
	width: 100%;
}

.homescreen8wrap-title {
	max-width: 1360px;
	margin: 0 auto;
	padding: 20px 20px 0;
	box-sizing: border-box;
}

.homescreen8wrap > h2 {
	width: 100%;
	margin-top: 0;
	margin-bottom: 10px;
}

.homescreen8wrapplanset {
	display: none;
}

.homescreen8wrapleft {
	display: block;
	width: 350px;
	padding: 0px 10px;
	float: none;
	margin: 0 auto;
}

.homescreen8wrap h1 {
    display: block;
    width: 100%;
    margin: 0;
    padding: 0;
}

.homescreen8wrapright {
	width: 350px;
}

.homescreen8wrapright .homescreen8wrapspan {
	display: block;
	margin-bottom: 20px !important;
}

.about-social-links {
	margin: 15px 0 0;
	display: flex;
	justify-content: flex-start;
	align-items: stretch;
	gap: 15px;
}

.about-social-links a {
	background-color: #33452f;
	color: #fff;
	border-radius: 5px;
	transition: .15s all ease;
	cursor: pointer;
}

.about-social-links a:hover {
	transform: translateY(-2px);
	color: #fff;
}

.about-social-links a:active {
	color: #fff;
}

.about-social-links a:focus {
	color: #fff;
}

.homescreen8wrap .homescreen8wrapleft ul {
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 8px;

}
.about_contacts_description {
	margin: 20px 0;
}
.homescreen8wrap .page-content {
	padding: 0 15px;
}
@media (min-width: 768px) {
	.homescreen8wrap {
		display: flex;
		justify-content: flex-start;
		align-items: flex-start;
        padding: 50px 20px;
        flex-wrap: wrap;
        gap: 15px 0;
	}

	.homescreen8wrap .homescreen8wrapleft {
		display: block;
		width: 50%;
		margin: 0;
	}

	.homescreen8wrap h1 {
		margin: 0;
		padding: 0;
		letter-spacing: normal;
	}

	.homescreen8wrap .homescreen8wrapleft ul {
		
		display: flex;
		flex-direction: column;
		gap: 8px;

	}

	.homescreen8wrap .homescreen8wrapleft ul li {
		font-size: 18px;
	}

	.homescreen8wrap .homescreen8wrapleft ul li a:hover {
		color: #33452f;
	}

	.homescreen8wrap .homescreen8wrapleft .email {
		margin: 15px 0 0;
		font-size: 18px;
	}

	.homescreen8wrap .homescreen8wrapleft .email a:hover {
		color: #33452f;
	}
}

@media (min-width: 960px) {
	.about-section .row.mb-5 {
		margin-top: 30px;
	}
	.about_contacts_description {
		margin: 50px 0;
	}
	.block-content {
		display: flex;
		justify-content: flex-start;
		align-items: center;
	}

	.block-content .h5 {
		font-size: 24px;
	}

	.img-bottom {
		flex-direction: row-reverse;
	}

	.block-content .container-first {
		width: 50%;
		padding: 0 20px 0 0;
	}

	.block-content .img-section-first {
		width: 50%;
	}

	.block-content .container-second {
		width: 50%;
		padding: 0 0 0 20px;
	}

	.block-content .img-section-second {
		width: 50%;
	}
}

@media (min-width: 1366px) {
	.homescreen8wrap .homescreen8wrapleft ul li {
		font-size: 22px;
	}
	.homescreen8wrap {
		align-items: center;
        gap: 40px 0;
	}
	.homescreen8wrap .homescreen8wrapleft .email {
		margin: 15px 0 0;
		font-size: 22px;
	}

	.about-social-links a {
		padding: 8px 20px;
		font-size: 18px;
	}

	.about-social-links a img {
		width: 24px;
	}

	.homescreen8wrapright {
		width: 50%;
	}

	.homescreen8wrapright .wpcf7-submit {
		margin-top: 30px;
	}
}

/* Прибрати лінії внизу полів форми */
.homescreen8wrapright .wpcf7-form-control-wrap {
	border-bottom: none !important;
	padding-bottom: 0 !important;
	margin-bottom: 15px !important;
}

/* Вирівняти ширину полів форми */
.homescreen8wrapright .wpcf7-form-control {
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
	font-family: 'Futura PT' !important;
	font-style: normal !important;
	font-weight: 300 !important;
	font-size: 18px !important;
	line-height: 28px !important;
	color: #000000 !important;
}

/* Шрифт для placeholder тексту */
.homescreen8wrapright .wpcf7-form-control::placeholder {
	font-family: 'Futura PT' !important;
	font-style: normal !important;
	font-weight: 300 !important;
	font-size: 18px !important;
	line-height: 28px !important;
	color: #000000 !important;
}

/* Обмежити ширину контейнера форми */
.homescreen8wrapright .wpcf7 {
	max-width: 100%;
}

.homescreen8wrapright .wpcf7 .container {
	max-width: 100% !important;
	width: 100% !important;
}

.homescreen8wrapright .wpcf7 .row {
	margin: 0 !important;
}

.homescreen8wrapright .wpcf7 .columns {
	padding: 0 !important;
	width: 100% !important;
}

.homescreen8wrapright .wpcf7 .field {
	width: 100% !important;
}

.homescreen8wrapright .wpcf7 .field p {
	margin: 0 !important;
	width: 100% !important;
}

.homescreen8wrapright .wpcf7 .wpcf7-form-control-wrap {
	width: 100% !important;
	display: block !important;
}

/* Стилі для кнопки відправки форми - зелена з білим текстом і центрування */
.homescreen8wrapright .wpcf7-submit {
	background-color: #33452f !important;
	color: #fff !important;
	border-color: #33452f !important;
	display: block !important;
	margin: 30px auto 0 !important;
}

.homescreen8wrapright .wpcf7-submit:hover {
	background-color: #2a3826 !important;
	border-color: #2a3826 !important;
	color: #fff !important;
}
.single-post #comments {
	display: none;
}

.single-post .post-info {
	display: none;
}
.section-title-right:after,
.section-title:after,
.boxtitle:after {
	display: none !important;
}

.category-blog .content-posts-wrap, .category-news .content-posts-wrap{
	margin-top: 0px;
	margin-bottom: 0px;
	max-width: 1140px;
}
.category-blog .post-wrapper, .category-news .post-wrapper{
	padding: 5px !important;
	background: unset !important;
	border: unset !important;
}
.category-blog .blog-top-image h1, .category-news .blog-top-image h1 {
	max-width: 1148px !important;
	width: 100%;
	margin: 20px auto;
}
.category-blog .post-single, .category-news .post-single {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
	padding: 10px;
}
@media (max-width: 992px) {
	.category-blog .post-single, .category-news .post-single {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 767px) {
	.category-blog .post-single, .category-news .post-single {
		display: block;
	}
	.meta {
		display: flex;
		justify-content: space-around;
	}
}

/* Hero Slider Styles */
.heroSlider-section {
	width: 100%;
	margin: 0;
	padding: 0;
	overflow: hidden;
}

.heroSlider-item {
	position: relative;
}

.heroSlider-item a {
	display: block;
	width: 100%;
	height: 100%;
}

.heroSlider-item picture {
	display: block;
	width: 100%;
}

.heroSlider-item img {
	width: 100%;
	height: auto;
	display: block;
	object-fit: cover;
}

/* Owl Carousel Hero Slider */
.owl-heroSlider .owl-dots {
	position: absolute;
	bottom: 20px;
	left: 50%;
	transform: translateX(-50%);
	display: flex;
	gap: 10px;
	z-index: 10;
}

.owl-heroSlider .owl-dot {
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.5);
	border: none;
	cursor: pointer;
	transition: background 0.3s ease;
}

.owl-heroSlider .owl-dot.active,
.owl-heroSlider .owl-dot:hover {
	background: #fff;
}

.owl-heroSlider .owl-nav {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 100%;
	display: flex;
	justify-content: space-between;
	pointer-events: none;
	padding: 0 20px;
	box-sizing: border-box;
}

.owl-heroSlider .owl-nav button {
	pointer-events: auto;
	width: 50px;
	height: 50px;
	background: rgba(255, 255, 255, 0.8) !important;
	border-radius: 50%;
	font-size: 24px;
	color: #333;
	border: none;
	cursor: pointer;
	transition: background 0.3s ease;
}

.owl-heroSlider .owl-nav button:hover {
	background: #fff !important;
}

.owl-heroSlider .owl-nav.disabled {
	display: none;
}

@media (max-width: 768px) {
	.owl-heroSlider .owl-dots {
		bottom: 10px;
	}

	.owl-heroSlider .owl-dot {
		width: 10px;
		height: 10px;
	}

	.owl-heroSlider .owl-nav button {
		width: 40px;
		height: 40px;
		font-size: 18px;
	}

	.owl-heroSlider .owl-nav {
		padding: 0 10px;
	}
}

/* Dropdown menu styling */
.dropdown-menu {
	background: #fff !important;
	border: none !important;
	border-bottom: 2px solid #5A7454 !important;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.nav-bar .sub-menu,
.nav-bar .children {
	background-color: #fff !important;
	border-bottom: 2px solid #5A7454 !important;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

ul.nav-bar ul a,
.nav-bar ul ul a,
.dropdown-menu li a {
	color: #5A7454 !important;
	border-bottom: 1px solid rgba(90, 116, 84, 0.15) !important;
	background: transparent !important;
}

ul.nav-bar ul a:hover,
.nav-bar ul ul a:hover,
ul.nav-bar ul a:focus,
.nav-bar ul ul a:focus,
.dropdown-menu li a:hover,
.dropdown-menu li a:focus,
.navbar-nav ul li a:hover,
.navbar-nav ul li a:focus,
.navbar-nav ul li a.active,
.navbar-nav ul li a.active-parent {
	color: #fff !important;
	background: #5A7454 !important;
}

.dropdown-menu li a:before {
	color: #5A7454;
}

.dropdown-menu li a:hover:before {
	color: #fff;
}

/* ===== Shop Layout: Header full-width, Sidebar + Products below ===== */

/* Header spans full width above the columns */
.col2-r .woocommerce > .woocommerce-products-header {
	width: 100%;
	margin-bottom: 20px;
}

/* Two-column layout: sidebar left + products right */
.woo-shop-columns {
	display: flex;
	gap: 30px;
	align-items: flex-start;
}

/* Override parent theme float-based layout inside .woo-shop-columns */
.woo-shop-columns .sidebar-frame {
	width: 220px;
	min-width: 220px;
	float: none !important;
}

.woo-shop-columns .sidebar-frame .sidebar {
	position: sticky;
	top: 20px;
	margin-right: 0 !important;
}

.woo-shop-columns #content-box {
	flex: 1;
	float: none !important;
	width: auto !important;
	min-width: 0;
}

/* Product Categories Widget */
.woo-shop-columns .sidebar-frame .widget_product_categories ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.woo-shop-columns .sidebar-frame .widget_product_categories ul li {
	border-bottom: 1px solid rgba(90, 116, 84, 0.15);
}

.woo-shop-columns .sidebar-frame .widget_product_categories ul li:last-child {
	border-bottom: none;
}

.woo-shop-columns .sidebar-frame .widget_product_categories ul li a {
	display: block;
	padding: 10px 0;
	color: #333;
	text-decoration: none;
	transition: color 0.2s ease;
}

.woo-shop-columns .sidebar-frame .widget_product_categories ul li a:hover,
.woo-shop-columns .sidebar-frame .widget_product_categories ul li.current-cat > a {
	color: #5A7454;
	font-weight: 600;
}

.woo-shop-columns .sidebar-frame .widget_product_categories ul.children {
	padding-left: 15px;
}

/* Adjust WooCommerce product grid with sidebar */
.woo-shop-columns .woocommerce ul.products[class*="columns-"],
.woo-shop-columns ul.products[class*="columns-"] {
	columns: unset;
}

/* ===== Mobile: categories as horizontal scrollable row before products ===== */
@media screen and (max-width: 768px) {
	.woo-shop-columns {
		flex-direction: column;
		gap: 0;
	}

	.woo-shop-columns .sidebar-frame {
		width: 100%;
		min-width: unset;
		order: -1;
		margin-bottom: 15px;
	}

	.woo-shop-columns .sidebar-frame .sidebar {
		position: static;
	}

	/* Hide widget title on mobile */
	.woo-shop-columns .sidebar-frame .widget_product_categories .widget-title {
		display: none;
	}

	/* Horizontal scrollable categories */
	.woo-shop-columns .sidebar-frame .widget_product_categories ul {
		display: flex;
		flex-wrap: nowrap;
		overflow-x: auto;
		gap: 8px;
		padding: 8px 0;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
	}

	.woo-shop-columns .sidebar-frame .widget_product_categories ul::-webkit-scrollbar {
		display: none;
	}

	.woo-shop-columns .sidebar-frame .widget_product_categories ul li {
		flex-shrink: 0;
		border-bottom: none;
	}

	.woo-shop-columns .sidebar-frame .widget_product_categories ul li a {
		display: inline-block;
		padding: 3px 7px;
		border: 1px solid #B1B1B1;
		border-radius: 4px;
		white-space: nowrap;
		font-size: 14px;
		color: #333;
	}

	.woo-shop-columns .sidebar-frame .widget_product_categories ul li a:hover,
	.woo-shop-columns .sidebar-frame .widget_product_categories ul li.current-cat > a {
		background: #5A7454;
		color: #fff;
		border-color: #5A7454;
	}

	/* Hide subcategories on mobile */
	.woo-shop-columns .sidebar-frame .widget_product_categories ul.children {
		display: none;
	}

	.woo-shop-columns #content-box {
		width: 100% !important;
	}
}

/* Account icon label */
.accico a {
	display: flex;
	align-items: center;
	gap: 6px;
}
.accico-label {
	font-size: 14px;
	white-space: nowrap;
}

.cartico2 {
	border-radius: 0;
}

/* Кнопки выбора вариаций вместо select */
.variations .product-attr-values {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 4px;
}

.variations .product-attr-btn {
	display: inline-block;
	padding: 7px 18px;
	border: 1px solid #5A7454;
	border-radius: 4px;
	font-size: 14px;
	color: #5A7454;
	background: #fff;
	cursor: pointer;
	transition: background 0.2s, color 0.2s;
	user-select: none;
}

.variations .product-attr-btn:hover {
	background: #edf3ec;
}

.variations .product-attr-btn.active {
	background: #5A7454;
	color: #fff;
	border-color: #5A7454;
}

/* Скрыть стандартную ссылку "Сбросить" если не нужна */
.variations .reset_variations {
	margin-top: 8px;
}