:root{--ink:#173e45;--teal:#0b555c;--paper:#fafbf8;--muted:#536b6e;--line:#d5dfe0}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.7 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:inherit;text-underline-offset:5px}img{display:block;width:100%;object-fit:cover}h1,h2,h3{font-family:Georgia,"Times New Roman",serif;font-weight:400;line-height:1.1;margin:0}h2{font-size:clamp(2.3rem,4vw,4rem)}h3{font-size:1.85rem}p{margin:0 0 1.25rem}a:focus-visible{outline:3px solid #ebad47;outline-offset:5px}.skip{position:fixed;top:-80px;background:white;padding:12px;z-index:10}.skip:focus{top:10px}.header{display:flex;justify-content:space-between;align-items:center;padding:20px 6%;background:var(--paper);gap:20px;position:sticky;top:0;z-index:5;border-bottom:1px solid var(--line)}.brand{text-decoration:none;font-family:Georgia,serif;font-size:1.6rem;line-height:1.2}.brand>span:not([data-en]){display:block;font:12px/1.8 system-ui;letter-spacing:.18em;text-transform:uppercase;margin-top:4px}nav{display:flex;gap:32px}nav a{font-size:14px;text-decoration:none}nav a:hover{text-decoration:underline}.hero{position:relative;min-height:650px;height:80vh;max-height:950px;color:white;display:flex;align-items:center}.hero>img{position:absolute;height:100%;inset:0}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,27,33,.72),rgba(0,27,33,.15)),linear-gradient(0deg,rgba(0,27,33,.18),transparent)}.hero-content{position:relative;z-index:1;margin:0 8%;max-width:620px;padding:60px 0}.eyebrow{font-size:12px;letter-spacing:.18em;text-transform:uppercase;margin-bottom:22px;font-weight:600}h1{font-size:clamp(3rem,6vw,6rem);margin-bottom:26px}.hero-content>p:not(.eyebrow){max-width:450px;font-size:18px}.button{display:inline-block;text-decoration:none;padding:13px 25px;border:1px solid white;margin-top:10px;font-size:14px}.light{background:white;color:var(--ink)}.light:hover{background:#e1eff0}.hero-note{position:absolute;z-index:1;right:6%;bottom:26px;font-size:12px;letter-spacing:.12em}.section{padding:90px 8%}.intro{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.intro p{color:var(--muted)}.intro .eyebrow{color:var(--teal)}.detail{font-size:14px;border-top:1px solid var(--line);padding-top:22px;margin-top:30px}.photo-story{display:grid;grid-template-columns:1.6fr 1fr .75fr;gap:12px;padding:0 4%}.photo-story img{height:450px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:45px}.section-heading>p{max-width:340px;color:var(--muted);margin:0}.room-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.room{background:white;border:1px solid var(--line)}.room>img{height:270px}.room-content{padding:28px}.room .eyebrow{margin-bottom:15px}.room h3{margin-bottom:20px}.room p{color:var(--muted)}.room ul{list-style:none;padding:16px 0;margin:0 0 20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:14px}.room a{font-size:14px}.gallery{padding-top:0}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.gallery-grid img{height:310px;transition:opacity .2s}.gallery-grid a:hover img{opacity:.85}.contact{background:var(--ink);color:white;display:grid;grid-template-columns:1fr 1fr;gap:12%}.contact h2{margin-bottom:28px}.contact p{max-width:380px;color:#d3e1e3}dl{margin:0}dl>div{padding:15px 0;border-bottom:1px solid #49656a}dt{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:#bcd3d6}dd{margin:4px 0 0;overflow-wrap:anywhere}footer{padding:30px 6%;display:flex;justify-content:space-between;align-items:center;gap:25px;font-size:12px}footer p{margin:0}footer .brand{font-size:1.3rem}@media(max-width:900px){.room-grid{gap:14px}.room-content{padding:20px}.room>img{height:220px}.photo-story img{height:320px}.section{padding:65px 6%}.gallery{padding-top:0}.gallery-grid img{height:230px}}@media(max-width:650px){.header{padding:16px 5%;flex-direction:column;gap:15px}.brand{text-align:center;font-size:1.4rem}nav{gap:25px}html{scroll-padding-top:135px}.hero{height:auto;min-height:620px}.hero-content{margin:0 7%;padding:65px 0}.hero-content>p:not(.eyebrow){font-size:16px}.intro,.contact{grid-template-columns:1fr;gap:30px}.section-heading{display:block}.section-heading>p{margin-top:22px}.photo-story{grid-template-columns:1fr 1fr}.photo-story img{height:270px}.photo-story img:first-child{grid-column:1/-1;height:300px}.room-grid{grid-template-columns:1fr;gap:25px}.room>img{height:290px}.room-content{padding:26px}.gallery-grid{grid-template-columns:1fr;gap:15px}.gallery-grid img{height:280px}.gallery{padding-top:0}footer{flex-direction:column;text-align:center}.hero-note{left:7%;right:auto}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.language-toggle{font:inherit;font-size:14px;padding:10px 18px;background:transparent;border:1px solid var(--ink);color:var(--ink);border-radius:0;cursor:pointer;min-height:44px}.language-toggle:hover{background:var(--ink);color:white}.language-toggle:focus-visible{outline:3px solid #ebad47;outline-offset:5px}.language-toggle[hidden]{display:none}footer{flex-wrap:wrap}html[lang="zh-Hant"] h1,html[lang="zh-Hant"] h2,html[lang="zh-Hant"] h3{line-height:1.35}html[lang="zh-Hant"] .eyebrow{letter-spacing:.08em}

/* Header language control: wrap safely on narrow screens. */
.header { flex-wrap: wrap; }
.header nav { margin-left: auto; }
.header .language-toggle { flex-shrink: 0; }
@media (max-width: 650px) {
  .header { flex-direction: row; justify-content: space-between; gap: 12px; }
  .header .brand { text-align: left; }
  .header nav { order: 3; width: 100%; justify-content: center; margin-left: 0; }
}
