:root{--ink:#17332d;--deep:#0c2823;--sage:#8d9d81;--mist:#e5e9df;--milk:#f6f3eb;--sand:#d6c7b0;--white:#fff;--line:rgba(23,51,45,.16)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--milk);color:var(--ink);font-family:"Avenir Next","Helvetica Neue",Arial,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:100%;object-fit:cover}button,input,select{font:inherit}.announcement{height:36px;background:var(--deep);color:#eaf0e9;text-align:center;font-size:11px;letter-spacing:.12em;display:flex;align-items:center;justify-content:center;gap:16px}.announcement a{border-bottom:1px solid}.site-header{height:92px;padding:0 5vw;display:grid;grid-template-columns:250px 1fr 130px;align-items:center;border-bottom:1px solid var(--line);position:relative;z-index:10}.brand{display:grid;grid-template-columns:42px auto;grid-template-rows:25px 15px;align-items:center;width:max-content;line-height:1}.brand span{grid-row:1/3;width:34px;height:42px;border:1px solid;border-radius:50% 50% 44% 44%;display:grid;place-items:center;font-family:Georgia,serif;font-style:italic;font-size:24px}.brand strong{font-family:Georgia,serif;font-weight:400;font-size:21px;letter-spacing:.13em}.brand small{font-size:8px;letter-spacing:.28em}.site-header nav{display:flex;justify-content:center;gap:3vw;font-size:12px;letter-spacing:.11em}.site-header nav a{position:relative}.site-header nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:1px;background:var(--ink);transition:.3s}.site-header nav a:hover:after{right:0}.header-cta{justify-self:end;border:1px solid var(--ink);padding:11px 23px;font-size:11px;letter-spacing:.16em;text-transform:uppercase}.menu-toggle{display:none}.hero{min-height:730px;display:grid;grid-template-columns:48% 52%;position:relative;overflow:hidden}.hero-copy{padding:125px 7vw 80px 8vw;position:relative;z-index:2}.eyebrow,.section-label{font-size:10px;letter-spacing:.28em;font-weight:600;margin:0 0 30px}.hero h1,.promise h2,.section-head h2,.room h2,.reservation h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;line-height:.98;letter-spacing:-.045em;margin:0}.hero h1{font-size:clamp(58px,6.2vw,98px)}.hero h1 em{color:var(--sage);font-weight:400}.lead{font-family:Georgia,serif;font-size:20px;line-height:1.55;max-width:540px;margin:36px 0;color:#3d504a}.hero-actions{display:flex;align-items:center;gap:34px;margin-top:44px}.button{display:inline-flex;align-items:center;justify-content:center;border:0;padding:17px 26px;text-transform:uppercase;letter-spacing:.14em;font-size:10px;cursor:pointer}.button.dark{background:var(--ink);color:white}.text-link{font-size:12px;border-bottom:1px solid var(--line);padding:10px 0}.hero-image{margin:0;position:relative;clip-path:ellipse(88% 75% at 100% 50%)}.hero-image figcaption{position:absolute;right:6vw;bottom:45px;background:rgba(246,243,235,.92);backdrop-filter:blur(8px);padding:18px 24px;display:grid}.hero-image figcaption b{font-family:Georgia,serif;font-size:24px;font-weight:400}.hero-image figcaption span{font-size:10px;letter-spacing:.1em}.vertical-note{position:absolute;right:18px;top:180px;writing-mode:vertical-rl;color:white;font-size:9px;letter-spacing:.28em;z-index:3}.promise{padding:120px 8vw;background:var(--mist)}.promise>h2{font-size:clamp(43px,5vw,74px);max-width:1000px}.promise-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:5vw;margin-top:90px}.promise article{border-top:1px solid var(--line);padding-top:24px}.promise article span{font-size:10px;letter-spacing:.2em}.promise h3{font-family:Georgia,serif;font-size:27px;font-weight:400;margin:26px 0 12px}.promise article p{color:#50615c;max-width:350px}.therapies{padding:125px 7vw}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:65px}.section-head h2,.room h2,.reservation h2{font-size:clamp(45px,5vw,72px);max-width:760px}.section-head>p{max-width:300px;color:#64716d}.therapy-layout{display:grid;grid-template-columns:1fr .9fr;gap:7vw;align-items:stretch}.therapy-list{border-top:1px solid var(--line)}.therapy{width:100%;display:flex;align-items:center;justify-content:space-between;text-align:left;background:none;border:0;border-bottom:1px solid var(--line);padding:24px 5px;color:var(--ink);cursor:pointer;transition:.25s}.therapy:hover,.therapy.active{padding-left:20px;background:var(--mist)}.therapy span{display:grid}.therapy b{font-family:Georgia,serif;font-size:24px;font-weight:400}.therapy small{color:#75827d}.therapy strong{font-size:11px;letter-spacing:.12em;font-weight:500}.therapy-visual{margin:0;min-height:600px;position:relative;overflow:hidden;border-radius:48% 48% 4px 4px}.therapy-visual img{transition:opacity .25s,transform .6s}.therapy-visual:hover img{transform:scale(1.02)}.therapy-visual>div{position:absolute;left:0;right:0;bottom:0;background:rgba(12,40,35,.9);color:white;padding:20px 28px;display:flex;justify-content:space-between;font-size:11px;letter-spacing:.08em}.room{display:grid;grid-template-columns:1.05fr .95fr;min-height:760px;background:var(--deep);color:white}.room-image{min-height:760px}.room-copy{padding:110px 8vw}.room-copy .section-label{color:#bdcab8}.room-copy p{color:#d5ded8;max-width:570px;font-family:Georgia,serif;font-size:19px}.room-copy ul{list-style:none;padding:0;margin:48px 0 26px;border-top:1px solid rgba(255,255,255,.2)}.room-copy li{padding:14px 0;border-bottom:1px solid rgba(255,255,255,.2);font-size:12px;letter-spacing:.08em}.room-copy small{color:#91a29b}.quote{padding:130px 16vw;text-align:center;background:#c6b293;color:#18352e}.quote-mark{font-family:Georgia,serif;font-size:100px;line-height:.4}.quote blockquote{font-family:Georgia,serif;font-size:clamp(34px,4vw,58px);line-height:1.15;margin:38px auto;max-width:1000px}.quote p{font-size:9px;letter-spacing:.3em}.reservation{display:grid;grid-template-columns:.85fr 1.15fr;gap:10vw;padding:130px 8vw}.reservation>div>p:not(.section-label){max-width:430px;color:#5f6f69;margin-top:32px}.reservation form{display:grid;grid-template-columns:1fr 1fr;gap:24px}.reservation label{display:grid;gap:8px;font-size:10px;letter-spacing:.14em;text-transform:uppercase}.reservation input,.reservation select{border:0;border-bottom:1px solid var(--line);background:transparent;padding:13px 2px;color:var(--ink);outline:none;border-radius:0}.reservation input:focus,.reservation select:focus{border-color:var(--ink)}.reservation button{grid-column:1/3;margin-top:18px;min-height:58px}.form-note{grid-column:1/3;text-align:center;font-size:10px;color:#77837f}footer{background:#081d19;color:#dbe3de;padding:70px 7vw 30px;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:5vw}.inverse{color:white}footer>div{display:flex;flex-direction:column;align-items:start;font-size:13px}footer>div p{font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:#82918c;margin:0 0 14px}.copyright{grid-column:1/5;border-top:1px solid rgba(255,255,255,.12);padding-top:24px;margin-top:30px;color:#6e7f79}.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s,transform .7s}.reveal.visible{opacity:1;transform:none}@media(max-width:900px){.site-header{height:72px;grid-template-columns:1fr auto}.site-header nav,.header-cta{display:none}.menu-toggle{display:grid;gap:6px;background:none;border:0}.menu-toggle i{display:block;width:26px;height:1px;background:var(--ink)}.site-header.open nav{display:flex;position:absolute;top:72px;left:0;right:0;background:var(--milk);padding:35px;flex-direction:column;align-items:center;border-bottom:1px solid var(--line)}.hero{grid-template-columns:1fr;min-height:auto}.hero-copy{padding:85px 7vw 55px}.hero h1{font-size:58px}.hero-image{height:540px;clip-path:ellipse(95% 72% at 65% 55%)}.vertical-note{display:none}.promise,.therapies{padding:85px 7vw}.promise-grid{grid-template-columns:1fr;margin-top:55px}.section-head{display:block}.section-head>p{margin-top:24px}.therapy-layout{grid-template-columns:1fr}.therapy-visual{min-height:500px}.room{grid-template-columns:1fr}.room-image{min-height:520px}.room-copy{padding:80px 8vw}.reservation{grid-template-columns:1fr}.reservation form{margin-top:30px}footer{grid-template-columns:1fr 1fr}.copyright{grid-column:1/3}}@media(max-width:560px){.announcement{font-size:8px;gap:8px}.brand strong{font-size:18px}.hero-copy{padding-top:65px}.hero h1{font-size:48px}.lead{font-size:18px}.hero-actions{align-items:start;flex-direction:column;gap:18px}.hero-image{height:420px}.promise>h2,.section-head h2,.room h2,.reservation h2{font-size:42px}.therapy b{font-size:20px}.therapy-visual{min-height:410px}.room-image{min-height:420px}.quote{padding:95px 8vw}.reservation form{grid-template-columns:1fr}.reservation label,.reservation button,.form-note{grid-column:1}.site-header{padding:0 6vw}footer{grid-template-columns:1fr}.copyright{grid-column:1}.section-head{margin-bottom:40px}}
