:root{--ink: #0C0A05;--gold: #B08A2E;--gold-deep: #7A5A15;--champagne: #FAF5E9;--line: #E9E2D2;--muted: #3F3930;--white: #FFFFFF}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--white)}.kl{font-family:Jost,sans-serif;color:var(--ink);background:var(--white);-webkit-font-smoothing:antialiased;overflow-x:hidden}.kl.zh{font-family:Jost,Noto Sans SC,sans-serif}h1,h2,h3{font-family:Cormorant Garamond,serif;font-weight:500}.kl.zh h1,.kl.zh h2,.kl.zh h3,.kl.zh .serifed{font-family:Cormorant Garamond,"Noto Serif SC",serif}.kl.zh .eyebrow{letter-spacing:.18em}.eyebrow{font-size:12px;letter-spacing:.28em;text-transform:uppercase;color:var(--gold-deep);font-weight:500;display:flex;align-items:center;gap:14px}.eyebrow:before{content:"";width:34px;height:1px;background:var(--gold);flex:none}.eyebrow .swx{color:var(--muted);font-style:italic;letter-spacing:.08em;text-transform:none;font-family:Cormorant Garamond,serif;font-size:15px}.wrap{max-width:1180px;margin:0 auto;padding:0 28px}.btn{display:inline-flex;align-items:center;gap:10px;position:relative;overflow:hidden;font-family:inherit;font-size:13px;letter-spacing:.18em;text-transform:uppercase;padding:15px 30px;cursor:pointer;border:1px solid var(--ink);background:var(--ink);color:#f5eddc;transition:all .25s ease;text-decoration:none;border-radius:999px}.btn:after{content:"";position:absolute;top:0;left:-80%;width:50%;height:100%;background:linear-gradient(105deg,transparent,rgba(232,217,172,.35),transparent);transform:skew(-20deg);transition:left .6s ease}.btn:hover:after{left:130%}.btn:hover{background:var(--gold-deep);border-color:var(--gold-deep);color:#fff}.btn.ghost{background:transparent;color:var(--ink);border-color:var(--gold)}.btn.ghost:hover{background:var(--gold);color:#fff}.btn:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.display{font-size:clamp(44px,7vw,84px);line-height:1.05}.h2{font-size:clamp(32px,4.4vw,52px);line-height:1.12}.gold-i{font-style:italic;color:var(--gold-deep)}.kl.zh .gold-i{font-style:normal}.lede{font-size:17px;line-height:1.8;color:var(--muted);font-weight:300}section{padding:96px 0}.rule-double{height:7px;border-top:1px solid var(--gold);border-bottom:1px solid var(--gold);width:72px}.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s cubic-bezier(.2,.65,.3,1),transform .8s cubic-bezier(.2,.65,.3,1)}.reveal.in{opacity:1;transform:none}.reveal.d1{transition-delay:.1s}.reveal.d2{transition-delay:.2s}.reveal.d3{transition-delay:.3s}@media (prefers-reduced-motion: reduce){.reveal{opacity:1;transform:none;transition:none}*{animation:none!important;transition:none!important}}.photo{position:relative;overflow:hidden;background:linear-gradient(150deg,#17130c,#2e2512 65%,#4a3a16)}.photo:after{content:"";position:absolute;top:12px;right:12px;bottom:12px;left:12px;border:1px solid rgba(232,217,172,.4);pointer-events:none;z-index:3}.photo img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.65,.3,1),opacity .6s;z-index:1}.photo:hover img{transform:scale(1.06)}.photo .cap{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:40px 24px 18px;background:linear-gradient(to top,rgba(23,19,12,.75),transparent);color:#f0e6c8;font-family:Cormorant Garamond,serif;font-style:italic;font-size:18px}.kl.zh .photo .cap{font-family:"Noto Serif SC",serif;font-style:normal}.photo .fallback{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:#e8d9ac;font-family:Cormorant Garamond,serif;font-style:italic;font-size:19px;text-align:center;padding:0 24px}.topstrip{background:var(--ink);color:#cbb876;font-size:12px;letter-spacing:.08em}.topstrip .wrap{display:flex;justify-content:space-between;align-items:center;padding-top:8px;padding-bottom:8px;gap:16px;flex-wrap:wrap}.langs{display:flex;gap:2px;border:1px solid rgba(203,184,118,.4)}.langs button{background:none;border:none;color:#cbb876;cursor:pointer;font-family:inherit;font-size:11.5px;letter-spacing:.12em;padding:5px 12px;transition:all .2s}.langs button.on{background:var(--gold);color:#fff}.nav{position:sticky;top:0;z-index:60;background:#fffffff5;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:76px;gap:12px}.brand{display:flex;align-items:center;gap:14px;cursor:pointer;background:none;border:none}.monogram{width:44px;height:44px;border:1px solid var(--gold);display:grid;place-items:center;font-family:Cormorant Garamond,serif;font-size:20px;color:var(--gold-deep);position:relative;flex:none}.monogram:after{content:"";position:absolute;top:3px;right:3px;bottom:3px;left:3px;border:1px solid var(--line)}.brand-name{text-align:left}.brand-name b{font-family:Cormorant Garamond,serif;font-weight:600;font-size:21px;letter-spacing:.04em;display:block;color:var(--ink)}.brand-name span{font-size:10px;letter-spacing:.3em;text-transform:uppercase;color:var(--gold-deep)}.kl.zh .brand-name span{letter-spacing:.2em}.navlinks{display:flex;gap:2px}.navlinks a{background:none;border:none;cursor:pointer;font-family:inherit;font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink);padding:10px;position:relative}.navlinks a:after{content:"";position:absolute;left:10px;right:10px;bottom:4px;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .25s ease}.navlinks a:hover:after,.navlinks a.on:after{transform:scaleX(1)}.navlinks a.on{color:var(--gold-deep);font-weight:500}.nav-cta{display:inline-flex}.burger{display:none;background:none;border:1px solid var(--gold);width:42px;height:42px;cursor:pointer;flex:none}.burger span{display:block;width:18px;height:1px;background:var(--ink);margin:4px auto}.mobile-menu{display:none}.hero{position:relative;padding:0}.hero-frame{position:relative;margin:26px;border:1px solid var(--gold);overflow:hidden;min-height:560px;display:flex;align-items:center;border-radius:28px}.hero-frame:after{content:"";position:absolute;top:8px;right:8px;bottom:8px;left:8px;border:1px solid rgba(255,255,255,.35);pointer-events:none;z-index:4;border-radius:20px}.welcome-collage{display:grid;gap:8px}.welcome-collage-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.hero-media{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;overflow:hidden}.hero-slide{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;transition:opacity 1.6s ease-in-out;will-change:opacity}.hero-slide.is-active{opacity:1}.hero-slide img{width:100%;height:100%;object-fit:cover}.hero-slide.is-active img{animation:kenburns 7.6s ease-out both}@keyframes kenburns{0%{transform:scale(1) translate(0)}to{transform:scale(1.12) translate(-1.5%,-1.5%)}}@media (prefers-reduced-motion: reduce){.hero-slide{transition:opacity .4s linear}.hero-slide.is-active img{animation:none}}.hero-media:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:linear-gradient(100deg,#17130cdb,#17130c9e 46%,#17130c2e)}.hero-inner{position:relative;z-index:3;padding:clamp(70px,10vw,130px) clamp(28px,7vw,110px);max-width:900px;color:#f5efe0}.hero-inner .eyebrow{color:var(--gold)}.hero-inner .eyebrow .swx,.hero-inner .lede{color:#fbf6e9}.hero-inner .gold-i{color:#d9b95c}.hero-inner .btn.ghost{color:#f5efe0;border-color:var(--gold)}.hero-inner .btn.ghost:hover{color:#fff}.fade-up{animation:fadeUp .9s ease both}.fade-up.d1{animation-delay:.14s}.fade-up.d2{animation-delay:.28s}.fade-up.d3{animation-delay:.42s}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}.hero-stats{display:flex;border-top:1px solid var(--line);border-left:1px solid var(--line);margin:0 26px 26px}.hero-stats>div{flex:1;padding:26px 30px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.hero-stats .stat{display:flex;align-items:center;gap:13px}.hero-stats .stat-ic{color:var(--gold);flex:none}.hero-stats b{font-family:Cormorant Garamond,serif;font-size:40px;font-weight:500;display:block;line-height:1}.hero-stats b i{color:var(--gold-deep);font-style:normal}.hero-stats span{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}.kl.zh .hero-stats span{letter-spacing:.1em}.ribbon{background:var(--ink);overflow:hidden;padding:16px 0;border-top:1px solid var(--gold);border-bottom:1px solid var(--gold)}.ribbon-track{display:flex;gap:0;width:max-content;animation:marquee 28s linear infinite}.ribbon:hover .ribbon-track{animation-play-state:paused}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.ribbon span{font-family:Cormorant Garamond,"Noto Serif SC",serif;font-style:italic;font-size:19px;color:#e8d9ac;padding:0 34px;white-space:nowrap;position:relative}.ribbon span:after{content:"·";position:absolute;right:-6px;color:var(--gold)}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}.champagne{background:var(--champagne)}.card{background:var(--white);border:1px solid var(--line);transition:border-color .25s,transform .25s,box-shadow .25s;overflow:hidden;display:flex;flex-direction:column}.card:hover{border-color:var(--gold);transform:translateY(-5px);box-shadow:0 18px 40px -28px #17130c59}.card .photo{height:170px;flex:none}.card-body{padding:30px 28px;display:flex;flex-direction:column;flex:1}.card .sw-word{font-family:Cormorant Garamond,serif;font-style:italic;font-size:15px;color:var(--gold-deep)}.card h3{font-size:25px;margin:6px 0 12px}.card p{font-size:14.5px;line-height:1.75;color:var(--muted);font-weight:300;flex:1}.card .note{margin-top:18px;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-deep);border-top:1px solid var(--line);padding-top:14px}.menu-link{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;margin-top:16px;padding:9px 16px;border:1px solid var(--gold);color:var(--gold-deep);font-size:12px;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;border-radius:999px;transition:background .2s,color .2s}.menu-link:hover{background:var(--gold);color:#fff}.menu-link .ic{flex:none}.room{border:1px solid var(--line);background:var(--white);display:flex;flex-direction:column;transition:border-color .25s,box-shadow .25s,transform .25s}.room:hover{border-color:var(--gold);box-shadow:0 22px 48px -30px #17130c66;transform:translateY(-5px)}.room .photo{height:220px;flex:none}.rv-tag{position:absolute;top:16px;left:0;z-index:2;background:var(--gold);color:#fff;font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;padding:7px 14px}.room-body{padding:26px 26px 28px;display:flex;flex-direction:column;gap:14px;flex:1}.room-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.room-head h3{font-size:24px}.price{font-family:Cormorant Garamond,serif;color:var(--gold-deep);font-size:30px;white-space:nowrap}.price small{font-family:inherit;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.room p{font-size:14px;line-height:1.75;color:var(--muted);font-weight:300;flex:1}.chips{display:flex;flex-wrap:wrap;gap:8px}.chips span{display:inline-flex;align-items:center;gap:6px;font-size:11px;letter-spacing:.06em;text-transform:uppercase;border:1px solid var(--line);color:var(--muted);padding:6px 10px}.chips span .ic{color:var(--gold-deep)}.ic{flex:none;vertical-align:middle}.foot-services li{display:flex;align-items:center;gap:9px}.foot-services li .ic{color:var(--gold);flex:none}.foot-contact p{display:flex;align-items:flex-start;gap:9px;margin-top:10px}.foot-contact p:first-child{margin-top:0}.foot-contact .ic{color:var(--gold);flex:none;margin-top:4px}.foot-social{gap:18px}.foot-social a{display:inline-flex;align-items:center;gap:6px}.foot-social .ic{margin-top:0}.room .btn{align-self:flex-start;padding:12px 22px;font-size:12px}.masonry{columns:3;column-gap:22px}.g-item{break-inside:avoid;margin-bottom:22px;border:1px solid var(--line);cursor:zoom-in;background:#fff}.g-item .photo:after{top:10px;right:10px;bottom:10px;left:10px}.g-item figcaption{padding:12px 16px;font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#17130ceb;display:grid;place-items:center;padding:30px;animation:fadeUp .3s ease;cursor:zoom-out}.lightbox img{max-width:min(1000px,92vw);max-height:82vh;object-fit:contain;border:1px solid var(--gold)}.lightbox .lb-cap{color:#e8d9ac;font-family:Cormorant Garamond,serif;font-style:italic;font-size:20px;margin-top:16px;text-align:center}.field{display:flex;flex-direction:column;gap:8px}.field label{font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-deep);font-weight:500}.field input,.field select,.field textarea{font-family:inherit;font-size:15px;padding:14px 16px;border:1px solid var(--line);background:#fff;color:var(--ink);transition:border-color .2s}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--gold);outline:none}.contact-map{width:100%;min-height:400px;border:1px solid var(--gold);display:block}.map-cap{margin-top:10px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-deep)}.datepick{position:relative}.datepick-input{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;font-family:inherit;font-size:15px;padding:14px 16px;border:1px solid var(--line);background:#fff;color:var(--ink);cursor:pointer;text-align:left;transition:border-color .2s}.datepick-input:hover{border-color:var(--gold)}.datepick-input .ic{color:var(--gold-deep);flex:none}.datepick-input.is-placeholder{color:var(--muted)}.datepick-pop{position:absolute;z-index:40;top:calc(100% + 8px);left:0;width:300px;max-width:min(300px,88vw);background:#fff;border:1px solid var(--gold);box-shadow:0 18px 44px #17130c29;padding:16px}.dp-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.dp-title{font-family:Cormorant Garamond,serif;font-size:20px;color:var(--ink)}.dp-nav{background:none;border:1px solid var(--line);width:34px;height:34px;display:grid;place-items:center;cursor:pointer;color:var(--gold-deep);transition:border-color .2s,color .2s}.dp-nav:hover{border-color:var(--gold);color:var(--gold)}.dp-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.dp-weekdays{margin-bottom:6px}.dp-weekdays span{text-align:center;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding:4px 0}.dp-empty{aspect-ratio:1}.dp-day{aspect-ratio:1;display:grid;place-items:center;background:none;border:1px solid transparent;font-family:inherit;font-size:13.5px;color:var(--ink);cursor:pointer;transition:background .15s,color .15s,border-color .15s}.dp-day:hover:not(:disabled){border-color:var(--gold);color:var(--gold-deep)}.dp-day.is-sel{background:var(--gold);border-color:var(--gold);color:#fff}.dp-day:disabled{color:#cfc7b6;cursor:not-allowed}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.form-grid .full{grid-column:1 / -1}.summary-box{border:1px solid var(--gold);background:var(--champagne);padding:30px;position:sticky;top:110px}.summary-box .row{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);font-size:14px}.summary-box .row b{font-weight:500;text-align:right}.summary-box .total{font-family:Cormorant Garamond,serif;font-size:38px;color:var(--gold-deep)}.t-card{border-top:1px solid var(--gold);padding-top:26px}.t-card p{font-family:Cormorant Garamond,"Noto Serif SC",serif;font-size:20px;line-height:1.6;font-style:italic;color:var(--ink)}.kl.zh .t-card p{font-style:normal}.t-card .who{margin-top:18px;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-deep)}.t-card .who span{color:var(--muted)}.faq{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-item>button{width:100%;background:none;border:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:22px 4px;font-family:Cormorant Garamond,"Noto Serif SC",serif;font-size:21px;color:var(--ink);text-align:left;gap:20px}.faq-item .plus{color:var(--gold-deep);font-size:26px;line-height:1;font-weight:300;flex:none}.faq-item .ans{padding:0 4px 24px;font-size:15px;line-height:1.8;color:var(--muted);font-weight:300;max-width:720px}footer{background:var(--ink);color:#b9ae95;padding:74px 0 34px}footer h4{font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);margin-bottom:20px;font-weight:500;font-family:inherit}footer .cols{display:grid;grid-template-columns:2fr 1fr 1fr 1.4fr;gap:44px}footer p,footer li{font-size:14px;line-height:1.9;font-weight:300}footer ul{list-style:none}footer li button,footer a{background:none;border:none;color:#b9ae95;cursor:pointer;font-family:inherit;font-size:14px;padding:0;text-decoration:none;transition:color .2s}footer li button:hover,footer a:hover{color:var(--gold)}footer .legal{border-top:1px solid rgba(203,184,118,.18);margin-top:56px;padding-top:26px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:12.5px}.foot-brand b{font-family:Cormorant Garamond,serif;font-size:26px;color:#f0e6c8;font-weight:500}.page-hero{background:var(--ink);color:#f0e6c8;padding:0;position:relative;overflow:hidden}.page-hero .ph-media{position:absolute;top:0;right:0;bottom:0;left:0}.page-hero .ph-media img{width:100%;height:100%;object-fit:cover;opacity:.38}.page-hero .ph-media:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(100deg,#17130ce6,#17130c8c)}.page-hero .wrap{position:relative;z-index:2;padding-top:92px;padding-bottom:80px}.page-hero .eyebrow{color:var(--gold)}.page-hero .eyebrow .swx{color:#f0e6c8cc}.page-hero h1{font-size:clamp(38px,6vw,64px);margin-top:16px}.page-hero .lede{color:#c9bfa6;max-width:660px;margin-top:16px}.banner-cta{background:var(--ink);color:#f0e6c8;position:relative;overflow:hidden}.banner-cta .bg{position:absolute;top:0;right:0;bottom:0;left:0}.banner-cta .bg img{width:100%;height:100%;object-fit:cover;opacity:.3}.banner-cta .bg:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#17130cbf}.banner-cta .wrap{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:center;gap:32px;flex-wrap:wrap}.banner-cta h2{font-size:clamp(30px,4vw,46px)}.banner-cta .btn{background:var(--gold);border-color:var(--gold);color:#fff}.banner-cta .btn:hover{background:#fff;color:var(--ink);border-color:#fff}.banner-cta .eyebrow{color:var(--gold)}.success{border:1px solid var(--gold);background:var(--champagne);padding:48px;text-align:center}.success h3{font-size:32px;margin-bottom:14px}.success p{color:var(--muted);font-weight:300;line-height:1.8;max-width:560px;margin:0 auto 24px}.nearby-row{border-top:1px solid var(--line);padding:18px 0}.nearby-row h3{font-size:22px}.nearby-row .dist{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-deep);white-space:nowrap}.nearby-row p{font-size:14px;color:var(--muted);font-weight:300;margin-top:6px;line-height:1.7}.resv-layout{display:grid;grid-template-columns:1.6fr 1fr;gap:48px;align-items:start}@media (max-width: 980px){.grid3{grid-template-columns:1fr 1fr}.grid2{grid-template-columns:1fr;gap:40px}.masonry{columns:2}footer .cols{grid-template-columns:1fr 1fr}.navlinks,.nav-cta{display:none}.burger{display:block}.mobile-menu{display:flex;flex-direction:column;background:#fff;border-bottom:1px solid var(--line)}.mobile-menu a{background:none;border:none;border-top:1px solid var(--line);padding:17px 28px;text-align:left;font-family:inherit;font-size:14px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);cursor:pointer}.mobile-menu a.on{color:var(--gold-deep)}.resv-layout{grid-template-columns:1fr}.summary-box{position:static}}@media (max-width: 640px){.grid3{grid-template-columns:1fr}.masonry{columns:1}.form-grid{grid-template-columns:1fr}.hero-stats{flex-direction:column;margin:0 14px 14px}footer .cols{grid-template-columns:1fr}section{padding:68px 0}.hero-frame{margin:14px;min-height:520px}.topstrip .addr{display:none}}.navlinks a{text-decoration:none;display:inline-block}.mobile-menu a{text-decoration:none;display:block}.brand{text-decoration:none}
