/* CSS Variables cho Theme Luxury */
:root {
	/* ===== MAIN PALETTE ===== */
	--bg-main: #F7F3EE;
	--bg-soft: #F3EDE5;
	--bg-section: #EFE6DA;

	/* ===== GOLD ===== */
	--gold: #D3AF79;
	--gold-hover: #C39A63;
	--gold-light: #E6CEAA;

	/* ===== TEXT ===== */
	--dark: #2F2A24;
	--text-main: #2F2A24;
	--text-soft: #7A7065;
	--gray-text: #7A7065;

	/* ===== DEEP NAVY ACCENT ===== */
	--navy: #023049;
	--navy-soft: #1A435A;
	--navy-light: #355A70;

	/* ===== LUXURY VINTAGE ===== */
	--ebony: #3A2F27;
	--glass: rgba(47, 42, 36, 0.72);

	/* ===== UI ===== */
	--gray-light: #F3EDE5;
	--radius: 8px;

	--transition: all 0.35s ease;
	--transition-smooth: all 0.55s cubic-bezier(0.4, 0, 0.2, 1);

	/* ===== TYPOGRAPHY ===== */
	--font-serif: 'Prata', serif;
	--font-sans: 'Mulish', sans-serif;

	/* @* --font-heading: 'Sora', sans-serif; *@ */

	--font-heading: 'Novante', serif;
	--font-heading2: 'Cormorant Garamond', serif;
	--font-wtm: 'Bodoni Moda', serif;
}

@font-face {
	font-family: 'Novante';
	src: url('fonts/Novante.otf') format('opentype'),
		url('fonts/Novante.ttf') format('truetype');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}


body {
	font-family: var(--font-sans);
	color: var(--text-main);
	background-color: var(--bg-main);
	overflow-x: hidden;
	font-weight: 300;

	/* luxury smoothing */
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}

h1,
h2,
h3,
h4,
h5,
h6,
.luxury-font {
	font-family: var(--font-serif);
	color: var(--text-main);
}

.lx-title {
	font-family: var(--font-heading);
	/* Giữ font chữ sang trọng [cite: 2] */
	font-size: 3rem;
	color: var(--text-main);
	/* Đổi từ --ebony sang màu chữ mới  */
	line-height: 1.2;
	font-weight: 300;
	margin-bottom: 30px;
	text-transform: uppercase;
	letter-spacing: 2px;
}

.lx-title2 {
	font-family: var(--font-heading);
	font-size: 3.3rem;
	color: var(--text-main);
	/* Dùng màu Gold mới làm điểm nhấn cho tiêu đề lớn hơn [cite: 1, 11] */
	line-height: 1.2;
	font-weight: 300;
	margin-bottom: 30px;
	text-transform: uppercase;
	letter-spacing: 2px;
}

/* ================= MOBILE (Dưới 768px) ================= */
@media (max-width: 768px) {
	.lx-title {
		font-size: 1.6rem;
		/* Thu nhỏ để vừa màn hình điện thoại */
		letter-spacing: 2px;
		/* Giảm khoảng cách chữ một chút */
		padding-left: 18px;
		/* Thu hẹp khoảng cách Stamp */
		margin-bottom: 20px;
	}

	.lx-title::before {
		height: 70%;
		/* Stamp ngắn lại một chút cho cân đối */
	}

	.lx-title2 {
		font-size: 1.8rem;
		/* Thu nhỏ tiêu đề lớn */
		letter-spacing: 1.5px;
		padding-left: 18px;
		margin-bottom: 20px;
	}

	.lx-title2::before {
		width: 3px;
		/* Stamp nhỏ lại một chút trên mobile */
		height: 3px;
	}
}

.watermark {
	position: relative;
	overflow: hidden;
}

.watermark::before {
	content: "";
	position: absolute;

	background-image: url('/templates/bds/merakiland/symbol_white.png');
	/* Ưu tiên file .svg để sắc nét khi phóng to */
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;


	width: 500px;
	height: 500px;

	/* Cực lớn */
	opacity: 0.02;
	/* Cực mờ để không làm rối chữ chính */
	top: -100px;
	left: 0px;
	line-height: 1;
	pointer-events: none;
	z-index: 0;
}


.lx-title span {
	position: relative;
	display: inline-block;
	padding-bottom: 15px;
	/* Khoảng cách từ chữ xuống thanh gạch */
}

.lx-title span::after {
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	width: 60px;
	/* Độ dài thanh gạch (có thể chỉnh thành 100% nếu muốn gạch hết) */
	height: 3px;
	background: var(--gold);
	/* Hiệu ứng mượt mà khi hiện trang */
	transition: width 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

/* Hiệu ứng hover cho sang: khi rà chuột vào thanh gạch dài ra */
.lx-title:hover span::after {
	width: 100px;
}

@media (max-width: 768px) {
	.lx-title {
		font-size: 2rem;
	}

}

.lx-section {
	padding: 120px 0;
}

.lx-badge {
	color: var(--gold);
	/* Sử dụng mã #D3AF79 mới [cite: 1] */
	font-size: 0.95rem;
	text-transform: uppercase;
	letter-spacing: 4px;
	display: block;
	margin-bottom: 10px;

	/* Gợi ý thêm để tăng chất Vintage */
	font-family: var(--font-sans);
	/* Mulish giúp phần badge trông hiện đại, dễ đọc [cite: 2] */
	font-weight: 400;
	opacity: 0.9 !important;
	/* Giảm nhẹ độ đậm để hòa hợp với nền [cite: 10] */
}

.letter-spacing-lg {
	letter-spacing: 0.2em;
}

.text-gold {
	color: var(--gold);
}

.bg-dark-section {
	background-color: var(--dark);
	color: #fff;
}

/* --- BUTTONS --- */
.btn-gold {
	background-color: var(--gold);
	color: #fff;
	padding: 12px 30px;
	border-radius: var(--radius);
	font-weight: 500;
	transition: var(--transition);
	border: none;
}

.btn-gold:hover {
	background-color: var(--gold-hover);
	color: #fff;
	transform: translateY(-2px);
	box-shadow: 0 5px 15px rgba(197, 162, 93, 0.4);
}


/* --- ABOUT --- */
.about-img {
	border-radius: var(--radius);
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
	width: 100%;
	height: 500px;
	object-fit: cover;
}


/* --- UPCOMING PROJECTS --- */
.upcoming-section {}

.upcoming-card img {
	filter: grayscale(100%) opacity(0.8);
	transition: var(--transition);
	width: 100%;
	border-radius: var(--radius);
}

.upcoming-card:hover img {
	filter: grayscale(0%) opacity(1);
}

.bg-alter {
	background-color: var(--gray-light);
}



/* --- CONTACT --- */
.form-control {
	padding: 15px;
	border-radius: var(--radius);
	border: 1px solid #ddd;
	margin-bottom: 20px;
}

.form-control:focus {
	box-shadow: none;
	border-color: var(--gold);
}


.py-100 {
	padding-top: 80px;
	padding-bottom: 80px;
}

.mt-6 {
	margin-top: 4rem;
}

.mb-6 {
	margin-bottom: 4rem;
}