:root{--cream:#f5efe6;--ink:#41404b;--coral:#e7506b;--muted:#6d6970;--rule:#c9c1b9;--serif:'Cormorant Garamond',Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:var(--cream);font:14px/1.7 'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--coral);outline-offset:5px}button{font:inherit}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.04}em{font-weight:400}h1{font-size:clamp(55px,5.7vw,91px);letter-spacing:-2.6px}h2{font-size:clamp(44px,4.3vw,66px);letter-spacing:-1.4px}h3{font-size:35px}p{color:var(--muted)}.skip{position:fixed;top:-80px;background:var(--ink);color:white;padding:10px;z-index:20}.skip:focus{top:0}.topline{text-align:center;letter-spacing:2px;font-size:9px;padding:9px;background:#eae3d9}header{max-width:1440px;margin:auto;padding:24px 5.5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--rule)}.brand{display:inline-flex;flex-direction:column;align-items:center;line-height:1.15}.brand>span{font-family:var(--serif);font-size:35px;font-weight:600;letter-spacing:6px;padding-left:6px}.brand small{font-size:9px;letter-spacing:3px;margin-top:4px}nav{display:flex;gap:38px;font-size:12px}nav a:hover,.text-link:hover{color:var(--coral)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;background:var(--ink);color:var(--cream);padding:17px 24px;font-size:12px;transition:background .2s}.button:hover{background:#625365}.button.small{padding:12px 19px}.hero{max-width:1440px;margin:auto;display:grid;grid-template-columns:1.04fr 1fr;padding:45px 5.5% 55px;gap:5%;align-items:center}.hero-copy{padding:36px 0}.eyebrow{font-size:9px;font-weight:500;letter-spacing:2px;color:var(--ink);margin-bottom:22px}.hero .eyebrow{font-size:8px;display:flex;gap:12px;align-items:center}.line{height:1px;width:28px;background:var(--coral)}h1 em{color:var(--coral)}.intro{max-width:345px;font-size:13px;line-height:1.9;margin-top:26px}.hero-actions{display:flex;align-items:center;gap:24px;margin:30px 0 40px}.text-link{font-size:12px;border-bottom:1px solid;padding-bottom:4px}.location{font-size:10px;letter-spacing:.3px}.hero-photo{height:540px;position:relative;background:#e9d9d2;overflow:hidden;border-radius:48% 48% 0 0}.hero-photo img{height:100%;width:100%;object-fit:cover;object-position:center}.hero-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 65%,#f5efe633);pointer-events:none}.hero-photo figcaption{position:absolute;bottom:15px;left:25px;color:#fff;z-index:2;font-size:7px;letter-spacing:2px}.photo-label{position:absolute;bottom:55px;right:30px;color:white;z-index:2;font-family:var(--serif);font-size:52px;line-height:.95;text-align:right}.service-strip{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:20px 6%;display:flex;align-items:center;justify-content:space-around;gap:20px;font-size:10px;letter-spacing:2px}.service-strip i{font-size:21px;font-style:normal;color:var(--coral)}.section{max-width:1440px;margin:auto;padding:90px 7%}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:45px;gap:30px}.section-heading>p{max-width:255px;font-size:12px;margin-bottom:4px}.menu-layout{display:grid;grid-template-columns:230px 1fr;gap:6%;border-top:1px solid var(--rule);padding-top:32px}.tabs{display:flex;flex-direction:column}.tabs a{border:0;border-bottom:1px solid var(--rule);padding:18px 0;background:none;color:var(--muted);display:flex;justify-content:space-between;text-align:left;font-size:12px;cursor:pointer}.tabs a[aria-selected=true]{color:var(--coral)}.tabs a span{font-size:16px}.menu-panel h3{font-size:34px;margin:10px 0 18px}.price-row{display:flex;align-items:baseline;gap:16px;padding:12px 0;border-bottom:1px solid #dcd5cd;font-size:13px}.price-row .dots{flex:1;border-bottom:1px dotted #b2a9a3}.price-row strong{white-space:nowrap;font-weight:500}.panel-note{font-size:11px;margin-top:20px}.menu-note{font-size:10px;display:flex;justify-content:space-between;gap:20px;margin:30px 0 0}.menu-note a{text-decoration:underline}.spa-section{background:#ece4da;max-width:none}.spa-intro{text-align:center;max-width:580px;margin:auto}.spa-intro>p:last-child{font-size:12px;margin:23px auto 0;max-width:355px}.spa-options{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;max-width:1180px;margin:45px auto 0}.spa-options article{padding:26px;border:1px solid #c6bbb0}.spa-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.spa-top>span{font-size:8px;letter-spacing:1.5px}.spa-top strong{font-family:var(--serif);font-size:52px;font-weight:400;line-height:1}.spa-top sup{font-size:22px}.spa-options h3{font-size:43px}.spa-options article>p{font-size:10px;min-height:42px;margin:24px 0}.spa-foot{border-top:1px solid #c6bbb0;padding-top:18px;font-size:11px}.spa-foot span{display:block;font-size:10px;color:var(--muted);margin-top:3px}.spa-extra{text-align:center;font-size:11px;margin-top:28px}.visit-section{display:grid;grid-template-columns:1fr 1fr;gap:12%}.visit-section>div>p:not(.eyebrow){font-size:12px;margin:25px 0}.visit-details{border-left:1px solid var(--rule);padding-left:17%}.visit-details>div+div{margin-top:38px;border-top:1px solid var(--rule);padding-top:28px}.visit-details .eyebrow{display:block;margin-bottom:12px}.visit-details h3{font-size:30px}.visit-details p{font-size:12px;margin:12px 0 20px}.phone{font-family:var(--serif);font-size:32px;display:block;line-height:1.1}footer{border-top:1px solid var(--rule);padding:30px 5.5%;display:flex;align-items:center;justify-content:space-between;gap:25px}footer .brand>span{font-size:26px}footer .brand small{font-size:7px}footer p{font-family:var(--serif);font-style:italic;font-size:22px}footer>span{font-size:9px;letter-spacing:1px}.mobile-book{display:none}@media(min-width:1440px){.spa-section{padding-left:calc((100% - 1240px)/2);padding-right:calc((100% - 1240px)/2)}}@media(max-width:900px){header{padding:22px 5%}nav{gap:20px}.hero{gap:25px}.hero-actions{flex-wrap:wrap;gap:18px}.hero-photo{height:460px}.service-strip{font-size:8px;letter-spacing:1px}.section{padding:65px 6%}.spa-options{gap:12px}.spa-options article{padding:18px}.spa-options h3{font-size:34px}.spa-top>span{font-size:7px}.menu-layout{grid-template-columns:180px 1fr;gap:30px}}@media(max-width:600px){html{scroll-padding-top:20px}.topline{font-size:7px;letter-spacing:1.2px}header{padding:18px 6%}header .brand>span{font-size:28px}header .brand small{font-size:7px}header nav{display:none}.button.small{font-size:10px;padding:11px 15px;gap:20px}.hero{display:flex;flex-direction:column;padding:30px 6% 35px;gap:10px}.hero-copy{padding:12px 0 20px;width:100%}h1{font-size:64px;letter-spacing:-2px}.hero .eyebrow{font-size:7px;letter-spacing:1.5px}.intro{font-size:12px;max-width:320px;margin-top:22px}.hero-actions{margin:25px 0}.hero-photo{height:370px;width:100%;border-radius:46% 46% 0 0}.photo-label{font-size:45px}.service-strip{display:grid;grid-template-columns:1fr 16px 1fr;gap:12px;text-align:center;padding:20px 4%;font-size:8px}.service-strip i:nth-of-type(2){display:none}.section{padding:55px 6%}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:22px;max-width:290px}.eyebrow{font-size:8px;letter-spacing:1.6px;margin-bottom:18px}h2{font-size:48px}.menu-layout{display:block;padding-top:15px}.tabs{flex-direction:row;flex-wrap:wrap;gap:0 18px;margin-bottom:25px}.tabs a{padding:10px 0;font-size:11px}.tabs a span{display:none}.tabs a[aria-selected=true]{border-bottom:2px solid var(--coral)}.menu-panel h3{font-size:30px}.price-row{font-size:12px}.menu-note{display:block;font-size:9px}.menu-note span{display:block;margin-top:8px}.spa-options{grid-template-columns:1fr;gap:18px;margin-top:30px}.spa-options article{padding:25px}.spa-top{margin-bottom:20px}.spa-top>span{font-size:8px}.spa-options h3{font-size:42px}.spa-options article>p{min-height:0;margin:20px 0}.visit-section{display:block}.visit-details{border-left:0;border-top:1px solid var(--rule);padding:30px 0 0;margin-top:35px}.visit-details>div+div{margin-top:25px;padding-top:25px}footer{padding:28px 6% 85px;flex-wrap:wrap}footer p{font-size:18px}footer>span{width:100%;font-size:8px}.mobile-book{display:block;position:fixed;bottom:0;left:0;right:0;text-align:center;background:var(--ink);color:var(--cream);padding:16px;font-size:12px;z-index:10}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.our-care{border-bottom:1px solid var(--rule)}.care-copy{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.care-copy p{font-size:13px;line-height:1.9}.care-copy p+p{margin-top:18px}@media(max-width:600px){.care-copy{display:block}.care-copy>div{margin-top:25px}.care-copy p{font-size:12px}}

.hero-photo .photo-label,.hero-photo figcaption{color:var(--ink)}

.business-hours table{width:100%;border-collapse:collapse;font-size:11px}.business-hours th,.business-hours td{padding:9px 0;border-bottom:1px solid var(--rule);font-weight:400}.business-hours th{text-align:left}.business-hours td{text-align:right;white-space:nowrap}.visit-details .hours-note{font-size:10px;margin-bottom:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

[hidden]{display:none!important}.tabs a{min-height:44px;align-items:center}.menu-panels .menu-panel:not([hidden])+.menu-panel:not([hidden]){margin-top:35px}.menu-panel{scroll-margin-top:30px}nav a{padding:10px 0}.tabs a[aria-selected="true"]{color:#ae344c}h1 em{color:#bb3d56}@media(max-width:600px){.tabs{column-gap:20px}.tabs a{display:flex;min-height:44px}.text-link{display:inline-block;padding:9px 0}.hero-actions{row-gap:14px}.mobile-book{padding-bottom:calc(16px + env(safe-area-inset-bottom))}footer{padding-bottom:calc(85px + env(safe-area-inset-bottom))}}

/* Compact spacing, keeping reading and touch targets comfortable. */
header{padding-top:18px;padding-bottom:18px}
.hero{padding-top:24px;padding-bottom:32px;gap:4%}
.hero-copy{padding:20px 0}.hero-photo{height:480px}
.hero .eyebrow{margin-bottom:18px}.intro{margin-top:20px}
.hero-actions{margin:24px 0 26px}.service-strip{padding-top:14px;padding-bottom:14px}
.section{padding-top:58px;padding-bottom:58px}.section-heading{margin-bottom:30px}
.eyebrow{margin-bottom:16px}.menu-layout{padding-top:20px}
.tabs a{padding-top:12px;padding-bottom:12px}.menu-note{margin-top:20px}
.spa-options{margin-top:30px;gap:20px}.spa-options article{padding:22px}
.spa-top{margin-bottom:22px}.spa-options article>p{margin:18px 0;min-height:34px}
.spa-extra{margin-top:20px}.spa-intro>p:last-child{margin-top:18px}
.visit-details>div+div{margin-top:24px;padding-top:22px}
.visit-section>div>p:not(.eyebrow){margin:20px 0}
footer{padding-top:22px;padding-bottom:22px}
@media(max-width:900px){.hero-photo{height:420px}.section{padding-top:48px;padding-bottom:48px}.spa-options{gap:12px}.spa-options article{padding:18px}}
@media(max-width:600px){
 header{padding-top:14px;padding-bottom:14px}.hero{padding-top:20px;padding-bottom:24px;gap:4px}
 .hero-copy{padding:0 0 14px}h1{font-size:56px}.hero-photo{height:315px}
 .hero-actions{margin:20px 0}.intro{margin-top:16px}.section{padding-top:38px;padding-bottom:38px}
 h2{font-size:43px}.section-heading{margin-bottom:20px}.section-heading>p{margin-top:16px}
 .care-copy>div{margin-top:18px}.care-copy p+p{margin-top:12px}
 .tabs{margin-bottom:18px}.menu-panel h3{margin-top:4px;margin-bottom:12px}
 .price-row{padding-top:10px;padding-bottom:10px}.spa-options{margin-top:24px;gap:14px}
 .spa-options article{padding:20px}.spa-options h3{font-size:36px}.spa-top{margin-bottom:16px}
 .spa-options article>p{min-height:0;margin:14px 0}.spa-foot{padding-top:14px}
 .visit-details{margin-top:24px;padding-top:24px}.visit-details>div+div{margin-top:22px;padding-top:20px}
 footer{padding-top:22px;padding-bottom:calc(78px + env(safe-area-inset-bottom))}
}
