:root {
	--longchim-ink: #24282d;
	--longchim-muted: #5f6670;
	--longchim-copper: #a9622a;
	--longchim-border: #e3ded5;
	--longchim-ivory: #f7f4ee;
}

.longchim-category-seo {
	color: var(--longchim-muted);
	font-size: 17px;
	font-weight: 400;
	line-height: 1.78;
	letter-spacing: 0;
}

.longchim-category-seo h2,
.longchim-category-seo h3 {
	color: var(--longchim-ink);
	font-weight: 700;
	letter-spacing: -0.02em;
	text-transform: none;
}

.longchim-category-seo h2 {
	margin: 34px 0 14px;
	font-size: clamp(24px, 2vw, 30px);
	line-height: 1.3;
}

.longchim-category-seo h2:first-child {
	margin-top: 0;
}

.longchim-category-seo h3 {
	margin: 24px 0 9px;
	font-size: clamp(19px, 1.45vw, 22px);
	line-height: 1.42;
}

.longchim-category-seo p {
	margin: 0 0 17px;
	font-size: inherit;
	line-height: inherit;
}

.longchim-category-seo ul,
.longchim-category-seo ol {
	margin: 8px 0 22px;
	padding-left: 24px;
}

.longchim-category-seo li {
	margin: 0 0 10px;
	padding-left: 4px;
}

.longchim-category-seo a {
	color: var(--longchim-copper);
	font-weight: 600;
	text-decoration: underline;
	text-decoration-color: rgba(169, 98, 42, 0.3);
	text-underline-offset: 3px;
}

.longchim-category-seo a:hover {
	color: #844718;
	text-decoration-color: currentColor;
}

.longchim-table-wrap {
	width: 100%;
	margin: 18px 0 24px;
	overflow-x: auto;
	border: 1px solid var(--longchim-border);
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 10px 30px rgba(35, 39, 44, 0.05);
}

.longchim-category-seo table {
	width: 100%;
	min-width: 660px;
	margin: 0;
	border: 0;
	border-collapse: collapse;
	background: transparent;
}

.longchim-category-seo th,
.longchim-category-seo td {
	padding: 15px 17px;
	border: 0;
	border-bottom: 1px solid var(--longchim-border);
	font-size: 16px;
	line-height: 1.55;
	text-align: left;
	vertical-align: top;
}

.longchim-category-seo th {
	color: var(--longchim-ink);
	background: var(--longchim-ivory);
	font-weight: 700;
}

.longchim-category-seo tr:last-child td {
	border-bottom: 0;
}

body.longchim-lightbox-open {
	overflow: hidden !important;
}

/* Giá bán chính trên trang sản phẩm. */
body.single-product .product-info .product-page-price {
	display: flex;
	width: fit-content;
	min-width: 220px;
	margin: 16px 0 18px;
	padding: 13px 16px;
	align-items: baseline;
	gap: 10px;
	border: 1px solid rgba(169, 98, 42, 0.2);
	border-radius: 12px;
	color: var(--longchim-copper) !important;
	background: linear-gradient(135deg, var(--longchim-ivory), #fff);
	box-shadow: 0 8px 24px rgba(35, 39, 44, 0.05);
	font-size: 25px !important;
	font-weight: 800 !important;
	line-height: 1.12 !important;
}

body.single-product .product-info .product-page-price::before {
	color: var(--longchim-muted);
	content: "Giá bán";
	font-size: 11px;
	font-weight: 750;
	letter-spacing: 0.06em;
	line-height: 1.3;
	text-transform: uppercase;
}

body.single-product .product-info .product-page-price .amount,
body.single-product .product-info .product-page-price bdi,
body.single-product .product-info .product-page-price .woocommerce-Price-currencySymbol {
	color: inherit !important;
	font-size: inherit !important;
	font-weight: inherit !important;
	line-height: inherit !important;
}

body.single-product .bm-lvet-short-description > p:last-child {
	display: flex !important;
	margin: 15px 0 0 !important;
	flex-wrap: wrap;
	gap: 9px !important;
}

body.single-product .bm-lvet-short-description > p:last-child br {
	display: none;
}

body.single-product .bm-lvet-short-description > p:last-child a {
	display: inline-flex !important;
	min-height: 42px;
	padding: 10px 15px !important;
	align-items: center;
	justify-content: center;
	border-radius: 10px !important;
	box-shadow: none;
	font-size: 12px !important;
	font-weight: 750 !important;
	line-height: 1.25;
}

body.single-product .bm-lvet-short-description > p:last-child a:first-of-type {
	background: var(--longchim-ink) !important;
}

body.single-product .bm-lvet-short-description > p:last-child a:last-of-type {
	background: var(--longchim-copper) !important;
}

.longchim-lightbox[hidden] {
	display: none !important;
}

.longchim-lightbox {
	position: fixed;
	inset: 0;
	z-index: 999999;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 24px;
	color: #fff;
}

.longchim-lightbox__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(10, 12, 15, 0.94);
	backdrop-filter: blur(7px);
}

.longchim-lightbox__dialog {
	position: relative;
	z-index: 1;
	display: flex;
	width: min(1220px, calc(100vw - 48px));
	height: min(900px, calc(100vh - 48px));
	align-items: center;
	justify-content: center;
}

.longchim-lightbox__figure {
	display: flex;
	width: 100%;
	height: 100%;
	margin: 0;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

.longchim-lightbox__image {
	display: block;
	width: auto;
	max-width: 100%;
	height: auto;
	max-height: calc(100% - 60px);
	border-radius: 8px;
	box-shadow: 0 24px 70px rgba(0, 0, 0, 0.42);
	object-fit: contain;
}

.longchim-lightbox__caption {
	min-height: 32px;
	margin: 14px 64px 0;
	color: rgba(255, 255, 255, 0.82);
	font-size: 15px;
	line-height: 1.45;
	text-align: center;
}

.longchim-lightbox__close,
.longchim-lightbox__nav {
	position: absolute;
	z-index: 2;
	display: grid;
	width: 48px;
	height: 48px;
	margin: 0;
	padding: 0;
	place-items: center;
	border: 1px solid rgba(255, 255, 255, 0.28);
	border-radius: 999px;
	color: #fff;
	background: rgba(24, 26, 28, 0.82);
	box-shadow: none;
	font: inherit;
	line-height: 1;
	cursor: pointer;
	transition: background 0.2s ease, transform 0.2s ease;
}

.longchim-lightbox__close:hover,
.longchim-lightbox__nav:hover {
	color: #fff;
	background: var(--longchim-copper);
	transform: scale(1.05);
}

.longchim-lightbox__close {
	top: 0;
	right: 0;
	font-size: 31px;
	font-weight: 300;
}

.longchim-lightbox__nav {
	top: 50%;
	font-size: 38px;
	font-weight: 300;
	transform: translateY(-50%);
}

.longchim-lightbox__nav:hover {
	transform: translateY(-50%) scale(1.05);
}

.longchim-lightbox__prev {
	left: 0;
}

.longchim-lightbox__next {
	right: 0;
}

.longchim-lightbox__counter {
	position: absolute;
	top: 12px;
	left: 14px;
	color: rgba(255, 255, 255, 0.72);
	font-size: 14px;
	font-variant-numeric: tabular-nums;
}

/*
 * Related products
 *
 * The product page title rule in the active storefront has higher specificity
 * than the generic card rule. Scope every override to the related-products
 * section so the main product title and catalogue cards remain untouched.
 */
body.single-product .related.related-products-wrapper {
	margin-top: 32px;
	padding-top: 4px;
}

body.single-product .related.related-products-wrapper .product-section-title-related {
	margin: 0 0 14px;
	padding: 10px 0;
	color: var(--longchim-ink);
	font-size: 18px !important;
	font-weight: 750;
	line-height: 1.35;
	letter-spacing: -0.015em;
	text-transform: none;
}

body.single-product .related.related-products-wrapper .product-small.col .col-inner {
	display: flex;
	height: 100%;
	flex-direction: column;
	border-radius: 14px;
}

body.single-product .related.related-products-wrapper .product-small.box {
	display: flex;
	height: 100%;
	flex: 1 1 auto;
	flex-direction: column;
}

body.single-product .related.related-products-wrapper .product-small .box-image {
	height: auto !important;
	aspect-ratio: 4 / 3;
	background: #f3f1ee;
}

body.single-product .related.related-products-wrapper .product-small .box-image a,
body.single-product .related.related-products-wrapper .product-small .box-image .image-cover,
body.single-product .related.related-products-wrapper .product-small .box-image .image-fade_in_back {
	height: 100% !important;
}

body.single-product .related.related-products-wrapper .product-small .box-image img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	object-position: center 54%;
}

body.single-product .related.related-products-wrapper .product-small .box-text {
	display: flex;
	padding: 12px 13px 10px !important;
	flex: 1 1 auto;
	flex-direction: column;
}

body.single-product .related.related-products-wrapper .product-small .category {
	margin: 0 0 5px;
	font-size: 9px !important;
	line-height: 1.25 !important;
}

body.single-product .related.related-products-wrapper .product-small .name.product-title,
body.single-product .related.related-products-wrapper .product-small .name.product-title a {
	color: var(--longchim-ink);
	font-size: 15px !important;
	font-weight: 720 !important;
	line-height: 1.38 !important;
	letter-spacing: -0.01em !important;
}

body.single-product .related.related-products-wrapper .product-small .name.product-title {
	display: -webkit-box !important;
	min-height: 42px !important;
	max-height: 42px;
	margin: 3px 0 9px !important;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

body.single-product .related.related-products-wrapper .product-small .price-wrapper {
	min-height: 22px;
	margin-top: auto;
}

body.single-product .related.related-products-wrapper .product-small .price,
body.single-product .related.related-products-wrapper .product-small .amount,
body.single-product .related.related-products-wrapper .product-small .lc-contact-price {
	font-size: 14px !important;
	line-height: 1.4 !important;
}

body.single-product .related.related-products-wrapper .lc-card-material {
	top: 9px;
	left: 9px;
	padding: 5px 7px;
	font-size: 8px;
}

body.single-product .related.related-products-wrapper .lc-card-view {
	margin: 0 13px;
	padding: 10px 0 12px;
	font-size: 10px;
	line-height: 1.3;
}

body.single-product .related.related-products-wrapper .lc-card-view svg {
	width: 14px;
	height: 14px;
}

@media (max-width: 849px) {
	.longchim-category-seo {
		font-size: 16px;
		line-height: 1.72;
	}

	.longchim-category-seo h2 {
		margin-top: 28px;
		font-size: 22px;
		line-height: 1.36;
	}

	.longchim-category-seo h3 {
		margin-top: 21px;
		font-size: 18px;
		line-height: 1.45;
	}

	.longchim-category-seo th,
	.longchim-category-seo td {
		padding: 13px 14px;
		font-size: 15px;
	}

	.longchim-lightbox {
		padding: 12px;
	}

	.longchim-lightbox__dialog {
		width: calc(100vw - 24px);
		height: calc(100vh - 24px);
	}

	.longchim-lightbox__image {
		max-height: calc(100% - 74px);
		border-radius: 5px;
	}

	.longchim-lightbox__close {
		top: 4px;
		right: 4px;
		width: 44px;
		height: 44px;
		background: rgba(24, 26, 28, 0.9);
	}

	.longchim-lightbox__nav {
		width: 42px;
		height: 50px;
		border: 0;
		border-radius: 8px;
		background: rgba(24, 26, 28, 0.7);
	}

	.longchim-lightbox__prev {
		left: 4px;
	}

	.longchim-lightbox__next {
		right: 4px;
	}

	.longchim-lightbox__caption {
		margin: 12px 24px 0;
		font-size: 14px;
	}

	body.single-product .related.related-products-wrapper {
		margin-top: 24px;
	}

	body.single-product .related.related-products-wrapper .product-section-title-related {
		margin-bottom: 10px;
		padding: 8px 0;
		font-size: 17px !important;
	}

	body.single-product .related.related-products-wrapper .row {
		margin-right: -5px;
		margin-left: -5px;
	}

	body.single-product .related.related-products-wrapper .product-small.col {
		padding-right: 5px;
		padding-bottom: 12px;
		padding-left: 5px;
	}

	body.single-product .related.related-products-wrapper .product-small.col .col-inner {
		border-radius: 12px;
	}

	body.single-product .related.related-products-wrapper .product-small .box-image {
		height: auto !important;
		aspect-ratio: 4 / 3;
	}

	body.single-product .related.related-products-wrapper .product-small .box-text {
		padding: 9px 10px 8px !important;
	}

	body.single-product .related.related-products-wrapper .product-small .category {
		display: none;
	}

	body.single-product .related.related-products-wrapper .product-small .name.product-title,
	body.single-product .related.related-products-wrapper .product-small .name.product-title a {
		font-size: 13px !important;
		line-height: 1.36 !important;
	}

	body.single-product .related.related-products-wrapper .product-small .name.product-title {
		min-height: 36px !important;
		max-height: 36px;
		margin: 2px 0 7px !important;
	}

	body.single-product .related.related-products-wrapper .product-small .price-wrapper {
		min-height: 19px;
	}

	body.single-product .related.related-products-wrapper .product-small .price,
	body.single-product .related.related-products-wrapper .product-small .amount,
	body.single-product .related.related-products-wrapper .product-small .lc-contact-price {
		font-size: 12px !important;
		line-height: 1.35 !important;
	}

	body.single-product .related.related-products-wrapper .lc-card-material {
		top: 7px;
		left: 7px;
		padding: 4px 6px;
		font-size: 7px;
	}

	body.single-product .related.related-products-wrapper .lc-card-view {
		margin: 0 10px;
		padding: 8px 0 9px;
		font-size: 9px;
	}

	body.single-product .related.related-products-wrapper .lc-card-view svg {
		width: 12px;
		height: 12px;
	}
}

@media (max-width: 549px) {
	/* Chỉ bỏ thanh mua hàng dính đáy trên điện thoại. */
	body.single-product .sticky-add-to-cart-wrapper {
		display: none !important;
	}

	body.single-product .product-info .product-page-price {
		width: 100%;
		min-width: 0;
		margin: 13px 0 15px;
		padding: 12px 13px;
		border-radius: 10px;
		font-size: 22px !important;
	}

	body.single-product .product-info .product-page-price::before {
		font-size: 10px;
	}

	body.single-product .bm-lvet-short-description > p:last-child {
		display: grid !important;
		grid-template-columns: 0.9fr 1.1fr;
	}

	body.single-product .bm-lvet-short-description > p:last-child a {
		min-width: 0;
		padding: 10px 8px !important;
		text-align: center;
	}

	body.single-product .product-info form.cart {
		display: grid;
		grid-template-columns: 1fr 1fr;
	}

	body.single-product .product-info form.cart .quantity {
		width: 100%;
		grid-column: 1 / -1;
	}

	body.single-product .product-info form.cart .quantity .qty {
		flex: 1 1 auto;
	}

	body.single-product .product-info form.cart button[type="submit"] {
		min-width: 0;
		padding-right: 9px !important;
		padding-left: 9px !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	.longchim-lightbox__close,
	.longchim-lightbox__nav {
		transition: none;
	}
}

/* Che phần địa chỉ Hà Nội in chết trên bộ ảnh thật lồng vẹt 5 ngăn.
 * Chỉ phủ dải chữ cũ; không cắt, kéo giãn hoặc chỉnh sửa hình sản phẩm.
 */
.products .product-small.post-17900 .box-image a,
body.postid-17900 .woocommerce-product-gallery__image > a {
	position: relative;
	display: block;
	overflow: hidden;
}

.products .product-small.post-17900 .box-image a::after,
body.postid-17900 .woocommerce-product-gallery__image > a::after {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 4;
	display: flex;
	height: 12.5%;
	min-height: 44px;
	padding: 7px 14px;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	border-top: 2px solid var(--longchim-copper);
	color: #fff;
	background: linear-gradient(90deg, #1a1d20, #4c3627);
	content: "Xưởng Bật Mạnh · Hưng Yên";
	font-size: 12px;
	font-weight: 750;
	line-height: 1.25;
	letter-spacing: 0.015em;
	text-align: center;
	text-shadow: none;
	pointer-events: none;
}

.products .product-small.post-17900 .box-image a::after {
	min-height: 0;
	padding: 5px 9px;
	font-size: 10px;
}

.longchim-lightbox__figure {
	position: relative;
}

.longchim-lightbox__legacy-address[hidden] {
	display: none !important;
}

.longchim-lightbox__legacy-address {
	position: absolute;
	z-index: 3;
	display: flex;
	min-height: 52px;
	padding: 9px 24px;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	border-top: 2px solid var(--longchim-copper);
	color: #fff;
	background: linear-gradient(90deg, #1a1d20, #4c3627);
	font-size: 14px;
	font-weight: 750;
	line-height: 1.3;
	letter-spacing: 0.015em;
	text-align: center;
	pointer-events: none;
}

@media (max-width: 549px) {
	.products .product-small.post-17900 .box-image a::after {
		padding: 3px 5px;
		font-size: 7px;
		line-height: 1.15;
	}

	body.postid-17900 .woocommerce-product-gallery__image > a::after {
		min-height: 34px;
		padding: 5px 8px;
		font-size: 9px;
	}

	.longchim-lightbox__legacy-address {
		min-height: 34px;
		padding: 6px 12px;
		font-size: 10px;
	}
}



/* legacy-address-thumb-cover: phủ đúng dải chữ cũ trong toàn bộ ảnh thật của sản phẩm, giữ nguyên hình lồng. */
body.postid-17900 .product-thumbnails .col > a {
	position: relative;
	display: block;
	overflow: hidden;
}

body.postid-17900 .product-thumbnails .col > a::after {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 2;
	height: 12.5%;
	box-sizing: border-box;
	border-top: 1px solid var(--longchim-copper);
	background: linear-gradient(90deg, #1a1d20, #4c3627);
	content: "";
	pointer-events: none;
}
