/**
 * TD Lighting — brand #C5914E, scoped .tdlp (font kế thừa theme)
 */

.tdlp {
	/* Brand Gold Palette */
	--tdlp-brand: #c5914e;
	--tdlp-brand-rgb: 197, 145, 78;
	--tdlp-brand-dark: #a67a3d;
	--tdlp-brand-light: #d4a76a;
	--tdlp-brand-soft: rgba(197, 145, 78, 0.12);
	--tdlp-brand-glass: rgba(197, 145, 78, 0.04);
	
	/* Neutral Palette */
	--tdlp-bg: #ffffff;
	--tdlp-surface: #faf9f7;
	--tdlp-surface-dark: #f0ede8;
	--tdlp-text: #000000;
	--tdlp-text-light: #ffffff;
	--tdlp-muted: #000000;
	--tdlp-border: #f0ede8;
	--tdlp-border-light: rgba(235, 232, 227, 0.5);
	
	/* Layout & Motion */
	--tdlp-radius: 16px;
	--tdlp-radius-sm: 10px;
	--tdlp-max: 1300px;
	--tdlp-shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.04);
	--tdlp-shadow-md: 0 12px 32px rgba(17, 17, 17, 0.08);
	--tdlp-shadow-lg: 0 24px 60px rgba(17, 17, 17, 0.12);
	--tdlp-transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
	--tdlp-tap-min: 48px;

	font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
	color: var(--tdlp-text);
	font-size: clamp(1rem, 0.4vw + 0.95rem, 1.0625rem);
	line-height: 1.6;
	background: var(--tdlp-bg);
	-webkit-font-smoothing: antialiased;
	text-size-adjust: 100%;
}

.tdlp a:focus-visible,
.tdlp button:focus-visible,
.tdlp input:focus-visible,
.tdlp textarea:focus-visible,
.tdlp select:focus-visible {
	outline: 2px solid var(--tdlp-brand);
	outline-offset: 2px;
}

/* Sections */
.tdlp-section {
	max-width: var(--tdlp-max);
	margin: 0 auto;
	padding: clamp(1.5rem, 4vw, 2.75rem) clamp(1rem, 4vw, 1.5rem);
	padding-left: max(1rem, env(safe-area-inset-left));
	padding-right: max(1rem, env(safe-area-inset-right));
}

.tdlp-about,
.tdlp-design {
	background: var(--tdlp-bg);
	border-radius: var(--tdlp-radius);
	margin: clamp(0.5rem, 2vw, 1rem) 0;
	border: 1px solid var(--tdlp-border);
	box-shadow: var(--tdlp-shadow-sm);
	overflow: hidden;
}

/* —— Trang About: story split —— */
.tdlp-intro {
	padding-top: clamp(2rem, 5vw, 3.5rem);
}

.tdlp-story-split {
	display: grid;
	grid-template-columns: 1fr;
	gap: clamp(1.5rem, 4vw, 2.5rem);
	align-items: start;
}

@media (min-width: 880px) {
	.tdlp-story-split--m1 {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr);
		gap: 2rem 2.5rem;
		align-items: center;
	}
}

/* Mobile: một cột — kicker + tiêu đề + lead + prose trước, lưới 4 ảnh, rồi CTA */
@media (max-width: 879px) {
	.tdlp-story-split {
		display: grid;
		grid-template-columns: minmax(0, 1fr);
		grid-auto-rows: auto;
		gap: clamp(0.85rem, 2.5vw, 1.25rem);
	}

	.tdlp-story-split__text {
		display: contents;
	}

	.tdlp-story-split__grid-wrap {
		display: contents;
	}

	.tdlp-story-grid2 {
		display: contents;
	}

	.tdlp-story-split .tdlp-kicker,
	.tdlp-story-split .tdlp-title,
	.tdlp-story-split .tdlp-lead,
	.tdlp-story-split .tdlp-prose,
	.tdlp-story-split__cta,
	.tdlp-story-grid2__cell {
		grid-column: 1 / -1;
		width: 100%;
		max-width: 100%;
		min-width: 0;
	}

	.tdlp-story-split .tdlp-kicker { order: 1; }
	.tdlp-story-split .tdlp-title { order: 2; }
	.tdlp-story-split .tdlp-lead { order: 3; }
	.tdlp-story-split .tdlp-prose { order: 4; }

	.tdlp-story-grid2__cell:nth-child(1) { order: 5; }
	.tdlp-story-grid2__cell:nth-child(2) { order: 6; }
	.tdlp-story-grid2__cell:nth-child(3) { order: 7; }
	.tdlp-story-grid2__cell:nth-child(4) { order: 8; }

	.tdlp-story-split__cta {
		order: 9;
		margin-top: clamp(1.25rem, 4vw, 2rem);
		padding-top: clamp(1.25rem, 3vw, 1.75rem);
	}
}

/*
 * Nút «Liên hệ»: dùng padding-top + margin-bottom prose để tránh theme reset margin p
 * và tránh margin-collapse làm mất khoảng cách với đoạn văn phía trên.
 */
.tdlp-story-split__text > .tdlp-prose.tdlp-prose--story {
	margin-bottom: clamp(1.25rem, 3.5vw, 1.75rem);
}

.tdlp.tdlp-about .tdlp-story-split__text > .tdlp-story-split__cta {
	padding-top: clamp(1.5rem, 4vw, 2rem);
	margin-top: -5px;
}

/* Nút CTA story: padding dọc + tách rõ khỏi đoạn văn phía trên */
.tdlp-story-split__cta .tdlp-btn {
	padding: 1rem 1.75rem;
}

/* Câu chuyện — mẫu 1: chữ trái + lưới 2×2 ảnh vuông */
.tdlp-story-split__grid-wrap {
	min-width: 0;
}

.tdlp-story-grid2 {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.65rem;
}

@media (min-width: 600px) {
	.tdlp-story-grid2 {
		gap: 0.85rem;
	}
}

.tdlp-story-grid2__cell {
	position: relative;
	margin: 0;
	aspect-ratio: 1 / 1;
	border-radius: var(--tdlp-radius);
	overflow: hidden;
	border: 1px solid var(--tdlp-border);
	box-shadow: var(--tdlp-shadow-sm);
	background: var(--tdlp-surface);
	transition: box-shadow 0.45s ease, border-color 0.35s ease;
}

.tdlp-story-grid2__cell:hover {
	box-shadow: var(--tdlp-shadow);
	border-color: rgba(197, 145, 78, 0.28);
}

.tdlp-story-grid2__cell .tdlp-story-grid2__img {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.55s cubic-bezier(0.22, 1, 0.36, 1), filter 0.4s ease;
}

.tdlp-story-grid2__cell:hover .tdlp-story-grid2__img {
	transform: scale(1.04);
	filter: brightness(1.03);
}

.tdlp-story-grid2__ph {
	background: linear-gradient(145deg, var(--tdlp-brand-soft), #f0ede8);
	border: 1px dashed var(--tdlp-border);
}

.tdlp-kicker {
	text-transform: uppercase;
	letter-spacing: 0.2em;
	font-size: 0.7rem;
	font-weight: 700;
	color: var(--tdlp-brand);
	margin: 0 0 0.65rem;
}

.tdlp-title {
	font-size: clamp(1.75rem, 4.2vw, 2.5rem);
	font-weight: 700;
	line-height: 1.15;
	letter-spacing: -0.03em;
	margin: 0 0 1rem;
	color: var(--tdlp-text);
}

.tdlp-lead--story {
	font-weight: 600;
	font-size: clamp(1.05rem, 2.3vw, 1.22rem);
	color: var(--tdlp-text);
	line-height: 1.5;
	margin: 0 0 1.25rem;
}

.tdlp-prose--story {
	color: var(--tdlp-muted);
	font-size: clamp(1rem, 1.35vw, 1.09rem);
	line-height: 1.75;
}

.tdlp-prose--story p {
	margin: 0 0 1rem;
}

.tdlp-prose--story p:last-child {
	margin-bottom: 0;
}

.tdlp-prose--story ul,
.tdlp-prose--story ol {
	margin: 0 0 1rem 1.2rem;
	padding: 0;
}

.tdlp-prose--story li {
	margin-bottom: 0.4rem;
}

.tdlp-prose--story li:last-child {
	margin-bottom: 0;
}

.tdlp-story-split__aside {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 1.1rem;
}

.tdlp-story-split__media {
	border-radius: var(--tdlp-radius);
	overflow: hidden;
	border: 1px solid var(--tdlp-border);
	box-shadow: var(--tdlp-shadow);
	background: var(--tdlp-surface);
}

.tdlp-story-split__media .tdlp-media {
	border: none;
	box-shadow: none;
	border-radius: 0;
}

.tdlp-story-split__img {
	width: 100%;
	height: auto;
	display: block;
	vertical-align: middle;
}

.tdlp-story-split__placeholder {
	min-height: 220px;
	background: linear-gradient(145deg, var(--tdlp-brand-soft), #f0ede8);
	border-radius: var(--tdlp-radius-sm);
}

.tdlp-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: var(--tdlp-tap-min);
	padding: 0.75rem 1.35rem;
	border-radius: 6px;
	text-decoration: none;
	font-weight: 700;
	font-size: clamp(0.74rem, 1.5vw, 0.78rem);
	letter-spacing: 0.06em;
	text-transform: uppercase;
	transition: background 0.25s ease, transform 0.2s ease, box-shadow 0.25s ease;
	border: 1px solid transparent;
	text-align: center;
	touch-action: manipulation;
}

.tdlp-btn--brand {
	background: var(--tdlp-brand);
	color: #fff;
	border-color: var(--tdlp-brand);
	box-shadow: 0 4px 14px rgba(197, 145, 78, 0.35);
}

.tdlp-btn--brand:hover {
	background: var(--tdlp-brand-dark);
	border-color: var(--tdlp-brand-dark);
	color: #fff;
	transform: translateY(-1px);
	box-shadow: 0 6px 20px rgba(197, 145, 78, 0.4);
}

/* Story quad */
.tdlp-story-quad {
	margin-top: clamp(1.5rem, 4vw, 2.25rem);
	padding-top: clamp(1.25rem, 3vw, 2rem);
	border-top: 1px solid var(--tdlp-border);
}

.tdlp-quad-wrap {
	margin: 0;
}

.tdlp-quad {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0.75rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

@media (min-width: 600px) {
	.tdlp-quad {
		gap: 1rem;
	}
}

.tdlp-quad__cell {
	margin: 0;
	padding: 0;
}

.tdlp-quad__link {
	display: block;
	border-radius: var(--tdlp-radius-sm);
	overflow: hidden;
	border: 1px solid var(--tdlp-border);
	background: #fff;
	box-shadow: var(--tdlp-shadow-sm);
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.tdlp-quad__link:hover {
	transform: translateY(-3px);
	box-shadow: var(--tdlp-shadow);
}

.tdlp-quad__img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 1;
	object-fit: cover;
}

/* Lưới số liệu 3 cột — luôn một hàng ngang */
.tdlp-stats--3 {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0.5rem 0.4rem;
	text-align: center;
	align-items: start;
}

@media (min-width: 640px) {
	.tdlp-stats--3 {
		gap: 0.75rem 1rem;
	}
}

.tdlp-stats--4 {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.65rem 0.75rem;
	text-align: center;
}

@media (min-width: 700px) {
	.tdlp-stats--4 {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 0.75rem 1rem;
	}
}

/* Giá trị cốt lõi — Night luxe (font kế thừa theme) */
.tdlp-section--values {
	background: transparent;
	border: none;
	padding-top: clamp(1.5rem, 4vw, 2.5rem);
	padding-bottom: clamp(1.5rem, 4vw, 2.5rem);
}

.tdlp-values-night {
	border-radius: var(--tdlp-radius);
	overflow: hidden;
	background: linear-gradient(165deg, #141414 0%, #0c0c0c 100%);
	border: 1px solid rgba(197, 145, 78, 0.22);
	box-shadow: 0 24px 60px rgba(0, 0, 0, 0.12);
	font-family: inherit;
}

.tdlp-values-night__inner {
	padding: clamp(1.75rem, 4vw, 2.5rem) clamp(1.25rem, 3vw, 2rem) 1.5rem;
}

.tdlp-values-night__title {
	font-family: inherit;
	font-size: clamp(1.65rem, 4vw, 2.15rem);
	font-weight: 600;
	letter-spacing: -0.02em;
	color: #f5f0e8;
	margin: 0 0 clamp(1.25rem, 3vw, 1.75rem);
	text-align: center;
	line-height: 1.2;
}

.tdlp-values-night__photos {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.65rem;
	margin-bottom: clamp(1.5rem, 3vw, 2rem);
}

@media (min-width: 900px) {
	.tdlp-values-night__photos {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 0.75rem;
	}
}

/* Mobile: tiêu đề trước, rồi 4 card giá trị, cuối là 4 ảnh */
@media (max-width: 899px) {
	.tdlp-values-night__inner {
		display: grid;
		grid-template-columns: minmax(0, 1fr);
		grid-auto-rows: auto;
		gap: clamp(0.9rem, 2.5vw, 1.35rem);
	}

	.tdlp-values-night__photos {
		display: contents;
		margin-bottom: 0;
	}

	.tdlp-values-night__cards {
		display: contents;
	}

	.tdlp-values-night__title {
		order: 1;
	}

	.tdlp-values-night__cards .tdlp-value-card:nth-child(1) { order: 2; }
	.tdlp-values-night__cards .tdlp-value-card:nth-child(2) { order: 3; }
	.tdlp-values-night__cards .tdlp-value-card:nth-child(3) { order: 4; }
	.tdlp-values-night__cards .tdlp-value-card:nth-child(4) { order: 5; }

	.tdlp-values-night__photos .tdlp-values-night__photo:nth-child(1) { order: 6; }
	.tdlp-values-night__photos .tdlp-values-night__photo:nth-child(2) { order: 7; }
	.tdlp-values-night__photos .tdlp-values-night__photo:nth-child(3) { order: 8; }
	.tdlp-values-night__photos .tdlp-values-night__photo:nth-child(4) { order: 9; }

	.tdlp-values-night__title,
	.tdlp-values-night__photos .tdlp-values-night__photo,
	.tdlp-values-night__cards .tdlp-value-card {
		grid-column: 1 / -1;
		width: 100%;
		max-width: 100%;
		min-width: 0;
	}
}

.tdlp-values-night__photo {
	position: relative;
	margin: 0;
	padding: 0;
	border-radius: 10px;
	overflow: hidden;
	border: 1px solid rgba(197, 145, 78, 0.35);
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.03);
	transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.4s ease, border-color 0.35s ease;
}

.tdlp-values-night__photo:hover {
	transform: translateY(-5px) scale(1.02);
	border-color: rgba(197, 145, 78, 0.72);
	box-shadow: 0 18px 40px rgba(0, 0, 0, 0.45), 0 0 0 1px rgba(197, 145, 78, 0.28);
}

.tdlp-values-night__photo .tdlp-values-night__img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 3 / 4;
	transition: transform 0.55s cubic-bezier(0.22, 1, 0.36, 1);
}

.tdlp-values-night__photo:hover .tdlp-values-night__img {
	transform: scale(1.07);
}

.tdlp-values-night__photo--ph {
	aspect-ratio: 3 / 4;
	min-height: 160px;
	background: linear-gradient(145deg, rgba(197, 145, 78, 0.08), #1a1a1a);
	border: 1px dashed rgba(197, 145, 78, 0.28);
}

.tdlp-values-night__cards {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0.85rem;
}

@media (max-width: 600px) {
	.tdlp-values-night__cards {
		grid-template-columns: 1fr;
	}
}

.tdlp-value-card {
	background: #fff;
	border: 1px solid var(--tdlp-border);
	border-radius: var(--tdlp-radius-sm);
	padding: 1rem 1rem 1.1rem;
	box-shadow: var(--tdlp-shadow-sm);
	transition: border-color 0.25s ease, box-shadow 0.25s ease;
}

.tdlp-value-card--night {
	background: rgba(255, 255, 255, 0.04);
	border: 1px solid rgba(197, 145, 78, 0.22);
	box-shadow: none;
}

.tdlp-value-card--night:hover {
	border-color: rgba(197, 145, 78, 0.45);
	box-shadow: 0 8px 28px rgba(0, 0, 0, 0.25);
}

.tdlp-value-card:hover {
	border-color: rgba(197, 145, 78, 0.45);
	box-shadow: var(--tdlp-shadow);
}

.tdlp-icon-ring {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: var(--tdlp-brand-soft);
	color: var(--tdlp-brand);
	margin-bottom: 0.65rem;
}

.tdlp-values-night .tdlp-icon-ring--value {
	background: rgba(197, 145, 78, 0.12);
	color: #d4a862;
	border: 1px solid rgba(197, 145, 78, 0.28);
}

.tdlp-icon-ring svg {
	display: block;
}

.tdlp-value-card__title {
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--tdlp-text);
	margin: 0 0 0.45rem;
	line-height: 1.3;
}

.tdlp-value-card--night .tdlp-value-card__title {
	color: #f0ebe4;
}

.tdlp-value-card__text {
	margin: 0;
	font-size: 0.94rem;
	line-height: 1.58;
	color: var(--tdlp-muted);
}

.tdlp-value-card--night .tdlp-value-card__text {
	color: rgba(240, 235, 228, 0.72);
}

/* Night luxe: số liệu luôn 3 ô ngang (override .tdlp-stats chung) */
.tdlp-values-night .tdlp-values-night__stats.tdlp-stats {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0.5rem 0.35rem;
	padding: 1.35rem clamp(0.5rem, 2vw, 1rem) 1.5rem;
	background: rgba(255, 255, 255, 0.03);
	border-top: 1px solid rgba(197, 145, 78, 0.2);
	text-align: center;
}

@media (min-width: 640px) {
	.tdlp-values-night .tdlp-values-night__stats.tdlp-stats {
		gap: 1rem;
		padding: 1.5rem 1.25rem 1.6rem;
	}
}

.tdlp-values-night__stats .tdlp-stat {
	background: transparent;
	border: none;
	box-shadow: none;
	padding: 0.6rem 0.35rem;
}

.tdlp-values-night__stats .tdlp-stat:hover {
	transform: none;
	box-shadow: none;
}

.tdlp-values-night__stats .tdlp-stat__num {
	color: #d4a862;
	font-family: inherit;
	font-size: clamp(1.95rem, 4.8vw, 2.4rem);
	font-weight: 800;
}

.tdlp-values-night__stats .tdlp-stat__label {
	color: rgba(240, 235, 228, 0.55);
	font-size: clamp(0.92rem, 2.2vw, 1.06rem);
	max-width: min(11rem, 100%);
	margin-left: auto;
	margin-right: auto;
	line-height: 1.4;
}

.tdlp-h2--section {
	font-size: clamp(1.35rem, 3vw, 1.85rem);
	font-weight: 700;
	margin-bottom: clamp(1.25rem, 3vw, 2rem);
}

.tdlp-center {
	text-align: center;
}

/* Stats (dùng chung — không ghi đè lưới 3 / 4 ô) */
.tdlp-stats:not(.tdlp-stats--4):not(.tdlp-stats--3) {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1rem;
	text-align: center;
}

.tdlp-stat {
	padding: 1.35rem 1rem;
	border-radius: var(--tdlp-radius);
	background: #fff;
	border: 1px solid var(--tdlp-border);
	box-shadow: var(--tdlp-shadow-sm);
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.tdlp-stat:hover {
	transform: translateY(-2px);
	box-shadow: var(--tdlp-shadow);
}

.tdlp-stat__num {
	font-size: clamp(1.65rem, 4vw, 2.15rem);
	font-weight: 800;
	letter-spacing: -0.02em;
	color: var(--tdlp-text);
	line-height: 1.1;
}

.tdlp-stat__label {
	margin-top: 0.45rem;
	font-size: 0.86rem;
	line-height: 1.45;
	color: var(--tdlp-muted);
	max-width: 14rem;
	margin-left: auto;
	margin-right: auto;
}

/* Năng lực & dịch vụ — 2×2 ảnh + 01–04 + chữ (font kế thừa .tdlp) */
.tdlp-section--services {
	padding-bottom: clamp(2rem, 5vw, 3rem);
}

.tdlp-services,
.tdlp-services * {
	font-family: inherit;
}

.tdlp-services__shell {
	background: #fff;
	border: 1px solid var(--tdlp-border);
	border-radius: var(--tdlp-radius);
	padding: clamp(1.5rem, 3vw, 2.25rem);
	box-shadow: var(--tdlp-shadow-sm);
}

.tdlp-services__head {
	margin-bottom: clamp(1.25rem, 3vw, 1.65rem);
}

.tdlp-services__title.tdlp-h2--section {
	margin-bottom: 0.65rem;
	letter-spacing: -0.02em;
	font-weight: 600;
}

.tdlp-services__rule {
	width: 3.25rem;
	height: 2px;
	border-radius: 1px;
	background: linear-gradient(90deg, var(--tdlp-brand), rgba(197, 145, 78, 0.15));
}

.tdlp-services__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.15rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

@media (min-width: 640px) {
	.tdlp-services__grid {
		grid-template-columns: 1fr 1fr;
		gap: 1.35rem 1.5rem;
	}
}

.tdlp-services-card {
	border: 1px solid rgba(0, 0, 0, 0.06);
	border-radius: calc(var(--tdlp-radius) + 2px);
	background: #fff;
	padding: 0.85rem 0.85rem 0;
	box-shadow:
		0 1px 0 rgba(255, 255, 255, 0.9) inset,
		0 10px 32px rgba(18, 14, 10, 0.06),
		0 2px 8px rgba(18, 14, 10, 0.04);
	transition:
		border-color 0.45s cubic-bezier(0.22, 1, 0.36, 1),
		box-shadow 0.45s cubic-bezier(0.22, 1, 0.36, 1),
		transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);
	position: relative;
}

.tdlp-services-card::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 3px;
	background: linear-gradient(90deg, transparent, var(--tdlp-brand), transparent);
	opacity: 0;
	transition: opacity 0.45s cubic-bezier(0.22, 1, 0.36, 1);
	pointer-events: none;
	border-radius: 0 0 calc(var(--tdlp-radius) + 2px) calc(var(--tdlp-radius) + 2px);
}

.tdlp-services-card:hover {
	border-color: rgba(197, 145, 78, 0.35);
	box-shadow:
		0 22px 50px rgba(18, 14, 10, 0.1),
		0 8px 20px rgba(18, 14, 10, 0.05);
	transform: translateY(-3px);
}

.tdlp-services-card:hover::after {
	opacity: 1;
}

.tdlp-services-card__media {
	position: relative;
	overflow: hidden;
	border-radius: 12px;
	margin-bottom: 0.65rem;
	box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.04);
}

.tdlp-services-card__media-inner {
	position: relative;
	aspect-ratio: 3 / 2;
	overflow: hidden;
	border-radius: 12px;
	background: #e8e4df;
}

.tdlp-services-card__media-inner--ph {
	min-height: 0;
	background:
		radial-gradient(ellipse 120% 80% at 30% 20%, rgba(255, 255, 255, 0.35), transparent 55%),
		linear-gradient(155deg, #ebe6e0 0%, #d4cdc4 48%, #c4bbb2 100%);
}

.tdlp-services-card:nth-child(2) .tdlp-services-card__media-inner--ph {
	background:
		radial-gradient(ellipse 100% 70% at 70% 15%, rgba(255, 255, 255, 0.25), transparent 50%),
		linear-gradient(165deg, #ddd5cb 0%, #c9c0b4 55%, #b0a69a 100%);
}

.tdlp-services-card:nth-child(3) .tdlp-services-card__media-inner--ph {
	background:
		radial-gradient(ellipse 90% 60% at 25% 75%, rgba(255, 255, 255, 0.4), transparent 45%),
		linear-gradient(140deg, #f3efe8 0%, #e0d9cf 50%, #cec5b8 100%);
}

.tdlp-services-card:nth-child(4) .tdlp-services-card__media-inner--ph {
	background:
		radial-gradient(ellipse 80% 50% at 50% 0%, rgba(255, 255, 255, 0.12), transparent 55%),
		linear-gradient(170deg, #b8aea2 0%, #9a9185 45%, #7a7268 100%);
}

.tdlp-services-card__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.55s cubic-bezier(0.22, 1, 0.36, 1), filter 0.4s ease;
}

.tdlp-services-card:hover .tdlp-services-card__img {
	transform: scale(1.045);
	filter: brightness(1.03);
}

.tdlp-services-card__body {
	display: flex;
	align-items: stretch;
	gap: 0;
	padding: 0.35rem 0.2rem 1.25rem;
}

.tdlp-services-card__ix {
	flex-shrink: 0;
	min-width: 2.85rem;
	margin-right: 0.85rem;
	padding: 0.15rem 0.75rem 0.15rem 0;
	font-size: clamp(0.88rem, 1.85vw, 1.02rem);
	font-weight: 800;
	font-variant-numeric: tabular-nums;
	letter-spacing: 0.04em;
	color: var(--tdlp-brand-dark);
	line-height: 1.25;
	border-right: 1px solid rgba(197, 145, 78, 0.32);
	text-align: right;
	align-self: flex-start;
}

.tdlp-services-card__text {
	flex: 1;
	min-width: 0;
	margin: 0;
	padding-top: 0.08em;
	font-size: clamp(0.98rem, 1.35vw, 1.08rem);
	line-height: 1.58;
	letter-spacing: 0.01em;
	color: var(--tdlp-text);
	opacity: 0.88;
	font-weight: 500;
}

/* CTA cuối trang About — gọn, panel kính + WPForms / shortcode; full-width ngoài .tdlp-about */
.tdlp-bottom-cta {
	--tdlp-max: 1400px;
	--tdlp-text: #111111;
	--tdlp-brand: #c5914e;
	--tdlp-brand-dark: #a67a3d;
	font-family: inherit;
	position: relative;
	width: 100vw;
	max-width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	margin-top: clamp(1rem, 3vw, 1.75rem);
	margin-bottom: 0 !important;
	padding: clamp(1.5rem, 4vw, 2.5rem) clamp(1rem, 3vw, 1.5rem);
	padding-left: max(1rem, env(safe-area-inset-left));
	padding-right: max(1rem, env(safe-area-inset-right));
	padding-bottom: max(clamp(1.5rem, 4vw, 2.5rem), env(safe-area-inset-bottom));
	background-size: cover;
	background-position: center;
	background-color: #121110;
	border-radius: 0;
	border: none;
	box-shadow: none;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.tdlp-bottom-cta:last-child {
	margin-bottom: 0 !important;
}

/* Triệt tiêu khoảng hở do theme chèn giữa CTA và block kế tiếp (thường là footer). */
.tdlp-bottom-cta + * {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

.tdlp-bottom-cta + *::before {
	margin-top: 0 !important;
}

/* Footer / theme spacing fix: khoảng trắng còn lại thường do theme thêm margin/padding-top
   trên container footer ngay sau shortcode. */
.tdlp-bottom-cta ~ footer,
.tdlp-bottom-cta ~ #main-footer,
.tdlp-bottom-cta ~ .fusion-footer,
.tdlp-bottom-cta ~ .fusion-page-footer,
.tdlp-bottom-cta ~ .fusion-footer-widget-area,
.tdlp-bottom-cta ~ .avada-footer,
.tdlp-bottom-cta ~ [class*="footer"],
.tdlp-bottom-cta ~ [id*="footer"] {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

.tdlp-bottom-cta ~ footer .fusion-footer-widget-area,
.tdlp-bottom-cta ~ .fusion-footer .fusion-footer-widget-area,
.tdlp-bottom-cta ~ #main-footer .fusion-footer-widget-area {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

/* Không có ảnh nền: gradient sang + ấm (vẫn nên thêm ảnh trong admin) */
.tdlp-bottom-cta--no-image {
	background-image:
		radial-gradient(ellipse 90% 70% at 15% 35%, rgba(197, 145, 78, 0.12), transparent 55%),
		radial-gradient(ellipse 60% 45% at 85% 20%, rgba(90, 80, 70, 0.35), transparent 50%),
		linear-gradient(155deg, #1a1816 0%, #0e0d0c 55%, #060605 100%);
}

.tdlp-bottom-cta--has-image {
	background-color: #0a0908;
}

.tdlp-bottom-cta__overlay {
	position: absolute;
	inset: 0;
	pointer-events: none;
	background: linear-gradient(
		100deg,
		rgba(0, 0, 0, 0.55) 0%,
		rgba(0, 0, 0, 0.38) 38%,
		rgba(0, 0, 0, 0.2) 72%,
		rgba(0, 0, 0, 0.12) 100%
	);
}

.tdlp-bottom-cta__inner {
	position: relative;
	z-index: 1;
	max-width: var(--tdlp-max);
	margin: 0 auto;
	padding: 0;
	width: 100%;
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: flex-start;
}

/* Khối gom chữ + form — không tràn chiều ngang */
.tdlp-bottom-cta__panel {
	max-width: 26.5rem;
	width: 100%;
	margin: 0;
	padding: 1.15rem 1.2rem 1.35rem;
	border-radius: var(--tdlp-radius);
	background: rgba(255, 255, 255, 0.06);
	backdrop-filter: blur(14px);
	-webkit-backdrop-filter: blur(14px);
	border: 1px solid rgba(255, 255, 255, 0.1);
	box-shadow: 0 12px 40px rgba(0, 0, 0, 0.35);
}

.tdlp-bottom-cta__kicker {
	margin: 0 0 0.45rem;
	font-size: 0.65rem;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: rgba(212, 168, 98, 0.95);
}

.tdlp-bottom-cta__title {
	margin: 0 0 1rem;
	font-size: clamp(1.15rem, 2.6vw, 1.45rem);
	font-weight: 700;
	line-height: 1.28;
	color: #fff;
	letter-spacing: -0.02em;
	text-shadow: 0 2px 16px rgba(0, 0, 0, 0.35);
}

.tdlp-bottom-cta__form {
	margin-top: 0;
}

.tdlp-bottom-cta__form--embed .wpforms-container,
.tdlp-bottom-cta__form--embed .fusion-form,
.tdlp-bottom-cta__form--embed form {
	margin: 0 !important;
}

.tdlp-bottom-cta__form .wpforms-container {
	max-width: 100% !important;
}

.tdlp-bottom-cta__form .wpforms-field {
	margin-bottom: 0.55rem !important;
	padding: 0 !important;
}

.tdlp-bottom-cta__form .wpforms-field-label {
	margin-bottom: 0.3rem !important;
	font-size: 0.8rem !important;
	font-weight: 600 !important;
	color: rgba(255, 255, 255, 0.88) !important;
	line-height: 1.35 !important;
}

.tdlp-bottom-cta__form .wpforms-required-label {
	color: #e8a598 !important;
}

.tdlp-bottom-cta__form .wpforms-field-row {
	max-width: 100% !important;
	margin: 0 !important;
}

.tdlp-bottom-cta__form .wpforms-container input[type="text"],
.tdlp-bottom-cta__form .wpforms-container input[type="tel"],
.tdlp-bottom-cta__form .wpforms-container input[type="email"],
.tdlp-bottom-cta__form .wpforms-container input[type="number"],
.tdlp-bottom-cta__form .wpforms-container input[type="search"],
.tdlp-bottom-cta__form .wpforms-container textarea,
.tdlp-bottom-cta__form .wpforms-container select,
.tdlp-bottom-cta__form input[type="text"],
.tdlp-bottom-cta__form input[type="tel"],
.tdlp-bottom-cta__form input[type="email"],
.tdlp-bottom-cta__form input[type="number"],
.tdlp-bottom-cta__form input[type="search"],
.tdlp-bottom-cta__form textarea,
.tdlp-bottom-cta__form select {
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
	min-height: 2.65rem !important;
	padding: 0.5rem 0.75rem !important;
	border-radius: 8px !important;
	border: 1px solid rgba(255, 255, 255, 0.22) !important;
	background: rgba(255, 255, 255, 0.96) !important;
	color: var(--tdlp-text) !important;
	font-size: 0.92rem !important;
	font-family: inherit !important;
}

.tdlp-bottom-cta__form .wpforms-container textarea {
	min-height: 4rem !important;
}

.tdlp-bottom-cta__form .wpforms-submit-container {
	margin-top: 0.45rem !important;
	margin-bottom: 0 !important;
	padding: 0 !important;
}

.tdlp-bottom-cta__form .wpforms-container .wpforms-submit,
.tdlp-bottom-cta__form .wpforms-container button[type="submit"],
.tdlp-bottom-cta__form .wpforms-container input[type="submit"],
.tdlp-bottom-cta__form .fusion-button,
.tdlp-bottom-cta__form button[type="submit"],
.tdlp-bottom-cta__form input[type="submit"] {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 2.65rem !important;
	padding: 0.55rem 1.35rem !important;
	margin-top: 0.15rem !important;
	border-radius: 6px !important;
	border: 1px solid var(--tdlp-brand) !important;
	background: var(--tdlp-brand) !important;
	color: #fff !important;
	font-size: 0.76rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.07em !important;
	text-transform: uppercase !important;
	cursor: pointer !important;
	box-shadow: 0 4px 14px rgba(197, 145, 78, 0.35) !important;
	transition: background 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease !important;
}

.tdlp-bottom-cta__form .wpforms-container .wpforms-submit:hover,
.tdlp-bottom-cta__form .wpforms-container button[type="submit"]:hover,
.tdlp-bottom-cta__form .wpforms-container input[type="submit"]:hover,
.tdlp-bottom-cta__form button[type="submit"]:hover,
.tdlp-bottom-cta__form input[type="submit"]:hover {
	background: var(--tdlp-brand-dark) !important;
	border-color: var(--tdlp-brand-dark) !important;
	box-shadow: 0 6px 18px rgba(197, 145, 78, 0.35) !important;
}

@media (max-width: 480px) {
	.tdlp-bottom-cta__panel {
		max-width: 100%;
		padding: 1rem 1rem 1.2rem;
		margin: 0 auto;
	}

	.tdlp-bottom-cta__form .wpforms-field.wpforms-field-phone,
	.tdlp-bottom-cta__form .wpforms-field.wpforms-field-name {
		width: 100% !important;
	}
}

/* Animation scroll */
.tdlp-about .tdlp-animate,
.tdlp-bottom-cta.tdlp-animate {
	opacity: 0;
	transform: translateY(18px);
	transition: opacity 0.65s cubic-bezier(0.22, 1, 0.36, 1), transform 0.65s cubic-bezier(0.22, 1, 0.36, 1);
}

.tdlp-about .tdlp-animate--in,
.tdlp-bottom-cta.tdlp-animate--in {
	opacity: 1;
	transform: translateY(0);
}

@media (prefers-reduced-motion: reduce) {
	.tdlp-about .tdlp-animate,
	.tdlp-bottom-cta.tdlp-animate {
		opacity: 1;
		transform: none;
		transition: none;
	}
	.tdlp-btn--brand:hover,
	.tdlp-quad__link:hover,
	.tdlp-stat:hover,
	.tdlp-value-card:hover,
	.tdlp-services-card:hover {
		transform: none;
	}

	.tdlp-services-card:hover .tdlp-services-card__img {
		transform: none;
	}

	.tdlp-story-grid2__cell:hover {
		box-shadow: var(--tdlp-shadow-sm);
		border-color: var(--tdlp-border);
	}

	.tdlp-story-grid2__cell:hover .tdlp-story-grid2__img {
		transform: none;
		filter: none;
	}

	.tdlp-hero-mosaic__cell,
	.tdlp-why-bento__cell {
		transition: none;
	}

	.tdlp-hero-mosaic__cell:hover .tdlp-hero-mosaic__img,
	.tdlp-why-bento__cell:hover .tdlp-why-bento__img {
		transform: none;
		filter: none;
	}

	.tdlp-hero--design .tdlp-btn--primary:hover {
		transform: none;
	}

	.tdlp-aftercare-card {
		transition: none;
	}

	.tdlp-aftercare-card:hover {
		transform: none;
	}

	.tdlp-aftercare-card:hover .tdlp-aftercare-card__icon-ring {
		transform: none;
	}

	.tdlp-unique-card:hover .tdlp-unique-card__img {
		transform: none;
	}
}

/* —— Trang Thiết kế (giữ tương thích) —— */
.tdlp-h2 {
	font-size: clamp(1.2rem, 2.4vw, 1.65rem);
	margin: 0 0 1rem;
	font-weight: 600;
	color: var(--tdlp-text);
}

.tdlp-h3 {
	font-size: 0.82rem;
	margin: 0 0 0.45rem;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--tdlp-brand);
	font-weight: 700;
}

.tdlp-hero {
	display: grid;
	grid-template-columns: 1fr;
	gap: 2rem;
	align-items: center;
}

@media (min-width: 900px) {
	.tdlp-hero {
		grid-template-columns: 1.05fr 0.95fr;
		gap: 2.5rem;
	}
}

/* Hero Thiết kế đèn — editorial mosaic (4 ảnh, bất đối xứng) */
.tdlp-hero--design.tdlp-hero--editorial {
	display: block;
}

.tdlp-hero-editorial {
	display: grid;
	grid-template-columns: 1fr;
	gap: clamp(1.5rem, 4vw, 2.25rem);
	position: relative;
	align-items: start;
}

@media (min-width: 900px) {
	.tdlp-hero-editorial {
		grid-template-columns: minmax(0, 0.78fr) minmax(0, 1.22fr);
		gap: 1.35rem 1.65rem;
		align-items: start;
	}
}

.tdlp-hero-editorial__accent {
	display: none;
}

@media (min-width: 900px) {
	.tdlp-hero-editorial__accent {
		display: block;
		position: absolute;
		right: 0;
		top: 5%;
		width: 58%;
		height: 62%;
		max-height: 400px;
		background: linear-gradient(160deg, #f5f2ee 0%, #ebe6df 100%);
		border-radius: var(--tdlp-radius);
		z-index: 0;
		pointer-events: none;
	}
}

.tdlp-hero-editorial__copy,
.tdlp-hero-editorial__mosaic {
	position: relative;
	z-index: 1;
}

.tdlp-title--design {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.45rem;
	font-size: clamp(1.45rem, 2.8vw, 2.05rem);
	line-height: 1.18;
	font-weight: 700;
	letter-spacing: -0.02em;
	margin: 0 0 1rem;
}

.tdlp-title--design__lead {
	display: block;
	font-size: 1.06em;
	line-height: 1.15;
	letter-spacing: -0.035em;
	color: var(--tdlp-text);
}

.tdlp-title--design__accent {
	display: block;
	width: min(4.25rem, 42%);
	height: 2px;
	margin: 0.05rem 0 0.1rem;
	border-radius: 999px;
	background: linear-gradient(
		90deg,
		var(--tdlp-brand) 0%,
		rgba(197, 145, 78, 0.35) 72%,
		transparent 100%
	);
}

.tdlp-title--design__sub {
	display: block;
	max-width: 22ch;
	font-size: 0.82em;
	font-weight: 600;
	line-height: 1.38;
	letter-spacing: -0.015em;
	color: var(--tdlp-muted);
	font-style: italic;
}

.tdlp-title--design__single {
	display: block;
	padding-left: 0.85rem;
	border-left: 3px solid var(--tdlp-brand);
	border-radius: 0 3px 3px 0;
}

.tdlp-hero-editorial__copy {
	max-width: 32rem;
}

@media (min-width: 900px) {
	.tdlp-hero-editorial__copy {
		padding-right: 0.25rem;
	}
}

/* Bố cục 4 ảnh: lưới 2×2 — không span cột/hàng, tránh tràn/đè do ảnh nội tại + aspect-ratio */
.tdlp-hero-mosaic {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	grid-template-rows: minmax(0, auto) minmax(0, auto);
	grid-template-areas:
		"hero topR"
		"botR side";
	gap: clamp(0.6rem, 1.2vw, 0.85rem);
	align-items: stretch;
	align-content: start;
	width: 100%;
	min-width: 0;
	contain: layout;
}

.tdlp-hero-mosaic__cell {
	margin: 0;
	border-radius: var(--tdlp-radius);
	overflow: hidden;
	border: 1px solid var(--tdlp-border);
	background: var(--tdlp-surface);
	box-shadow: var(--tdlp-shadow-sm);
	transition: box-shadow 0.4s ease, border-color 0.35s ease;
	min-width: 0;
	min-height: 0;
	max-width: 100%;
	position: relative;
	isolation: isolate;
}

.tdlp-hero-mosaic__cell--1 {
	grid-area: hero;
	align-self: stretch;
	aspect-ratio: 4 / 5;
	max-height: min(60vh, 560px);
}

.tdlp-hero-mosaic__cell--2 {
	grid-area: topR;
	aspect-ratio: 4 / 5;
	align-self: stretch;
	max-height: min(60vh, 560px);
}

.tdlp-hero-mosaic__cell--3 {
	grid-area: botR;
	aspect-ratio: 4 / 5;
	align-self: stretch;
	max-height: min(60vh, 560px);
}

.tdlp-hero-mosaic__cell--4 {
	grid-area: side;
	align-self: stretch;
	aspect-ratio: 4 / 5;
	max-height: min(60vh, 560px);
	margin-top: 0;
}

.tdlp-hero-mosaic__img {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	transform-origin: center center;
	transition: transform 0.55s cubic-bezier(0.22, 1, 0.36, 1), filter 0.45s ease;
}

.tdlp-hero-mosaic__cell--ph {
	min-height: 100px;
	background: linear-gradient(145deg, var(--tdlp-surface) 0%, #e8e5e0 100%);
}

.tdlp-hero-mosaic__cell--1.tdlp-hero-mosaic__cell--ph {
	min-height: 200px;
}

.tdlp-hero-mosaic__cell--4.tdlp-hero-mosaic__cell--ph {
	min-height: 200px;
}

@media (hover: hover) {
	.tdlp-hero-mosaic__cell:hover,
	.tdlp-why-bento__cell:hover {
		box-shadow: var(--tdlp-shadow);
		border-color: rgba(197, 145, 78, 0.22);
	}

	.tdlp-hero-mosaic__cell:hover .tdlp-hero-mosaic__img,
	.tdlp-why-editorial__img-wrap:hover .tdlp-why-bento__img {
		transform: scale(1.045);
		filter: brightness(1.05);
	}
}

@media (max-width: 899px) {
	.tdlp-hero-mosaic {
		gap: 0.55rem;
	}

	.tdlp-hero-mosaic__cell--1,
	.tdlp-hero-mosaic__cell--2,
	.tdlp-hero-mosaic__cell--3,
	.tdlp-hero-mosaic__cell--4 {
		max-height: none;
	}
}

@media (max-width: 480px) {
	.tdlp-hero-mosaic {
		grid-template-columns: 1fr;
		grid-template-areas:
			"hero"
			"topR"
			"botR"
			"side";
	}
}

.tdlp-lead {
	margin: 0 0 1.15rem;
	color: var(--tdlp-muted);
	font-size: 1.02rem;
}

/* 3 điểm nổi bật — hero Thiết kế đèn */
.tdlp-design-points {
	counter-reset: tdlp-dp;
	list-style: none;
	margin: 0 0 1.2rem;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0.65rem;
}

.tdlp-design-points li {
	counter-increment: tdlp-dp;
	position: relative;
	margin: 0;
	padding: 0.85rem 1.1rem 0.85rem 4.2rem;
	border-radius: var(--tdlp-radius-sm);
	border: 1px solid rgba(224, 144, 54, 0.18);
	border-left: 3px solid #e09036;
	background: linear-gradient(105deg, rgba(224, 144, 54, 0.06) 0%, #fff 55%);
	box-shadow: 0 2px 12px rgba(224, 144, 54, 0.08);
	color: var(--tdlp-text);
	font-size: 0.95rem;
	font-weight: 500;
	line-height: 1.45;
	transition: border-color 0.25s ease, box-shadow 0.25s ease, background 0.25s ease, transform 0.2s ease;
}

.tdlp-design-points li::before {
	content: counter(tdlp-dp, decimal-leading-zero);
	position: absolute;
	left: 0.85rem;
	top: 50%;
	transform: translateY(-50%);
	width: 2rem;
	height: 2rem;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	background: #e09036;
	color: #fff;
	font-size: 0.72rem;
	font-weight: 800;
	letter-spacing: 0.05em;
	box-shadow: 0 3px 10px rgba(224, 144, 54, 0.45);
}

.tdlp-design-points li:hover {
	border-color: #e09036;
	border-left-color: #e09036;
	background: linear-gradient(105deg, rgba(224, 144, 54, 0.1) 0%, #fff 60%);
	box-shadow: 0 4px 20px rgba(224, 144, 54, 0.18);
	transform: translateX(3px);
}

.tdlp-btn--primary {
	background: var(--tdlp-text);
	color: #fff;
	border-color: var(--tdlp-text);
	border-radius: 999px;
	text-transform: none;
	letter-spacing: 0;
	font-size: 0.92rem;
	font-weight: 600;
}

.tdlp-btn--primary:hover {
	background: #333;
	border-color: #333;
	color: #fff;
}

.tdlp-hero--design .tdlp-btn--primary {
	background: #e09036;
	border-color: #e09036;
	border: none !important;
	color: #fff;
	box-shadow: 0 4px 14px rgba(224, 144, 54, 0.38);
}

.tdlp-hero--design .tdlp-btn--primary:hover {
	background: #d9802c;
	border-color: #d9802c;
	color: #fff;
	transform: translateY(-1px);
	border: none !important;
	box-shadow: 0 6px 20px rgba(224, 144, 54, 0.42);
}

.tdlp-btn--ghost {
	background: #fff;
	color: var(--tdlp-text);
	border-color: var(--tdlp-border);
	margin-left: 0.45rem;
	border-radius: 999px;
	text-transform: none;
	letter-spacing: 0;
	font-size: 0.92rem;
	font-weight: 600;
}

.tdlp-hero--design .tdlp-btn--ghost {
	margin-left: 0;
	border: 1px solid rgba(224, 144, 54, 0.45);
	background: #fff;
	color: var(--tdlp-text);
	box-shadow: 0 1px 3px rgba(17, 17, 17, 0.06);
}

.tdlp-hero--design .tdlp-btn--ghost:hover {
	border-color: #e09036;
	color: #c7792d;
	background: #fff;
}

.tdlp-hero-editorial__copy .tdlp-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.75rem 1rem;
	margin-top: clamp(1.5rem, 4vw, 2.5rem);
	margin-bottom: 0;
}

.tdlp-media {
	border-radius: var(--tdlp-radius);
	overflow: hidden;
	border: 1px solid var(--tdlp-border);
	background: var(--tdlp-surface);
	box-shadow: var(--tdlp-shadow-sm);
}

.tdlp-media img {
	display: block;
	width: 100%;
	height: auto;
	vertical-align: middle;
}

.tdlp-gallery-section {
	background: var(--tdlp-surface);
	border-top: 1px solid var(--tdlp-border);
	border-bottom: 1px solid var(--tdlp-border);
}

.tdlp-gallery__head {
	text-align: center;
	max-width: 42rem;
	margin: 0 auto 1.5rem;
}

.tdlp-gallery__subtitle {
	margin: 0.35rem 0 0;
	font-size: 0.95rem;
	color: var(--tdlp-muted);
}

.tdlp-gallery {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 0.65rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

@media (min-width: 520px) {
	.tdlp-gallery {
		grid-template-columns: repeat(3, 1fr);
	}
}

@media (min-width: 900px) {
	.tdlp-gallery {
		grid-template-columns: repeat(4, 1fr);
	}
}

.tdlp-gallery__item {
	border-radius: var(--tdlp-radius-sm);
	overflow: hidden;
	border: 1px solid var(--tdlp-border);
	background: #fff;
	box-shadow: var(--tdlp-shadow-sm);
	transition: transform 0.2s ease;
}

.tdlp-gallery__item:hover {
	transform: translateY(-2px);
}

.tdlp-gallery__thumb {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 1;
	object-fit: cover;
}

.tdlp-grid {
	display: grid;
	gap: 0.85rem;
}

.tdlp-grid--2 {
	grid-template-columns: 1fr;
}

@media (min-width: 700px) {
	.tdlp-grid--2 {
		grid-template-columns: repeat(2, 1fr);
	}
}

.tdlp-card {
	padding: 1.1rem;
	border-radius: var(--tdlp-radius-sm);
	border: 1px solid var(--tdlp-border);
	background: #fff;
	box-shadow: var(--tdlp-shadow-sm);
}

.tdlp-card__text {
	margin: 0;
	color: var(--tdlp-muted);
	font-size: 0.93rem;
}

/* Section “Vì sao đèn thiết kế…” — ảnh flex (1 dọc + cột 3 ngang) + 2×2 thẻ phải */
.tdlp-section--why-editorial {
	padding: 5rem 2rem;
	background: #fff;
}

/* Editorial Section Header */
.tdlp-why-editorial__head {
	margin-bottom: clamp(2rem, 5vw, 4rem);
}

.tdlp-why-editorial__topline {
	width: 100%;
	height: 1px;
	background: #ddd;
	margin-bottom: 2rem;
}

/* Editorial Grid - Scattered Layout */
.tdlp-why-editorial__grid {
	position: relative;
	display: grid;
	grid-template-columns: repeat(12, 1fr);
	gap: 1.5rem;
	padding: 1rem 0;
	max-width: 1100px;
	margin: 0 auto;
}

/* Gray background box */
.tdlp-why-editorial__bg-box {
	grid-column: 1 / 7;
	grid-row: 1 / 5;
	background: #f8f8f8;
	z-index: 0;
	border-radius: 16px; /* Also rounded */
}

/* Connector Lines */
.tdlp-why-editorial__line-h1 {
	position: absolute;
	top: 72%;
	left: 0;
	width: 100%;
	height: 1px;
	background: #f0f0f0;
	z-index: 1;
}

.tdlp-why-editorial__line-v1 {
	position: absolute;
	top: 0;
	left: 48%;
	width: 1px;
	height: 100%;
	background: #f0f0f0;
	z-index: 1;
}

/* Images & Text Blocks */
.tdlp-why-editorial__img-wrap,
.tdlp-why-editorial__text {
	position: relative;
	z-index: 2;
}

.tdlp-why-editorial__img-wrap figure {
	margin: 0;
	width: 100%;
	height: 100%;
}

.tdlp-why-editorial__img-wrap img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	border: 1px solid #e5e5e5;
	border-radius: 12px; /* Soft rounded corners */
	box-shadow: 0 4px 20px rgba(0,0,0,0.06);
	transition: transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1), box-shadow 0.6s ease, border-color 0.4s ease;
}

.tdlp-why-editorial__img-wrap:hover img {
	transform: scale(1.035);
	box-shadow: 0 15px 35px rgba(0,0,0,0.12);
	border-color: #c5914e;
}

/* Placement - Fixed Dimensions & Coordinates */

/* Text 1: Top Left */
.tdlp-why-editorial__text--1 {
	grid-column: 2 / 5;
	grid-row: 1;
	align-self: start;
	padding-top: 1.5rem;
}

/* Image 1: Top Right (Tall) */
.tdlp-why-editorial__img-wrap--1 {
	grid-column: 6 / 11;
	grid-row: 1 / 5;
	height: 580px; /* Fixed height */
}

/* Image 2: Middle Left (Vertical) - SIGNIFICANTLY ENLARGED */
.tdlp-why-editorial__img-wrap--2 {
	grid-column: 1 / 6;
	grid-row: 3 / 8;
	min-height: 520px;
	height: 100%; /* Fill full grid area so foot aligns with row 8 */
	margin-top: 1rem;
	margin-left: -1rem;
}

/* Image 3: Medium Horizontal (Middle Right) */
.tdlp-why-editorial__img-wrap--3 {
	grid-column: 6 / 10;
	grid-row: 5 / 6;
	height: 300px;
}

/* Text 2: Right of Image 3 */
.tdlp-why-editorial__text--2 {
	grid-column: 10 / 13;
	grid-row: 5;
	align-self: start;
	padding-top: 0.5rem;
}

/* Image 4: Large Horizontal (Bottom) */
.tdlp-why-editorial__img-wrap--4 {
	grid-column: 6 / 11;
	grid-row: 6 / 9;
	height: 380px; /* Fixed height */
}

/* Text 3: Bottom Left - tucked right below Image 2 */
.tdlp-why-editorial__text--3 {
	grid-column: 1 / 6;
	grid-row: 8;
	padding-top: 1.5rem;
	margin-top: 0;
	padding-left: 1rem;
}

/* Text 4: Bottom Center-Right */
.tdlp-why-editorial__text--4 {
	grid-column: 6 / 11;
	grid-row: 9;
	padding-top: 1.5rem;
}

/* Styling for editorial texts - Premium Accents */
.tdlp-why-editorial__text .tdlp-h3 {
	font-size: 1.18rem;
	font-weight: 700;
	margin: 0 0 1rem;
	color: #111;
	line-height: 1.35;
	position: relative;
	padding-left: 1.25rem;
}

.tdlp-why-editorial__text .tdlp-h3::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.25rem;
	bottom: 0.25rem;
	width: 3px;
	background: linear-gradient(to bottom, #c5914e, #e09036);
	border-radius: 2px;
}

.tdlp-why-text {
	font-size: 0.94rem;
	line-height: 1.7;
	color: #555;
	margin: 0 0 0 1.25rem;
	letter-spacing: 0.01em;
}

/* Beautiful Section Title Styling */
.tdlp-h2--why {
	font-size: clamp(1.8rem, 4vw, 2.6rem);
	font-weight: 800;
	letter-spacing: -0.04em;
	text-transform: none;
	background: linear-gradient(135deg, #111 0%, #444 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	margin-bottom: 0.5rem;
}

.tdlp-h2--why-accent {
	display: block;
	font-size: 0.9em;
	background: linear-gradient(90deg, #c5914e, #e09036);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	font-weight: 900;
	margin-top: 0.25rem;
}

/* Mobile Adjustments */
@media (max-width: 768px) {
	.tdlp-why-editorial__grid {
		display: flex;
		flex-direction: column;
		gap: 2.5rem;
	}

	.tdlp-why-editorial__bg-box,
	.tdlp-why-editorial__line-h1,
	.tdlp-why-editorial__line-v1 {
		display: none;
	}

	.tdlp-why-editorial__img-wrap,
	.tdlp-why-editorial__text {
		width: 100%;
	}
}

.tdlp-steps {
	margin: 0;
	padding-left: 1.2rem;
	color: var(--tdlp-muted);
}

/* —— Trang Design: quy trình — mái vòm 4 ảnh —— */
.tdlp-steps-wave__shell {
	background: var(--tdlp-bg);
	border-radius: var(--tdlp-radius);
	border: 1px solid var(--tdlp-border);
	box-shadow:
		0 1px 0 rgba(255, 255, 255, 0.7) inset,
		0 20px 48px rgba(17, 17, 17, 0.05);
	overflow: hidden;
}

.tdlp-steps-wave__wave {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: clamp(0.2rem, 0.8vw, 0.35rem);
	padding: clamp(0.45rem, 1.2vw, 0.65rem) clamp(0.35rem, 1.2vw, 0.55rem) 0;
	background: linear-gradient(180deg, #f4f1ec 0%, #faf9f7 55%, #ffffff 100%);
}

.tdlp-steps-wave__cell {
	margin: 0;
	position: relative;
	aspect-ratio: 4 / 5;
	border-radius: 50% 50% var(--tdlp-radius-sm) var(--tdlp-radius-sm) / 38% 38% var(--tdlp-radius-sm) var(--tdlp-radius-sm);
	border: 1px solid rgba(224, 219, 211, 0.95);
	margin-top: 0.35rem;
	box-shadow:
		0 -4px 20px rgba(0, 0, 0, 0.04),
		0 1px 0 rgba(255, 255, 255, 0.5) inset;
	overflow: hidden;
	background: var(--tdlp-surface);
	isolation: isolate;
}

.tdlp-steps-wave__cell--ph {
	background: linear-gradient(145deg, #ebe6df 0%, #d4cdc3 45%, #c4b8a8 100%);
	min-height: 0;
}

.tdlp-steps-wave__cell--ph::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(160deg, transparent 40%, rgba(197, 145, 78, 0.12) 100%);
	pointer-events: none;
}

.tdlp-steps-wave__img {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.tdlp-steps-wave__body {
	padding: clamp(1.85rem, 3.8vw, 2.65rem) clamp(1.15rem, 3.5vw, 2rem) clamp(1.5rem, 3vw, 2rem);
	max-width: 40rem;
	margin: 0 auto;
	border-top: 1px solid rgba(197, 145, 78, 0.14);
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.55) 0%, transparent 42%);
}

.tdlp-videos-page--cpt .tdlp-videos__page-head {
	border-bottom: 1px solid var(--tdlp-border);
	margin-bottom: 2.5rem;
}

.tdlp-videos-page__container {
	display: flex;
	gap: 2.5rem;
	max-width: var(--tdlp-max);
	margin: 0 auto;
	padding: 0 1.25rem 4rem;
}

.tdlp-videos-page__main {
	flex: 1;
	min-width: 0;
}

/* Sidebar Danh mục */
.tdlp-videos-sidebar {
	width: 280px;
	flex-shrink: 0;
}

.tdlp-videos-sidebar__inner {
	position: sticky;
	top: 100px;
	background: #fff;
	border: 1px solid var(--tdlp-border);
	border-radius: var(--tdlp-radius);
	padding: 1.5rem;
	box-shadow: var(--tdlp-shadow-sm);
}

.tdlp-videos-sidebar__title {
	margin: 0 0 1.25rem;
	font-size: 0.95rem;
	font-weight: 800;
	letter-spacing: 0.05em;
	color: var(--tdlp-brand-dark);
	border-bottom: 2px solid var(--tdlp-brand);
	padding-bottom: 0.5rem;
	text-transform: uppercase;
}

.tdlp-videos-sidebar__list {
	list-style: none;
	padding: 0;
	margin: 0;
}

.tdlp-videos-sidebar__item {
	margin-bottom: 0.5rem;
}

.tdlp-videos-sidebar__link {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	padding: 0.65rem 0.85rem;
	text-decoration: none;
	color: var(--tdlp-text);
	font-size: 0.92rem;
	font-weight: 600;
	border-radius: 6px;
	transition: all 0.3s ease;
}

.tdlp-videos-sidebar__link::before {
	content: '›';
	font-size: 1.2rem;
	color: var(--tdlp-brand);
	line-height: 1;
}

.tdlp-videos-sidebar__link:hover {
	background: rgba(var(--tdlp-brand-rgb), 0.06);
	color: var(--tdlp-brand-dark);
	transform: translateX(4px);
}

/* Category Sections */
.tdlp-videos--category {
	margin-bottom: 3.5rem;
	padding-bottom: 2rem;
	border-bottom: 1px solid var(--tdlp-border-light);
}

.tdlp-videos--category:last-child {
	border-bottom: none;
}

.tdlp-videos__section-title {
	font-size: 1.35rem;
	font-weight: 800;
	margin: 0 0 1.5rem;
	color: var(--tdlp-text);
	position: relative;
	display: inline-block;
}

/* Layout featured sidebar within category */
.tdlp-videos__layout {
	display: flex;
	gap: 1.5rem;
}

.tdlp-videos__main {
	flex: 1.8;
}

.tdlp-videos__sidebar {
	flex: 1;
	max-height: 500px;
	overflow-y: auto;
	padding-right: 0.5rem;
}

/* Custom Scrollbar */
.tdlp-videos__sidebar::-webkit-scrollbar {
	width: 5px;
}
.tdlp-videos__sidebar::-webkit-scrollbar-track {
	background: transparent;
}
.tdlp-videos__sidebar::-webkit-scrollbar-thumb {
	background: #ddd;
	border-radius: 10px;
}

@media (max-width: 1024px) {
	.tdlp-videos-page__container {
		flex-direction: column;
	}
	.tdlp-videos-sidebar {
		width: 100%;
		order: -1;
	}
	.tdlp-videos-sidebar__inner {
		position: static;
		margin-bottom: 2rem;
	}
	.tdlp-videos-sidebar__list {
		display: flex;
		flex-wrap: wrap;
		gap: 0.5rem;
	}
}

@media (max-width: 768px) {
	.tdlp-videos__layout {
		flex-direction: column;
	}
	.tdlp-videos__sidebar {
		max-height: none;
	}
}

.tdlp-videos__title-link {
	text-decoration: none;
	color: inherit;
	transition: color 0.3s ease;
}

.tdlp-videos__title-link:hover {
	color: var(--tdlp-brand);
}

.tdlp-videos__more-wrap {
	margin-top: 1.25rem;
}

.tdlp-videos__more {
	display: inline-flex;
	align-items: center;
	padding: 0.65rem 1.75rem;
	background: var(--tdlp-brand);
	color: #fff;
	text-decoration: none;
	font-weight: 700;
	font-size: 0.88rem;
	border-radius: 99px;
	transition: all 0.3s ease;
	box-shadow: 0 4px 15px rgba(var(--tdlp-brand-rgb), 0.2);
}

.tdlp-videos__more:hover {
	background: var(--tdlp-brand-dark);
	transform: translateY(-2px);
	box-shadow: 0 6px 20px rgba(var(--tdlp-brand-rgb), 0.3);
}

.tdlp-videos__pick-meta {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-top: 0.25rem;
}

.tdlp-videos__sidebar-more {
	font-size: 0.75rem;
	color: var(--tdlp-brand);
	text-decoration: none;
	font-weight: 700;
	padding: 0.2rem 0.5rem;
	border-radius: 4px;
	background: rgba(var(--tdlp-brand-rgb), 0.08);
	transition: all 0.2s ease;
}

.tdlp-videos__sidebar-more:hover {
	background: var(--tdlp-brand);
	color: #fff;
}
.tdlp-kicker--steps {
	font-size: 2.1rem; /* gấp 3 lần base kicker (0.7rem × 3) */
	margin-bottom: 0.6rem;
	letter-spacing: 0.12em;
}

.tdlp-design .tdlp-steps-title {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.4rem;
	font-family: inherit;
	font-size: clamp(1.28rem, 2.6vw, 1.82rem);
	font-weight: 700;
	line-height: 1.18;
	letter-spacing: -0.03em;
	margin: 0 0 1.35rem;
	color: var(--tdlp-text);
}

.tdlp-steps-title__lead {
	display: block;
	color: var(--tdlp-text);
}

.tdlp-steps-title__accent {
	display: block;
	width: min(3.5rem, 32%);
	height: 2px;
	margin: 0.15rem 0 0;
	border-radius: 999px;
	background: linear-gradient(
		90deg,
		var(--tdlp-brand) 0%,
		rgba(197, 145, 78, 0.22) 72%,
		transparent 100%
	);
}

.tdlp-steps-title__sub {
	display: block;
	max-width: 30ch;
	font-size: 0.86em;
	font-weight: 500;
	font-style: normal;
	line-height: 1.38;
	letter-spacing: -0.015em;
	color: var(--tdlp-muted);
}

.tdlp-steps-title__single {
	display: block;
	padding-left: 0;
	border-left: none;
	max-width: 34ch;
}

.tdlp-steps-title__single::after {
	content: "";
	display: block;
	width: min(3.75rem, 38%);
	height: 2px;
	margin-top: 0.65rem;
	border-radius: 999px;
	background: linear-gradient(90deg, var(--tdlp-brand), transparent);
}

.tdlp-steps--wave {
	counter-reset: tdlp-step;
	list-style: none;
	padding-left: 0;
	margin: 0;
	font-size: clamp(0.93rem, 1.15vw, 1.02rem);
	line-height: 1.62;
	color: var(--tdlp-muted);
}

.tdlp-steps--wave li {
	position: relative;
	counter-increment: tdlp-step;
	padding: 0.95rem 0 0.95rem 3.15rem;
	margin: 0;
	border-bottom: 1px solid rgba(235, 232, 227, 0.95);
}

.tdlp-steps--wave li:last-child {
	border-bottom: none;
	padding-bottom: 0;
}

.tdlp-steps--wave li::before {
	content: counter(tdlp-step, decimal-leading-zero);
	position: absolute;
	left: 0;
	top: 0.88rem;
	width: 2.1rem;
	height: 2.1rem;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: inherit;
	font-size: 0.68rem;
	font-weight: 800;
	letter-spacing: 0.02em;
	color: var(--tdlp-brand-dark);
	background: var(--tdlp-brand-soft);
	border: 1px solid rgba(197, 145, 78, 0.22);
	box-shadow: 0 1px 0 rgba(255, 255, 255, 0.65) inset;
}

@media (max-width: 640px) {
	/* Một cột — kicker, title, ảnh xếp dọc, danh sách bước */
	.tdlp-steps-wave__shell {
		display: grid;
		grid-template-columns: minmax(0, 1fr);
		grid-auto-rows: auto;
		gap: clamp(0.85rem, 2.5vw, 1.25rem);
		padding: clamp(1.25rem, 3.5vw, 1.75rem);
	}

	.tdlp-steps-wave__wave {
		display: contents;
		grid-template-columns: unset;
	}

	.tdlp-steps-wave__body {
		display: contents;
	}

	.tdlp-kicker--steps,
	.tdlp-steps-title,
	.tdlp-steps--wave,
	.tdlp-steps-wave__cell {
		grid-column: 1 / -1;
		width: 100%;
		max-width: 100%;
		min-width: 0;
	}

	.tdlp-steps-wave__cell:nth-child(1) { order: 3; }
	.tdlp-steps-wave__cell:nth-child(2) { order: 4; }
	.tdlp-steps-wave__cell:nth-child(3) { order: 6; }
	.tdlp-steps-wave__cell:nth-child(4) { order: 7; }

	.tdlp-kicker--steps { order: 1; }
	.tdlp-steps-title { order: 2; }
	.tdlp-steps--wave { order: 5; }

	.tdlp-steps-title__sub {
		max-width: none;
		font-size: 0.88em;
	}

	.tdlp-steps--wave li {
		padding-left: 2.85rem;
	}

	.tdlp-steps--wave li::before {
		width: 1.95rem;
		height: 1.95rem;
		font-size: 0.62rem;
		top: 0.95rem;
	}
}

/* —— Trang Design: Khẳng định vị thế — Độc bản (2 cột: chữ + 4 ảnh overlay) —— */
.tdlp-unique__inner {
	display: grid;
	grid-template-columns: minmax(0, 0.42fr) minmax(0, 0.58fr);
	gap: clamp(1.25rem, 3vw, 2rem);
	align-items: stretch;
	background: var(--tdlp-bg);
	border-radius: var(--tdlp-radius);
	border: 1px solid var(--tdlp-border);
	box-shadow: var(--tdlp-shadow-sm);
	overflow: hidden;
}

.tdlp-unique__copy {
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: clamp(1.75rem, 4vw, 2.5rem);
	background: linear-gradient(165deg, #f5f2ee 0%, #faf9f7 55%, #f8f6f3 100%);
	border-right: 1px solid var(--tdlp-border);
}

.tdlp-unique__kicker {
	font-size: 2.1rem;
	letter-spacing: 0.12em;
	font-weight: 700;
	text-transform: uppercase;
	color: var(--tdlp-brand);
	margin: 0 0 0.85rem;
}

.tdlp-unique__title {
	font-size: clamp(1.4rem, 2.8vw, 1.95rem);
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: -0.03em;
	margin: 0 0 1rem;
	color: var(--tdlp-text);
}

.tdlp-unique__body {
	font-size: clamp(0.95rem, 1.2vw, 1.04rem);
	line-height: 1.68;
	color: var(--tdlp-muted);
	margin: 0 0 1.5rem;
}

.tdlp-unique__cta {
	margin: 0;
}

.tdlp-unique__cta .tdlp-btn {
	background: #e09036;
	border-color: #e09036;
	color: #fff;
}

.tdlp-unique__cta .tdlp-btn:hover {
	background: #d9802c;
	border-color: #d9802c;
	color: #fff;
}

.tdlp-unique__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: clamp(0.55rem, 1.2vw, 0.85rem);
	padding: clamp(0.55rem, 1.2vw, 0.85rem);
	align-content: start;
}

.tdlp-unique-card {
	position: relative;
	border-radius: var(--tdlp-radius-sm);
	overflow: hidden;
	aspect-ratio: 4 / 5;
	isolation: isolate;
	transition: box-shadow 0.35s ease;
}

.tdlp-unique-card:hover {
	box-shadow: 0 12px 36px rgba(17, 17, 17, 0.12);
}

.tdlp-unique-card__media {
	position: absolute;
	inset: 0;
}

.tdlp-unique-card__img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	transition: transform 0.45s ease;
}

@media (hover: hover) {
	.tdlp-unique-card:hover .tdlp-unique-card__img {
		transform: scale(1.045);
	}
}

.tdlp-unique-card__ph {
	position: absolute;
	inset: 0;
	background: linear-gradient(145deg, #e0d9d0 0%, #c4b8a8 50%, #a89a88 100%);
}

.tdlp-unique-card__overlay {
	position: absolute;
	inset: auto 0 0 0;
	padding: clamp(0.85rem, 1.5vw, 1.1rem) clamp(0.75rem, 1.5vw, 1rem);
	background: linear-gradient(
		to top,
		rgba(17, 17, 17, 0.88) 0%,
		rgba(17, 17, 17, 0.55) 55%,
		transparent 100%
	);
	color: #fff;
	font-size: clamp(0.78rem, 1vw, 0.88rem);
	line-height: 1.4;
}

.tdlp-unique-card__overlay p {
	margin: 0;
	text-shadow: 0 1px 2px rgba(0, 0, 0, 0.4);
}

@media (max-width: 880px) {
	.tdlp-unique__inner {
		display: grid;
		grid-template-columns: minmax(0, 1fr);
		grid-auto-rows: auto;
		gap: clamp(0.85rem, 2.5vw, 1.25rem);
		padding: clamp(1.25rem, 3.5vw, 1.75rem);
	}

	.tdlp-unique__copy {
		display: contents;
		border-right: none;
		border-bottom: none;
		padding: 0;
	}

	.tdlp-unique__grid {
		display: contents;
	}

	.tdlp-unique__kicker,
	.tdlp-unique__title,
	.tdlp-unique__body,
	.tdlp-unique__cta,
	.tdlp-unique-card {
		grid-column: 1 / -1;
		width: 100%;
		max-width: 100%;
		min-width: 0;
	}

	.tdlp-unique-card:nth-child(1) { order: 3; }
	.tdlp-unique-card:nth-child(2) { order: 4; }
	.tdlp-unique-card:nth-child(3) { order: 6; }
	.tdlp-unique-card:nth-child(4) { order: 7; }

	.tdlp-unique__kicker { order: 1; }
	.tdlp-unique__title { order: 2; }
	.tdlp-unique__body { order: 5; }
	.tdlp-unique__cta { order: 8; }
}

@media (max-width: 520px) {
	.tdlp-unique__grid {
		grid-template-columns: 1fr;
	}

	.tdlp-unique-card {
		aspect-ratio: 16 / 10;
	}
}

/* —— Trang Design: dịch vụ hậu mãi (section band) —— */
.tdlp-band.tdlp-band--aftercare {
	position: relative;
	overflow: hidden;
	border: none;
	background: transparent;
	box-shadow: none;
}

.tdlp-band__bg {
	position: absolute;
	inset: 0;
	pointer-events: none;
	z-index: 0;
	background:
		radial-gradient(ellipse 90% 70% at 8% -10%, rgba(197, 145, 78, 0.16) 0%, transparent 52%),
		radial-gradient(ellipse 55% 45% at 100% 85%, rgba(197, 145, 78, 0.09) 0%, transparent 55%),
		linear-gradient(180deg, #fbfaf8 0%, #ffffff 42%, #faf9f7 100%);
}

.tdlp-band__inner {
	position: relative;
	z-index: 1;
}

.tdlp-kicker--band {
	margin-bottom: 0.55rem;
	letter-spacing: 0.18em;
}

.tdlp-h2.tdlp-h2--band {
	font-size: clamp(1.3rem, 2.6vw, 1.85rem);
	font-weight: 700;
	line-height: 1.18;
	letter-spacing: -0.03em;
	margin: 0 0 0.85rem;
}

.tdlp-band-title {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.4rem;
}

.tdlp-band-title__lead {
	display: block;
	color: var(--tdlp-text);
}

.tdlp-band-title__accent {
	display: block;
	width: min(3.75rem, 38%);
	height: 2px;
	margin: 0.05rem 0;
	border-radius: 999px;
	background: linear-gradient(
		90deg,
		var(--tdlp-brand) 0%,
		rgba(197, 145, 78, 0.3) 75%,
		transparent 100%
	);
}

.tdlp-band-title__sub {
	display: block;
	max-width: 26ch;
	font-size: 0.82em;
	font-weight: 600;
	font-style: italic;
	line-height: 1.38;
	letter-spacing: -0.015em;
	color: var(--tdlp-muted);
}

/* Marquee Slider above Aftercare section - Premium Gallery Upgrade */
.tdlp-marquee-container {
	position: relative;
	width: 100%;
	overflow: hidden;
	padding: 2.5rem 0; /* Giảm padding vì không còn hiệu ứng floating */
	margin-bottom: 2rem;
	background: #fff;
}

.tdlp-marquee-track {
	display: flex;
	width: max-content;
	animation: tdlp-marquee 140s linear infinite; /* Chậm hơn nữa để dễ nhìn ảnh */
	gap: 2.5rem;
	align-items: center;
	padding: 1rem 0;
}

.tdlp-marquee-track:hover {
	animation-play-state: paused;
}

.tdlp-marquee-item {
	width: 420px; /* Ảnh to hơn */
	aspect-ratio: 16 / 9;
	flex-shrink: 0;
	transition: transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.tdlp-marquee-item:hover {
	transform: scale(1.05);
	z-index: 10;
}

.tdlp-marquee-img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 12px;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
	border: 1px solid rgba(0, 0, 0, 0.03);
	transition: box-shadow 0.6s ease;
	-webkit-box-reflect: below 10px linear-gradient(to bottom, transparent 70%, rgba(255, 255, 255, 0.1));
}

.tdlp-marquee-item:hover .tdlp-marquee-img {
	box-shadow: 0 20px 50px rgba(197, 145, 78, 0.15);
}

@keyframes tdlp-marquee {
	0% { transform: translateX(0); }
	100% { transform: translateX(calc(-50% - 1.25rem)); } /* 1.25rem = half of 2.5rem gap */
}

.tdlp-band-title__single {
	display: block;
	padding-left: 0.75rem;
	border-left: 3px solid var(--tdlp-brand);
	border-radius: 0 3px 3px 0;
}

.tdlp-band__head {
	max-width: 40rem;
	margin-bottom: clamp(1.5rem, 3.5vw, 2.25rem);
}

.tdlp-band__intro--rich {
	margin: 0;
	font-size: clamp(0.98rem, 1.5vw, 1.06rem);
	line-height: 1.65;
	color: var(--tdlp-muted);
}

.tdlp-band__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: clamp(0.85rem, 2vw, 1.2rem);
	align-items: stretch;
}
.tdlp-design-process-cta {
	display: flex;
	justify-content: center;
	margin-top: -2rem; /* Kéo lên cao thêm ~30px nữa */
	padding-bottom: 4rem;
	position: relative;
	z-index: 10;
}

.tdlp-design-process-cta .tdlp-btn--primary {
	background-color: #e09036;
	color: #fff;
	border: none;
	box-shadow: 0 4px 15px rgba(224, 144, 54, 0.2);
}

.tdlp-design-process-cta .tdlp-btn--primary:hover {
	background-color: #c57e2f;
	transform: translateY(-2px);
	box-shadow: 0 6px 20px rgba(224, 144, 54, 0.3);
}

.tdlp-unique-video {
	max-width: 1100px;
	margin: 2rem auto 4rem;
	padding: 0 2rem;
}

.tdlp-unique-video__inner {
	position: relative;
	width: 100%;
	aspect-ratio: 16 / 9;
	border-radius: 16px;
	overflow: hidden;
	box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
	border: 1px solid rgba(var(--tdlp-brand-rgb), 0.1);
	background: #000;
}

.tdlp-unique-video__inner iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.tdlp-aftercare-card {
	position: relative;
	display: flex;
	flex-direction: column;
	min-height: 100%;
	padding: clamp(1.05rem, 2.2vw, 1.4rem) clamp(0.95rem, 2vw, 1.2rem);
	padding-top: 0.55rem;
	border-radius: var(--tdlp-radius);
	border: 1px solid var(--tdlp-border);
	background: linear-gradient(168deg, rgba(255, 255, 255, 0.94) 0%, rgba(250, 249, 247, 0.99) 100%);
	box-shadow:
		0 1px 0 rgba(255, 255, 255, 0.9) inset,
		var(--tdlp-shadow-sm);
	overflow: hidden;
	isolation: isolate;
	transition:
		transform 0.42s ease,
		box-shadow 0.42s ease,
		border-color 0.35s ease;
}

.tdlp-aftercare-card__shine {
	position: absolute;
	inset: -35% -25% auto auto;
	width: 65%;
	height: 65%;
	background: radial-gradient(circle at 75% 25%, rgba(197, 145, 78, 0.2) 0%, transparent 62%);
	pointer-events: none;
	opacity: 0.88;
	transition: opacity 0.4s ease;
	z-index: 0;
}

.tdlp-aftercare-card__icon {
	position: absolute;
	top: 0.75rem;
	right: 0.75rem;
	z-index: 2;
}

.tdlp-aftercare-card__icon-ring {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 46px;
	height: 46px;
	border-radius: 999px;
	background: linear-gradient(150deg, rgba(197, 145, 78, 0.11) 0%, rgba(197, 145, 78, 0.22) 100%);
	border: 1px solid rgba(197, 145, 78, 0.22);
	color: var(--tdlp-brand-dark);
	box-shadow: 0 1px 0 rgba(255, 255, 255, 0.65) inset;
	transition:
		transform 0.38s ease,
		box-shadow 0.38s ease;
}

.tdlp-aftercare-card__icon-ring svg {
	display: block;
}

.tdlp-aftercare-card__title {
	position: relative;
	z-index: 1;
	margin: 0 0 0.5rem;
	padding-right: 3.35rem;
	font-size: clamp(0.93rem, 1.45vw, 1.03rem);
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: -0.02em;
	color: var(--tdlp-text);
}

.tdlp-aftercare-card__text {
	position: relative;
	z-index: 1;
	margin: 0;
	font-size: 0.92rem;
	line-height: 1.58;
	color: var(--tdlp-muted);
}

.tdlp-aftercare-card__text--rich {
	font-size: 0.91rem;
	line-height: 1.6;
}

.tdlp-aftercare-card__image-wrap {
	position: relative;
	z-index: 1;
	margin-top: 1.25rem;
	border-radius: 10px;
	overflow: hidden;
	border: 1px solid rgba(0, 0, 0, 0.05);
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
}

.tdlp-aftercare-card__img {
	display: block;
	width: 100%;
	height: 300px;
	object-fit: cover;
	transition: transform 0.6s ease;
}

.tdlp-aftercare-card:hover .tdlp-aftercare-card__img {
	transform: scale(1.05);
}

@media (hover: hover) {
	.tdlp-aftercare-card:hover {
		transform: translateY(-4px);
		box-shadow:
			0 1px 0 rgba(255, 255, 255, 0.85) inset,
			0 14px 42px rgba(17, 17, 17, 0.09);
		border-color: rgba(197, 145, 78, 0.3);
	}

	.tdlp-aftercare-card:hover .tdlp-aftercare-card__shine {
		opacity: 1;
	}

	.tdlp-aftercare-card:hover .tdlp-aftercare-card__icon-ring {
		transform: scale(1.07);
		box-shadow:
			0 0 0 1px rgba(197, 145, 78, 0.28),
			0 6px 18px rgba(197, 145, 78, 0.14);
	}
}

.tdlp-band__actions {
	margin-top: clamp(2rem, 5vw, 3rem) !important;
	margin-right: 0;
	margin-bottom: 0;
	margin-left: 0;
	padding-top: 0.35rem;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 0.75rem;
}

/* Nút CTA dịch vụ hậu mãi — gradient nhẹ, đồng điệu với section beige */
.tdlp-band--aftercare .tdlp-band__actions .tdlp-btn--primary {
	background: #e09036 !important;
	border: 1px solid #e09036 !important;
	color: #fff;
	box-shadow:
		0 2px 12px rgba(224, 144, 54, 0.25),
		0 1px 2px rgba(0, 0, 0, 0.06),
		inset 0 1px 0 rgba(255, 255, 255, 0.15);
	letter-spacing: 0.02em;
}

.tdlp-band--aftercare .tdlp-band__actions .tdlp-btn--primary:hover {
	background: #d9802c !important;
	border-color: #d9802c !important;
	color: #fff;
	transform: translateY(-2px);
	box-shadow:
		0 6px 22px rgba(224, 144, 54, 0.32),
		0 2px 4px rgba(0, 0, 0, 0.08);
}

/* —— Responsive: mobile / tablet / touch (toàn plugin) —— */

/* Mobile: tối đa chiều ngang, tránh siết cột; chừa nhẹ bên phải nếu có nút nổi (Zalo…) */
@media (max-width: 639px) {
	.tdlp-section {
		padding-left: max(0.35rem, env(safe-area-inset-left));
		padding-right: max(0.35rem, env(safe-area-inset-right));
	}

	.tdlp-about,
	.tdlp-design {
		width: 100%;
		max-width: 100%;
		box-sizing: border-box;
		margin-left: 0;
		margin-right: 0;
		border-radius: var(--tdlp-radius-sm);
	}
}

@media (max-width: 879px) {
	.tdlp-intro {
		padding-top: clamp(1.5rem, 4vw, 2.5rem);
	}

	.tdlp-story-split {
		gap: clamp(1.25rem, 3vw, 2rem);
	}

	.tdlp-title {
		font-size: clamp(1.5rem, 5.5vw, 2.1rem);
		line-height: 1.18;
	}

	.tdlp-title--design {
		font-size: clamp(1.35rem, 4.8vw, 1.95rem);
		line-height: 1.2;
		gap: 0.4rem;
	}

	.tdlp-title--design__sub {
		max-width: none;
		font-size: 0.84em;
	}

	.tdlp-band__grid {
		grid-template-columns: 1fr;
	}

	.tdlp-band-title__sub {
		max-width: none;
	}

	.tdlp-prose--story {
		line-height: 1.7;
	}
}

@media (max-width: 639px) {
	.tdlp-values-night__inner {
		padding: clamp(1.35rem, 4vw, 2rem) clamp(1rem, 3vw, 1.35rem) 1.25rem;
	}

	.tdlp-values-night__title {
		font-size: clamp(1.35rem, 5vw, 1.85rem);
	}

	.tdlp-services__shell {
		padding: clamp(1.15rem, 3vw, 1.75rem);
	}

	.tdlp-services-card {
		padding: 0.65rem 0.65rem 0;
	}

	.tdlp-services-card__body {
		padding: 0.35rem 0.1rem 1.1rem;
		flex-wrap: wrap;
	}

	.tdlp-h2--section {
		font-size: clamp(1.2rem, 4.5vw, 1.55rem);
		margin-bottom: 1rem;
	}

	.tdlp-story-split__cta .tdlp-btn {
		width: 100%;
		justify-content: center;
		max-width: 22rem;
	}
}

/* Số liệu 3 ô: hàng dọc trên màn rất hẹp — dễ đọc hơn */
@media (max-width: 480px) {
	.tdlp-stats--3 {
		grid-template-columns: 1fr;
		gap: 0.75rem;
	}

	.tdlp-values-night .tdlp-values-night__stats.tdlp-stats {
		grid-template-columns: 1fr;
		gap: 0.85rem;
		padding: 1.15rem max(0.75rem, env(safe-area-inset-left)) 1.35rem max(0.75rem, env(safe-area-inset-right));
	}

	.tdlp-values-night__stats .tdlp-stat {
		padding: 0.75rem 0.5rem;
		border-radius: var(--tdlp-radius-sm);
		background: rgba(255, 255, 255, 0.04);
	}

	.tdlp-values-night__stats .tdlp-stat__num {
		font-size: clamp(1.75rem, 7vw, 2.15rem);
	}

	.tdlp-values-night__stats .tdlp-stat__label {
		max-width: none;
		font-size: 0.98rem;
	}

	.tdlp-value-card {
		padding: 0.95rem 0.95rem 1rem;
	}

	.tdlp-value-card__text {
		font-size: 0.9rem;
		line-height: 1.6;
	}
}

/* Thiết kế: hero & gallery gọn trên mobile */
@media (max-width: 639px) {
	.tdlp-hero {
		gap: 1.35rem;
	}

	.tdlp-gallery__head {
		margin-bottom: 1.15rem;
		padding: 0 0.25rem;
	}

	.tdlp-gallery {
		gap: 0.5rem;
	}

	.tdlp-grid--2 {
		gap: 0.75rem;
	}

	.tdlp-card {
		padding: 1rem;
	}

	.tdlp-btn--ghost {
		margin-left: 0;
		margin-top: 0;
	}

	.tdlp-actions {
		display: flex;
		flex-direction: column;
		gap: 0.6rem;
		align-items: stretch;
	}

	.tdlp-hero-editorial__copy .tdlp-actions {
		flex-direction: column;
		align-items: stretch;
		gap: 0.95rem;
	}

	.tdlp-actions .tdlp-btn {
		width: 100%;
		justify-content: center;
	}
}

/* Giảm hiệu ứng hover khi không có con trỏ chính xác */
@media (hover: none) and (pointer: coarse) {
	.tdlp-story-grid2__cell:hover .tdlp-story-grid2__img,
	.tdlp-values-night__photo:hover .tdlp-values-night__img,
	.tdlp-services-card:hover .tdlp-services-card__img,
	.tdlp-hero-mosaic__cell:hover .tdlp-hero-mosaic__img,
	.tdlp-why-bento__cell:hover .tdlp-why-bento__img {
		transform: none;
		filter: none;
	}

	.tdlp-story-grid2__cell:active .tdlp-story-grid2__img {
		transform: scale(1.02);
	}

	.tdlp-hero-mosaic__cell:active .tdlp-hero-mosaic__img,
	.tdlp-why-bento__cell:active .tdlp-why-bento__img {
		transform: scale(1.025);
		filter: brightness(1.04);
	}

	.tdlp-services-card:hover {
		transform: none;
	}

	.tdlp-aftercare-card:hover {
		transform: none;
	}

	.tdlp-aftercare-card:hover .tdlp-aftercare-card__icon-ring {
		transform: none;
	}

	.tdlp-aftercare-card:active {
		transform: scale(0.99);
	}
}

/* —— Trang Video — shortcode [td_videos] —— */
.tdlp-videos {
	font-family: inherit;
	color: var(--tdlp-text);
}

.tdlp-videos--empty {
	padding: clamp(2rem, 5vw, 3rem) 1rem;
	text-align: center;
}

.tdlp-videos__empty-msg {
	margin: 0;
	font-size: 0.95rem;
	color: var(--tdlp-muted);
	line-height: 1.55;
}

.tdlp-videos-page {
	max-width: 100%;
}

.tdlp-videos__page-head {
	display: flex;
	align-items: center;
	gap: 0.65rem;
	max-width: var(--tdlp-max);
	margin: 0 auto;
	padding: clamp(1.5rem, 4vw, 2.5rem) clamp(0.75rem, 3vw, 1.25rem) clamp(0.25rem, 1.5vw, 0.75rem);
	flex-wrap: wrap;
}

.tdlp-videos__page-title {
	margin: 0;
	font-size: clamp(1rem, 2.2vw, 1.25rem);
	font-weight: 800;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	line-height: 1.2;
	color: var(--tdlp-text);
}

.tdlp-videos-page > .tdlp-videos--category {
	margin-top: clamp(1.75rem, 4vw, 2.75rem);
}

.tdlp-videos-page > .tdlp-videos--category:first-child {
	margin-top: 0;
}

.tdlp-videos__section {
	max-width: var(--tdlp-max);
	margin: 0 auto;
	padding: clamp(1.5rem, 4vw, 2.5rem) clamp(0.75rem, 3vw, 1.25rem);
}

.tdlp-videos__head {
	display: flex;
	align-items: center;
	gap: 0.65rem;
	margin: 0 0 clamp(1.25rem, 3vw, 1.85rem);
	flex-wrap: wrap;
}

.tdlp-videos__brand-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.tdlp-videos__section-title {
	margin: 0;
	font-size: clamp(1rem, 2.2vw, 1.25rem);
	font-weight: 800;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	line-height: 1.2;
	color: var(--tdlp-text);
}

.tdlp-videos__layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: clamp(1.25rem, 3vw, 2rem);
	align-items: start;
}

/* —— Bố cục: dải ngang (player trên) —— */
.tdlp-videos__layout--stacked .tdlp-videos__sidebar {
	max-height: none;
	overflow-x: auto;
	overflow-y: hidden;
	padding-right: 0;
	padding-bottom: 0.35rem;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: thin;
}

.tdlp-videos__layout--stacked .tdlp-videos__list {
	flex-direction: row;
	flex-wrap: nowrap;
	gap: 0.75rem;
}

.tdlp-videos__layout--stacked .tdlp-videos__list > li {
	flex: 0 0 auto;
	min-width: min(260px, 78vw);
}

/* —— Bố cục: lưới thẻ —— */
.tdlp-videos__layout--grid-cards .tdlp-videos__sidebar {
	max-height: none;
	overflow: visible;
	padding-right: 0;
}

.tdlp-videos__layout--grid-cards .tdlp-videos__list {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(148px, 1fr));
	gap: 0.85rem;
}

@media (min-width: 600px) {
	.tdlp-videos__layout--grid-cards .tdlp-videos__list {
		grid-template-columns: repeat(auto-fill, minmax(168px, 1fr));
	}
}

.tdlp-videos__layout--grid-cards .tdlp-videos__pick {
	flex-direction: column;
	align-items: stretch;
	height: 100%;
}

.tdlp-videos__layout--grid-cards .tdlp-videos__pick-thumb {
	flex: none;
	width: 100%;
	max-width: 100%;
}

@media (min-width: 960px) {
	.tdlp-videos__layout:not(.tdlp-videos__layout--stacked):not(.tdlp-videos__layout--grid-cards):not(.tdlp-videos__layout--sidebar-left) {
		grid-template-columns: minmax(0, 1fr) minmax(260px, 340px);
		gap: clamp(1.5rem, 2.5vw, 2.25rem);
	}

	.tdlp-videos__layout--sidebar-left {
		grid-template-columns: minmax(260px, 340px) minmax(0, 1fr);
		gap: clamp(1.5rem, 2.5vw, 2.25rem);
		align-items: start;
	}

	.tdlp-videos__layout--sidebar-left .tdlp-videos__main {
		grid-column: 2;
		grid-row: 1;
	}

	.tdlp-videos__layout--sidebar-left .tdlp-videos__sidebar {
		grid-column: 1;
		grid-row: 1;
	}

	.tdlp-videos__layout--stacked,
	.tdlp-videos__layout--grid-cards {
		grid-template-columns: minmax(0, 1fr);
		gap: clamp(1.25rem, 3vw, 1.85rem);
	}
}

.tdlp-videos__main {
	display: flex;
	flex-direction: column;
	gap: clamp(0.85rem, 2vw, 1.15rem);
	min-width: 0;
}

@media (max-width: 959px) {
	.tdlp-videos__main {
		flex-direction: column-reverse;
	}
}

.tdlp-videos__player {
	width: 100%;
	min-width: 0;
}

.tdlp-videos__ratio {
	position: relative;
	width: 100%;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
	border-radius: var(--tdlp-radius);
	background: #0f0f0f;
	box-shadow:
		0 4px 24px rgba(17, 17, 17, 0.12),
		0 0 0 1px rgba(0, 0, 0, 0.06);
}

.tdlp-videos__iframe {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	border: 0;
	border-radius: inherit;
}

.tdlp-videos__iframe--empty {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 2rem 1.25rem;
	background: linear-gradient(145deg, #2a2a2a 0%, #1a1a1a 100%);
	color: rgba(255, 255, 255, 0.75);
	font-size: 0.95rem;
	text-align: center;
	line-height: 1.55;
}

.tdlp-videos__iframe--empty p {
	margin: 0;
}

.tdlp-videos__meta {
	min-width: 0;
}

.tdlp-videos__title--main {
	margin: 0 0 0.35rem;
	font-size: clamp(1.05rem, 2.2vw, 1.35rem);
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: -0.02em;
	color: var(--tdlp-text);
}

.tdlp-videos__date--main {
	margin: 0;
	font-size: 0.88rem;
	color: var(--tdlp-muted);
	font-weight: 500;
}

.tdlp-videos__sidebar {
	min-width: 0;
	max-height: min(70vh, 640px);
	overflow-y: auto;
	padding-right: 0.25rem;
	scrollbar-width: thin;
}

.tdlp-videos__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0.65rem;
}

.tdlp-videos__pick {
	display: flex;
	align-items: flex-start;
	gap: 0.75rem;
	width: 100%;
	margin: 0;
	padding: 0.55rem 0.6rem;
	text-align: left;
	background: var(--tdlp-surface);
	border: 1px solid var(--tdlp-border);
	border-radius: var(--tdlp-radius-sm);
	cursor: pointer;
	transition:
		border-color 0.2s ease,
		box-shadow 0.2s ease,
		background 0.2s ease;
	font: inherit;
	color: inherit;
	-webkit-tap-highlight-color: transparent;
}

.tdlp-videos__pick:hover:not(:disabled) {
	border-color: rgba(197, 145, 78, 0.45);
	box-shadow: var(--tdlp-shadow-sm);
	background: #fff;
}

.tdlp-videos__pick.is-active {
	border-color: var(--tdlp-brand);
	box-shadow: 0 0 0 1px rgba(197, 145, 78, 0.25);
	background: linear-gradient(180deg, #fff 0%, #faf8f5 100%);
}

.tdlp-videos__pick:disabled {
	opacity: 0.55;
	cursor: not-allowed;
}

.tdlp-videos__pick-thumb {
	position: relative;
	flex: 0 0 112px;
	width: 112px;
	max-width: 38%;
	border-radius: 8px;
	overflow: hidden;
	background: #111;
	aspect-ratio: 16 / 10;
}

.tdlp-videos__thumb-img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.tdlp-videos__thumb-ph {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 64px;
	background: linear-gradient(135deg, #3a3a3a, #1f1f1f);
}

.tdlp-videos__play-mini {
	position: absolute;
	inset: 0;
	margin: auto;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: rgba(255, 0, 0, 0.92);
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.35);
	pointer-events: none;
}

.tdlp-videos__play-mini::after {
	content: "";
	position: absolute;
	left: 52%;
	top: 50%;
	transform: translate(-50%, -50%);
	border-style: solid;
	border-width: 7px 0 7px 12px;
	border-color: transparent transparent transparent #fff;
}

.tdlp-videos__pick-text {
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
	min-width: 0;
	flex: 1;
}

.tdlp-videos__pick-title {
	font-size: clamp(0.82rem, 1.5vw, 0.92rem);
	font-weight: 700;
	line-height: 1.4;
	color: var(--tdlp-text);
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.tdlp-videos__pick-date {
	font-size: 0.78rem;
	color: var(--tdlp-muted);
}

@media (max-width: 959px) {
	.tdlp-videos__sidebar {
		max-height: none;
		overflow: visible;
	}

	.tdlp-videos__pick-thumb {
		flex-basis: 100px;
		width: 100px;
	}
}

/* —— Video carousel —— */
.tdlp-videos--carousel {
	margin-bottom: clamp(1.5rem, 4vw, 2.5rem);
}

.tdlp-videos__section--carousel {
	margin: 0;
}

.tdlp-videos__carousel-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	margin-bottom: 1rem;
	flex-wrap: wrap;
}

.tdlp-videos__carousel-title {
	margin: 0;
	font-size: clamp(1rem, 2.2vw, 1.2rem);
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--tdlp-text);
	line-height: 1.25;
}

.tdlp-videos__carousel-nav {
	display: inline-flex;
	gap: 0.35rem;
	flex-shrink: 0;
}

.tdlp-videos__carousel-nav-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.25rem;
	height: 2.25rem;
	margin: 0;
	padding: 0;
	border: 1px solid var(--tdlp-border);
	border-radius: 8px;
	background: var(--tdlp-surface);
	color: var(--tdlp-text);
	font-size: 1.35rem;
	line-height: 1;
	cursor: pointer;
	transition:
		border-color 0.2s ease,
		background 0.2s ease,
		color 0.2s ease;
	-webkit-tap-highlight-color: transparent;
}

.tdlp-videos__carousel-nav-btn:hover {
	border-color: rgba(197, 145, 78, 0.55);
	background: #fff;
	color: var(--tdlp-brand-dark);
}

.tdlp-videos__carousel-viewport {
	overflow-x: auto;
	overflow-y: hidden;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: thin;
	scroll-snap-type: x proximity;
}

.tdlp-videos__carousel-track {
	list-style: none;
	margin: 0;
	padding: 0 0 0.35rem;
	display: flex;
	flex-direction: row;
	gap: 1rem;
	width: max-content;
}

.tdlp-videos__carousel-item {
	flex: 0 0 min(280px, 78vw);
	max-width: min(280px, 78vw);
	scroll-snap-align: start;
}

.tdlp-videos__carousel-card {
	display: flex;
	flex-direction: column;
	gap: 0.55rem;
	height: 100%;
	text-decoration: none;
	color: inherit;
	border-radius: 12px;
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.tdlp-videos__carousel-card:hover {
	transform: translateY(-2px);
}

.tdlp-videos__carousel-thumb-wrap {
	position: relative;
	display: block;
	border-radius: 12px;
	overflow: hidden;
	aspect-ratio: 16 / 10;
	background: #111;
	box-shadow: var(--tdlp-shadow-sm);
}

.tdlp-videos__carousel-thumb-wrap .tdlp-videos__thumb-img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.tdlp-videos__carousel-play {
	position: absolute;
	inset: 0;
	margin: auto;
	width: 52px;
	height: 52px;
	border-radius: 50%;
	background: rgba(0, 0, 0, 0.45);
	border: 2px solid rgba(255, 255, 255, 0.9);
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.35);
	pointer-events: none;
}

.tdlp-videos__carousel-play::after {
	content: "";
	position: absolute;
	left: 56%;
	top: 50%;
	transform: translate(-50%, -50%);
	border-style: solid;
	border-width: 10px 0 10px 16px;
	border-color: transparent transparent transparent #fff;
}

.tdlp-videos__carousel-caption {
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
	min-width: 0;
}

.tdlp-videos__carousel-card-title {
	font-size: clamp(0.82rem, 1.4vw, 0.92rem);
	font-weight: 800;
	line-height: 1.35;
	text-transform: uppercase;
	letter-spacing: 0.02em;
	color: var(--tdlp-text);
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.tdlp-videos__carousel-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.65rem 1rem;
	font-size: 0.78rem;
	color: var(--tdlp-muted);
	font-weight: 500;
}

.tdlp-videos__carousel-meta-row {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
}

.tdlp-videos__carousel-icon {
	display: inline-block;
	width: 14px;
	height: 14px;
	flex-shrink: 0;
	opacity: 0.75;
}

.tdlp-videos__carousel-icon--clock {
	border: 1px solid currentColor;
	border-radius: 50%;
	position: relative;
}

.tdlp-videos__carousel-icon--clock::after {
	content: "";
	position: absolute;
	left: 50%;
	top: 28%;
	width: 1px;
	height: 35%;
	background: currentColor;
	transform-origin: bottom center;
	transform: translateX(-50%) rotate(0deg);
}

.tdlp-videos__carousel-icon--eye {
	border: 1.5px solid currentColor;
	border-radius: 65% 35%;
	position: relative;
}

.tdlp-videos__carousel-icon--eye::after {
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	width: 4px;
	height: 4px;
	background: currentColor;
	border-radius: 50%;
	transform: translate(-50%, -50%);
}

/* --- Trang Home: Hero High-end & Staggered Content --- */
.tdlp-home-hero {
	position: relative;
	min-height: 70vh;
	display: flex;
	align-items: center;
	padding: 4rem 2rem;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
	/* fixed: parallax trên desktop; trên mobile Safari gây nền mờ/vỡ, chồng lệch */
	background-attachment: scroll;
	color: #fff;
	overflow: hidden;
}

@media (min-width: 992px) {
	.tdlp-home-hero {
		background-attachment: fixed;
	}
}

.tdlp-home-hero__overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: radial-gradient(circle at 30% 50%, rgba(0,0,0,0.5) 0%, rgba(0,0,0,0.85) 100%);
	z-index: 1;
}

.tdlp-home-hero__deco-text {
	position: absolute;
	top: 50%;
	right: -10vw;
	transform: translateY(-50%);
	font-size: 30vw;
	font-weight: 900;
	color: #fff;
	opacity: 0.03; /* Cực mờ để làm nền */
	white-space: nowrap;
	z-index: 0;
	pointer-events: none;
	user-select: none;
}

.tdlp-home-hero__content {
	position: relative;
	z-index: 2;
	width: 100%;
	max-width: var(--tdlp-max);
	margin: 0 auto;
	padding: 0 clamp(2.5rem, 8vw, 8rem);
}

.tdlp-home-hero__kicker {
	font-size: 1.35rem; /* Tăng kích thước nhãn phụ */
	font-weight: 700;
	color: #e09036;
	text-transform: uppercase;
	letter-spacing: 0.3em;
	margin-bottom: 2rem;
}

.tdlp-home-hero__title {
	font-size: clamp(2.8rem, 7vw, 5.2rem);
	font-weight: 700;
	line-height: 1.05;
	text-transform: uppercase;
	max-width: 1100px;
	margin: 0;
	letter-spacing: -0.02em;
	font-family: inherit;
	color: #ffffff !important;
	text-shadow: 0 10px 30px rgba(0,0,0,0.8);
}

.tdlp-home-hero__desc {
	font-size: 1.25rem;
	line-height: 1.6;
	color: rgba(255,255,255,0.7);
	max-width: 600px;
	margin: 2.5rem 0 0;
	font-weight: 300;
}

.tdlp-home-hero__line {
	width: 140px;
	height: 3px;
	background: #e09036;
	margin: 3.5rem 0 0;
	box-shadow: 0 0 20px rgba(224, 144, 54, 0.4);
}

.tdlp-home-staggered {
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0;
}

.tdlp-home-item {
	position: relative;
	overflow: hidden; /* Cắt phần thanh xám thừa chèn sang section khác */
}

.tdlp-home-item .tdlp-section {
	padding-top: 2rem; /* Tăng nhẹ để thanh deco có không gian nhô lên */
	padding-bottom: 2rem;
}

.tdlp-home-item__grid {
	display: grid;
	grid-template-columns: repeat(12, 1fr);
	gap: 0; /* Triệt tiêu gap để text bám sát ảnh */
	align-items: center;
}

/* LEFT layout (Item 1, 3) - Mở rộng ảnh tối đa và thấp hơn */
.tdlp-home-item--left .tdlp-home-item__media {
	grid-column: 1 / 10;
}
.tdlp-home-item--left .tdlp-home-item__body {
	grid-column: 10 / 13;
	padding-left: 2rem; /* Sát cạnh ảnh hơn */
}

/* RIGHT layout (Item 2) - Mở rộng ảnh tối đa và thấp hơn */
.tdlp-home-item--right .tdlp-home-item__media {
	grid-column: 4 / 13;
	order: 2;
}
.tdlp-home-item--right .tdlp-home-item__body {
	grid-column: 1 / 4;
	order: 1;
	text-align: right;
	padding-right: 2rem;
}

.tdlp-home-item__img-container {
	position: relative;
	width: 100%;
	aspect-ratio: 4/3;
	max-width: 1000px; /* Cho phép nở cực rộng */
	margin: 0;
}

.tdlp-home-item--right .tdlp-home-item__img-container {
	margin-left: auto; /* Đưa container bám sát mép phải của grid */
}

.tdlp-home-item__deco {
	position: absolute;
	width: 30px; /* Làm rộng thanh xám hơn */
	height: 110%; /* Cao hơn ảnh */
	background: #f0f0f0;
	top: -5%;
	z-index: 1;
}

.tdlp-home-item--left .tdlp-home-item__deco {
	left: -15px;
}

.tdlp-home-item--right .tdlp-home-item__deco {
	right: -15px;
}

.tdlp-home-item__img {
	position: relative;
	z-index: 2;
	width: 100%;
	height: 100%;
	object-fit: cover;
	box-shadow: 0 20px 50px rgba(0,0,0,0.1);
	border-radius: 4px;
}

.tdlp-home-item__img--placeholder {
	background: #f8f8f8;
}

.tdlp-home-item__title {
	font-size: clamp(1.8rem, 3.5vw, 2.6rem);
	color: #e09036;
	font-weight: 700;
	margin-bottom: 2rem;
	line-height: 1.2;
	letter-spacing: -0.01em;
	position: relative;
	padding-bottom: 1.5rem;
}

/* Cách điệu gạch chân nhỏ dưới tiêu đề */
.tdlp-home-item__title::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 60px;
	height: 2px;
	background: #e09036;
	opacity: 0.4;
}

.tdlp-home-item--right .tdlp-home-item__title::after {
	left: auto;
	right: 0;
}

.tdlp-home-item__text {
	font-size: 1.125rem;
	color: #000; /* Đổi sang màu đen rõ nét */
	line-height: 1.75;
	font-weight: 400;
	text-align: justify; /* Căn lề đều 2 bên */
}

/* Responsive - MOBILE OPTIMIZATION */
@media (max-width: 991px) {
	/* Không dùng overflow-x: clip ở đây — dễ cắt chữ hero full-bleed */
	/* Full-bleed trong cột Avada / container hẹp — tránh viền trắng hai bên */
	.tdlp-home-hero {
		min-height: min(72vh, 520px);
		width: 100vw;
		max-width: 100vw;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		padding: 3rem max(1rem, env(safe-area-inset-left)) 3rem max(1rem, env(safe-area-inset-right));
		text-align: center;
		-webkit-background-size: cover;
		background-size: cover;
		background-position: center center;
		background-attachment: scroll;
		/* Tránh cắt chữ do kích thước/letter-spacing — chỉ ẩn tràn dọc nếu cần */
		overflow-x: visible;
		overflow-y: hidden;
	}
	.tdlp-home-hero__content {
		text-align: center;
		box-sizing: border-box;
		width: 100%;
		max-width: min(100%, 100vw - 2rem);
		margin-left: auto;
		margin-right: auto;
		padding-left: clamp(0.75rem, 4vw, 1.25rem);
		padding-right: clamp(0.75rem, 4vw, 1.25rem);
	}
	/* Typography mobile: giảm cỡ + letter-spacing để không tràn mép */
	.tdlp-home-hero__kicker {
		font-size: clamp(0.7rem, 2.4vw + 0.35rem, 0.95rem);
		letter-spacing: 0.1em;
		padding-left: 0.125rem;
		padding-right: 0.125rem;
		max-width: 100%;
		margin-left: auto;
		margin-right: auto;
	}
	.tdlp-home-hero__title {
		font-size: clamp(1.2rem, 4.2vw + 0.45rem, 2.65rem);
		line-height: 1.12;
		max-width: 100%;
		margin-left: auto;
		margin-right: auto;
		overflow-wrap: break-word;
		word-wrap: break-word;
		hyphens: manual;
	}
	.tdlp-home-hero__desc {
		font-size: clamp(0.875rem, 2.8vw + 0.2rem, 1.0625rem);
		max-width: 42rem;
		margin-left: auto;
		margin-right: auto;
		line-height: 1.65;
		overflow-wrap: break-word;
		word-wrap: break-word;
	}
	.tdlp-home-hero__line {
		margin: 2rem auto 0;
	}
	.tdlp-home-staggered {
		gap: 3rem;
		padding: 2rem 0;
	}
	.tdlp-home-item__grid {
		grid-template-columns: 1fr;
		gap: 2.5rem;
	}
	.tdlp-home-item--left .tdlp-home-item__media,
	.tdlp-home-item--left .tdlp-home-item__body,
	.tdlp-home-item--right .tdlp-home-item__media,
	.tdlp-home-item--right .tdlp-home-item__body {
		grid-column: 1 / -1;
		order: initial;
		text-align: left;
	}
	.tdlp-home-item--right .tdlp-home-item__title::after {
		right: auto;
		left: 0;
	}
	.tdlp-home-item__img-container {
		max-width: 100%;
		aspect-ratio: 16/10; /* Mobile dùng tỉ lệ ngang/vừa phải để đỡ chiếm diện tích dọc */
	}
	.tdlp-home-item__deco {
		display: none; /* Mobile ẩn thanh trang trí để tránh lệch layout */
	}
	.tdlp-home-item__title {
		font-size: 1.75rem;
		margin-bottom: 1.2rem;
	}
	.tdlp-home-item__text {
		font-size: 1.0625rem;
	}
}

@media (max-width: 480px) {
	.tdlp-home-hero {
		padding-left: max(0.75rem, env(safe-area-inset-left));
		padding-right: max(0.75rem, env(safe-area-inset-right));
	}
	.tdlp-home-hero__content {
		padding-left: clamp(0.5rem, 3.5vw, 1rem);
		padding-right: clamp(0.5rem, 3.5vw, 1rem);
	}
	.tdlp-home-hero__kicker {
		letter-spacing: 0.06em;
	}
	.tdlp-home-hero__title {
		font-size: clamp(1.05rem, 3.85vw + 0.4rem, 2.2rem);
	}
}

/* Stats & Views (v1.19.3) */
.tdlp-videos__stats-main {
	display: flex;
	align-items: center;
	gap: 1rem;
	margin: 0.5rem 0 1rem;
}

.tdlp-videos__date--main {
	font-size: 0.88rem;
	color: var(--tdlp-muted);
}

.tdlp-videos__views--main {
	font-size: 0.88rem;
	color: var(--tdlp-brand);
	font-weight: 600;
	position: relative;
	display: flex;
	align-items: center;
}

.tdlp-videos__date--main + .tdlp-videos__views--main::before {
	content: "";
	display: block;
	width: 1px;
	height: 12px;
	background: var(--tdlp-border);
	margin-right: 1rem;
}

.tdlp-videos__views--main::after {
	content: " Lượt xem";
	font-weight: 400;
	margin-left: 4px;
	font-size: 0.85em;
	opacity: 0.8;
}

.tdlp-videos__pick-views {
	font-size: 0.72rem;
	color: var(--tdlp-brand);
	font-weight: 500;
	margin-left: 0.5rem;
}

.tdlp-single-video__content {
	line-height: 1.8;
	color: var(--tdlp-text);
}

/* —— Premium UX Enhancements (v1.20.0) —— */
.tdlp-animate {
	opacity: 0;
	transform: translateY(30px);
	transition: opacity 0.8s cubic-bezier(0.2, 0.8, 0.2, 1), transform 0.8s cubic-bezier(0.2, 0.8, 0.2, 1);
}

.tdlp-animate--in {
	opacity: 1;
	transform: translateY(0);
}

/* Glassmorphism for overlays */
.tdlp-glass {
	background: rgba(255, 255, 255, 0.7);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	border: 1px solid rgba(255, 255, 255, 0.3);
}

/* Better mobile video sidebar */
@media (max-width: 768px) {
	.tdlp-videos__list {
		display: flex;
		flex-wrap: nowrap;
		overflow-x: auto;
		gap: 1rem;
		padding: 1rem 0 2rem;
		scroll-snap-type: x mandatory;
		-webkit-overflow-scrolling: touch;
	}

	.tdlp-videos__list-item {
		flex: 0 0 280px;
		scroll-snap-align: start;
	}

	.tdlp-videos__pick {
		flex-direction: column;
		align-items: flex-start;
		gap: 0.75rem;
		padding: 1rem;
		background: var(--tdlp-surface);
		border-radius: var(--tdlp-radius-sm);
	}

	.tdlp-videos__pick-thumb {
		width: 100%;
		height: 150px;
	}

	.tdlp-videos__pick-text {
		padding: 0;
	}

	.tdlp-videos__sidebar {
		margin-top: 2rem;
	}
	
	.tdlp-videos__sidebar::before {
		content: "Danh sách phát";
		display: block;
		font-weight: 700;
		font-size: 1.1rem;
		margin-bottom: 0.5rem;
		color: var(--tdlp-text);
	}
}

/* Better responsive typography */
h1, h2, h3 {
	letter-spacing: -0.02em;
}

.tdlp-btn {
	border-radius: 99px !important; /* Pill style is more modern */
}

/* Section dividers */
.tdlp-section-divider {
	height: 1px;
	background: linear-gradient(90deg, transparent, var(--tdlp-border), transparent);
	margin: 2rem 0;
}
