/*
Theme Name: Flatsome Child
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 9.9
*/

/*************** ADD CUSTOM CSS HERE.   ***************/

/* ============================================================
   Chi tiết Dự án (single-du_an) — design/real_estate_detail_2
   Tiền tố .dad- (du-an-detail)
   ============================================================ */
:root {
	--dad-gold:   #d4af5a;
	--dad-gold-2: #e7c97a;
	--dad-cream:  #f3e9cf;
	--dad-green:  #1c4c47;
	--dad-green-d:#0f2f2b;
	--dad-text:   #2b3b38;
	--ghl-container: 1400px; /* chiều rộng tối đa của layout/shortcode */
}

/* Cuộn mượt khi bấm vào các anchor (#hinh-anh, #lien-he, dad-nav...) */
html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
}

/* Chiều cao thanh admin bar (chỉ > 0 khi đang đăng nhập). Dùng cho offset sticky/scroll. */
:root { --ghl-adminbar: 0px; }
body.admin-bar { --ghl-adminbar: 32px; }
@media screen and (max-width: 782px) {
	body.admin-bar { --ghl-adminbar: 46px; }
}

/* Trang chi tiết dự án: tắt sticky header của Flatsome, nhường chỗ cho .dad-nav. */
body.single-du_an .header-wrapper.stuck {
	position: relative !important;
	top: auto !important;
}
body.single-du_an .header-wrapper.stuck .header-bg-color { opacity: 1 !important; }

.du-an-detail { max-width: 100%; padding: 0; }
.du-an-detail .du-an-single { margin: 0; }
.dad-body {
	max-width: var(--ghl-container);
	margin: 0 auto;
	padding: 0 clamp(16px, 4vw, 32px);
}

/* ---------- Nút chung ---------- */
.dad-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 12px 26px;
	border-radius: 999px;
	font-size: 14px;
	font-weight: 800;
	letter-spacing: .6px;
	text-transform: uppercase;
	text-decoration: none;
	cursor: pointer;
	transition: transform .2s ease, background .25s ease, color .25s ease, box-shadow .25s ease;
}
.dad-btn--gold {
	background: linear-gradient(135deg, #e7c97a 0%, #d4af5a 100%);
	color: #123833;
	border: none;
	box-shadow: 0 8px 20px rgba(212, 175, 90, .35);
}
.dad-btn--gold:hover { transform: translateY(-2px); box-shadow: 0 12px 26px rgba(212, 175, 90, .5); color: #123833; }
.dad-btn--ghost {
	background: transparent;
	color: var(--dad-gold-2);
	border: 1.5px solid var(--dad-gold);
}
.dad-btn--ghost:hover { background: var(--dad-gold); color: #123833; }

/* ---------- BANNER ---------- */
.dad-hero {
	position: relative;
	display: flex;
	align-items: flex-end;
	min-height: clamp(420px, 64vh, 640px);
	padding: clamp(28px, 6vw, 64px) clamp(16px, 5vw, 72px);
	background: #163f3a center / cover no-repeat;
	overflow: hidden;
}
.dad-hero__overlay {
	position: absolute; inset: 0;
	background: linear-gradient(180deg, rgba(13,40,36,.35) 0%, rgba(13,40,36,.55) 45%, rgba(13,40,36,.92) 100%);
}
.dad-hero__inner { position: relative; z-index: 2; max-width: 760px; width: 100%; }
.dad-hero__area {
	display: inline-flex; align-items: center; gap: 6px;
	margin: 0 0 14px;
	font-size: 14px; font-weight: 600; letter-spacing: .5px;
	color: var(--dad-cream);
}
.dad-hero__area svg { width: 18px; height: 18px; color: var(--dad-gold-2); }
.dad-hero__title {
	margin: 0;
	font-size: clamp(30px, 6vw, 60px);
	font-weight: 800;
	line-height: 1.08;
	text-transform: uppercase;
	color: var(--dad-gold-2);
	text-shadow: 0 3px 16px rgba(0,0,0,.45);
}
.dad-hero__tagline {
	margin: 10px 0 0;
	font-size: clamp(15px, 2.2vw, 22px);
	font-weight: 500;
	color: var(--dad-cream);
	text-shadow: 0 2px 10px rgba(0,0,0,.5);
}
.dad-hero__stats {
	display: flex; flex-wrap: wrap; gap: clamp(16px, 4vw, 38px);
	margin: 26px 0 0; padding: 0; list-style: none;
}
.dad-hero__stat { display: flex; align-items: center; gap: 12px; }
.dad-hero__stat-icon {
	display: inline-flex; align-items: center; justify-content: center;
	width: 46px; height: 46px; flex: 0 0 auto;
	border: 1.5px solid var(--dad-gold); border-radius: 50%;
	color: var(--dad-gold-2);
}
.dad-hero__stat-icon svg { width: 24px; height: 24px; }
.dad-hero__stat-text { display: flex; flex-direction: column; line-height: 1.15; }
.dad-hero__stat-text strong { font-size: 20px; font-weight: 800; color: #fff; }
.dad-hero__stat-text small { font-size: 13px; color: var(--dad-cream); }
.dad-hero__cta {
	display: flex; flex-wrap: wrap; align-items: center; gap: 14px;
	margin-top: 28px;
}
.dad-hero__price {
	margin-right: 6px;
	font-size: clamp(18px, 3vw, 26px); font-weight: 800;
	color: var(--dad-gold-2);
}
.dad-hero__thumbs {
	position: absolute; right: clamp(16px, 5vw, 72px); bottom: clamp(20px, 5vw, 56px);
	z-index: 2; display: flex; gap: 10px; max-width: 45%;
}
.dad-hero__thumb {
	position: relative;
	width: clamp(58px, 7vw, 96px); height: clamp(44px, 5vw, 66px);
	border: 2px solid rgba(231,201,122,.7); border-radius: 8px;
	background: center / cover no-repeat #163f3a;
	transition: transform .2s ease, border-color .2s ease;
}
.dad-hero__thumb:hover { transform: translateY(-3px); border-color: var(--dad-gold-2); }
.dad-hero__thumb.is-more::after { content: ""; position: absolute; inset: 0; background: rgba(13,40,36,.65); border-radius: 6px; }
.dad-hero__thumb.is-more span {
	position: absolute; inset: 0; z-index: 1;
	display: flex; align-items: center; justify-content: center;
	font-weight: 800; color: var(--dad-gold-2);
}

/* ---------- NAV STICKY ---------- */
.dad-nav {
	position: sticky; top: var(--ghl-adminbar, 0px); z-index: 30;
	background: linear-gradient(180deg, #14403a 0%, #0f2f2b 100%);
	border-bottom: 1px solid rgba(212,175,90,.3);
	box-shadow: 0 6px 18px rgba(0,0,0,.25);
}
.dad-nav__inner {
	max-width: var(--ghl-container); margin: 0 auto;
	display: flex; gap: 4px; overflow-x: auto;
	padding: 0 clamp(8px, 3vw, 24px);
	scrollbar-width: none;
}
.dad-nav__inner::-webkit-scrollbar { display: none; }
.dad-nav__link {
	flex: 0 0 auto;
	padding: 16px 18px;
	font-size: 13px; font-weight: 700; letter-spacing: .5px; text-transform: uppercase;
	color: var(--dad-cream); text-decoration: none; white-space: nowrap;
	border-bottom: 3px solid transparent;
	transition: color .2s ease, border-color .2s ease;
}
.dad-nav__link:hover { color: var(--dad-gold-2); }
.dad-nav__link.is-active { color: var(--dad-gold-2); border-bottom-color: var(--dad-gold); }

/* ---------- SECTION chung ---------- */
.dad-sec { padding: clamp(40px, 6vw, 72px) 0; scroll-margin-top: calc(var(--ghl-adminbar, 0px) + 70px); }
.dad-sec__title {
	margin: 0 0 28px;
	font-size: clamp(22px, 3.4vw, 34px); font-weight: 800; text-transform: uppercase;
	color: var(--dad-green);
	border-left: 5px solid var(--dad-gold); padding-left: 14px;
}
.dad-sec__head { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; margin: 0 0 28px; }
.dad-sec__head .dad-sec__title { margin: 0; width: auto !important; flex: 0 1 auto; }
.dad-sec__action { flex: 0 0 auto; margin-left: auto; white-space: nowrap; }
.dad-gallery__more { display: flex; justify-content: center; margin-top: 28px; }
.dad-gallery__more .dad-btn { padding: 9px 20px; font-size: 12.5px; letter-spacing: .4px; }
.dad-sec__title--center { text-align: center; border-left: none; padding-left: 0; }
.dad-sec__title--center::after {
	content: ""; display: block; width: 70px; height: 3px;
	margin: 14px auto 0; background: var(--dad-gold); border-radius: 2px;
}

/* Section nền tối tràn viền */
.dad-sec--dark {
	position: relative;
	padding-left: clamp(16px, 4vw, 32px); padding-right: clamp(16px, 4vw, 32px);
	background: radial-gradient(120% 90% at 50% 0%, #21534c 0%, #163f3a 55%, #0f2f2b 100%);
	margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw);
}
.dad-sec--dark > * { max-width: var(--ghl-container); margin-left: auto; margin-right: auto; }
.dad-sec--dark .dad-sec__title { color: var(--dad-gold-2); }

/* ---------- TỔNG QUAN ---------- */
.dad-overview { display: grid; grid-template-columns: 1.7fr 1fr; gap: clamp(20px, 3vw, 40px); align-items: start; }
.dad-overview__img { margin: 0 0 20px; border-radius: 12px; overflow: hidden; }
.dad-overview__img img { width: 100%; height: auto; display: block; }
.dad-overview__text { color: var(--dad-text); line-height: 1.75; }
.dad-overview__text p { margin: 0 0 1em; }
.dad-overview__info {
	background: #f3f6f4; border: 1px solid #dde7e3; border-radius: 12px;
	padding: 22px 24px;
}
.dad-overview__info-title {
	margin: 0 0 14px; font-size: 18px; font-weight: 800; color: var(--dad-green);
	padding-bottom: 12px; border-bottom: 2px solid var(--dad-gold);
}
.dad-infolist { margin: 0; }
.dad-infolist__row {
	display: flex; justify-content: space-between; gap: 14px;
	padding: 9px 0; border-bottom: 1px dashed #cdd9d4;
}
.dad-infolist__row:last-child { border-bottom: none; }
.dad-infolist dt { margin: 0; color: #5d6b67; font-size: 14px; }
.dad-infolist dd { margin: 0; text-align: right; font-weight: 700; color: var(--dad-green); font-size: 14px; }

/* ---------- VỊ TRÍ ---------- */
.dad-vitri__addr {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0 0 16px;
	font-size: 16px;
	font-weight: 600;
	color: var(--dad-text);
}
.dad-vitri__addr svg { width: 20px; height: 20px; color: var(--dad-gold-2); flex: 0 0 auto; }
.dad-vitri { color: var(--dad-text); line-height: 1.7; }
.dad-vitri iframe { width: 100%; min-height: 360px; border: 0; border-radius: 12px; }

/* ---------- TIỆN ÍCH ---------- */
.dad-amenities__hero {
	margin: 0 0 28px; border-radius: 16px; overflow: hidden;
	border: 1px solid rgba(212,175,90,.35);
}
.dad-amenities__hero img { display: block; width: 100%; height: auto; }
.dad-amenities {
	display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px;
	margin: 0; padding: 0; list-style: none;
}
.dad-amenity {
	display: flex; flex-direction: column; align-items: center; text-align: center;
	gap: 10px; padding: 26px 18px;
	background: rgba(255,255,255,.04);
	border: 1px solid rgba(212,175,90,.35); border-radius: 14px;
	transition: transform .25s ease, border-color .25s ease, background .25s ease;
}
.dad-amenity:hover { transform: translateY(-5px); border-color: var(--dad-gold-2); background: rgba(255,255,255,.07); }
.dad-amenity__icon {
	display: inline-flex; align-items: center; justify-content: center;
	width: 60px; height: 60px; border-radius: 50%;
	border: 1.5px solid var(--dad-gold); color: var(--dad-gold-2);
}
.dad-amenity__icon svg { width: 30px; height: 30px; }
.dad-amenity__name { font-size: 16px; font-weight: 700; color: #fff; }
.dad-amenity__desc { font-size: 13px; color: var(--dad-cream); line-height: 1.45; }
.dad-amenities__more { margin-top: 28px; text-align: center; }
.dad-amenities__more .dad-btn { padding: 9px 20px; font-size: 12.5px; letter-spacing: .4px; }

/* ---------- MODAL TIỆN ÍCH ---------- */
.dad-modal {
	position: fixed; inset: 0; z-index: 9999;
	display: none; align-items: center; justify-content: center;
	padding: 24px;
}
.dad-modal.is-open { display: flex; }
.dad-modal__overlay { position: absolute; inset: 0; background: rgba(10,30,26,.78); backdrop-filter: blur(2px); }
.dad-modal__dialog {
	position: relative; z-index: 1;
	width: 100%; max-width: 920px; max-height: 86vh;
	display: flex; flex-direction: column;
	background: var(--dad-dark, #163b35);
	border: 1px solid rgba(212,175,90,.4); border-radius: 16px;
	box-shadow: 0 30px 80px rgba(0,0,0,.5);
	overflow: hidden;
}
.dad-modal__head {
	display: flex; align-items: center; justify-content: space-between;
	gap: 16px; padding: 20px 24px;
	border-bottom: 1px solid rgba(212,175,90,.28);
}
.dad-modal__title { margin: 0; font-size: 20px; color: var(--dad-gold-2); }
.dad-modal__close {
	flex: 0 0 auto;
	display: inline-flex; align-items: center; justify-content: center;
	box-sizing: border-box;
	width: 38px !important; height: 38px !important;
	min-width: 38px !important; min-height: 38px !important;
	max-width: 38px !important; max-height: 38px !important;
	padding: 0 !important; margin: 0 !important;
	line-height: 1 !important; font-size: 24px; color: #fff; cursor: pointer;
	background: rgba(255,255,255,.06);
	border: 1px solid rgba(212,175,90,.35); border-radius: 50% !important;
	box-shadow: none; text-shadow: none;
	transition: background .2s ease, border-color .2s ease;
}
.dad-modal__close:hover { background: rgba(255,255,255,.12); border-color: var(--dad-gold-2); color: #fff; }
.dad-modal__body { padding: 24px; overflow-y: auto; }

/* ---------- MẶT BẰNG ---------- */
.dad-floor { display: grid; grid-template-columns: 2fr 1fr; gap: clamp(20px, 3vw, 36px); align-items: start; }
.dad-floor__tabs { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 18px; }
.dad-floor__tab {
	padding: 10px 20px; border-radius: 999px; cursor: pointer;
	font-size: 13px; font-weight: 700; text-transform: uppercase; letter-spacing: .5px;
	background: #eef3f1; color: var(--dad-green); border: 1px solid #d6e0dc;
	transition: background .2s ease, color .2s ease;
}
.dad-floor__tab.is-active { background: var(--dad-green); color: var(--dad-gold-2); border-color: var(--dad-green); }
.dad-floor__panel { display: none; grid-template-columns: 1.2fr 1fr; gap: 24px; align-items: center; }
.dad-floor__panel.is-active { display: grid; }
.dad-floor__img { display: block; border: 1px solid #e1e8e5; border-radius: 12px; overflow: hidden; background: #fff; }
.dad-floor__img img { width: 100%; height: auto; display: block; }
.dad-floor__slider { position: relative; border: 1px solid #e1e8e5; border-radius: 12px; overflow: hidden; background: #fff; }
.dad-floor__track { display: flex; transition: transform .35s ease; }
.dad-floor__slide { flex: 0 0 100%; display: block; cursor: zoom-in; }
.dad-floor__slide img { width: 100%; height: auto; display: block; }
.dad-floor__arrow {
	position: absolute; top: 50%; transform: translateY(-50%); z-index: 2;
	-webkit-appearance: none; appearance: none; box-sizing: border-box;
	width: 42px; height: 42px; min-width: 0; min-height: 0; padding: 0; margin: 0;
	display: flex; align-items: center; justify-content: center;
	border: 0; border-radius: 999px; cursor: pointer;
	background: rgba(22,63,58,.55); color: #fff; line-height: 1;
	transition: background .2s ease, color .2s ease;
}
.dad-floor__arrow:hover { background: var(--dad-gold); color: #163f3a; }
.dad-floor__arrow svg { width: 24px; height: 24px; display: block; }
.dad-floor__arrow--prev { left: 10px; }
.dad-floor__arrow--next { right: 10px; }
.dad-floor__dots { position: absolute; left: 0; right: 0; bottom: 12px; z-index: 2; display: flex; justify-content: center; gap: 7px; }
.dad-floor__dot {
	-webkit-appearance: none; appearance: none; box-sizing: border-box;
	width: 10px; height: 10px; min-width: 0; min-height: 0; padding: 0; margin: 0;
	border: 0; border-radius: 50%; cursor: pointer; line-height: 0; font-size: 0; flex: 0 0 auto;
	background: rgba(255,255,255,.7); box-shadow: 0 0 0 1px rgba(0,0,0,.2);
	transition: background .2s ease, transform .2s ease;
}
.dad-floor__dot.is-active { background: var(--dad-gold); transform: scale(1.15); }
.dad-floor__name { margin: 0 0 14px; font-size: 22px; font-weight: 800; color: var(--dad-green); }
.dad-floor__specs { list-style: none; margin: 0 0 14px; padding: 0; }
.dad-floor__specs li {
	display: flex; justify-content: space-between; gap: 12px;
	padding: 9px 0; border-bottom: 1px dashed #d3ddd9;
}
.dad-floor__specs span { color: #5d6b67; }
.dad-floor__specs strong { color: var(--dad-green); }
.dad-floor__desc { color: var(--dad-text); line-height: 1.6; margin: 0; }
.dad-floor__price {
	background: radial-gradient(120% 90% at 50% 0%, #21534c 0%, #163f3a 70%);
	border: 1px solid rgba(212,175,90,.45); border-radius: 14px;
	padding: 28px 24px; text-align: center; color: var(--dad-cream);
	align-self: stretch; display: flex; flex-direction: column; justify-content: center;
}
.dad-floor__price-img {
	margin: 0 0 22px; border-radius: 12px; overflow: hidden;
	border: 1px solid rgba(212,175,90,.35);
}
.dad-floor__price-img img { width: 100%; height: 200px; object-fit: cover; display: block; }
.dad-floor__price h3 { margin: 0 0 10px; color: var(--dad-gold-2); font-size: 20px; font-weight: 800; }
.dad-floor__price p { margin: 0 0 18px; font-size: 14px; }

/* ---------- PHÂN TÍCH & VIDEO ---------- */
.dad-richtext { color: var(--dad-green); line-height: 1.75; }
.dad-richtext > :first-child { margin-top: 0; }
.dad-richtext > :last-child { margin-bottom: 0; }
.dad-richtext p { margin: 0 0 14px; }
.dad-richtext h3, .dad-richtext h4 { color: var(--dad-green); font-weight: 800; margin: 22px 0 12px; }
.dad-richtext ul, .dad-richtext ol { margin: 0 0 14px; padding-left: 22px; }
.dad-richtext li { margin-bottom: 8px; }
.dad-richtext img { max-width: 100%; height: auto; border-radius: 12px; }

/* ---------- Căn lề chuẩn WordPress (ảnh + caption) ---------- */
.aligncenter { display: block; margin-left: auto; margin-right: auto; }
img.aligncenter { display: block; margin-left: auto; margin-right: auto; }
.alignleft { float: left; margin: 0 1.5em 1em 0; }
.alignright { float: right; margin: 0 0 1em 1.5em; }
.alignnone { margin: 0; }
.wp-caption { max-width: 100%; }
.wp-caption.aligncenter { margin-left: auto; margin-right: auto; }
.wp-caption img { display: block; max-width: 100%; height: auto; margin: 0 auto; }
.wp-caption-text { font-size: 13px; line-height: 1.5; text-align: center; margin: 8px 0 0; opacity: .85; }
.dad-video__frame { position: relative; padding-top: 56.25%; border-radius: 12px; overflow: hidden; background: #000; }
.dad-video__frame iframe,
.dad-video__frame video { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.dad-video__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 20px; }
.dad-video__item {
	position: relative; display: block; padding: 0; margin: 0; cursor: pointer;
	border: 0; border-radius: 12px; overflow: hidden; background: #000;
	box-shadow: 0 8px 22px rgba(22,63,58,.16); transition: transform .25s ease, box-shadow .25s ease;
}
.dad-video__item:hover { transform: translateY(-3px); box-shadow: 0 14px 30px rgba(22,63,58,.26); }
.dad-video__thumb { display: block; padding-top: 56.25%; background: center / cover no-repeat #163f3a; }
.dad-video__thumb--empty { background: radial-gradient(120% 90% at 50% 0%, #21534c 0%, #163f3a 70%); }
.dad-video__item::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0,0,0,0) 40%, rgba(0,0,0,.55) 100%); pointer-events: none; }
.dad-video__play {
	position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);
	width: 58px; height: 58px; display: flex; align-items: center; justify-content: center;
	border-radius: 999px; background: rgba(212,175,90,.92); color: #163f3a;
	box-shadow: 0 6px 18px rgba(0,0,0,.35); transition: transform .2s ease, background .2s ease; z-index: 2;
}
.dad-video__item:hover .dad-video__play { transform: translate(-50%, -50%) scale(1.08); background: #d4af5a; }
.dad-video__play svg { margin-left: 3px; }
.dad-video__caption {
	position: absolute; left: 0; right: 0; bottom: 0; z-index: 2;
	padding: 12px 14px; text-align: left; font-size: 14px; font-weight: 700;
	color: #fff; line-height: 1.35;
}

/* Modal video thực tế */
.dad-vmodal__dialog {
	max-width: 920px; width: 92%; background: transparent; box-shadow: none;
	padding: 0; overflow: visible;
}
.dad-vmodal__frame { position: relative; padding-top: 56.25%; border-radius: 12px; overflow: hidden; background: #000; }
.dad-vmodal__frame iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.dad-vmodal__close {
	position: absolute; top: -14px; right: -10px; z-index: 3;
	width: 40px; height: 40px; border-radius: 999px; background: #fff; color: #163f3a;
	box-shadow: 0 4px 12px rgba(0,0,0,.3);
}
@media (max-width: 640px) {
	.dad-video__grid { grid-template-columns: 1fr; }
	.dad-vmodal__close { top: -46px; right: 0; }
}

/* ---------- TIẾN ĐỘ ---------- */
.dad-progress {
	display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px;
	margin: 0; padding: 0; list-style: none; counter-reset: tiendo;
}
.dad-progress__item {
	background: rgba(255,255,255,.04); border: 1px solid rgba(212,175,90,.35);
	border-radius: 14px; overflow: hidden;
}
.dad-progress__img { margin: 0; height: 150px; background: center / cover no-repeat #163f3a; }
.dad-progress__meta { display: flex; flex-direction: column; gap: 4px; padding: 16px; }
.dad-progress__time { font-size: 16px; font-weight: 800; color: var(--dad-gold-2); }
.dad-progress__desc { font-size: 13px; color: var(--dad-cream); line-height: 1.45; }

/* ---------- HÌNH ẢNH ---------- */
.dad-gallery { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.dad-gallery__item { display: block; overflow: hidden; border-radius: 10px; }
.dad-gallery__item img { width: 100%; height: 230px; object-fit: cover; transition: transform .3s ease; }
.dad-gallery__item:hover img { transform: scale(1.06); }
.dad-modal__body .dad-gallery__item img { height: 200px; }

/* ============================================================
   Archive Dự án (archive-du_an)
   ============================================================ */
.du-an-archive { max-width: 100%; padding: 0; }
.dad-arc-hero {
	position: relative;
	padding: clamp(48px, 9vw, 96px) clamp(16px, 5vw, 56px);
	text-align: center;
	background: radial-gradient(120% 100% at 50% 0%, #21534c 0%, #163f3a 55%, #0f2f2b 100%);
	overflow: hidden;
}
.dad-arc-hero::before {
	content: ""; position: absolute; inset: 16px;
	border: 1px solid rgba(212,175,90,.3); border-radius: 10px; pointer-events: none;
}
.dad-arc-hero__inner { position: relative; z-index: 1; }
.dad-arc-hero__eyebrow {
	margin: 0 0 8px; font-size: 14px; font-weight: 700; letter-spacing: 2px; text-transform: uppercase;
	color: var(--dad-gold);
}
.dad-arc-hero__title {
	margin: 0; font-size: clamp(30px, 6vw, 54px); font-weight: 800; text-transform: uppercase;
	color: var(--dad-gold-2); text-shadow: 0 3px 14px rgba(0,0,0,.4);
}
.dad-arc-hero__title::after {
	content: ""; display: block; width: 80px; height: 3px;
	margin: 16px auto 0; background: var(--dad-gold); border-radius: 2px;
}
.dad-arc-hero__sub { margin: 14px auto 0; max-width: 640px; color: var(--dad-cream); font-size: clamp(14px, 2vw, 17px); }

/* Breadcrumb đặt ngoài hero — dải nền sáng nhạt, chữ tối hợp tông */
.dad-arc-crumb {
	background: #f5f8f6;
	border-bottom: 1px solid #e2e9e6;
}
.dad-arc-crumb .ghl-breadcrumb {
	max-width: var(--ghl-container);
	margin: 0 auto;
	padding: clamp(11px, 1.6vw, 15px) clamp(16px, 4vw, 32px);
}
.dad-arc-crumb .ghl-breadcrumb li { margin-bottom: 0; color: rgba(43, 59, 56, .7); }
.dad-arc-crumb .ghl-breadcrumb li:not(:last-child)::after { color: rgba(43, 59, 56, .4); }
.dad-arc-crumb .ghl-breadcrumb a { color: rgba(43, 59, 56, .85); }
.dad-arc-crumb .ghl-breadcrumb a:hover { color: var(--dad-green); }
.dad-arc-crumb .ghl-breadcrumb li[aria-current="page"] span { color: var(--dad-text); }

/* ---------- Bộ lọc tìm kiếm dự án ---------- */
.dad-filter-wrap {
	position: relative; z-index: 3;
	max-width: var(--ghl-container); margin: clamp(20px, 4vw, 36px) auto 0;
	padding: 0 clamp(16px, 4vw, 32px);
}
.dad-filter {
	display: flex; align-items: stretch; gap: 6px;
	padding: 7px; border-radius: 14px;
	background: linear-gradient(135deg, #1e504a 0%, #143b36 100%);
	border: 1px solid rgba(212,175,90,.4);
	box-shadow: 0 18px 44px rgba(15,47,43,.28);
}
.dad-filter__field {
	position: relative; flex: 1 1 0; min-width: 0;
	display: flex; align-items: center; gap: 12px;
	padding: 10px 18px;
}
.dad-filter__field + .dad-filter__field::before {
	content: ""; position: absolute; left: -3px; top: 20%; bottom: 20%;
	width: 1px; background: rgba(212,175,90,.28);
}
.dad-filter__icon {
	flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center;
	width: 40px; height: 40px; border-radius: 10px;
	background: rgba(212,175,90,.12); color: var(--dad-gold-2);
}
.dad-filter__icon svg { width: 20px; height: 20px; }
.dad-filter__group { display: flex; flex-direction: column; gap: 2px; flex: 1 1 auto; min-width: 0; cursor: pointer; }
.dad-filter__label {
	font-size: 11px; font-weight: 700; letter-spacing: 1.2px; text-transform: uppercase;
	color: var(--dad-gold);
}
.dad-filter select.dad-filter__select {
	width: 100%; max-width: 100%; height: auto; min-height: 0;
	margin: 0 !important; padding: 2px 22px 2px 0 !important;
	border: 0 !important; outline: 0; box-shadow: none !important;
	background-color: transparent !important; cursor: pointer;
	color: #fff !important; font-size: 14px; font-weight: 600; line-height: 1.3;
	text-overflow: ellipsis; white-space: nowrap; overflow: hidden;
	-webkit-appearance: none !important; -moz-appearance: none !important; appearance: none !important;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23e7c97a' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") !important;
	background-repeat: no-repeat !important; background-position: right center !important;
}
.dad-filter select.dad-filter__select:focus { color: #fff !important; background-color: transparent !important; }
.dad-filter__select option { color: #1c2b27; }
.dad-filter__submit {
	flex: 0 0 auto; align-self: stretch;
	display: inline-flex; align-items: center; justify-content: center; gap: 9px;
	margin: 0; min-height: 56px; line-height: 1;
	padding: 0 30px; border: 0; border-radius: 10px; cursor: pointer;
	background: linear-gradient(135deg, #e7c97a, #d4af5a); color: #123833;
	font-size: 14px; font-weight: 800; text-transform: uppercase; letter-spacing: .6px;
	text-shadow: none; box-shadow: none;
	transition: filter .2s ease, transform .2s ease;
}
.dad-filter__submit svg { width: 18px; height: 18px; }
.dad-filter__submit:hover { filter: brightness(1.06); transform: translateY(-1px); }

.dad-arc-body { max-width: var(--ghl-container); margin: 0 auto; padding: clamp(36px, 6vw, 64px) clamp(16px, 4vw, 32px); }

.dad-arc-grid {
	display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(18px, 2.5vw, 30px);
}
.dad-card {
	display: flex; flex-direction: column;
	background: #fff; border: 1px solid #e2e9e6; border-radius: 16px; overflow: hidden;
	box-shadow: 0 8px 24px rgba(15,47,43,.06);
	transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.dad-card:hover { transform: translateY(-6px); box-shadow: 0 18px 40px rgba(15,47,43,.18); border-color: var(--dad-gold); }
.dad-card__media {
	position: relative; display: block; height: 220px;
	background: center / cover no-repeat #163f3a;
}
.dad-card__media::after {
	content: ""; position: absolute; inset: 0;
	background: linear-gradient(180deg, rgba(13,40,36,.05) 40%, rgba(13,40,36,.6) 100%);
}
.dad-card__area, .dad-card__price { position: absolute; z-index: 1; display: inline-flex; align-items: center; }
.dad-card__area {
	top: 14px; left: 14px; gap: 5px;
	padding: 6px 12px; border-radius: 999px;
	background: rgba(13,40,36,.7); color: var(--dad-cream);
	font-size: 12px; font-weight: 600;
}
.dad-card__area svg { width: 14px; height: 14px; color: var(--dad-gold-2); }
.dad-card__price {
	bottom: 14px; left: 14px;
	padding: 6px 14px; border-radius: 999px;
	background: linear-gradient(135deg, #e7c97a, #d4af5a); color: #123833;
	font-size: 14px; font-weight: 800;
}
.dad-card__body { display: flex; flex-direction: column; flex: 1 1 auto; padding: 20px 22px 22px; }
.dad-card__title { margin: 0 0 6px; font-size: 20px; font-weight: 800; line-height: 1.25; }
.dad-card__title a { color: var(--dad-green); text-decoration: none; }
.dad-card__title a:hover { color: var(--dad-gold); }
.dad-card__tagline { margin: 0 0 16px; color: #33433e; font-size: 14px; line-height: 1.5; }
.dark .dad-card__tagline { color: #33433e; }
.dad-card__stats {
	display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 18px;
	margin: 0 0 18px; padding: 16px 0 0; list-style: none;
	border-top: 1px dashed #d8e1dd;
}
.dad-card__stats li { display: flex; align-items: center; gap: 8px; min-width: 0; }
.dad-card__stat-icon {
	display: inline-flex; align-items: center; justify-content: center;
	width: 34px; height: 34px; flex: 0 0 auto;
	border: 1px solid var(--dad-gold); border-radius: 50%; color: var(--dad-green);
}
.dad-card__stat-icon svg { width: 18px; height: 18px; }
.dad-card__stat-text { display: flex; flex-direction: column; line-height: 1.1; min-width: 0; }
.dad-card__stat-text strong { font-size: 15px; font-weight: 800; color: var(--dad-green); overflow-wrap: anywhere; }
.dad-card__stat-text small { font-size: 11px; color: #7c8884; }
.dad-card__btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 8px;
	margin-top: auto; padding: 11px 20px; border-radius: 999px;
	background: var(--dad-green); color: var(--dad-gold-2);
	font-size: 13px; font-weight: 700; letter-spacing: .5px; text-transform: uppercase; text-decoration: none;
	transition: background .25s ease, color .25s ease;
}
.dad-card__btn svg { width: 16px; height: 16px; transition: transform .25s ease; }
.dad-card__btn:hover { background: var(--dad-gold); color: #123833; }
.dad-card__btn:hover svg { transform: translateX(4px); }

.dad-arc-empty { text-align: center; color: #5d6b67; padding: 40px 0; }
.du-an-archive .pagination, .du-an-archive .nav-pagination { margin-top: 36px; text-align: center; }

/* ============================================================
   Archive danh mục bài viết (category.php) — tiền tố .cat-
   ============================================================ */
.cat-archive { max-width: 100%; padding: 0; }
.cat-arc-grid {
	display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(18px, 2.5vw, 30px);
}
.cat-card {
	display: flex; flex-direction: column;
	background: #fff; border: 1px solid #e2e9e6; border-radius: 16px; overflow: hidden;
	box-shadow: 0 8px 24px rgba(15,47,43,.06);
	transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.cat-card:hover { transform: translateY(-6px); box-shadow: 0 18px 40px rgba(15,47,43,.18); border-color: var(--dad-gold); }
.cat-card__media {
	position: relative; display: block; aspect-ratio: 16 / 10;
	background: center / cover no-repeat #163f3a;
}
.cat-card__media::after {
	content: ""; position: absolute; inset: 0;
	background: linear-gradient(180deg, rgba(13,40,36,.04) 45%, rgba(13,40,36,.45) 100%);
}
.cat-card__body { display: flex; flex-direction: column; flex: 1 1 auto; padding: 20px 22px 22px; }
.cat-card__date {
	display: block; margin-bottom: 10px;
	font-size: 12px; font-weight: 600; letter-spacing: .5px; color: #9aa3a0;
}
.cat-card__title { margin: 0 0 12px; font-size: 19px; font-weight: 800; line-height: 1.3; }
.cat-card__title a { color: var(--dad-green); text-decoration: none; transition: color .2s ease; }
.cat-card__title a:hover { color: var(--dad-gold); }
.cat-card__excerpt { margin: 0 0 18px; color: #5d6764; font-size: 14px; line-height: 1.6; }
.cat-card__more {
	display: inline-flex; align-items: center; gap: 6px; margin-top: auto;
	font-size: 12px; font-weight: 700; letter-spacing: .6px; text-transform: uppercase;
	color: var(--dad-green); text-decoration: none;
	transition: gap .2s ease, color .2s ease;
}
.cat-card__more svg { width: 15px; height: 15px; }
.cat-card__more:hover { gap: 10px; color: var(--dad-gold); }
.cat-archive .pagination, .cat-archive .nav-pagination { margin-top: 36px; text-align: center; }

/* ============================================================
   Chi tiết bài viết (single.php) — tiền tố .ghl-single
   ============================================================ */
.ghl-single { max-width: 100%; }

/* Hero */
.ghl-single-hero {
	position: relative;
	padding: clamp(56px, 11vw, 130px) clamp(16px, 5vw, 56px);
	text-align: center;
	background: radial-gradient(120% 100% at 50% 0%, #21534c 0%, #163f3a 55%, #0f2f2b 100%);
	background-size: cover; background-position: center;
	overflow: hidden;
}
.ghl-single-hero__overlay { position: absolute; inset: 0; }
.ghl-single-hero--img .ghl-single-hero__overlay {
	background: linear-gradient(180deg, rgba(13,40,36,.55) 0%, rgba(13,40,36,.78) 100%);
}
.ghl-single-hero__inner {
	position: relative; z-index: 1;
	max-width: 860px; margin: 0 auto;
}
.ghl-single-hero__cats {
	display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-bottom: 18px;
}
.ghl-single-hero__cat {
	display: inline-block; padding: 6px 16px; border-radius: 999px;
	border: 1px solid var(--dad-gold); background: rgba(212,175,90,.14);
	color: var(--dad-gold-2); font-size: 12px; font-weight: 700;
	letter-spacing: 1px; text-transform: uppercase; text-decoration: none;
	transition: background-color .25s ease, color .25s ease;
}
.ghl-single-hero__cat:hover { background: var(--dad-gold); color: #123833; }
.ghl-single-hero__title {
	margin: 0; color: #fff; text-shadow: 0 3px 14px rgba(0,0,0,.4);
	font-size: clamp(26px, 4.6vw, 46px); font-weight: 800; line-height: 1.2;
}
.ghl-single-hero__meta {
	display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 10px;
	margin-top: 18px; color: var(--dad-cream); font-size: 14px; font-weight: 500;
}
.ghl-single-hero__dot { color: var(--dad-gold); }

/* Khối nội dung */
.ghl-single__wrap {
	max-width: 820px; margin: 0 auto;
	padding: clamp(36px, 6vw, 64px) clamp(16px, 4vw, 24px);
}
.ghl-single__content { color: #2c3a36; font-size: 17px; line-height: 1.8; }
.ghl-single__content > *:first-child { margin-top: 0; }
.ghl-single__content p { margin: 0 0 22px; }
.ghl-single__content h2 {
	margin: 40px 0 16px; color: var(--dad-green);
	font-size: clamp(22px, 3vw, 30px); font-weight: 800; line-height: 1.3;
}
.ghl-single__content h3 {
	margin: 32px 0 14px; color: var(--dad-green);
	font-size: clamp(19px, 2.4vw, 24px); font-weight: 800; line-height: 1.35;
}
.ghl-single__content h4 { margin: 26px 0 12px; color: var(--dad-green); font-size: 19px; font-weight: 700; }
.ghl-single__content a { color: #1f6f63; text-decoration: underline; text-underline-offset: 2px; }
.ghl-single__content a:hover { color: var(--dad-gold); }
.ghl-single__content img,
.ghl-single__content figure { max-width: 100%; height: auto; border-radius: 12px; }
.ghl-single__content figure { margin: 28px 0; }
.ghl-single__content figcaption { margin-top: 8px; text-align: center; font-size: 13px; color: #7c8884; }
.ghl-single__content ul,
.ghl-single__content ol { margin: 0 0 22px; padding-left: 1.4em; }
.ghl-single__content li { margin-bottom: 8px; }
.ghl-single__content blockquote {
	margin: 28px 0; padding: 6px 22px;
	border-left: 4px solid var(--dad-gold);
	background: #f5f8f6; color: #33433e; font-style: italic; border-radius: 0 10px 10px 0;
}
.ghl-single__content blockquote p:last-child { margin-bottom: 0; }

/* Mục lục bài viết (TOC) */
.ghl-toc {
	margin: 0 0 22px; padding: 12px 16px;
	background: #f5f8f6; border: 1px solid #e2e9e6;
	border-left: 4px solid var(--dad-gold); border-radius: 0 12px 12px 0;
}
.ghl-toc__head {
	display: flex; align-items: center; justify-content: space-between; gap: 12px;
	width: 100%; padding: 0; border: 0; background: none; cursor: pointer; text-align: left;
}
.ghl-toc__title {
	color: var(--dad-green); font-size: 17px; font-weight: 800; letter-spacing: .01em;
}
.ghl-toc__toggle {
	flex: none; width: 11px; height: 11px;
	border-right: 2px solid var(--dad-green); border-bottom: 2px solid var(--dad-green);
	transform: rotate(45deg); transition: transform .2s ease;
}
.ghl-toc.is-collapsed .ghl-toc__toggle { transform: rotate(-135deg); }
.ghl-toc__list {
	margin: 0; padding: 0; list-style: none; counter-reset: ghl-toc;
}
.ghl-toc.is-collapsed .ghl-toc__list { display: none; }
.ghl-toc__item { margin: 0; }
.ghl-toc__item--h2 { counter-increment: ghl-toc; }
.ghl-toc__item--h3 { margin-left: 16px; }
.ghl-toc__link {
	display: inline-block; padding: 2px 0;
	color: #2c3a36; font-size: 15px; line-height: 1.4;
	text-decoration: none; border: 0;
}
.ghl-toc__item--h2 > .ghl-toc__link { font-weight: 600; }
.ghl-toc__item--h2 > .ghl-toc__link::before {
	content: counter(ghl-toc) ". "; color: var(--dad-gold); font-weight: 700;
}
.ghl-toc__item--h3 > .ghl-toc__link { font-size: 14.5px; color: #4a5a55; }
.ghl-toc__link:hover { color: var(--dad-gold); text-decoration: underline; text-underline-offset: 2px; }
.ghl-single__content .ghl-toc__list { margin: 0; padding: 0; }
.ghl-single__content .ghl-toc__link,
.ghl-single__content .ghl-toc__link:hover { text-decoration: none; }
.ghl-single__content :is(h2, h3)[id] { scroll-margin-top: calc(var(--ghl-adminbar, 0px) + 24px); }

/* iPanorama 360 — khung panorama cao bằng phần màn hình còn lại,
   trừ admin bar (nếu đăng nhập) và thanh nav sticky .dad-nav. */
.ipnrm { height: calc(100vh - var(--ghl-adminbar, 0px) - var(--dad-nav-h, 0px)) !important; }
@media (max-width: 600px) {
	.ipnrm { height: calc(80vh - var(--ghl-adminbar, 0px) - var(--dad-nav-h, 0px)) !important; }
}

/* ---- iPanorama lightbox (theme "light") đồng bộ tông thương hiệu ---- */
/* Nền tối ngả xanh thương hiệu thay vì đen thuần + viền vàng mảnh quanh khung */
.ipnrm-theme-light.ipnrm-lightbox { background-color: rgba(15, 47, 43, .9); }
.ipnrm-theme-light.ipnrm-lightbox .ipnrm::before {
	content: ""; position: absolute; inset: 14px; z-index: 2; pointer-events: none;
	border: 1px solid rgba(212, 175, 90, .35); border-radius: 10px;
}

/* Hotspot marker tròn: nền xanh thương hiệu, viền vàng, chấm vàng */
.ipnrm-theme-light .ipnrm-markers .ipnrm-marker:not(.ipnrm-custom) .ipnrm-body {
	background: rgba(28, 76, 71, .72);
	border-color: var(--dad-gold);
	box-shadow: 0 4px 14px rgba(0, 0, 0, .35);
	transition: background .25s ease, transform .25s ease, box-shadow .25s ease;
}
.ipnrm-theme-light .ipnrm-markers .ipnrm-marker:not(.ipnrm-custom) .ipnrm-body::before { background: var(--dad-gold-2); }
.ipnrm-theme-light .ipnrm-markers .ipnrm-marker:not(.ipnrm-custom).ipnrm-link .ipnrm-body::before,
.ipnrm-theme-light .ipnrm-markers .ipnrm-marker:not(.ipnrm-custom).ipnrm-link-scene .ipnrm-body::before {
	border-top-color: var(--dad-gold-2); border-left-color: var(--dad-gold-2);
}
.ipnrm-theme-light .ipnrm-markers .ipnrm-marker:not(.ipnrm-custom):hover .ipnrm-body {
	background: var(--dad-gold); transform: scale(1.12);
	box-shadow: 0 6px 18px rgba(212, 175, 90, .5);
}
.ipnrm-theme-light .ipnrm-markers .ipnrm-marker:not(.ipnrm-custom):hover .ipnrm-body::before { background: #123833; }
.ipnrm-theme-light .ipnrm-markers .ipnrm-marker:not(.ipnrm-custom).ipnrm-link:hover .ipnrm-body::before,
.ipnrm-theme-light .ipnrm-markers .ipnrm-marker:not(.ipnrm-custom).ipnrm-link-scene:hover .ipnrm-body::before {
	border-top-color: #123833; border-left-color: #123833;
}

/* Popup/tooltip nội dung marker: bo góc + viền vàng trên + chữ tông thương hiệu */
.ipnrm-theme-light .ipnrm-tooltips .ipnrm-form,
.ipnrm-theme-light.ipnrm-lightbox .ipnrm-form {
	border-top: 3px solid var(--dad-gold);
	border-radius: 10px; color: var(--dad-text);
}
.ipnrm-theme-light .ipnrm-tooltips .ipnrm-form .ipnrm-body,
.ipnrm-theme-light.ipnrm-lightbox .ipnrm-form .ipnrm-body { color: var(--dad-text); }

.ghl-single__pages { margin: 24px 0; font-weight: 600; }
.ghl-single__pages a { margin: 0 4px; }

/* Chân bài: tag + quay lại danh mục */
.ghl-single__foot {
	display: flex; flex-wrap: wrap; align-items: center; gap: 16px;
	margin-top: 40px; padding-top: 26px; border-top: 1px solid #e2e9e6;
}
.ghl-single__tags { display: flex; flex-wrap: wrap; gap: 8px; }
.ghl-single__tags a {
	padding: 6px 14px; border-radius: 999px; background: #eef3f1;
	color: var(--dad-green); font-size: 13px; font-weight: 600; text-decoration: none;
	transition: background-color .2s ease, color .2s ease;
}
.ghl-single__tags a:hover { background: var(--dad-green); color: #fff; }
.ghl-single__back {
	display: inline-flex; align-items: center; gap: 6px; margin-left: auto;
	font-size: 12px; font-weight: 700; letter-spacing: .6px; text-transform: uppercase;
	color: var(--dad-green); text-decoration: none; transition: gap .2s ease, color .2s ease;
}
.ghl-single__back svg { width: 15px; height: 15px; }
.ghl-single__back:hover { gap: 10px; color: var(--dad-gold); }

/* Bài viết liên quan */
.ghl-related { background: #f5f8f6; border-top: 1px solid #e2e9e6; }
.ghl-related__inner {
	max-width: var(--ghl-container); margin: 0 auto;
	padding: clamp(40px, 6vw, 72px) clamp(16px, 4vw, 32px);
}
.ghl-related__title {
	margin: 0 0 30px; text-align: center; color: var(--dad-green);
	font-size: clamp(22px, 3.4vw, 34px); font-weight: 800;
	letter-spacing: 1px; text-transform: uppercase;
}

/* ---------- Shortcode Dự án nổi bật [du_an_noi_bat] ---------- */
.dad-feat { max-width: var(--ghl-container); margin: 0 auto; padding: clamp(28px, 5vw, 56px) 0; }
.dad-feat__title {
	margin: 0 0 28px; text-align: center;
	font-size: clamp(24px, 3.6vw, 38px); font-weight: 800; text-transform: uppercase;
	color: var(--dad-green);
}
.dad-feat__title::after {
	content: ""; display: block; width: 80px; height: 3px;
	margin: 14px auto 0; background: var(--dad-gold); border-radius: 2px;
}
.dark .dad-feat__title { color: #e7c97a; }
.dad-feat__grid {
	display: grid;
	grid-template-columns: repeat(var(--dad-feat-cot, 3), 1fr);
	gap: clamp(18px, 2.5vw, 30px);
}
.dad-feat__more { margin-top: 36px; text-align: center; }

/* ---------- LIÊN HỆ ---------- */
.dad-contact { display: grid; grid-template-columns: 1.3fr 1fr; gap: clamp(20px, 3vw, 40px); align-items: start; }
.dad-contact__form {
	background: rgba(255,255,255,.05); border: 1px solid rgba(212,175,90,.4);
	border-radius: 16px; padding: 28px;
}
.dad-contact__form p { margin: 0 0 18px; color: var(--dad-cream); }
.dad-contact__form input,
.dad-contact__form textarea {
	width: 100%; margin-bottom: 14px; padding: 13px 16px;
	border: 1px solid rgba(212,175,90,.4); border-radius: 10px;
	background: rgba(13,40,36,.55); color: #fff; font-size: 15px;
}
.dad-contact__form input::placeholder,
.dad-contact__form textarea::placeholder { color: rgba(243,233,207,.65); }
.dad-contact__form input:focus,
.dad-contact__form textarea:focus { outline: none; border-color: var(--dad-gold-2); }
.dad-contact__form input:-webkit-autofill,
.dad-contact__form input:-webkit-autofill:hover,
.dad-contact__form input:-webkit-autofill:focus,
.dad-contact__form input:-webkit-autofill:active {
	-webkit-text-fill-color: #fff;
	caret-color: #fff;
	-webkit-box-shadow: 0 0 0 1000px rgba(13,40,36,.55) inset;
	box-shadow: 0 0 0 1000px rgba(13,40,36,.55) inset;
	transition: background-color 9999s ease-out 0s;
}
.dad-contact__form .dad-btn { width: 100%; }
.dad-contact__info {
	background: rgba(255,255,255,.04); border: 1px solid rgba(212,175,90,.35);
	border-radius: 16px; padding: 28px;
}
.dad-contact__lines { margin-top: 18px; color: var(--dad-cream); }
.dad-contact__info .ghl-contact { color: var(--dad-cream); }


/* ===== Shortcode Hotline ===== */
.ghl-hotline {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	max-width: 100%;
	padding: 12px 20px;
	background: linear-gradient(160deg, #1c4c47 0%, #123833 100%);
	border: 2px solid #d4af5a;
	border-radius: 14px;
	box-shadow: inset 0 0 0 4px rgba(212, 175, 90, .35);
	text-decoration: none;
	line-height: 1.1;
	transition: transform .2s ease, box-shadow .2s ease;
}
.ghl-hotline:hover {
	transform: translateY(-2px);
	box-shadow: inset 0 0 0 4px rgba(212, 175, 90, .55), 0 8px 20px rgba(0, 0, 0, .25);
}
.ghl-hotline__icon {
	width: 34px;
	height: 34px;
	flex: 0 0 auto;
	color: #e7c97a;
}
.ghl-hotline__text {
	display: flex;
	flex-direction: column;
	min-width: 0;
}
.ghl-hotline__number {
	font-size: clamp(16px, 4vw, 18px);
	font-weight: 800;
	letter-spacing: 1px;
	color: #e7c97a;
	white-space: nowrap;
}
.ghl-hotline__label {
	font-size: 14px;
	font-weight: 500;
	color: #d4af5a;
}

/* --- Hotline gọn trong menu header (html_topbar_left) --- */
/* Lock kích thước + canh giữa để không bị kéo cao khi header sticky (.stuck) */
li.html_topbar_left {
	padding: 0 !important;
	align-self: center;
}
li.html_topbar_left > a.ghl-hotline,
.stuck li.html_topbar_left > a.ghl-hotline {
	gap: 8px !important;
	padding: 5px 16px !important;
	height: auto !important;
	align-self: center;
	border-width: 1px;
	border-radius: 999px;
	box-shadow: inset 0 0 0 2px rgba(212, 175, 90, .3);
	line-height: 1.1 !important;
	flex-wrap: nowrap;
}
li.html_topbar_left .ghl-hotline:hover {
	transform: none;
	box-shadow: inset 0 0 0 2px rgba(212, 175, 90, .55);
}
li.html_topbar_left .ghl-hotline__icon { width: 20px !important; height: 20px !important; }
li.html_topbar_left .ghl-hotline__text {
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	gap: 2px;
}
li.html_topbar_left .ghl-hotline__number {
	font-size: 16px;
	font-weight: 700;
	letter-spacing: .5px;
	line-height: 1.15;
}
li.html_topbar_left .ghl-hotline__label {
	font-size: 12px;
	line-height: 1.1;
	text-transform: none;
}

/* ===== Thông tin liên hệ (địa chỉ / email) ===== */
.ghl-contact {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	margin-bottom: 12px;
	text-decoration: none;
	line-height: 1.5;
	color: inherit;
}
.ghl-contact__icon {
	width: 20px;
	height: 20px;
	flex: 0 0 auto;
	margin-top: 2px;
	color: #d4af5a;
}
.ghl-contact__text {
	flex: 1 1 auto;
	min-width: 0;
	word-break: break-word;
}
.ghl-contact--email:hover .ghl-contact__text { text-decoration: underline; }

/* ===== Social icon ===== */
.ghl-social {
	display: inline-flex;
	align-items: center;
	gap: 12px;
}
.ghl-social__item {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: linear-gradient(160deg, #1c4c47 0%, #123833 100%);
	border: 2px solid #d4af5a;
	color: #e7c97a;
	transition: transform .2s ease, background .2s ease, color .2s ease;
}
.ghl-social__item svg { width: 22px; height: 22px; }
.ghl-social__item:hover {
	transform: translateY(-3px);
	background: #d4af5a;
	color: #123833;
}

/* ===== Hero Banner ([hero]) ===== */
.ghl-hero {
	position: relative;
	padding: 48px clamp(16px, 4vw, 56px) 56px;
	background:
		radial-gradient(120% 80% at 50% 0%, #21534c 0%, #163f3a 55%, #0f2f2b 100%);
	overflow: hidden;
}
.ghl-hero::before {
	content: "";
	position: absolute;
	inset: 18px;
	border: 1px solid rgba(212, 175, 90, .35);
	border-radius: 10px;
	pointer-events: none;
}

/* Head */
.ghl-hero__head { position: relative; text-align: center; margin-bottom: 36px; }
.ghl-hero .ghl-hero__title {
	margin: 0 0 10px;
	font-size: clamp(24px, 5vw, 46px);
	font-weight: 800;
	letter-spacing: 1px;
	line-height: 1.15;
	text-transform: uppercase;
	color: #e7c97a;
	text-shadow: 0 2px 12px rgba(0, 0, 0, .35);
	text-wrap: balance;
}
.ghl-hero__sub {
	margin: 0;
	font-size: clamp(14px, 2.2vw, 20px);
	font-weight: 500;
	letter-spacing: .5px;
	text-transform: uppercase;
	color: #f3e9cf;
	text-wrap: balance;
}

/* Cards row */
.ghl-hero__cards {
	position: relative;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: clamp(24px, 6vw, 80px);
	max-width: var(--ghl-container);
	margin: 0 auto 40px;
}

.ghl-hero__card {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	aspect-ratio: 1 / 1;
	padding: 40px 32px;
	border: 2px solid rgba(212, 175, 90, .65);
	border-radius: 18px;
	background-color: #1c4c47;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	overflow: hidden;
	text-decoration: none;
	box-shadow: 0 12px 30px rgba(0, 0, 0, .3);
	transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}
.ghl-hero__card:hover {
	transform: translateY(-6px);
	border-color: #e7c97a;
	box-shadow: 0 18px 40px rgba(0, 0, 0, .45);
}
/* Lớp phủ tối phần dưới ảnh cho chữ rõ */
.ghl-hero__card-overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(13, 40, 36, .55) 0%, rgba(13, 40, 36, .15) 45%, rgba(13, 40, 36, .35) 100%);
	transition: opacity .3s ease;
}
.ghl-hero__card:hover .ghl-hero__card-overlay { opacity: 0; }
.ghl-hero__card-body { position: relative; z-index: 1; }
.ghl-hero__card-title {
	display: block;
	font-size: clamp(22px, 3.2vw, 36px);
	font-weight: 800;
	line-height: 1.2;
	text-transform: uppercase;
	color: #e7c97a;
	text-shadow: 0 2px 10px rgba(0, 0, 0, .5);
}
.ghl-hero__card-sub {
	display: block;
	margin-top: 14px;
	font-size: clamp(14px, 1.8vw, 18px);
	color: #f3e9cf;
	text-shadow: 0 1px 6px rgba(0, 0, 0, .5);
}
.ghl-hero__card-btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-top: 22px;
	padding: 10px 22px;
	border: 1.5px solid #d4af5a;
	border-radius: 999px;
	background: rgba(28, 76, 71, .55);
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 1px;
	text-transform: uppercase;
	color: #e7c97a;
	transition: background .25s ease, color .25s ease;
}
.ghl-hero__card-btn svg { width: 16px; height: 16px; }
.ghl-hero__card:hover .ghl-hero__card-btn { background: #d4af5a; color: #123833; }

/* Logo vàng ở giữa */
.ghl-hero__logo {
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 2;
	transform: translate(-50%, -50%);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: clamp(70px, 9vw, 120px);
	height: clamp(70px, 9vw, 120px);
	border-radius: 50%;
	background: radial-gradient(circle, #163f3a 60%, rgba(22, 63, 58, 0) 72%);
	/* Quầng sáng vàng nhấp nháy nhẹ */
	animation: ghl-logo-halo 4s ease-in-out infinite;
}
/* Vòng ánh kim loại vàng xoay quanh logo */
.ghl-hero__logo::before {
	content: "";
	position: absolute;
	inset: -14px;
	border-radius: 50%;
	padding: 2px;
	background: conic-gradient(
		from 0deg,
		rgba(212, 175, 90, 0) 0deg,
		rgba(212, 175, 90, .35) 40deg,
		#e7c97a 80deg,
		#fff6d8 100deg,
		#d4af5a 130deg,
		rgba(212, 175, 90, .12) 200deg,
		#e7c97a 300deg,
		rgba(212, 175, 90, 0) 360deg
	);
	/* Chỉ giữ phần viền (ring) — đục rỗng phần lõi */
	-webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
	        mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
	-webkit-mask-composite: xor;
	        mask-composite: exclude;
	animation: ghl-logo-spin 5s linear infinite;
}
/* Tia sáng kim loại quét ngang qua logo */
.ghl-hero__logo::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 3;
	border-radius: 50%;
	background: linear-gradient(
		115deg,
		transparent 30%,
		rgba(255, 246, 216, .55) 46%,
		rgba(255, 255, 255, .9) 50%,
		rgba(255, 246, 216, .55) 54%,
		transparent 70%
	);
	background-size: 250% 250%;
	mix-blend-mode: screen;
	pointer-events: none;
	animation: ghl-logo-shine 4.5s ease-in-out infinite;
}
.ghl-hero__logo-svg,
.ghl-hero__logo-img {
	position: relative;
	z-index: 2;
	/* Ánh vàng tỏa quanh khối logo, nhịp nhấp nháy */
	animation: ghl-logo-glow 4s ease-in-out infinite;
}
.ghl-hero__logo-svg { width: 56%; height: 56%; color: #e7c97a; }
.ghl-hero__logo-img { width: 78%; height: 78%; object-fit: contain; }

@keyframes ghl-logo-spin {
	to { transform: rotate(360deg); }
}
@keyframes ghl-logo-shine {
	0%        { background-position: 160% 0; }
	55%, 100% { background-position: -60% 0; }
}
@keyframes ghl-logo-glow {
	0%, 100% { filter: drop-shadow(0 0 4px rgba(231, 201, 122, .45)); }
	50%      { filter: drop-shadow(0 0 13px rgba(231, 201, 122, .9)); }
}
@keyframes ghl-logo-halo {
	0%, 100% { box-shadow: 0 0 18px 2px rgba(231, 201, 122, .25); }
	50%      { box-shadow: 0 0 36px 7px rgba(231, 201, 122, .55); }
}
/* Tôn trọng người dùng tắt chuyển động */
@media (prefers-reduced-motion: reduce) {
	.ghl-hero__logo,
	.ghl-hero__logo::before,
	.ghl-hero__logo::after,
	.ghl-hero__logo-svg,
	.ghl-hero__logo-img { animation: none; }
}

/* ===== Preloader toàn trang ===== */
.ghl-preloader {
	position: fixed;
	inset: 0;
	z-index: 99999;
	display: flex;
	align-items: center;
	justify-content: center;
	background: radial-gradient(120% 90% at 50% 40%, #21534c 0%, #163f3a 55%, #0f2f2b 100%);
	transition: opacity .6s ease, visibility .6s ease;
}
.ghl-preloader.is-loaded {
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
}
/* Logo ánh kim vàng giống .ghl-hero__logo */
.ghl-preloader__logo {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: clamp(96px, 18vw, 150px);
	height: clamp(96px, 18vw, 150px);
	border-radius: 50%;
	background: radial-gradient(circle, #163f3a 60%, rgba(22, 63, 58, 0) 72%);
	animation: ghl-logo-halo 4s ease-in-out infinite;
}
/* Vòng ánh kim loại xoay (nhanh hơn — tạo cảm giác đang tải) */
.ghl-preloader__logo::before {
	content: "";
	position: absolute;
	inset: -16px;
	border-radius: 50%;
	padding: 2px;
	background: conic-gradient(
		from 0deg,
		rgba(212, 175, 90, 0) 0deg,
		rgba(212, 175, 90, .35) 40deg,
		#e7c97a 80deg,
		#fff6d8 100deg,
		#d4af5a 130deg,
		rgba(212, 175, 90, .12) 200deg,
		#e7c97a 300deg,
		rgba(212, 175, 90, 0) 360deg
	);
	-webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
	        mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
	-webkit-mask-composite: xor;
	        mask-composite: exclude;
	animation: ghl-logo-spin 2.2s linear infinite;
}
/* Tia sáng kim loại quét ngang */
.ghl-preloader__logo::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 3;
	border-radius: 50%;
	background: linear-gradient(
		115deg,
		transparent 30%,
		rgba(255, 246, 216, .55) 46%,
		rgba(255, 255, 255, .9) 50%,
		rgba(255, 246, 216, .55) 54%,
		transparent 70%
	);
	background-size: 250% 250%;
	mix-blend-mode: screen;
	pointer-events: none;
	animation: ghl-logo-shine 1.8s ease-in-out infinite;
}
@media (prefers-reduced-motion: reduce) {
	.ghl-preloader__logo,
	.ghl-preloader__logo::before,
	.ghl-preloader__logo::after { animation: none; }
}

/* Features */
.ghl-hero__features {
	position: relative;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: clamp(16px, 3vw, 40px);
	max-width: var(--ghl-container);
	margin: 0 auto;
}
.ghl-hero__feature { display: flex; align-items: center; gap: 14px; }
.ghl-hero__feature-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	flex: 0 0 auto;
	border: 1.5px solid #d4af5a;
	border-radius: 50%;
	color: #e7c97a;
}
.ghl-hero__feature-icon svg { width: 26px; height: 26px; }
.ghl-hero__feature-text { display: flex; flex-direction: column; min-width: 0; }
.ghl-hero__feature-title {
	font-size: 18px;
	font-weight: 800;
	letter-spacing: .5px;
	text-transform: uppercase;
	color: #e7c97a;
}
.ghl-hero__feature-desc { font-size: 13px; line-height: 1.4; color: #d8e3df; }

/* ===== Khối số liệu nổi bật ([stats]) ===== */
.ghl-stats {
	padding: clamp(28px, 5vw, 56px) clamp(16px, 4vw, 56px);
	background: #fff;
}
.ghl-stats__inner {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	max-width: var(--ghl-container);
	margin: 0 auto;
}
.ghl-stats__item {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: clamp(10px, 1.5vw, 18px);
	padding: 6px clamp(12px, 2vw, 20px);
}
/* Vạch ngăn vàng giữa các mục */
.ghl-stats__item + .ghl-stats__item {
	border-left: 1px solid rgba(212, 175, 90, .45);
}
.ghl-stats__icon {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: clamp(44px, 4.5vw, 60px);
	height: clamp(44px, 4.5vw, 60px);
	color: var(--dad-gold, #d4af5a);
}
.ghl-stats__icon svg { width: 100%; height: 100%; }
.ghl-stats__text { display: flex; flex-direction: column; min-width: 0; }
.ghl-stats__num {
	font-size: clamp(26px, 3.4vw, 44px);
	font-weight: 800;
	line-height: 1.05;
	letter-spacing: .5px;
	color: var(--dad-gold, #d4af5a);
}
.ghl-stats__suffix { font-weight: 800; }
.ghl-stats__label {
	margin-top: 4px;
	font-size: clamp(11px, 1.1vw, 13px);
	font-weight: 600;
	letter-spacing: .5px;
	text-transform: uppercase;
	color: #6b7c77;
}

/* ============================================================
   Vì sao chọn Gia Hưng Land Investment? (shortcode [vi_sao]) — tiền tố .ghl-visao
   ============================================================ */
.ghl-visao {
	color: #fff;
	padding: clamp(40px, 6vw, 80px) clamp(16px, 4vw, 56px);
}
.ghl-visao__inner {
	display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(0, 2fr);
	gap: clamp(28px, 4vw, 64px);
	align-items: center;
	max-width: var(--ghl-container);
	margin: 0 auto;
}

/* Cột trái: tiêu đề + mô tả + nút */
/* Specificity cao + .dark để thắng style heading của Flatsome trong section nền tối */
.ghl-visao .ghl-visao__title,
.dark .ghl-visao__title {
	margin: 0 0 18px;
	font-size: clamp(26px, 2.8vw, 40px);
	font-weight: 800;
	line-height: 1.2;
	text-transform: uppercase;
	letter-spacing: .5px;
	color: #e7c97a;
}
.ghl-visao__desc {
	margin: 0 0 26px;
	font-size: clamp(14px, 1.1vw, 16px);
	line-height: 1.8;
	color: rgba(255, 255, 255, .82);
}
.ghl-visao__btn {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	padding: 13px 28px;
	border: 1.5px solid var(--dad-gold, #d4af5a);
	border-radius: 50px;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	color: var(--dad-gold-2, #e7c97a);
	text-decoration: none;
	transition: background .25s ease, color .25s ease, transform .25s ease;
}
.ghl-visao__btn svg { width: 18px; height: 18px; transition: transform .25s ease; }
.ghl-visao__btn:hover {
	background: var(--dad-gold, #d4af5a);
	color: #123833;
	transform: translateY(-2px);
}
.ghl-visao__btn:hover svg { transform: translateX(4px); }

/* Cột phải: lưới lý do */
.ghl-visao__grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: clamp(20px, 2.5vw, 36px);
}
.ghl-visao__item {
	display: flex;
	flex-direction: column;
	gap: 14px;
}
.ghl-visao__icon {
	display: inline-flex;
	width: clamp(40px, 3.4vw, 50px);
	height: clamp(40px, 3.4vw, 50px);
	color: var(--dad-gold-2, #e7c97a);
}
.ghl-visao__icon svg { width: 100%; height: 100%; }
.ghl-visao__item-title {
	margin: 0 0 8px;
	font-size: clamp(14px, 1.1vw, 16px);
	font-weight: 700;
	letter-spacing: .5px;
	text-transform: uppercase;
	color: var(--dad-gold-2, #e7c97a);
}
.ghl-visao__item-desc {
	margin: 0;
	font-size: clamp(13px, 1vw, 14px);
	line-height: 1.7;
	color: rgba(255, 255, 255, .78);
}

/* ---------- Chi tiết Dự án: tablet ---------- */
@media only screen and (max-width: 64em) {
	.dad-overview,
	.dad-floor,
	.dad-contact { grid-template-columns: 1fr; }
	.dad-amenities { grid-template-columns: repeat(2, 1fr); }
	.dad-progress { grid-template-columns: repeat(2, 1fr); }
	.dad-hero__thumbs { position: static; max-width: 100%; margin-top: 22px; }
	.dad-arc-grid,
	.cat-arc-grid,
	.dad-feat__grid { grid-template-columns: repeat(2, 1fr); }

	/* Bộ lọc: select co lại, đẩy nút tìm kiếm xuống full-width */
	.dad-filter { flex-wrap: wrap; }
	.dad-filter__field { flex: 1 1 40%; }
	.dad-filter__submit { flex: 1 1 100%; padding: 14px 30px; margin-top: 2px; }

	/* Vì sao: tiêu đề lên trên, lưới lý do 2 cột */
	.ghl-visao__inner { grid-template-columns: 1fr; gap: 36px; }
	.ghl-visao__grid { grid-template-columns: repeat(2, 1fr); }
}

@media only screen and (max-width: 48em) {
/*************** ADD MOBILE ONLY CSS HERE  ***************/

	.dad-gallery { grid-template-columns: repeat(2, 1fr); }
	.dad-gallery__item img { height: 160px; }

	/* Chi tiết dự án mobile — banner */
	.dad-hero {
		min-height: clamp(360px, 78vh, 520px);
		padding: 28px 18px 30px;
		flex-direction: column;
		align-items: stretch;
		justify-content: flex-end;
	}
	.dad-hero__inner { max-width: 100%; width: 100%; }
	.dad-hero__area { margin-bottom: 10px; font-size: 13px; }
	.dad-hero__title { font-size: clamp(26px, 8vw, 38px); }
	.dad-hero__tagline { margin-top: 8px; font-size: 15px; }
	/* Thông số: lưới 2 cột để không tràn ngang */
	.dad-hero__stats {
		display: grid; grid-template-columns: 1fr 1fr;
		gap: 14px 12px; margin-top: 20px;
	}
	.dad-hero__stat { gap: 10px; min-width: 0; }
	.dad-hero__stat-icon { width: 40px; height: 40px; }
	.dad-hero__stat-icon svg { width: 20px; height: 20px; }
	.dad-hero__stat-text { min-width: 0; }
	.dad-hero__stat-text strong { font-size: 16px; }
	.dad-hero__stat-text small { font-size: 12px; }
	/* CTA: giá riêng 1 dòng, 2 nút chia đều full-width */
	.dad-hero__cta { gap: 10px; margin-top: 22px; }
	.dad-hero__price { width: 100%; margin: 0 0 4px; }
	.dad-hero__cta .dad-btn {
		flex: 1 1 0; min-width: 0; padding: 12px 16px;
		font-size: 13px; letter-spacing: .4px;
	}
	/* Thumbnail: xuống dòng (wrap) trên mobile */
	.dad-hero__thumbs {
		flex-wrap: wrap; gap: 8px; margin-top: 18px;
	}
	.dad-hero__thumb {
		flex: 0 0 auto;
		width: 64px; height: 48px;
	}
	.dad-amenities { grid-template-columns: 1fr 1fr; gap: 12px; }
	.dad-amenity { padding: 18px 10px; }
	.dad-floor__panel.is-active { grid-template-columns: 1fr; }
	/* Tabs mặt bằng: cuộn ngang thay vì xuống dòng trên mobile */
	.dad-floor, .dad-floor__main { min-width: 0; }
	.dad-floor__tabs {
		flex-wrap: nowrap;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
		margin-left: -16px; margin-right: -16px;
		padding-left: 16px; padding-right: 16px;
	}
	.dad-floor__tabs::-webkit-scrollbar { display: none; }
	.dad-floor__tab { flex: 0 0 auto; white-space: nowrap; }
	.dad-progress__img { height: 120px; }
	.dad-arc-grid,
	.cat-arc-grid,
	.dad-feat__grid { grid-template-columns: 1fr; }

	/* Bộ lọc: mỗi ô 1 dòng trên mobile */
	.dad-filter-wrap { margin-top: 20px; }
	.dad-filter { padding: 8px; gap: 4px; }
	.dad-filter__field { flex: 1 1 100%; padding: 8px 12px; }
	.dad-filter__field + .dad-filter__field::before {
		left: 12px; right: 12px; top: -2px; bottom: auto;
		width: auto; height: 1px;
	}

	/* Thông số card: giữ trên 1 dòng */
	.dad-card__stats { flex-wrap: nowrap; justify-content: space-between; gap: 8px; }
	.dad-card__stats li { gap: 6px; min-width: 0; }
	.dad-card__stat-icon { width: 30px; height: 30px; }
	.dad-card__stat-icon svg { width: 16px; height: 16px; }
	.dad-card__stat-text { min-width: 0; }
	.dad-card__stat-text strong { font-size: 14px; white-space: nowrap; }
	.dad-card__stat-text small { font-size: 10px; white-space: nowrap; }

	.ghl-hotline { gap: 10px; padding: 10px 18px; }
	.ghl-hotline__icon { width: 34px; height: 34px; }
	.ghl-hotline__number { font-size: 18px; letter-spacing: 1px; }
	.ghl-hotline__label { font-size: 13px; }

	/* Hero responsive */
	.ghl-hero::before { inset: 8px; }
	.ghl-hero__cards { grid-template-columns: 1fr; gap: 20px; }
	.ghl-hero__card { padding: 28px 22px; }
	.ghl-hero__logo {
		position: relative;
		top: auto;
		left: auto;
		transform: none;
		display: flex;
		margin: 8px auto;
	}
	.ghl-hero__logo::before { inset: -8px; }
	.ghl-hero__features { grid-template-columns: 1fr 1fr; gap: 18px; }
	.ghl-hero__feature-icon { width: 44px; height: 44px; }
	.ghl-hero__feature-icon svg { width: 22px; height: 22px; }
	.ghl-hero__feature-title { font-size: 16px; }

	/* Stats responsive: 2 cột trên mobile */
	.ghl-stats__inner { grid-template-columns: 1fr 1fr; row-gap: 22px; }
	.ghl-stats__item:nth-child(odd) { border-left: none; }
	.ghl-stats__item { justify-content: flex-start; }

	/* Vì sao responsive: lưới lý do 1 cột */
	.ghl-visao__grid { grid-template-columns: 1fr; gap: 24px; }
}

/* ============================================================
   Tin tức & Sự kiện (shortcode [tin_tuc]) — tiền tố .ghl-news
   ============================================================ */
.ghl-news {
	max-width: var(--ghl-container);
	margin: 0 auto;
	padding: 56px clamp(16px, 4vw, 32px);
}

/* Head: tiêu đề + nút xem tất cả */
.ghl-news__head {
	display: flex;
	align-items: center;
	flex-wrap: nowrap;
	gap: 16px;
	margin-bottom: 32px;
}
.ghl-news .ghl-news__title {
	flex: 1 1 auto;
	min-width: 0;
	margin: 0;
	font-size: clamp(22px, 3.4vw, 34px);
	font-weight: 800;
	letter-spacing: 1px;
	text-transform: uppercase;
	color: var(--dad-green, #1c4c47);
}
.ghl-news__all {
	flex: 0 0 auto;
	margin-left: auto;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 10px 22px;
	border: 1px solid var(--dad-gold, #d4af5a);
	border-radius: 999px;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .6px;
	text-transform: uppercase;
	color: var(--dad-green, #1c4c47);
	text-decoration: none;
	white-space: nowrap;
	transition: background-color .25s ease, color .25s ease;
}
.ghl-news__all:hover {
	background-color: var(--dad-green, #1c4c47);
	color: #fff;
}
.ghl-news__all svg { width: 16px; height: 16px; }

/* Lưới bài viết */
.ghl-news__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: clamp(20px, 3vw, 36px);
}

.ghl-news__card {
	display: flex;
	gap: 16px;
	align-items: flex-start;
}
.ghl-news__media {
	flex: 0 0 40%;
	aspect-ratio: 1 / 1;
	border-radius: 10px;
	background-color: #e9ece9;
	background-size: cover;
	background-position: center;
	overflow: hidden;
	transition: transform .3s ease, box-shadow .3s ease;
}
.ghl-news__card:hover .ghl-news__media {
	transform: translateY(-4px);
	box-shadow: 0 14px 28px rgba(0, 0, 0, .18);
}
.ghl-news__body {
	flex: 1 1 auto;
	min-width: 0;
}
.ghl-news__date {
	display: block;
	margin-bottom: 8px;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: .5px;
	color: #9aa3a0;
}
.ghl-news .ghl-news__card-title {
	margin: 0 0 10px;
	font-size: clamp(15px, 1.4vw, 18px);
	font-weight: 700;
	line-height: 1.35;
}
.ghl-news__card-title a {
	color: var(--dad-green, #1c4c47);
	text-decoration: none;
	transition: color .2s ease;
}
.ghl-news__card-title a:hover { color: var(--dad-gold, #d4af5a); }
.ghl-news__excerpt {
	margin: 0 0 14px;
	font-size: 14px;
	line-height: 1.6;
	color: #5d6764;
}
.ghl-news__more {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .6px;
	text-transform: uppercase;
	color: var(--dad-green, #1c4c47);
	text-decoration: none;
	transition: gap .2s ease, color .2s ease;
}
.ghl-news__more svg { width: 15px; height: 15px; }
.ghl-news__more:hover { gap: 10px; color: var(--dad-gold, #d4af5a); }

/* Responsive */
@media (max-width: 960px) {
	.ghl-news__grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 600px) {
	.ghl-news__grid { grid-template-columns: 1fr; gap: 22px; }
	.ghl-news__media { flex-basis: 38%; }
}

/* ============================================================
   Trang Giới thiệu (shortcode [gioi_thieu]) — tiền tố .ghl-gt
   ============================================================ */
.ghl-gt { color: var(--dad-text, #2b3b38); }

/* Eyebrow dùng chung */
.ghl-gt-eyebrow {
	margin: 0 0 10px;
	font-size: 13px; font-weight: 700; letter-spacing: 2px; text-transform: uppercase;
	color: var(--dad-gold, #d4af5a);
}
.ghl-gt-eyebrow--center { text-align: center; }

/* ---------- 1. Banner ---------- */
.ghl-gt-hero {
	position: relative;
	padding: clamp(48px, 9vw, 100px) clamp(16px, 5vw, 56px);
	text-align: center;
	background: radial-gradient(120% 100% at 50% 0%, #21534c 0%, #163f3a 55%, #0f2f2b 100%);
	overflow: hidden;
}
.ghl-gt-hero::before {
	content: ""; position: absolute; inset: 16px;
	border: 1px solid rgba(212, 175, 90, .3); border-radius: 10px; pointer-events: none;
}
.ghl-gt-hero__inner { position: relative; z-index: 1; max-width: var(--ghl-container); margin: 0 auto; }
.ghl-gt-hero__eyebrow {
	margin: 0 0 10px; font-size: 14px; font-weight: 700; letter-spacing: 2px; text-transform: uppercase;
	color: var(--dad-gold, #d4af5a);
}
.ghl-gt-hero .ghl-gt-hero__title,
.dark .ghl-gt-hero__title {
	margin: 0; font-size: clamp(32px, 6vw, 58px); font-weight: 800; text-transform: uppercase;
	letter-spacing: 1px; line-height: 1.1;
	color: var(--dad-gold-2, #e7c97a); text-shadow: 0 3px 14px rgba(0, 0, 0, .4);
}
.ghl-gt-hero__title::after {
	content: ""; display: block; width: 80px; height: 3px;
	margin: 18px auto 0; background: var(--dad-gold, #d4af5a); border-radius: 2px;
}
.ghl-gt-hero__tagline {
	margin: 16px auto 0; max-width: 680px;
	font-size: clamp(15px, 2.2vw, 20px); font-weight: 500;
	color: var(--dad-cream, #f3e9cf);
}
.ghl-gt-hero__visual {
	display: flex; flex-direction: column; align-items: center; gap: 18px;
	margin: clamp(30px, 5vw, 52px) auto 0;
}
.ghl-gt-hero__logo {
	width: clamp(170px, 26vw, 250px); height: auto;
	filter: drop-shadow(0 12px 30px rgba(0, 0, 0, .5)) drop-shadow(0 0 26px rgba(231, 201, 122, .28));
}
.ghl-gt-hero__mark { display: inline-flex; width: clamp(120px, 20vw, 180px); color: var(--dad-gold-2, #e7c97a); }
.ghl-gt-hero__mark svg { width: 100%; height: auto; }
.ghl-gt-hero__badge {
	display: inline-flex; align-items: baseline; gap: 8px;
	padding: 9px 22px; border-radius: 999px;
	background: linear-gradient(135deg, #e7c97a 0%, #d4af5a 100%); color: #123833;
	font-size: 13px; font-weight: 700; text-transform: uppercase; letter-spacing: .5px;
	box-shadow: 0 10px 24px rgba(212, 175, 90, .35);
}
.ghl-gt-hero__badge strong { font-size: 20px; font-weight: 800; line-height: 1; }

/* ---------- 2. Câu chuyện ---------- */
.ghl-gt-story { background: #fff; padding: clamp(44px, 7vw, 88px) clamp(16px, 4vw, 32px); }
.ghl-gt-story__inner {
	max-width: var(--ghl-container); margin: 0 auto;
}
.ghl-gt-story__text { width: 100%; }
.ghl-gt-story__visual { position: relative; }
.ghl-gt-story__img {
	aspect-ratio: 4 / 5; border-radius: 18px; overflow: hidden;
	background: center / cover no-repeat #163f3a;
	box-shadow: 0 18px 44px rgba(15, 47, 43, .22);
}
.ghl-gt-story__img--mark {
	display: flex; align-items: center; justify-content: center;
	background: radial-gradient(120% 90% at 50% 0%, #21534c 0%, #163f3a 55%, #0f2f2b 100%);
	border: 1px solid rgba(212, 175, 90, .35);
}
.ghl-gt-story__mark { width: 42%; height: auto; color: var(--dad-gold-2, #e7c97a); }
.ghl-gt-story__logo { width: 74%; height: auto; max-height: 78%; object-fit: contain; }

/* Hiệu ứng "tráng gương": dải sáng quét chéo qua khung logo theo chu kỳ. */
.ghl-gt-story__img--shine { position: relative; isolation: isolate; }
.ghl-gt-story__img--shine::after {
	content: ""; position: absolute; z-index: 2; top: -25%; bottom: -25%;
	left: -60%; width: 45%;
	background: linear-gradient(100deg,
		rgba(255, 255, 255, 0) 0%,
		rgba(255, 255, 255, .08) 38%,
		rgba(255, 255, 255, .55) 50%,
		rgba(255, 255, 255, .08) 62%,
		rgba(255, 255, 255, 0) 100%);
	transform: skewX(-18deg);
	pointer-events: none;
	animation: ghl-gt-shine 5.5s ease-in-out infinite;
}
@keyframes ghl-gt-shine {
	0%   { left: -60%; }
	22%  { left: 130%; }
	100% { left: 130%; }
}
@media (prefers-reduced-motion: reduce) {
	.ghl-gt-story__img--shine::after { animation: none; }
}
.ghl-gt-story__badge {
	position: absolute; right: clamp(-18px, -1vw, -6px); bottom: 24px;
	display: flex; flex-direction: column; align-items: center; justify-content: center;
	min-width: 116px; padding: 16px 22px;
	background: linear-gradient(135deg, #e7c97a 0%, #d4af5a 100%);
	border-radius: 14px; color: #123833;
	box-shadow: 0 12px 28px rgba(212, 175, 90, .4);
}
.ghl-gt-story__badge-num { font-size: clamp(26px, 3vw, 34px); font-weight: 800; line-height: 1; }
.ghl-gt-story__badge-label { margin-top: 4px; font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .5px; }
.ghl-gt-story .ghl-gt-story__title,
.dark .ghl-gt-story__title {
	margin: 0 0 22px; font-size: clamp(24px, 3.4vw, 38px); font-weight: 800; text-transform: uppercase;
	color: var(--dad-green, #1c4c47);
	border-left: 5px solid var(--dad-gold, #d4af5a); padding-left: 16px;
}
.ghl-gt-story__body { color: var(--dad-text, #2b3b38); line-height: 1.85; }
.ghl-gt-story__body p { margin: 0 0 1.1em; }
.ghl-gt-story__body p:last-child { margin-bottom: 0; }
.ghl-gt-story__body strong { color: var(--dad-green, #1c4c47); }
.ghl-gt-story__body ul,
.ghl-gt-story__body ol { margin: 0 0 1.1em; padding-left: 1.4em; }
.ghl-gt-story__body li { margin: 0 0 0.5em; padding-left: 0.2em; }
.ghl-gt-story__body li:last-child { margin-bottom: 0; }

/* ---------- 3. Tầm nhìn – Sứ mệnh ---------- */
.ghl-gt-vm {
	padding: clamp(44px, 7vw, 88px) clamp(16px, 4vw, 32px);
	background: radial-gradient(120% 90% at 50% 0%, #21534c 0%, #163f3a 55%, #0f2f2b 100%);
}
.ghl-gt-vm__inner { max-width: var(--ghl-container); margin: 0 auto; }
.ghl-gt-vm__head { text-align: center; margin-bottom: clamp(28px, 4vw, 48px); }
.ghl-gt-vm .ghl-gt-vm__heading,
.dark .ghl-gt-vm__heading {
	margin: 0; font-size: clamp(24px, 3.4vw, 38px); font-weight: 800; text-transform: uppercase;
	color: var(--dad-gold-2, #e7c97a);
}
.ghl-gt-vm__heading::after {
	content: ""; display: block; width: 80px; height: 3px;
	margin: 16px auto 0; background: var(--dad-gold, #d4af5a); border-radius: 2px;
}
.ghl-gt-vm__grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: clamp(20px, 3vw, 36px); }
.ghl-gt-vm__card {
	padding: clamp(28px, 3vw, 40px);
	background: rgba(255, 255, 255, .04);
	border: 1px solid rgba(212, 175, 90, .35); border-radius: 18px;
	transition: transform .25s ease, border-color .25s ease, background .25s ease;
}
.ghl-gt-vm__card:hover { transform: translateY(-5px); border-color: var(--dad-gold-2, #e7c97a); background: rgba(255, 255, 255, .07); }
.ghl-gt-vm__icon {
	display: inline-flex; align-items: center; justify-content: center;
	width: 60px; height: 60px; margin-bottom: 18px;
	border: 1.5px solid var(--dad-gold, #d4af5a); border-radius: 50%;
	color: var(--dad-gold-2, #e7c97a);
}
.ghl-gt-vm__icon svg { width: 30px; height: 30px; }
.ghl-gt-vm .ghl-gt-vm__title,
.dark .ghl-gt-vm__title {
	margin: 0 0 12px; font-size: clamp(20px, 2.4vw, 26px); font-weight: 800; text-transform: uppercase;
	letter-spacing: .5px; color: var(--dad-gold-2, #e7c97a);
}
.ghl-gt-vm__desc { margin: 0; font-size: clamp(14px, 1.1vw, 16px); line-height: 1.8; color: rgba(255, 255, 255, .82); }

/* ---------- 5. Giá trị cốt lõi ---------- */
.ghl-gt-values { background: #f3f6f4; padding: clamp(44px, 7vw, 88px) clamp(16px, 4vw, 32px); }
.ghl-gt-values__inner { max-width: var(--ghl-container); margin: 0 auto; }
.ghl-gt-values__head { text-align: center; margin-bottom: clamp(28px, 4vw, 48px); }
.ghl-gt-values__head .ghl-gt-eyebrow { text-align: center; }
.ghl-gt-values .ghl-gt-values__title,
.dark .ghl-gt-values__title {
	margin: 0; font-size: clamp(24px, 3.4vw, 38px); font-weight: 800; text-transform: uppercase;
	color: var(--dad-green, #1c4c47);
}
.ghl-gt-values__title::after {
	content: ""; display: block; width: 80px; height: 3px;
	margin: 16px auto 0; background: var(--dad-gold, #d4af5a); border-radius: 2px;
}
.ghl-gt-values__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(18px, 2.5vw, 30px); }
.ghl-gt-value {
	background: #fff; border: 1px solid #e2e9e6; border-radius: 16px;
	padding: clamp(24px, 2.6vw, 34px);
	box-shadow: 0 8px 24px rgba(15, 47, 43, .06);
	transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.ghl-gt-value:hover { transform: translateY(-6px); box-shadow: 0 18px 40px rgba(15, 47, 43, .14); border-color: var(--dad-gold, #d4af5a); }
.ghl-gt-value__icon {
	display: inline-flex; align-items: center; justify-content: center;
	width: 58px; height: 58px; margin-bottom: 18px;
	border-radius: 14px;
	background: radial-gradient(120% 90% at 50% 0%, #21534c 0%, #163f3a 70%);
	color: var(--dad-gold-2, #e7c97a);
}
.ghl-gt-value__icon svg { width: 30px; height: 30px; }
.ghl-gt-value__title { margin: 0 0 10px; font-size: 19px; font-weight: 800; color: var(--dad-green, #1c4c47); }
.ghl-gt-value__desc { margin: 0; font-size: 14px; line-height: 1.7; color: #5d6b67; }

/* ---------- 6. CTA ---------- */
.ghl-gt-cta {
	padding: clamp(40px, 6vw, 72px) clamp(16px, 4vw, 32px);
	background: linear-gradient(135deg, #1c4c47 0%, #0f2f2b 100%);
}
.ghl-gt-cta__inner {
	display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: clamp(22px, 3vw, 40px);
	max-width: var(--ghl-container); margin: 0 auto;
}
.ghl-gt-cta__text { flex: 1 1 360px; }
.ghl-gt-cta .ghl-gt-cta__title,
.dark .ghl-gt-cta__title {
	margin: 0 0 10px; font-size: clamp(22px, 3vw, 34px); font-weight: 800; text-transform: uppercase;
	color: var(--dad-gold-2, #e7c97a);
}
.ghl-gt-cta__desc { margin: 0; font-size: clamp(14px, 1.4vw, 17px); line-height: 1.7; color: var(--dad-cream, #f3e9cf); }
.ghl-gt-cta__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 16px; }
.ghl-gt-cta__btn {
	display: inline-flex; align-items: center; gap: 10px;
	padding: 14px 30px; border-radius: 999px;
	background: linear-gradient(135deg, #e7c97a 0%, #d4af5a 100%); color: #123833;
	font-size: 14px; font-weight: 800; letter-spacing: .6px; text-transform: uppercase; text-decoration: none;
	box-shadow: 0 8px 20px rgba(212, 175, 90, .35);
	transition: transform .2s ease, box-shadow .25s ease;
}
.ghl-gt-cta__btn svg { width: 18px; height: 18px; transition: transform .25s ease; }
.ghl-gt-cta__btn:hover { transform: translateY(-2px); box-shadow: 0 12px 26px rgba(212, 175, 90, .5); color: #123833; }
.ghl-gt-cta__btn:hover svg { transform: translateX(4px); }

/* ---------- Responsive Giới thiệu ---------- */
@media only screen and (max-width: 64em) {
	.ghl-gt-values__grid { grid-template-columns: repeat(2, 1fr); }
}
@media only screen and (max-width: 48em) {
	.ghl-gt-vm__grid { grid-template-columns: 1fr; }
	.ghl-gt-values__grid { grid-template-columns: 1fr; }
	.ghl-gt-cta__inner { flex-direction: column; align-items: flex-start; justify-content: flex-start; }
	.ghl-gt-cta__text { flex: 0 0 auto; }
}

/* ============================================================
   Trang Liên hệ (shortcode [lien_he]) — tiền tố .ghl-lh
   ============================================================ */
.ghl-lh { color: var(--dad-text, #2b3b38); }

/* ---------- 1. Banner ---------- */
.ghl-lh-hero {
	position: relative;
	padding: clamp(48px, 9vw, 100px) clamp(16px, 5vw, 56px);
	text-align: center;
	background: radial-gradient(120% 100% at 50% 0%, #21534c 0%, #163f3a 55%, #0f2f2b 100%);
	overflow: hidden;
}
.ghl-lh-hero::before {
	content: ""; position: absolute; inset: 16px;
	border: 1px solid rgba(212, 175, 90, .3); border-radius: 10px; pointer-events: none;
}
.ghl-lh-hero__inner { position: relative; z-index: 1; max-width: var(--ghl-container); margin: 0 auto; }
.ghl-lh-hero__eyebrow {
	margin: 0 0 10px; font-size: 14px; font-weight: 700; letter-spacing: 2px; text-transform: uppercase;
	color: var(--dad-gold, #d4af5a);
}
.ghl-lh-hero .ghl-lh-hero__title,
.dark .ghl-lh-hero__title {
	margin: 0; font-size: clamp(30px, 5.5vw, 52px); font-weight: 800; text-transform: uppercase;
	letter-spacing: 1px; line-height: 1.1;
	color: var(--dad-gold-2, #e7c97a); text-shadow: 0 3px 14px rgba(0, 0, 0, .4);
}
.ghl-lh-hero__title::after {
	content: ""; display: block; width: 80px; height: 3px;
	margin: 18px auto 0; background: var(--dad-gold, #d4af5a); border-radius: 2px;
}
.ghl-lh-hero__tagline {
	margin: 16px auto 0; max-width: 680px;
	font-size: clamp(15px, 2.2vw, 20px); font-weight: 500;
	color: var(--dad-cream, #f3e9cf);
}

/* ---------- 2. Khối chính: thông tin + form ---------- */
.ghl-lh-main { background: #fff; padding: clamp(44px, 7vw, 88px) clamp(16px, 4vw, 32px); }
.ghl-lh-main__inner {
	display: grid; grid-template-columns: 1fr 1.15fr; align-items: stretch;
	gap: clamp(28px, 4vw, 56px);
	max-width: var(--ghl-container); margin: 0 auto;
}

/* Cột thông tin */
.ghl-lh-info {
	background: linear-gradient(160deg, #1c4c47 0%, #0f2f2b 100%);
	border: 1px solid rgba(212, 175, 90, .35);
	border-radius: 20px;
	padding: clamp(26px, 3vw, 40px);
	color: var(--dad-cream, #f3e9cf);
}
.ghl-lh-info__heading {
	margin: 0 0 8px; font-size: clamp(20px, 2.4vw, 26px); font-weight: 800;
	color: var(--dad-gold-2, #e7c97a);
}
.ghl-lh-info__lead { margin: 0 0 24px; font-size: 15px; line-height: 1.7; color: rgba(243, 233, 207, .8); }
.ghl-lh-info__list { list-style: none; margin: 0; padding: 0; }
.ghl-lh-info__item { display: flex; align-items: flex-start; gap: 14px; padding: 14px 0; border-top: 1px solid rgba(212, 175, 90, .18); }
.ghl-lh-info__item:first-child { border-top: none; padding-top: 0; }
.ghl-lh-info__icon {
	display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto;
	width: 46px; height: 46px; border-radius: 12px;
	background: rgba(212, 175, 90, .12); border: 1px solid rgba(212, 175, 90, .35);
	color: var(--dad-gold-2, #e7c97a);
}
.ghl-lh-info__icon svg { width: 24px; height: 24px; }
.ghl-lh-info__content { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.ghl-lh-info__label { font-size: 12px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; color: var(--dad-gold, #d4af5a); }
.ghl-lh-info__value { font-size: 15px; line-height: 1.6; color: #fff; word-break: break-word; }
.ghl-lh-info__link { color: #fff; text-decoration: none; }
.ghl-lh-info__link:hover { color: var(--dad-gold-2, #e7c97a); text-decoration: underline; }
.ghl-lh-info__social { margin-top: 26px; padding-top: 22px; border-top: 1px solid rgba(212, 175, 90, .18); }
.ghl-lh-info__social-label { display: block; margin-bottom: 12px; font-size: 12px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; color: var(--dad-gold, #d4af5a); }

/* Cột form */
.ghl-lh-form-wrap {
	background: #f3f6f4; border: 1px solid #e2e9e6; border-radius: 20px;
	padding: clamp(26px, 3vw, 40px);
	box-shadow: 0 14px 40px rgba(15, 47, 43, .08);
}
.ghl-lh-form__title { margin: 0 0 6px; font-size: clamp(20px, 2.4vw, 26px); font-weight: 800; color: var(--dad-green, #1c4c47); }
.ghl-lh-form__desc { margin: 0 0 22px; font-size: 14px; line-height: 1.7; color: #5d6b67; }
.ghl-lh-form__hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.ghl-lh-form__row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.ghl-lh-form__field { display: block; margin-bottom: 16px; }
.ghl-lh-form__label { display: block; margin-bottom: 7px; font-size: 13px; font-weight: 700; color: var(--dad-green, #1c4c47); }
.ghl-lh-form__label em { color: #c0392b; font-style: normal; }
.ghl-lh-form input,
.ghl-lh-form textarea {
	width: 100%; padding: 13px 16px;
	border: 1px solid #d3ddd9; border-radius: 10px;
	background: #fff; color: var(--dad-text, #2b3b38); font-size: 15px; font-family: inherit;
	transition: border-color .2s ease, box-shadow .2s ease;
}
.ghl-lh-form input::placeholder,
.ghl-lh-form textarea::placeholder { color: #9aa8a3; }
.ghl-lh-form input:focus,
.ghl-lh-form textarea:focus { outline: none; border-color: var(--dad-gold, #d4af5a); box-shadow: 0 0 0 3px rgba(212, 175, 90, .18); }
.ghl-lh-form textarea { resize: vertical; min-height: 120px; }
.ghl-lh-form__btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 10px; width: 100%;
	margin-top: 6px; padding: 15px 30px; border: none; border-radius: 999px; cursor: pointer;
	background: linear-gradient(135deg, #e7c97a 0%, #d4af5a 100%); color: #123833;
	font-size: 14px; font-weight: 800; letter-spacing: .6px; text-transform: uppercase; font-family: inherit;
	box-shadow: 0 8px 20px rgba(212, 175, 90, .35);
	transition: transform .2s ease, box-shadow .25s ease;
}
.ghl-lh-form__btn svg { width: 18px; height: 18px; transition: transform .25s ease; }
.ghl-lh-form__btn:hover { transform: translateY(-2px); box-shadow: 0 12px 26px rgba(212, 175, 90, .5); }
.ghl-lh-form__btn:hover svg { transform: translateX(4px); }

/* Thông báo sau khi gửi */
.ghl-lh-alert { margin: 0 0 20px; padding: 14px 18px; border-radius: 12px; font-size: 14px; font-weight: 600; line-height: 1.6; }
.ghl-lh-alert--ok { background: rgba(28, 76, 71, .1); border: 1px solid rgba(28, 76, 71, .35); color: var(--dad-green, #1c4c47); }
.ghl-lh-alert--error { background: rgba(192, 57, 43, .08); border: 1px solid rgba(192, 57, 43, .35); color: #a93226; }

/* ---------- 3. Bản đồ ---------- */
.ghl-lh-map { line-height: 0; }
.ghl-lh-map__frame { display: block; width: 100%; height: clamp(320px, 42vw, 480px); border: 0; }

/* ---------- Responsive Liên hệ ---------- */
@media only screen and (max-width: 64em) {
	.ghl-lh-main__inner { grid-template-columns: 1fr; gap: 32px; }
}
@media only screen and (max-width: 40em) {
	.ghl-lh-form__row { grid-template-columns: 1fr; gap: 0; }
}

/* ============================================================
   Menu thả xuống (sub-menu nav-dropdown) — đồng bộ style website
   Selector đủ mạnh để thắng CSS mặc định của Flatsome:
   - .nav-dropdown.nav-dropdown-default>li>a  (0,0,2,2)
   - .nav-dropdown .menu-item-has-children>a  (#000)
   - .nav-dropdown-has-border .nav-dropdown   (border 2px #ddd)
   ============================================================ */

/* Hộp dropdown: nền xanh đậm + viền vàng */
.nav-dropdown.nav-dropdown-default,
.nav-dropdown-has-border .nav-dropdown.nav-dropdown-default,
ul.nav-dropdown {
	padding: 8px;
	background: linear-gradient(180deg, #14403a 0%, #0f2f2b 100%);
	background-color: #14403a;
	border: 1px solid rgba(212, 175, 90, .4);
	border-radius: 12px;
	box-shadow: 0 14px 34px rgba(0, 0, 0, .35);
}

/* Link các mục: bỏ gạch xám + margin mặc định của Flatsome, chữ kem */
.nav-dropdown.nav-dropdown-default > li > a,
.nav-dropdown.nav-dropdown-default .nav-column li > a,
.nav-dropdown .menu-item-has-children > a,
.nav-dropdown .nav-dropdown-col > a,
.nav-dropdown .title > a {
	display: block;
	margin: 0;
	padding: 10px 16px;
	border: 0;
	border-radius: 8px;
	color: var(--dad-cream, #f3e9cf);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: .4px;
	line-height: 1.4;
	text-transform: none;
	transition: background-color .2s ease, color .2s ease, padding-left .2s ease;
}

/* Khoảng cách + đường kẻ vàng mảnh ngăn cách các mục */
.nav-dropdown.nav-dropdown-default > li + li {
	margin-top: 8px;
	padding-top: 8px;
	border-top: 1px solid rgba(212, 175, 90, .14);
}

/* Hover / mục đang chọn */
.nav-dropdown.nav-dropdown-default > li > a:hover,
.nav-dropdown.nav-dropdown-default li.active > a,
.nav-dropdown.nav-dropdown-default li.current > a,
.nav-dropdown.nav-dropdown-default li:hover > a,
.nav-dropdown .menu-item-has-children > a:hover {
	color: var(--dad-gold-2, #e7c97a);
	background-color: rgba(212, 175, 90, .12);
	padding-left: 20px;
}

/* Mũi tên tam giác:
   :after = phần "ruột" (mặc định trắng) -> đổi sang xanh nền dropdown
   :before = viền (mặc định #ddd khi has-border) -> đổi sang vàng */
.nav-dropdown-has-arrow li.has-dropdown:after {
	border-bottom-color: #14403a !important;
}
.nav-dropdown-has-arrow.nav-dropdown-has-border li.has-dropdown:before {
	border-bottom-color: rgba(212, 175, 90, .5) !important;
}

/* ============================================================
   Mobile sidebar (off-canvas menu Flatsome #main-menu) — đồng bộ style website
   - Nền xanh đậm gradient + chữ kem + điểm nhấn vàng
   - Áp dụng cho drawer mở từ nút hamburger trên mobile
   ============================================================ */

/* Lớp phủ tối phía sau drawer */
.mfp-bg {
	background: rgba(15, 47, 43, .6);
	backdrop-filter: blur(2px);
	-webkit-backdrop-filter: blur(2px);
}

/* Panel drawer: nền xanh đậm, cao full màn hình */
#main-menu.mobile-sidebar,
.mfp-content #main-menu.mobile-sidebar {
	background: linear-gradient(180deg, #1c4c47 0%, #0f2f2b 100%);
	background-color: #14403a;
	box-shadow: 6px 0 34px rgba(0, 0, 0, .4);
}
#main-menu.mobile-sidebar .sidebar-menu {
	padding: 8px 0;
	text-align: left;
}

/* Mục menu cấp 1 */
#main-menu.mobile-sidebar .nav-sidebar > li > a {
	display: block;
	padding: 15px 26px;
	color: var(--dad-cream, #f3e9cf);
	font-size: 14px;
	font-weight: 700;
	letter-spacing: .8px;
	text-transform: uppercase;
	border: 0;
	transition: background-color .2s ease, color .2s ease, padding-left .2s ease;
}

/* Đường kẻ vàng mảnh ngăn cách các mục */
#main-menu.mobile-sidebar .nav-sidebar > li + li {
	border-top: 1px solid rgba(212, 175, 90, .14);
}

/* Hover / mục đang xem */
#main-menu.mobile-sidebar .nav-sidebar > li > a:hover,
#main-menu.mobile-sidebar .nav-sidebar > li.active > a,
#main-menu.mobile-sidebar .nav-sidebar > li.current-menu-item > a,
#main-menu.mobile-sidebar .nav-sidebar > li.current_page_item > a {
	color: var(--dad-gold-2, #e7c97a);
	background-color: rgba(212, 175, 90, .12);
	box-shadow: inset 4px 0 0 var(--dad-gold, #d4af5a);
}

/* Menu con (sub-menu) */
#main-menu.mobile-sidebar .nav-sidebar .sub-menu {
	background: rgba(0, 0, 0, .16);
	padding: 4px 0;
}
#main-menu.mobile-sidebar .nav-sidebar .sub-menu > li > a {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 11px 26px 11px 40px;
	color: rgba(243, 233, 207, .78);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: .3px;
	text-transform: none;
	border: 0;
	transition: background-color .2s ease, color .2s ease, padding-left .2s ease;
}
#main-menu.mobile-sidebar .nav-sidebar .sub-menu > li > a::before {
	content: "";
	flex: 0 0 auto;
	width: 6px;
	height: 1px;
	background: rgba(212, 175, 90, .6);
	transition: width .2s ease, background-color .2s ease;
}
#main-menu.mobile-sidebar .nav-sidebar .sub-menu > li > a:hover,
#main-menu.mobile-sidebar .nav-sidebar .sub-menu > li.current-menu-item > a {
	color: var(--dad-gold-2, #e7c97a);
	background-color: rgba(212, 175, 90, .08);
	padding-left: 44px;
}
#main-menu.mobile-sidebar .nav-sidebar .sub-menu > li > a:hover::before,
#main-menu.mobile-sidebar .nav-sidebar .sub-menu > li.current-menu-item > a::before {
	width: 12px;
	background: var(--dad-gold, #d4af5a);
}

/* Nút mũi tên mở/đóng menu con (Flatsome .toggle) */
#main-menu.mobile-sidebar .nav-sidebar .toggle {
	color: var(--dad-gold, #d4af5a);
	opacity: .9;
}
#main-menu.mobile-sidebar .nav-sidebar .toggle:hover {
	color: var(--dad-gold-2, #e7c97a);
	opacity: 1;
}

/* Nút đóng (X) của Magnific Popup */
.mfp-wrap .mfp-close,
.mfp-content .mfp-close {
	color: var(--dad-gold-2, #e7c97a);
	opacity: .95;
}
.mfp-wrap .mfp-close:hover {
	color: #fff;
	opacity: 1;
}

/* ============================ BREADCRUMB (SEO) ============================ */
.ghl-breadcrumb {
	margin: 0 0 14px;
	font-size: 13px;
	line-height: 1.4;
}
.ghl-breadcrumb ol {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.ghl-breadcrumb li {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: rgba(255, 255, 255, .72);
}
.ghl-breadcrumb li:not(:last-child)::after {
	content: "/";
	color: rgba(255, 255, 255, .4);
}
.ghl-breadcrumb a {
	color: rgba(255, 255, 255, .82);
	text-decoration: none;
	transition: color .2s ease;
}
.ghl-breadcrumb a:hover { color: var(--dad-gold-2, #e7c97a); }
.ghl-breadcrumb li[aria-current="page"] span {
	color: #fff;
	font-weight: 600;
}
@media (max-width: 600px) {
	.ghl-breadcrumb { font-size: 12px; }
}

/* ============================================================
   Image Map Pro — dropdown chọn lớp/cảnh (.imp-ui-layers-select)
   Đồng bộ tông xanh + viền vàng của website.
   Lưu ý: plugin nhúng CSS qua JS SAU stylesheet này và "pill" hiển thị
   chính là thẻ <select> (skin "light" tô nền trắng), nên phải nhắm thẳng
   vào <select> với độ ưu tiên cao hơn + !important mới ghi đè được.
   ============================================================ */
.imp-ui-layers-menu-wrap .imp-ui-element.imp-ui-layers-select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	min-width: 190px;
	margin: 0 !important; /* bỏ margin-bottom mặc định của Flatsome → wrap không bị cao dư, chevron căn giữa đúng */
	border-radius: 999px !important;
	background: var(--dad-green, #1c4c47) !important;
	color: #fff !important;
	border: 1.5px solid var(--dad-gold, #d4af5a) !important;
	box-shadow: 0 6px 18px rgba(15, 47, 43, .28) !important;
	font-weight: 700 !important;
	letter-spacing: .3px;
	cursor: pointer;
	transition: border-color .2s ease, box-shadow .2s ease, background-color .2s ease;
}
.imp-ui-layers-menu-wrap .imp-ui-element.imp-ui-layers-select:hover {
	background: var(--dad-green-d, #0f2f2b) !important;
	border-color: var(--dad-gold-2, #e7c97a) !important;
	box-shadow: 0 8px 22px rgba(15, 47, 43, .4) !important;
}

/* Mũi tên (chevron): plugin đặt top:14px cố định → căn giữa lại bằng 50% */
.imp-ui-layers-menu-wrap .imp-icon {
	top: 50% !important;
	right: 16px !important;
	transform: translateY(-50%) !important;
	width: 12px !important;
	height: 12px !important;
	fill: var(--dad-gold-2, #e7c97a) !important;
}

/* Danh sách option khi mở (OS render → ép tông sáng, dễ đọc) */
.imp-ui-layers-menu-wrap .imp-ui-layers-select option {
	color: var(--dad-text, #2b3b38);
	background: #fff;
	font-weight: 500;
}

/* ============================================================
   Image Map Pro — tooltip bong bóng (.imp-tooltip)
   Plugin tô nền/padding/bo góc bằng inline style + màu mũi tên inline,
   nên phải ghi đè bằng !important. Đồng bộ nền xanh, chữ trắng, nhấn vàng.
   ============================================================ */
.imp-tooltip-wrap .imp-tooltip,
.imp-tooltip-wrap .imp-tooltip .imp-tooltip-content {
	background: var(--dad-green, #1c4c47) !important;
	color: #fff !important;
	border-radius: 12px !important;
}
.imp-tooltip-wrap .imp-tooltip .imp-tooltip-content { border: 0 !important; }
.imp-tooltip-wrap .imp-tooltip {
	max-width: 320px;
	border: 2px solid var(--dad-gold, #d4af5a) !important;
	box-shadow: 0 14px 32px rgba(15, 47, 43, .38) !important;
}
.imp-tooltip-wrap .imp-tooltip .imp-tooltip-content {
	padding: 0 !important;
	font-size: 14px;
	line-height: 1.55;
}

/* Nội dung bên trong: tiêu đề/đậm nhấn vàng, link vàng, bỏ margin cuối */
.imp-tooltip-wrap .imp-tooltip-content :where(h1, h2, h3, h4, h5, h6, strong, b) {
	color: var(--dad-gold-2, #e7c97a) !important;
}
/* Link trong tooltip = nút bấm vàng (CTA) */
.imp-tooltip-wrap .imp-tooltip-content a {
	display: block;
	width: 100%;
	box-sizing: border-box;
	text-align: center;
	margin-top: 4px;
	padding: 0 !important;
	border-radius: 999px !important;
	background: var(--dad-gold, #d4af5a) !important;
	color: var(--dad-green-d, #0f2f2b) !important;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .3px;
	text-decoration: none !important;
	box-shadow: 0 4px 12px rgba(15, 47, 43, .3);
	transition: background-color .2s ease, transform .15s ease, box-shadow .2s ease;
}
.imp-tooltip-wrap .imp-tooltip-content a:hover {
	background: var(--dad-gold-2, #e7c97a) !important;
	transform: translateY(-1px);
	box-shadow: 0 6px 16px rgba(15, 47, 43, .4);
}
.imp-tooltip-wrap .imp-tooltip-content > :last-child { margin-bottom: 0 !important; }

/* Ảnh trong tooltip: bấm để phóng to (lightbox) → con trỏ + hiệu ứng hover */
.imp-tooltip-wrap .imp-tooltip-content img {
	cursor: zoom-in;
	display: block;
	max-width: 100%;
	height: auto;
	transition: filter .2s ease, transform .2s ease;
}
.imp-tooltip-wrap .imp-tooltip-content img:hover { filter: brightness(1.06); }

/* Mũi tên (caret) đổi sang cùng nền xanh — ghi đè border-color inline 4 hướng */
.imp-tooltip-wrap .hs-arrow-top    { border-bottom-color: var(--dad-green, #1c4c47) !important; }
.imp-tooltip-wrap .hs-arrow-bottom { border-top-color:    var(--dad-green, #1c4c47) !important; }
.imp-tooltip-wrap .hs-arrow-left   { border-right-color:  var(--dad-green, #1c4c47) !important; }
.imp-tooltip-wrap .hs-arrow-right  { border-left-color:   var(--dad-green, #1c4c47) !important; }
