:root{--paper:#f8faf7;--white:#fff;--ink:#233f36;--muted:#5c7068;--sage:#dfe9df;--line:#d3ddd4;--accent:#366450;--serif:"Iowan Old Style","Baskerville","Songti SC","Noto Serif CJK SC",Georgia,serif;--sans:"Avenir Next","PingFang SC","Microsoft YaHei",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.65}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}img{display:block;max-width:100%;object-fit:cover}h1,h2,h3,p,figure{margin:0}h1,h2{font-family:var(--serif);font-weight:400;line-height:1.3}h2{font-size:clamp(32px,3vw,45px)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #6f937d;outline-offset:5px}.wrap{max-width:1320px;margin:auto;padding:0 64px}.skip-link{position:fixed;left:20px;top:-70px;background:var(--white);padding:12px;z-index:10}.skip-link:focus{top:10px}.preview-note{background:#e6eee7;text-align:center;color:#3d5b4c;padding:7px 20px;font-size:11px;letter-spacing:.04em}.site-header{height:110px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:flex;align-items:center;gap:12px;line-height:1.1;font-family:var(--serif);font-size:24px}.monogram{font-family:var(--serif);font-style:italic;font-size:35px;letter-spacing:-4px;width:46px;height:49px;border:1px solid #9eafa3;border-radius:50% 50% 1px 1px;text-align:center;padding-right:5px;line-height:41px}.brand-sub{display:block;font-family:var(--sans);font-size:10px;letter-spacing:.3em;margin-top:7px}.site-header nav{display:flex;gap:34px;font-size:13px}.header-actions{display:flex;align-items:center;gap:22px}#language{border:0;padding:6px;background:transparent;color:var(--ink);font-size:12px}.button{display:inline-flex;justify-content:center;align-items:center;background:var(--ink);color:var(--white);border:1px solid var(--ink);padding:14px 25px;border-radius:3px;font-size:13px;letter-spacing:.02em;transition:background .2s}.button:hover{background:var(--accent)}.button.small{padding:10px 20px;font-size:12px}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:660px;padding-bottom:28px;gap:55px}.hero-copy{display:flex;flex-direction:column;padding-top:50px}.place{font-size:12px;color:var(--muted);margin-bottom:34px}.hero h1{font-size:clamp(50px,5.3vw,74px);letter-spacing:.045em;line-height:1.25}.hero-en{font-family:var(--serif);font-size:24px;margin:25px 0 17px;color:var(--muted)}.intro{max-width:360px;font-size:14px;line-height:1.95;color:var(--muted)}.hero-ctas{display:flex;align-items:center;gap:28px;margin-top:31px}.text-link{font-size:13px;background:none;border:0;border-bottom:1px solid #819487;padding:3px 0;color:var(--ink)}.hero-foot{margin-top:auto;padding-top:38px;display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:11px}.hero-image{position:relative;overflow:hidden;border-radius:48% 48% 3px 3px;height:635px}.hero-image img{width:100%;height:100%;object-position:center 63%}.hero-image figcaption{position:absolute;bottom:15px;right:18px;font-size:10px;color:#fff;text-shadow:0 1px 4px #263f2b}.image-word{position:absolute;left:35px;top:73px;font:42px/1.05 var(--serif);color:#314f3e}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:44px}.section-kicker{font-size:12px;color:var(--muted);margin-bottom:19px}.section-heading>p{font-size:12px;line-height:1.9;color:var(--muted);max-width:340px}.treatments{padding-top:95px;padding-bottom:100px}.treatment-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;align-items:start}.treatment-photo{padding-top:18px}.treatment-photo img{width:100%;height:310px;filter:saturate(.55);border-radius:3px}.treatment-photo>span{font-size:10px;color:var(--muted);display:block;margin-top:9px}.treatment-item{border-bottom:1px solid var(--line)}.treatment-item:first-child{border-top:1px solid var(--line)}.treatment-toggle{width:100%;background:none;border:0;text-align:left;color:var(--ink);display:flex;align-items:center;justify-content:space-between;padding:20px 0;gap:12px}.treatment-toggle h3{font:20px var(--serif)}.treatment-toggle .subtitle{display:block;font-size:11px;color:var(--muted);margin-top:5px}.toggle-icon{font-size:22px;font-weight:300}.treatment-body{padding-bottom:23px;font-size:12px;color:var(--muted)}.treatment-body p{margin-bottom:16px;max-width:450px}.treatment-body button{font-size:12px}.approach{background:var(--sage);position:relative;overflow:hidden;padding:80px 0 85px}.approach-inner{display:grid;grid-template-columns:1fr 1fr;column-gap:110px;position:relative;z-index:1}.approach-inner>.section-kicker{grid-column:1/-1}.approach h2{font-size:48px}.approach-details{max-width:390px;font-size:13px;color:#476250}.approach-details>p{margin-bottom:30px;line-height:1.9}.approach-details>div{margin-top:24px}.approach-details h3{font-size:15px;font-weight:500;margin-bottom:6px}.approach-details div p{font-size:12px}.leaf{position:absolute;color:#8ca58c;width:360px;left:max(0px,calc(50% - 530px));bottom:-155px;opacity:.42;transform:rotate(8deg)}.booking{padding-top:105px;padding-bottom:100px;display:grid;grid-template-columns:.85fr 1fr;gap:100px}.booking-intro h2{font-size:48px;margin-bottom:27px}.booking-intro>p:not(.section-kicker){font-size:14px;max-width:310px;color:var(--muted)}.booking-disclosure{display:flex;gap:10px;align-items:start;max-width:320px;margin-top:36px;font-size:12px;color:var(--muted)}.status-dot{flex-shrink:0;width:6px;height:6px;background:#8ca18b;border-radius:50%;margin-top:7px}.booking-form{padding:32px;background:#fff;border:1px solid var(--line);border-radius:5px}.form-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:27px}.form-heading h3{font:23px var(--serif)}.form-heading span{font-size:11px;color:var(--muted)}label{display:block;font-size:12px;margin-bottom:8px}select,input,textarea{color:var(--ink);width:100%;border:1px solid #cbd7ce;border-radius:2px;background:var(--paper);padding:11px 12px;font-size:13px;min-width:0}textarea{resize:vertical}select{height:46px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:20px}.field-hint{font-size:10px;line-height:1.75;color:var(--muted);margin:9px 0 20px}.full{width:100%}.form-error{font-size:12px;color:#913d36;margin-top:8px}.visit{padding-top:15px;padding-bottom:100px;display:grid;grid-template-columns:.85fr 1fr;gap:100px}.visit-questions details{border-bottom:1px solid var(--line);padding:19px 0}.visit-questions details:first-child{border-top:1px solid var(--line)}summary{cursor:pointer;font-size:14px}.visit-questions p{font-size:12px;color:var(--muted);margin-top:15px;max-width:480px}footer{background:var(--ink);color:#f5f8f2;padding:45px 0}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:35px}.footer-inner>p{font:18px var(--serif)}.footer-inner>span{font-size:10px;color:#bccdc2}dialog{width:min(530px,calc(100% - 32px));padding:40px;border:1px solid var(--line);border-radius:6px;background:var(--paper);color:var(--ink);max-height:85vh;overflow:auto}dialog::backdrop{background:#183c2e80;backdrop-filter:blur(5px)}.dialog-close{position:absolute;right:16px;top:10px;border:0;background:none;font-size:28px;color:var(--ink)}dialog h2{font-size:32px}.draft-notice{padding:12px 14px;background:var(--sage);font-size:12px;margin:22px 0}dl{margin:25px 0}dt{font-size:11px;color:var(--muted);margin-top:17px}dd{margin:4px 0 0;font-size:15px;white-space:pre-wrap;overflow-wrap:anywhere}.dialog-actions{display:flex;gap:24px;align-items:center}#copy-status{font-size:12px;min-height:20px;margin-top:15px}body.dialog-open{overflow:hidden}[hidden]{display:none!important}@media(min-width:1500px){.wrap{max-width:1420px}.hero-image{height:700px}.hero-copy{padding-top:75px}.hero h1{font-size:80px}}@media(max-width:1000px){.wrap{padding-left:32px;padding-right:32px}.site-header nav{gap:20px}.hero{gap:30px;min-height:590px}.hero-image{height:560px}.hero h1{font-size:57px}.hero-ctas{gap:18px;flex-wrap:wrap}.treatment-layout{gap:35px}.booking,.visit{gap:45px}.approach-inner{column-gap:60px}.footer-inner>p{display:none}}@media(max-width:700px){.wrap{padding-left:24px;padding-right:24px}.site-header{height:88px;gap:14px}.site-header nav{display:none}.brand{font-size:20px;gap:10px}.brand-sub{font-size:9px}.monogram{width:39px;height:43px;font-size:31px;line-height:36px}.header-actions{gap:10px}.button.small{padding:9px 13px;font-size:11px}.preview-note{font-size:10px;padding:7px 12px}.hero{grid-template-columns:1fr;gap:30px;padding-bottom:0}.hero-copy{padding-top:22px}.place{margin-bottom:22px;font-size:11px}.hero h1{font-size:57px}.hero-en{margin-top:19px;font-size:24px}.intro{max-width:360px;font-size:13px}.hero-ctas{margin-top:25px}.hero-foot{padding-top:25px}.hero-image{height:470px;border-radius:46% 46% 3px 3px;margin:0 12px}.image-word{top:45px;font-size:34px;left:30px}.hero-image img{object-position:center 60%}.treatments{padding-top:70px;padding-bottom:65px}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:20px}.section-kicker{margin-bottom:14px}.treatment-layout{grid-template-columns:1fr;gap:24px}.treatment-photo{padding-top:0}.treatment-photo img{height:230px}.treatment-toggle{padding:18px 0}.treatment-toggle h3{font-size:21px}.approach{padding:60px 0}.approach-inner{grid-template-columns:1fr}.approach h2{font-size:40px;margin-bottom:35px}.approach-details{margin-left:55px}.leaf{width:280px;left:-95px;bottom:-100px}.booking{padding-top:65px;padding-bottom:65px;grid-template-columns:1fr;gap:30px}.booking-intro h2{font-size:40px;margin-bottom:20px}.booking-disclosure{max-width:100%;margin-top:22px}.booking-form{padding:23px 20px}.visit{padding-bottom:65px;grid-template-columns:1fr;gap:28px}.footer-inner{align-items:start;gap:25px;flex-direction:column}footer{padding:35px 0}.form-row{gap:12px}dialog{padding:32px 25px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.signature{display:grid;grid-template-columns:.9fr 1.1fr;column-gap:70px;padding-top:85px;align-items:center}.poster-crop{position:relative;aspect-ratio:500/470;overflow:hidden;border-radius:3px;background:#dfe9df}.poster-crop img{position:absolute;width:204.8%;max-width:none;height:auto;left:-104.8%;top:-114.9%;filter:saturate(.65)}.signature-copy h2{font-size:46px}.signature-description{font-size:14px;color:var(--muted);max-width:400px;margin:24px 0;line-height:1.9}.reference-price{font-size:16px}.signature-copy .field-hint{max-width:390px;font-size:11px}.signature-caption{grid-column:1;margin-top:10px;font-size:10px;color:var(--muted)}.spa-reference{font-size:11px;color:var(--muted);padding:20px 0;line-height:1.9}.treatment-photo{position:sticky;top:30px}.contact-block{margin-top:35px;max-width:280px}.contact-block>p{font-size:11px;color:var(--muted);margin-bottom:8px}.contact-phone{display:block;font:29px var(--serif);margin:12px 0 16px}.contact-block .text-link{display:inline-block;margin-top:12px}@media(max-width:700px){.signature{grid-template-columns:1fr;gap:25px;padding-top:65px}.signature-copy{grid-row:1}.signature-copy h2{font-size:40px}.poster-crop{grid-row:2}.signature-caption{margin-top:-16px}.treatment-photo{position:static}.reference-price{font-size:15px}}

.contact-email{display:block;font-size:13px;margin-bottom:16px;overflow-wrap:anywhere}

.honey{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.admin{padding-block:60px}.admin h1{font-size:48px}.admin-card{padding:24px;border:1px solid #dfe9df;margin-block:24px;background:white}.admin-card h2{font-size:24px}.admin-card input,.admin-card select{display:block;max-width:400px;margin-block:16px}.admin-card p{white-space:pre-wrap;overflow-wrap:anywhere}.dialog-actions{flex-wrap:wrap}#submit-status{white-space:pre-wrap;overflow-wrap:anywhere}.button:disabled{opacity:.6;cursor:wait}
.login-shell{min-height:100vh;padding-top:48px;padding-bottom:64px}.login-card{max-width:500px;margin:60px auto;padding:44px;background:#fff;border:1px solid #dce4dd;border-radius:8px}.login-card h1{font-size:38px;margin:12px 0 24px}.login-card form{display:grid;gap:14px;margin:24px 0}.login-card form[hidden]{display:none}.login-card input{width:100%;padding:15px;border:1px solid #afbbb3;border-radius:3px;font:inherit;box-sizing:border-box}.login-notice{background:#f5f1e5;padding:14px}.login-footnote{font-size:13px;color:#66746b;line-height:1.7}.login-card button:disabled{opacity:.5;cursor:not-allowed}@media(max-width:600px){.login-card{padding:24px;margin:32px auto}.login-card h1{font-size:32px}}
