@font-face{font-family:LimitlessChineseSerif;src:url('noto-serif-sc-subset.woff') format('woff');font-weight:400;font-display:swap}
@font-face{font-family:LimitlessChineseSans;src:url('noto-sans-sc-subset.woff') format('woff');font-weight:400;font-display:swap}
/* Header language access matches the existing fine-line navigation. */
.header-actions{display:flex;align-items:center;gap:12px;color:inherit}
.language-toggle{display:grid;place-items:center;width:44px;height:44px;border:0;padding:10px;background:transparent;color:inherit;cursor:pointer;opacity:.84;-webkit-tap-highlight-color:transparent}
.language-toggle svg{display:block;width:24px;height:24px}
.language-toggle:hover,.language-toggle[aria-expanded="true"]{opacity:1}
.language-toggle:focus-visible{outline:2px solid currentColor;outline-offset:3px;border-radius:2px}
.language-switch{position:fixed;inset:90px 5.2% auto auto;box-sizing:border-box;margin:0;width:190px;max-width:calc(100vw - 24px);padding:7px;border:1px solid #f5f1e62b;border-radius:3px;background:#3f4a3e;color:#f5f1e6;box-shadow:0 8px 28px #10201433;font-family:Body,LimitlessChineseSans,LimitlessKoreanSans,Arial,sans-serif;font-size:16px;line-height:1.5;letter-spacing:.015em}
.language-switch:popover-open{display:flex;flex-direction:column}
.language-switch::backdrop{background:transparent}
.language-switch a{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:46px;padding:8px 12px;box-sizing:border-box;color:inherit;text-decoration:none;border-radius:2px}
.language-switch .language-label{display:block;transform:translateY(2px)}
.language-switch a:hover{background:#f5f1e609}
.language-switch a[aria-current="true"]{background:#f5f1e60f}
.language-switch a[aria-current="true"]::after{content:"";display:block;width:6px;height:11px;border:solid currentColor;border-width:0 1.4px 1.4px 0;transform:rotate(45deg);margin:0 4px 4px 0}
.language-switch a:focus-visible{outline:1px solid currentColor;outline-offset:-3px}
@media(max-width:899px){.header-actions{gap:7px}.language-toggle svg{width:22px;height:22px}}
html[lang="zh-CN"] .editorial{font-family:LimitlessChineseSerif,'Songti SC','SimSun',serif;line-height:1.85;letter-spacing:.02em}
html[lang="zh-CN"] :is(h2,h3,.subtitle,.welcome-reflection p,.reflection-accent,.signature){font-family:LimitlessChineseSerif,'Songti SC','SimSun',serif;font-style:normal;letter-spacing:.02em;line-height:1.5;font-weight:400}
html[lang="zh-CN"] .story h2{font-size:clamp(31px,7.8vw,54px);line-height:1.45;max-width:100%;text-wrap:balance}
html[lang="zh-CN"] .room h3,html[lang="zh-CN"] .amenity h3{font-size:clamp(27px,6.4vw,38px);line-height:1.5}
html[lang="zh-CN"] .subtitle{font-size:clamp(22px,5.2vw,29px);line-height:1.65}
html[lang="zh-CN"] .welcome-reflection p{font-size:clamp(25px,5.8vw,36px);line-height:1.75}
html[lang="zh-CN"] .welcome .ending p{line-height:1.85}
html[lang="zh-CN"] .welcome .ending>div>p:last-child{font-family:LimitlessChineseSerif,'Songti SC',serif;font-style:normal;line-height:1.8}
html[lang="zh-CN"] :is(.ceremony .ceremony-intro-lead p,.hospitality .columns p:first-child,.closing .body-copy>p:first-child){font-family:LimitlessChineseSerif,'Songti SC',serif;line-height:1.8}
html[lang="zh-CN"] :is(h4,.room .meta,.details li,.glance table,.site-menu,.contact-actions a,.contact-footer,.suite-view-all,.suite-lightbox){font-family:LimitlessChineseSans,'PingFang SC','Microsoft YaHei',sans-serif;letter-spacing:.02em}
html[lang="zh-CN"] :is(.room .meta,.details li,.glance table){line-height:1.8}
html[lang="zh-CN"] .site-menu nav a{font-family:LimitlessChineseSerif,'Songti SC',serif;font-size:clamp(21px,5vw,27px);line-height:1.5}
html[lang="zh-CN"] h4{text-transform:none;letter-spacing:.06em}
html[lang="zh-CN"] .cover .location{font-family:LimitlessChineseSans,'PingFang SC',sans-serif;font-size:clamp(16px,4.35vw,27px);font-weight:400;line-height:1.6;letter-spacing:.13em;color:#f5f1e6;margin:1.2vw auto 0}
html[lang="zh-CN"] .cover .tagline{font-family:LimitlessChineseSerif,'Songti SC',serif;font-style:normal;font-size:clamp(17px,4.4vw,29px);line-height:1.8;letter-spacing:.045em;max-width:24em;margin:0 auto;text-wrap:balance;padding:0 20px}
html[lang="zh-CN"] .cover .tagline span{display:inline}
html[lang="zh-CN"] .suite-lightbox .gallery-caption{font-family:LimitlessChineseSans,'PingFang SC',sans-serif;line-height:1.65}
html[lang="zh-CN"] .contact-actions a>span{transform:none}
@media(max-width:899px){html[lang="zh-CN"] .cover .cover-copy{top:64%}html[lang="zh-CN"] .cover .divider{margin-top:3.5vw;margin-bottom:3vw}}
@media(min-width:900px){html[lang="zh-CN"] .cover .location{font-size:25px;margin-top:18px}html[lang="zh-CN"] .cover .tagline{font-size:29px;max-width:25em}html[lang="zh-CN"] .room h3{max-width:none}}

.room[id]{scroll-margin-top:88px}
html[lang="zh-CN"] .cover .tagline span{display:inline-block;white-space:nowrap}

@font-face{font-family:LimitlessKoreanSerif;src:url('noto-serif-kr-subset.woff') format('woff');font-weight:400;font-display:swap}
@font-face{font-family:LimitlessKoreanSans;src:url('noto-sans-kr-subset.woff') format('woff');font-weight:400;font-display:swap}
html[lang="ko"] .editorial{font-family:LimitlessKoreanSerif,'Batang',serif;line-height:1.85;letter-spacing:0;word-break:keep-all;overflow-wrap:break-word}
html[lang="ko"] :is(h2,h3,.subtitle,.welcome-reflection p,.reflection-accent,.signature){font-family:LimitlessKoreanSerif,'Batang',serif;font-style:normal;font-weight:400;letter-spacing:-.025em;line-height:1.55;word-break:keep-all}
html[lang="ko"] .story h2{font-size:clamp(30px,7.4vw,52px);line-height:1.5;max-width:100%;text-wrap:balance}
html[lang="ko"] .room h3,html[lang="ko"] .amenity h3{font-size:clamp(27px,6.4vw,38px);line-height:1.5}
html[lang="ko"] .subtitle{font-size:clamp(21px,5.1vw,28px);line-height:1.65}
html[lang="ko"] .welcome-reflection p{font-size:clamp(24px,5.8vw,35px);line-height:1.75}
html[lang="ko"] .welcome .ending p{line-height:1.85}
html[lang="ko"] .welcome .ending>div>p:last-child{font-family:LimitlessKoreanSerif,'Batang',serif;font-style:normal;line-height:1.8}
html[lang="ko"] :is(.ceremony .ceremony-intro-lead p,.hospitality .columns p:first-child,.closing .body-copy>p:first-child){font-family:LimitlessKoreanSerif,'Batang',serif;line-height:1.8}
html[lang="ko"] :is(h4,.room .meta,.details li,.glance table,.site-menu,.contact-actions a,.contact-footer,.suite-view-all,.suite-lightbox){font-family:LimitlessKoreanSans,'Malgun Gothic',sans-serif;letter-spacing:0;word-break:keep-all}
html[lang="ko"] :is(.room .meta,.details li,.glance table){line-height:1.8}
html[lang="ko"] .site-menu nav a{font-family:LimitlessKoreanSerif,'Batang',serif;font-size:clamp(21px,5vw,27px);line-height:1.5}
html[lang="ko"] h4{text-transform:none;letter-spacing:.04em}
html[lang="ko"] .cover .location{font-family:LimitlessKoreanSans,'Malgun Gothic',sans-serif;font-size:clamp(14px,3.9vw,25px);font-weight:400;line-height:1.6;letter-spacing:.07em;color:#f5f1e6;margin:1.2vw auto 0}
html[lang="ko"] .cover .tagline{font-family:LimitlessKoreanSerif,'Batang',serif;font-style:normal;font-size:clamp(17px,4.4vw,29px);line-height:1.8;letter-spacing:0;max-width:24em;margin:0 auto;text-wrap:balance;padding:0 20px;word-break:keep-all}
html[lang="ko"] .cover .tagline span{display:inline-block;white-space:nowrap}

html[lang="ko"] .suite-lightbox .gallery-caption{font-family:LimitlessKoreanSans,'Malgun Gothic',sans-serif;line-height:1.65;word-break:keep-all}
html[lang="ko"] .contact-actions a>span{transform:none}
@media(max-width:899px){html[lang="ko"] .cover .cover-copy{top:64%}html[lang="ko"] .cover .divider{margin-top:3.5vw;margin-bottom:3vw}}
@media(min-width:900px){html[lang="ko"] .cover .location{font-size:25px;margin-top:18px}html[lang="ko"] .cover .tagline{font-size:29px;max-width:25em}html[lang="ko"] .room h3{max-width:none}}

html[lang="ko"] .property .subtitle{white-space:normal;text-wrap:balance}

html[lang="zh-CN"] .property .subtitle{white-space:normal;text-wrap:balance}

/* Japanese uses Japanese glyph forms and the same editorial hierarchy. */
@font-face{font-family:LimitlessJapaneseSerif;src:url('noto-serif-jp-subset.woff') format('woff');font-weight:400;font-display:swap}
@font-face{font-family:LimitlessJapaneseSans;src:url('noto-sans-jp-subset.woff') format('woff');font-weight:400;font-display:swap}
html[lang="ja"] .editorial{font-family:LimitlessJapaneseSerif,'Hiragino Mincho ProN','Yu Mincho',serif;line-height:1.85;letter-spacing:.01em}
html[lang="ja"] :is(h2,h3,.subtitle,.welcome-reflection p,.reflection-accent,.signature){font-family:LimitlessJapaneseSerif,'Hiragino Mincho ProN','Yu Mincho',serif;font-style:normal;letter-spacing:.01em;line-height:1.5;font-weight:400}
html[lang="ja"] .story h2{font-size:clamp(28px,7.2vw,50px);line-height:1.45;max-width:100%;text-wrap:balance}
html[lang="ja"] .room h3,html[lang="ja"] .amenity h3{font-size:clamp(27px,6.4vw,38px);line-height:1.5}
html[lang="ja"] .subtitle{font-size:clamp(21px,5.1vw,28px);line-height:1.65}
html[lang="ja"] .welcome-reflection p{font-size:clamp(25px,5.8vw,36px);line-height:1.75}
html[lang="ja"] .welcome .ending p{line-height:1.85}
html[lang="ja"] .welcome .ending>div>p:last-child{font-family:LimitlessJapaneseSerif,'Hiragino Mincho ProN',serif;font-style:normal;line-height:1.8}
html[lang="ja"] :is(.ceremony .ceremony-intro-lead p,.hospitality .columns p:first-child,.closing .body-copy>p:first-child){font-family:LimitlessJapaneseSerif,'Hiragino Mincho ProN',serif;line-height:1.8}
html[lang="ja"] :is(h4,.room .meta,.details li,.glance table,.site-menu,.contact-actions a,.contact-footer,.suite-view-all,.suite-lightbox){font-family:LimitlessJapaneseSans,'Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;letter-spacing:.01em}
html[lang="ja"] :is(.room .meta,.details li,.glance table){line-height:1.8}
html[lang="ja"] .site-menu nav a{font-family:LimitlessJapaneseSerif,'Hiragino Mincho ProN',serif;font-size:clamp(21px,5vw,27px);line-height:1.5}
html[lang="ja"] h4{text-transform:none;letter-spacing:.06em}
html[lang="ja"] .cover .location{font-family:LimitlessJapaneseSans,'Hiragino Kaku Gothic ProN',sans-serif;font-size:clamp(16px,4.35vw,27px);font-weight:400;line-height:1.6;letter-spacing:.08em;color:#f5f1e6;margin:1.2vw auto 0}
html[lang="ja"] .cover .tagline{font-family:LimitlessJapaneseSerif,'Hiragino Mincho ProN',serif;font-style:normal;font-size:clamp(17px,4.4vw,29px);line-height:1.8;letter-spacing:.045em;max-width:24em;margin:0 auto;text-wrap:balance;padding:0 20px}
html[lang="ja"] .cover .tagline span{display:inline}
html[lang="ja"] .suite-lightbox .gallery-caption{font-family:LimitlessJapaneseSans,'Hiragino Kaku Gothic ProN',sans-serif;line-height:1.65}
html[lang="ja"] .contact-actions a>span{transform:none}
@media(max-width:899px){html[lang="ja"] .cover .cover-copy{top:64%}html[lang="ja"] .cover .divider{margin-top:3.5vw;margin-bottom:3vw}}
@media(min-width:900px){html[lang="ja"] .cover .location{font-size:25px;margin-top:18px}html[lang="ja"] .cover .tagline{font-size:29px;max-width:25em}html[lang="ja"] .room h3{max-width:none}}

html[lang="ja"] .cover .tagline span{display:inline-block;white-space:nowrap}
html[lang="ja"] .property .subtitle{white-space:normal;text-wrap:balance}
.language-switch a[lang="ja"] .language-label{font-family:LimitlessJapaneseLabel,'Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif}

@font-face{font-family:LimitlessJapaneseLabel;src:url('noto-sans-jp-label.woff') format('woff');font-weight:400;font-display:swap}
html[lang="ja"] .language-switch a[lang="ja"] .language-label{font-family:LimitlessJapaneseSans,sans-serif}

html[lang="ja"] .heading-phrase{display:inline-block;white-space:nowrap}
/* Respect the original sans/serif contrast with Japanese glyphs and upright emphasis. */
html[lang="ja"] :is(.ceremony .columns p,.shared .accommodation-intro p,.shared .amenity p,.hospitality .columns p){font-family:LimitlessJapaneseSans,'Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;line-height:1.8}
html[lang="ja"] .editorial p.reflection-accent,html[lang="ja"] .property-closing p:first-child{font-family:LimitlessJapaneseSerif,'Hiragino Mincho ProN','Yu Mincho',serif;font-style:normal;line-height:1.8}

/* Keep Chinese text in its own fonts when English section styles are more specific. */
html[lang="zh-CN"] :is(.ceremony .columns p,.shared .accommodation-intro p,.shared .amenity p,.hospitality .columns p){font-family:LimitlessChineseSans,'PingFang SC','Microsoft YaHei',sans-serif;line-height:1.8}
html[lang="zh-CN"] .editorial p.reflection-accent,html[lang="zh-CN"] .property-closing p:first-child{font-family:LimitlessChineseSerif,'Songti SC','SimSun',serif;font-style:normal;line-height:1.8}

/* Keep Korean text in its own fonts when English section styles are more specific. */
html[lang="ko"] :is(.ceremony .columns p,.shared .accommodation-intro p,.shared .amenity p,.hospitality .columns p){font-family:LimitlessKoreanSans,'Malgun Gothic',sans-serif;line-height:1.8}
html[lang="ko"] .editorial p.reflection-accent,html[lang="ko"] .property-closing p:first-child{font-family:LimitlessKoreanSerif,'Batang',serif;font-style:normal;line-height:1.8}
