/*
Theme Name: LD Premier Hotel
Version: 1.10.5
*/
:root{--black:#090909;--gold:#c8a45b;--cream:#f5efe3;--line:#3b3120}*{box-sizing:border-box}body{margin:0;background:#0b0b0b;color:#f7f0e4;font:16px Arial,sans-serif;line-height:1.55}a{color:inherit;text-decoration:none}.wrap{width:min(1220px,calc(100% - 40px));margin:auto}.top{position:sticky;top:0;z-index:9;background:#080808;border-bottom:1px solid #3a3020}.nav{height:82px;display:flex;align-items:center;justify-content:space-between}.logo img{width:190px;height:62px;object-fit:contain;background:white}.menu{display:flex;gap:24px;align-items:center;font-weight:700;font-size:14px}.account,.btn{border:1px solid var(--gold);padding:11px 17px;border-radius:5px}.gold{background:var(--gold);color:#111}.hero{min-height:570px;display:flex;align-items:center;background:radial-gradient(circle at 80% 30%,#493c23,#17130d 30%,#080808 62%)}.kicker{color:#d9b86f;letter-spacing:.18em;font-size:12px;font-weight:bold}.hero h1,.section h2{font-family:Georgia,serif;font-weight:500}.hero h1{font-size:82px;line-height:1;margin:14px 0}.hero em{color:#d9b86f;font-style:normal}.hero p{max-width:650px;color:#c8c0b3;font-size:18px}.actions{display:flex;gap:12px;margin-top:25px}.booking{margin-top:-52px;position:relative;background:#151515;border:1px solid var(--line);padding:24px;border-radius:14px;box-shadow:0 20px 60px #000}.booking h2{margin-top:0;color:#d9b86f}.grid{display:grid;grid-template-columns:1fr 1.4fr 1fr 1fr;gap:12px}.field label{display:block;color:#d9b86f;font-size:11px;font-weight:bold;margin-bottom:6px}.field select,.field input{width:100%;padding:13px;background:#090909;color:white;border:1px solid #453923;border-radius:6px}.section{padding:85px 0}.light{background:var(--cream);color:#151515}.center{text-align:center;max-width:760px;margin:0 auto 38px}.center h2{font-size:46px;margin:8px}.about{display:grid;grid-template-columns:1fr 1fr;gap:50px}.facts,.rooms,.articles{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.fact,.panel{border:1px solid var(--line);padding:20px;background:#111}.fact small{display:block;color:#d9b86f}.room{background:#fff;border:1px solid #ded3c0}.roomimg{height:190px;background:linear-gradient(135deg,#4b3d23,#111);color:#d9b86f;padding:18px;display:flex;align-items:end}.roombody{padding:18px}.roombody p{color:#746c60}.dest{display:grid;grid-template-columns:2fr 1fr;gap:15px}.destination{min-height:250px;padding:28px;border:1px solid var(--line);display:flex;flex-direction:column;justify-content:end;background:linear-gradient(135deg,#302817,#0a0a0a)}.destination h3{font:36px Georgia;margin:5px 0}.soon{opacity:.5}.member{background:linear-gradient(120deg,#1c160c,#070707)}.membergrid{display:grid;grid-template-columns:1fr 1fr;gap:45px}.perks div{padding:14px;border:1px solid var(--line);margin:9px 0}.articles{grid-template-columns:repeat(3,1fr)}.article{border:1px solid var(--line);background:#141414;padding:22px}.article h3{font:22px Georgia}.footer{padding:50px 0;background:#050505;border-top:1px solid var(--line)}@media(max-width:850px){.menu a:not(.account){display:none}.grid,.about,.membergrid,.dest{grid-template-columns:1fr}.rooms{grid-template-columns:1fr 1fr}.articles{grid-template-columns:1fr}.hero h1{font-size:52px}}@media(max-width:520px){.rooms,.facts{grid-template-columns:1fr}}

/* v0.4 visual refinement */
body{background:#f8f5ef;color:#173b36;font-family:"Segoe UI",Arial,sans-serif}
.top{background:rgba(250,248,243,.96);border-bottom:1px solid #dfd4c0}
.menu{color:#173b36}.menu a:hover{color:#ad7d2e}.account{color:#173b36;border-color:#b78b45}
.logo img{width:230px;height:70px;background:transparent;object-fit:contain}
.hero{background:linear-gradient(115deg,rgba(247,242,232,.98),rgba(238,229,211,.9));min-height:540px}
.hero h1{color:#176B62;font-family:Georgia,"Times New Roman",serif}.hero p{color:#5f625c}.hero em,.kicker{color:#b1843f}
.booking{background:#fff;color:#173b36;border:1px solid #dfd2bc;box-shadow:0 18px 50px rgba(51,43,29,.12)}
.booking h2{color:#173b36}.field label{color:#9b6f2f}.field select,.field input{background:#fbfaf7;color:#173b36;border-color:#d9ccb6}
.section{background:#f8f5ef;color:#173b36}.section.light{background:#eee6d8;color:#173b36}
.panel,.fact{background:#fff;color:#173b36;border-color:#ddd0ba}.fact small{color:#a87832}
.member{background:linear-gradient(120deg,#176B62,#176B62);color:#fff}.member p{color:#e9e0d1}
.destination{background:linear-gradient(135deg,#176B62,#176B62);color:#fff}.soon{background:#e7e0d3;color:#6f6b62;opacity:1}
.room{border:0;box-shadow:0 12px 35px rgba(55,45,30,.11);border-radius:14px;overflow:hidden}.roomimg{height:225px;background:linear-gradient(145deg,#d9c6a5,#31564f);color:white}.roombody{padding:22px}.roombody h3{font:500 24px Georgia,serif;color:#173b36}.roombody small{color:#9b6f2f;text-transform:uppercase;letter-spacing:.08em}
.article{background:#fff;color:#173b36;border:0;border-radius:12px;box-shadow:0 10px 30px rgba(55,45,30,.08)}.article p{color:#666}
.footer{background:#176B62;color:#fff;border-top:3px solid #b78b45}.footer p{color:#e7dfd1}
.btn{border-color:#b78b45;color:#173b36}.btn.gold{background:#b78b45;color:#fff}

/* v0.5 typography + footer */
body{font-family:"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-size:16px;line-height:1.65}
h1,h2,h3,.hero h1,.section h2,.roombody h3{font-family:Georgia,"Times New Roman",serif;letter-spacing:-.015em}
.hero h1{font-size:clamp(54px,6vw,82px);line-height:1.02}
.center h2{font-size:clamp(34px,4vw,48px)}
.article h3{font-family:Georgia,"Times New Roman",serif;font-size:23px;line-height:1.28}
.article p,.footer p,.footer a{font-family:"Segoe UI",Roboto,Arial,sans-serif}
.kicker{font-family:"Segoe UI",Roboto,Arial,sans-serif;font-weight:700;letter-spacing:.18em}
.footer{padding:58px 0 20px}
.footer-grid-v5{display:grid;grid-template-columns:1.15fr 1.5fr .9fr 1.05fr;gap:38px;align-items:start}
.footer-logo{width:230px;max-width:100%;background:#fff;border-radius:5px;padding:8px;margin-bottom:15px}
.footer h3{font-family:"Segoe UI",Roboto,Arial,sans-serif;font-size:14px;text-transform:uppercase;letter-spacing:.12em;color:#e2bb70;margin:0 0 16px}
.footer p,.footer li{font-size:14px;line-height:1.75;margin:0;color:#eee7dc}
.footer ul{list-style:none;padding:0;margin:0}.footer li{margin:5px 0}
.footer .legal{border-top:1px solid rgba(226,187,112,.28);margin-top:35px;padding-top:18px;font-size:12px;color:#cfc6b7}
.company-row{margin-bottom:9px}.company-row b{color:#fff}
@media(max-width:950px){.footer-grid-v5{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.footer-grid-v5{grid-template-columns:1fr}}

/* v0.6: match approved visual reference */
#news{background:linear-gradient(180deg,#fbf8f2,#f6efe3);padding-bottom:18px}
#news .center{margin-bottom:28px}
#news .center:after{content:"◆";display:block;color:#b57d2b;font-size:16px;margin-top:8px;letter-spacing:18px}
#news .center h2{font-size:42px;color:#0d3531;margin-top:8px}
#news .articles{gap:28px}
#news .article{padding:0;overflow:hidden;border-radius:12px;background:#fff;box-shadow:0 10px 28px rgba(55,45,30,.08)}
.news-image{height:225px;background-size:cover;background-position:center;position:relative}
.news-image.one{background-image:linear-gradient(0deg,rgba(20,40,35,.1),rgba(20,40,35,.05)),url('assets/news-hotel.jpg')}
.news-image.two{background-image:linear-gradient(0deg,rgba(20,40,35,.08),rgba(20,40,35,.02)),url('assets/news-samson.jpg')}
.news-image.three{background-image:linear-gradient(0deg,rgba(20,40,35,.08),rgba(20,40,35,.02)),url('assets/news-ho.jpg')}
.news-tag{position:absolute;left:20px;top:20px;background:#8c6428;color:#fff;padding:6px 12px;border-radius:5px;font-size:12px;font-weight:700;letter-spacing:.08em}
.news-date{position:absolute;right:20px;top:22px;color:#173b36;font-size:12px}
.news-copy{padding:18px 20px 22px}
.news-copy h3{margin:0 0 12px;font:500 25px/1.15 Georgia,"Times New Roman",serif;color:#123b37}
.news-copy p{margin:0 0 18px;color:#62645f;line-height:1.5}
.news-more{font-weight:700;color:#a66e20}
.footer{background:
linear-gradient(120deg,rgba(5,73,66,.97),rgba(4,61,57,.98)),
radial-gradient(circle at 85% 10%,rgba(205,165,91,.18),transparent 35%);
border-top:2px solid #c59a50;padding:38px 0 0}
.footer-grid-v5{grid-template-columns:1.25fr 1.35fr .72fr .9fr;gap:48px}
.footer-logo{width:360px;background:transparent;padding:0;filter:brightness(0) invert(1);opacity:.97}
.footer h3{color:#e7bd70;font-size:13px;letter-spacing:.14em}
.footer p,.footer li,.footer a{color:#fff;font-size:14px}
.footer .legal{margin-top:28px;padding:15px 0 18px;border-top:1px solid rgba(232,190,111,.35);color:#e8dfd0}
.footer .btn.gold{display:inline-block;margin-top:16px;min-width:210px;text-align:center;border-radius:25px}
.footer-note{margin-top:12px;color:#e7e0d5!important}
.footer-social{display:flex;gap:12px;margin-top:20px}.footer-social span{border:1px solid #e2b765;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;color:#e2b765;font-weight:700}
@media(max-width:900px){#news .articles{grid-template-columns:1fr}.news-image{height:260px}.footer-logo{width:290px}}

/* v0.7 — approved reference: typography and footer refinement */
400;500;600;700&family=Playfair+Display:wght@500;600&display=swap');

:root{
  --emerald:#063f3a;
  --emerald-deep:#03332f;
  --gold:#c99743;
  --gold-light:#e7c478;
  --ivory:#faf6ee;
  --ink:#123b37;
}
body{
  font-family:"Be Vietnam Pro","Segoe UI",Arial,sans-serif;
  font-weight:400;
  color:var(--ink);
  background:var(--ivory);
}
h1,h2,h3,.hero h1,.section h2,.roombody h3,.article h3,.news-copy h3{
  font-family:"Playfair Display",Georgia,"Times New Roman",serif;
  font-weight:500;
  letter-spacing:-.025em;
}
p{letter-spacing:-.012em}
.menu,.btn,.field,.kicker,.news-tag,.news-date,.footer{
  font-family:"Be Vietnam Pro","Segoe UI",Arial,sans-serif;
}
#news{background:linear-gradient(180deg,#fbf8f2 0%,#f8f2e8 100%);padding-top:62px;padding-bottom:20px}
#news .center{max-width:900px;margin-bottom:30px}
#news .center h2{font-size:42px;line-height:1.15;color:#0b3935}
#news .center p{font-size:16px;color:#6a6d68}
#news .kicker{font-size:12px;color:#a76f20}
#news .articles{gap:28px}
#news .article{border-radius:11px;box-shadow:0 8px 24px rgba(55,45,30,.07)}
.news-image{height:225px}
.news-copy{padding:16px 20px 20px}
.news-copy h3{font-size:25px;line-height:1.18;color:#0b3935}
.news-copy p{font-size:14px;line-height:1.55}
.news-more{font-family:"Be Vietnam Pro",sans-serif;font-size:14px;color:#a96f1d}

.footer{
  background:
    linear-gradient(120deg,rgba(2,67,61,.98),rgba(2,53,49,.98)),
    radial-gradient(circle at 80% 0%,rgba(212,170,90,.15),transparent 38%);
  color:#fff;
  border-top:2px solid var(--gold);
  padding:38px 0 0;
}
.footer-grid-v5{grid-template-columns:1.2fr 1.25fr .68fr .9fr;gap:44px}
.footer h3{
  font-family:"Be Vietnam Pro",sans-serif;
  font-weight:700;
  font-size:12px;
  letter-spacing:.16em;
  color:var(--gold-light);
  margin-bottom:18px;
}
.footer p,.footer li,.footer a{
  font-family:"Be Vietnam Pro",sans-serif;
  font-size:13px;
  line-height:1.75;
  font-weight:400;
}
.footer-brand{margin:0 0 18px}
.footer-brand-main{
  display:flex;align-items:center;gap:15px;
  color:#fff;
}
.footer-monogram{
  font-family:"Playfair Display",serif;
  font-size:54px;line-height:1;
  color:#53b9aa;
  font-weight:600;
}
.footer-divider{width:1px;height:55px;background:var(--gold)}
.footer-premier{
  font-family:"Playfair Display",serif;
  font-size:43px;line-height:1;
  letter-spacing:.04em;
  color:#fff;
}
.footer-tagline{
  margin-top:10px;
  color:#d2a95e;
  font-size:9px;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.footer .company-row{margin:0 0 10px}
.footer .company-row b{font-weight:600}
.footer .btn{font-size:12px}
.footer .legal{
  font-family:"Be Vietnam Pro",sans-serif;
  font-size:11px;
  color:#e9dfd0;
  text-align:left;
}
.footer-bottom{
  border-top:1px solid rgba(229,185,105,.35);
  margin-top:26px;
  padding:12px 0 15px;
  text-align:right;
  font-size:11px;
}
.footer-bottom a{margin-left:24px;font-size:11px}
@media(max-width:900px){
  .footer-grid-v5{grid-template-columns:1fr 1fr}
  .footer-premier{font-size:36px}
}
@media(max-width:600px){
  .footer-grid-v5{grid-template-columns:1fr}
  #news .center h2{font-size:34px}
}

/* v0.8 — Vietnamese-safe typography + real web photography */
400;500;600;700&family=Noto+Serif:wght@500;600&display=swap');

h1,h2,h3,.hero h1,.section h2,.roombody h3,.article h3,.news-copy h3,
.footer-monogram,.footer-premier{
  font-family:"Noto Serif",Georgia,"Times New Roman",serif !important;
  font-feature-settings:"kern" 1;
  text-rendering:optimizeLegibility;
}
body,.menu,.btn,.field,.kicker,.news-tag,.news-date,.footer{
  font-family:"Be Vietnam Pro","Segoe UI",Arial,sans-serif !important;
}
.news-image{height:245px;background-size:cover!important;background-position:center!important}
.news-image.one{
  background-image:linear-gradient(0deg,rgba(5,45,40,.08),rgba(5,45,40,.02)),
  url('https://www.vietnam.travel/sites/default/files/inline-images/InterContinental%20Da%20Nang%20Sun%20Penisula.jpg')!important;
}
.news-image.two{
  background-image:linear-gradient(0deg,rgba(5,45,40,.08),rgba(5,45,40,.02)),
  url('https://images.pexels.com/photos/17065745/pexels-photo-17065745.jpeg?auto=compress&cs=tinysrgb&w=1200')!important;
}
.news-image.three{
  background-image:linear-gradient(0deg,rgba(5,45,40,.08),rgba(5,45,40,.02)),
  url('https://cdn-i.vtcnews.vn/resize/th/upload/2021/12/14/thanh-nha-ho-52-15240397.jpg')!important;
}
.news-copy h3{font-size:24px;line-height:1.32;word-break:normal;overflow-wrap:normal}

/* v0.9 — hard reset typography: no remote webfonts, Vietnamese-safe */
html,body,button,input,select,textarea,
.menu,.btn,.field,.kicker,.news-tag,.news-date,.footer,
.footer p,.footer li,.footer a,.article p,.news-copy p{
  font-family:Arial,"Helvetica Neue",sans-serif !important;
  font-synthesis:none;
}
h1,h2,h3,h4,h5,h6,
.hero h1,.section h2,.roombody h3,.article h3,.news-copy h3,
.footer-monogram,.footer-premier{
  font-family:"Times New Roman",Times,serif !important;
  font-synthesis:none;
  font-weight:500;
  letter-spacing:0;
  line-height:1.22;
}
.hero h1{line-height:1.06}
.member h2{font-size:38px;line-height:1.2;margin:8px 0 14px}
.member p{font-size:15px;line-height:1.7}
.news-copy h3{font-size:25px;line-height:1.24}
#news .center h2{font-size:42px;line-height:1.15}

/* v0.10 member button contrast */
.member a.btn,.member .btn{color:#fff!important;border-color:#c99743!important;background:transparent!important;opacity:1!important}
.member a.btn:hover,.member .btn:hover{color:#063f3a!important;background:#e7c478!important}
.member a.btn.gold,.member .btn.gold{color:#fff!important;background:#c99743!important;border-color:#c99743!important}
.member a.btn.gold:hover,.member .btn.gold:hover{color:#063f3a!important;background:#e7c478!important}

.roomimg.photo{background-size:cover;background-position:center;color:transparent}.roomimg.photo:after{display:none}
.page-hero{padding:70px 0 35px;background:#f5eee2}.page-hero h1{font-size:48px;margin:8px 0;color:#073d38}.page-content{max-width:1180px}.page-content>p{max-width:900px;font-size:17px;line-height:1.8}.page-content hr{border:0;border-top:1px solid #ddcfb7;margin:35px 0}.single-cover img{width:100%;height:auto;border-radius:14px;margin-bottom:28px}.member-page-box{margin-top:30px;max-width:900px;background:#0c514a;color:#fff;padding:32px;border-radius:14px}.member-page-box h2{color:#fff}.booking button.btn{cursor:pointer;font:inherit}
/* Header logo fix v1.2.1 */
.top .nav{min-height:82px;display:flex;align-items:center}
.top .logo{display:flex;align-items:center;width:250px;height:68px;overflow:hidden}
.top .logo img{display:block;width:100%;height:100%;object-fit:contain;object-position:left center}
@media(max-width:760px){
  .top .logo{width:190px;height:58px}
}

/* v1.3.1 real LD Premier header logo */
.top .nav{min-height:92px}
.top .logo{width:330px;height:78px;overflow:visible;flex:0 0 330px}
.top .logo img{width:100%;height:100%;display:block;object-fit:contain;object-position:left center}
@media(max-width:900px){.top .logo{width:245px;height:66px;flex-basis:245px}}
@media(max-width:600px){.top .logo{width:205px;height:58px;flex-basis:205px}}

/* v1.3.2: header logo removed */
.top .nav{justify-content:flex-end}

/* v1.3.3 LD HOTEL header logo */
.top .nav{justify-content:space-between;min-height:92px;gap:24px}
.header-brand{flex:0 0 300px;display:flex;align-items:center}
.header-brand a{display:block;width:100%}
.header-brand img{display:block;width:100%;height:72px;object-fit:contain;object-position:left center}
@media(max-width:900px){
  .header-brand{flex-basis:230px}
  .header-brand img{height:62px}
}
@media(max-width:650px){
  .top .nav{min-height:76px}
  .header-brand{flex-basis:185px}
  .header-brand img{height:52px}
}

/* v1.3.4: LD HOTEL is the system brand; hotel names are properties */
.top .nav{justify-content:space-between!important;min-height:96px!important}
.header-brand{display:flex!important;align-items:center;flex:0 0 310px!important;min-width:260px}
.header-brand a{display:block;width:100%}
.header-brand img{display:block!important;width:100%!important;height:76px!important;object-fit:contain!important;object-position:left center!important}
.top .menu{margin-left:auto}
@media(max-width:900px){
 .header-brand{flex-basis:235px!important;min-width:190px}
 .header-brand img{height:62px!important}
}

/* v1.3.5 compact system header inspired by premium hotel navigation */
.top{
 background:#176B62!important;
 border-bottom:1px solid rgba(214,177,105,.45)!important;
 box-shadow:0 2px 16px rgba(0,0,0,.08);
}
.top .wrap.nav{
 width:min(1220px,calc(100% - 40px))!important;
 min-height:82px!important;
 height:82px!important;
 display:flex!important;
 align-items:center!important;
 justify-content:space-between!important;
 gap:34px!important;
}
.top .header-brand{
 flex:0 0 74px!important;
 width:74px!important;
 min-width:74px!important;
 max-width:74px!important;
 height:64px!important;
 overflow:hidden!important;
}
.top .header-brand a{
 width:64px!important;height:58px!important;display:block!important;
}
.top .header-brand img{
 width:64px!important;height:58px!important;
 max-width:64px!important;max-height:58px!important;
 object-fit:contain!important;
}
.top .menu{
 margin-left:auto!important;
 display:flex!important;
 align-items:center!important;
 justify-content:flex-end!important;
 gap:30px!important;
 color:#f6ead2!important;
 font-size:15px!important;
}
.top .menu>a{color:#f6ead2!important;font-weight:700!important}
.top .menu>a:hover{color:#e3bd6e!important}
.top .menu .account{
 border:1px solid #e1bd73!important;
 border-radius:999px!important;
 padding:10px 18px!important;
 color:#f6ead2!important;
 background:transparent!important;
}
@media(max-width:850px){
 .top .wrap.nav{height:72px!important;min-height:72px!important}
 .top .header-brand{flex-basis:62px!important;width:62px!important;min-width:62px!important;height:56px!important}
 .top .header-brand a,.top .header-brand img{width:54px!important;height:50px!important;max-width:54px!important;max-height:50px!important}
 .top .menu{gap:12px!important}
}

.ld-story{display:grid;gap:76px}.story-intro{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center}.story-intro h2,.story-heading h2{font-family:Georgia,"Times New Roman",serif;color:#083f3b;line-height:1.04}.story-intro h2{font-size:clamp(40px,5vw,68px);margin:10px 0 4px}.story-lead{font-size:20px;color:#b17829}.story-intro p,.story-copy p{font-size:17px;line-height:1.75;color:#3f4c49}.story-actions{display:flex;gap:12px;margin-top:25px}.story-photo{margin:0;border-radius:26px;overflow:hidden;box-shadow:0 18px 55px rgba(13,55,50,.14)}.story-photo img{width:100%;height:420px;object-fit:cover;display:block}.story-photo figcaption{padding:12px 16px;font-size:12px;background:#0c4b45;color:#f6ead2}.story-heading{text-align:center;max-width:900px;margin:auto}.story-heading span,.direct-book>div>span{font-size:12px;font-weight:800;letter-spacing:.22em;color:#b17829}.story-heading h2{font-size:clamp(32px,4vw,50px);margin:12px 0}.story-heading p{color:#65716f}.story-split{display:grid;grid-template-columns:1fr 1fr;gap:30px}.story-copy,.value-stack{background:#f2eadb;border-radius:24px;padding:32px}.value-stack{display:grid;gap:12px;background:#0d4d47}.value-stack>div{display:grid;grid-template-columns:54px 1fr;gap:4px 14px;border:1px solid rgba(255,255,255,.18);padding:18px;border-radius:16px;color:#fff}.value-stack b{grid-row:1/3;color:#e0b55e;font-size:22px}.value-stack span{opacity:.82;font-size:13px}.property-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.property-card{border-radius:24px;overflow:hidden;background:#fff;border:1px solid #e4d5bd;box-shadow:0 16px 40px rgba(22,50,47,.08)}.property-photo{height:310px;background:#d8d2c5}.property-photo img{width:100%;height:100%;object-fit:cover}.property-body{padding:26px}.property-body h3{font-family:Georgia,serif;font-size:30px;color:#083f3b;margin:8px 0 0}.property-place{font-size:18px;color:#a76c1f}.status{font-size:11px;font-weight:800;letter-spacing:.15em;color:#a76c1f}.tea-photo{background:linear-gradient(rgba(6,58,51,.16),rgba(6,58,51,.16)),url("https://dulichviet.com.vn/images/bandidau/ngo-ngang-truoc-ve-dep-tuoi-xanh-cua-doi-che-tan-cuong.jpg") center/cover}.destination-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.destination-card{overflow:hidden;border-radius:22px;background:#fff;border:1px solid #e6d9c4}.dest-img{height:260px;background-position:center;background-size:cover}.destination-card>div:last-child{padding:20px}.destination-card span{font-size:10px;letter-spacing:.18em;color:#a76c1f;font-weight:800}.destination-card h3{font:28px Georgia,serif;color:#083f3b;margin:8px 0}.destination-card p{line-height:1.6;color:#58625f}.samson{background-image:url("https://static.vinwonders.com/production/bai-bien-sam-son-o-dau.jpg")}.puluong{background-image:url("https://q-xx.bstatic.com/xdata/images/hotel/max1024x768/248433881.jpg?k=ba6e786e81c52bbee493af4cc680249638162dff34c39e20b3d7b86bc87c9d27&o=")}.citadel{background-image:url("https://miro.medium.com/0%2AfSFSNRJWyT31YWOE.jpg")}.direct-book{background:#0a4b45;color:#fff;border-radius:28px;padding:42px;display:grid;grid-template-columns:.9fr 1.1fr;gap:40px}.direct-book h2{font:40px Georgia,serif;margin:10px 0}.direct-book p{line-height:1.7;opacity:.84}.direct-benefits{display:grid;gap:10px}.direct-benefits>div{display:flex;flex-direction:column;padding:17px 20px;border:1px solid rgba(255,255,255,.2);border-radius:15px}.direct-benefits b{color:#f1cf8b}.direct-benefits span{font-size:13px;opacity:.82;margin-top:4px}.story-final{text-align:center;padding:10px 0 30px;display:flex;flex-direction:column;align-items:center;gap:22px;font:30px Georgia,serif;color:#083f3b}@media(max-width:850px){.story-intro,.story-split,.property-grid,.direct-book{grid-template-columns:1fr}.destination-grid{grid-template-columns:1fr}.story-photo img{height:300px}.ld-story{gap:52px}}

/* v1.3.9 room search results */
.ld-room-results{padding:54px 0}.ld-room-results .rooms-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.ld-search-summary{background:#f7f0e4;border:1px solid #ddc79e;border-radius:12px;padding:16px 20px;margin:0 0 28px}
.ld-room-result-card{background:#fff;border:1px solid #e1d5c0;border-radius:16px;overflow:hidden;box-shadow:0 12px 30px rgba(12,65,59,.08)}
.ld-room-result-card .room-photo{height:220px;background:linear-gradient(135deg,#176B62,#16766d)}
.ld-room-result-card .room-body{padding:22px}.ld-room-result-card h3{margin:0 0 8px;font-size:25px}
.ld-room-result-card .btn{display:inline-block;margin-top:14px}
@media(max-width:760px){.ld-room-results .rooms-grid{grid-template-columns:1fr}}

/* v1.4.0 search results */
.ld-results-anchor{scroll-margin-top:100px}
.ld-room-search-results{padding:34px 0 60px}
.ld-room-search-results .ld-result-head{margin-bottom:22px}
.ld-room-search-results .ld-result-head h2{margin:0 0 8px;font-size:34px;color:#176B62}
.ld-room-search-results .ld-result-summary{color:#6a5a43}
.ld-room-search-results .ld-result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.ld-result-card{background:#fff;border:1px solid #decfb7;border-radius:16px;overflow:hidden;box-shadow:0 14px 35px rgba(10,63,57,.08)}
.ld-result-card .ld-result-img{height:230px;background:linear-gradient(135deg,#176B62,#1d7c72)}
.ld-result-card .ld-result-img img{width:100%;height:100%;object-fit:cover}
.ld-result-card .ld-result-body{padding:22px}
.ld-result-card h3{font-size:27px;margin:0 0 9px;color:#176B62}
.ld-result-card .ld-result-meta{font-size:14px;color:#84662f;margin:0 0 12px;font-weight:700}
.ld-no-room{background:#fff7e9;border:1px solid #e0c48d;padding:18px;border-radius:10px}
@media(max-width:760px){.ld-room-search-results .ld-result-grid{grid-template-columns:1fr}}

/* v1.4.2 dedicated room search results */
.ld-search-result-header{margin:0 0 28px;padding:22px 24px;background:#f7f0e4;border:1px solid #ddc79e;border-radius:14px}
.ld-search-result-header h2{margin:4px 0 8px;color:#176B62;font-size:34px}
.ld-search-result-header p{margin:0;color:#675842}
.ld-filtered-rooms .room .btn.gold{display:inline-block;margin-top:14px}
.ld-no-room{padding:20px;background:#fff3df;border:1px solid #dfbf83;border-radius:12px;color:#694b17}

.ld-home-room-results{padding-top:45px;padding-bottom:55px}.ld-home-room-results .rooms{margin-top:24px}


/* v1.4.5 - Retina logo + mobile-first header */
.top .header-brand img{
  image-rendering:auto!important;
  transform:translateZ(0);
}

/* Desktop */
@media (min-width:851px){
  .top .wrap.nav{
    height:82px!important;
    min-height:82px!important;
  }
  .top .header-brand{
    flex:0 0 74px!important;
    width:74px!important;
    min-width:74px!important;
    max-width:74px!important;
    height:64px!important;
  }
  .top .header-brand a{
    width:64px!important;
    height:58px!important;
  }
  .top .header-brand img{
    width:64px!important;
    height:auto!important;
    max-width:64px!important;
    max-height:58px!important;
    object-fit:contain!important;
  }
}

/* Tablet + phone */
@media (max-width:850px){
  .top{
    position:sticky!important;
    top:0!important;
  }
  .top .wrap.nav{
    width:calc(100% - 28px)!important;
    height:68px!important;
    min-height:68px!important;
    gap:10px!important;
    padding:0!important;
  }
  .top .header-brand{
    flex:0 0 58px!important;
    width:58px!important;
    min-width:58px!important;
    max-width:58px!important;
    height:58px!important;
    overflow:visible!important;
  }
  .top .header-brand a{
    display:flex!important;
    width:58px!important;
    height:58px!important;
    align-items:center!important;
    justify-content:flex-start!important;
  }
  .top .header-brand img{
    display:block!important;
    width:56px!important;
    height:auto!important;
    max-width:56px!important;
    max-height:54px!important;
    object-fit:contain!important;
  }
  .top .menu{
    flex:1 1 auto!important;
    min-width:0!important;
    margin-left:auto!important;
    gap:0!important;
  }
  .top .menu>a:not(.account){
    display:none!important;
  }
  .top .menu .account{
    margin-left:auto!important;
    white-space:nowrap!important;
    font-size:14px!important;
    line-height:1.15!important;
    padding:10px 14px!important;
    border-radius:999px!important;
    max-width:190px!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
}

@media (max-width:390px){
  .top .wrap.nav{
    width:calc(100% - 20px)!important;
  }
  .top .header-brand,
  .top .header-brand a{
    width:52px!important;
    min-width:52px!important;
    max-width:52px!important;
    flex-basis:52px!important;
  }
  .top .header-brand img{
    width:50px!important;
    max-width:50px!important;
  }
  .top .menu .account{
    font-size:13px!important;
    padding:9px 12px!important;
    max-width:174px!important;
  }
}

/* v1.4.6 - true vector LD logo: no raster blur on Retina/mobile */
.top .header-brand img{
  image-rendering:auto!important;
  object-fit:contain!important;
  filter:none!important;
}
@media(max-width:850px){
  .top .header-brand img{
    width:58px!important;
    max-width:58px!important;
    height:54px!important;
    max-height:54px!important;
  }
}
@media(max-width:390px){
  .top .header-brand img{
    width:52px!important;
    max-width:52px!important;
    height:50px!important;
    max-height:50px!important;
  }
}

/* =========================================================
   v1.4.7 — LD HOTEL Luxury 60 / 30 / 10 Palette
   60% porcelain white / warm ivory
   30% deep forest / charcoal
   10% antique champagne gold
   ========================================================= */
:root{
  --ld-bg:#F7F6F2;
  --ld-surface:#FFFFFF;
  --ld-surface-warm:#EFEAE1;
  --ld-ink:#202724;
  --ld-muted:#686B66;
  --ld-green:#176B62;
  --ld-green-deep:#176B62;
  --ld-gold:#B48745;
  --ld-gold-deep:#936A31;
  --ld-line:#DDD7CC;
}

/* 60%: clean, modern base */
html,body{background:var(--ld-bg)!important;color:var(--ld-ink)!important}
.hero,.section,.booking-wrap,.page-hero{background:var(--ld-bg)!important}
.booking,.room,.card,.post-card,.ld-result-card,
.ld-search-result-header,.member-box,.booking-box{
  background:var(--ld-surface)!important;
  border-color:var(--ld-line)!important;
}
input,select,textarea{
  background:#FFF!important;
  color:var(--ld-ink)!important;
  border-color:#CEC6B9!important;
}
p,.muted{color:var(--ld-muted)}

/* 30%: strong secondary identity */
.top,.site-footer,footer{background:var(--ld-green-deep)!important}
h1,h2,h3,h4,h5,h6,
.hero h1,.booking h2,.room h3,.page-title{
  color:var(--ld-green-deep)!important;
}
.top a,.top .menu>a{color:#F8F5EE!important}
.top .menu .account{
  color:#F8F5EE!important;
  border-color:rgba(180,135,69,.85)!important;
  background:transparent!important;
}
.top .menu .account:hover{
  background:var(--ld-gold)!important;
  color:#fff!important;
}
.kicker,.eyebrow,.field label,.room small{
  color:var(--ld-gold-deep)!important;
}

/* 10%: CTA only, not wallpaper */
.btn.gold,button.btn.gold,
input[type="submit"],button[type="submit"]{
  background:var(--ld-gold)!important;
  border-color:var(--ld-gold)!important;
  color:#fff!important;
  box-shadow:none!important;
}
.btn.gold:hover,button.btn.gold:hover,
input[type="submit"]:hover,button[type="submit"]:hover{
  background:var(--ld-gold-deep)!important;
  border-color:var(--ld-gold-deep)!important;
}
.btn:not(.gold){
  background:transparent!important;
  color:var(--ld-green-deep)!important;
  border-color:var(--ld-gold)!important;
}

/* Warm secondary surfaces, used sparingly */
.about-card,.legal-card,.feature-card,.benefit-card{
  background:var(--ld-surface-warm)!important;
  border-color:var(--ld-line)!important;
}

/* More restrained shadows and lines */
.booking,.room,.card,.post-card,.ld-result-card{
  box-shadow:0 12px 34px rgba(11,48,45,.07)!important;
}
hr{border-color:var(--ld-line)!important}

/* Mobile: keep contrast crisp instead of beige-on-beige */
@media(max-width:850px){
  .hero{background:#F7F6F2!important}
  .booking{background:#FFF!important}
  .top{background:var(--ld-green-deep)!important}
  .top .menu .account{
    background:rgba(255,255,255,.02)!important;
  }
}


/* =========================================================
   v1.4.8 — HIGH-CONTRAST HOTEL PALETTE
   Deliberately obvious 60 / 30 / 10 redesign
   ========================================================= */
:root{
 --hotel-white:#FCFCFA;
 --hotel-gray:#F1F2F0;
 --hotel-cream:#F5F0E7;
 --hotel-green:#176B62;
 --hotel-green2:#176B62;
 --hotel-charcoal:#222725;
 --hotel-gold:#B8893E;
 --hotel-gold2:#8D652D;
 --hotel-line:#D7D8D3;
}

/* 60% white / pale grey */
body{background:var(--hotel-white)!important;color:var(--hotel-charcoal)!important}
.hero{
 background:var(--hotel-white)!important;
 color:var(--hotel-charcoal)!important;
 border-bottom:1px solid var(--hotel-line)!important;
}
.hero h1{color:var(--hotel-green2)!important}
.hero p{color:#5C625F!important}
.section{background:var(--hotel-white)!important;color:var(--hotel-charcoal)!important}
.section.light{background:var(--hotel-gray)!important;color:var(--hotel-charcoal)!important}
#news{background:var(--hotel-gray)!important}
.booking{
 background:#FFFFFF!important;
 border:1px solid #D4D5D0!important;
 box-shadow:0 18px 45px rgba(9,45,42,.10)!important;
}
.booking h2{color:var(--hotel-green2)!important}
.field select,.field input,.field textarea{
 background:#F8F8F6!important;
 border:1px solid #C9CBC6!important;
 color:var(--hotel-charcoal)!important;
}

/* 30% deep green / charcoal */
.top{
 background:var(--hotel-green2)!important;
 border-bottom:1px solid rgba(184,137,62,.75)!important;
}
.top .menu,.top .menu>a{color:#FFFFFF!important}
.top .menu>a:hover{color:#E7C98F!important}
.top .menu .account{
 color:#FFFFFF!important;
 border:1px solid var(--hotel-gold)!important;
 background:transparent!important;
}
.top .menu .account:hover{background:var(--hotel-gold)!important;color:#fff!important}
.member{
 background:var(--hotel-green)!important;
 color:#FFFFFF!important;
}
.member h2,.member h3,.member p,.member .perks div{color:#FFFFFF!important}
.member .perks div{border-color:rgba(255,255,255,.25)!important}
.destination{
 background:var(--hotel-green2)!important;
 color:#FFFFFF!important;
}
.destination h3{color:#FFFFFF!important}
.destination.soon{
 background:#303633!important;
 color:#FFFFFF!important;
 opacity:1!important;
}
.footer{
 background:#202725!important;
 border-top:3px solid var(--hotel-gold)!important;
}
.footer,.footer p,.footer a,.footer li{color:#F6F3ED!important}
.footer h3{color:#DDBA77!important}

/* Room/article cards: clean white, no beige cast */
.room,.article,.panel,.fact,.ld-result-card{
 background:#FFFFFF!important;
 border-color:var(--hotel-line)!important;
 box-shadow:0 10px 28px rgba(20,35,31,.08)!important;
}
.roombody h3,.article h3,.panel h2,.fact{color:var(--hotel-green2)!important}
.roombody p,.article p,.panel p{color:#5F6562!important}

/* 10% gold: only accents and CTAs */
.kicker,.field label,.room small,.fact small,.news-more{
 color:var(--hotel-gold2)!important;
}
.btn.gold,button.btn.gold,input[type="submit"],button[type="submit"]{
 background:var(--hotel-gold)!important;
 border-color:var(--hotel-gold)!important;
 color:#FFFFFF!important;
}
.btn.gold:hover,button.btn.gold:hover,input[type="submit"]:hover,button[type="submit"]:hover{
 background:var(--hotel-gold2)!important;
 border-color:var(--hotel-gold2)!important;
}
.hero .btn:not(.gold),.roombody .btn:not(.gold),.member .btn:not(.gold){
 background:transparent!important;
 border:1px solid var(--hotel-gold)!important;
 color:var(--hotel-green2)!important;
}
.member .btn:not(.gold){color:#FFFFFF!important}

/* Remove old yellow-beige visual residue */
.about .panel,.facts .fact{background:#FFFFFF!important}
.news-tag{background:var(--hotel-green)!important;color:#FFFFFF!important}
.news-date{color:#555D59!important}

/* Mobile must visibly match desktop palette */
@media(max-width:850px){
 body,.hero,.section{background:var(--hotel-white)!important}
 .section.light,#news{background:var(--hotel-gray)!important}
 .top{background:var(--hotel-green2)!important}
 .booking{background:#FFFFFF!important}
 .hero h1{color:var(--hotel-green2)!important}
 .top .menu .account{
   color:#FFFFFF!important;
   border-color:var(--hotel-gold)!important;
   background:transparent!important;
 }
}

/* v1.4.9 room pricing + 2 addresses / 2 hotlines */
.ld-room-price{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:16px 0 18px}
.ld-room-price span{display:flex;flex-direction:column;gap:3px;padding:10px 9px;border:1px solid #ddd7cc;background:#f8f8f6;border-radius:8px}
.ld-room-price small{font-size:10px;letter-spacing:.08em;color:#8d652d!important}
.ld-room-price b{font-size:16px;color:#092d2a}
.ld-facts-v149{grid-template-columns:.8fr .7fr 1.35fr 1fr!important}
.ld-facts-v149 .fact{min-width:0}
.ld-facts-v149 .fact span,.ld-facts-v149 .fact a{display:block;margin-top:5px;line-height:1.45;color:#202725;text-decoration:none}
.ld-facts-v149 .fact a:hover{color:#8d652d}
@media(max-width:850px){
 .ld-room-price{grid-template-columns:1fr}
 .ld-room-price span{flex-direction:row;justify-content:space-between;align-items:center}
 .ld-facts-v149{grid-template-columns:1fr 1fr!important}
 .ld-facts-v149 .fact-wide{grid-column:1/-1}
}
@media(max-width:480px){.ld-facts-v149{grid-template-columns:1fr!important}.ld-facts-v149 .fact-wide{grid-column:auto}}

/* =========================================================
   v1.5.0 — readable contact facts + refined room rate layout
   ========================================================= */

/* About facts: every address / hotline is its own visual row */
.ld-facts-v149{
  display:grid!important;
  grid-template-columns:.8fr .7fr 1.65fr 1.15fr!important;
  gap:16px!important;
  align-items:stretch!important;
}
.ld-facts-v149 .fact{
  padding:22px 20px!important;
  line-height:1.45!important;
}
.ld-facts-v149 .fact small{
  display:block!important;
  margin-bottom:10px!important;
}
.ld-facts-v149 .fact span,
.ld-facts-v149 .fact a{
  display:block!important;
  margin:0!important;
  padding:0!important;
  line-height:1.55!important;
  overflow-wrap:anywhere!important;
}
.ld-facts-v149 .fact span + span,
.ld-facts-v149 .fact a + a{
  margin-top:11px!important;
  padding-top:11px!important;
  border-top:1px solid #e5e1d9!important;
}

/* Room prices: three clean rows, label left and amount right */
.ld-room-price{
  display:flex!important;
  flex-direction:column!important;
  gap:0!important;
  margin:18px 0 16px!important;
  padding:12px 14px!important;
  background:#f8f8f6!important;
  border:1px solid #e1ddd5!important;
  border-radius:10px!important;
}
.ld-room-price span{
  display:flex!important;
  flex-direction:row!important;
  justify-content:space-between!important;
  align-items:center!important;
  gap:16px!important;
  min-height:38px!important;
  padding:8px 0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
}
.ld-room-price span + span{
  border-top:1px solid #e5e1d9!important;
}
.ld-room-price small{
  display:block!important;
  flex:1 1 auto!important;
  margin:0!important;
  font-size:11px!important;
  line-height:1.25!important;
  letter-spacing:.075em!important;
  font-weight:600!important;
  color:#8d652d!important;
  white-space:normal!important;
}
.ld-room-price b{
  display:block!important;
  flex:0 0 auto!important;
  margin:0!important;
  font-size:17px!important;
  line-height:1.2!important;
  color:#092d2a!important;
  white-space:nowrap!important;
  font-variant-numeric:tabular-nums!important;
}
.room .roombody{
  display:flex!important;
  flex-direction:column!important;
}
.room .roombody .ld-room-price{
  width:100%!important;
  box-sizing:border-box!important;
}
.room .roombody>.btn{
  align-self:flex-start!important;
  margin-top:auto!important;
}

/* Tablet / phone */
@media(max-width:1000px){
  .ld-facts-v149{grid-template-columns:1fr 1fr!important}
  .ld-facts-v149 .fact-wide{grid-column:auto!important}
}
@media(max-width:600px){
  .ld-facts-v149{grid-template-columns:1fr!important}
  .ld-facts-v149 .fact{padding:18px!important}
  .ld-room-price{padding:10px 13px!important}
  .ld-room-price b{font-size:16px!important}
}

/* v1.5.1 cache-busted final layout */
#about .facts.ld-facts-v149 .fact.fact-wide span,
#about .facts.ld-facts-v149 .fact.fact-wide a{
 display:block!important;
 width:100%!important;
 clear:both!important;
}
#about .facts.ld-facts-v149 .fact.fact-wide span+span,
#about .facts.ld-facts-v149 .fact.fact-wide a+a{
 margin-top:12px!important;
 padding-top:12px!important;
 border-top:1px solid #ddd7cc!important;
}
.rooms .room .roombody .ld-room-price,
.room .roombody .ld-room-price{
 display:flex!important;
 flex-direction:column!important;
 width:100%!important;
 gap:0!important;
 padding:10px 14px!important;
 margin:16px 0!important;
 box-sizing:border-box!important;
}
.rooms .room .roombody .ld-room-price>span,
.room .roombody .ld-room-price>span{
 display:flex!important;
 flex-direction:row!important;
 justify-content:space-between!important;
 align-items:center!important;
 width:100%!important;
 box-sizing:border-box!important;
 padding:9px 0!important;
 border:0!important;
 background:transparent!important;
}
.rooms .room .roombody .ld-room-price>span+span,
.room .roombody .ld-room-price>span+span{
 border-top:1px solid #ddd7cc!important;
}

/* =========================================================
   v1.5.2 — rebalance About / Legal information block
   ========================================================= */

/* Give the hotel information more room and reduce the legal card */
.aboutgrid{
  grid-template-columns:minmax(0,1.35fr) minmax(360px,.85fr)!important;
  gap:44px!important;
  align-items:stretch!important;
}

/* Rebalance the four hotel fact cards:
   System wider, Area compact, Address wide, Hotline wide enough for one line */
.ld-facts-v149{
  grid-template-columns:1.22fr .82fr 1.85fr 1.32fr!important;
  gap:16px!important;
}
.ld-facts-v149 .fact{
  min-width:0!important;
}
.ld-facts-v149 .fact:nth-child(1){
  padding-left:22px!important;
  padding-right:22px!important;
}
.ld-facts-v149 .fact:nth-child(4){
  padding-left:20px!important;
  padding-right:20px!important;
}
.ld-facts-v149 .fact:nth-child(4) a,
.ld-facts-v149 .fact:nth-child(4) span{
  white-space:nowrap!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  font-size:16px!important;
}

/* Legal card becomes visibly smaller and less dominant */
.legal,
.legalbox,
.aboutgrid > *:last-child{
  padding:26px 28px!important;
}
.aboutgrid > *:last-child h2,
.aboutgrid > *:last-child h3{
  margin-top:0!important;
}

/* Keep sensible proportions on narrower screens */
@media(max-width:1100px){
  .aboutgrid{
    grid-template-columns:1fr!important;
    gap:26px!important;
  }
  .ld-facts-v149{
    grid-template-columns:1fr 1fr!important;
  }
}
@media(max-width:600px){
  .ld-facts-v149{
    grid-template-columns:1fr!important;
  }
  .ld-facts-v149 .fact:nth-child(4) a,
  .ld-facts-v149 .fact:nth-child(4) span{
    white-space:normal!important;
  }
}

/* v1.5.3 — lighter green navigation bar */
.top{
  background:#176b62!important;
  border-bottom:1px solid rgba(214,177,105,.58)!important;
}

/* v1.5.4 — unified LD HOTEL light emerald palette */
:root{
  --ld-green:#176B62;
  --ld-green-hover:#125B54;
}
.top,
.site-footer,
footer,
.footer-main,
.member-section,
.membership-section,
.ld-member-wrap,
.ld-membership-wrap,
.ld-register-wrap,
.ld-dark-panel,
.about-story-dark,
.story-dark,
.cta-dark,
.system-dark,
.booking-dark,
.privilege-dark{
  background-color:var(--ld-green)!important;
}
.top a:hover,
.site-footer a:hover,
footer a:hover{
  color:#fff!important;
}

/* v1.5.5 — ACTUAL full green synchronization
   Fixes later legacy palette blocks that overrode v1.5.4. */
:root{
  --ld-green:#176B62!important;
  --ld-green-deep:#176B62!important;
  --hotel-green:#176B62!important;
  --hotel-green2:#176B62!important;
}
.top,
.member,
.destination:not(.soon),
.footer,
.site-footer,
footer,
.member-section,
.membership-section,
.ld-member-wrap,
.ld-membership-wrap,
.ld-register-wrap,
.ld-dark-panel,
.about-story-dark,
.story-dark,
.cta-dark,
.system-dark,
.booking-dark,
.privilege-dark{
  background:#176B62!important;
  background-color:#176B62!important;
  background-image:none!important;
}
/* Keep Coming Soon visually secondary rather than green */
.destination.soon{
  background:#303633!important;
  color:#fff!important;
}
/* Footer inner dark strips should match too */
.footer-bottom,
.footer .footer-bottom,
.footer-legal,
.footer .legal{
  background-color:#176B62!important;
}

/* v1.5.6 — stronger gold eyebrow labels on green sections */
.destination:not(.soon) .eyebrow,
.member .eyebrow,
.member .kicker,
.destination:not(.soon) .kicker,
.member [class*="eyebrow"],
.destination:not(.soon) [class*="eyebrow"]{
  color:#F2D28B!important;
  font-size:15px!important;
  font-weight:800!important;
  letter-spacing:.14em!important;
  line-height:1.35!important;
  text-transform:uppercase!important;
  opacity:1!important;
  text-shadow:0 1px 0 rgba(0,0,0,.08)!important;
}
@media(max-width:600px){
  .destination:not(.soon) .eyebrow,
  .member .eyebrow,
  .member .kicker,
  .destination:not(.soon) .kicker{
    font-size:13px!important;
    letter-spacing:.12em!important;
  }
}


/* v1.5.7 - Booking room visual preview */
.ld-booking-room-showcase{
  display:grid;
  grid-template-columns:minmax(280px,360px) minmax(0,1fr);
  gap:34px;
  align-items:stretch;
  margin-top:20px;
}
.ld-booking-room-list{
  display:block !important;
  margin:0 !important;
}
.ld-booking-room-list .room{
  width:100% !important;
  max-width:none !important;
  height:100%;
}
.ld-room-visual{
  min-height:610px;
  border-radius:18px;
  overflow:hidden;
  background:#fff;
  border:1px solid rgba(29,117,108,.16);
  box-shadow:0 18px 48px rgba(28,57,53,.10);
  display:flex;
  flex-direction:column;
}
.ld-room-visual-photo{
  position:relative;
  flex:1;
  min-height:520px;
  background-size:cover;
  background-position:center;
}
.ld-room-visual-photo:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(to top,rgba(12,55,50,.78) 0%,rgba(12,55,50,.12) 50%,rgba(12,55,50,0) 75%);
}
.ld-room-visual-overlay{
  position:absolute;
  z-index:2;
  left:34px;
  right:34px;
  bottom:30px;
  color:#fff;
}
.ld-room-visual-overlay span{
  color:#f0c96c;
  font-size:12px;
  font-weight:900;
  letter-spacing:.16em;
}
.ld-room-visual-overlay h3{
  color:#fff;
  font-family:Georgia,serif;
  font-size:36px;
  line-height:1.08;
  margin:8px 0 10px;
}
.ld-room-visual-overlay p{
  max-width:620px;
  margin:0;
  color:rgba(255,255,255,.92);
  line-height:1.6;
}
.ld-room-visual-note{
  display:flex;
  gap:16px;
  align-items:center;
  padding:18px 22px;
  background:#f7f4ed;
  color:#174e48;
}
.ld-room-visual-note strong{white-space:nowrap}
.ld-room-visual-note span{color:#716b62;font-size:14px}

@media(max-width:900px){
  .ld-booking-room-showcase{grid-template-columns:1fr;gap:20px}
  .ld-booking-room-list{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
  .ld-room-visual{min-height:420px}
  .ld-room-visual-photo{min-height:360px}
}
@media(max-width:600px){
  .ld-booking-room-list{grid-template-columns:1fr}
  .ld-room-visual{min-height:340px;border-radius:14px}
  .ld-room-visual-photo{min-height:300px}
  .ld-room-visual-overlay{left:20px;right:20px;bottom:20px}
  .ld-room-visual-overlay h3{font-size:28px}
  .ld-room-visual-note{display:block}
  .ld-room-visual-note span{display:block;margin-top:4px}
}

/* v1.5.8 room gallery */
.ld-room-gallery-viewer{display:flex;flex-direction:column;flex:1;min-height:0}
.ld-room-gallery-viewer .ld-room-visual-photo{flex:1}
.ld-room-gallery-thumbs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;padding:10px;background:#fff;border-top:1px solid #eee5d8}
.ld-room-thumb{padding:0;border:2px solid transparent;border-radius:8px;overflow:hidden;background:#eee;cursor:pointer;aspect-ratio:4/3}
.ld-room-thumb img{width:100%;height:100%;display:block;object-fit:cover}
.ld-room-thumb.is-active{border-color:#d6a84f}
@media(max-width:600px){.ld-room-gallery-thumbs{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;padding:8px}}

/* v1.5.9 - Trang chi tiết riêng cho từng hạng phòng */
.ld-room-detail{padding:54px 0 80px;background:#fbfaf7}
.ld-room-detail-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:28px}
.ld-room-detail-head h1{margin:7px 0 0;font-size:clamp(36px,5vw,64px);line-height:1;color:#126f68}
.ld-room-detail-head .room-label{font-size:13px;font-weight:800;letter-spacing:.18em;color:#b77922}
.ld-room-detail-back{color:#126f68;text-decoration:none;font-weight:700}
.ld-detail-gallery{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,.7fr);gap:12px}
.ld-detail-main{min-height:570px;border-radius:18px;background-size:cover;background-position:center;position:relative;overflow:hidden}
.ld-detail-main:after{content:"";position:absolute;inset:auto 0 0;height:35%;background:linear-gradient(transparent,rgba(0,0,0,.48));pointer-events:none}
.ld-detail-thumbs{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-content:start}
.ld-detail-thumb{padding:0;border:2px solid transparent;border-radius:12px;overflow:hidden;background:#eee;cursor:pointer;aspect-ratio:4/3}
.ld-detail-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.ld-detail-thumb.is-active{border-color:#d7a64a}
.ld-room-detail-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(310px,.7fr);gap:34px;margin-top:34px}
.ld-room-copy,.ld-room-bookbox{background:#fff;border:1px solid #e6ddcf;border-radius:16px;padding:28px}
.ld-room-copy h2,.ld-room-bookbox h2{margin-top:0;color:#126f68}
.ld-room-copy .lead{font-size:18px;line-height:1.8;color:#4f4b45}
.ld-room-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:24px 0}
.ld-room-fact{padding:14px 16px;background:#f6f2ea;border-radius:10px}
.ld-room-fact span{display:block;font-size:11px;font-weight:800;letter-spacing:.12em;color:#a46c20;margin-bottom:5px}
.ld-room-fact strong{font-size:16px;color:#173e3a}
.ld-room-detail .ld-price-box{margin-top:18px}
.ld-room-bookbox{height:max-content;position:sticky;top:110px}
.ld-room-bookbox .btn{display:block;text-align:center;margin-top:18px}
.ld-room-bookbox p{line-height:1.65;color:#625d56}
.ld-room-description{line-height:1.8}
.ld-room-description img{max-width:100%;height:auto;border-radius:12px}
.ld-room-card-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.ld-room-card-actions .btn{margin:0}
.ld-room-card-actions .ghost{background:transparent;color:#126f68;border:1px solid #126f68}
@media(max-width:900px){
 .ld-detail-gallery,.ld-room-detail-grid{grid-template-columns:1fr}
 .ld-detail-main{min-height:430px}
 .ld-detail-thumbs{grid-template-columns:repeat(4,1fr)}
 .ld-room-bookbox{position:static}
}
@media(max-width:600px){
 .ld-room-detail{padding-top:28px}
 .ld-room-detail-head{display:block}
 .ld-room-detail-back{display:inline-block;margin-top:15px}
 .ld-detail-main{min-height:330px;border-radius:12px}
 .ld-detail-thumbs{grid-template-columns:repeat(3,1fr);gap:7px}
 .ld-room-detail-grid{gap:18px;margin-top:20px}
 .ld-room-copy,.ld-room-bookbox{padding:20px}
 .ld-room-facts{grid-template-columns:1fr}
}

/* v1.6.0 - Header đồng bộ logo LD HOTEL */
:root{
  --ld-teal:#087b7b;
  --ld-teal-deep:#075f60;
  --ld-teal-dark:#064b4d;
  --ld-aqua:#21b9bd;
  --ld-gold:#ad7d34;
  --ld-ivory:#fbfaf6;
}
.top{
  background:linear-gradient(90deg,var(--ld-teal-dark) 0%,var(--ld-teal-deep) 48%,var(--ld-teal) 100%)!important;
  border-bottom:1px solid rgba(173,125,52,.72)!important;
  box-shadow:0 5px 22px rgba(3,53,55,.13);
}
.top .wrap.nav{
  min-height:94px!important;
  height:94px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:30px!important;
}
.top .header-brand{
  flex:0 0 310px!important;
  width:310px!important;
  min-width:310px!important;
  max-width:310px!important;
  height:82px!important;
  overflow:visible!important;
  display:flex!important;
  align-items:center!important;
}
.top .header-brand a{
  width:100%!important;
  height:78px!important;
  display:flex!important;
  align-items:center!important;
}
.top .header-brand img{
  width:100%!important;
  height:76px!important;
  max-width:310px!important;
  max-height:76px!important;
  object-fit:contain!important;
  object-position:left center!important;
  filter:drop-shadow(0 2px 2px rgba(0,0,0,.08));
}
.top .menu{
  margin-left:auto!important;
  gap:28px!important;
  color:#fff!important;
}
.top .menu > a:not(.account){
  color:#fff!important;
  font-weight:700!important;
}
.top .menu > a:not(.account):hover{
  color:#e4c27d!important;
}
.top .account{
  color:#fff!important;
  border:1px solid #c99b49!important;
  border-radius:999px!important;
  background:rgba(4,67,69,.20)!important;
  padding:12px 22px!important;
}
.top .account:hover{
  background:#c99b49!important;
  color:#073f41!important;
}
@media(max-width:1050px){
  .top .header-brand{
    flex-basis:250px!important;width:250px!important;min-width:250px!important;max-width:250px!important;
  }
  .top .header-brand img{max-width:250px!important;height:68px!important}
  .top .menu{gap:18px!important}
}
@media(max-width:850px){
  .top .wrap.nav{height:82px!important;min-height:82px!important;gap:12px!important}
  .top .header-brand{
    flex:0 0 205px!important;width:205px!important;min-width:205px!important;max-width:205px!important;height:72px!important;
  }
  .top .header-brand a{height:68px!important}
  .top .header-brand img{width:205px!important;max-width:205px!important;height:64px!important;max-height:64px!important}
  .top .account{padding:10px 15px!important;font-size:13px!important;white-space:nowrap!important}
}
@media(max-width:520px){
  .top .wrap.nav{width:calc(100% - 24px)!important}
  .top .header-brand{
    flex:0 0 170px!important;width:170px!important;min-width:170px!important;max-width:170px!important;
  }
  .top .header-brand img{width:170px!important;max-width:170px!important;height:58px!important}
  .top .account{font-size:12px!important;padding:9px 12px!important}
}
@media(max-width:390px){
  .top .header-brand{
    flex-basis:145px!important;width:145px!important;min-width:145px!important;max-width:145px!important;
  }
  .top .header-brand img{width:145px!important;max-width:145px!important}
  .top .account{font-size:11px!important;padding:8px 10px!important}
}

/* =========================================================
   v1.6.1 — LD HOTEL Pastel Luxury palette
   #3C284B plum | #8F89B7 lavender | #C7D7FB powder blue
   #F1B0DA pink | #FEC4B6 peach
   ========================================================= */
:root{
 --ld-plum:#3C284B;
 --ld-lavender:#8F89B7;
 --ld-blue:#C7D7FB;
 --ld-pink:#F1B0DA;
 --ld-peach:#FEC4B6;
 --ld-ink:#30283a;
 --ld-paper:#fffdfd;
 --ld-soft:#f8f5fb;
}

/* Header: tím mận sang, không biến site thành tiệm bánh pastel */
body .top{
 background:linear-gradient(90deg,#3C284B 0%,#4a355b 58%,#62537b 100%)!important;
 border-bottom:2px solid #FEC4B6!important;
 box-shadow:0 5px 22px rgba(60,40,75,.14)!important;
}
body .top .menu>a:not(.account){color:#fff!important}
body .top .menu>a:not(.account):hover{color:#FEC4B6!important}
body .top .account{
 color:#fff!important;
 border-color:#F1B0DA!important;
 background:rgba(241,176,218,.08)!important;
}
body .top .account:hover{background:#F1B0DA!important;color:#3C284B!important}

/* Nền lớn */
body{background:#fff!important;color:var(--ld-ink)!important}
body .hero,
body .room-search,
body .about,
body .rooms,
body .news,
body .ld-room-detail,
body .page-hero{background:#fff!important}
body .system,
body .membership,
body .member-section,
body .ld-member-area{background:#3C284B!important;color:#fff!important}

/* Các block phụ luân phiên màu nhẹ */
body .section-soft,
body .room-card,
body .news-card,
body .ld-room-copy,
body .ld-room-bookbox,
body .search-box,
body .booking-box{background:#fff!important}
body .room-card,
body .news-card,
body .ld-room-copy,
body .ld-room-bookbox,
body .search-box,
body .booking-box{
 border-color:#ddd5e5!important;
 box-shadow:0 14px 35px rgba(60,40,75,.07)!important;
}

/* Heading / typography */
body h1,body h2,body h3,body h4,
body .hero h1,
body .ld-room-detail-head h1,
body .room-card h3,
body .news-card h3{color:#3C284B!important}
body .system h1,body .system h2,body .system h3,
body .membership h1,body .membership h2,body .membership h3,
body .member-section h1,body .member-section h2,body .member-section h3{color:#fff!important}

/* Kicker cũ vàng/teal đổi thành lavender hoặc peach */
body .kicker,
body .eyebrow,
body .room-label,
body .section-label,
body .overline,
body [class*="kicker"]{
 color:#8F89B7!important;
 font-weight:800!important;
}
body .system .kicker,
body .membership .kicker,
body .member-section .kicker,
body .system .eyebrow,
body .membership .eyebrow{color:#FEC4B6!important}

/* CTA chính: peach trên plum, CTA phụ lavender */
body .btn,
body button[type="submit"],
body input[type="submit"]{
 background:#8F89B7!important;
 border-color:#8F89B7!important;
 color:#fff!important;
}
body .btn:hover,
body button[type="submit"]:hover,
body input[type="submit"]:hover{
 background:#3C284B!important;
 border-color:#3C284B!important;
 color:#fff!important;
}
body .btn.gold,
body .gold,
body .cta-primary{
 background:#FEC4B6!important;
 border-color:#FEC4B6!important;
 color:#3C284B!important;
}
body .btn.gold:hover,
body .cta-primary:hover{background:#F1B0DA!important;border-color:#F1B0DA!important}
body .btn.ghost{
 background:transparent!important;
 border-color:#8F89B7!important;
 color:#3C284B!important;
}

/* Form */
body input,body select,body textarea{
 border-color:#cfc6d8!important;
 background:#fff!important;
 color:#30283a!important;
}
body input:focus,body select:focus,body textarea:focus{
 border-color:#8F89B7!important;
 box-shadow:0 0 0 3px rgba(199,215,251,.55)!important;
 outline:none!important;
}

/* Cards phòng và giá */
body .ld-price-box,
body .price-box{
 background:#f8f5fb!important;
 border-color:#ded6e6!important;
}
body .ld-price-box strong,
body .price-box strong{color:#3C284B!important}
body .ld-room-fact{background:#f4f0f7!important}
body .ld-room-fact span{color:#8F89B7!important}
body .ld-room-fact strong{color:#3C284B!important}
body .ld-detail-thumb.is-active{border-color:#F1B0DA!important}

/* System hotel cards */
body .system-card,
body .hotel-card,
body .system .card{
 background:#4a355b!important;
 border-color:#8F89B7!important;
}
body .system-card.coming,
body .hotel-card.coming{background:#6e678f!important}

/* Membership dark section */
body .membership,
body .member-section{
 background:linear-gradient(135deg,#3C284B 0%,#514063 100%)!important;
}
body .membership .benefit,
body .member-section .benefit{
 border-color:rgba(199,215,251,.35)!important;
 background:rgba(199,215,251,.06)!important;
}

/* Link / icon */
body a{accent-color:#8F89B7}
body main a:not(.btn):not(.account){color:#62537b}
body main a:not(.btn):not(.account):hover{color:#3C284B}

/* Footer */
body footer,body .footer{
 background:#302239!important;
 color:#fff!important;
 border-top:2px solid #FEC4B6!important;
}
body footer a,body .footer a{color:#C7D7FB!important}

/* Mobile */
@media(max-width:850px){
 body .top{background:#3C284B!important}
 body .top .account{border-color:#FEC4B6!important}
}

/* =========================================================
   v1.6.2 — FULL SITE PALETTE SYNC
   Primary #C7D7FB | Secondary #8F89B7 | Accent #F1B0DA
   CTA #FEC4B6 | Ink #3C284B
   ========================================================= */
:root{
 --ld-primary:#C7D7FB;
 --ld-secondary:#8F89B7;
 --ld-accent:#F1B0DA;
 --ld-cta:#FEC4B6;
 --ld-ink:#3C284B;
 --ld-white:#FFFFFF;
 --ld-wash:#F7F8FD;
}

/* HEADER */
html body .top,
html body header.top,
html body .site-header{
 background:linear-gradient(90deg,#C7D7FB 0%,#d7e2fc 55%,#F1B0DA 145%)!important;
 border-bottom:1px solid #8F89B7!important;
 box-shadow:0 5px 22px rgba(60,40,75,.10)!important;
}
html body .top .menu>a:not(.account),
html body .site-header a{color:#3C284B!important}
html body .top .menu>a:not(.account):hover{color:#6d6597!important}
html body .top .account{
 color:#3C284B!important;
 border-color:#8F89B7!important;
 background:rgba(255,255,255,.34)!important;
}
html body .top .account:hover{background:#FEC4B6!important;color:#3C284B!important}

/* TOÀN BỘ NỀN SECTION */
html body,
html body main{background:#fff!important;color:#3C284B!important}
html body .hero{background:linear-gradient(135deg,#fff 0%,#f7f9ff 65%,#fceff8 100%)!important}
html body .rooms,
html body .news,
html body .about,
html body .room-search,
html body .ld-room-detail,
html body .page-main{background:#fff!important}
html body .system,
html body .membership,
html body .member-section,
html body .ld-member-area,
html body .privilege-section{
 background:linear-gradient(135deg,#C7D7FB 0%,#d9e4fc 55%,#F1B0DA 145%)!important;
 color:#3C284B!important;
}

/* Đồng bộ tất cả heading */
html body h1,html body h2,html body h3,html body h4,
html body .system h1,html body .system h2,html body .system h3,
html body .membership h1,html body .membership h2,html body .membership h3,
html body .member-section h1,html body .member-section h2,html body .member-section h3{
 color:#3C284B!important;
}

/* Nhãn nhỏ trước đây màu vàng */
html body .kicker,
html body .eyebrow,
html body .room-label,
html body .section-label,
html body .overline,
html body [class*="kicker"],
html body .system .kicker,
html body .membership .kicker,
html body .member-section .kicker{
 color:#6d6597!important;
 font-weight:800!important;
 letter-spacing:.16em!important;
}

/* SYSTEM / HOTEL CARDS */
html body .system-card,
html body .hotel-card,
html body .system .card{
 background:#8F89B7!important;
 color:#fff!important;
 border:1px solid rgba(60,40,75,.12)!important;
}
html body .system-card h2,html body .system-card h3,
html body .hotel-card h2,html body .hotel-card h3,
html body .system .card h2,html body .system .card h3{color:#fff!important}
html body .system-card .kicker,html body .hotel-card .kicker{color:#FEC4B6!important}
html body .system-card.coming,
html body .hotel-card.coming{
 background:#F1B0DA!important;
 color:#3C284B!important;
}
html body .system-card.coming h2,
html body .system-card.coming h3,
html body .hotel-card.coming h2,
html body .hotel-card.coming h3{color:#3C284B!important}

/* MEMBERSHIP */
html body .membership .benefit,
html body .member-section .benefit,
html body .member-benefit,
html body .benefit{
 background:rgba(255,255,255,.42)!important;
 border-color:#8F89B7!important;
 color:#3C284B!important;
}
html body .membership p,
html body .member-section p{color:#3C284B!important}

/* PHÒNG / BÀI VIẾT / FORM CARD */
html body .room-card,
html body .news-card,
html body .ld-room-copy,
html body .ld-room-bookbox,
html body .search-box,
html body .booking-box,
html body .ld-price-box,
html body .price-box{
 background:#fff!important;
 border-color:#d8d9e8!important;
 box-shadow:0 14px 34px rgba(60,40,75,.08)!important;
}
html body .ld-price-box,
html body .price-box{background:#f7f8fd!important}
html body .ld-room-fact{background:#eef3ff!important}
html body .ld-room-fact span{color:#6d6597!important}
html body .ld-room-fact strong,
html body .ld-price-box strong,
html body .price-box strong{color:#3C284B!important}

/* BUTTONS */
html body .btn,
html body button[type="submit"],
html body input[type="submit"]{
 background:#8F89B7!important;
 border-color:#8F89B7!important;
 color:#fff!important;
}
html body .btn:hover,
html body button[type="submit"]:hover,
html body input[type="submit"]:hover{
 background:#3C284B!important;
 border-color:#3C284B!important;
 color:#fff!important;
}
html body .btn.gold,
html body .gold,
html body .cta-primary{
 background:#FEC4B6!important;
 border-color:#FEC4B6!important;
 color:#3C284B!important;
}
html body .btn.gold:hover,
html body .cta-primary:hover{
 background:#F1B0DA!important;
 border-color:#F1B0DA!important;
 color:#3C284B!important;
}
html body .btn.ghost{
 background:#fff!important;
 border-color:#8F89B7!important;
 color:#3C284B!important;
}

/* FORM */
html body input,
html body select,
html body textarea{
 background:#fff!important;
 border-color:#bcb9d2!important;
 color:#3C284B!important;
}
html body input:focus,
html body select:focus,
html body textarea:focus{
 border-color:#8F89B7!important;
 box-shadow:0 0 0 3px rgba(199,215,251,.8)!important;
}

/* LINKS / ACTIVE / THUMB */
html body main a:not(.btn):not(.account){color:#665d91!important}
html body main a:not(.btn):not(.account):hover{color:#3C284B!important}
html body .ld-detail-thumb.is-active{border-color:#F1B0DA!important}

/* ACCOUNT / DASHBOARD */
html body .ld-account,
html body .ld-dashboard,
html body .member-dashboard{
 background:#f7f8fd!important;
}
html body .ld-account-card,
html body .dashboard-card,
html body .member-card{
 background:#fff!important;
 border-color:#d7d5e5!important;
}

/* FOOTER cũng đồng bộ, không còn xanh cũ */
html body footer,
html body .footer,
html body .site-footer{
 background:#8F89B7!important;
 color:#fff!important;
 border-top:3px solid #FEC4B6!important;
}
html body footer h2,html body footer h3,
html body .footer h2,html body .footer h3{color:#fff!important}
html body footer a,html body .footer a{color:#fff!important}
html body footer a:hover,html body .footer a:hover{color:#FEC4B6!important}

/* MOBILE */
@media(max-width:850px){
 html body .top,
 html body header.top,
 html body .site-header{
  background:#C7D7FB!important;
 }
 html body .top .account{
  color:#3C284B!important;
  border-color:#8F89B7!important;
 }
}

/* v1.6.3 logo badge: white framed surface + crisp responsive rendering */
html body .top .brand,
html body .site-header .brand,
html body header .brand{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#fff!important;
  border:1px solid rgba(60,40,75,.16)!important;
  border-radius:14px!important;
  padding:7px 11px!important;
  min-width:76px!important;
  height:64px!important;
  box-sizing:border-box!important;
  box-shadow:0 7px 20px rgba(60,40,75,.13)!important;
  overflow:hidden!important;
}
html body .top .brand img,
html body .site-header .brand img,
html body header .brand img{
  display:block!important;
  width:auto!important;
  height:50px!important;
  max-width:150px!important;
  max-height:50px!important;
  object-fit:contain!important;
  object-position:center!important;
  image-rendering:auto!important;
  transform:translateZ(0);
  filter:contrast(1.025) saturate(1.04)!important;
}
@media(max-width:850px){
 html body .top .brand,
 html body .site-header .brand,
 html body header .brand{
   height:58px!important;
   min-width:70px!important;
   padding:6px 9px!important;
   border-radius:12px!important;
   box-shadow:0 5px 15px rgba(60,40,75,.12)!important;
 }
 html body .top .brand img,
 html body .site-header .brand img,
 html body header .brand img{
   height:44px!important;
   max-height:44px!important;
   max-width:120px!important;
 }
}

/* v1.6.4 — restore LD teal palette; KEEP v1.6.3 white logo frame */
:root{
 --ld-teal:#1d756d;
 --ld-teal-dark:#155f59;
 --ld-teal-deep:#104d48;
 --ld-gold:#c9953e;
 --ld-cream:#f7f3ea;
 --ld-white:#fff;
 --ld-ink:#173b38;
}
html body .top,
html body header.top,
html body .site-header{
 background:#1d756d!important;
 border-bottom:1px solid #c9953e!important;
 box-shadow:0 5px 22px rgba(16,77,72,.13)!important;
}
html body .top .menu>a:not(.account),
html body .site-header a{color:#fff!important}
html body .top .menu>a:not(.account):hover{color:#f2d59b!important}
html body .top .account{
 color:#fff!important;
 border-color:#c9953e!important;
 background:transparent!important;
}
html body .top .account:hover{background:#c9953e!important;color:#fff!important}

html body .system,
html body .membership,
html body .member-section,
html body .ld-member-area,
html body .privilege-section{
 background:#1d756d!important;
 color:#fff!important;
}
html body .system h1,html body .system h2,html body .system h3,
html body .membership h1,html body .membership h2,html body .membership h3,
html body .member-section h1,html body .member-section h2,html body .member-section h3{
 color:#fff!important;
}
html body .system .kicker,
html body .membership .kicker,
html body .member-section .kicker,
html body .section-label,
html body .eyebrow,
html body .overline{
 color:#f2c66d!important;
 font-weight:800!important;
}
html body .system-card,
html body .hotel-card,
html body .system .card{
 background:#155f59!important;
 color:#fff!important;
 border-color:rgba(255,255,255,.14)!important;
}
html body .system-card h2,html body .system-card h3,
html body .hotel-card h2,html body .hotel-card h3{color:#fff!important}
html body .system-card.coming,
html body .hotel-card.coming{background:#31534f!important;color:#fff!important}

html body .membership .benefit,
html body .member-section .benefit,
html body .member-benefit,
html body .benefit{
 background:rgba(255,255,255,.035)!important;
 border-color:rgba(255,255,255,.26)!important;
 color:#fff!important;
}
html body .membership p,html body .member-section p{color:#fff!important}

html body h1,html body h2,html body h3,html body h4{color:#104d48}
html body .room-label,
html body .kicker{color:#b97922!important}
html body .btn,
html body button[type="submit"],
html body input[type="submit"]{
 background:#1d756d!important;
 border-color:#1d756d!important;
 color:#fff!important;
}
html body .btn:hover,
html body button[type="submit"]:hover,
html body input[type="submit"]:hover{
 background:#104d48!important;
 border-color:#104d48!important;
}
html body .btn.gold,
html body .gold,
html body .cta-primary{
 background:#c9953e!important;
 border-color:#c9953e!important;
 color:#fff!important;
}
html body .btn.ghost{
 background:#fff!important;
 border-color:#1d756d!important;
 color:#155f59!important;
}
html body input:focus,html body select:focus,html body textarea:focus{
 border-color:#1d756d!important;
 box-shadow:0 0 0 3px rgba(29,117,109,.14)!important;
}
html body main a:not(.btn):not(.account){color:#155f59!important}
html body footer,html body .footer,html body .site-footer{
 background:#155f59!important;
 color:#fff!important;
 border-top:3px solid #c9953e!important;
}

/* Logo badge intentionally remains WHITE */
html body .top .brand,
html body .site-header .brand,
html body header .brand{
 background:#fff!important;
 border:1px solid rgba(16,77,72,.18)!important;
 box-shadow:0 7px 20px rgba(16,77,72,.18)!important;
}
@media(max-width:850px){
 html body .top,
 html body header.top,
 html body .site-header{background:#1d756d!important}
}


/* =========================================================
   v1.6.5 - LD HOTEL white logo plaque on teal header
   Matches the approved visual: white plaque + gold frame.
   ========================================================= */
html body .top .nav{
    min-height:92px!important;
    height:auto!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:28px!important;
}
html body .top .header-brand{
    flex:0 0 390px!important;
    width:390px!important;
    max-width:390px!important;
    height:76px!important;
    display:flex!important;
    align-items:center!important;
}
html body .top .header-brand > a{
    width:100%!important;
    height:68px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:hidden!important;
    background:#fff!important;
    border:2px solid #c9953e!important;
    border-radius:14px!important;
    padding:7px 14px!important;
    box-shadow:
        0 7px 20px rgba(16,77,72,.22),
        inset 0 0 0 1px rgba(201,149,62,.18)!important;
}
html body .top .header-brand img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    max-width:100%!important;
    max-height:100%!important;
    object-fit:contain!important;
    object-position:center!important;
    image-rendering:auto!important;
}
html body .top .menu{
    margin-left:auto!important;
    flex:1 1 auto!important;
    justify-content:flex-end!important;
}

/* Tablet */
@media(max-width:1100px){
    html body .top .header-brand{
        flex-basis:310px!important;
        width:310px!important;
        max-width:310px!important;
        height:70px!important;
    }
    html body .top .header-brand > a{
        height:62px!important;
        padding:7px 11px!important;
        border-radius:12px!important;
    }
    html body .top .menu{gap:16px!important}
}

/* Mobile: keep the complete LD HOTEL logo readable, not cropped or stretched */
@media(max-width:850px){
    html body .top .nav{
        min-height:82px!important;
        padding:7px 0!important;
        gap:12px!important;
    }
    html body .top .header-brand{
        flex:0 1 255px!important;
        width:min(255px,55vw)!important;
        max-width:255px!important;
        height:62px!important;
    }
    html body .top .header-brand > a{
        height:56px!important;
        padding:6px 9px!important;
        border-width:1.5px!important;
        border-radius:11px!important;
    }
    html body .top .account{
        white-space:nowrap!important;
        padding:10px 13px!important;
        font-size:13px!important;
    }
}
@media(max-width:520px){
    html body .top .nav{
        width:calc(100% - 22px)!important;
        min-height:74px!important;
        gap:8px!important;
    }
    html body .top .header-brand{
        flex:0 1 205px!important;
        width:min(205px,52vw)!important;
        max-width:205px!important;
        height:54px!important;
    }
    html body .top .header-brand > a{
        height:49px!important;
        padding:5px 7px!important;
        border-radius:9px!important;
    }
    html body .top .account{
        padding:9px 10px!important;
        font-size:12px!important;
        border-radius:999px!important;
    }
}


/* =========================================================
   v1.6.6 - responsive logo sizing correction
   Desktop: narrower plaque. Mobile: prevent flex-shrink.
   ========================================================= */

/* Desktop: bớt phần khung trắng hai bên, gọn hơn */
@media(min-width:1101px){
  html body .top .header-brand{
    flex:0 0 315px!important;
    width:315px!important;
    max-width:315px!important;
    height:70px!important;
  }
  html body .top .header-brand > a{
    width:315px!important;
    height:62px!important;
    padding:5px 8px!important;
    border-radius:12px!important;
  }
}

/* Tablet */
@media(min-width:851px) and (max-width:1100px){
  html body .top .header-brand{
    flex:0 0 275px!important;
    width:275px!important;
    max-width:275px!important;
    height:66px!important;
  }
  html body .top .header-brand > a{
    width:275px!important;
    height:58px!important;
    padding:5px 8px!important;
  }
}

/* Điện thoại: KHÔNG cho flex ép logo teo lại */
@media(max-width:850px){
  html body .top .nav{
    width:calc(100% - 24px)!important;
    min-height:82px!important;
    gap:10px!important;
  }
  html body .top .header-brand{
    flex:0 0 175px!important;
    width:175px!important;
    min-width:175px!important;
    max-width:175px!important;
    height:60px!important;
  }
  html body .top .header-brand > a{
    width:175px!important;
    min-width:175px!important;
    height:56px!important;
    padding:4px 6px!important;
    border-radius:11px!important;
  }
  html body .top .header-brand img{
    width:100%!important;
    height:100%!important;
    max-width:none!important;
    object-fit:contain!important;
  }
  html body .top .menu{
    min-width:0!important;
    flex:1 1 auto!important;
  }
  html body .top .account{
    margin-left:auto!important;
    padding:10px 12px!important;
    font-size:13px!important;
  }
}

@media(max-width:430px){
  html body .top .header-brand{
    flex-basis:155px!important;
    width:155px!important;
    min-width:155px!important;
    max-width:155px!important;
  }
  html body .top .header-brand > a{
    width:155px!important;
    min-width:155px!important;
  }
  html body .top .account{
    padding:9px 10px!important;
    font-size:12px!important;
  }
}

@media(max-width:375px){
  html body .top .header-brand{
    flex-basis:140px!important;
    width:140px!important;
    min-width:140px!important;
    max-width:140px!important;
  }
  html body .top .header-brand > a{
    width:140px!important;
    min-width:140px!important;
  }
}

/* =========================================================
   v1.8.0 Professional hotel homepage, editable hero/promo images
   ========================================================= */
:root{--pro-green:#214d37;--pro-deep:#173d2c;--pro-sage:#e7eddd;--pro-cream:#f8f6ee;--pro-gold:#dcb16b;--pro-line:#d7ddcf}
.ld-pro-home{background:var(--pro-cream)}
.ld-pro-home>.hero{display:none!important}
.ld-pro-home .wrap{width:min(1240px,calc(100% - 44px))}
.ld-pro-hero{background:linear-gradient(100deg,#f8f7ef 0%,#edf1e6 100%);padding:30px 0 0}
.ld-pro-hero-grid{display:grid;grid-template-columns:.82fr 1.18fr;min-height:410px;align-items:stretch}
.ld-pro-hero-copy{padding:38px 40px 42px 4px;display:flex;flex-direction:column;justify-content:center}
.ld-pro-hero-copy .kicker{color:#a97835!important;letter-spacing:.15em}
.ld-pro-hero-copy h1{font:500 clamp(50px,5.2vw,76px)/.99 Georgia,serif!important;color:var(--pro-deep)!important;margin:12px 0 20px!important}
.ld-pro-hero-copy p{max-width:560px;font-size:16px;line-height:1.7;color:#4f5952;margin:0 0 22px}
.ld-pro-hero-image{overflow:hidden;border-radius:42px 0 0 42px;min-height:410px}
.ld-pro-hero-image img{display:block;width:100%;height:100%;object-fit:cover}
.ld-pro-home .btn{border-radius:8px!important}
.ld-pro-home .btn.gold{background:var(--pro-gold)!important;border-color:var(--pro-gold)!important;color:#17392a!important}
.ld-pro-home .btn.ghost{background:transparent!important;color:var(--pro-green)!important;border-color:#ad874f!important}
.ld-pro-about{padding:34px 0 26px;background:linear-gradient(#eaf0e0,#e3ead9)}
.ld-pro-section-title{text-align:center;max-width:820px;margin:0 auto 26px}
.ld-pro-section-title .kicker{font-family:Georgia,serif;color:var(--pro-deep)!important;font-size:16px}
.ld-pro-section-title h2{font:500 33px/1.15 Georgia,serif;color:var(--pro-deep);margin:7px 0 10px}
.ld-pro-section-title p{color:#4d5850;line-height:1.6;margin:0}
.ld-pro-features{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}
.ld-pro-features article{background:#fff;border:1px solid rgba(33,77,55,.12);border-radius:13px;padding:17px;display:flex;gap:13px;box-shadow:0 7px 20px rgba(34,67,47,.06)}
.ld-pro-features article>span{font:29px Georgia;color:var(--pro-green)}
.ld-pro-features h3{font-size:15px;color:var(--pro-deep);margin:0 0 4px}
.ld-pro-features p{font-size:13px;line-height:1.5;color:#596159;margin:0}
.ld-pro-booking-band{background:#e3ead9;padding:0 0 38px}
.ld-pro-booking-grid{display:grid;grid-template-columns:1fr 1.08fr;gap:15px}
.ld-pro-promo{position:relative;min-height:385px;overflow:hidden;border-radius:16px;background:var(--pro-deep)}
.ld-pro-promo>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ld-pro-promo-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(17,56,38,.88),rgba(17,56,38,.14))}
.ld-pro-promo-copy{position:absolute;z-index:2;left:28px;bottom:28px;max-width:340px;color:#fff}
.ld-pro-promo-copy .kicker{color:#f2d49d!important}
.ld-pro-promo-copy h2{font:500 37px/1.04 Georgia,serif;color:#fff!important;margin:7px 0 10px}
.ld-pro-promo-copy p{line-height:1.55;margin:0 0 17px}
.ld-pro-home .ld-pro-booking{margin:0!important;padding:27px!important;border:1px solid var(--pro-line)!important;border-radius:16px!important;background:#fff!important;box-shadow:0 7px 20px rgba(34,67,47,.06)!important}
.ld-pro-booking-head{text-align:center;margin-bottom:17px}
.ld-pro-booking-head .kicker{font-family:Georgia,serif;color:var(--pro-deep)!important}
.ld-pro-booking-head h2{font:500 30px Georgia,serif!important;color:var(--pro-deep)!important;margin:3px 0 5px!important}
.ld-pro-booking-head p{font-size:13px;color:#677067;margin:0}
.ld-pro-home .ld-pro-booking .grid{grid-template-columns:1fr 1fr!important;gap:10px!important}
.ld-pro-home .ld-pro-booking label{color:#795b2d!important;font-size:11px!important}
.ld-pro-home .ld-pro-booking select,.ld-pro-home .ld-pro-booking input{background:#fff!important;border:1px solid #d9d6ca!important;border-radius:8px!important}
.ld-pro-submit{grid-column:1/-1}
.ld-pro-submit button{width:100%;text-transform:uppercase}
.ld-pro-home #rooms{background:var(--pro-cream)!important}
.ld-pro-home #rooms .room{border-radius:14px!important;overflow:hidden;border:1px solid #e1ded3!important;box-shadow:0 8px 24px rgba(34,67,47,.07)!important}
.ld-pro-home #rooms .roomimg{height:225px!important}
.ld-pro-home #rooms h2,.ld-pro-home #rooms h3{font-family:Georgia,serif!important;color:var(--pro-deep)!important}
.ld-pro-home .member{background:var(--pro-deep)!important}
@media(max-width:850px){
 .ld-pro-home .wrap{width:min(100% - 28px,1240px)}
 .ld-pro-hero{padding-top:14px}
 .ld-pro-hero-grid{grid-template-columns:1fr;min-height:0}
 .ld-pro-hero-copy{padding:30px 4px 25px}
 .ld-pro-hero-copy h1{font-size:48px!important}
 .ld-pro-hero-image{min-height:290px;border-radius:22px 22px 0 0}
 .ld-pro-features{grid-template-columns:1fr 1fr}
 .ld-pro-booking-grid{grid-template-columns:1fr}
 .ld-pro-promo{min-height:320px}
}
@media(max-width:520px){
 .ld-pro-hero-copy h1{font-size:42px!important}
 .ld-pro-hero-copy p{font-size:15px}
 .ld-pro-hero-copy .actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
 .ld-pro-hero-copy .btn{font-size:12px;padding:11px 8px!important;text-align:center}
 .ld-pro-hero-image{min-height:230px}
 .ld-pro-section-title h2{font-size:28px}
 .ld-pro-features{grid-template-columns:1fr}
 .ld-pro-home .ld-pro-booking{padding:19px!important}
 .ld-pro-home .ld-pro-booking .grid{grid-template-columns:1fr!important}
 .ld-pro-promo{min-height:285px}
 .ld-pro-promo-copy{left:20px;bottom:20px}
 .ld-pro-promo-copy h2{font-size:31px}
}

/* =========================================================
   v1.8.1 - About / Legal visual balance
   Fix: both columns are equal cards, with proper inner spacing.
   ========================================================= */
html body main #about .aboutgrid,
html body main .aboutgrid{
  gap:24px!important;
  align-items:stretch!important;
}
html body main #about .aboutgrid > div:first-child,
html body main .aboutgrid > div:first-child{
  background:#fff!important;
  border:1px solid #dfe3dc!important;
  border-radius:16px!important;
  padding:26px 28px!important;
  box-sizing:border-box!important;
  box-shadow:0 8px 24px rgba(33,77,55,.055)!important;
}
html body main #about .aboutgrid > .legal,
html body main .aboutgrid > .legal{
  border-radius:16px!important;
  padding:26px 28px!important;
  box-sizing:border-box!important;
  box-shadow:0 8px 24px rgba(33,77,55,.055)!important;
}
html body main #about .facts,
html body main .aboutgrid .facts{
  margin-top:22px!important;
  gap:14px!important;
  grid-template-columns:1.05fr .85fr 1.9fr 1.35fr!important;
}
html body main #about .fact,
html body main .aboutgrid .fact{
  padding:18px 18px!important;
  border-radius:12px!important;
  min-width:0!important;
}
html body main #about .fact p,
html body main .aboutgrid .fact p{
  overflow-wrap:anywhere!important;
}
@media(max-width:900px){
 html body main #about .aboutgrid,
 html body main .aboutgrid{grid-template-columns:1fr!important;gap:16px!important}
 html body main #about .facts,
 html body main .aboutgrid .facts{grid-template-columns:1fr 1fr!important}
}
@media(max-width:520px){
 html body main #about .aboutgrid > div:first-child,
 html body main .aboutgrid > div:first-child,
 html body main #about .aboutgrid > .legal,
 html body main .aboutgrid > .legal{padding:20px 18px!important;border-radius:14px!important}
 html body main #about .facts,
 html body main .aboutgrid .facts{grid-template-columns:1fr!important;gap:10px!important}
}

/* =========================================================
   v1.8.2 - Global typography & spacing cleanup
   No functional/template changes.
   ========================================================= */
:root{
 --ld-heading:#173f30;
 --ld-body:#44544b;
 --ld-accent:#ad7423;
 --ld-soft:#f8f6ef;
}

/* Global text rhythm */
html body main{
 color:var(--ld-body)!important;
}
html body main h1,
html body main h2,
html body main h3,
html body main h4{
 font-family:Georgia,"Times New Roman",serif!important;
 color:var(--ld-heading)!important;
 font-weight:500!important;
 letter-spacing:-.018em!important;
}
html body main p,
html body main li,
html body main label,
html body main input,
html body main select,
html body main textarea,
html body main button,
html body main .btn{
 font-family:Arial,Helvetica,sans-serif!important;
}
html body main p{
 line-height:1.65!important;
}

/* One consistent kicker / eyebrow system */
html body main .kicker,
html body main .eyebrow,
html body main .overline,
html body main .section-label,
html body main .room-label{
 font-family:Arial,Helvetica,sans-serif!important;
 color:var(--ld-accent)!important;
 font-size:12px!important;
 line-height:1.2!important;
 font-weight:800!important;
 letter-spacing:.16em!important;
 text-transform:uppercase!important;
 margin:0 0 10px!important;
}

/* Standard section headings */
html body main .section > .wrap > h2,
html body main .section .sectionhead h2,
html body main .section .section-head h2,
html body main .resort-section-head h2,
html body main .ld-pro-section-title h2{
 margin:0 0 14px!important;
 line-height:1.08!important;
}
html body main .section > .wrap > .kicker + h2,
html body main .sectionhead .kicker + h2,
html body main .section-head .kicker + h2,
html body main .resort-section-head .kicker + h2,
html body main .ld-pro-section-title .kicker + h2{
 margin-top:0!important;
}

/* Rooms heading: remove the giant dead space shown in screenshot */
html body main #rooms{
 padding-top:52px!important;
 padding-bottom:64px!important;
}
html body main #rooms > .wrap > .kicker{
 text-align:center!important;
 margin-bottom:9px!important;
}
html body main #rooms > .wrap > h2{
 text-align:center!important;
 font-size:clamp(34px,4vw,52px)!important;
 line-height:1.05!important;
 margin:0 0 30px!important;
}
html body main #rooms .rooms{
 margin-top:0!important;
}

/* About title block: tighter, consistent */
html body main #about{
 padding-top:48px!important;
 padding-bottom:48px!important;
}
html body main #about > .wrap > .kicker,
html body main #about > .wrap > h2,
html body main #about > .wrap > p{
 text-align:center;
}
html body main #about > .wrap > h2{
 font-size:clamp(30px,3vw,42px)!important;
 margin:0 0 12px!important;
}

/* Pro homepage headings */
html body main .ld-pro-section-title{
 margin-bottom:24px!important;
}
html body main .ld-pro-section-title h2{
 font-size:clamp(30px,3vw,40px)!important;
}
html body main .ld-pro-booking-head .kicker{
 margin-bottom:7px!important;
}
html body main .ld-pro-booking-head h2{
 margin:0 0 7px!important;
 line-height:1.08!important;
}
html body main .ld-pro-promo-copy .kicker{
 color:#f0d29b!important;
}
html body main .ld-pro-promo-copy h2{
 color:#fff!important;
 letter-spacing:-.015em!important;
}

/* Cards: normalize titles/body spacing */
html body main .room h3,
html body main .article h3,
html body main .fact h3,
html body main .ld-pro-features h3{
 margin-top:0!important;
 margin-bottom:8px!important;
 line-height:1.2!important;
}
html body main .room p,
html body main .article p,
html body main .fact p,
html body main .ld-pro-features p{
 margin-top:0!important;
}

/* System / membership dark sections keep white headings */
html body main .member h1,
html body main .member h2,
html body main .member h3,
html body main .membership h1,
html body main .membership h2,
html body main .membership h3,
html body main .system h1,
html body main .system h2,
html body main .system h3,
html body main .destination:not(.soon) h1,
html body main .destination:not(.soon) h2,
html body main .destination:not(.soon) h3{
 color:#fff!important;
}
html body main .member .kicker,
html body main .membership .kicker,
html body main .system .kicker{
 color:#e3bd7c!important;
}

/* Buttons share one visual rhythm */
html body main .btn,
html body main button[type="submit"],
html body main input[type="submit"]{
 min-height:44px!important;
 display:inline-flex!important;
 align-items:center!important;
 justify-content:center!important;
 line-height:1.15!important;
}

/* Mobile spacing */
@media(max-width:700px){
 html body main #rooms{
   padding-top:42px!important;
   padding-bottom:50px!important;
 }
 html body main #rooms > .wrap > h2{
   font-size:34px!important;
   margin-bottom:22px!important;
 }
 html body main #about{
   padding-top:40px!important;
   padding-bottom:40px!important;
 }
 html body main .kicker,
 html body main .eyebrow,
 html body main .overline,
 html body main .section-label,
 html body main .room-label{
   font-size:11px!important;
   letter-spacing:.13em!important;
 }
}

/* =========================================================
   v1.8.3 - HEADER LOGO COMPACT FIX
   Keep original logo image, shorten white plaque on both sides.
   ========================================================= */

/* Desktop */
@media(min-width:1101px){
 html body .top .header-brand{
   flex:0 0 250px!important;
   width:250px!important;
   min-width:250px!important;
   max-width:250px!important;
   height:66px!important;
 }
 html body .top .header-brand > a{
   width:250px!important;
   min-width:250px!important;
   max-width:250px!important;
   height:60px!important;
   padding:3px 5px!important;
   border-radius:12px!important;
   overflow:hidden!important;
   box-sizing:border-box!important;
 }
 html body .top .header-brand img{
   width:100%!important;
   height:100%!important;
   max-width:none!important;
   object-fit:contain!important;
   object-position:center!important;
   display:block!important;
 }
}

/* Tablet */
@media(min-width:701px) and (max-width:1100px){
 html body .top .header-brand{
   flex:0 0 225px!important;
   width:225px!important;
   min-width:225px!important;
   max-width:225px!important;
 }
 html body .top .header-brand > a{
   width:225px!important;
   min-width:225px!important;
   max-width:225px!important;
   padding:3px 4px!important;
 }
}

/* Mobile: large enough to read, but still compact */
@media(max-width:700px){
 html body .top .header-brand{
   flex:0 0 165px!important;
   width:165px!important;
   min-width:165px!important;
   max-width:165px!important;
   height:58px!important;
 }
 html body .top .header-brand > a{
   width:165px!important;
   min-width:165px!important;
   max-width:165px!important;
   height:54px!important;
   padding:3px 4px!important;
   border-radius:10px!important;
   overflow:hidden!important;
 }
 html body .top .header-brand img{
   width:100%!important;
   height:100%!important;
   max-width:none!important;
   object-fit:contain!important;
   object-position:center!important;
 }
}
@media(max-width:390px){
 html body .top .header-brand{
   flex-basis:150px!important;
   width:150px!important;
   min-width:150px!important;
   max-width:150px!important;
 }
 html body .top .header-brand > a{
   width:150px!important;
   min-width:150px!important;
   max-width:150px!important;
 }
}

/* =========================================================
   v1.8.4 - Room cards / price tables equal alignment
   ========================================================= */
html body main #rooms .rooms{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  align-items:stretch!important;
}
html body main #rooms .room{
  display:flex!important;
  flex-direction:column!important;
  height:100%!important;
  min-width:0!important;
}
html body main #rooms .roomimg{
  flex:0 0 220px!important;
  height:220px!important;
}
html body main #rooms .roombody{
  display:flex!important;
  flex-direction:column!important;
  flex:1 1 auto!important;
  padding:22px!important;
}
html body main #rooms .roombody > small{
  min-height:18px!important;
  margin-bottom:14px!important;
}
html body main #rooms .roombody > h3{
  min-height:58px!important;
  margin:0 0 14px!important;
  display:flex!important;
  align-items:flex-start!important;
}
html body main #rooms .roombody > p{
  min-height:76px!important;
  margin:0 0 18px!important;
  line-height:1.55!important;
}

/* price box always starts on the same horizontal line */
html body main #rooms .ld-room-price,
html body main #rooms .room-price,
html body main #rooms .pricebox,
html body main #rooms .ld-room-prices{
  margin-top:0!important;
  margin-bottom:22px!important;
  min-height:140px!important;
  width:100%!important;
  box-sizing:border-box!important;
}

/* Normalize each price row */
html body main #rooms .ld-room-price > *,
html body main #rooms .room-price > *,
html body main #rooms .pricebox > *,
html body main #rooms .ld-room-prices > *{
  min-height:39px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
}

/* buttons pinned to card bottom */
html body main #rooms .ld-room-card-actions,
html body main #rooms .room-actions,
html body main #rooms .actions{
  margin-top:auto!important;
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:10px!important;
  width:100%!important;
}
html body main #rooms .ld-room-card-actions .btn,
html body main #rooms .room-actions .btn{
  width:100%!important;
  box-sizing:border-box!important;
  white-space:nowrap!important;
}

/* tablet */
@media(max-width:1050px){
 html body main #rooms .rooms{
   grid-template-columns:repeat(2,minmax(0,1fr))!important;
 }
}
/* phone */
@media(max-width:620px){
 html body main #rooms .rooms{
   grid-template-columns:1fr!important;
 }
 html body main #rooms .roombody > h3,
 html body main #rooms .roombody > p{
   min-height:0!important;
 }
 html body main #rooms .roomimg{
   flex-basis:210px!important;
   height:210px!important;
 }
}


/* =========================================================
   v1.8.5 - Vietnamese typography fix
   Avoid Georgia Vietnamese glyph/kerning glitches.
   ========================================================= */
html body main h1,
html body main h2,
html body main h3,
html body main h4,
html body main .hero h1,
html body main .section h2,
html body main .roombody h3,
html body main .story-intro h2,
html body main .story-heading h2,
html body main .property-body h3,
html body main .destination-card h3,
html body main .direct-book h2,
html body main .story-final,
html body main .ld-pro-booking-head h2,
html body main .ld-pro-promo-copy h2,
html body main #rooms > .wrap > h2,
html body main #rooms .center h2,
html body main #about h2{
  font-family:"Times New Roman",Times,serif!important;
  letter-spacing:0!important;
  font-kerning:normal!important;
  font-variant-ligatures:normal!important;
  word-spacing:0!important;
  text-rendering:optimizeLegibility!important;
}

/* The room heading in particular was rendering “Bốn” with a fake gap */
html body main #rooms .center h2,
html body main #rooms > .wrap > .center h2{
  font-family:"Times New Roman",Times,serif!important;
  letter-spacing:0!important;
  word-spacing:0!important;
  white-space:normal!important;
}

/* Body/UI text: use fonts with solid Vietnamese coverage */
html body main p,
html body main li,
html body main label,
html body main input,
html body main select,
html body main textarea,
html body main button,
html body main .btn,
html body main .kicker,
html body main .eyebrow,
html body main .overline,
html body main .section-label,
html body main .room-label{
  font-family:"Segoe UI",Arial,sans-serif!important;
}


/* =========================================================
   v1.8.6 - Fix kicker/eyebrow Vietnamese rendering + color
   ========================================================= */
:root{
  --ld-kicker:#a86b16;
}

/* Force every small uppercase section label to one exact color.
   text-fill fixes WebKit/Safari cases where inherited fill differs. */
html body main .kicker,
html body main .eyebrow,
html body main .overline,
html body main .section-label,
html body main .room-label,
html body main .ld-pro-booking-head .kicker,
html body main .ld-pro-section-title .kicker,
html body main #rooms .kicker,
html body main #about .kicker{
  font-family:"Segoe UI",Arial,sans-serif!important;
  font-weight:700!important;
  font-style:normal!important;
  font-size:12px!important;
  line-height:1.25!important;
  letter-spacing:.14em!important;
  word-spacing:.08em!important;
  color:var(--ld-kicker)!important;
  -webkit-text-fill-color:var(--ld-kicker)!important;
  text-shadow:none!important;
  opacity:1!important;
  filter:none!important;
  background:none!important;
  -webkit-background-clip:border-box!important;
  background-clip:border-box!important;
  text-transform:uppercase!important;
}

/* Specifically lock the booking label visible in the screenshot */
html body main .ld-pro-booking-head,
html body main .ld-pro-booking-head *{
  text-shadow:none!important;
}
html body main .ld-pro-booking-head .kicker{
  color:#a86b16!important;
  -webkit-text-fill-color:#a86b16!important;
  opacity:1!important;
}

/* Dark/photo backgrounds still need the intentionally light gold label */
html body main .ld-pro-promo-copy .kicker,
html body main .member .kicker,
html body main .membership .kicker,
html body main .system .kicker{
  color:#f0d29b!important;
  -webkit-text-fill-color:#f0d29b!important;
}

@media(max-width:700px){
  html body main .kicker,
  html body main .eyebrow,
  html body main .overline,
  html body main .section-label,
  html body main .room-label{
    font-size:11px!important;
    letter-spacing:.12em!important;
  }
}

/* v1.8.7 - Equal room archive cards */
html body main .rooms{align-items:stretch!important}
html body main .rooms>.room{display:flex!important;flex-direction:column!important;height:100%!important;min-width:0!important}
html body main .rooms>.room .roombody{display:flex!important;flex-direction:column!important;flex:1 1 auto!important}
html body main .rooms>.room .roombody>small{min-height:18px!important;margin-bottom:8px!important}
html body main .rooms>.room .roombody>h3{min-height:48px!important;margin:0 0 10px!important;line-height:1.18!important}
html body main .rooms>.room .roombody>p{min-height:72px!important;margin:0 0 14px!important;line-height:1.5!important}

html body main .rooms>.room .pricebox,
html body main .rooms>.room .room-price,
html body main .rooms>.room .ld-room-price,
html body main .rooms>.room .ld-room-prices{
 width:100%!important;min-height:132px!important;margin:0 0 14px!important;
 box-sizing:border-box!important;flex:0 0 auto!important
}
html body main .rooms>.room .pricebox>*,
html body main .rooms>.room .room-price>*,
html body main .rooms>.room .ld-room-price>*,
html body main .rooms>.room .ld-room-prices>*{
 min-height:38px!important;display:flex!important;align-items:center!important;justify-content:space-between!important
}

html body main .rooms>.room .actions,
html body main .rooms>.room .room-actions,
html body main .rooms>.room .ld-room-card-actions{
 margin-top:auto!important;width:100%!important;display:flex!important;
 flex-direction:column!important;gap:10px!important
}
html body main .rooms>.room .actions .btn,
html body main .rooms>.room .room-actions .btn,
html body main .rooms>.room .ld-room-card-actions .btn{
 width:100%!important;min-height:42px!important;box-sizing:border-box!important;margin:0!important
}

/* Fallback for archive markup where buttons sit directly in roombody */
html body main .rooms>.room .roombody>a.btn{
 width:100%!important;min-height:42px!important;box-sizing:border-box!important
}
html body main .rooms>.room .roombody>a.btn:first-of-type{margin-top:auto!important}
html body main .rooms>.room .roombody>a.btn+a.btn{margin-top:10px!important}

@media(max-width:620px){
 html body main .rooms>.room .roombody>h3,
 html body main .rooms>.room .roombody>p{min-height:0!important}
}


/* v1.9.3 - Member login/register. Booking page intentionally unchanged from v1.8.7. */
.ld-member-auth{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:22px;
  align-items:start;
  margin-top:30px;
}
.ld-member-auth .member-page-box{
  margin-top:0!important;
  max-width:none!important;
  min-height:100%;
}
.ld-member-auth .ld-login-box{
  background:#fff!important;
  color:#173f30!important;
  border:1px solid #d9cfbd;
  box-shadow:0 12px 32px rgba(30,58,46,.08);
}
.ld-member-auth .ld-login-box h2{
  color:#173f30!important;
}
.ld-member-auth .ld-login-box label{
  display:block;
  margin:0 0 6px;
  color:#365247;
  font-weight:700;
  font-size:13px;
}
.ld-member-auth .ld-login-box input[type="text"],
.ld-member-auth .ld-login-box input[type="password"]{
  width:100%;
  min-height:46px;
  padding:10px 12px;
  border:1px solid #d8d5ca;
  border-radius:8px;
  background:#fff;
  color:#173f30;
}
.ld-member-auth .ld-login-box .login-remember label{
  display:flex;
  align-items:center;
  gap:8px;
  font-weight:500;
}
.ld-member-auth .ld-login-box .button-primary{
  min-height:44px;
  padding:10px 18px;
  border:1px solid #b37a27;
  border-radius:8px;
  background:#b37a27;
  color:#fff;
  font-weight:800;
  cursor:pointer;
}
.ld-member-auth .ld-auth-links{
  margin-top:14px;
  font-size:14px;
}
.ld-member-auth .ld-auth-links a{
  color:#9a641c;
  font-weight:700;
  text-decoration:underline;
}
@media(max-width:780px){
  .ld-member-auth{grid-template-columns:1fr}
}


/* v1.9.4 - Booking tab overflow fix.
   Keep the v1.8.7 booking design, only stop the room card/preview from stretching
   over the booking form and footer. */
body .ld-booking-room-showcase{
  align-items:start!important;
}
body .ld-booking-room-list{
  align-self:start!important;
  height:auto!important;
}
body .ld-booking-room-list .room{
  height:auto!important;
  min-height:0!important;
  align-self:start!important;
}
body .ld-booking-room-list .roombody{
  height:auto!important;
  min-height:0!important;
}
body .ld-booking-room-showcase .ld-room-visual{
  align-self:start!important;
  height:auto!important;
  min-height:610px!important;
}
body .ld-booking-room-showcase .ld-room-gallery-viewer{
  height:auto!important;
  min-height:0!important;
}
body .ld-booking-room-showcase .ld-room-visual-photo{
  flex:0 0 520px!important;
  height:520px!important;
  min-height:520px!important;
  max-height:520px!important;
}
body .ld-booking-room-showcase + div{
  position:relative!important;
  z-index:1!important;
  clear:both!important;
}

@media(max-width:900px){
  body .ld-booking-room-showcase .ld-room-visual{
    min-height:0!important;
  }
  body .ld-booking-room-showcase .ld-room-visual-photo{
    flex-basis:360px!important;
    height:360px!important;
    min-height:360px!important;
    max-height:360px!important;
  }
}
@media(max-width:600px){
  body .ld-booking-room-showcase .ld-room-visual-photo{
    flex-basis:300px!important;
    height:300px!important;
    min-height:300px!important;
    max-height:300px!important;
  }
}


/* v1.9.5 - Booking room choices: horizontal list on desktop.
   Keep login/register and the rest of booking behavior unchanged. */
@media(min-width:901px){
  body .ld-booking-room-list{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:16px!important;
    width:100%!important;
    max-width:none!important;
    height:auto!important;
    align-items:stretch!important;
  }
  body .ld-booking-room-list .room{
    width:100%!important;
    min-width:0!important;
    height:100%!important;
    margin:0!important;
    display:flex!important;
    flex-direction:column!important;
  }
  body .ld-booking-room-list .roomimg{
    width:100%!important;
    height:155px!important;
    min-height:155px!important;
    flex:0 0 155px!important;
    background-size:cover!important;
    background-position:center!important;
  }
  body .ld-booking-room-list .roombody{
    flex:1 1 auto!important;
    display:flex!important;
    flex-direction:column!important;
    padding:14px!important;
  }
  body .ld-booking-room-list .roombody h3{
    min-height:44px!important;
    margin-bottom:8px!important;
  }
  body .ld-booking-room-list .roombody > p{
    min-height:54px!important;
  }
  body .ld-booking-room-list .pricebox{
    margin-top:auto!important;
  }

  /* Put room choices above the large preview instead of as a vertical side column. */
  body .ld-booking-room-showcase{
    display:flex!important;
    flex-direction:column!important;
    gap:22px!important;
    align-items:stretch!important;
  }
  body .ld-booking-room-showcase .ld-room-visual{
    width:100%!important;
    min-height:0!important;
  }
}

/* Tablet: two cards per row. */
@media(min-width:621px) and (max-width:900px){
  body .ld-booking-room-list{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:14px!important;
  }
}

/* Phone: swipeable horizontal room cards, so choices are not a long vertical stack. */
@media(max-width:620px){
  body .ld-booking-room-list{
    display:flex!important;
    flex-wrap:nowrap!important;
    gap:12px!important;
    overflow-x:auto!important;
    scroll-snap-type:x mandatory!important;
    -webkit-overflow-scrolling:touch!important;
    padding-bottom:8px!important;
  }
  body .ld-booking-room-list .room{
    flex:0 0 82%!important;
    width:82%!important;
    scroll-snap-align:start!important;
  }
}


/* v1.9.6 - Logged-in account and logout are separate actions. */
.header-actions.logged-in-actions{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
}
.header-actions.logged-in-actions .account-link,
.header-actions.logged-in-actions .logout-link{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:42px!important;
  padding:9px 16px!important;
  border:1px solid #c99332!important;
  border-radius:999px!important;
  text-decoration:none!important;
  font-weight:800!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.header-actions.logged-in-actions .account-link{
  background:transparent!important;
  color:#fff!important;
}
.header-actions.logged-in-actions .logout-link{
  background:#c99332!important;
  color:#fff!important;
}
@media(max-width:760px){
  .header-actions.logged-in-actions{
    gap:6px!important;
  }
  .header-actions.logged-in-actions .account-link,
  .header-actions.logged-in-actions .logout-link{
    min-height:38px!important;
    padding:8px 11px!important;
    font-size:12px!important;
  }
}

/* v1.9.7 account state navigation */
.header-actions.guest-actions{display:flex!important;align-items:center!important;gap:8px!important}
.header-actions.guest-actions a{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:42px!important;padding:9px 16px!important;border:1px solid #c99332!important;border-radius:999px!important;text-decoration:none!important;font-weight:800!important;line-height:1!important;white-space:nowrap!important}
.header-actions.guest-actions .login-link{background:transparent!important;color:#fff!important}
.header-actions.guest-actions .register-link{background:#c99332!important;color:#fff!important}
.member-account-dashboard{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:22px 0}
.member-account-dashboard .account-card{padding:20px;border:1px solid #ded8c9;border-radius:14px;background:#fff;box-shadow:0 8px 24px rgba(30,58,46,.06)}
.member-account-dashboard .account-card h3{margin:0 0 8px;color:#173f30}
@media(max-width:760px){.header-actions.guest-actions{gap:6px!important}.header-actions.guest-actions a{min-height:38px!important;padding:8px 11px!important;font-size:12px!important}.member-account-dashboard{grid-template-columns:1fr}}

/* v1.10.0 - Extra guest surcharge note under room pricing */
.ld-extra-guest-fee{
  margin:12px 0 0;
  padding:11px 13px;
  border:1px solid #e0d3b9;
  border-radius:9px;
  background:#fbf7ef;
  color:#34483f;
  font:600 13px/1.55 "Segoe UI",Arial,sans-serif;
}
.ld-extra-guest-fee strong{color:#9b651b}

/* v1.10.2 surcharge note */
.ld-surcharge-note{margin:12px 0;padding:12px 14px;border:1px solid #dfd0ae;border-radius:10px;background:#fbf7ee;color:#405047;font:600 13px/1.55 "Segoe UI",Arial,sans-serif}
.ld-surcharge-note b{color:#9b651b}
.ld-surcharge-note span{display:block}

.ld-room-surcharge{margin:12px 0 16px;padding:12px 14px;border:1px solid #e0d3b9;border-radius:9px;background:#fbf7ef;color:#405047;font:600 13px/1.55 "Segoe UI",Arial,sans-serif}
.ld-room-surcharge b{display:block;margin-bottom:3px;color:#9b651b}.ld-room-surcharge span{display:block}


/* v1.10.4 - Mobile hamburger navigation */
.ld-mobile-menu-toggle,
.ld-mobile-home-link{display:none}

@media(max-width:850px){
  html body .top{z-index:9999!important}
  html body .top .nav{
    position:relative!important;
    justify-content:space-between!important;
  }

  html body .ld-mobile-menu-toggle{
    display:flex!important;
    width:46px!important;
    height:46px!important;
    flex:0 0 46px!important;
    padding:0!important;
    margin-left:auto!important;
    border:1.5px solid #c99332!important;
    border-radius:12px!important;
    background:rgba(255,255,255,.08)!important;
    align-items:center!important;
    justify-content:center!important;
    flex-direction:column!important;
    gap:5px!important;
    cursor:pointer!important;
  }
  html body .ld-mobile-menu-toggle span{
    display:block!important;
    width:22px!important;
    height:2px!important;
    border-radius:2px!important;
    background:#fff!important;
    transition:transform .2s ease,opacity .2s ease!important;
  }
  html body .ld-mobile-menu-toggle.is-open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  html body .ld-mobile-menu-toggle.is-open span:nth-child(2){opacity:0}
  html body .ld-mobile-menu-toggle.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

  html body .top .menu{
    display:none!important;
    position:absolute!important;
    top:calc(100% + 8px)!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    padding:10px!important;
    border:1px solid #d9c49b!important;
    border-radius:16px!important;
    background:#fffdf8!important;
    box-shadow:0 18px 45px rgba(18,49,39,.22)!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:4px!important;
    color:#173f30!important;
  }
  html body .top .menu.is-open{display:flex!important}
  html body .top .menu > a,
  html body .top .menu .header-actions > a{
    display:flex!important;
    width:100%!important;
    min-height:46px!important;
    padding:11px 14px!important;
    margin:0!important;
    border:0!important;
    border-radius:10px!important;
    background:transparent!important;
    color:#173f30!important;
    align-items:center!important;
    justify-content:flex-start!important;
    font-size:15px!important;
    font-weight:750!important;
  }
  html body .top .menu > a:hover,
  html body .top .menu .header-actions > a:hover{
    background:#f4ead7!important;
    color:#9b681f!important;
  }
  html body .top .menu .ld-mobile-home-link{display:flex!important}
  html body .top .menu .header-actions{
    display:flex!important;
    width:100%!important;
    padding-top:8px!important;
    margin-top:6px!important;
    border-top:1px solid #eadfc9!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:4px!important;
  }
  html body .top .menu .header-actions .register-link,
  html body .top .menu .header-actions .logout-link{
    background:#c99332!important;
    color:#fff!important;
  }
  body.ld-menu-open{overflow-x:hidden}
}
@media(max-width:430px){
  html body .top .header-brand{
    flex:0 1 235px!important;
    width:min(235px,72vw)!important;
    min-width:0!important;
    max-width:235px!important;
  }
  html body .top .header-brand > a{
    width:100%!important;
    min-width:0!important;
  }
  html body .ld-mobile-menu-toggle{
    width:44px!important;
    height:44px!important;
    flex-basis:44px!important;
  }
}


/* v1.10.5 - dedicated complete mobile navigation */
.ld-mobile-nav{display:none}
@media(max-width:850px){
  html body .top .nav{position:relative!important}
  html body .ld-mobile-nav{
    display:none!important;
    position:absolute!important;
    z-index:10050!important;
    top:calc(100% + 10px)!important;
    left:0!important;
    right:0!important;
    width:auto!important;
    max-height:calc(100vh - 115px)!important;
    overflow-y:auto!important;
    padding:12px!important;
    margin:0!important;
    border:1px solid #d8c292!important;
    border-radius:18px!important;
    background:#fffdf8!important;
    box-shadow:0 20px 45px rgba(17,52,40,.24)!important;
  }
  html body .ld-mobile-nav.is-open{display:block!important}
  html body .ld-mobile-nav > a,
  html body .ld-mobile-nav-account > a{
    display:flex!important;
    width:100%!important;
    min-height:48px!important;
    box-sizing:border-box!important;
    align-items:center!important;
    padding:11px 14px!important;
    margin:0 0 3px!important;
    border:0!important;
    border-radius:11px!important;
    background:transparent!important;
    color:#173f30!important;
    text-decoration:none!important;
    font-size:16px!important;
    line-height:1.3!important;
    font-weight:750!important;
    opacity:1!important;
    visibility:visible!important;
  }
  html body .ld-mobile-nav > a:hover,
  html body .ld-mobile-nav-account > a:hover{background:#f4ead7!important}
  html body .ld-mobile-nav-account{
    display:block!important;
    margin-top:8px!important;
    padding-top:9px!important;
    border-top:1px solid #e7dcc5!important;
  }
  html body .ld-mobile-nav-account > a.ld-mobile-nav-gold{
    margin-top:5px!important;
    background:#cf982c!important;
    color:#fff!important;
    justify-content:center!important;
  }
  /* desktop nav stays out of the mobile dropdown; dedicated nav above is authoritative */
  html body .top #ld-main-menu{display:none!important}
}
