/*  Product page */
.product-sort-top-info {
	border: 1px solid #dfdfdf;
	padding: 0px 20px;
	border-radius: 10px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 40px;

	& .product-left,
	.product-top-control {
		display: inline-flex;
		align-items: center;
		padding: 10px 0;
	}

	& .product-top-control {
		justify-content: flex-end;
		margin: 0 0 0 auto;
		border-right: 1px solid #d9d9d9;
		padding-right: 20px;

		b {
			font-size: 16px;
			font-weight: 600;
			line-height: 1.1;
		}
	}
}

.product-sidebar {
	position: sticky;
	top: 160px;
	width: 301px;
	align-self: flex-start;
	margin-bottom: 80px;
}

.pro-category-wrap {
	border: 1px solid #07b4e3;
	border-radius: 10px;

	& .shop-heading {
		font-size: 26px;
		color: var(--white);
		font-weight: bold;
		background-color: var(--theme);
		padding: 16px 20px;
		border-radius: 10px 10px 0 0;
		margin-bottom: 0;
	}
	&.collapsed {
		.shop-heading {
			border-radius: 6px;
		}
	}
}

.product-view-grid {
	& a {
		border: 1px solid #142c75;
		background-color: #eafbff;
		border-radius: 4px;
		padding: 4px 4px;
		line-height: 1;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 30px;
		height: 24px;
	}
}

.woocommerce .woocommerce-ordering {
	margin-bottom: 0 !important;
}

.product-view-grid {
	display: inline-flex;
	align-items: center;
	gap: 15px;
	padding-left: 20px;
}

.woocommerce-ordering {
	display: inline-flex;
	align-items: center;

	& label,
	select {
		font-size: 16px;
		font-weight: 600;
		color: #2e2e2e;
	}

	& select {
		background: url(../images/svg/down-arrow.svg) no-repeat center right 5px;
		border: 0;
		padding: 10px 30px 10px 10px;
	}
}

.product-shop-wraper {
	width: calc(100% - 301px);
	padding-left: 80px;
}

.woocommerce ul.products.columns-3 {
	margin-left: -22px;
	margin-right: -22px;

	& > li.product {
		width: calc(33.33% - 44px);
		margin: 0 22px 44px;
		text-align: center;
	}
}

.divider.mb-80 {
	margin-bottom: 80px;
}

.product-main-slider {
	width: 826px;
	position: sticky;
	top: 150px;
	align-self: flex-start;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;

	& .pro-slider {
		width: calc(100% - 163px);
		order: 2;
		border: 1px solid #dfdfdf;
		border-radius: 10px;
		height: 568px;

		& .img-slide {
			height: 575px;

			.woocommerce-product-gallery__image {
				height: 100%;
				display: flex;
				flex-wrap: wrap;
				align-items: center;
				justify-content: center;

				> a {
					display: flex;
					flex-wrap: wrap;
					align-items: center;
					justify-content: center;
					height: 100%;

					> img {
						max-height: 500px;
						object-fit: cover;
						height: auto;
						width: 100%;
					}
				}
			}

			> img {
				border-radius: 10px;
			}
		}
	}

	& .zoom-icon {
		position: absolute;
		right: 20px;
		top: 20px;
		width: 42px;
		height: 42px;
		background-color: #eafbff;
		border-radius: 100%;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		z-index: 1;
	}
}

.product__slider-thmb {
	position: relative;
	order: 1;
	width: 143px;
	padding-top: 30px;

	& .slick-slide {
		& .thumb-slide {
			border-radius: 10px;
			border: 1px solid #dfdfdf;
			height: 122px;
			display: inline-flex !important;
			align-items: center;
			justify-content: center;
			margin-bottom: 15px;

			> img {
				border-radius: 15px;
			}
		}

		&.slick-current {
			& .thumb-slide {
				border: 1px solid var(--dark-blue);
			}
		}
	}

	& .slick-prev {
		left: 50px;
		top: 0;
		-webkit-transform: rotate(90deg);
		-moz-transform: rotate(90deg);
		transform: rotate(90deg);
	}

	& .slick-next {
		bottom: 0;
		top: inherit;
		transform: rotate(90deg);
		right: inherit;
		left: 50px;
	}
}

/*  Product detail  */

.product__slider-thmb.no-top-padding {
	padding-top: 0 !important;
}

.product-detail-content {
	width: calc(100% - 827px);
	padding-left: 90px;

	& .page-header {
		border-bottom: 1px solid #dfdfdf;
		padding-bottom: 30px;
		margin-bottom: 30px;

		.title_price {
			padding-right: 85px;
		}

		& .heading-46 {
			margin-bottom: 10px;
		}

		& .sale {
			right: 0;
			left: inherit;
		}

		& .price {
			display: block;
			font-size: 30px !important;
			font-weight: bold;
			line-height: 1.2;
			color: var(--theme) !important;
			margin: 0;
		}
	}

	.badge_section {
		position: absolute;
		right: 0;
		top: 0;
		display: flex;
		flex-direction: column;

		.save,
		.new {
			position: relative;
			top: inherit;
		}

		.save {
			top: 0;
		}
	}

	.woocommerce-variation-price {
		margin-bottom: 20px;

		.price {
			font-size: 30px !important;
			font-weight: bold;
			line-height: 1.2;
			color: var(--theme) !important;
			margin: 0;
		}
	}
}

.qut-wrapper,
.product-info-size {
	& label {
		font-size: 20px;
		line-height: 1.2;
		margin-bottom: 10px;
		font-weight: 600;
		display: block;
	}

	& .quantitybox {
		width: 210px;
		border: 1px solid #dfdfdf;
		border-radius: 10px;
		display: inline-flex;
		margin-bottom: 30px;
	}

	& .value-button {
		width: 58px;
		height: 60px;
		display: inline-flex;
		align-items: center;
		justify-content: center;
	}

	& .quantity {
		width: calc(100% - 120px);
		border-left: 1px solid #dfdfdf;
		border-right: 1px solid #dfdfdf;

		& input {
			border: 0;
			outline: none;
			width: 100% !important;
			padding: 10px 20px !important;
			height: 100%;
			font-size: 20px !important;
			font-weight: 500;
			font-family: "Radio Canada Big";
		}
	}
}

.select_box_label {
	margin-bottom: 30px;

	& select {
		border: 1px solid #dfdfdf;
		border-radius: 10px;
		font-size: 18px;
		color: #2e2e2e;
		width: 100%;
		background: url(../images/svg/down-arrow.svg) no-repeat center right 15px;
		padding: 19px 20px;
	}
}

.woocommerce .product-button-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;

	& .button {
		font-size: 20px !important;
		width: 48% !important;
		font-weight: 500;
	}

	.yith-wcwl-add-to-wishlist {
		width: 48% !important;
		margin: 0;

		.yith-wcwl-add-button {
			padding: 17px 20px;
			line-height: 1.2;
			border-radius: 6px;
			width: 100%;
			background: #fff;
			font-size: 20px !important;
			font-weight: 500;
			color: #fff;
			display: inline-flex;
			justify-content: center;
			border: 1px solid #2e2e2e;

			&:hover {
				background-color: var(--theme);
				border-color: var(--theme);

				& i,
				& span,
				a.view-wishlist {
					color: var(--white);
				}
			}

			i,
			span {
				color: #2e2e2e;
				font-size: 22px;
			}

			span {
				display: inline-block;
				font-size: 18px;
			}

			a.delete_item {
				font-size: 0 !important;

				+ .separator {
					display: none !important;
				}
			}

			a.view-wishlist {
				display: inline-block;
				font-size: 18px;
				color: #232323;
			}
		}
	}

	& .button-border {
		border: 1px solid #2e2e2e;
		background-color: var(--white);
	}

	& .btnwhishlist {
		color: #2e2e2e;

		&::before {
			position: relative;
			content: "";
			background: url(../images/svg/whishlist-icon.svg) no-repeat left center;
			left: auto;
			display: inline-block;
			width: 27px;
			height: 24px;
			margin-right: 10px;
		}
	}
}

.accordion_in .acc_head {
	font-size: 26px;
	font-family: "Roboto Condensed";
	font-weight: bold;
}

.accordion_in .acc_content p {
	margin-bottom: 20px;
	font-size: 18px;
	color: #2e2e2e;

	&:last-of-type {
		margin-bottom: 0;
	}
}

.pro-accordion {
	border-top: 1px solid #dfdfdf;
	padding-top: 20px;
	margin-top: 50px;

	.acc_content {
		.woocommerce-product-attributes.shop_attributes {
			margin-bottom: 0 !important;
		}

		.woocommerce table.shop_attributes th,
		.woocommerce table.shop_attributes td {
			border-bottom: 0;
		}

		a {
			color: var(--theme);
			text-decoration: underline;

			&:hover {
				color: var(--dark-blue);
			}
		}

		ul {
			margin-left: 0px;
			padding-left: 0px;
			list-style-type: none;

			> li {
				font-size: 18px;
				line-height: 26px;
				position: relative;
				padding-left: 39px;
				letter-spacing: 0px;
				font-weight: normal;
				margin-bottom: 20px;

				&::before {
					content: "";
					position: absolute;
					left: 0;
					top: 2px;
					width: 24px;
					height: 24px;
					border-radius: 100%;
					background: url(../images/svg/check-list.svg) center;
					background-repeat: no-repeat;
				}
			}
		}

		p + ul {
			margin: 20px 0;
		}

		p > img {
			border: 1px solid #dfdfdf;
		}
	}
}

.woocommerce ul.products.columns-3.view-list {
	& > li.product {
		width: 100%;
		text-align: left;
		flex-direction: row;

		> a {
			max-width: 350px;
		}

		.product-info-wrap {
			flex: 1;
			border-radius: 0 10px 10px 0;
			border-top: 0;
			text-align: left;

			.button {
				width: auto;
			}
		}
	}
}
.ppcp-messages {
	margin-bottom: 20px;
}
@media (min-width: 991px) {
	.hide-in-desktop,
	.closemenu.desk-hide {
		display: none;
	}
}

@media (max-width: 1599.98px) {
	.product-main-slider {
		width: 750px;
	}

	.product-detail-content {
		width: calc(100% - 750px);
		padding-left: 60px;
	}
}

@media (max-width: 1439.98px) {
	.product-main-slider,
	.product-detail-content {
		width: 50%;
	}

	.product-detail-content {
		padding-left: 40px;
	}

	.woocommerce ul.products.columns-3 {
		margin-left: -10px;
		margin-right: -10px;

		& > li.product {
			width: calc(33.33% - 20px);
			margin: 0 10px 40px;
		}
	}

	.product-shop-wraper {
		padding-left: 45px;
	}

	.divider.mb-80 .product-sidebar {
		margin-bottom: 60px;
	}
}

@media (max-width: 1199.98px) {
	.product-shop-wraper {
		padding-left: 30px;
	}

	.woocommerce ul.products.columns-3 {
		& > li.product {
			width: calc(50% - 20px);
			margin: 0 10px 20px;
		}
	}

	.divider.mb-80,
	.product-sidebar {
		margin-bottom: 50px;
	}

	.product__slider-thmb {
		width: 120px;
	}

	.product-main-slider {
		& .pro-slider {
			width: calc(100% - 143px);
		}
	}
	.accordion_in .acc_head {
		font-size: 24px;
	}
}

@media (max-width: 991.98px) {
	.overlayshow {
		.page-wrapper.product-listing-pg {
			z-index: inherit;
		}
	}

	.pro-category-wrap {
		border-radius: 0;
		border: 0;

		& .shop-heading {
			border-radius: 0;
			font-size: 20px;
			padding: 15px;
		}
	}

	.woocommerce ul.products.columns-3.view-list {
		& > li.product {
			> a {
				max-width: 250px;
			}
		}
	}

	.product__slider-thmb {
		& .slick-slide {
			& .thumb-slide {
				margin-bottom: 0;
			}
		}
	}

	.accordion_in .acc_head {
		font-size: 22px;
	}

	.product-main-slider,
	.product-detail-content {
		width: 100%;
	}

	.product-detail-content {
		padding-left: 0;
	}

	.product-main-slider {
		position: relative;
		top: inherit;
		margin-bottom: 40px;

		& .pro-slider {
			width: 100%;
			order: 1;
			margin-bottom: 30px;
			height: 450px;

			& .img-slide {
				height: 450px;

				& .woocommerce-product-gallery__image {
					& > a {
						> img {
							max-height: 420px;
						}
					}
				}
			}
		}
	}

	.divider.mb-80 {
		margin-bottom: 40px;
	}

	.product__slider-thmb {
		order: 2;
		width: 100%;
		padding-top: 0;

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

			& .thumb-slide {
				height: 115px;
			}
		}

		& .slick-prev {
			left: 0;
			top: 50%;
			transform: none;
			-webkit-transform: none;
			-moz-transform: none;
			margin-top: -20px;
		}

		.slick-next {
			right: 0px;
			top: 50%;
			transform: none;
			-webkit-transform: none;
			-moz-transform: none;
			left: inherit;
			margin-top: -20px;
		}
	}

	.woocommerce .product-button-wrap {
		& .button {
			font-size: 18px !important;
		}
	}

	.product-sidebar {
		position: relative;
		top: inherit;
		width: 100%;
		margin-bottom: 40px;
	}

	.product-shop-wraper {
		padding-left: 0;
		width: 100%;
	}

	.m-filtertrigger {
		border-radius: 22px;
		padding: 10px 20px;
		display: inline-flex;
		justify-content: center;
		align-items: center;
		background: var(--theme);
		min-width: 180px;
		color: var(--white);
	}

	.m-filtertrigger i {
		margin-left: 8px;
	}

	.mobile-slide {
		width: 100%;
		position: fixed;
		top: 0;
		left: -100%;
		background: #f3f2ef;
		margin: 0;
		padding: 0;
		z-index: 9999;
		height: 100vh;
		transition: 1s ease all;
		overflow: scroll;
	}

	.mobile-slide.slide {
		left: 0px;
	}

	.mobile-slide.slide .closemenu.desk-hide {
		display: block;
		position: absolute;
		right: 15px;
		top: 10px;
		background: #fff;
		width: 35px;
		height: 35px;
		text-align: center;
		line-height: 100%;
		border-radius: 100%;
		padding: 4px 0;
		border: 1px solid var(--white);
		display: inline-flex;
		align-items: center;
		justify-content: center;
	}

	.product-detail-content {
		& .woocommerce-variation-price,
		& .page-header {
			.price {
				font-size: 26px !important;
			}
		}
	}

	.product-desc-content.mb-80 {
		margin-bottom: 0;
	}
}

@media (max-width: 768px) {
	.product-view-grid,
	.product-sort-top-info .product-left {
		display: none;
	}

	.product-sort-top-info {
		border-radius: 10px;
		width: 50%;
		top: 0;
		position: absolute;
		right: 15px;
		left: auto;
		border-radius: 30px;
		margin-bottom: 30px;

		& .product-top-control {
			border-right: 0;
			padding-right: 0;
			margin: 0 auto 0 0;
			padding: 0;
			width: auto;
			justify-content: center;
		}
	}

	.accordion_in .acc_head {
		font-size: 20px;
		padding: 15px 20px 15px 0;
	}

	.pro-accordion {
		padding-top: 10px;
		margin-top: 40px;
	}

	.select_box_label {
		& select {
			padding: 15px 20px;
			font-size: 16px;
		}
	}

	.divider.mb-80 {
		margin-bottom: 30px;
	}

	.qut-wrapper,
	.product-info-size {
		& label {
			font-size: 18px;
		}
	}

	.woocommerce .product-button-wrap {
		& .yith-wcwl-add-to-wishlist {
			& .yith-wcwl-add-button {
				i,
				span {
					font-size: 18px;
				}
			}
		}
	}

	.woocommerce .product-button-wrap {
		& .button {
			font-size: 16px !important;
		}
	}

	.woocommerce .product-button-wrap {
		& .yith-wcwl-add-to-wishlist {
			.yith-wcwl-add-button {
				padding: 10px 20px;
				font-size: 16px !important;
				height: auto !important;
			}
		}
	}

	.qut-wrapper,
	.product-info-size {
		& .value-button {
			width: 50px;
			height: 44px;
		}

		& .quantity {
			width: calc(100% - 100px);
		}
	}

	.woocommerce .product-button-wrap {
		& .yith-wcwl-add-to-wishlist {
			& .yith-wcwl-add-button {
				a.view-wishlist {
					font-size: 16px;
				}
			}
		}
	}

	.product-detail-content {
		& .woocommerce-variation-price,
		& .page-header {
			.price {
				font-size: 24px !important;
			}
		}
	}
}

@media (max-width: 576px) {
	.qut-wrapper,
	.product-info-size {
		& label {
			font-size: 16px;
		}
	}

	.woocommerce .product-button-wrap {
		& .yith-wcwl-add-to-wishlist {
			& .yith-wcwl-add-button {
				i,
				span {
					font-size: 16px;
				}
			}
		}
	}

	.woocommerce-ordering {
		& select {
			font-size: 14px;
			padding: 10px 20px 10px 5px;
		}
	}

	.accordion_in .acc_content p {
		font-size: 16px;
	}

	.product {
		& .product-info-wrap {
			padding: 15px 10px;
		}
	}

	.woocommerce ul.products.columns-3 {
		& > li.product {
			width: calc(50% - 10px);
			margin: 0 5px 10px;
		}
	}

	.product-sort-top-info {
		width: calc(100% - 170px);
		border: 0;
		padding: 0;

		& .product-top-control {
			padding: 3px 0 3px 8px;
			border: 1px solid #efefef;
			border-radius: 22px;
			flex: 1;
			margin: 0;

			b {
				font-size: 14px;
			}
		}
	}

	.m-filtertrigger {
		min-width: 130px;
	}

	.product-detail-content {
		& .woocommerce-variation-price,
		& .page-header {
			.price {
				font-size: 20px !important;
			}
		}
	}
}

.woo-variation-swatches
.wvs-style-squared.variable-items-wrapper
.variable-item:not(.radio-variable-item),
.variable-item-span {
	border-radius: 100%;
	box-shadow: none;
}

.product-desc-content {
	ul {
		margin-bottom: 30px;
	}
}

.woocommerce .shop_table.cart.wishlist_table {
	td.product-name {
		.variation {
			margin-top: 0;
		}
	}
}

.pro-category-wrap {
	.filter-widget-content {
		ul.product-categories {
			max-height: 350px;
			overflow-y: auto;
		}
		/* Chrome, Edge, Safari */
		ul.product-categories::-webkit-scrollbar {
			width: 5px;
		}

		ul.product-categories::-webkit-scrollbar-track {
			background: #f1f1f1;
		}

		ul.product-categories::-webkit-scrollbar-thumb {
			background: #222;
			border-radius: 10px;
		}

		ul.product-categories::-webkit-scrollbar-thumb:hover {
			background: #000;
		}
	}
}

.pro-category-wrap .shop-heading {
	cursor: pointer;
	position: relative;
	padding-right: 50px;
}
.pro-category-wrap .shop-heading::after {
	content: "-";
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translateY(-50%);
	font-size: 22px;
	line-height: 1;
}
.pro-category-wrap.collapsed .shop-heading::after {
	content: "+";
}
.pro-category-wrap.collapsed .filter-widget-content {
	display: none;
}
