.hero{min-height:260px}.hero-copy{padding:28px 34px}.hero h1{font-size:34px;margin:14px 0}.hero p{margin:10px 0}.hero-tags{margin-top:18px}.nav-button{font-size:14px;background:none;border:0;color:#eef2f6;padding:0}.nav-button[aria-pressed=true]{color:#e3c171}.keyword-label{display:grid;gap:8px;font-size:14px;color:#65747e;margin-bottom:18px}.keyword-label input,.extra-filters input{padding:12px;border:1px solid #dce2e7;border-radius:7px;font:inherit;color:#142d47;width:100%;min-width:0}.extra-filters{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px;margin-top:18px}.extra-filters label{display:grid;gap:8px;font-size:14px;color:#65747e}.card-bottom>a{font-size:14px;font-weight:600}.updated{font-size:12px;color:#65747e;line-height:1.8;margin:10px 0}.favorite-button{position:absolute;right:13px;top:13px;background:white;color:#142d47;border:0;width:36px;height:36px;font-size:24px;border-radius:50%}.favorite-button[aria-pressed=true]{color:#b77d1f}#toast{position:fixed;bottom:85px;left:50%;transform:translateX(-50%);max-width:90vw;background:#fff;color:#142d47;border:1px solid #dce2e7;border-radius:9px;padding:15px 20px;box-shadow:0 5px 30px #0004;z-index:100;display:none;font-size:14px}#toast.show{display:block}.mobile-contact{display:none}.room-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:28px;margin:25px 0 40px}.room-main{background:white;color:#142d47;border-radius:13px;overflow:hidden;min-width:0}.room-hero{height:430px;width:100%;object-fit:cover}.room-content{padding:28px}.room-content h1{font-size:30px;line-height:1.5;letter-spacing:-.5px;margin:14px 0}.room-content h2{font-size:23px;margin-top:30px}.room-content p{line-height:1.9}.description{white-space:pre-line}.room-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.room-actions a,.room-actions button{font-size:14px;padding:9px 12px;background:#f1f5f7;border:1px solid #dce2e7;border-radius:5px;color:#142d47}.room-actions .favorite-detail{font-size:23px;padding:3px 12px}.booking-panel{background:#fff;color:#142d47;border-radius:12px;padding:25px;height:fit-content;position:sticky;top:25px}.booking-panel>p{font-size:14px;line-height:1.8}.booking-panel form{display:grid;grid-template-columns:1fr;gap:15px}.booking-panel form label{font-size:14px}.booking-panel input,.booking-panel textarea,.estimate input{width:100%;padding:12px;border:1px solid #dce2e7;border-radius:6px;font:inherit;color:#142d47;background:#fff}.booking-panel .consent{display:flex;align-items:start;gap:9px;font-size:13px;line-height:1.6}.consent input{width:17px;height:17px;flex-shrink:0;margin-top:3px}.booking-panel>a{display:block;margin-top:16px;text-align:center;font-size:14px}.booking-panel small{font-size:12px;line-height:1.8;display:block;margin-top:12px}.zalo-link{border:1px solid #dce2e7;border-radius:6px;padding:12px}.privacy-link{font-size:12px;color:#65747e}.booking-panel .honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.estimate{background:#f1f5f7;padding:22px;border-radius:8px}.estimate-inputs{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.estimate label{display:grid;gap:8px;font-size:13px}.estimate small{font-size:12px;line-height:1.8;color:#65747e}.related-section{margin-bottom:60px}.back-link{font-size:14px;color:#e3c171}.privacy-page{max-width:850px}.privacy-page p{line-height:1.9;margin-bottom:24px}.privacy-page a{color:#e3c171}@media(max-width:1000px){.room-layout{grid-template-columns:minmax(0,1fr) 300px;gap:18px}.room-hero{height:300px}.room-content{padding:22px}.room-content h1{font-size:25px}}@media(max-width:700px){.room-layout{grid-template-columns:1fr}.booking-panel{position:static}.hero{min-height:0}.hero h1{font-size:30px}.hero-image{height:155px}.hero-copy{padding:24px}.hero-tags{font-size:12px}.extra-filters{grid-template-columns:1fr 1fr;gap:12px}.extra-filters label:last-child{grid-column:1/-1}.mobile-contact{position:fixed;bottom:0;left:0;right:0;display:flex;gap:10px;background:#142d47;padding:10px 16px calc(10px + env(safe-area-inset-bottom));border-top:1px solid #456078;z-index:50}.mobile-contact a{width:50%;padding:12px;text-align:center;border:1px solid #e3c171;border-radius:6px;font-size:14px;color:#e3c171}.mobile-contact a:last-child{background:#e3c171;color:#142d47}body{padding-bottom:76px}.estimate-inputs{grid-template-columns:1fr 1fr}.room-hero{height:270px}.room-content h1{font-size:25px}header nav a:last-child{display:block}header nav{gap:9px}.nav-button{font-size:12px}.hero-image .image-label{font-size:12px}.room-actions{gap:8px}}@media(max-width:360px){header{flex-wrap:wrap;height:auto;padding-top:8px;padding-bottom:14px;gap:5px}header nav{gap:10px;flex-wrap:wrap}.logo-brand img{width:94px;height:80px}}
/* Keep room discovery close to the first screen. */
.hero{min-height:180px;grid-template-columns:1.25fr .75fr}.hero-copy{padding:22px 30px}.hero h1{font-size:29px;line-height:1.2}.hero-tags{display:none}.hero p{font-size:14px;line-height:1.7}.hero-image img{max-height:230px}.areas{margin:22px 0 30px}.more-filters{margin-top:18px}.more-filters summary{font-size:14px;color:#65747e;cursor:pointer}.extra-filters{margin-top:15px}header{height:112px}.logo-brand img{height:100px}.area-links{line-height:2}input,textarea,select{min-width:0}#signin-save[hidden]{display:none}@media(max-width:700px){.hero{grid-template-columns:1fr}.hero-copy{padding:18px 22px}.hero h1{font-size:27px}.hero p{display:none}.hero-image{display:none}.hero{min-height:0}.areas{margin:18px 0 25px}header{height:102px}.logo-brand img{height:90px;width:100px}.section-heading h2{font-size:23px}.more-filters .amenities{font-size:13px}.estimate-inputs input{font-size:16px}}
@media(max-width:700px){header nav{flex-wrap:wrap;justify-content:flex-end;row-gap:10px;column-gap:12px;max-width:calc(100% - 125px)}header nav a[href="#about"]{display:none}}@media(max-width:360px){header nav{max-width:calc(100% - 110px)}}
/* Persistent contact links on desktop and mobile. */
.mobile-contact{display:grid;position:fixed;right:20px;bottom:24px;left:auto;width:140px;gap:8px;padding:10px;background:#142d47;border:1px solid #d1ad7070;border-radius:12px;box-shadow:0 5px 22px #0003;z-index:50}.mobile-contact a{display:block;width:100%;padding:11px 8px;text-align:center;border:1px solid #e3c17170;border-radius:6px;color:#e3c171;font-size:14px;font-weight:600}.mobile-contact a:hover{background:#e3c171;color:#142d47}.mobile-contact a:last-child{background:#e3c171;color:#142d47}.fanpage-link{border:1px solid #d1ad7070;border-radius:7px;padding:12px}@media(max-width:700px){.mobile-contact{display:flex;left:0;right:0;bottom:0;width:auto;gap:8px;border-radius:0;padding:10px 16px calc(10px + env(safe-area-inset-bottom));border-width:1px 0 0}.mobile-contact a{width:auto;flex:1;padding:12px 6px}body{padding-bottom:76px}}
/* Floating contact buttons, anchored to the screenshot's chat position. */
nav.floating-contact{display:flex;flex-direction:column;align-items:flex-end;gap:12px;left:auto;right:22px;bottom:26px;width:auto;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;z-index:60}nav.floating-contact a{display:flex;align-items:center;gap:11px;width:148px;padding:0 14px 0 0;border:0;border-radius:30px;background:#fff;color:#142d47;box-shadow:0 4px 15px #0003;font-size:14px;min-height:52px}nav.floating-contact a:last-child{background:#fff;color:#142d47}.contact-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:52px;height:52px;border-radius:50%;color:#fff;background:#1eaa68}.float-facebook .contact-icon{background:#1877f2}.float-zalo .contact-icon{background:#0068ff}.facebook-icon{font-family:Arial,sans-serif;font-weight:700;font-size:34px;line-height:1}.zalo-icon{font-family:Arial,sans-serif;font-size:15px;font-weight:700}.contact-label{white-space:nowrap}nav.floating-contact a:hover{background:#e3c171;color:#142d47;transform:translateY(-2px)}nav.floating-contact a:focus-visible{outline:3px solid #e3c171;outline-offset:4px}@media(max-width:700px){nav.floating-contact{right:16px;bottom:calc(22px + env(safe-area-inset-bottom));gap:11px}nav.floating-contact a{width:52px;height:52px;min-height:52px;padding:0;flex:none;border-radius:50%}.floating-contact .contact-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}body{padding-bottom:0}#toast{bottom:215px;max-width:calc(100vw - 32px)}}
