@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap');:root{--ink:#252f2a;--green:#334f42;--sage:#82958a;--cream:#f7f5ef;--sand:#e9e4da;--white:#fff;--line:#dddcd5}*{box-sizing:border-box}body{margin:0;background:#fff;color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:15px;line-height:1.65}a{color:inherit;text-decoration:none}a:hover{color:#a07451}img{max-width:100%;display:block}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:500;line-height:1.13}h1{font-size:clamp(3.1rem,6vw,6.25rem);letter-spacing:-.05em}h2{font-size:clamp(2rem,3.8vw,3.7rem);letter-spacing:-.035em}h3{font-size:1.45rem}.announcement{text-align:center;background:#344e42;color:#fff;padding:8px 12px;font-size:11px;letter-spacing:.12em;text-transform:uppercase}.announcement span{color:#cfb99e;margin:0 14px}.header{display:flex;align-items:center;justify-content:space-between;padding:20px 5vw;gap:20px;border-bottom:1px solid #eee;background:white;position:sticky;top:0;z-index:5}.brand{display:flex;flex-direction:column;line-height:1.1}.brand-main{font-family:Georgia,serif;letter-spacing:.16em;font-size:22px}.brand-main em{font-size:19px;font-style:normal;color:#a3afa4}.brand-sub{font-size:8px;letter-spacing:.27em;margin-top:8px;color:#7e8a7d}.nav{display:flex;align-items:center;gap:26px}.nav>a{font-size:12px;letter-spacing:.02em}.nav>a.active{color:#a27c5a}.nav .nav-cta,.btn{display:inline-flex;align-items:center;justify-content:center;background:var(--green);color:white;padding:15px 23px;border:1px solid var(--green);font-size:12px;font-weight:700;letter-spacing:.04em;transition:.2s}.btn:hover,.nav-cta:hover{background:#5b7767!important;color:white!important}.hamburger{display:none;background:none;border:0;font-size:25px}.hero{background:#efede7}.hero-inner{min-height:660px;display:grid;grid-template-columns:1fr 1.03fr;position:relative;max-width:1600px;margin:auto}.hero-copy{padding:90px 3vw 105px max(6vw,40px);display:flex;align-items:flex-start;flex-direction:column;justify-content:center}.hero-copy h1{margin:16px 0 22px}.hero-copy h1 i{color:#678275;font-weight:400}.hero-copy>p:not(.eyebrow){max-width:450px;color:#64736a;font-size:16px}.hero-photo{background:url('spa-hero.webp') center/cover}.hero-seal{position:absolute;bottom:25px;left:53%;background:rgba(255,255,255,.93);padding:22px;border-radius:50%;width:125px;height:125px;text-align:center;display:flex;flex-direction:column;justify-content:center;font:12px Georgia,serif;letter-spacing:.14em;color:#344e42}.hero-seal span{font:8px Arial;letter-spacing:.14em;margin-top:7px}.eyebrow{letter-spacing:.22em;color:#8b9a8d;font-size:11px;font-weight:700;text-transform:uppercase}.hero-actions{display:flex;align-items:center;gap:24px;margin-top:22px}.text-link,.simple-link{font-size:12px;letter-spacing:.05em;font-weight:700;border-bottom:1px solid;padding-bottom:5px}.section{padding:90px 6vw;max-width:1600px;margin:auto}.intro{background:white}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:9vw;padding:90px 6vw;align-items:center}.intro h2{margin:10px 0}.intro h2 em{font-weight:400;color:#7f9c8e}.intro p{color:#64736a;font-size:17px}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:34px}.section-head h2{margin:8px 0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.service-card{background:#f5f4ef;padding:38px 30px;min-height:258px;display:flex;align-items:flex-start;flex-direction:column;transition:.2s}.service-card:hover{background:#e9eee7;transform:translateY(-3px)}.service-art{font-family:Georgia,serif;color:#9cafa1;font-size:31px}.service-card small{letter-spacing:.1em;color:#7e8c80;font-size:11px;text-transform:uppercase;margin-top:18px}.service-card h3{margin:4px 0 15px}.arrow{font-size:11px;margin-top:auto;letter-spacing:.08em}.split-feature{display:grid;grid-template-columns:1fr 1fr;min-height:480px;background:#e9eee8}.feature-img{background:url('massage.webp') center/cover}.feature-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:70px 9vw 70px 7vw}.feature-copy h2{margin:10px 0}.feature-copy p:not(.eyebrow){max-width:500px;color:#56685a}.feature-copy .btn{margin-top:15px}.center{text-align:center}.center .narrow{max-width:590px;margin:0 auto 30px;color:#64736a}.page-hero{text-align:center;padding:100px 20px;background:#f0f2ed}.page-hero h1{font-size:clamp(2.8rem,5.5vw,5.2rem);margin:14px 0 17px}.page-hero>p:last-child{max-width:700px;margin:0 auto;color:#64736a}.slim{max-width:880px}.accordion{border-top:1px solid #d5dcd4}.accordion details{border-bottom:1px solid #d5dcd4;padding:10px 0}.accordion summary{cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;font-family:Georgia,serif;font-size:20px;padding:17px 5px;list-style:none}.accordion summary span{font-family:Arial;font-size:24px;color:#7b987d}.accordion details p{color:#65736a;margin:0;padding:0 36px 21px 5px}.help-cta{margin-top:35px}.help-cta a{font-weight:700;text-decoration:underline}.treatment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.treat{border:1px solid #e2e6df;padding:25px;min-height:145px;background:#fff}.treat h3{font-size:22px}.treat a{font-size:12px;color:#567661;font-weight:700}.treat p{color:#68786e}.treat-dot{display:block;width:27px;height:3px;background:#a5b2a2}.bottom-cta{background:#344e42;color:white;padding:65px 7vw;display:flex;align-items:center;justify-content:space-between;gap:30px}.bottom-cta h2{margin:5px 0;font-size:clamp(2rem,3.2vw,3rem)}.bottom-cta p{color:#cdd8d1}.bottom-cta .light{background:#f6f5ef;color:#344e42;border-color:#f6f5ef}footer{background:#21362c;color:#e7ede7;padding:60px 6vw 18px}.foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr 2fr;gap:30px}.foot-grid>div{display:flex;flex-direction:column;align-items:start}.foot-grid p{font-size:12px;line-height:1.8;color:#b1c2b7}.foot-grid a{font-size:12px;margin-bottom:10px;color:#d9e5db}.foot-grid h4{font:17px Georgia;margin:0 0 20px}.foot-brand{font:24px Georgia;letter-spacing:.12em}.foot-bottom{font-size:11px;color:#b1c2b7;border-top:1px solid #4b6355;margin-top:40px;padding-top:22px;display:flex;justify-content:space-between;gap:15px}.contact-grid h2{margin-top:0}.contact-panel{background:#eef1ea;padding:45px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.gallery img{height:330px;width:100%;object-fit:cover}.small-note{font-size:12px;color:#778579;margin-top:22px}@media(max-width:1000px){.nav{gap:13px}.nav>a{font-size:11px}.brand-main{font-size:17px}.hero-inner{min-height:550px}.hero-copy{padding:60px 5vw}.foot-grid{grid-template-columns:1fr 1fr}}@media(max-width:760px){.header{padding:16px 5vw}.hamburger{display:block}.nav{display:none;position:absolute;left:0;right:0;top:100%;background:white;padding:22px 6vw;flex-direction:column;align-items:stretch;box-shadow:0 15px 20px #0001}.menu-open .nav{display:flex}.hero-inner{display:flex;flex-direction:column}.hero-copy{padding:60px 7vw}.hero-photo{min-height:360px}.hero-seal{left:auto;right:6vw;bottom:22px;width:90px;height:90px;font-size:10px}.two-col,.split-feature{grid-template-columns:1fr}.intro,.section{padding:65px 7vw}.cards,.treatment-grid{grid-template-columns:1fr 1fr}.feature-img{min-height:350px}.feature-copy{padding:55px 7vw}.bottom-cta{flex-direction:column;align-items:flex-start}.gallery{grid-template-columns:1fr 1fr}.gallery img{height:250px}}@media(max-width:520px){.cards,.treatment-grid,.gallery,.foot-grid{grid-template-columns:1fr}.section-head{align-items:flex-start;flex-direction:column}.hero-actions{flex-wrap:wrap}.foot-bottom{flex-direction:column}.service-card{min-height:210px}.gallery img{height:260px}}