.product-list-section {
	padding: 110px 0 210px;
    background-color: #fff;
}

.product-layout {
	display: grid;
	grid-template-columns: 1fr;
	gap: 28px;
	align-items: start;
}

.product-sidebar {
	position: static;
}

.product-category-list,
.product-subcategory-list,
.product-grid {
	margin: 0;
	padding: 0;
	list-style: none;
}

.product-category-item {
	overflow: hidden;
	border-radius: 8px;
	background: #e9e9e9;
}

.product-category-item + .product-category-item {
	margin-top:20px;
}

.product-category-link {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 110px;
	padding: 25px 30px 25px 35px;
	background: var(--gm-theme);
	color: #ffffff;
	font-size: var(--f24);
	line-height: 1.3;
	font-weight: 600;
	text-decoration: none;
}

.product-category-link:hover,
.product-category-link:focus,
.product-category-link:active,
.product-category-item.is-active > .product-category-link {
	color: #ffffff;
}


.product-category-toggle-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: #ffffff;
	font-size: 35px;
	font-weight: 300;
	transition: transform 0.24s ease;
}

.product-category-item.is-active .product-category-toggle-icon {
	transform: rotate(45deg);
}

.product-subcategory-list {
	background: #F5F5F5;
}

.product-subcategory-item + .product-subcategory-item {
	border-top: 1px solid rgba(0, 0, 0, 0.08);
}

.product-subcategory-item a {
	position: relative;
	display: block;
	padding: 25px 35px 25px 55px;
	color: #888;
	    font-weight: 600;
	text-decoration: none;
	transition: color 0.24s ease, background-color 0.24s ease;
}

.product-subcategory-item a::before {
	content: "";
	position: absolute;
	left: 35px;
	top: 50%;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #b7b7b7;
	transform: translateY(-50%);
	transition: background-color 0.24s ease;
}

.product-subcategory-item.is-active a,
.product-subcategory-item a:hover {
	color: #005baa;
	background: rgba(255, 255, 255, 0.28);
}

.product-subcategory-item.is-active a::before,
.product-subcategory-item a:hover::before {
	background: #005baa;
}

.product-main {
	min-width: 0;
}

.product-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 12px;
}

.product-list-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	min-height:420px;
	padding: 30px 60px;
	border-radius: 8px;
	background: #E9E9E9;
	text-align: center;
	text-decoration: none;
	position: relative;
	overflow: hidden;
	justify-content: flex-end;
  flex-direction: column;
	transition: transform 0.28s ease, box-shadow 0.28s ease;
	box-sizing: border-box;
}

.product-list-card::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 4px;
	background: transparent;
	transition: background-color 0.28s ease;
}

.product-list-card:hover::after {
	background: var(--gm-theme);
}

.product-list-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 16px 32px rgba(17, 33, 56, 0.08);
}

.product-list-card-image {
	display: flex;
	flex: 1;
	justify-content: center;
	align-items: center;
	justify-content: center;}
.product-list-card-more-text {
	display: inline-block;
	max-width: 0;
	overflow: hidden;
	white-space: nowrap;
	opacity: 0;
	transition: max-width 0.24s ease, opacity 0.24s ease;
}


.product-list-card:hover .product-list-card-more-text {
	max-width: 120px;
	opacity: 1;
}

.product-list-card:hover .product-list-card-more-icon::before {
	content: "\e71d";
}

.product-list-card-more-icon::before {
	content: "\e71c";
}

.product-list-card-image img {
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
}

.product-list-card-title {
	font-size: var(--f24);
	font-weight: 600;
}

.product-list-card-more {
	display: inline-flex;
	align-items: center;
	margin-top: 15px;
	color: var(--gm-theme);
	font-size: var(--f16);
	justify-content: center;
}


.product-list-card-more .iconfont {
	font-size: 18px;
}


.product-list-card-more-default,
.product-list-card-more-hover {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
}

.product-list-card-more-hover {
	display: none;
}


.product-list-card:hover .product-list-card-more-default {
	display: none;
}


.product-list-card:hover .product-list-card-more-hover {
	display: flex;
	align-items: center;
	font-weight: 700;
}

.product-empty-state {
	padding: 48px 32px;
	border-radius: 14px;
	background: #F4F4F4;
	text-align: center;
}

.product-empty-title {
	font-size: var(--f24);
	font-weight: 700;
}

.product-empty-text {
	margin: 14px auto 0;
	max-width: 520px;
	color: #888;
	font-size: var(--f16);
	line-height: 1.75;
}

.product-main .page {
	margin-top: 36px;
	padding-bottom: 0;
	text-align: center;
}

.product-main .pagination {
	justify-content: center;
}


@media (min-width: 992px) {
	.product-layout {
		grid-template-columns: 370px minmax(0, 1fr);
		gap: 20px;
	}

	.product-sidebar {
		position: sticky;
		top: 110px;
	}

	.product-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}


}


