:root{--ink:#383c32;--cream:#f8f5ee;--gold:#927250;--line:#ded9cc}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--cream);font:15px/1.7 Arial,sans-serif}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}button,a{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #aa7540;outline-offset:5px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Georgia,serif;font-weight:400;line-height:1.12}h1{font-size:clamp(48px,6vw,90px);letter-spacing:-3px;margin-bottom:28px}h2{font-size:clamp(34px,4vw,52px);letter-spacing:-1.5px;margin-bottom:25px}h3{font-size:29px}p{margin-bottom:24px}.top{background:#414638;color:#fff;text-align:center;font-size:10px;letter-spacing:2px;padding:9px}.top a{margin-left:35px}header{padding:25px 5%;display:flex;align-items:center;justify-content:space-between;background:var(--cream);gap:24px}.brand{font:28px Georgia;letter-spacing:4px;white-space:nowrap}.brand i{font-style:normal;color:var(--gold)}.brand small{display:block;font:8px Arial;letter-spacing:3px;margin-top:8px}nav{display:flex;align-items:center;gap:25px;font-size:12px}nav .button{margin-left:8px}.button{display:inline-flex;justify-content:space-between;gap:32px;background:#414638;color:white;padding:16px 24px;font-size:12px;letter-spacing:.5px;align-items:center}.button:hover{background:#697058;text-decoration:none}.menu{display:none}.eyebrow{font-size:10px;letter-spacing:2.5px;font-weight:600;color:var(--gold);margin-bottom:23px}.hero{margin:0 24px;min-height:650px;padding:95px 7%;position:relative;display:flex;align-items:center;background:linear-gradient(90deg,rgba(22,28,20,.76),rgba(22,28,20,.1)),url('spa.jpg') center/cover;color:#fff}.hero .eyebrow{color:#e8d2ab}.hero h1{font-size:clamp(54px,6.7vw,96px)}.hero p{color:#eee9df;font-size:16px}.hero .button{background:#eee5d4;color:#323c2b}.hero-note{position:absolute;right:28px;bottom:30px;font-size:9px;letter-spacing:3px}.actions{display:flex;align-items:center;gap:30px;margin-top:35px}.lightlink{font-size:12px;border-bottom:1px solid #c2c7b7;padding-bottom:6px}.ribbon{display:flex;justify-content:space-evenly;padding:29px 4%;border-bottom:1px solid var(--line);font-size:10px;letter-spacing:2px;text-transform:uppercase}section:not(.hero):not(.intro){padding:88px 8%}.sectionhead{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:40px}.textlink{font-size:12px;border-bottom:1px solid var(--gold);padding-bottom:8px}.services{display:grid;grid-template-columns:repeat(4,1fr);gap:32px}.service{border-top:1px solid #afa78f;padding-top:26px}.service .num{color:#9a927d;font:italic 17px Georgia}.service h3{margin:35px 0 20px}.service p{font-size:13px;color:#747668;min-height:100px}.split{display:grid;grid-template-columns:1.1fr 1fr;gap:8%;align-items:center;background:#eeeee4}.split img{width:100%;height:480px;object-fit:cover}.split p{max-width:390px}.holiday{text-align:center;background:#e7decf}.holiday p:not(.eyebrow){color:#666454}.giftstrip{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center}.giftvisual{aspect-ratio:1.6;background:#424a39;color:#e9ddc5;padding:10%;box-shadow:15px 20px 0 #e8e2d6;display:flex;flex-direction:column;justify-content:space-between;transform:rotate(-3deg)}.giftvisual span{letter-spacing:5px;font-size:13px}.giftvisual em{font:italic 38px Georgia;padding:24px 0}.giftvisual small{font-size:8px;letter-spacing:4px}.intro{text-align:center;padding:90px 8% 70px;background:#eeeade}.intro p:last-child{max-width:600px;margin:0 auto;color:#747565}.intro h1{font-size:70px}.packages{display:grid;grid-template-columns:1fr 1fr;gap:28px}.packages article{border:1px solid var(--line);padding:40px;background:#fffdf8}.packages h3{max-width:360px}.price{font:42px Georgia;color:var(--gold);margin:25px 0}.muted,.fine{color:#78796b;font-size:13px}.rate{margin-top:75px;display:grid;grid-template-columns:1fr 1fr;gap:10%;background:#eeeade;padding:45px}.ratelist p{display:flex;justify-content:space-between;border-bottom:1px solid #d3d0c4;padding-bottom:16px}.ratelist small{font-size:11px}del{font-weight:400;color:#949589;font-size:13px}.notice{padding:25px;background:#ebece2;margin:30px 0;font-size:13px}.contactgrid{display:grid;grid-template-columns:1fr 1fr;gap:15%}.contactgrid h3{margin-top:28px}.policy{background:#eeeee4}details{border-bottom:1px solid #d2d5c9;padding:22px 0}summary{cursor:pointer;font-size:16px}details p{max-width:760px;margin:22px 0 0;color:#6c7162}.membership{text-align:center;max-width:850px;margin:auto}.membership hr{border:0;border-top:1px solid var(--line);margin:50px 0}footer{background:#343c2f;color:#e9e6dd;padding:65px 8%;font-size:13px}footer .brand{color:#f6f0e5}footer p{margin-top:24px}footer small{color:#b7bbaa}.skip{position:absolute;top:-100px}.skip:focus{top:10px;z-index:100;background:#fff;padding:15px}@media(min-width:1600px){body{max-width:1800px;margin:auto}}@media(max-width:1000px){nav{gap:14px;font-size:10px}.brand{font-size:23px}.services{grid-template-columns:1fr 1fr}.service p{min-height:65px}.hero{min-height:590px}.split img{height:400px}}@media(max-width:760px){header{padding:20px 6%;flex-wrap:wrap}.top{font-size:8px;letter-spacing:1px}.top a{margin-left:12px}.menu{display:block;background:none;border:1px solid #c6c6b7;padding:7px 12px;font-size:20px;color:var(--ink)}nav{display:none;width:100%;flex-direction:column;align-items:stretch;gap:0;font-size:14px}nav.open{display:flex}nav>a{padding:13px 0}nav .button{margin:10px 0 0;padding:15px 20px}.hero{margin:0 10px;padding:65px 7%;min-height:570px;background-position:58% center}.hero h1{letter-spacing:-2px}.hero p{font-size:14px}.actions{align-items:flex-start;flex-direction:column;gap:22px}.hero-note{font-size:7px}.ribbon{display:grid;grid-template-columns:1fr 1fr;gap:15px;text-align:center;font-size:8px;letter-spacing:1px}section:not(.hero):not(.intro){padding:58px 7%}.sectionhead{align-items:flex-start;flex-direction:column}.services{gap:30px 20px}.service h3{font-size:26px;margin-top:20px}.service p{min-height:0}.split,.giftstrip,.rate,.contactgrid{grid-template-columns:1fr;gap:35px}.split img{height:340px}.giftvisual{margin:10px 0 20px}.intro{padding:65px 7%}.intro h1{font-size:49px;letter-spacing:-2px}.packages{grid-template-columns:1fr}.packages article{padding:28px}.rate{padding:25px}.giftvisual em{font-size:36px}footer{padding:50px 7%}.contactgrid a{overflow-wrap:anywhere}}

.brand-logo{display:inline-flex;align-items:center;gap:13px}.brand-logo img{width:55px;height:55px;object-fit:contain;mix-blend-mode:multiply}.hero h1{font-size:clamp(48px,5.6vw,80px);max-width:850px;line-height:1.13}footer .brand-logo img{mix-blend-mode:normal;border-radius:50%;width:48px;height:48px}@media(max-width:1000px){header{padding-left:3%;padding-right:3%}header .brand-logo{gap:8px}header .brand-logo img{width:43px;height:43px}nav{gap:12px}}@media(max-width:760px){header{padding:20px 6%}.hero h1{font-size:clamp(42px,9vw,62px);letter-spacing:-1.5px}.brand-logo img{width:45px;height:45px}}

.mapsection{background:#eeeee4}.mapsection .sectionhead p:last-child{margin-bottom:0}.storemap{display:block;width:100%;height:400px;border:0;border-radius:2px}.mapsection>.fine{margin:15px 0 0}@media(max-width:760px){.storemap{height:320px}.mapsection .sectionhead{gap:25px}}

.reviewgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.reviewcard{margin:0;padding:32px;background:#fffdf8;border:1px solid var(--line);display:flex;flex-direction:column}.reviewstars{color:#ac7c2b;letter-spacing:4px;font-size:18px}.reviewtheme{color:var(--gold);text-transform:uppercase;font-size:9px;letter-spacing:2px;margin:24px 0 16px}.reviewcard blockquote{font:26px/1.4 Georgia,serif;margin:0 0 28px;flex:1}.reviewcard figcaption strong{display:block;font-size:13px}.reviewcard figcaption a{font-size:10px;color:#777b6c}.guestlove>.fine{margin:20px 0 0}@media(max-width:760px){.reviewgrid{grid-template-columns:1fr}.reviewcard{padding:26px}}

header .brand-logo img{mix-blend-mode:normal}header .brand-logo{letter-spacing:2px}header .brand-logo small{font-size:8px;letter-spacing:1px}.footer-wordmark{display:block;max-width:650px}.footer-wordmark img{display:block;width:100%;height:auto}@media(max-width:760px){header .brand-logo small{font-size:7px;letter-spacing:.5px}.footer-wordmark{max-width:100%}}

.privacy-layout{display:grid;grid-template-columns:1fr 1.65fr;gap:8%;align-items:start}.privacy-layout h1{font-size:clamp(43px,4.5vw,66px);letter-spacing:-2px}.privacy-contact{background:#7b6040;color:#fff8eb;padding:32px;margin-top:50px}.privacy-contact h3{font-size:26px}.privacy-contact p{font-size:13px}.privacy-contact a{overflow-wrap:anywhere;text-decoration:underline}.privacy-copy article{border-bottom:1px solid var(--line);padding-bottom:28px;margin-bottom:32px}.privacy-copy h2{font-size:30px;letter-spacing:-.5px;line-height:1.3}.privacy-copy p,.privacy-copy li{color:#6b6e61}.privacy-copy ul{padding-left:23px;margin-bottom:24px}.wellness-note{background:#ebe8db;padding:25px}.wellness-note p{margin:0;font-size:13px}@media(max-width:760px){.privacy-layout{grid-template-columns:1fr;gap:40px}.privacy-contact{margin-top:25px}.privacy-copy h2{font-size:27px}}

.why-us{display:grid;grid-template-columns:1fr 1fr;gap:9%;background:#eeeade;align-items:start}.why-photos{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:35px}.why-photos img{width:100%;height:340px;object-fit:cover}.why-photos img:first-child{margin-top:45px;object-position:38% center}.why-copy article{display:flex;align-items:center;gap:25px;border-bottom:1px solid #c8c3b4;padding:27px 0}.why-copy article:first-child{padding-top:0}.why-copy article>span{font:italic 16px Georgia;color:var(--gold)}.why-copy article h3{font-size:27px;line-height:1.3;margin:0}.why-philosophy{padding-top:30px}.why-philosophy h3{color:var(--gold);font-size:29px}.why-philosophy p{font-size:14px;margin-bottom:15px}.why-copy>.fine{margin:25px 0 0;font-size:10px;letter-spacing:1px}@media(max-width:760px){.why-us{grid-template-columns:1fr;gap:45px}.why-photos img{height:260px}.why-photos img:first-child{margin-top:25px}.why-copy article h3{font-size:25px}}

.why-gallery{gap:14px}.why-gallery img,.why-gallery img:first-child{height:245px;margin-top:0;object-fit:cover;object-position:center;border-radius:12px}.why-gallery img:nth-child(3){object-position:center 35%}.why-gallery img:nth-child(4){object-position:center 60%}@media(max-width:760px){.why-gallery{gap:10px}.why-gallery img,.why-gallery img:first-child{height:220px}}@media(max-width:400px){.why-gallery img,.why-gallery img:first-child{height:185px}}

.service-detail{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.service-detail h2,.head-detail h2,.rate h2{font-size:clamp(46px,5vw,70px);letter-spacing:-2px;line-height:1.1}.service-lead{font:26px/1.4 Georgia,serif}.service-detail>img{width:100%;height:480px;object-fit:cover;object-position:center 35%;border-radius:10px}.treatment-list{padding-left:20px;margin:25px 0;line-height:2}.foot-detail{background:#eeeee4}.foot-steps article{border-bottom:1px solid var(--line);padding:18px 0}.foot-steps article>span{font:italic 14px Georgia;color:var(--gold)}.foot-steps h3{font-size:28px;margin:10px 0}.foot-steps p{font-size:13px;margin-bottom:12px}.foot-steps>.fine{margin-top:20px}#massage,#head-spa,#facials,#foot-reflexology{scroll-margin-top:25px}@media(max-width:760px){.service-detail{grid-template-columns:1fr;gap:35px}.service-detail>img{height:330px}.service-detail h2,.head-detail h2,.rate h2{font-size:46px}.service-lead{font-size:23px}}

.service-prices{margin:25px 0 30px;border-top:1px solid var(--line)}.service-prices>p{display:flex;justify-content:space-between;align-items:baseline;gap:18px;padding:17px 0;border-bottom:1px solid var(--line);margin:0}.service-prices strong{font-size:24px;white-space:nowrap;color:var(--ink)}.service-prices small{display:block;font-size:11px;color:#747668;margin-top:12px}.service-prices del{font-size:15px;margin-right:8px}@media(max-width:760px){.service-prices>p{font-size:13px}.service-prices strong{font-size:23px}}
header .brand-logo>span,header .brand-logo>span i{color:#cc9933}header .brand-logo>span small{color:var(--ink)}

.detailed-packages{align-items:stretch;gap:28px}.packages .holiday-card{padding:35px;display:flex;flex-direction:column}.package-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;gap:20px}.duration-tag{background:#414638;color:#fff8e9;padding:13px 18px;font-size:25px;font-weight:600;letter-spacing:1px;line-height:1.2}.duration-tag small{display:block;font-size:8px;letter-spacing:2px;font-weight:400;margin-top:7px}.holiday-price{font:48px Georgia,serif;color:var(--gold)}.holiday-card h3{font-size:34px;max-width:none;min-height:77px;margin-bottom:26px}.package-label{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;margin:0 0 15px}.package-steps{list-style:none;padding:0;margin:0}.package-steps li{display:flex;gap:20px;padding:16px 0;border-top:1px solid var(--line);align-items:flex-start}.package-steps li>strong{font-size:21px;white-space:nowrap;color:var(--gold);min-width:77px}.package-steps b{display:block;font-size:17px}.package-steps small{display:block;font-size:12px;color:#747668;margin-top:4px}.holiday-card .hotstone-included{font-size:13px;padding:15px 0;margin-bottom:15px;color:#575f48}.upgrade-box{background:#eeeade;border:1px solid #ddd2bd;padding:24px;margin:0 0 28px}.upgrade-box h4{font:25px/1.35 Georgia,serif;margin:0 0 9px}.upgrade-box h4 em{font-style:normal;color:#956f32;font-weight:bold}.upgrade-box .upgrade-note{font-size:11px;color:#6e705f;margin-bottom:20px}.upgrade-options{padding:0;list-style:none;margin:0}.upgrade-options li{display:flex;gap:12px;padding:13px 0;border-top:1px solid #d7d0bf}.upgrade-options li>span{color:#a17b3f;font-size:21px;line-height:1.2}.upgrade-options strong{font-size:14px;display:block}.upgrade-options small{display:block;font-size:12px;color:#747668;margin-top:4px;line-height:1.5}.holiday-card>.button{margin-top:auto;align-self:flex-start}@media(max-width:760px){.packages .holiday-card{padding:25px}.holiday-card h3{font-size:32px;min-height:0}.duration-tag{font-size:23px;padding:12px 15px}.holiday-price{font-size:44px}.upgrade-box{padding:20px}.upgrade-box h4{font-size:24px}.package-steps li{gap:12px}.package-steps li>strong{min-width:70px;font-size:20px}}

.policy summary{font-size:23px;font-weight:600;padding:5px 0}.policy-body{max-width:850px;padding:8px 0 4px}.policy-body ul{padding-left:22px;margin:22px 0}.policy-body li{color:#666e5d;padding:8px 0;line-height:1.8}.policy-body strong{color:#3e4636}.policy-body .policy-highlight{background:#e2e3d5;border-left:3px solid #a1814a;padding:18px 22px;font-size:16px;color:#414638;max-width:none}.policy-body a{text-decoration:underline}.policy-body p{max-width:none;font-size:14px}@media(max-width:760px){.policy summary{font-size:21px}.policy-body li{font-size:14px}.policy-body .policy-highlight{font-size:15px;padding:16px}}

.gift-envelope{margin:0}.gift-envelope img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:8px;box-shadow:0 14px 35px #30382a15}.gift-envelope figcaption{font-size:11px;color:#747668;margin-top:14px;text-align:center}.giftstrip:has(.gift-envelope){gap:7%}

.stone-badge{display:inline-block;background:#e3dcc7;border:1px solid #c9b88e;color:#5b4d31;padding:12px 20px;font-size:16px;font-weight:600;letter-spacing:.3px;margin:0 0 25px}
