/* Booking first, then a landscape photo with a direct route to Room Types. */
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.booking.booking-top{margin-top:24px;margin-bottom:22px;background:#e5e9df;padding:25px 30px;gap:32px;min-height:105px}
.booking-top .booking-intro{padding-right:30px;border-right:1px solid #c2ccba}
.booking.booking-top h2{font:500 29px/1.25 'Cormorant Garamond',Georgia,serif;letter-spacing:-.4px;margin:0;white-space:nowrap}
.booking-top form{gap:22px;margin:0}
.booking-top label{font-size:11px}
.booking-top input,.booking-top select{height:34px;font-size:12px}
.booking-top .solid{min-height:49px;margin:0;gap:24px;align-self:center}
.hero-banner{position:relative;isolation:isolate;min-height:440px;aspect-ratio:2.55;overflow:hidden;display:flex;align-items:center;background:#445344}
.hero-banner-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 57%;z-index:-2}
.hero-banner::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,36,28,.78) 0%,rgba(20,36,28,.53) 36%,rgba(20,36,28,.13) 67%,rgba(20,36,28,0) 100%);z-index:-1}
.hero-banner-content{padding:48px 52px;max-width:665px}
.hero-banner h2{font:400 41px/1.5 Georgia,'SimSun',serif;letter-spacing:1px;color:#fff;text-wrap:balance;margin:0 0 18px}
.hero-banner h2 em{color:#fff;font-style:normal}
.hero-banner-content>p{font-size:12px;line-height:2.1;color:#f5f5ed;max-width:435px;margin-bottom:28px}
.explore-rooms{display:inline-flex;gap:38px;align-items:center;min-height:48px;background:#f7f5ef;color:#344d41;border:1px solid #f7f5ef;padding:13px 21px;font:600 12px/1.5 Arial,sans-serif;transition:background .2s ease-out}
.explore-rooms:hover{background:#e9e2d5;border-color:#e9e2d5}
.explore-rooms svg{width:19px;height:19px;stroke:currentColor;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}
.hero-banner+.intro{padding-top:85px}
html:not([lang="zh-CN"]):not([lang="zh-TW"]) .booking.booking-top h2{font-size:29px}
html[lang="en"] .hero-banner h2{font:500 49px/1.05 'Cormorant Garamond',Georgia,serif;letter-spacing:0}
html[lang="ko"] .hero-banner h2,html[lang="ja"] .hero-banner h2{font-size:35px;line-height:1.5}
@media(max-width:1150px){.booking.booking-top{gap:22px;padding:23px}.booking-top .booking-intro{padding-right:22px}.booking-top form{gap:16px}.booking-top .solid{padding:13px 18px;gap:16px}.hero-banner{min-height:420px;aspect-ratio:2.2}.hero-banner-content{padding:38px 42px;max-width:610px}.hero-banner h2{font-size:38px}}
@media(max-width:850px){.booking.booking-top{display:flex;align-items:center;gap:20px;padding:22px}.booking.booking-top h2,html:not([lang="zh-CN"]):not([lang="zh-TW"]) .booking.booking-top h2{font-size:25px;white-space:normal;max-width:110px}.booking-top .booking-intro{padding-right:20px}.booking-top form{display:grid;grid-template-columns:1fr 1fr;gap:12px 20px}.booking-top label{font-size:10px}.booking-top .solid{min-height:42px;height:42px;padding:10px 16px;font-size:11px}.hero-banner{min-height:400px;aspect-ratio:1.9}.hero-banner h2{font-size:34px}.hero-banner-content{padding:35px;max-width:570px}.hero-banner-content>p{max-width:410px}.hero-banner+.intro{padding-top:65px}}
@media(max-width:600px){.booking.booking-top{display:block;margin-top:18px;margin-bottom:18px;padding:20px}.booking-top .booking-intro{border:0;padding:0;margin-bottom:16px}.booking.booking-top h2,html:not([lang="zh-CN"]):not([lang="zh-TW"]) .booking.booking-top h2{font-size:28px;max-width:none;white-space:normal}.booking-top form{gap:14px 18px}.booking-top .solid{height:44px;min-height:44px}.booking-top label{font-size:10px}.booking-top input,.booking-top select{font-size:11px;min-width:0}.hero-banner{min-height:425px;aspect-ratio:auto;align-items:flex-end}.hero-banner::before{background:linear-gradient(0deg,rgba(20,36,28,.87) 0%,rgba(20,36,28,.58) 48%,rgba(20,36,28,.06) 100%)}.hero-banner-image{object-position:61% center}.hero-banner-content{padding:30px 25px;max-width:100%}.hero-banner h2{font-size:29px;line-height:1.6;margin-bottom:14px;letter-spacing:0}.hero-banner-content>p{font-size:11px;line-height:1.9;margin-bottom:22px}.explore-rooms{min-height:46px;padding:11px 18px;gap:30px;font-size:11px}html[lang="en"] .hero-banner h2{font-size:39px;line-height:1.05}html[lang="ko"] .hero-banner h2,html[lang="ja"] .hero-banner h2{font-size:27px}.hero-banner+.intro{padding-top:55px}}
@media(max-width:360px){.booking.booking-top{padding:18px}.booking-top form{gap:14px}.hero-banner-content{padding:27px 21px}.hero-banner h2{font-size:25px}html[lang="en"] .hero-banner h2{font-size:34px}html[lang="ko"] .hero-banner h2,html[lang="ja"] .hero-banner h2{font-size:25px}}
@media(prefers-reduced-motion:reduce){.explore-rooms{transition:none}}
@media(min-width:741px) and (max-width:850px){.booking-top form{display:flex;gap:14px}.booking-top .booking-intro{padding-right:18px}.booking-top label{flex:1;min-width:0}.booking-top .solid{flex-shrink:0;padding-inline:13px;gap:14px}}
@media(min-width:601px) and (max-width:740px){.booking.booking-top{display:block}.booking-top .booking-intro{border:0;padding:0;margin-bottom:16px}.booking.booking-top h2,html:not([lang="zh-CN"]):not([lang="zh-TW"]) .booking.booking-top h2{max-width:none}.booking-top form{display:flex}}

/* Continuous full-width booking band and photograph, matching the supplied layout. */
.booking.booking-top{width:100%;max-width:none;margin:0;padding:38px max(56px,calc((100% - 1320px)/2));min-height:142px;border:0;border-radius:0;box-shadow:none;background:#deded5;gap:40px}
.booking-top .booking-intro{border:0;padding-right:0;min-width:195px}
.booking.booking-top h2,html:not([lang="zh-CN"]):not([lang="zh-TW"]) .booking.booking-top h2{font:500 30px/1.25 'Cormorant Garamond',Georgia,serif;max-width:none;white-space:nowrap}
.booking-top form{gap:26px}
.booking-top input,.booking-top select{border-bottom-color:#a8b3a1}
.booking-top .solid{padding-inline:25px;min-height:52px}
.hero-banner{width:100%;max-width:none;margin:0;min-height:535px;aspect-ratio:2.35;border:0;border-radius:0;box-shadow:none}
.hero-banner-content{padding:65px 0;margin-left:max(56px,calc((100% - 1320px)/2));max-width:680px}
.hero-banner h2,html[lang="en"] .hero-banner h2,html[lang="ko"] .hero-banner h2,html[lang="ja"] .hero-banner h2{font-family:'Noto Sans SC','Microsoft YaHei',sans-serif;font-weight:600;font-size:48px;line-height:1.5;letter-spacing:0;max-width:680px}
.hero-banner-content>p{font-size:14px;max-width:500px;margin:24px 0 32px}
.hero-banner-image{object-position:center 56%}
@media(max-width:1150px){.booking.booking-top{padding:32px;gap:28px;min-height:135px}.booking-top .booking-intro{min-width:155px}.booking.booking-top h2,html:not([lang="zh-CN"]):not([lang="zh-TW"]) .booking.booking-top h2{font-size:27px}.booking-top form{gap:20px}.booking-top .solid{padding-inline:19px}.hero-banner{min-height:500px;aspect-ratio:2.1}.hero-banner-content{margin-left:32px;max-width:620px;padding:55px 0}.hero-banner h2,html[lang="en"] .hero-banner h2,html[lang="ko"] .hero-banner h2,html[lang="ja"] .hero-banner h2{font-size:43px}}
@media(max-width:850px){.booking.booking-top{padding:28px 32px;gap:24px;min-height:130px}.booking-top .booking-intro{min-width:130px}.booking.booking-top h2,html:not([lang="zh-CN"]):not([lang="zh-TW"]) .booking.booking-top h2{font-size:24px}.booking-top form{gap:14px}.booking-top .solid{padding-inline:15px;gap:12px;min-height:46px;height:auto}.hero-banner{min-height:480px;aspect-ratio:auto}.hero-banner-content{padding:50px 0;max-width:540px;margin-right:32px}.hero-banner h2,html[lang="en"] .hero-banner h2,html[lang="ko"] .hero-banner h2,html[lang="ja"] .hero-banner h2{font-size:37px}.hero-banner-content>p{font-size:13px;max-width:440px}}
@media(max-width:740px){.booking-top .booking-intro{margin-bottom:20px}.booking.booking-top h2,html:not([lang="zh-CN"]):not([lang="zh-TW"]) .booking.booking-top h2{font-size:28px}.booking-top form{gap:16px}}
@media(max-width:600px){.booking.booking-top{margin:0;padding:25px 24px 27px;min-height:0}.booking-top .booking-intro{margin-bottom:18px}.booking-top form{gap:15px 22px}.booking-top .solid{min-height:46px}.hero-banner{min-height:480px;aspect-ratio:auto}.hero-banner-content{margin:0;padding:38px 24px;width:100%;max-width:none}.hero-banner h2,html[lang="en"] .hero-banner h2,html[lang="ko"] .hero-banner h2,html[lang="ja"] .hero-banner h2{font-size:30px;line-height:1.55}.hero-banner-content>p{font-size:12px;line-height:2;margin:18px 0 25px}.hero-banner-image{object-position:61% center}.explore-rooms{min-height:48px}}
@media(max-width:360px){.booking.booking-top{padding-inline:18px}.hero-banner-content{padding-inline:21px}.hero-banner h2,html[lang="en"] .hero-banner h2,html[lang="ko"] .hero-banner h2,html[lang="ja"] .hero-banner h2{font-size:27px}}
.booking.booking-top{background:#f2efe7}
.booking-top label{font-weight:700}.booking-top label input,.booking-top label select{font-weight:400}
