500;600;700&family=Manrope:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;1,400;1,500&display=swap');
:root{--ink:#122f3a;--muted:#566a72;--accent:#de643e;--paper:#fff;--pale:#edf3f5;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}img{display:block;width:100%;object-fit:cover}figure,p,h1,h2,dl{margin:0}a:focus-visible,summary:focus-visible{outline:3px solid #de643e;outline-offset:6px}.skip{position:fixed;top:-100px;left:12px;padding:12px;background:white;z-index:100}.skip:focus{top:12px}.header{height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 5.5%;background:white;position:sticky;top:0;z-index:20;border-bottom:1px solid #122f3a0b}.brand{font-family:var(--serif);font-size:30px;line-height:1.1;white-space:nowrap}.brand i{font-size:.8em;font-weight:400}.brand span{display:block;font-family:var(--sans);font-size:12px;letter-spacing:.3em;margin-top:9px;text-align:center}nav{display:flex;gap:36px;align-items:center}.nav-link{font-size:14px;font-weight:500}.nav-link:hover,.text-link:hover{color:var(--accent)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:14px 27px;font-size:15px;font-weight:600;border-radius:3px;transition:background .2s,transform .2s}.book{background:var(--accent);color:#fff}.book:hover{background:#be4b28;transform:translateY(-2px)}.hero{position:relative;min-height:650px;height:calc(100svh - 100px);max-height:1000px;color:white;isolation:isolate;display:flex;align-items:center;padding:6% 8% 110px}.hero-image,.hero-shade{position:absolute;inset:0;width:100%;height:100%;z-index:-2}.hero-image{object-position:center 46%}.hero-shade{z-index:-1;background:linear-gradient(90deg,rgba(5,29,43,.69) 0%,rgba(5,29,43,.25) 62%,rgba(5,29,43,.08)),linear-gradient(0deg,rgba(5,29,43,.58),transparent 35%)}.hero-content{max-width:840px}.eyebrow{font-size:12px;font-weight:600;letter-spacing:.17em;line-height:1.7;margin-bottom:25px}h1,h2{font-family:var(--serif);font-weight:400;line-height:1.12;letter-spacing:-.025em}h1{font-size:clamp(48px,5.8vw,88px);text-shadow:0 2px 28px #10293633}h1 em,h2 em{font-weight:400}.hero-content>p:not(.eyebrow){font-size:18px;line-height:1.65;margin-top:24px;color:#fffffff0}.hero-book{margin-top:32px;min-height:56px;padding:15px 34px}.hero-note{display:block;font-size:13px;margin-top:14px;color:#ffffffe0}.hero-bottom{position:absolute;bottom:32px;left:8%;right:8%;display:flex;align-items:center;justify-content:space-between;font-size:12px;letter-spacing:.12em}.hero-bottom a{letter-spacing:0;font-size:14px}.hero-bottom a span{margin-left:18px;font-size:22px}.section{padding:110px 8%}h2{font-size:clamp(38px,4vw,60px)}.stay{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.stay-copy>p:not(.eyebrow){margin-top:24px;max-width:480px;color:var(--muted)}.stay-image img{height:560px;border-radius:2px}.stay-image figcaption{font-size:13px;color:var(--muted);margin-top:15px}.amenities{display:grid;grid-template-columns:1fr 1fr;margin-top:34px;gap:25px 20px}.amenities dt{font-size:16px;font-weight:600}.amenities dd{margin:3px 0 0;color:var(--muted);font-size:14px}.stay-copy>p.access-note{font-size:13px;margin-top:28px}.text-link{display:inline-block;font-size:14px;font-weight:600;border-bottom:1px solid currentColor;padding-bottom:5px;margin-top:25px}.gallery-section{padding-top:20px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:45px}.section-heading>p{color:var(--muted);font-size:16px;padding-bottom:5px}.gallery{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:22px}.gallery img{height:345px;transition:filter .25s}.gallery a:hover img,.extra-gallery a:hover img{filter:brightness(.9)}.gallery figcaption{font-size:14px;margin-top:15px}.more-photos{margin-top:36px}.more-photos summary{cursor:pointer;font-size:14px;list-style:none;border-top:1px solid #122f3a22;border-bottom:1px solid #122f3a22;padding:18px 0;display:flex;justify-content:space-between}.more-photos summary::-webkit-details-marker{display:none}.more-photos summary span{font-size:20px;line-height:1}.more-photos[open] summary span{transform:rotate(45deg)}.extra-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding-top:25px}.extra-gallery img{height:260px}.destination{text-align:center;background:var(--pale);padding-top:95px;padding-bottom:95px}.destination p:not(.eyebrow){color:var(--muted);margin-top:25px}.booking{background:var(--ink);color:white;text-align:center;padding-top:95px;padding-bottom:95px}.booking>.eyebrow{color:#c5d6de}.booking>p:not(.eyebrow){margin-top:26px;color:#d3dfe4}.booking .button{margin-top:30px;min-width:215px}.booking-note{display:block;font-size:13px;color:#bbced7;margin-top:18px}footer{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:42px 8%}footer .brand{font-size:25px}footer .brand span{font-size:11px}footer p,footer>a:last-child{font-size:13px;color:var(--muted)}
@media(min-width:1600px){.section{padding-left:max(8%,calc((100vw - 1344px)/2));padding-right:max(8%,calc((100vw - 1344px)/2))}}
@media(max-width:1000px){.header{padding:0 5%}nav{gap:24px}.section{padding:80px 6%}.hero{padding-left:6%;padding-right:6%}.hero-bottom{left:6%;right:6%}.stay{gap:6%}.stay-image img{height:510px}.gallery img{height:270px}.gallery-section{padding-top:10px}.extra-gallery{grid-template-columns:repeat(2,1fr)}footer{padding:35px 6%}}
@media(max-width:680px){html{scroll-padding-top:80px}.header{height:80px;padding:0 5%}.brand{font-size:24px}.brand span{font-size:10px;margin-top:7px}.nav-link{display:none}nav{gap:0}.header .button{font-size:13px;min-height:45px;padding:11px 16px}.hero{height:calc(100svh - 80px);min-height:610px;max-height:820px;padding:60px 7% 100px;align-items:center}.hero-image{object-position:58% center}.hero-shade{background:linear-gradient(90deg,#061f32aa,#061f3255),linear-gradient(0deg,#061f3277,transparent 50%)}h1{font-size:clamp(42px,10.6vw,64px);line-height:1.16}.hero .eyebrow{font-size:11px;letter-spacing:.13em;margin-bottom:23px}.hero-content>p:not(.eyebrow){font-size:16px;margin-top:23px}.hero-book{margin-top:28px}.hero-bottom{bottom:25px;left:7%;right:7%;font-size:10px}.hero-bottom a{font-size:12px}.hero-bottom a span{margin-left:6px}.section{padding:64px 7%}.stay{grid-template-columns:1fr;gap:38px}h2{font-size:42px}.eyebrow{font-size:11px;margin-bottom:18px}.stay-image img{height:370px}.stay-copy>p:not(.eyebrow){margin-top:21px}.amenities{gap:22px;margin-top:28px}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:20px}.gallery-section{padding-top:15px}.gallery{grid-template-columns:1fr 1fr;gap:23px 14px}.gallery .wide{grid-column:1/-1}.gallery img{height:215px}.gallery .wide img{height:310px}.gallery figcaption{font-size:13px;margin-top:10px}.extra-gallery{gap:14px}.extra-gallery img{height:200px}.destination p br{display:none}.destination,.booking{padding-top:70px;padding-bottom:70px}.booking-note{max-width:260px;margin:18px auto 0}footer{flex-wrap:wrap;padding:35px 7%;gap:24px}footer p{order:3;width:100%;font-size:12px}footer>a:last-child{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}

.mobile-book{display:none}
@media(max-width:680px){body{padding-bottom:90px}.mobile-book{display:flex;position:fixed;bottom:calc(14px + env(safe-area-inset-bottom,0px));left:7%;right:7%;z-index:50;min-height:54px;box-shadow:0 4px 22px #122f3a55;font-size:16px}.header .button{font-size:13px;padding:11px 12px}.mobile-book:hover{transform:none}}

.rotate-hint{display:none}
@media(max-width:680px) and (orientation:portrait){.rotate-hint{display:flex;align-items:center;gap:10px;margin-top:22px;color:#fff;font-size:13px;line-height:1.4}.rotate-hint svg{flex-shrink:0}}

.hero{display:block;padding:0;min-height:0;height:clamp(360px,65svh,760px);max-height:none;isolation:auto}.hero-image{position:static;z-index:auto;object-position:center center}.stay h1{font-size:clamp(38px,4vw,60px);text-shadow:none}.rotate-hint{background:white;color:var(--muted);margin:0;padding:16px 7%;justify-content:center}
@media(max-width:680px){.hero{height:52svh;min-height:300px;max-height:600px;padding:0}.hero-image{object-position:center center}.stay h1{font-size:42px}}
@media(max-width:680px) and (orientation:portrait){.rotate-hint{margin-top:0;color:var(--muted)}}

.rotate-cue{display:none}
@media(max-width:680px) and (orientation:portrait){.rotate-cue{display:flex;align-items:center;justify-content:center;position:absolute;right:18px;bottom:18px;width:56px;height:56px;border-radius:50%;background:#122f3ae6;color:white;pointer-events:none;animation:rotate-cue-fade 14s linear forwards}.rotate-cue-phone{transform-origin:24px 24px;animation:phone-turn 4.5s ease-in-out 3}.rotate-cue-arrow{opacity:.75}}
@keyframes phone-turn{0%,15%{transform:rotate(0deg)}45%,75%{transform:rotate(90deg)}95%,100%{transform:rotate(0deg)}}
@keyframes rotate-cue-fade{0%,92%{opacity:1}100%{opacity:0;visibility:hidden}}
@media(prefers-reduced-motion:reduce){.rotate-cue,.rotate-cue-phone{animation:none!important}.rotate-cue-phone{transform:rotate(45deg)}}

.language-menu{position:relative;flex-shrink:0}.language-menu summary{list-style:none;cursor:pointer;width:44px;height:44px;display:flex;align-items:center;justify-content:center;border:1px solid #122f3a22;border-radius:4px;background:white;color:#122f3a}.language-menu summary::-webkit-details-marker{display:none}.language-menu summary:hover{background:#edf3f5}.language-options{position:absolute;right:0;top:calc(100% + 10px);width:180px;background:white;color:#122f3a;padding:8px;border:1px solid #122f3a22;border-radius:6px;box-shadow:0 8px 28px #122f3a26;z-index:1100}.language-options a{display:block;padding:10px 12px;font-size:16px;line-height:1.5;border-radius:3px}.language-options a:hover,.language-options a[aria-current]{background:#edf3f5}.language-options a[aria-current]{font-weight:700}html[lang=th] h1,html[lang=th] h2,html[lang=zh-Hans] h1,html[lang=zh-Hans] h2{font-family:Arial,sans-serif;line-height:1.4;letter-spacing:0}html[lang=th] .eyebrow,html[lang=zh-Hans] .eyebrow{letter-spacing:.02em}html[lang=th] .stay-copy,html[lang=zh-Hans] .stay-copy{line-height:1.85}
@media(max-width:680px),(max-width:1100px) and (pointer:coarse){.header nav{gap:10px}.header .brand{font-size:24px}.header .button{min-height:44px;padding:10px 14px;font-size:14px}}
@media(max-width:360px){.header{padding-left:4%;padding-right:4%}.header .brand{font-size:21px}.header nav{gap:8px}.header .button{padding:10px}}
