/* Single product — layout from giaodien/index.html */

body.single-product #content.site-content>.container {
	width: 100% !important;
	max-width: 100% !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

body.single-product #content.site-content>.container>.row {
	margin-left: 0 !important;
	margin-right: 0 !important;
}

body.single-product #primary.page-no-sidebar {
	-webkit-box-flex: 0;
	-webkit-flex: 0 0 100%;
	-ms-flex: 0 0 100%;
	flex: 0 0 100%;
	max-width: 100%;
	padding-left: 0 !important;
	padding-right: 0 !important;
	margin-bottom: 0;
}

body.single-product .entry-content {
	margin: 0;
	padding: 0;
}

body.single-product {
	overflow-x: clip;
}

.hl-product-page {
	--hl-product-color: #0b0284;
	--hl-product-color-dark: #047ed5;
	padding-bottom: 40px;
	font-family: Alexandria, Arial, sans-serif;
	font-size: 14px;
	line-height: 1.5;
	color: #000;
	background-color: #fff;
}

.hl-product-page .container {
	position: relative;
	margin-left: auto;
	margin-right: auto;
	padding-right: 15px;
	padding-left: 15px;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

@media (min-width: 576px) {
	.hl-product-page .container {
		width: 540px;
		max-width: 540px;
	}
}

@media (min-width: 768px) {
	.hl-product-page .container {
		width: 720px;
		max-width: 720px;
	}
}

@media (min-width: 992px) {
	.hl-product-page .container {
		width: 960px;
		max-width: 960px;
	}
}

@media (min-width: 1200px) {
	.hl-product-page .container {
		width: 1170px;
		max-width: 1170px;
	}
}

.hl-product-page .row {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-right: -15px;
	margin-left: -15px;
}

.hl-product-page .col-12,
.hl-product-page .col-md-6 {
	position: relative;
	width: 100%;
	min-height: 1px;
	padding-right: 15px;
	padding-left: 15px;
	box-sizing: border-box;
}

.hl-product-page .col-12 {
	-webkit-box-flex: 0;
	-webkit-flex: 0 0 100%;
	-ms-flex: 0 0 100%;
	flex: 0 0 100%;
	max-width: 100%;
}

.product-col-right .section_policy .item {
    width: 100% !important;
    max-width: 100%;
    flex: auto;
    margin-bottom: 10px;
    border-radius: 10px 10px 10px 10px;
    box-shadow: 8px 8px 20px 0 rgb(0 0 0 / 5%);
    padding: 15px 20px;
}

.section_policy .policy-item {
    text-align: center;
}

.section_policy .policy-item .media {
    min-height: 34px;
    margin: 0;
    float: left;
    width: 60px;
}

.section_policy .policy-item img, .section_policy .policy-item i {
    margin: 0 auto;
}

.section_policy .policy-item .info {
    text-align: left;
    padding-left: 65px;
}

.section_policy .policy-item p {
    font-size: 14px;
    color: #898989;
    margin: 0;
}

@media (min-width: 768px) {
	.hl-product-page .col-md-6 {
		-webkit-box-flex: 0;
		-webkit-flex: 0 0 50%;
		-ms-flex: 0 0 50%;
		flex: 0 0 50%;
		max-width: 50%;
	}

	.hl-product-page .hl-product-summary {
		margin-top: 0;
	}
}

@media (min-width: 992px) {
	.hl-product-page .col-lg-4 {
		-ms-flex: 0 0 33.333333%;
		flex: 0 0 33.333333%;
		max-width: 33.333333%;
	}

	.hl-product-page .col-lg-3 {
		flex: 0 0 25%;
		max-width: 25%;
	}

	.hl-product-page .col-lg-5 {
		-ms-flex: 0 0 41.666667%;
		flex: 0 0 41.666667%;
		max-width: 41.666667%;
	}
}


.hl-product-page .text-center {
	text-align: center;
}

.hl-product-page .text-uppercase {
	text-transform: uppercase;
}

.hl-product-page .text-danger {
	color: #dc3545;
}

.hl-product-page .mb-4 {
	margin-bottom: 1.5rem;
}

.hl-product-page .my-4 {
	margin-top: 1.5rem;
	margin-bottom: 1.5rem;
}

.hl-product-page .border-bottom {
	border-bottom: 1px solid #dee2e6;
	padding-bottom: 0.5rem;
}

/* Breadcrumb — light bar like mockup */
.hl-product-page .wrapper-breadcrums {
	background-color: #e6f4ff;
	padding: 10px 0;
	color: #000;
}

.hl-product-page .wrapper-breadcrums a {
	color: #000;
	text-decoration: none;
}

.hl-product-page .wrapper-breadcrums a:hover {
	color: var(--hl-product-color);
}

.hl-product-page .breadcrumb {
	background-color: transparent;
	margin-bottom: 0;
	padding: 0;
}

.hl-product-page .breadcrumb ul,
.entry-content .hl-product-page .breadcrumb ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

.hl-product-page .breadcrumb ul>li {
	text-transform: capitalize;
	display: inline-block;
	margin: 0;
	padding: 0;
	list-style: none;
	font-size: 14px;
}

.hl-product-page .breadcrumb .delimiter {
	margin: 0 8px;
	opacity: 0.7;
}

.hl-product-page .breadcrumb .current-item {
	font-weight: 600;
}

.hl-product-main {
	margin-top: 1.5rem;
	margin-bottom: 2rem;
}

.hl-product-summary {
	margin-top: 1.5rem;
}

.hl-product-page h1.h3 {
	font-size: 1.5rem;
	font-weight: 600;
	line-height: 1.3;
	margin: 0 0 12px;
	color: #111;
	font-family: Alexandria, Arial, sans-serif;
}

.hl-product-page .pr-des {
	margin-bottom: 14px;
	color: #333;
}

.hl-product-page .pr-des p {
	margin: 0 0 10px;
}

.hl-product-price {
	font-size: 20px;
	font-weight: 600;
	color: var(--hl-product-color);
	margin: 0 0 14px;
}

.hl-product-page .btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 10px 16px;
	border: 1px solid transparent;
	border-radius: 4px;
	font-size: 14px;
	line-height: 1.4;
	text-decoration: none;
	cursor: pointer;
	box-sizing: border-box;
}

.hl-product-page .rounded-2 {
	border-radius: 6px;
}

.hl-product-page .btn-primary {
	color: #fff;
	background-color: var(--hl-product-color);
	border-color: var(--hl-product-color);
}

.hl-product-page .btn-primary:hover {
	color: #fff;
	background-color: var(--hl-product-color-dark);
	border-color: var(--hl-product-color-dark);
}

.hl-product-page .btn-danger {
	color: #fff;
	background-color: #dc3545;
	border-color: #dc3545;
}

.hl-product-page .btn-danger:hover {
	color: #fff;
	background-color: #c82333;
	border-color: #bd2130;
}

.hl-product-page .btn-secondary {
	color: #fff;
	background-color: #6c757d;
	border-color: #6c757d;
}

.hl-product-page .btn-outline-primary {
	color: var(--hl-product-color);
	background: transparent;
	border-color: var(--hl-product-color);
}

.hl-product-page .btn-sm {
	padding: 4px 10px;
	font-size: 13px;
}

.hl-product-btn-full {
	width: 100%;
	gap: 8px;
}

.hl-product-cta {
	display: flex;
	width: 100%;
	gap: 15px;
	margin-bottom: 8px;
}

.hl-product-cta .btn {
	flex: 1;
	gap: 10px;
}

.hl-product-page .guide-size-detail {
	font-size: 15px;
	text-align: left;
	color: #1dbbb4;
	cursor: pointer;
	text-decoration: underline;
	padding: 15px 0;
}

.hl-product-consult {
	margin: 12px 0 8px;
}

.hl-product-page p.hotline,
.hl-product-page a.hotline {
	color: #dc3545;
	font-weight: 600;
}

.hl-product-page p.hotline {
	margin-bottom: 6px;
}

/* Gallery — CSS slider, does not depend on Swiper */
.hl-product-gallery img {
	max-width: 100%;
	height: auto;
	display: block;
}

.hl-product-page .product-detail-gallery-slider {
	position: relative;
	overflow: hidden;
	border-radius: 6px;
	background: #f7f7f7;
	cursor: grab;
	user-select: none;
	-webkit-user-select: none;
}

.hl-product-page .product-detail-gallery-slider.is-dragging {
	cursor: grabbing;
}

.hl-product-page .product-detail-gallery-slider .swiper-wrapper {
	display: flex;
	flex-wrap: nowrap;
	width: 100%;
	transition: transform 0.35s ease;
	will-change: transform;
}

.hl-product-page .product-detail-gallery-slider .swiper-slide {
	flex: 0 0 100%;
	width: 100% !important;
	max-width: 100%;
	display: block !important;
	box-sizing: border-box;
}

.hl-product-page .product-detail-gallery-slider .swiper-slide img,
.hl-product-gallery__placeholder img {
	width: 100%;
	aspect-ratio: 1 / 1;
	object-fit: contain;
	background: #f7f7f7;
	pointer-events: none;
}

.hl-product-page .product-detail-gallerythumb-slider {
	margin-top: 1.5rem;
	overflow: hidden;
}

.hl-product-page .product-detail-gallerythumb-slider .swiper-wrapper {
	display: flex;
	flex-wrap: nowrap;
	gap: 10px;
	width: 100%;
	max-width: 100%;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
}

.hl-product-page .product-detail-gallerythumb-slider .swiper-wrapper::-webkit-scrollbar {
	display: none;
}

.hl-product-page .product-detail-gallerythumb-slider .swiper-slide {
	width: 90px;
	flex: 0 0 90px;
	cursor: pointer;
	border: 2px solid transparent;
	border-radius: 4px;
	overflow: hidden;
	opacity: 0.75;
	box-sizing: border-box;
}

.hl-product-page .product-detail-gallerythumb-slider .swiper-slide.is-active,
.hl-product-page .product-detail-gallerythumb-slider .swiper-slide-thumb-active {
	border-color: var(--hl-product-color);
	opacity: 1;
}

.hl-product-page .product-detail-gallerythumb-slider img {
	width: 100%;
	height: 90px;
	object-fit: cover;
	display: block;
}

/* Description + TOC */
.hl-product-page .box-productfulldes {
	background-color: #f9f9f9;
	padding: 30px 0 40px;
	margin-top: 20px;
}

.hl-product-page .box-productfulldes>h2 {
	font-size: 1.5rem;
	font-weight: 600;
	margin: 0 0 1.5rem;
	color: #111;
}

.hl-product-page .toc-wrapper {
	background: #fff;
	border: 1px solid #e5e5e5;
	border-radius: 6px;
	padding: 12px 16px;
	margin-bottom: 24px;
}

.hl-product-page .toc-header {
	display: flex;
	align-items: center;
	margin-bottom: 8px;
}

.hl-product-page .hl-toc-toggle {
	background: none;
	border: 0;
	color: var(--hl-product-color);
	cursor: pointer;
	padding: 0;
}

.hl-product-page .js-toc ol {
	margin: 0;
	padding-left: 18px;
}

.hl-product-page .js-toc a {
	color: #333;
	text-decoration: none;
}

.hl-product-page .js-toc a:hover,
.hl-product-page .js-toc .is-active-link {
	color: var(--hl-product-color);
}

.hl-product-page .wrapproductfulldes img {
	max-width: 100% !important;
	height: auto !important;
}

.hl-product-page .hl-product-content {
	font-size: 15px;
	line-height: 1.7;
	color: #222;
}

.hl-product-page .hl-product-content h2,
.hl-product-page .hl-product-content h3 {
	scroll-margin-top: 90px;
	font-weight: 600;
	margin: 1.4em 0 0.6em;
}

.entry-content .hl-product-page ul,
.entry-content .hl-product-page ol {
	margin: 0 0 1em 1.25em;
	padding: 0;
	list-style: disc;
}

.entry-content .hl-product-page .breadcrumb ul,
.entry-content .hl-product-page .js-toc ol,
.entry-content .hl-product-page .variable-items-wrapper,
.entry-content .hl-product-page .hl-product-variations ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.entry-content .hl-product-page .variable-items-wrapper>li {
	list-style: none;
	margin: 0;
}

.entry-content .hl-product-page a {
	box-shadow: none;
}

.entry-content .hl-product-page h1,
.entry-content .hl-product-page h2 {
	clear: none;
}

.hl-product-page .woocommerce-notices-wrapper,
.hl-product-page .woocommerce-message,
.hl-product-page .woocommerce-info {
	margin: 10px 15px;
}

/* Related */
.hl-product-page .box-relatedproduct {
	padding: 10px 0 30px;
	background: #fff;
}

.hl-product-page .box-relatedproduct h4 {
	font-size: 1.25rem;
	font-weight: 600;
	margin: 1.5rem 0;
}

.hl-product-page .relatedproduct-swiper {
	position: relative;
	overflow: hidden;
}

.hl-product-page .relatedproduct-swiper .swiper-wrapper {
	display: flex;
	flex-wrap: nowrap;
}

.hl-product-page .relatedproduct-swiper .swiper-slide {
	box-sizing: border-box;
	height: auto;
}

.hl-product-page.hl-related-fallback .relatedproduct-swiper .swiper-wrapper {
	flex-wrap: wrap;
	margin: 0 -10px;
}

.hl-product-page.hl-related-fallback .relatedproduct-swiper .swiper-slide {
	width: 25%;
	padding: 0 10px;
}

@media (max-width: 991px) {
	.hl-product-page.hl-related-fallback .relatedproduct-swiper .swiper-slide {
		width: 33.333%;
	}
}

@media (max-width: 767px) {
	.hl-product-page.hl-related-fallback .relatedproduct-swiper .swiper-slide {
		width: 50%;
	}
}

.hl-product-page .productitem {
	margin-bottom: 24px;
}

.hl-product-page .productitem img {
	width: 100%;
	height: auto;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	display: block;
	border-radius: 8px;
	border: 1px solid transparent;
	transition: opacity 0.5s, border-color 0.5s;
}

.hl-product-page .productitem:hover img {
	opacity: 0.7;
	border-color: var(--hl-product-color);
}

.hl-product-page .productitem-detail h2 {
	line-height: 18px;
	margin: 10px 0 8px;
	font-size: 14px;
	font-weight: 400;
}

.hl-product-page .productitem-detail h2 a {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	color: var(--hl-product-color);
	text-decoration: none;
	font-size: 14px;
	line-height: 18px;
}

.hl-product-page .productitem-detail h2 a:hover {
	color: var(--hl-product-color-dark);
}

/* Modal */
.hl-product-modal[hidden] {
	display: none !important;
}

.hl-product-modal {
	position: fixed;
	inset: 0;
	z-index: 10050;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 20px;
}

.hl-product-modal__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.5);
}

.hl-product-modal__dialog {
	position: relative;
	background: #fff;
	border-radius: 6px;
	max-width: 800px;
	width: 100%;
	max-height: 90vh;
	overflow: auto;
	z-index: 1;
}

.hl-product-modal__header,
.hl-product-modal__footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 12px 16px;
	border-bottom: 1px solid #eee;
}

.hl-product-modal__footer {
	border-bottom: 0;
	border-top: 1px solid #eee;
	justify-content: flex-end;
}

.hl-product-modal__header h5 {
	margin: 0;
	font-size: 18px;
}

.hl-product-modal__close {
	background: none;
	border: 0;
	font-size: 28px;
	line-height: 1;
	cursor: pointer;
	color: #666;
}

.hl-product-modal__body {
	padding: 16px;
}

.hl-product-modal__body img {
	max-width: 100%;
	height: auto;
	display: block;
	margin: 0 auto;
}

@media (max-width: 767px) {
	.hl-product-cta {
		flex-direction: column;
	}
}

/* Variation Swatches */
.hl-product-variations {
	margin: 4px 0 18px;
}

.hl-product-variations form.cart,
.hl-product-variations form.variations_form {
	margin: 0;
}

.hl-product-variations table.variations {
	width: 100%;
	border: 0;
	margin: 0 0 12px;
	border-collapse: collapse;
}

.hl-product-variations table.variations th,
.hl-product-variations table.variations td {
	border: 0;
	background: none;
	padding: 8px 0;
	vertical-align: middle;
	text-align: left;
}

.hl-product-variations table.variations .label,
.hl-product-variations table.variations .label label {
	font-weight: 600;
	padding-right: 12px;
	color: #111;
	font-size: 14px;
}

.hl-product-variations table.variations td.value {
	width: 100%;
}

.hl-product-variations select:not(.woo-variation-raw-select) {
	min-width: 180px;
	max-width: 100%;
	height: 40px;
	border: 1px solid #d6d6d6;
	border-radius: 6px;
	padding: 0 10px;
	background: #fff;
}

.hl-product-variations .variable-items-wrapper {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.entry-content .hl-product-page .variable-items-wrapper {
	list-style: none;
	margin: 0;
	padding: 0;
}

.hl-product-variations .variable-items-wrapper .variable-item:not(.radio-variable-item) {
	width: 42px;
	min-width: 42px;
	height: 42px;
	margin: 0;
	border: 1px solid #d6d6d6;
	border-radius: 6px;
	background: #fff;
	cursor: pointer;
	box-sizing: border-box;
	box-shadow: none;
}

.hl-product-variations .variable-items-wrapper .button-variable-item {
	min-width: 42px;
	width: auto;
	padding: 0 10px;
	font-size: 13px;
	line-height: 40px;
	font-weight: 600;
	color: #222;
}

.hl-product-variations .variable-items-wrapper .variable-item.selected,
.hl-product-variations .variable-items-wrapper .variable-item:hover {
	border-color: var(--hl-product-color);
	box-shadow: 0 0 0 1px var(--hl-product-color);
}

.hl-product-variations .color-variable-item.selected,
.hl-product-variations .image-variable-item.selected {
	box-shadow: 0 0 0 2px #fff, 0 0 0 4px var(--hl-product-color);
}

.hl-product-variations .woo-variation-raw-select,
.hl-product-variations .woo-variation-raw-select+br {
	display: none !important;
}

.hl-product-variations .reset_variations {
	display: inline-block;
	margin-top: 8px;
	color: var(--hl-product-color);
	font-size: 13px;
}

.hl-product-variations .woocommerce-variation-price {
	font-size: 20px;
	font-weight: 600;
	color: var(--hl-product-color);
	margin: 0 0 12px;
}

.hl-product-variations .woocommerce-variation-availability {
	margin-bottom: 10px;
}

.hl-product-variations .variations_button,
.hl-product-variations .woocommerce-variation-add-to-cart,
.hl-product-page form.cart .variations_button,
.hl-product-page form.cart .woocommerce-variation-add-to-cart,
.hl-product-page form.cart:not(.variations_form) {
	display: flex !important;
	flex-wrap: nowrap !important;
	align-items: stretch !important;
	gap: 10px;
	margin-top: 8px;
	width: 100%;
	float: none !important;
	clear: both;
}

.hl-product-variations .quantity,
.hl-product-variations .nb-quantity,
.hl-product-variations .nb-quantity.style-1,
.hl-product-page form.cart .quantity,
.hl-product-page form.cart .nb-quantity {
	position: relative !important;
	float: none !important;
	flex: 0 0 74px !important;
	width: 74px !important;
	min-width: 74px !important;
	max-width: 74px !important;
	margin: 0 !important;
}

.hl-product-variations .nb-quantity .qty,
.hl-product-page form.cart .nb-quantity .qty {
	width: 44px !important;
	min-height: 50px;
	height: 50px;
	line-height: 48px;
	text-align: center;
	border: 1px solid #ccc;
	border-radius: 3px 0 0 3px;
	box-sizing: border-box;
	-moz-appearance: textfield;
	margin: 0;
	padding: 0;
}

.hl-product-variations .nb-quantity .qty::-webkit-inner-spin-button,
.hl-product-variations .nb-quantity .qty::-webkit-outer-spin-button,
.hl-product-page form.cart .nb-quantity .qty::-webkit-inner-spin-button,
.hl-product-page form.cart .nb-quantity .qty::-webkit-outer-spin-button {
	-webkit-appearance: none;
	appearance: none;
}

.hl-product-variations .nb-quantity.style-1 .qty-buttons,
.hl-product-page form.cart .nb-quantity.style-1 .qty-buttons {
	position: absolute;
	top: 0;
	right: 0;
	width: 30px;
	height: 50px;
}

.hl-product-variations .nb-quantity.style-1 .qty-buttons span,
.hl-product-page form.cart .nb-quantity.style-1 .qty-buttons span {
	display: block;
	border: 1px solid #ccc;
	text-align: center;
	border-left: 0;
	height: 25px;
	line-height: 23px;
	background: #f2f2f2;
	cursor: pointer;
	box-sizing: border-box;
}

.hl-product-variations .nb-quantity.style-1 .qty-buttons span.quantity-plus,
.hl-product-page form.cart .nb-quantity.style-1 .qty-buttons span.quantity-plus {
	border-radius: 0 3px 0 0;
}

.hl-product-variations .nb-quantity.style-1 .qty-buttons span.quantity-minus,
.hl-product-page form.cart .nb-quantity.style-1 .qty-buttons span.quantity-minus {
	border-top: 0;
	border-radius: 0 0 3px 0;
}

.hl-product-variations .single_add_to_cart_button,
.hl-product-page form.cart .single_add_to_cart_button {
	flex: 1 1 auto !important;
	width: auto !important;
	max-width: none !important;
	float: none !important;
	min-height: 50px;
	height: 50px;
	margin: 0 !important;
	background-color: var(--hl-product-color);
	border-color: var(--hl-product-color);
	color: #fff;
	font-weight: 600;
	text-transform: uppercase;
	border-radius: 6px;
}

.hl-product-variations .single_add_to_cart_button:hover,
.hl-product-page form.cart .single_add_to_cart_button:hover {
	background-color: var(--hl-product-color-dark);
	border-color: var(--hl-product-color-dark);
	color: #fff;
}

.hl-product-variations .single_add_to_cart_button.disabled {
	opacity: 0.65;
}