.breadcrumbs {
  background-color: #f8f8f8;
}
.smb-cursor-pointer{
	cursor: pointer;
}
.recent-view-list, .section_prd_feature {
	margin-left: -5px;
	margin-right: -5px;
}
.section_prd_feature .product-col, .recent-view-list .product-col {
	height: inherit;
	padding: 0 15px
}
.section_prd_feature:not(.slick-slider) .product-col, .recent-view-list:not(.slick-slider) .product-col {
	flex: 0 0 20%;
	max-width: 20%;
}
.quick-view-product, .details-product .product-promo-tag {
	display: inline-block;
	clear: both;
}
.count_btn_style {
	grid-gap: 10px;
	display: grid;
	grid-template-columns: 150px 1fr;
}
.share-group__item {
	display: inline-block;
	width: 30px;
	height: 30px;
	border-radius: 999px;
	color: #fff;
	line-height: 30px;
	text-align: center;
	cursor: pointer;
	transition: opacity .3s ease;
}
.share-group__item:hover {
	color: #fff;
	opacity: 0.6;
}
* + .share-group__item {
	margin-left: 8px;
}
.share-group__item.facebook {
	background-color: #4267B2;
}
.share-group__item.messenger {
	background-color: #006AFF ;
}
.share-group__item.pinterest {
	background-color: #E60023;
}
.share-group__item.twitter {
	background-color: #1DA1F2;
}
#ega-modal-banner {
	text-align: center;
}
#ega-modal-banner.show {
	z-index: 9997;
}
#ega-modal-banner .btn-form-close {
	position: absolute;
	top: -15px;
	right: -5px;
	width: 30px;
	height: 30px;
	line-height: 30px;
	border: 0;
	display: block;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.7);
	display: flex;
	justify-content: center;
	align-items: center;
}
#ega-modal-banner .modal-content {
	background: transparent;
	text-align: center;
	box-shadow: none;
	border: none;
	align-items: center;
	justify-content: center;
}
#ega-modal-banner .modal-header {
	padding: 0;
	border-bottom: none;
	justify-content: center;
	position: relative;
}
#ega-modal-banner .modal-dialog {
	margin: auto;
	position: relative;
	display: inline-block;
}
@media (max-width: 991px) {
	#ega-modal-banner .modal-dialog {
		width: 85%;
	}
}
/** COMPARE PRODUCT **/
.compare-product__header-count {
	background: var(--secondary-color);
	font-size: 12px;
	color: var(--primary-color);
	border-radius: 50%;
	width: 20px;
	height: 20px;
	line-height: 20px;
	text-align: center;
	top: -4px;
	right: -10px;
}
.compare-product__table {
	border-left: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
}
.compare-product__box {
	display: flex;
}
.compare-product__item {
	flex: 1;
	position: relative;
	font-size: 14px;
	overflow: hidden;
	padding: 12px;
	border-top: 1px solid #ddd;
	border-right: 1px solid #ddd;
}
.compare-product__main .compare-product__item {
	padding-top: 25px;
}
.compare-product__item .compare-price {
	display: block;
	margin: 0;
}
.compare-product__item ul {
	margin-bottom: 0;
	list-style: none;
	padding-left: 0;
}
.compare-product__item ul li:before {
	content: "•";
	margin-right: 5px;
	color: #c4c4c4;
}
.compare-product__item td {
	border: 1px solid #e6e6e6;
	border-spacing: 0;
	width: calc(80% / 3);
	padding: 10px;
}
.compare-product__item td:first-child {
	width: 20%;
}
.compare-product__remove {
	z-index: 1;
	position: absolute;
	cursor: pointer;
	top: 5px;
	right: 5px;
	display: block;
	border-radius: 999px;
	border: 1px solid #afafaf;
	width: 18px;
	height: 18px;
	line-height: 16px;
	text-align: center;
	font-size: 11px;
	color: #afafaf!important;
}
.compare-product__heading {
	display: block;
	background-color: #f1f1f1;
	border-top: 1px solid #ddd;
	border-right: 1px solid #ddd;
	padding: 6px 8px;
	font-size: 15px;
}
@media (max-width: 767px) {
	.compare-product__item {
		font-size: 13px;
		overflow-x: auto;
		padding: 5px;
	}
	.compare-product__item td {
		padding: 5px;
	}
	.compare-product__specifications .compare-product__item {
		padding: 0;
	}
	.compare-product__specifications table, .compare-product__specifications tbody, .compare-product__specifications tr, .compare-product__specifications td, .compare-product__specifications td:first-child {
		display: block;
		width: 100%;
	}
	.compare-product__specifications tr {
		border-bottom: 1px solid #e6e6e6;
	}
	.compare-product__specifications tr:not(:first-child) {
		border-top: none;
	}
	.compare-product__specifications td {
		border: none;
	}
	.compare-product__specifications td:first-child {
		font-weight: 600;
	}
}
#bizweb-theme-previewer {
	display: none;
}
.compare-product__qv {
	display: none;
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	z-index: 9999;
}
.compare-product__qv.is-show {
	display: block;
}
.compare-product__qv .container {
	border-radius: 0;
	border-top: 1px solid #e5e5e5;
	box-shadow: 0 -2px 10px rgb(0 0 0 / 12%);
	background-color: #fff;
	display: grid;
	grid-template-columns: 75% 25%;
	padding: 0;
}
.compare-product__qv-row {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
}
.compare-product__qv-item, .compare-product__qv-show {
	padding: 15px;
}
.compare-product__qv-item {
	position: relative;
	text-align: center;
	border-right: 1px solid #e0e0e0;
}
.compare-product__qv-item img {
	max-width: 60px;
}
.compare-product__qv-item h3 {
	margin: 0;
	font-size: 13px;
	font-weight: normal;
}
.compare-product__qv-show {
	flex-direction: column;
	display: flex;
}
.compare-product__qv-remove {
	position: absolute;
	top: 0;
	right: 0px;
	font-size: 16px;
	width: 20px;
	height: 20px;
	line-height: 20px;
	text-align: center;
	cursor: pointer;
}
.compare-product__qv-hide {
	position: absolute;
	right: 0;
	top: -42px;
	padding: 10px 30px 10px 10px;
	border-radius: 8px 8px 0 0;
	color: #000;
	background: #fff;
	box-shadow: 0 -2px 10px #0000001f;
}
.compare-product__qv-hide .icon {
	position: absolute;
	right: 10px;
	top: 15px;
	width: 12px;
	height: 12px;
}

/*** EGA Style ***/

.font-serif {
	font-family: 'Yeseva One', cursive
}

@media (min-width:576px) {
	.container, .container-sm {
		max-width: 100%
	}

}

@media (min-width:768px) {
	.container, .container-sm, .container-md {
		max-width: 100%
	}

}

@media (min-width:992px) {
	.container, .container-sm, .container-md, .container-lg {
		max-width: 100%
	}

	.col-lg-60 {
		flex: 0 0 60%;
		max-width: 60%
	}

	.col-lg-80 {
		flex: 0 0 80%;
		max-width: 80%
	}

}

@media (min-width:1200px) {
	.col-xl-60 {
		flex: 0 0 60%;
		max-width: 60%
	}

	.col-xl-80 {
		flex: 0 0 80%;
		max-width: 80%
	}

	.col-xl-15 {
		flex: 0 0 20%;
		max-width: 20%
	}

	.col-xl-30 {
		flex: 0 0 40%;
		max-width: 40%
	}

}

@media (min-width: 1200px) {
	.container, .container-sm, .container-md, .container-lg, .container-xl {
		max-width: 1320px;
	}
}

@media (min-width:1800px) {
	.container, .container-sm, .container-md, .container-lg, .container-xl {
		 max-width: 1650px 
	}

}

.container, .col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col, .col-auto, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm, .col-sm-auto, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md, .col-md-auto, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg, .col-lg-auto, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl, .col-xl-auto, .col-lg-15, .col-lg-20, .col-lg-80, .col-lg-60 {
	padding-right: 15px;
	padding-left: 15px
}

.row {
	margin-left: -15px;
	margin-right: -15px
}

.card {
	border-radius: .25rem;
	padding: 15px;
	border: 1px solid rgb(0 0 0 / 8%)
}

.pos-relative.embed-responsive[class*=embed-responsive-] iframe, .pos-relative.embed-responsive[class*=embed-responsive-] img {
	--image-scale: 1;
	position: absolute;
	top: var(--img-top, 50%);
	left: var(--img-left, 50%);
	transform: translate(-50%, -50%) scale(var(--image-scale));
	object-fit: contain;
	max-width: 100%;
	max-height: 100%;
	min-width: 1px;
	min-height: 1px
}

.pos-relative.embed-responsive[class*=embed-responsive-] img {
	width: auto;
	height: auto;
}

.pos-relative.embed-responsive[class*=embed-responsive-] iframe {
	z-index: 99
}

.btn {
	border-radius: var(--btn-radius);
}

body {
	color: var(--text-color);
	background: #fff;
	overflow-x: hidden;
	max-width: 100%;
	font-family: "Be Vietnam Pro", sans-serif;
}

.bi {
	fill: currentColor
}

.form-control:focus, a, button, .page-link:focus, .btn, .btn:focus {
	outline: none !important;
	box-shadow: none
}

.form-control:focus {
	border-color: #333;
}

a {
	color: var(--link-color)
}

a:focus {
	outline: none
}

a:hover {
	text-decoration: none;
	color: var(--link-hover-color)
}

img, iframe {
	max-width: 100%
}

.hidden {
	display: none !important
}

.show:not(.hidden) {
	display: block
}

.object-contain {
	object-fit: contain
}

.align-vertical {
	top: 50% !important;
	transform: translateY(-50%) !important
}

.align-center {
	transform: translate(-50%, -50%) !important;
	top: 50% !important;
	left: 50% !important
}

.close {
	color: #252525
}

.btn-action {
	background-color: var(--secondary-color);
	border: 1px solid var(--secondary-color)
}

.btn-action:hover {
	filter: brightness(1.1)
}

a.link {
	text-decoration: none;
	color: var(--text-color);
	cursor: pointer
}

a.link:hover {
	color: var(--link-hover-color);
	text-decoration: none
}

.hover-primary:hover {
	color: var(--primary-color)
}

.title_page {
	font-size: 1.3rem;
	padding: 10px 0
}

.title_page, .title-head {
	font-weight: 400
}

.title-head {
	font-size: 1rem;
	margin-bottom: 14px;
	text-transform: uppercase
}

.row-grid {
	--col: 12;
	display: grid;
	grid-template-columns: repeat(var(--col), minmax(0, 1fr));
	grid-gap: 15px
}

.scroll::-webkit-scrollbar {
	width: 3px
}

.scroll::-webkit-scrollbar-thumb {
	background-color: var(--primary-color);
	outline: 1px solid var(--primary-color)
}
.hide-scroll::-webkit-scrollbar {
	width: 0px
}

.lazyload:not(.loaded) {
	background: #ebebeb
}

.lazyload.loaded {
	background: transparent
}

.modal {
	top: 0 !important
}

.slick-slider {
	position: relative;
	display: block;
	box-sizing: border-box;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-webkit-touch-callout: none;
	-khtml-user-select: none;
	-ms-touch-action: pan-y;
	touch-action: pan-y;
	-webkit-tap-highlight-color: transparent
}

.slick-list {
	position: relative;
	display: block;
	overflow: hidden;
	margin: 0;
	padding: 0;
	padding-top: 2px;
}

.slick-list:focus {
	outline: none
}

.slick-list.dragging {
	cursor: pointer;
	cursor: hand
}

.slick-slider .slick-track, .slick-slider .slick-list {
	-webkit-transform: translate3d(0, 0, 0);
	-moz-transform: translate3d(0, 0, 0);
	-ms-transform: translate3d(0, 0, 0);
	-o-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0)
}

.slick-track {
	position: relative;
	top: 0 !important;
	left: 0;
	display: block;
	margin-left: auto;
	margin-right: auto
}

.slick-track:before, .slick-track:after {
	display: table;
	content: ''
}

.slick-track:after {
	clear: both
}

.slick-loading .slick-track {
	visibility: hidden
}

.slick-slide {
	display: none;
	float: left;
	height: 100%;
	min-height: 1px
}

[dir='rtl'] .slick-slide {
	float: right
}

.slick-slide img {
	display: block
}

.slick-slide.slick-loading img {
	display: none
}

.slick-slide.dragging img {
	pointer-events: none
}

.slick-initialized .slick-slide {
	display: block
}

.slick-loading .slick-slide {
	visibility: hidden
}

.slick-vertical .slick-slide {
	display: block;
	height: auto;
	border: 1px solid transparent
}

.slick-arrow.slick-hidden {
	display: none
}

.slick-arrow {
	--size: 44px;
	top: 50%;
	font-size: 0;
	line-height: 0;
	position: absolute;
	display: block;
	width: var(--size);
	height: var(--size);
	padding: 0;
	-webkit-transform: translate(0, -50%);
	-ms-transform: translate(0, -50%);
	transform: translate(0, -50%);
	cursor: pointer;
	color: transparent;
	border: none;
	outline: none;
	border: 1px solid #ebebeb;
	background: #ebebeb;
	line-height: var(--size);
	text-align: center;
	z-index: 1;
	overflow: hidden;
	opacity: .7;
	border-radius: 100%
}

.slick-arrow:hover, .slick-arrow:focus {
	outline: none
}

.slick-arrow.slick-disabled {
	cursor: default;
	display: none !important
}

.slick-arrow:not(.slick-disabled):hover {
	opacity: 1;
	box-shadow: 1px 2px 10px -1px rgba(0, 0, 0, 0.3);
	background: #fff;
	color: #333
}

.slick-arrow.slick-prev:before, .slick-arrow.slick-next:before {
	font-family: "Font Awesome\ 5 Free";
	background: transparent;
	font-weight: 600;
	height: var(--size);
	width: var(--size);
	font-size: 18px;
	color: #333;
	display: block;
	-webkit-transition: all ease 0.3s;
	-moz-transition: all ease 0.3s;
	-ms-transition: all ease 0.3s;
	-o-transition: all ease 0.3s;
	transition: all ease 0.3s
}

.slick-arrow.slick-prev {
	left: 5px
}

.slick-arrow.slick-prev:before {
	content: "\f104"
}

.slick-arrow.slick-next {
	right: 5px
}

.slick-arrow.slick-next:before {
	content: "\f105"
}

.slick-dots {
	text-align: center
}

.slick-dots li {
	display: inline-block
}

.slick-dots li button {
	border-radius: 0;
	height: 10px;
	width: 10px;
	border: 1px solid #e5e5e5;
	background-color: #e5e5e5;
	padding: 0;
	font-size: 0
}

.slick-dots li.slick-active button {
	border-color: var(--primary-color);
	background-color: var(--primary-color)
}

.slick-dots {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin-left: auto;
	margin-right: auto;
	width: 100px;
	padding: 0;
	border-radius: 15px;
	height: 24px;
	align-items: center;
	display: flex !important;
	justify-content: center
}

.slick-dots li button {
	height: 2px;
	width: 16px;
	border: 1px solid #fff;
	background: #e5e5e5;
	border-radius: 0;
	margin: 0 3px;
	opacity: .5
}

.slick-dots li button:hover {
	opacity: 1
}

.slick-dots li.slick-active button {
	opacity: 1
}



.right-banner {
	display: grid;
	grid-row-gap: 10px;
	margin-left: 5px
}

.product-badge {
	max-height: 16px;
	margin-top: .5rem;
	margin-right: .5rem;
	display: block
}

.custom-input-group {
	overflow: hidden;
	position: relative
}

.custom-input-group .input-group-field {
	width: 100%;
	height: 45px;
	font-size: 14px;
	padding: 0 10px;
	background: transparent;
	color: #363636;
	outline: none;
	padding: 0 50px 0 15px;
	float: right;
	border: 1px solid #ebebeb;
	overflow: hidden;
	background: #fff;
	border-radius: 9999px !important;
    padding: 3px !important;
    padding-left: 15px !important;
    border: 1px solid;
}

.custom-input-group .input-group-btn {
	position: absolute;
	right: 0px;
	z-index: 4;
	height: calc(100% - 6px);
    border-radius: 999px;
    background: #292929;
    padding: 0;
    top: 3px;
    right: 3px;
}

.custom-input-group .input-group-btn, .custom-input-group .input-group-btn button {
	border: none;
	line-height: 1;
}

.custom-input-group .input-group-btn .icon {
	font-size: 24px
}

@media (max-width:767px) {
	.custom-input-group .input-group-btn .btn {
		padding: 4px 10px
	}

}

.price {
	font-weight: 600;
	color: var(--price-color)
}

.product-vendor {
	color: #969696 !important;
	letter-spacing: 1.8px
}

a.product-vendor:hover {
	color: var(--primary-color) !important
}

.item_product_main {
	margin-top: .5rem;
	margin-bottom: .5rem;
	background: #fff
}

.item_product_main .product-thumbnail {
	position: relative;
	overflow: hidden
}

.item_product_main .product-thumbnail .image_thumb {
	transition: transform .3s ease-out
}

.item_product_main .product-thumbnail .action-bar {
	position: absolute;
	bottom: 15px;
	left: 50%;
	transform: translateX(-50%);
	background: #fff;
	display: flex;
	justify-content: center;
	border-radius: 5px;
	box-shadow: 0 5px 10px rgba(0, 0, 0, 0.05);
	opacity: 0;
	transform: translate3d(-50%, 150%, 0);
	transition: all .3s ease
}

.item_product_main .product-thumbnail .action-bar .action-child {
	position: relative;
	border-radius: 0;
	border-right: 1px solid #eee;
	height: 45px;
	margin-bottom: 0 !important;
	width: 45px;
	padding: 0;
	font-size: 14px;
	transition: all .3s ease;
	border-radius: 5px 0 0 5px
}

.item_product_main .product-thumbnail .action-bar .action-child .action-name {
	opacity: 0;
	visibility: hidden;
	position: absolute;
	bottom: 100%;
	background: #333;
	padding: 5px 8px;
	border-radius: 5px;
	color: #fff;
	font-size: 12px;
	left: 50%;
	transform: translateX(-50%);
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	display: block;
	width: auto;
	min-width: max-content
}

.item_product_main .product-thumbnail .action-bar .action-child .action-name:before {
	background: transparent;
	content: "";
	position: absolute;
	height: 8px;
	left: 0;
	top: 100%;
	width: 100%
}

.item_product_main .product-thumbnail .action-bar .action-child .action-name:after {
	background: #333333;
	content: "";
	height: 10px;
	position: absolute;
	transform: rotate(45deg);
	width: 10px;
	left: calc(50% - 5px);
	bottom: -5px
}

.item_product_main .product-thumbnail .action-bar .action-child.quick-view,
.item_product_main .product-thumbnail .action-bar .action-child.js-compare-product-add {
	margin: 0
}

.item_product_main .product-thumbnail .action-bar .action-child + .action-child {
	border-radius: 0;
}

.item_product_main .product-thumbnail .action-bar .action-child:last-child {
	border-radius: 0 5px 5px 0;
	border-right: 0
}

.item_product_main .product-thumbnail .action-bar .action-child:hover {
	background-color: #f5f5f5;
}

.item_product_main .product-thumbnail .action-bar .action-child:hover .action-name {
	opacity: 1;
	visibility: visible;
	bottom: calc(100% + 8px)
}
.item_product_main .product-thumbnail .action-bar .action-child > .icon-option{
	max-width: 20px;
}

.item_product_main .video-icon {
	transform: none !important;
	position: absolute !important;
	z-index: 99;
	right: 5px;
	left: auto !important;
	bottom: 8px;
	top: auto !important;
	width: 32px !important
}

@media (min-width:1025px) {
	.item_product_main {
		font-size: 16px;
		margin-bottom: 30px;
	}

	.item_product_main .product-thumbnail:hover {
		box-shadow: 0px 0px 6px 0px rgba(50, 50, 93, 0.1), 1px 1px 5px rgba(0, 0, 0, 0.02)
	}

	.item_product_main .product-thumbnail:hover .product-name a {
		color: var(--primary-color)
	}

	.item_product_main .product-thumbnail:hover .image_thumb {
		transform: scale(0.95)
	}

	.item_product_main .product-thumbnail:hover .product-action .group_action {
		position: absolute;
		opacity: 1;
		transform: translateX(0);
		background: #fff;
		z-index: 99;
		visibility: visible;
		align-items: center;
		box-shadow: -2px 2px 6px rgba(0, 0, 0, 0.25)
	}

	.item_product_main .product-thumbnail:hover .action-bar {
		opacity: 1;
		transform: translate3d(-50%, 0, 0)
	}

}

.item_product_main a {
	text-decoration: none;
	color: var(--text-color);
	font-weight: 600;
}

.item_product_main .btn-views {
	background: #fff;
	width: 40px;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 5px;
	transition: all .22s ease-out
}

.item_product_main .btn-views:hover {
	opacity: 1;
	color: var(--primary-color)
}

.item_product_main .product-vendor {
	font-size: 12px;
	text-transform: uppercase;
	display: inline-block;
	line-height: initial
}

.item_product_main .product-name {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	white-space: initial;
	overflow: hidden;
	margin: 0 0 5px;
	font-size: 16px;
	font-weight: normal;
	line-height: 1.4;
	/*min-height: 35px*/
}

@media (max-width:767px) {
	.item_product_main .product-name {
		font-size: 14px;
		/*min-height: 38px*/
	}

}

.item_product_main .product-promo-tag {
	font-size: 13px;
	font-weight: 600;
	display: -webkit-box;
	-webkit-line-clamp: 1;
	-webkit-box-orient: vertical;
	white-space: initial;
	overflow: hidden
}

.item_product_main .product-promo-tag--1 {
	position: absolute;
	z-index: 7;
	border-radius: 2px;
	left: 10px;
	top: 0px;
}
.product-promo-tag--text-1, .product-promo-tag--text-2 {
	padding: 3px 4px;
	display: inline-block;
	color: var(--color);
	border-radius: 3px;
	background-color: var(--background);
}
.item_product_main .product-promo-tag--text-1 {
	border: 1px solid var(--border-color);
	background-color: var(--background);
}
.product-promo-tag--text-2 {
	box-shadow: 0px 0px 4px rgba(0, 0, 0, .15);
	border-left: 4px solid var(--border-color);
}
.product-promo-tag--image {
	max-width: 125px;
	padding: 0;
	margin-top: 8px;
}

.item_product_main .product-info {
	padding: 3px 0px
}

@media (min-width:992px) {
	.item_product_main .product-info {
		padding: 10px 0 0;
	}

}

.item_product_main .price-contact, .item_product_main .price {
	display: block;
	color: var(--price-color)
}

@media (max-width:767px) {
	.item_product_main .price-contact, .item_product_main .price {
		font-size: 16px;
		display: block
	}

}

.item_product_main .compare-price {
	color: var(--text-secondary-color);
	text-decoration: line-through;
	font-size: 14px;
	display: inline-block;
	margin-right: 5px
}

@media (max-width:767px) {
	.item_product_main .compare-price {
		font-size: 13px
	}

}

.item_product_main .group_action {
	position: absolute;
	opacity: 0;
	visibility: hidden;
	top: 10px;
	transform: translateX(100px);
	display: flex;
	justify-content: center;
	align-items: center;
	transition: transform .3s ease-out;
	width: 40px;
	height: 40px;
	overflow: hidden;
	border-radius: 100%;
	right: 10px
}

.item_product_main .image_thumb {
	display: block
}

.item_product_main .label_product {
	position: absolute;
	top: 10px;
	left: 10px;
	background: var(--label-background);
	padding: 7px 2px;
	font-weight: 600;
	font-size: 12px;
	z-index: 3;
	width: 44px;
	height: 44px;
	border-radius: 100%;
	font-size: 14px
}

.item_product_main .label_product .label_wrapper {
	width: 100%;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	color: var(--label-color);
	font-weight: 400
}

/*@media (max-width:991px) {*/
	.item_product_main .label_product:not(.product_gift_label) {
		top: 0;
		right: 0;
		display: none;
		position: inherit;
		min-width: 44px;
		width: auto;
		height: auto;
		padding: 2px 5px !important;
		font-size: 12px;
		border-radius: 9999px;
		zoom: 1 !important
	}

/*}*/

@media (max-width:767px) {
	.item_product_main .sapo-product-reviews-badge .sapo-product-reviews-star i {
		font-size: 14px !important
	}
  .item_product_main .product-item-cta .item-label-soldout{
  	position: relative !important;
  }
}

.item_product_main .product-item-cta {
	padding-right: 36px
}
.item_product_main .product-item-cta .item-label-soldout{
	position: absolute;
  top: 0;
  right: 0;
  font-size: 14px;
  color: #000;
  background: #ccc;
  padding: 2px 6px;
}
.item_product_main button.product-item-btn, .item_product_main .label_soldout.product-item-btn {
	width: 30px;
	height: 30px;
	display: inline-flex;
	align-items: center;
	padding: 4px;
	font-size: 18px;
	background: var(--addtocart-color);
	border-radius: 100%;
	color: #fff;
	justify-content: center;
	margin-right: 5px;
	margin-left: auto;
	box-shadow: -2px 2px 6px rgba(0, 0, 0, 0.25);
	position: absolute;
	right: 0;
	top: 0px
}

.item_product_main button.product-item-btn.sold_out, .item_product_main .label_soldout.product-item-btn.sold_out {
	background: #eee;
	width: auto;
	height: auto;
	border-radius: initial;
	font-size: 12px;
	color: initial;
	box-shadow: none;
	border-radius: 3px;
	padding: 2px 5px
}

.item_product_main button.product-item-btn.add_to_cart, .item_product_main .label_soldout.product-item-btn.add_to_cart {
	font-size: 16px
}

.item_product_main button.product-item-btn .fas, .item_product_main .label_soldout.product-item-btn .fas {
	font-size: 12px
}

.item_product_main button.product-item-btn .icon, .item_product_main .label_soldout.product-item-btn .icon {
	width: 1em;
	height: 1em
}

.item_product_main button.product-item-btn:hover, .item_product_main .label_soldout.product-item-btn:hover {
	filter: brightness(1.2)
}

@media (max-width:767px) {
	.item_product_main button.product-item-btn, .item_product_main .label_soldout.product-item-btn {
		width: 28px;
		height: 28px;
		top: 0px
	}

}

.item_product_main .product-thumbnail__img--secondary {
	opacity: 0;
	z-index: -1
}

.item_product_main .product-thumbnail:hover .product-thumbnail__img--secondary {
	opacity: 1;
	z-index: 1
}

.item_product_main .product-thumbnail:hover .img-fetured.has-second-img {
	opacity: 0;
	z-index: -1
}

.item_product_main .item-color-chosen {
	display: flex;
	margin: 5px 0;
	flex-wrap: wrap;
}

.item_product_main .item-color-chosen .color-dot {
	position: relative;
	width: 24px;
	height: 24px;
	border-radius: var(--border-radius);
	box-shadow: 0 0 0 1px #eee;
	margin: 5px;
	cursor: pointer;
	transition: box-shadow .25s ease, transform .25s ease
}

.item_product_main .item-color-chosen .color-dot.selected {
	box-shadow: 0 0 0 1px #000, inset 0 0 0 4px #fff
}

.item_product_main .item-color-chosen .color-dot .color-name {
	opacity: 0;
	visibility: hidden;
	position: absolute;
	background: blue;
	bottom: 100%;
	background: #333;
	padding: 5px 8px;
	border-radius: 5px;
	color: #fff;
	font-size: 12px;
	left: 50%;
	transform: translateX(-50%);
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	white-space: nowrap
}

.item_product_main .item-color-chosen .color-dot .color-name:before {
	background: transparent;
	content: "";
	position: absolute;
	height: 8px;
	left: 0;
	top: 100%;
	width: 100%
}

.item_product_main .item-color-chosen .color-dot .color-name:after {
	background: #333333;
	content: "";
	height: 10px;
	position: absolute;
	transform: rotate(45deg);
	width: 10px;
	left: calc(50% - 5px);
	bottom: -5px
}
@media(max-width: 1199px){
	.item_product_main .item-color-chosen .color-dot .color-name{
		display: none;
	}
}

.item_product_main .item-color-chosen .color-dot:hover {
	box-shadow: 0 0 0 1px #000, inset 0 0 0 4px #fff;
	transform: scale(1.1)
}

.item_product_main .item-color-chosen .color-dot:hover .color-name {
	opacity: 1;
	visibility: visible;
	bottom: calc(100% + 8px)
}

.item_product_main .item-color-chosen .color-more {
	position: relative;
	width: 24px;
	height: 24px;
	margin: 5px;
	color: #888;
	cursor: pointer
}

@media(min-width: 1600px){
	.item_product_main .item-color-chosen .color-more {
		width: 45px;
		height: 45px;
		line-height: 45px;
		text-align: center;
		font-size: 22px;
	}
	.item_product_main .item-color-chosen .color-dot {
		width: 45px;
		height: 45px;
	}
}

.item_product_main .item-color-chosen .color-more span {
	opacity: 0;
	visibility: hidden;
	position: absolute;
	bottom: 100%;
	background: #333;
	padding: 5px 8px;
	border-radius: 5px;
	color: #fff;
	font-size: 12px;
	left: 50%;
	transform: translateX(-50%);
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	display: block;
	width: auto;
	min-width: max-content
}

.item_product_main .item-color-chosen .color-more span:before {
	background: transparent;
	content: "";
	position: absolute;
	height: 8px;
	left: 0;
	top: 100%;
	width: 100%
}

.item_product_main .item-color-chosen .color-more span:after {
	background: #333333;
	content: "";
	height: 10px;
	position: absolute;
	transform: rotate(45deg);
	width: 10px;
	left: calc(50% - 5px);
	bottom: -5px
}

.item_product_main .item-color-chosen .color-more:hover span {
	opacity: 1;
	visibility: visible;
	bottom: calc(100% + 8px)
}

.item_product_main.product--media {
	margin-bottom: .75rem
}

.item_product_main.product--media form {
	display: grid;
	grid-template-columns: 33% 1fr;
	grid-gap: 5px;
	align-items: center
}

.item_product_main.product--media .group_action {
	display: none !important
}

.item_product_main.product--media .product-name {
	-webkit-line-clamp: 2;
	font-weight: normal;
	font-size: 14px;
	min-height: auto
}

.item_product_main.product--media .label_product {
	zoom: .7
}

.item_product_main.product--media .product-info {
	padding: 0px 10px 5px
}

.product-frame {
	z-index: 9
}

.heading-bar {
	font-size: 18px;
	background: #fff;
	padding-bottom: 10px;
	padding-top: 5px;
	gap: 5px;
}
/* VIETTA FIX 2026-08-16c: rule gốc `.heading-bar { background:#fff }` chèn khối trắng
   đặc vào MỌI khối chứa title — trên trang chủ các section nền xám #f5f7f6 bị "đốm
   trắng" lệch theo title. Trang chủ đã tự quản nền khối nên làm title trong suốt,
   để màu section bao trọn (giữ nền trắng cho heading-bar ở các trang khác).
   FIX 2026-08-16d: thêm margin-bottom 32px để title cách nội dung phía dưới một
   khoảng hợp lý — trước đó các section dùng .heading-bar + .row liền kề bị dính 0px. */
.page-homepage .heading-bar {
	background: transparent;
	margin-bottom: 32px;
}
.heading-bar a.see-all{
	color: initial;
	text-decoration: underline;
}
.heading-bar a.see-all:hover{
	color: var(--link-color);
}
@media(max-width: 1600px){
	.heading-bar {
		font-size: 16px;
	}
}

.heading-bar__title {
	color: var(--text-color);
	font-size: 2rem;
	margin: 0px;
	text-align: center;
	font-weight: 600;
	text-decoration: none !important;
}

.heading-bar__title.flashsale__title > a{
	text-decoration: none !important;
}

.heading-bar__title a:hover {
	color: var(--link-color)
}

.heading-bar__title span{
	display: block;
	text-align: left;
	font-size: 0.7em;
  margin-bottom: 6px;
}

@media (max-width:991px) {
	.heading-bar__title {
		font-size: 1.3em;
		text-align: center !important;
		line-height: 1.2;
	}
	.item_product_main .item-color-chosen .color-dot {
		width: 28px;
		height: 28px;
		margin-right: 8px;
	}
}

.heading-bar__action .link.more {
	color: var(--primary-color)
}

.heading-bar.heading-style1{
	flex-direction: column;
	
}
.heading-bar.heading-style1 .heading-bar__title{
	margin-bottom: 15px;
}
.top-footer {
	padding-top: 32px;
	padding-bottom: 32px;
	background: #f7f7f7
}

.newsletter-form .input-group-field {
	padding: 0px 90px 0px 15px
}

.title-menu {
	margin: 0px 0px 17px;
	font-weight: 600;
	font-stretch: normal;
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: 18px;
	font-weight: 600;
	color: #000;
}

@media (max-width:1024px) {
	.title-menu {
		margin-top: 1rem;
		margin-bottom: .5rem
	}

}

.footer {
	position: relative;
	overflow: hidden
}

.mailchimp-error {
	color: #F51B1B
}

.mailchimp-success {
	color: #2EB346
}

footer {
	background: var(--footer-bg)
}

.mid-footer {
	color: var(--footer-color);
	font-size: 15px;
	padding-bottom: 40px;
}

.mid-footer .footer-click {
	padding-left: 15px;
	padding-right: 15px
}

@media (max-width:991px) {
	.mid-footer {
		padding-top: 30px
	}
	.mid-footer .footer-click {
		padding-left: 0;
		padding-right: 0;
		margin-bottom: 16px;
	}
}

.mid-footer .title-menu .fa {
	transition: transform .3s ease-out
}

.mid-footer .title-menu.open_ .fa {
	transform: rotate(180deg)
}

.mid-footer .link {
	color: var(--footer-color)
}

.mid-footer .link .fa {
	font-size: 10px
}

.mid-footer .link:hover {
	filter: brightness(1.2)
}

.mid-footer .list-menu {
	list-style: none;
	padding: 0px
}

.mid-footer .list-menu li+li {
	margin-top: 10px
}

.mid-footer .single-contact .fa, .mid-footer .single-contact .fas {
	color: var(--footer-color)
}

.mid-footer div[class*=col-] {
	border-top: none;
	border-bottom: none;
}

.mid-footer div[class*=col-]:last-child {
	border-right: none
}
.mid-footer .form_register .newsletter-form .input-group-field{
	padding-right: 95px !important;
}
@media (min-width:1200px) {
	.mid-footer .footer-block {
		padding: 80px 0;
		padding-bottom: 40px;
	}
	.mid-footer .form_register .newsletter-form .input-group-field{
		padding-right: 115px !important;
	}
}
@media(min-width: 1024px) and (max-width: 1199px){
	.mid-footer .footer-block {
		padding: 40px 0;
		padding-bottom: 20px;
	}
}

.mid-footer .footer-block .footer-title {
	font-size: 16px;
	margin-bottom: 16px;
	color: inherit;
	font-weight: 600;
}

@media (max-width:767px) {
	.mid-footer .list-menu.toggle-mn {
		display: none
	}

}

.bot-footer {
	padding-top: 20px;
	padding-bottom: 32px;
	border-top: 1px solid #dedede;
	text-align: center;
	line-height: 52px
}

.bot-footer .follow_option {
	justify-content: flex-end
}

.follow_option a.link{
	display: flex;
	padding: 5px 3px;
    gap: 15px;
    height: 45px;
    line-height: 33px;
    border-radius: 6px;
	align-items: center;
}

.follow_option > li + li{
	margin-left: 15px;
}

@media (min-width:1200px) {
	.bot-footer .follow_option {
		padding-right: 65px
	}

}

@media (max-width:991px) {
	.bot-footer .follow_option {
		justify-content: center
	}

}

.bot-footer .follow_option li+* {
	margin-left: 1rem
}

.bot-footer .follow_option .link {
	font-size: 25px
}

@media (max-width:991px) {
	.bot-footer .product-trustbadge {
		justify-content: center
	}

}

.footer-1>* {
	position: relative;
	z-index: 1
}

@media (min-width:1200px) {
	.footer-1:before {
		content: "";
		position: absolute;
		right: 5px;
		top: -9999px;
		bottom: -9999px;
		left: -9999px;
		background: var(--footer-overlay);
		z-index: 0
	}

}

.copyright {
	background: var(--footer-bg);
	color: var(--footer-color)
}

.copyright a {
	color: var(--footer-color)
}

.fot_copyright {
	font-size: 14px
}

@media (max-width:767px) {
	.fot_copyright {
		font-size: 12px
	}

}

.list-group-item.active {
	z-index: 2;
	color: initial;
	background-color: initial;
	border-color: initial
}

.list-group-item+.list-group-item.active {
	margin-top: 0;
	border-top-width: 0
}

.toogle-nav-wrapper {
	position: relative;
	margin-bottom: var(--subheader-padding);
	margin-top: var(--subheader-padding)
}

.toogle-nav-wrapper .navigation-wrapper {
	position: absolute;
	opacity: 0;
	visibility: hidden;
	z-index: -1;
	width: 100%;
	margin-top: 7px
}

.toogle-nav-wrapper.visible .navigation-wrapper, .toogle-nav-wrapper:not(.nav-index):hover .navigation-wrapper {
	opacity: 1;
	visibility: visible;
	z-index: 90
}

@media (max-width:1024px) {
	.toogle-nav-wrapper:hover .navigation-wrapper {
		opacity: 1;
		visibility: visible;
		z-index: 90
	}

}

.toogle-nav-wrapper .navigation .submenu {
	left: calc(100% - 6px) !important;
	top: 0px !important;
	height: calc(100% + 2px)
}

/* VIETTA: topbar theo mẫu vietta.pages.dev — cao cố định 32px, canh phải, không nút đóng
   (đã bỏ hẳn markup .close, xem snippets/top-banner.bwt). Banner tự ẩn dưới lg bằng class
   d-none d-lg-block trong markup nên không cần override riêng cho mobile nữa. */
.top-banner {
	height: 32px;
}

.top-banner a {
	display: block;
	height: 32px;
	line-height: 32px;
	color: #ffffff;
	font-size: 13px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.header_menu {
	top: 0
}

.header_menu.active {
	position: sticky;
	position: -webkit-sticky;
	background: #fff;
	box-shadow: 0 0px 5px 1px rgba(0, 0, 0, 0.4);
	z-index: 1000
}

.header_menu.active a.logo-wrapper {
	display: none
}

.header_menu.active .toogle-nav-wrapper {
	display: block
}

.header_menu.active .search-dropdow {
	display: none
}

@media (max-width:991px) {
	.header_menu.active .toogle-nav-wrapper {
		display: none
	}

	.header_menu.active #search-header {
		flex: 0 0 50%;
		margin-top: 0;
		padding: 0;
		order: 0
	}

	.header_menu.active .header-left {
		display: none
	}

}

.header_menu.active .mid-header {
	font-size: 14px;
	padding: 4px 0px
}

.header_menu.active .mid-header:after {
	content: none !important
}

.header_menu.active .toogle-nav-wrapper {
	margin: -5px 0px;
	z-index: 8
}

.header_menu.active .toogle-nav-wrapper:hover ~ .sticky-overlay {
	position: fixed;
	width: 100vw;
	height: 100vh;
	z-index: 7;
	background: rgba(0, 0, 0, 0.3);
	left: 0;
	top: 0
}

.header_menu.active .toogle-nav-wrapper .navigation-wrapper {
	margin-top: -5px
}

.header_menu.active .navigation {
	--nav-height: 75vh
}

.header_menu.active #search-header {
	order: 0 !important;
	margin: 0 !important
}

@media (max-width:320px) {
	.header_menu.active .search-bar {
		visibility: hidden;
		opacity: 0
	}

}


.blogwp h3, .blogwp h3 a.link {
	font-weight: normal;
	line-height: 1.2;
	font-size: 1.25rem
}

.blogwp .media {
	line-height: 1.4
}

.art-info {
	font-size: 14px;
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 10px;
}
 .art-info  span{
	display: inline-flex;
	align-items: center;
	gap: 5px
}
.art-info svg{
	font-size: 20px
}
.blogwp .button_custome_35.link {
	font-size: 14px;
	text-decoration: underline;
}

.blogwp .lead {
	font-size: 14px;
	margin-top: .3rem;
	margin-bottom: 0px;
	word-break: break-word;
  	font-weight: normal;
}

.blogwp.media .image-blog {
	width: 100px;
	flex: 0 0 100px
}

.blogwp.media+* {
	margin-top: 10px;
}

@media (max-width:991px) {
	.blogwp.media h3, .blogwp.media h3 a.link {
		font-size: 1rem
	}

}

.tabs-group {
	overflow-x: auto;
	overflow-y: hidden;
	max-width: 100%;
}

.tabs-group::-webkit-scrollbar {
	display: none
}

.tabs-group {
	-ms-overflow-style: none;
	scrollbar-width: none
}

.tabs li {
	position: relative;
	border-radius: 4px;
	white-space: nowrap;
	color: var(--text-color);
	font-size: 18px;
	user-select: none;
	position: relative;
	padding-bottom: 5px;
  font-weight: 600;

}
.tabs li:after{
	content: '';
    background-color: currentColor;
    bottom: 0;
    content: "";
    height: 3px;
    left: 0;
    position: absolute;
    width: 0;
    transition: width .2s ease-in-out;
}
.tabs li:not(:last-of-type) {
	margin-right: .5rem
}

.tabs li:not(.current) {
	cursor: pointer
}

.tabs li.current {
    border-radius: 0;
}

.tabs li.current:after{
	width: 100%
}

.tabs li.current:after {
	background: var(--primary-color)
}
.tabs li:hover{
	color: var(--primary-color)
}

.tab-content {
	display: none
}

.tab-content.current {
	display: block
}

#mobile-menu {
	position: fixed;
	left: -100%;
	top: 0!important;
	width: 300px;
	height: 100%;
	background: #fff;
	z-index: -1;
	opacity: 0;
	overflow-y: auto;
	overflow-x: hidden;
	padding-bottom: 45px
}

#mobile-menu .mobile-menu-body {
	max-height: calc(100% - 68px);
	overflow-y: auto
}

#mobile-menu .mobile-menu-body .list-group-item.active {
	z-index: 9
}

#mobile-menu .mobile-menu-footer {
	position: absolute;
	bottom: 0px;
	left: 0px;
	background: #f4f4f4
}

@media (max-width:991px) {
	#mobile-menu {
		left: 0;
		opacity: 1;
		transform: translateX(-100%);
		transition: transform 0.2s ease-out
	}

	#mobile-menu.active {
		z-index: 99999;
		transform: translateX(0);
		overflow-x: hidden
	}

	#mobile-menu.active+.menu-overlay {
		position: fixed;
		left: 0;
		top: 0;
		z-index: 9998;
		width: 100%;
		height: 100%;
		background: rgba(0, 0, 0, 0.5)
	}

	#mobile-menu .subheader {
		display: block
	}

}

#mobile-menu .user-menu {
	background: var(--primary-color);
	color: #fff;
	padding: 10px 15px;
	--text-color: var(--main-menu-color)
}
#mobile-menu .user-menu a{
	color: #fff;
}

#mobile-menu .user-menu .fas {
	font-size: 24px
}

#mobile-menu .shop-policises {
	flex-direction: column;
	align-items: start;
	align-items: flex-start !important
}

#mobile-menu .shop-policises li {
	padding: 10px 15px;
	--header-color: var(--text-color)
}

#mobile-menu .shop-policises li+* {
	margin: 0px
}

#mobile-menu [data-toggle-submenu] {
	float: right;
	width: 30px;
	height: 22px;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: transform .2s ease-out
}

#mobile-menu .navigation {
	min-height: auto;
	flex-direction: column
}

#mobile-menu .navigation .menu-item .submenu {
	display: none;
	position: fixed;
	right: 0;
	top: 0!important;
	width: 300px;
	height: 100%;
	transform: translateX(100%);
	transition: transform .25s .05s ease-out;
	z-index: -1
}

#mobile-menu .navigation .menu-item.active [data-toggle-submenu] {
	transform: rotate(0deg)
}

#mobile-menu .navigation .menu-item.active .submenu {
	transform: translateX(0);
	z-index: 2;
	display: block
}

#mobile-menu .navigation .list-group-item>a {
	align-items: center;
	justify-content: space-between;
	background: #fff;
	color: var(--text-color) !important
}

#mobile-menu .toggle-submenu {
	margin-left: -20px;
	margin-right: -20px;
	margin-top: -15px;
	background: #eee;
	padding: 10px 15px;
	margin-bottom: 15px;
	color: var(--text-color);
	font-size: 16px;
	text-transform: uppercase
}

#mobile-menu .navigation .submenu__list {
	--col-menu: 1
}

@media(max-width: 991px){
	#mobile-menu .navigation .list-group-item>a{
		padding: 8px 15px;
	}
	#mobile-menu .navigation .list-group-item .menu-item__link > img{
		    order: 1;
	}
	#mobile-menu .navigation .list-group-item .menu-item__link > i{
		order: 2
	}
}

/** bread-crumb **/
.bread-crumb, .bread-crumb .breadcrumb, .breadcrumb-list .breadcrumb {
	background-color: transparent;
  padding: 0.25rem 0rem;
}
@media(max-width: 767px){
	.breadcrumb {
    margin-bottom: 0px;
    font-size: 13px;
  }
}
section {
	margin-bottom: 6.25rem;
}
/* VIETTA FIX 2026-08-16c: rule gốc EGA `section { margin-bottom: 6.25rem }` (=100px)
   chèn khoảng trống 100px ở đáy MỌI <section>, khiến trên trang chủ các section con
   (bên trong .page-homepage > .section) bị lệch — khối nền #f5f7f6/#fff không bao hết
   nội dung, đáy mỗi khối dư 100px màu nền. Trang chủ đã tự quản padding 52px đồng đều
   nên vô hiệu margin này cho các section CON của trang chủ (vẫn giữ rule gốc cho trang khác). */
.page-homepage > .section > section {
	margin-bottom: 0;
}

section .container.card {
	border: none;
	border-radius: 8px;
  padding: 0 15px;
}

@media (max-width:991px) {
	section {
		margin-bottom: 1rem;
	}
}

.pagination {
	display: flex;
	padding-left: 0;
	list-style: none;
	border-radius: .25rem
}

.page-item.disabled:not(.active) {
	display: none
}

.page-item .page-link, .page-item span {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	margin: 0 3px;
	border-radius: 50% !important;
	width: 36px;
	height: 36px;
	font-size: .875rem;
	color: #8898aa
}

.page-item .page-link:hover, .page-item span:hover {
	z-index: 2;
	color: #8898aa;
	text-decoration: none;
	background-color: #dee2e6;
	border-color: #dee2e6
}

@media (max-width:767px) {
	.page-item .page-link, .page-item span {
		width: 30px;
		height: 30px
	}

}

.page-item:first-child .page-link {
	margin-left: 0px
}

.page-item.active .page-link {
	z-index: 1;
	color: #fff;
	background-color: var(--primary-color);
	border-color: var(--primary-color);
	box-shadow: 0 7px 14px rgba(50, 50, 93, 0.1), 0 3px 6px rgba(0, 0, 0, 0.08)
}

.custom-checkbox {
	position: relative;
	display: block;
	min-height: 1.5rem;
	padding-left: 1.7rem
}

.custom-checkbox input {
	display: none
}

.custom-checkbox:not(.color) input:checked ~ .fa:after {
	background-color: var(--primary-color);
	border-color: var(--primary-color)
}

.custom-checkbox input:checked ~ .fa:before {
	z-index: 2;
	background: no-repeat 50%/50% 50%;
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3E%3C/svg%3E");
}

.custom-checkbox .fa {
	display: inline
}

.custom-checkbox .fa:after, .custom-checkbox .fa:before {
	content: '';
	pointer-events: none;
	background: var(--filter-color, #fff);
	box-shadow: none;
	position: absolute;
	top: .125rem;
	left: 0rem;
	display: block;
	width: 1.25rem;
	height: 1.25rem;
	border: 1px solid #cad1d7;
}

.custom-checkbox .fa:after {
	border: 1px solid #cad1d7;
	transition: all .3s ease;
	border-radius: .2rem;
	background: var(--filter-color, #fff);
	/*border-color: var(--filter-color)*/
}
.custom-checkbox.color .fa {
	width: 24px;
	height: 24px;
	border: 1px solid transparent;
	display: inline-block;
	position: absolute;
	left: 0;
	top: 0;
	border-radius: 999px;
}
.custom-checkbox.color input:checked ~ .fa {
	border-color: var(--primary-color);
}
.custom-checkbox.color .fa:before, .custom-checkbox.color .fa:after {
	width: 20px;
	height: 20px;
	left: 1px;
	top: 1px;
	border-radius: 999px;
}
.open_opacity {
	position: fixed;
	z-index: 9997;
	background: rgba(0, 0, 0, 0.4);
	width: 100%;
	height: 100%
}

.mini-cart {
	position: relative
}

@media (min-width:1024px) {
	.mini-cart:hover .top-cart-content {
		z-index: 199;
		visibility: visible;
		opacity: 1;
		box-shadow: 0 15px 35px rgba(50, 50, 93, 0.1), 0 5px 15px rgba(0, 0, 0, 0.07)
	}

}

.top-cart-content {
	position: absolute;
	z-index: -1;
	visibility: hidden;
	opacity: 0;
	width: 400px;
	right: 0%;
	top: calc(100% + 8px);
	color: var(--text-color);
	padding: 10px 15px;
	font-size: 14px
}

.top-cart-content:before {
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 7.5px 10px 7.5px;
	border-color: transparent transparent #ffffff transparent;
	position: absolute;
	top: -9px;
	right: 15px
}

.top-cart-content:after {
	content: '';
	width: 100%;
	height: 100%;
	position: absolute;
	top: -9px;
	z-index: 0
}

.top-cart-content .list-item-cart, .top-cart-content .mini-products-list {
	list-style: none;
	padding: 0px;
	margin-bottom: 0px;
	z-index: 1;
	position: relative
}

.top-cart-content .list-item-cart {
	max-height: 31ch;
	overflow: auto
}

.top-cart-content .list-item-cart::-webkit-scrollbar {
	width: 3px
}

.top-cart-content .list-item-cart::-webkit-scrollbar-thumb {
	background-color: var(--primary-color);
	outline: 1px solid var(--primary-color)
}

.top-cart-content .detail-item, .top-cart-content .product-details {
	width: 100%;
	text-align: left;
}

.top-cart-content a {
	color: var(--text-color)
}

.top-cart-content .border_list {
	display: flex;
	align-items: start;
	width: 100%
}

.top-cart-content .image_drop {
	width: 90px;
	height: 90px;
	margin-right: 10px
}

.top-cart-content .product-details {
	display: flex;
	flex-direction: row-reverse;
	justify-content: space-between
}

.top-cart-content .item {
	padding: 10px 0;
	border-bottom: 1px solid #eee;
	margin-bottom: 10px
}

.top-cart-content .product-name {
	margin-right: 10px;
	margin-bottom: 0px
}

.top-cart-content .remove-item-cart {
	margin-right: 10px;
	cursor: pointer
}

.top-cart-content .top-subtotal {
	margin: 10px 0
}

.top-cart-content .top-subtotal .price_big {
	font-size: 16px;
	font-weight: 600
}

.top-cart-content .pd.right_ct .btn {
	display: block;
	background: var(--cta-color);
	color: #fff;
	margin-bottom: 10px;
	border-radius: var(--btn-radius) !important
}

.top-cart-content .pd.right_ct .btn:hover {
	filter: brightness(1.2);
	    filter: drop-shadow(0px 3px 2px rgba(0, 0, 0, .5));
}

.btn-main {
	border-radius: var(--btn-radius);
  color: var(--primary-button-text-color);
  background-color: var(--primary-button-background);
  border: 1px solid var(--primary-button-text-color);
  transition: all .4s;
  position: relative;
}
.btn-style1 {
  text-transform: uppercase;
  font-weight: bold;
  font-size: 0.875rem
}

.btn-style1:before {
  content: "";
  height: 5px;
  width: 100%;
  bottom: 0;
  left: 0;
  position: absolute;
  background-color: var(--primary-color);
  transition: all ease .3s;
  font-size: 0.875rem;
}
.btn-style1:hover, .btn-style1:focus {
  color: var(--primary-button-text-color);
  box-shadow: inset 0 -5em 0 0 var(--primary-color);
  
}
/**
.btn-main:hover {
	color: #fff;
	background: var(--primary-color)
}
*/
.btn-main--primary {
	color: #fff;
	background: var(--primary-color)
}

.btn-main--primary:hover {
	color: #fff;
	filter: brightness(1.2)
}

.addThis_listSharing {
	position: fixed;
	bottom: 85px;
	z-index: 999;
	top: auto !important;
	right: 12px;
	opacity: 0;
	display: none
}

.backtop {
	right: 12px;
	bottom: 196px;
	top: auto !important;
	font-size: 14px;
	cursor: pointer;
	color: #000;
	top: auto !important;
	height: 44px;
	width: 44px;
	background-color: var(--primary-color);
	line-height: 36px;
	border-radius: 100%;
	font-size: 30px;
	transition: all 0.3s ease-out 0s;
	transform: translateY(-120px);
	opacity: 0;
	visibility: hidden;
	text-align: center;
	margin-bottom: 5px
}

.backtop:hover {
	filter: brightness(1.1);
  color: #000;
}

.backtop.show {
	z-index: 99;
	transition: transform 0.3s ease-out 0s;
	transform: translateY(0px);
	opacity: 1;
	visibility: visible
}

@media (max-width:576px) {
	.backtop {
		bottom: 60px
	}

}

.mailchimp-error a {
	color: var(--primary)
}

.item_skeleton {
	position: relative
}

.item_skeleton::after {
	display: block;
	content: '';
	width: 100%;
	padding-top: calc(100% + 115px);
	background-color: #e2e2e2
}

@media (max-width:767px) {
	.item_skeleton::after {
		padding-top: calc(100% + 115px)
	}

}

.section_insta .item_skeleton::after {
	padding-top: 100%
}

.ega-cr-addon {
	z-index: 999 !important
}

.ega-cr-addon ul {
	min-height: 54px
}

.variant-title {
	font-size: .8rem;
	font-weight: 400;
	color: #898989
}

.single-contact {
	display: flex;
	align-items: baseline;
	font-size: 15px;
	margin-bottom: 10px
}

.single-contact .fa, .single-contact .fas {
	color: var(--primary-color);
	margin-right: 5px;
	width: 20px;
	flex: 0 0 20px
}

#ega-modal-banner.show {
	z-index: 9997
}

#ega-modal-banner .btn-form-close {
	position: absolute;
	top: -15px;
	right: -5px;
	width: 30px;
	height: 30px;
	line-height: 30px;
	border: 0;
	display: block;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.7);
	display: flex;
	justify-content: center;
	align-items: center
}

#ega-modal-banner .modal-content {
	background: transparent;
	text-align: center;
	box-shadow: none;
	border: none
}

#ega-modal-banner .modal-header {
	padding: 0;
	border-bottom: none
}

#ega-modal-banner .modal-dialog {
	margin: auto;
	position: relative
}

@media (max-width:991px) {
	#ega-modal-banner .modal-dialog {
		width: 85%
	}
   .btn-style1 {
    font-size: 12px;
    padding: 8px 12px !important;
  }
  .btn-style1:before {
    height: 3px;
  }
}

body.menu-is-hover:before {
	content: '';
	position: fixed;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.3);
	left: 0;
	top: 0;
	z-index: 20
}

body.menu-is-hover .subheader {
	position: relative;
	z-index: 99
}

.sapo-product-reviews-module {
	padding-top: 15px;
	padding-bottom: 15px
}

.sapo-product-reviews-module .fa {
	font-family: FontAwesome !important
}

.sapo-product-reviews-badge {
	min-height: 18px
}

.sapo-product-reviews-module .bpr-products-module-heading .bpr-products-module-title {
	color: var(--text-color) !important;
	font-size: 1.4em !important;
	margin: 0px !important;
	line-height: 1.2 !important;
	font-weight: 600 !important
}

.sapo-product-reviews-module .swiper-button-disabled {
	display: none
}

.btn {
	padding: 12px 35px;
}

.btn-icon {
	display: inline-flex;
	align-items: center;
	gap: 5px
}

.icon {
	display: inline-block;
	width: 0.8em;
	height: 0.8em;
  font-size: 1.1em;
	stroke-width: 0;
	stroke: currentColor;
	fill: currentColor
}

@media (max-width:767px) {
	.product-col.col-6:nth-child(2n+1) {
		padding-right: 10px
	}

	.product-col.col-6:nth-child(2n) {
		padding-left: 10px
	}

}

.banner {
	position: relative;
	display: inline-block;
	overflow: hidden
}

.banner img {
	width: auto;
	transition: all .3s ease-in-out
}

.banner:hover img {
	transform: scale(0.95)
}

.aspect-ratio {
	aspect-ratio: var(--width)/var(--height)
}

.nav-search-main .nav-link {
    border: 1px solid #f2f2f2;
    border-radius: 0;
    margin: 0 7px;
	color:#333;
}

.nav-search-main .nav-link.active {
    border-color: var(--text-color);
    background: var(--body-background);
    color: var(--text-color);
    font-weight:500;
}
@supports not (aspect-ratio:auto) {
	.aspect-ratio {
		padding-top: calc(var(--height) / var(--width) * 100%);
		height: 0;
		position: relative;
		overflow: hidden
	}

}

@supports not (aspect-ratio:auto) {
	.aspect-ratio img {
		position: absolute;
		transform: translate(-50%, -50%);
		left: 50%;
		top: 50%;
		width: auto;
		max-width: 100%;
		height: auto
	}

}

.embed-responsive-2by3::before {
	--aspect-ratio: 2/3;
	padding-top: clamp(100%, calc(100vh), calc(100% / (var(--aspect-ratio))));
}

.embed-responsive-3by4::before {
	--aspect-ratio: 3/4;
	padding-top: clamp(100%, calc(100vh), calc(100% / (var(--aspect-ratio))));
}
.embed-responsive-4by3::before {
	--aspect-ratio: 4/3;
	padding-top: calc(100% / (var(--aspect-ratio)));
}
.embed-responsive-16by9::before {
	padding-top: 56.25%
}




@media (max-width: 767px) {
    .product-list {
        padding: 1px;
    }

    .top-footer {
        padding-top: 20px;
        padding-bottom: 20px;
    }

    .top-footer .follow_option, .top-footer .subscribe {
        justify-content: center;
    }

    .top-footer .subscribe {
        flex-wrap: wrap;
    }

  

    .item_product_main .product-item-cta {
        padding-right: 0;
    }

    .section_prd_feature:not(.slick-slider) .product-col, .recent-view-list:not(.slick-slider) .product-col {
        flex: 0 0 70%;
        max-width: 70%;
    }
}

/** Rating **/
.item_product_main .starbap-prev-badgetext{
	display:none
}
.haravan-product-reviews-badge{
	font-size: 12px!important;
	display: flex;
	flex-wrap: wrap;
	column-gap: 5px;
}
.haravan-product-reviews-badge p {
	margin-bottom: 2px;
}

/** Product Gift **/
.label_product.product_gift_label {
  position: absolute;
	background: #eee;
	left: auto;
	right: 10px;
  text-align: center;
}

@media (max-width:991px) {
  .label_product.product_gift_label {
    display: block;
    width: 35px;
    height: 35px;
    line-height: 35px;
    padding: 0;
  }

}

.main-cart-page .label_product.product_gift_label {
  width: 24px;
  height: 24px;
  top: 0;
  right: 0;
}

@media (max-width:991px) {
  .main-cart-page .label_product.product_gift_label {
    width: 20px;
    height: 20px;
  }

}

.label_product.product_gift_label img {
	display: inline-block;
	max-width: 20px;
}

@media (max-width:991px) {
  .label_product.product_gift_label img {
    max-width: 18px;
  }
}

.search-main .searchform .search-bar.js-not-smartsearch .input-group-field{
	padding-right: 70px !important;
}
@media(max-width: 991px){
	.search-main .searchform .search-bar.js-not-smartsearch .input-group-field{
		padding-right: 50px !important;
	}
}

/** Wishlist **/
.wish-list .product-col {
	flex: 0 0 20%;
	max-width: 20%;
}
.product-info.has-wishlist {
	position: relative;
	padding-right: 30px;
}
.btn-wishlist {
	appearance: none;
	position: relative;
	border: 0;
	background-color: transparent;
}
.product-info.has-wishlist .btn-wishlist {
	position: absolute;
	right: 0;
	top: 10px;
	z-index: 9;
}
.btn-wishlist i:first-child {
	display: none;
}
.btn-wishlist.js-inWishlist{
	color: #d84144;
}
.btn-wishlist.js-inWishlist i:first-child {
	display: inline;
}
.btn-wishlist.js-inWishlist i:nth-child(2) {
	display: none;
}
.btn-wishlist .wishlist-tooltip span:first-child {
	display: none;
}
.btn-wishlist.js-inWishlist .wishlist-tooltip span:first-child {
	display: inline;
}
.btn-wishlist.js-inWishlist .wishlist-tooltip span:last-child {
	display: none;
}
.wishlist-tooltip {
	opacity: 0; 
	visibility: hidden;
	position: absolute;
	bottom: 100%;
	background: #333;
	padding: 5px 8px;
	border-radius: 5px;
	color: #fff;
	font-size: 12px;
	left: 50%;
	transform: translateX(-50%);
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	display: block;
	width: auto;
	min-width: max-content;
}
.wishlist-tooltip:before {
background: transparent;
    content: "";
    position: absolute;
    height: 8px;
    left: 0;
    top: 100%;
    width: 100%;
}
.wishlist-tooltip:after {
	background: #333333;
    content: "";
    height: 10px;
    position: absolute;
    transform: rotate(45deg);
    width: 10px;
    left: calc(50% - 5px);
    bottom: -5px;
}
.btn-wishlist:hover .wishlist-tooltip {
opacity: 1;
    visibility: visible;
    bottom: calc(100% + 8px);
}
.btn-wishlist-detail {
	font-size: 22px;
}
.wishlist-link {
	position: relative;
}
.wishlist-link span {
	position: absolute;
	display: inline-block;
	background: var(--primary-color);
	border-radius: 999px;
	width: 20px;
	height: 20px;
	line-height: 20px;
	color: #fff;
	font-size: 12px;
	top: -5px;
	right: 0;
}
/** End Wishlist **/

.popcart {
	position: fixed;
	top: 0 !important;
	left: 0;
	z-index: -1;
	opacity: 0;
	visibility: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
}
.ega-sm-wrapper {
	width: 650px !important;
	right: 305px;
}
@media (max-width: 991px) {
	.ega-sm-wrapper {
		width: 100% !important;
		right: auto;
	}
}

@media (min-width: 1024px) and (max-width: 1199px) {
	.btn.button_subscribe.subscribe{
		padding: 5px 12px;
	}
}


@media(min-width: 768px) and (max-width: 1199px){
	#search-result .blogwp .content_blog .art-info {
		flex-wrap: wrap;
	}
}

#mobile-menu .mobile-menu-body .menu-item__link > span{
	white-space: initial;
}


.break-word{

    word-break: break-word;

}

.line-clamp-2 {
	overflow: hidden;
display: -webkit-box!important;
-webkit-box-orient: vertical;
-webkit-line-clamp: 2; 
}

.ega-sm-item-title{
	    word-break: break-word;
}
.ega-sm-item img{
	max-height: 70px;
	    margin: auto;
    display: block;
}
.tw-flex-\[0_0_70px\]{
	height:70px
}
@media (max-width: 991px) {
	.ega-sm-wrapper {
		width: 100% !important;
		right: auto;
	}
}


.blogwp:hover h3 a.link{
	color: var(--link-hover-color)!important
}

.coll-sortby select:focus-visible{
	outline: none;
}

:focus-visible {
	outline: transparent
}

.slick-track{
	margin: 0
}

@media(max-width: 320px){
	.header-box-live{
		display: none
	}
}
.crbtn__content{
	gap:4px
}

/* ============================================================
   VIETTA HOMEPAGE — Custom sections CSS
   ============================================================ */

/* ----- Slider Overlay ----- */
.section_slider .items { position: relative; }

.slider-overlay {
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  display: flex;
  align-items: center;
  padding: 0 40px;
  z-index: 10;
}
.slider-overlay--left  { justify-content: flex-start; text-align: left; }
.slider-overlay--center{ justify-content: center;     text-align: center; }
.slider-overlay--right { justify-content: flex-end;   text-align: right; }

.slider-overlay__inner {
  max-width: 560px;
  background: rgba(0,0,0,0.32);
  border-radius: 8px;
  padding: 28px 32px;
}
.slider-overlay__title {
  font-size: 2rem;
  font-weight: 700;
  color: #fff;
  margin-bottom: 10px;
  line-height: 1.25;
}
.slider-overlay__subtitle {
  font-size: 1rem;
  color: rgba(255,255,255,0.88);
  margin-bottom: 20px;
}
.slider-overlay__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
.slider-overlay__btn {
  padding: 10px 24px;
  border-radius: 4px;
  font-weight: 600;
  font-size: 0.9rem;
  text-decoration: none;
  transition: opacity 0.2s;
}
.slider-overlay__btn--primary {
  background: var(--primary-color, #fe9e01);
  color: #fff;
  border: 2px solid var(--primary-color, #fe9e01);
}
.slider-overlay__btn--secondary {
  background: transparent;
  color: #fff;
  border: 2px solid #fff;
}
.slider-overlay__btn:hover { opacity: 0.85; color: #fff; }

@media (max-width: 767px) {
  .slider-overlay { padding: 0 16px; }
  .slider-overlay__inner { padding: 16px 18px; }
  .slider-overlay__title { font-size: 1.2rem; }
  .slider-overlay__subtitle { font-size: 0.85rem; margin-bottom: 12px; }
  .slider-overlay__btn { padding: 8px 16px; font-size: 0.8rem; }
}

/* ----- User Segments ----- */
.section_user_segments { padding: 48px 0; }

.user-segments-row { gap: 0; }

.user-segment-card {
  border-radius: 8px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 2px 16px rgba(0,0,0,0.08);
  transition: box-shadow 0.2s, transform 0.2s;
  height: 100%;
  /* VIETTA: flex column để nút CTA luôn dính đáy, không lệch hàng giữa 3 card khi mô tả dài ngắn khác nhau */
  display: flex;
  flex-direction: column;
}
.user-segment-card:hover {
  box-shadow: 0 6px 28px rgba(0,0,0,0.14);
  transform: translateY(-3px);
}
.user-segment-card__img-wrap img {
  width: 100%;
  height: 220px;
  object-fit: cover;
  display: block;
}
.user-segment-card__body {
  padding: 20px 22px 24px;
  /* VIETTA: flex column, chiếm hết phần còn lại của card để đẩy nút xuống đáy */
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
}
.user-segment-card__heading {
  font-size: 1.15rem;
  font-weight: 700;
  margin-bottom: 8px;
  color: var(--text-color, #282828);
}
.user-segment-card__desc {
  font-size: 0.9rem;
  color: var(--text-secondary-color, #666);
  margin-bottom: 16px;
  line-height: 1.5;
}
.user-segment-card__cta {
  display: inline-block;
  background: var(--primary-color, #fe9e01);
  color: #fff;
  padding: 8px 22px;
  border-radius: 4px;
  font-weight: 600;
  font-size: 0.88rem;
  text-decoration: none;
  transition: opacity 0.2s;
  /* VIETTA: dính đáy .user-segment-card__body (flex column), không co giãn theo chiều ngang */
  margin-top: auto;
  align-self: flex-start;
}
.user-segment-card__cta:hover { opacity: 0.85; color: #fff; }

@media (max-width: 767px) {
  .user-segment-col { margin-bottom: 20px; }
}

/* ----- Product Showcase ----- */
.section_product_showcase { padding: 48px 0; background: #f8f8f8; }

.heading-bar__subtitle {
  font-size: 0.95rem;
  color: var(--text-secondary-color, #666);
  margin-top: -8px;
  margin-bottom: 24px;
}

.product-showcase-row { gap: 0; }

.product-showcase-card {
  background: #fff;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 2px 16px rgba(0,0,0,0.07);
  transition: box-shadow 0.2s, transform 0.2s;
  height: 100%;
  position: relative;
}
.product-showcase-card:hover {
  box-shadow: 0 6px 28px rgba(0,0,0,0.13);
  transform: translateY(-3px);
}
.product-showcase-card__label {
  position: absolute;
  top: 12px; left: 12px;
  background: var(--primary-color, #fe9e01);
  color: #fff;
  font-size: 0.75rem;
  font-weight: 700;
  padding: 3px 10px;
  border-radius: 20px;
  letter-spacing: 0.5px;
  z-index: 2;
}
.product-showcase-card__img-wrap img {
  width: 100%;
  height: 260px;
  object-fit: cover;
  display: block;
}
.product-showcase-card__img-placeholder {
  width: 100%;
  height: 260px;
  background: #eee;
}
.product-showcase-card__body {
  padding: 18px 20px 22px;
}
.product-showcase-card__name {
  font-size: 1.05rem;
  font-weight: 700;
  margin-bottom: 6px;
  color: var(--text-color, #282828);
}
.product-showcase-card__desc {
  font-size: 0.88rem;
  color: var(--text-secondary-color, #666);
  margin-bottom: 10px;
  line-height: 1.5;
}
.product-showcase-card__price {
  margin-bottom: 14px;
}
.product-showcase-card__price .price {
  font-size: 1.1rem;
  font-weight: 700;
  color: var(--price-color, #fe9e01);
}
.product-showcase-card__price .price-compare {
  font-size: 0.85rem;
  color: #aaa;
  text-decoration: line-through;
  margin-left: 8px;
}
.product-showcase-card__actions {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.product-showcase-card__btn {
  flex: 1;
  text-align: center;
  padding: 9px 12px;
  border-radius: 4px;
  font-weight: 600;
  font-size: 0.85rem;
  text-decoration: none;
  transition: opacity 0.2s;
  min-width: 100px;
}
.product-showcase-card__btn--primary {
  background: var(--primary-color, #fe9e01);
  color: #fff;
  border: 2px solid var(--primary-color, #fe9e01);
}
.product-showcase-card__btn--secondary {
  background: transparent;
  color: var(--primary-color, #fe9e01);
  border: 2px solid var(--primary-color, #fe9e01);
}
.product-showcase-card__btn:hover { opacity: 0.85; }

@media (max-width: 767px) {
  .product-showcase-col { margin-bottom: 20px; }
}

/* ----- Specs / Benefits ----- */
.section_specs { padding: 60px 0; }

.specs-title {
  font-size: 1.6rem;
  font-weight: 700;
  margin-bottom: 10px;
  color: var(--text-color, #282828);
}
.specs-subtitle {
  font-size: 0.95rem;
  color: var(--text-secondary-color, #666);
  margin-bottom: 28px;
  line-height: 1.6;
}
.specs-list { margin-bottom: 24px; }
.specs-list__item {
  padding: 12px 0;
  border-bottom: 1px solid var(--border-color, #f1f1f1);
}
.specs-list__item:last-child { border-bottom: none; }
.specs-list__icon {
  font-size: 1.3rem;
  color: var(--primary-color, #fe9e01);
  width: 36px;
  flex-shrink: 0;
  margin-top: 2px;
}
.specs-list__text strong {
  display: block;
  font-size: 0.95rem;
  font-weight: 600;
  color: var(--text-color, #282828);
}
.specs-list__text span {
  font-size: 0.85rem;
}
.specs-img-col img {
  border-radius: 8px;
  box-shadow: 0 4px 24px rgba(0,0,0,0.10);
}

@media (max-width: 767px) {
  .specs-img-col { margin-top: 28px; }
  .specs-title { font-size: 1.3rem; }
}
/* =========================================================================
   VIETTA — Header hotline + CTA "Đăng Ký Đi Thử"
   ========================================================================== */
.header-contact {
  gap: 10px;
  margin-right: 14px;
}
/* VIETTA: hotline đổi từ layout 2 dòng (label+số) sang pill viền 1 dòng
   "icon điện thoại + số", theo mẫu vietta.pages.dev. hotline_label vẫn giữ
   trong markup dạng title/aria-label để không mất field Admin. */
.header-hotline {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  height: 36px;
  padding: 0 14px !important;
  border: 1px solid var(--primary-color, #0aa14b);
  border-radius: 6px;
  text-decoration: none;
  color: var(--primary-color, #0aa14b);
  font-size: 0.92rem;
  font-weight: 600;
  white-space: nowrap;
  transition: background-color 0.18s ease;
}
.header-hotline:hover {
  color: var(--primary-color, #0aa14b);
  text-decoration: none;
  background-color: rgba(0,0,0,0.04);
}
.header-hotline i, .header-hotline svg {
  font-size: 0.95rem;
  flex-shrink: 0;
}
.header-contact .header-cta-btn,
.header-contact-mobile .header-cta-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 18px !important;
  border-radius: 6px;
  background: var(--primary-color, #0aa14b);
  color: #fff;
  font-weight: 600;
  font-size: 0.9rem;
  text-decoration: none;
  white-space: nowrap;
  transition: filter 0.18s ease, transform 0.18s ease;
  box-shadow: 0 4px 14px rgba(10,161,75,0.28);
}
.header-contact .header-cta-btn:hover,
.header-contact-mobile .header-cta-btn:hover {
  color: #fff;
  text-decoration: none;
  filter: brightness(1.08);
  transform: translateY(-1px);
}

/* VIETTA: cụm mobile (< lg) trong .header-right — icon gọi điện + CTA rút gọn, đặt
   cạnh hamburger. Xem snippets/header.bwt (.header-contact-mobile). */
.header-contact-mobile {
  gap: 8px;
  margin-right: 10px;
}
.header-call-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border: 1px solid var(--primary-color, #0aa14b);
  border-radius: 50%;
  color: var(--primary-color, #0aa14b);
  font-size: 0.85rem;
  flex-shrink: 0;
}
.header-contact-mobile .header-cta-btn--mobile {
  padding: 7px 12px !important;
  font-size: 0.78rem;
  box-shadow: none;
}
/* VIETTA: ẩn hẳn nút CTA rút gọn ở màn quá nhỏ (chỉ còn icon gọi điện + hamburger),
   theo đúng mô tả "ẩn ở màn quá nhỏ" trong cấu trúc mẫu vietta.pages.dev */
@media (max-width: 374px) {
  .header-contact-mobile .header-cta-btn--mobile {
    display: none;
  }
}

/* ==========================================================================
   VIETTA — Section "Đăng ký đi thử" (test-ride form)
   ========================================================================== */
.section_ride_register {
  background: #f5f7f6;
  padding: 56px 0;
  /* Header .header_menu.active là sticky (z-index 1000) → khi CTA header nhảy
     tới neo #form-dang-ky, chừa khoảng trống để tiêu đề form không bị che */
  scroll-margin-top: 90px;
}
.ride-register__head { margin-bottom: 32px; }
.ride-register__subtitle {
  font-size: 0.98rem;
  color: var(--text-secondary-color, #666);
  max-width: 640px;
  margin: 12px auto 0;
  line-height: 1.6;
}
.ride-register__form-wrap {
  max-width: 760px;
  margin: 0 auto;
  background: #fff;
  border-radius: 12px;
  padding: 32px;
  box-shadow: 0 8px 30px rgba(0,0,0,0.08);
}
.ride-form__group { margin-bottom: 18px; }
.ride-form__group label {
  display: block;
  font-size: 0.88rem;
  font-weight: 600;
  color: var(--text-color, #282828);
  margin-bottom: 6px;
}
.ride-form__group .req { color: #e02b2b; }
.ride-form__control {
  width: 100%;
  padding: 11px 14px;
  border: 1px solid #d9dee0;
  border-radius: 6px;
  font-size: 0.95rem;
  color: var(--text-color, #282828);
  background: #fff;
  transition: border-color 0.18s ease, box-shadow 0.18s ease;
}
.ride-form__control:focus {
  outline: none;
  border-color: var(--primary-color, #0aa14b);
  box-shadow: 0 0 0 3px rgba(10,161,75,0.12);
}
.ride-form__select { position: relative; }
.ride-form__select::after {
  content: "";
  position: absolute;
  right: 14px;
  top: 50%;
  width: 8px;
  height: 8px;
  border-right: 2px solid #888;
  border-bottom: 2px solid #888;
  transform: translateY(-70%) rotate(45deg);
  pointer-events: none;
}
.ride-form__select .ride-form__control {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  padding-right: 34px;
}
.ride-form__consent { margin: 6px 0 20px; }
.ride-form__consent-label {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  font-size: 0.88rem;
  color: var(--text-secondary-color, #666);
  cursor: pointer;
  margin: 0;
}
.ride-form__consent-label input { margin-top: 3px; flex-shrink: 0; }
.ride-form__error {
  list-style: none;
  padding: 0;
  margin: 0 0 14px;
  color: #e02b2b;
  font-size: 0.85rem;
}
.ride-form__error:empty { margin: 0; }
.ride-form__submit-wrap { margin-bottom: 0; text-align: center; }
.ride-form__submit {
  display: inline-block;
  min-width: 260px;
  padding: 13px 32px;
  border: none;
  border-radius: 6px;
  background: var(--primary-color, #0aa14b);
  color: #fff;
  font-weight: 700;
  font-size: 1rem;
  letter-spacing: 0.3px;
  cursor: pointer;
  transition: filter 0.18s ease, transform 0.18s ease;
  box-shadow: 0 6px 18px rgba(10,161,75,0.28);
}
.ride-form__submit:hover {
  filter: brightness(1.08);
  transform: translateY(-1px);
  color: #fff;
}
.ride-register__success {
  background: rgba(10,161,75,0.10);
  border: 1px solid var(--primary-color, #0aa14b);
  color: var(--primary-color, #0aa14b);
  padding: 12px 16px;
  border-radius: 6px;
  margin-bottom: 18px;
  font-weight: 600;
}
@media (max-width: 767px) {
  .section_ride_register { padding: 40px 0; }
  .ride-register__form-wrap { padding: 22px 18px; }
  .ride-form__submit { width: 100%; min-width: 0; }
}

/* ==========================================================================
   VIETTA — Section "Hệ thống Showroom"
   ========================================================================== */
.section_showroom {
  background: #fff;
  padding: 56px 0;
}
.section_showroom .heading-bar { margin-bottom: 32px; }
.showroom-img {
  border-radius: 12px;
  box-shadow: 0 8px 30px rgba(0,0,0,0.10);
  object-fit: cover;
}
.showroom-info { padding-left: 8px; }
.showroom-info__name {
  font-size: 1.4rem;
  font-weight: 700;
  color: var(--text-color, #282828);
  margin-bottom: 18px;
}
.showroom-info__line {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  font-size: 0.98rem;
  color: var(--text-color, #282828);
  margin-bottom: 14px;
  line-height: 1.5;
}
.showroom-info__line i {
  color: var(--primary-color, #0aa14b);
  font-size: 1.05rem;
  width: 20px;
  text-align: center;
  margin-top: 3px;
  flex-shrink: 0;
}
.showroom-info__line a {
  color: var(--text-color, #282828);
  text-decoration: none;
}
.showroom-info__line a:hover { color: var(--primary-color, #0aa14b); }
.showroom-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 24px;
}
.showroom-actions__btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 11px 24px;
  border-radius: 6px;
  font-weight: 600;
  font-size: 0.92rem;
  text-decoration: none;
  transition: filter 0.18s ease, background 0.18s ease, color 0.18s ease;
}
.showroom-actions__btn--primary {
  background: var(--primary-color, #0aa14b);
  color: #fff;
  border: 2px solid var(--primary-color, #0aa14b);
}
.showroom-actions__btn--primary:hover { filter: brightness(1.08); color: #fff; }
.showroom-actions__btn--outline {
  background: transparent;
  color: var(--primary-color, #0aa14b);
  border: 2px solid var(--primary-color, #0aa14b);
}
.showroom-actions__btn--outline:hover {
  background: var(--primary-color, #0aa14b);
  color: #fff;
}
@media (max-width: 767px) {
  .section_showroom { padding: 40px 0; }
  .showroom-info { padding-left: 0; margin-top: 24px; }
  .showroom-actions__btn { flex: 1 1 auto; justify-content: center; }
}

/* ==========================================================================
   VIETTA — nhịp nền xen kẽ + spacing đồng nhất cho layout Vietta
   (scoped .page-homepage — từ nay class này được gắn trên Cả trang chủ thật
   `templates/index.bwt` lẫn `page.homepage.bwt`, theo phương án Option C)
   ========================================================================= */
.page-homepage > .section { padding-top: 52px; padding-bottom: 52px; }
.page-homepage > .section-section_slider { padding: 0; }
/* USP bar là thanh mỏng bám ngay dưới slider → bỏ nhịp 52px của wrapper,
   chiều cao do .usp-bar tự quản (padding 16px + 2 đường viền) */
.page-homepage > .section-section_home_policies { padding-top: 0; padding-bottom: 0; }

/* Nền xen kẽ: trắng / xám nhạt
   FIX 2026-08-16c: sau khi bỏ section video/TikTok (không còn nằm giữa specs và
   customer_review nữa), nhịp nền bị 2 khối #f5f7f6 liền nhau. Đảo màu các khối
   sau specs để trở về xen kẽ đều #fff → #f5f7f6 → #fff → #f5f7f6 → #fff → #f5f7f6. */
.page-homepage .section-section_home_policies { background: #fff; }
.page-homepage .section-section_user_segments { background: #f5f7f6; }
.page-homepage .section-section_product_showcase { background: #fff; }
.page-homepage .section-section_specs { background: #f5f7f6; }
.page-homepage .section-section_customer_review { background: #fff; }
.page-homepage .section-section_ride_register { background: #f5f7f6; }
.page-homepage .section-section_blog { background: #fff; }
.page-homepage .section-section_showroom { background: #f5f7f6; }

/* Section con tự set nền/padding → reset để wrapper điều phối nhịp chung */
.page-homepage > .section > .section {
  padding-top: 0;
  padding-bottom: 0;
  background: transparent;
}

/* Heading section: uppercase, căn giữa, cỡ đồng nhất (khớp Vietta) */
.page-homepage .heading-bar__title {
  text-transform: uppercase;
  text-align: center;
  font-size: 1.9rem;
  font-weight: 700;
  letter-spacing: 0.3px;
}

@media (max-width: 767px) {
  .page-homepage > .section { padding-top: 36px; padding-bottom: 36px; }
  .page-homepage .heading-bar__title { font-size: 1.35rem; }
}

/* ==========================================================================
   VIETTA — Logo dạng chữ (header + footer)
   ========================================================================== */
.logo-wrapper--text {
  display: flex;
  flex-direction: column;
  line-height: 1.15;
  text-decoration: none;
}
.logo-text {
  font-size: 1.6rem;
  font-weight: 800;
  letter-spacing: 0.5px;
  color: var(--primary-color, #0aa14b);
  text-transform: uppercase;
}
.logo-tagline {
  font-size: 0.72rem;
  color: var(--text-secondary-color, #666);
  white-space: nowrap;
}
@media (max-width: 991px) {
  .logo-text { font-size: 1.3rem; }
  .logo-tagline { display: none; }
}
.footer-logo-text {
  display: inline-block;
  font-size: 1.5rem;
  font-weight: 800;
  letter-spacing: 0.5px;
  color: #fff;
  text-transform: uppercase;
  text-decoration: none;
}
.footer-logo-text:hover { color: #fff; text-decoration: none; }

/* ==========================================================================
   VIETTA — USP bar (home policies) — thanh mỏng, chia cột, icon line
   (thay khối .policies/.policies-item cũ: icon PNG bọc tròn nền đỏ đặc →
   nay là thanh ngang chia cột bằng đường kẻ dọc, icon line-art không nền)
   Số cột tự co theo số mục Admin bật (policies_use_1..5) — không hardcode.
   ========================================================================== */
.usp-bar {
  background: #fff;
  border-top: 1px solid var(--border-color, #f1f1f1);
  border-bottom: 1px solid var(--border-color, #f1f1f1);
  padding: 16px 0;
}
.usp-bar__list {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  margin: 0;
  padding: 0;
}
.usp-bar__item {
  flex: 1 1 0;
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 8px 20px;
  border-left: 1px solid var(--border-color, #f1f1f1);
}
.usp-bar__item:first-child { border-left: 0; padding-left: 0; }
.usp-bar__item:last-child { padding-right: 0; }
.usp-bar__text { min-width: 0; display: flex; flex-direction: column; }
.usp-bar__title {
  font-size: 14px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0;
  color: var(--text-color, #282828);
  line-height: 20px;
}
.usp-bar__desc {
  font-size: 13px;
  color: var(--text-secondary-color, #666);
  line-height: 18px;
  margin-top: 2px;
}
@media (max-width: 991px) {
  .usp-bar__list { flex-wrap: wrap; }
  .usp-bar__item {
    flex: 1 1 50%;
    border-left: 0;
    border-top: 1px solid var(--border-color, #f1f1f1);
    padding: 12px 8px;
  }
  .usp-bar__item:first-child { padding-left: 8px; }
  .usp-bar__item:last-child { padding-right: 8px; }
}
@media (max-width: 575px) {
  .usp-bar__item { flex: 1 1 100%; }
}

/* ==========================================================================
   VIETTA — "Vì sao chọn Vietta?" — lưới 6 cột icon
   ========================================================================== */
.section_specs--grid { padding: 56px 0; }
.specs-grid-row { justify-content: center; }
.specs-grid-col { margin-bottom: 28px; }
.specs-grid-item { padding: 0 8px; }
.specs-grid-item__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 64px;
  height: 64px;
  border-radius: 50%;
  background: rgba(220,20,60,0.08);
  color: var(--primary-color, #0aa14b);
  font-size: 1.7rem;
  margin-bottom: 14px;
}
.specs-grid-item__title {
  font-size: 0.95rem;
  font-weight: 700;
  color: var(--text-color, #282828);
  margin-bottom: 6px;
}
.specs-grid-item__desc {
  font-size: 0.82rem;
  color: var(--text-secondary-color, #666);
  line-height: 1.5;
}
@media (max-width: 767px) {
  .section_specs--grid { padding: 36px 0; }
  .specs-grid-item__icon { width: 52px; height: 52px; font-size: 1.4rem; margin-bottom: 10px; }
}

/* ==========================================================================
   VIETTA — "Khách hàng nói gì về Vietta" — lưới tĩnh 4 cột
   ========================================================================== */
.section_testimonials { padding: 56px 0; }
.testimonial-grid-row { justify-content: center; }
.testimonial-col { margin-bottom: 24px; }
.testimonial-card {
  height: 100%;
  background: #fff;
  border-radius: 12px;
  padding: 22px;
  box-shadow: 0 4px 20px rgba(0,0,0,0.08);
}
.testimonial-card__head {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 12px;
}
.testimonial-card__avatar {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
}
.testimonial-card__name {
  font-size: 0.92rem;
  font-weight: 700;
  color: var(--text-color, #282828);
}
.testimonial-card__position {
  font-size: 0.78rem;
  color: var(--text-secondary-color, #666);
}
.testimonial-card__stars {
  color: #ffb400;
  font-size: 0.85rem;
  margin-bottom: 10px;
}
.testimonial-card__content {
  font-size: 0.88rem;
  color: var(--text-color, #282828);
  line-height: 1.6;
  margin: 0;
}
@media (max-width: 767px) {
  .section_testimonials { padding: 36px 0; }
}

/* ==========================================================================
   VIETTA — Video TikTok: bo góc video item
   ========================================================================== */
.section_tiktok_slide .tiktok_slide_item,
.section_tiktok_slide .tiktok_slide_item img,
.section_tiktok_slide .tiktok_slide_item video {
  border-radius: 12px;
  overflow: hidden;
}

/* ==========================================================================
   VIETTA — Showroom: cột bản đồ (cột thứ 3)
   ========================================================================== */
.showroom-map-col { margin-top: 24px; }
.showroom-map {
  width: 100%;
  height: 280px;
  border: 0;
  border-radius: 12px;
  box-shadow: 0 8px 30px rgba(0,0,0,0.10);
}
@media (min-width: 768px) {
  .showroom-map-col { margin-top: 0; }
  .showroom-map { height: 100%; min-height: 260px; }
}

/* ==========================================================================
   VIETTA — Blog: thẻ demo khi Admin chưa có bài viết
   ========================================================================== */
.blog-list-media-item--demo { height: 100%; }
.blog-list-media-item--demo .blog-list-media-item__img-wrap {
  border-radius: 10px;
  overflow: hidden;
  margin-bottom: 12px;
}
.blog-list-media-item--demo .blog-list-media-item__img-wrap img {
  transition: transform 0.3s ease;
}
.blog-list-media-item--demo:hover .blog-list-media-item__img-wrap img {
  transform: scale(1.05);
}.blog-list-media-item--demo .blog-list-media-item__title {
  font-size: 0.92rem;
  font-weight: 600;
  line-height: 1.5;
  margin: 0;
}
.blog-list-media-item--demo .blog-list-media-item__title a {
  color: var(--text-color, #282828);
  text-decoration: none;
}
.blog-list-media-item--demo .blog-list-media-item__title a:hover {
  color: var(--primary-color, #0aa14b);
}

/* ==========================================================================
   VIETTA — Footer 4 cột + thanh dưới cùng (bottom bar)
   ========================================================================== */
.footer-vietta { background: var(--footer-bg, #1c1c1c); color: var(--footer-color, #cfcfcf); }
.footer-vietta .footer-cols-row { padding: 48px 0 24px; }
.footer-vietta .footer-col { margin-bottom: 24px; }
.footer-vietta .footer-title { color: #fff; font-weight: 700; margin-bottom: 16px; }
.footer-vietta .single-contact { display: flex; align-items: flex-start; gap: 10px; margin-bottom: 10px; }
.footer-vietta .single-contact i { color: var(--primary-color, #0aa14b); margin-top: 4px; flex-shrink: 0; }
.footer-vietta .single-contact .content, .footer-vietta .single-contact a { color: #cfcfcf; }
.footer-vietta .single-contact a:hover { color: #fff; }
.footer-vietta .list-menu { list-style: none; padding: 0; margin: 0; }
.footer-vietta .list-menu .li_menu { margin-bottom: 10px; }
.footer-vietta .list-menu a { color: #cfcfcf; text-decoration: none; }
.footer-vietta .list-menu a:hover { color: #fff; }
.footer-vietta .footer-col--connect .follow_option { gap: 10px; }
.footer-bottom-bar {
  border-top: 1px solid rgba(255,255,255,0.12);
  padding: 18px 0;
}
.footer-bottom-bar .fot_copyright { font-size: 0.82rem; color: #a8a8a8; }
.footer-bottom-bar .fot_copyright a { color: #cfcfcf; }
.footer-bottom-bar__bct img { max-height: 42px; }
@media (max-width: 767px) {
  .footer-vietta .footer-cols-row { padding: 32px 0 12px; }
  .footer-bottom-bar .container { justify-content: center !important; text-align: center; }
}

/* ==========================================================================
   VIETTA — Thanh hành động cố định cho mobile (Gọi / Zalo / Chỉ đường)
   ========================================================================== */
.mobile-action-bar {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 999;
  display: flex;
  background: var(--primary-color, #0aa14b);
  box-shadow: 0 -4px 16px rgba(0,0,0,0.15);
}
.mobile-action-bar__item {
  flex: 1 1 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 3px;
  padding: 8px 4px;
  color: #fff;
  text-decoration: none;
  font-size: 0.72rem;
  border-right: 1px solid rgba(255,255,255,0.18);
}
.mobile-action-bar__item:last-child { border-right: none; }
.mobile-action-bar__item:hover { color: #fff; text-decoration: none; opacity: 0.9; }
.mobile-action-bar__icon { font-size: 1.05rem; }
body { padding-bottom: 0; }
@media (max-width: 991px) {
  body:has(.mobile-action-bar) { padding-bottom: 54px; }
}