/*
Theme Name: Flatsome Child
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 3.0
*/

/*************** ADD CUSTOM CSS HERE.   ***************/
@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');

:root {
	--primary-color: #06493a;
	--secondary-color: #a5d6a7;
	--gold-color: #ffd659;
	--head-color: #052D24;
	--shadow-hover: 20px 5px 10px #eed38066;
	--border-box: 1px solid #f0f0f0;
	--shadow-box: 0 2px 8px rgba(0, 0, 0, 0.03);
	--round-12px: 12px;
	--pd-20px: 20px;
	--linear-bg: linear-gradient(180deg, rgba(102, 187, 106, 1) 0%, rgba(165, 214, 167, 1) 100%);
}

body {
	font-family: "Roboto", sans-serif;
}

.autocomplete-suggestion .search-price,
.wpcf7-spinner,
.absolute-footer,
.wc-tabs #tab-title-additional_information,
.variations .reset_variations,
.product-info .breadcrumbs,
.shop-page-title.category-page-title.page-title {
	display: none !important;
}

.woocommerce-Tabs-panel--description.active,
.woocommerce-Tabs-panel--product_guide.active,
.cus-gallery-item,
.cus-specs-table,
.product-main .product-gallery,
.product-main .product-info,
.related.related-products-wrapper.product-section {
	background: #fff;
	padding: var(--pd-20px) !important;
	border-radius: var(--round-12px);
	border: var(--border-box);
	box-shadow: var(--shadow-box);
}

.header-main .nav>li>a,
.nav-small .nav>li>a,
.nav.nav-small>li>a {
	font-weight: 600;
	font-size: 15px;
}

* {
	box-sizing: border-box;
}

img {
	max-width: 100%;
}

.col-inner:last-child {
	padding-bottom: 0;
}

a {
	transition: all .25s ease;
}

p:last-child {
	margin-bottom: 0;
}

.off-canvas-left .mfp-content,
.off-canvas-right .mfp-content {
	max-width: 350px;
	width: 100%;
}

.off-canvas:not(.off-canvas-center) .nav-vertical li>a {
	font-size: 16px;
	text-transform: math-auto;
	color: #000;
}

.mfp-bg.mfp-ready {
	background-color: rgba(0, 0, 0, 0.4) !important;
	opacity: 1 !important;
	backdrop-filter: blur(10px) !important;
	-webkit-backdrop-filter: blur(10px) !important;
}

.mfp-wrap.mfp-ready {
	backdrop-filter: none !important;
}

.nav:not(.nav-slide) .active>.children {
	padding-bottom: 0;
}

.icon-box-img img,
.icon-box-img svg {
	padding-top: 0;
}

.autocomplete-suggestion img+.search-name {
	font-size: 16px;
}

.html_topbar_left h3 {
	margin-bottom: 0;
	color: #fff;
	font-weight: 600;
	font-size: 15px;
}

.btn-header {
	background-color: var(--gold-color);
	padding: 15px 20px !important;
	display: block;
	border-radius: 4px;
	color: #FFF !important;
	font-size: 16px !important;

	i {
		font-size: 14px !important;
		margin-right: 6px;
	}

	&:hover {
		transform: translateY(-2px);
		box-shadow: var(--shadow-hover);
	}
}

.ss-footer-1 {
	.icon-box {
		align-items: center;

		.icon-box-text {
			h3 {
				margin-bottom: 0;
				font-size: 18px;
			}
		}
	}

	form {
		margin-bottom: 0;
		padding: 10px;
		background-color: #ffffff52;
		border-radius: 8px;

		.wpcf7-not-valid-tip {
			display: none;
		}

		.frame-form-footer {
			input {
				border-radius: 4px;
				margin: 0;
			}

			.wpcf7-submit {
				text-transform: math-auto;
			}

			.two-col {
				p {
					display: flex;
					align-items: center;
					gap: 8px;
				}
			}
		}
	}
}

.wpcf7 div.wpcf7-response-output,
.wpcf7 form.invalid .wpcf7-response-output {
	background: #fddddd;
	border: 1px solid red;
	color: red;
	box-shadow: none;
	font-size: 14px;
	padding: 15px;
	border-radius: 6px;
	margin: 0;
	margin-top: 15px;
}

.wpcf7 form.sent .wpcf7-response-output {
	background: #ebfee3;
	color: #398f14;
	border-color: #398f142e;
}

.ss-footer-2 {
	ul {
		margin-bottom: 0;

		li:last-child {
			margin-bottom: 0;
		}

		li {
			margin-left: 0;
			list-style-type: none;

			i {
				color: var(--primary-color);
				width: 20px;
				height: 20px;
				display: inline-flex;
				align-items: center;
				justify-content: center;
			}
		}
	}
}

.ss-footer-3 {
	p {
		margin-bottom: 0;
		font-size: 14px;
	}
}

.flickity-button {
	opacity: 1;
}

.flickity-button svg {
	background-color: #fff;
	box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
	padding: 10px;
	border-radius: 4px;
	min-width: 30px;
	max-width: 30px;
	height: 30px;
}

.row-slider .flickity-prev-next-button svg {
	padding: 10px !important;
}

.slider-nav-light .flickity-prev-next-button .arrow,
.slider-nav-light .flickity-prev-next-button svg {
	fill: #333;
}

.flickity-page-dots {
	background: #ffffff30;
	width: max-content;
	margin: auto;
	border-radius: 16px;
	padding: 0px 4px;
	padding-bottom: 2px;
}

.flickity-page-dots .dot {
	width: 8px;
	height: 8px;
	background-color: #fff;
}

.stuck .header-main .nav>li>a {
	line-height: 16px !important;
}

.frame-title {

	h1,
	h2,
	h3,
	h4,
	h5,
	h6 {
		color: var(--head-color);
		margin-bottom: 0;
	}
}

.ss-hp-1 {
	.icon-inner {
		background-color: var(--primary-color);
		border-radius: 50%;
		padding: 15px;
		border: 4px solid #388e3c0a;

		img {
			filter: invert(1);
		}
	}

	.icon-box-text {
		font-weight: 600;
	}
}

.ss-hp-2 {
	.frame-title {
		h2 {
			font-size: 18px;
			width: max-content;
			margin: auto;
			background: var(--linear-bg);
			color: var(--head-color);
			padding: 10px 40px;
			border-bottom-left-radius: 100px;
			border-bottom-right-radius: 100px;
			position: relative;

			&:after,
			&:before {
				content: '';
				position: absolute;
				left: -7px;
				top: 0;
				width: 20px;
				height: 20px;
				background-color: var(--primary-color);
				z-index: -1;
				border-radius: 50px;
			}

			&:before {
				left: unset;
				right: -7px;
			}
		}
	}
}

.cus-specs-table {
	display: flex;
	flex-direction: column;
	overflow: hidden;
}

.product-main>.content-row {
	gap: 30px;
	padding: 0px 15px;

	&:after {
		content: none;
	}
}

.product-footer .woocommerce-tabs {
	border-top: 1px solid var(--secondary-color);
}

.cus-spec-row-frontend {
	display: flex;
	flex-direction: row;
	border-bottom: 1px solid #eaeaea;
	background-color: #a5d6a73b;
	padding: 20px 25px;
}

.cus-spec-row-frontend:last-child {
	border-bottom: none;
}

.cus-spec-row-frontend:nth-child(2n) {
	background-color: #ffffff;
}

.cus-spec-heading {
	flex: 0 0 30%;
	font-weight: 600;
	color: #333;
	display: flex;
	align-items: center;
	padding-right: 15px;
	font-size: 1.05em;
}

.cus-spec-content {
	flex: 1;
	color: #555;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.cus-spec-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.cus-spec-badge {
	background-color: var(--secondary-color);
	color: var(--head-color);
	border: 1px solid var(--head-color);
	padding: 5px 14px;
	border-radius: 20px;
	font-size: 0.9em;
	display: inline-flex;
	align-items: center;
	box-shadow: 0 1px 2px rgba(212, 175, 55, 0.1);
}

.cus-spec-gallery {
	display: flex;
	gap: 12px;
	margin-top: 12px;
	flex-wrap: wrap;
}

.cus-spec-thumb {
	width: 70px;
	height: 70px;
	object-fit: cover;
	border-radius: 6px;
	border: 1px solid #f0f0f0;
	background-color: #fff;
	padding: 2px;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}

.cus-gallery-list {
	display: flex;
	flex-direction: column;
	gap: 25px;
}

.cus-gallery-header {
	display: flex;
	align-items: center;
	margin-bottom: 15px;
}

.cus-gal-avatar {
	width: 45px;
	height: 45px;
	background-color: var(--secondary-color, #d4af37);
	color: var(--head-color, #fff);
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	font-size: 1.2rem;
	font-weight: 600;
	margin-right: 15px;
	line-height: 1;
	flex-shrink: 0;
}

.cus-gal-info {
	display: flex;
	flex-direction: column;
}

.cus-gal-name {
	font-weight: 600;
	color: #333;
	font-size: 1.05rem;
}

.cus-gal-location {
	font-size: 0.9rem;
	color: #888;
	margin-top: 2px;
}

.cus-gal-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 8px;
	width: 100%;
}

.cus-gal-grid-item {
	position: relative;
	display: block;
	border-radius: 8px;
	overflow: hidden;
	aspect-ratio: 1 / 1;
	background: #fdfdfd;
}

.cus-gal-grid-item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.3s ease;
}

.cus-gal-grid-item:hover img {
	transform: scale(1.04);
}

.cus-gal-overlay {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: rgba(0, 0, 0, 0.45);
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background-color 0.3s ease;
}

.cus-gal-grid-item:hover .cus-gal-overlay {
	background-color: rgba(0, 0, 0, 0.3);
}

.cus-gal-overlay span {
	color: #ffffff;
	font-size: 1.6rem;
	font-weight: 700;
}

.product-footer .woocommerce-tabs>.nav-line-grow,
.product-footer .woocommerce-tabs>.nav-line:not(.nav-vertical) {
	justify-content: space-around;

	li a {
		font-size: 16px;
	}

	li.active a {
		color: var(--head-color);
	}
}

.entry-content,
.term-description {
	h2 {
		font-size: 18px;
		position: relative;
		padding-bottom: 10px;

		&::after {
			content: '';
			position: absolute;
			width: 100%;
			height: 1px;
			background-color: var(--secondary-color);
			bottom: 0px;
			left: 0;
		}

		&::before {
			content: '';
			position: absolute;
			width: 10%;
			height: 3px;
			background-color: var(--primary-color);
			bottom: 0px;
			left: 0;
		}
	}

	h3 {
		font-size: 16px;
	}

	h4 {
		font-size: 15px;
	}

	h5 {
		font-size: 14px;
	}

	h6 {
		font-size: 13px;
	}
}

.woocommerce-variation-add-to-cart {
	display: inline-flex !important;
	align-items: center;
	gap: 10px;
	padding: 0 !important;
}

.product-info form.cart .quantity {
	display: flex !important;
	align-items: center;
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
}

.product-info form.cart .quantity input.minus,
.product-info form.cart .quantity input.plus,
.product-info form.cart .quantity button.minus,
.product-info form.cart .quantity button.plus {
	width: 32px !important;
	height: 32px !important;
	min-height: unset;
	border-radius: 50% !important;
	background-color: #f1f5f9 !important;
	color: var(--primary-color) !important;
	border: none !important;
	font-size: 18px !important;
	font-weight: bold !important;
	display: flex !important;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: all 0.2s ease;
	padding: 0 !important;
	margin: 0 !important;
	line-height: 1 !important;
	text-shadow: none !important;
}

.product-info form.cart .quantity input.minus:hover,
.product-info form.cart .quantity input.plus:hover,
.product-info form.cart .quantity button.minus:hover,
.product-info form.cart .quantity button.plus:hover {
	background-color: var(--primary-color) !important;
	color: #fff !important;
}

.product-info form.cart .quantity input.qty {
	width: 35px !important;
	border: none !important;
	background: transparent !important;
	font-weight: 700 !important;
	color: #1e293b !important;
	font-size: 15px !important;
	padding: 0 !important;
	text-align: center !important;
	height: auto !important;
	border: 0;
	box-shadow: none;
}

.product-info form.cart .single_add_to_cart_button {
	border-radius: 99px !important;
	background-color: #ffd300 !important;
	color: #fff !important;
	font-weight: 600 !important;
	font-size: 14px !important;
	padding: 0 20px !important;
	height: 44px !important;
	border: none !important;
	margin: 0 !important;
	display: flex !important;
	align-items: center;
	gap: 10px;
	transition: all 0.3s ease;
	text-transform: none !important;
}

.product-info form.cart .single_add_to_cart_button::before {
	content: "\f07a";
	/* FontAwesome shopping-cart */
	font-family: "Font Awesome 6 Pro" !important;
	font-weight: 900;
	font-size: 16px;
}

.product-info form.cart .single_add_to_cart_button:hover {
	background-color: var(--primary-color) !important;
	box-shadow: 0 4px 12px rgba(0, 255, 106, 0.2);
	transform: translateY(-1px);
}

.woo-variation-swatches.wvs-show-label .variations th {
	font-size: 16px;
	margin-bottom: 15px;
}

.woo-variation-swatches .variable-items-wrapper {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 8px;
	margin-bottom: 15px;

	li {
		margin: 0 !important;
		transition: all 0s ease;
	}
}

.product-info .product-short-description {
	font-size: 14px;
	padding: 10px;
	border: 1px solid #999;
	border-radius: 8px;
	margin-bottom: 15px;

	ul {
		margin-bottom: 0;

		li:last-child {
			margin-bottom: 0;
		}
	}
}

.product_meta {
	margin-bottom: 0;
	font-size: 14px;

	span:last-child {
		padding-bottom: 0;
	}

	.sku_wrapper {
		display: none;
	}
}

.woo-variation-swatches .variable-items-wrapper .variable-item:not(.radio-variable-item).button-variable-item.selected:not(.no-stock) {
	color: var(--head-color);
	background: url(/wp-content/uploads/2026/04/check.svg) no-repeat top right;
}

.woo-variation-swatches .wvs-style-squared.variable-items-wrapper .variable-item:not(.radio-variable-item).button-variable-item .variable-item-span {
	font-size: 14px;
}


.price {

	bdi,
	ins bdi,
	.amount {
		font-size: 24px;
		color: red;
	}

	del {
		text-decoration: none;
	}

	del bdi {
		font-size: 18px;
		color: #999;
		text-decoration: line-through;
	}
}

.badge-container.absolute.left.top {
	margin: 0;

	.callout.badge.badge-square {
		width: 45px;
		height: 45px;
		border-bottom-right-radius: 50px;
		border-bottom-left-radius: 50px;
		overflow: hidden;
	}

	.badge-inner.secondary.on-sale {
		background-color: red;
		display: flex;
		align-items: center;
		justify-content: center;

		span {
			font-size: 14px;
			font-weight: 400;
		}
	}
}

.success-color {
	background-color: #a5d6a75c;
	padding: 10px !important;
	border-radius: 6px;
}

.product-info p.out-of-stock,
.product-info p.available-on-backorder {
	font-size: 16px;
	color: red;
	background-color: #ff000012;
	padding: 10px 20px;
	width: max-content;
	border-radius: 8px;
	margin: 0;
	margin-bottom: 15px;
}

.product-info p.available-on-backorder {
	color: var(--head-color);
	background-color: #E5EEE5;
}


.button.disabled,
.button[disabled],
button.disabled,
button[disabled] {
	cursor: no-drop;
}

h1.product-title.product_title {
	color: var(--head-color);
}

form.cart {
	margin-bottom: 0;

	>div {
		width: 100%;
	}

	>.quantity.buttons_added {
		width: max-content;
	}
}

form.variations_form {
	.single_variation_wrap {
		.woocommerce-variation-price {
			padding: 0;

			.price {
				padding: 5px 0;
				display: block;
			}
		}
	}
}

form.variations_form table.variations tbody {
	tr td {
		margin-bottom: 15px;
	}

	tr:last-child td {
		margin-bottom: 0;
	}
}

/* Ẩn giá mặc định khi variation đã được chọn (toggle bởi JS) */
.price-wrapper.is-hidden-by-variation {
	display: none !important;
}

h3.product-section-title.product-section-title-related {
	letter-spacing: 0;
	text-transform: math-auto;
	font-size: 22px;
	padding-top: 0;
}

.related.related-products-wrapper.product-section {
	margin-bottom: 30px;
	padding-bottom: 0 !important;

	.badge-container.absolute.left.top {
		margin-top: 15px;
		margin-left: 15px;
	}
}

.frame-breadcrumb {
	background-color: #fff;
	padding: 10px 0;

	.rank-math-breadcrumb {

		span,
		a {
			font-size: 14px;
		}

		.last {
			color: var(--head-color);
		}
	}
}

.product-small.box {
	padding: 15px;
	background-color: #f4f4f4;
	border-radius: 12px;
	box-shadow: var(--shadow-box);

	.product-title {
		margin-bottom: 10px;
	}

	.product-title a {
		font-weight: 500;
		font-size: 16px;
		display: -webkit-box;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 2;
		overflow: hidden;
	}

	.price {

		bdi,
		ins bdi,
		.amount {
			font-size: 18px;
		}

		del bdi {
			font-size: 14px;
		}
	}

	.box-image img {
		border-radius: 6px;
	}

	.box-text {
		padding: 0;
		padding-top: 15px;
	}
}

.product-edit {
	.badge-container.absolute.left.top {
		margin-left: 15px;
		margin-top: 15px;
	}
}

.product-highlight {
	.row-edit-bg {
		background: var(--linear-bg);
	}

	.item-parent .icon-box {
		align-items: center;
		justify-content: center;
		gap: 15px;

		.icon-box-text {
			display: contents;

			h2 {
				font-size: 18px;
				width: max-content;
				color: var(--head-color);
			}
		}
	}

	.item-parent .icon-box.icon-box-right {
		flex-direction: row-reverse;

		.icon-box-img {
			margin: 0;
		}
	}

	.item-child {
		.icon-box-img {
			margin-bottom: 5px;
		}

		.icon-box-text h3 {
			font-size: 16px;
			font-weight: 600;
			transition: all 0.3s ease;
			color: var(--head-color);

			&:hover {
				color: var(--head-color);
			}
		}
	}

	.h-auto {
		height: 100%;

		a {
			display: block;
			height: 100%;

			.img-inner,
			img {
				height: 100%;
			}
		}
	}
}

.o-hidden>.col-inner {
	overflow: hidden;
}

.product-small.box .box-image [class*="image-"] {
	position: relative;
	overflow: hidden;
}

.custom-overlay-link {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.45);
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0;
	transform: scale(1.08);
	transition: opacity 0.3s ease, transform 0.3s ease;
	z-index: 10;
	border-radius: 6px;
	text-decoration: none;
}

.product-small.box:hover .custom-overlay-link {
	opacity: 1;
	transform: scale(1);
}

.custom-overlay-icon {
	color: #fff;
	font-size: 32px;
	display: flex;
	align-items: center;
	justify-content: center;
	transform: scale(0.8);
	transition: transform 0.3s ease;
	height: 100%;
}

.custom-overlay-icon i {
	background-color: #ffffff63;
	border-radius: 50%;
	padding: 15px;
	font-size: 20px;
	line-height: 1;
	width: 50px;
	height: 50px;
	display: flex;
	align-items: center;
	justify-content: center;

	&::before {
		top: 0 !important;
		bottom: 0 !important;
	}
}

.entry-content iframe {
	height: 510px;
}

.ss-hp-partner {

	.box-text,
	.flickity-button {
		display: none;
	}
}

.ss-hp-blog {
	.box-blog-post .is-divider {
		display: none;
	}

	.box-vertical {
		background-color: transparent !important;

		.box-text {
			padding: 0;
			padding-left: 15px;

			.post-title a {
				font-weight: 400;
			}
		}

		.overlay-icon {
			width: 30px;
			height: 30px;
			display: flex;
			align-items: center;
			justify-content: center;
			margin: 0;
			padding: 0;
			line-height: 1;
			border-radius: 50%;

			i {
				font-size: 14px;
				top: 0px;
			}
		}
	}

	.col.post-item .col-inner {
		box-shadow: none;
		background-color: transparent !important;
	}

}

.post-title a {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
}

.fcv-fab {
	background: linear-gradient(135deg, #e6d070, #e8e1cc) !important;
	box-shadow: #e6d07040 0px 10px 25px;
}

.fcv-fab:hover {
	box-shadow: 0 15px 35px #e6d0707f;
}

article.post {
	background-color: #fff;
	padding: var(--pd-20px);
	border-radius: var(--round-12px);
	box-shadow: var(--shadow-box);
	margin-bottom: 0;

	.entry-content.single-page {
		padding-bottom: 0;

		ul:last-child {
			margin-bottom: 0;
		}
	}
}

h1.entry-title {
	color: var(--head-color);
}

.widget {
	background-color: #fff;
	padding: var(--pd-20px);
	border-radius: var(--round-12px);
	box-shadow: var(--shadow-box);

	form {
		margin-bottom: 0;
	}

	.widget-title {
		display: block;
		font-size: 18px;
		color: var(--head-color);
		margin-bottom: 20px;
		letter-spacing: 0;
	}

	.is-divider {
		display: none;
	}

	.box-vertical {
		display: flex;
		align-items: center;
		gap: 15px;

		.box-text {
			padding: 0 !important;
			text-align: left;

			.post-title a {
				font-size: 15px;
				display: -webkit-box;
				-webkit-box-orient: vertical;
				-webkit-line-clamp: 3;
				overflow: hidden;
				line-height: 1.5;
			}
		}
	}

	.post-item:last-child {
		padding-bottom: 0;
	}
}

#ez-toc-container {
	background: #F7F9FC;
	border: 1px solid var(--primary-color);
	border-radius: 16px;
	padding: 20px;
	width: 100%;

	.ez-toc-title-container {
		border-left: 2px solid var(--primary-color);
		padding-left: 15px;
	}
}

.blog-wrapper .large-8 .col.post-item .col-inner {
	background-color: #fff;
	padding: var(--pd-20px);
	border-radius: var(--round-12px);
	box-shadow: var(--shadow-box);
	height: 100%;

	.box-text {
		padding: 0;
		padding-top: 15px;
	}
}

.from_the_blog_excerpt {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	overflow: hidden;
}

.woocommerce-page {
	.product-small.col>.col-inner {
		height: 100%;
	}

	.product-small.box {
		background-color: #fff;
		height: 100%;
	}

	.badge-container.absolute.left.top {
		margin-top: 15px;
		margin-left: 15px;
	}
}

.icon-equalizer::before {
	content: "\f0b0";
	font-family: 'Font Awesome 6 Pro';
}

.woocommerce-no-products-found {
	text-align: center;
	padding: 15px;
}

.ss-contact-1 {

	p,
	iframe {
		line-height: 1;
		margin: 0;
		padding: 0;
	}
}

.ss-contact-2 {
	.frame-title {
		h2 {
			margin-bottom: 15px;
		}

		ul {
			li:last-child {
				margin-bottom: 0;
			}

			li {
				list-style-type: none;
				margin-left: 0;

				i {
					color: var(--primary-color);
					width: 20px;
					height: 20px;
					display: inline-flex;
					align-items: center;
					justify-content: center;
				}
			}
		}
	}

	.social-icons {
		a {
			margin-bottom: 0;
			margin-right: 6px;
		}
	}

	form {
		margin-bottom: 0;



		input {
			width: 100%;
			border: 0;
			box-shadow: none;
			border-radius: 4px;
			background-color: #eee;
		}

		.wpcf7-submit {
			margin: 0;
		}
	}

}

.product-gallery {
	.badge-container.absolute.left.top {
		margin-top: 0;
		margin-left: 0;
	}
}

.cus-tab-shortcode-block,
.cat-desc-block-tuvan {
	h4 {
		font-size: 18px;
		font-weight: 400;
		color: #bbb;
	}

	h3 {
		font-size: 22px;
	}

	.icon-box-text {
		h3 {
			font-size: 16px;
		}

		p {
			font-size: 14px;
			margin-bottom: 10px;
		}
	}
}

.related.related-products-wrapper.product-section {
	.product-small.box {
		background-color: #f4f4f4;
	}
}

.term-description-wrapper {
	background-color: #fff;
	padding: var(--pd-20px);
	border-radius: var(--round-12px);
	box-shadow: var(--shadow-box);
	margin-top: 20px;

	li {
		margin-left: 1.3em;
	}

	ul:last-child,
	li:last-child {
		margin-bottom: 0;
	}
}

.product-info form.cart .quantity,
.product-info form.cart .single_add_to_cart_button,
.woocommerce-variation-add-to-cart {
	display: none !important;
}

.cfvsw-swatches-container {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	width: 100%;
}

.header-nav .sub-menu .menu-item-has-children:after {
	content: '\f105';
	font-family: "FontAwesome";
	position: absolute;
	top: 50%;
	right: 10px;
	transform: translateY(-50%);
	font-size: 11px;
}

.header-nav .sub-menu .menu-item-has-children {
	position: relative;
	width: 100%;
}

.header-nav .sub-menu .menu-item-has-children .sub-menu {
	display: none;
	opacity: 0;
	transition: all 0.25s ease;
	position: absolute;
	left: 100%;
	background: #fff;
	border-radius: 5px;
	top: 0;
	box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
}

.header-nav .sub-menu .menu-item-has-children:hover .sub-menu {
	display: block;
	opacity: 1;
}

.header-nav .sub-menu .menu-item-has-children:hover .sub-menu .sub-menu {
	display: none;
	opacity: 0;
}

.header-nav .sub-menu .menu-item-has-children:hover .sub-menu .menu-item-has-children:hover .sub-menu {
	display: block;
	opacity: 1;
}

.header-nav .sub-menu.nav-dropdown-default {
	display: flex;
	flex-direction: column;
	padding: 0;
}

.sub-menu li a {
	min-width: 150px;
	font-weight: 400 !important;
	text-transform: math-auto !important;
	color: initial !important;
	font-size: 14px !important;
}

.cat-section-header {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 15px;
	border-bottom: 1px solid var(--primary-color);
	margin-bottom: 15px;
	padding-bottom: 10px;

	h2 {
		margin-bottom: 0;
		color: var(--head-color);
	}

	a.cat-section-view-all {
		width: max-content;
		white-space: nowrap;
		flex-shrink: 0;
	}
}

.nav-uppercase li a,
.nav-uppercase li>a,
ul.nav-uppercase>li>a {
	text-transform: none !important;
	letter-spacing: normal !important;
}

.frame-cta {
	.more-variation {
		font-size: 15px;

		a {
			font-weight: bold;
		}
	}

	.btn-cta-1,
	.btn-cta-2,
	.btn-cta-3 {
		display: block;
		background-color: #ED1B2E;
		color: #fff;
		padding: 10px;
		border-radius: 8px;
		text-align: center;
		width: 100%;
		font-size: 12px;

		h4 {
			color: #fff;
			margin-bottom: 0;
		}
	}

	.btn-cta-2,
	.btn-cta-3 {
		background-color: #0065F7;
	}

	div {
		display: flex;
		align-items: center;
		gap: 15px;
		margin-top: 15px;
	}
}

.cat-intro-row {
	display: flex;
	align-items: stretch;
	gap: 0;
	margin-top: 20px;
	border-radius: 12px;
	overflow: hidden;
	color: #fff;
	height: 320px;
	box-shadow: var(--shadow-box);
	background-color: #333;
}

.cat-intro-content {
	flex: 0 0 35%;
	max-width: 35%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 12px;
	padding: 28px 28px;
	background: var(--linear-bg);
	position: relative;
	z-index: 1;
}

.cat-intro-title {
	font-size: 28px;
	font-weight: 700;
	color: var(--head-color);
	margin: 0;
	line-height: 1.2;
	text-transform: none;
	border: none;
	padding: 0;
}

.cat-intro-desc {
	font-size: 14px;
	color: #333;
	line-height: 1.65;
	margin: 0;
	display: -webkit-box;
	-webkit-line-clamp: 5;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.cat-intro-banners {
	flex: 1;
	min-width: 0;
	position: relative;
}

.cat-intro-single-banner {
	width: 100%;
	height: 100%;
}

.cat-intro-single-banner img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.cat-intro-banners {
	height: 280px;
}

.cat-intro-slider {
	width: 100%;
	height: 320px;
}

.cat-intro-slide {
	width: 100%;
	height: 320px;
}

.cat-intro-slide img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.cat-intro-single-banner {
	height: 320px;
}

.cat-intro-single-banner img {
	height: 100%;
	object-fit: cover;
}

.cat-intro-slider .flickity-page-dots .dot {
	background: #fff;
	opacity: 0.5;
	border: 0;
}

.cat-intro-slider .flickity-page-dots .dot.is-selected {
	opacity: 1;
}

.product-gift-wrapper {
	border: 1px solid var(--primary-color);
	border-radius: 8px;
	padding: 15px;
	padding-top: 30px;
	position: relative;
	margin-bottom: 15px;

	.product-gift-heading {
		position: absolute;
		top: -15px;
		background-color: var(--primary-color);
		color: #fff;
		padding: 5px 20px;
		border-radius: 50px;
		font-size: 14px;
	}

	.product-gift-content {
		p {
			margin-bottom: 10px;
		}

		p,
		a,
		li {
			font-size: 14px;
		}

		a {
			text-decoration: underline;
		}
	}

	ul:last-child,
	li:last-child {
		margin-bottom: 0;
	}
}

.cfvsw-selected-swatch {
	background-color: var(--primary-color);
	color: #fff;
}



@media(max-width: 1000px) {
	.cat-intro-row {
		flex-direction: column-reverse;
		height: auto;
		border-radius: 8px;
	}

	.cat-intro-content {
		flex: none;
		max-width: 100%;
		padding: 20px 16px;
	}

	.cat-intro-banners,
	.cat-intro-slider,
	.cat-intro-slide,
	.cat-intro-single-banner {
		height: 200px;
	}

	.cat-intro-title {
		font-size: 22px;
	}

	.sub-menu li a {
		font-size: 16px !important;
	}

	.off-canvas .nav-vertical li li>a {
		padding-bottom: 15px;
		padding-top: 15px;
	}

	.shop-page-title.category-page-title.page-title {
		display: block !important;
		padding: 15px;
		padding-bottom: 0;

		nav.woocommerce-breadcrumb.breadcrumbs.uppercase {
			display: none;
		}

		.page-title-inner {
			padding: 0 !important;
		}

		.is-small,
		.flex-col:not(.flex-grow) {
			display: none;
		}

		.filter-button {
			text-transform: math-auto;
			width: 100%;
		}

		.category-filtering {
			background-color: #fff;
			padding: 8px 16px;
			border-radius: 8px;
			color: var(--secondary-color);
			box-shadow: rgba(100, 100, 111, 0.2) 0px 0px 15px 0px;

			.inline-block {
				display: none;
			}
		}
	}

	.entry-content iframe {
		height: 450px;
	}

	.product-highlight {
		.item-parent>.col-inner {
			background-color: var(--primary-color);

			img {
				filter: invert(1);
			}

			h2 {
				color: #fff !important;
			}

		}
	}

	.ss-hp-2 {
		& .frame-title {
			h2 {
				font-size: 16px;
				width: auto;
				margin: auto -20px;
				padding: 10px;
				border-bottom-left-radius: 0;
				border-bottom-right-radius: 0;
				border-top-left-radius: 12px;
				border-top-right-radius: 12px;

				&::after,
				&::before {
					content: none;
				}
			}
		}
	}

	.cus-spec-row-frontend {
		flex-direction: column;
		align-items: flex-start;
		padding: 15px;
	}

	.cus-spec-heading {
		margin-bottom: 12px;
		flex: none;
		width: 100%;
		font-size: 1.1em;
	}

	.cus-spec-content {
		width: 100%;
	}

	.ss-footer-1 {
		& form {
			& .frame-form-footer {
				input {
					width: 100%;
				}

				& .two-col {
					p {
						flex-direction: column;
					}
				}
			}
		}
	}
}

@media screen and (max-width: 600px) {
	.frame-cta {
		div {
			flex-direction: column;
		}
	}

	.cfvsw-swatches-container {
		grid-template-columns: repeat(3, 1fr);
	}

	.ss-contact-1 {

		iframe {
			height: 300px;
		}
	}

	.widget {
		.box-vertical {
			.box-image {
				width: 60% !important;
			}
		}
	}

	.ss-hp-blog {
		.box-vertical {
			display: flex;

			.box-image {
				width: 50% !important;
			}
		}
	}

	.entry-content iframe {
		height: 285px;
	}

	.product-small.box {
		& .price {

			bdi,
			ins bdi,
			.amount {
				font-size: 20px;
			}
		}
	}

	.product-small.box {
		.product-title a {
			font-size: 18px;
		}
	}

	.product-small.box {
		.price {
			display: flex;
			flex-direction: column;
			gap: 6px;
		}
	}

	.price {
		del bdi {
			font-size: 16px;
		}
	}

	.woo-variation-swatches .variable-items-wrapper {
		grid-template-columns: repeat(3, 1fr);
	}

	.entry-content {
		& h2 {
			&::before {
				width: 20%;
			}
		}
	}

	.cus-gal-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 6px;
	}

	.cus-gal-grid-item {
		border-radius: 6px;
	}
}