﻿:root{--cream:#faf7f2;--olive:#526348;--ink:#293329;--rose:#efdfd9;--muted:#687064;--line:#dedfd5}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}header{min-height:100px;max-width:1440px;margin:auto;padding:20px 5%;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{font:26px Georgia,serif;white-space:nowrap}.brand span{display:block;font:9px Arial,sans-serif;letter-spacing:3.6px;margin-top:9px}nav{display:flex;gap:30px;font-size:13px}.button{display:inline-flex;gap:30px;align-items:center;justify-content:center;border:1px solid var(--olive);background:var(--olive);color:#fff;padding:17px 24px;border-radius:4px;font-size:14px;transition:background .2s}.button:hover{background:#3e5036}.button.small{font-size:12px;padding:12px 18px}button:focus-visible,a:focus-visible{outline:3px solid #ad6b53;outline-offset:4px}.hero{position:relative;max-width:1440px;margin:auto;display:grid;grid-template-columns:1fr 1.07fr;padding:30px 5% 70px;gap:6%;align-items:center}.eyebrow{font-size:10px;letter-spacing:2.4px;font-weight:600;color:var(--olive);margin:0 0 22px}h1,h2,h3,p,figure{margin-top:0}h1{font:clamp(48px,5.4vw,82px)/1.06 Georgia,serif;letter-spacing:-2.8px;margin-bottom:27px}em{font-weight:400;color:var(--olive)}.intro{max-width:390px;color:var(--muted);font-size:15px;margin-bottom:26px}.micro{font-size:11px;color:var(--muted);margin-top:12px}.hero-facts{display:flex;gap:22px;font-size:11px;margin-top:36px;padding-top:18px;border-top:1px solid var(--line)}.hero-facts span:before{content:'•';color:var(--olive);margin-right:7px}.hero-image{position:relative;margin:0;height:600px;border-radius:160px 160px 5px 5px;overflow:hidden;background:var(--rose)}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:49% center}.hero-image figcaption{position:absolute;bottom:23px;left:25px;right:25px;padding:16px 22px;background:#faf7f2ed;border-radius:4px}.hero-image figcaption span{font:23px Georgia,serif}.hero-image small{display:block;font-size:11px;color:var(--muted);margin-top:4px}.vertical-note{position:absolute;right:16px;writing-mode:vertical-rl;font-size:9px;letter-spacing:3px;color:var(--muted)}.ribbon{background:#e8ecdf;display:flex;justify-content:center;gap:65px;padding:24px;font:22px Georgia,serif}.ribbon i{font-style:normal;color:#8b9a7b}.section{max-width:1300px;margin:auto;padding:95px 5%}.section-top{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:40px}h2{font:clamp(34px,3.5vw,49px)/1.15 Georgia,serif;letter-spacing:-1px;margin-bottom:0}.section-top>p{max-width:330px;font-size:14px;color:var(--muted);margin-bottom:3px}.services{display:grid;grid-template-columns:1.1fr 1fr;gap:26px}.service{border:1px solid var(--line);border-radius:6px;overflow:hidden}.feature img{width:100%;height:230px;object-fit:cover}.feature>div{padding:30px}.service h3{font:32px/1.15 Georgia,serif;margin-bottom:17px}.service p:not(.eyebrow){font-size:14px;color:var(--muted)}.price{font:35px Georgia,serif;margin:25px 0 18px}.price span{font:11px Arial,sans-serif;color:var(--muted);margin-left:8px}.text-button{border:0;background:none;padding:0 0 5px;border-bottom:1px solid #a5ae9c;font-size:13px;color:var(--olive);display:inline-block}.secondary{padding:35px;background:#eee4de}.secondary ul{padding:0;list-style:none;margin:27px 0}.secondary li{padding:13px 0;border-bottom:1px solid #d8ccc4}.secondary strong{display:block;font-size:14px}.secondary li span{font-size:12px;color:var(--muted)}.professional{text-align:center;font-size:14px;font-weight:700;line-height:1.65;max-width:750px;margin:28px auto 0;color:var(--ink)}.space{display:grid;grid-template-columns:1fr 1fr;background:#e9eddf}.space-photo img{width:100%;height:100%;min-height:480px;object-fit:cover}.space-copy{padding:75px 12%;align-self:center}.space-copy h2{margin-bottom:25px}.space-copy>p:not(.eyebrow){font-size:14px;color:var(--muted)}.space-copy .button{margin-top:15px}.location{display:grid;grid-template-columns:1.15fr 1fr;gap:45px;align-items:center}.address{display:flex;gap:20px;border-left:1px solid var(--line);padding-left:38px}.pin{font-size:38px}.address h3{font:22px Georgia,serif;margin:5px 0 15px}.address p{font-size:14px;color:var(--muted)}.address .micro{font-size:11px}.closing{text-align:center;background:var(--rose);padding:65px 20px}.closing h2{margin-bottom:28px}.closing>p:last-child{font-size:12px;color:var(--muted);margin-top:16px}footer{padding:45px 5% 24px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px}footer p,footer>a{font-size:12px}footer small{flex-basis:100%;border-top:1px solid var(--line);padding-top:20px;margin-top:14px;color:var(--muted);font-size:10px}dialog{border:0;border-radius:12px;width:min(560px,calc(100% - 28px));padding:30px;color:var(--ink);background:var(--cream);max-height:90vh;overflow:auto}dialog::backdrop{background:#1f2a22b8;backdrop-filter:blur(4px)}.dialog-top{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:25px;font-size:9px;letter-spacing:1.8px;color:var(--olive)}.close{border:0;background:none;font-size:30px;color:var(--ink);padding:0 8px}.progress{font-size:11px;color:var(--muted);margin:0 0 10px}#quiz-title{font:31px/1.2 Georgia,serif;margin-bottom:24px}.options{display:grid;gap:10px}.option{background:#fff;border:1px solid var(--line);border-radius:5px;padding:16px;text-align:left;font-size:14px;color:var(--ink)}.option:hover{background:#e8ecdf;border-color:var(--olive)}.back{display:block;margin-top:22px;border:0;background:none;color:var(--muted);font-size:12px;padding:0}.summary{padding:18px;background:#e8ecdf;border-radius:5px;font-size:13px;margin-bottom:22px}.quiz-prices{font-size:14px;color:var(--muted)}.quiz-prices strong{color:var(--ink)}#quiz-content>.button{width:100%}
@media(min-width:1500px){.hero-image{height:650px}}@media(max-width:850px){header{gap:15px;padding:20px 6%;min-height:86px}header nav{display:none}.brand{font-size:22px}.brand span{font-size:8px;letter-spacing:2.5px}.hero{gap:30px;padding:25px 6% 45px}.hero-image{height:490px;border-radius:100px 100px 4px 4px}h1{font-size:55px}.intro{font-size:14px}.hero-facts{gap:12px;font-size:10px}.space-copy{padding:45px 9%}.section{padding:65px 6%}.service h3{font-size:28px}.ribbon{gap:30px;font-size:19px}.address{padding-left:20px}.location{gap:25px}.hero-image figcaption{left:12px;right:12px;padding:13px}.hero-image figcaption span{font-size:20px}}
@media(max-width:600px){header>.button{font-size:10px;padding:10px;max-width:120px;line-height:1.3;gap:0}.hero{grid-template-columns:1fr;padding-top:16px;gap:28px}.hero-copy{padding-top:12px}h1{font-size:58px;letter-spacing:-2px}.hero-image{height:400px;border-radius:110px 110px 4px 4px}.hero-image img{object-position:center 42%}.hero-facts{margin-top:24px}.vertical-note{display:none}.hero-copy>.button{width:100%;justify-content:space-between}.hero-copy>.micro{text-align:center}.ribbon{gap:15px;font-size:16px;padding:20px 8px}.ribbon i{font-size:12px}.section-top{display:block}.section-top>p{margin-top:23px;max-width:none}.services{grid-template-columns:1fr}.feature img{height:210px}.feature>div,.secondary{padding:26px}.space{grid-template-columns:1fr}.space-photo img{height:300px;min-height:0}.space-copy{padding:38px 7% 45px}.location{grid-template-columns:1fr}.address{border-left:0;padding:23px 0 0;border-top:1px solid var(--line)}footer .brand{flex-basis:100%}footer{padding:35px 6% 22px}dialog{padding:23px}.eyebrow{font-size:9px}h2{font-size:37px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.service-note{font-size:12px;color:var(--muted);margin:-15px 0 22px}.other-services{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:26px}.quote-service{padding:34px;border:1px solid var(--line);border-radius:6px;background:#f0f2e9;display:flex;align-items:flex-start;flex-direction:column}.quote-service.corporate{background:#f3ebe5}.quote-service h3{font:32px/1.15 Georgia,serif;margin-bottom:18px}.quote-service>p:not(.eyebrow){font-size:14px;color:var(--muted)}.quote-service .quote-label{font-size:18px!important;color:var(--ink)!important;font-family:Georgia,serif;margin:12px 0 5px}.quote-service .quote-detail{font-size:12px!important;margin-bottom:24px}.quote-service .text-button{margin-top:auto;text-align:left}@media(max-width:600px){.other-services{grid-template-columns:1fr}.quote-service{padding:26px}.quote-service h3{font-size:28px}}

.treatment-gallery{margin:45px 0 35px}.gallery-heading{margin-bottom:22px}.gallery-heading .eyebrow{margin-bottom:9px}.gallery-heading h3{font:32px/1.2 Georgia,serif;margin-bottom:0}.treatment-photos{display:grid;grid-template-columns:1fr 1fr;gap:26px}.treatment-photos figure{margin:0;background:#f0f2e9;border:1px solid var(--line);border-radius:6px;overflow:hidden}.treatment-photos img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 20%}.treatment-photos figcaption{padding:18px 22px;font:20px Georgia,serif}@media(max-width:600px){.treatment-photos{grid-template-columns:1fr;gap:20px}.gallery-heading h3{font-size:28px}.treatment-photos img{max-height:460px}.treatment-gallery{margin-top:35px}}

.training{margin:24px 0}.training>p{font-size:12px;font-weight:600;margin-bottom:12px}.training ul{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:0}.training li{font-size:11px;background:#faf7f2b8;padding:6px 10px;border:1px solid #cdd5c2;border-radius:3px}.personal-story{border-top:1px solid #cad2bf;border-bottom:1px solid #cad2bf;padding:14px 0;margin:24px 0}.personal-story summary{cursor:pointer;font-size:13px;color:var(--olive);font-weight:600}.personal-story summary:focus-visible{outline:3px solid #ad6b53;outline-offset:4px}.personal-story p{font-size:13px;color:var(--muted);margin:16px 0 0}.space-copy strong{color:var(--ink);font-weight:600}

.space{align-items:start}.space-photo{align-self:start;padding:60px 0 60px 8%;position:sticky;top:95px}.space-photo img{display:block;width:100%;height:auto;min-height:0;object-fit:contain;border-radius:6px}.treatment-photos{display:flex;gap:26px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding:0;scrollbar-width:thin;overscroll-behavior-x:contain}.treatment-photos figure{flex:0 0 calc((100% - 26px)/2);scroll-snap-align:start;min-width:0}.gallery-controls{display:flex;justify-content:center;align-items:center;gap:18px;margin-top:18px}.gallery-controls button{width:42px;height:42px;border:1px solid #a5ae9c;border-radius:50%;background:transparent;color:var(--olive);font-size:20px}.gallery-controls button:disabled{opacity:.3;cursor:default}.gallery-controls span{font-size:12px;color:var(--muted);min-width:84px;text-align:center}.google-rating strong{font:36px Georgia,serif}.google-rating strong span{font:18px Arial,sans-serif;color:#99732e;letter-spacing:2px;vertical-align:middle}.google-rating p{font-size:13px;margin:7px 0 1px;color:var(--muted)}.google-rating small{font-size:10px;color:var(--muted)}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:28px}.review-card{border:1px solid var(--line);border-radius:6px;padding:28px;background:#fffdf8;display:flex;flex-direction:column;align-items:flex-start}.review-stars{color:#99732e;letter-spacing:3px;font-size:15px}.review-card blockquote{font:20px/1.5 Georgia,serif;margin:18px 0 24px;flex:1}.review-card p{font-size:13px;font-weight:600;margin:0 0 4px}.review-card small{font-size:10px;color:var(--muted)}.location-map{grid-column:1/-1;overflow:hidden;border:1px solid var(--line);border-radius:6px}.location-map iframe{display:block;width:100%;height:360px}.reviews{padding-bottom:40px}@media(max-width:850px){.space-photo{padding-top:45px}.review-grid{gap:14px}.review-card{padding:22px}.review-card blockquote{font-size:18px}}@media(max-width:600px){.space-photo{padding:0;position:static}.space-photo img{height:auto;min-height:0;border-radius:0}.treatment-photos{gap:20px}.treatment-photos figure{flex-basis:88%}.review-grid{grid-template-columns:1fr}.google-rating{margin-top:24px}.review-card{padding:25px}.location-map iframe{height:300px}.reviews{padding-bottom:15px}}

.brand-with-logo{display:inline-flex;align-items:center;gap:12px}.brand .brand-name{font:inherit;letter-spacing:normal;margin-top:0}.brand-logo{display:block;width:46px;height:54px;object-fit:contain;flex:none}.feature .stones-cover{object-position:center 58%}.secondary .service-cover{display:block;width:calc(100% + 70px);height:230px;object-fit:cover;object-position:center;margin:-35px -35px 30px}.quote-service .quote-photo{display:block;width:calc(100% + 68px);max-width:none;height:270px;object-fit:cover;margin:-34px -34px 30px}.quote-service .business-cover{object-position:center 25%}.quote-service .home-cover{object-position:center}.gallery-filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px}.gallery-filters button{padding:9px 14px;border:1px solid #cdd5c2;border-radius:30px;background:transparent;color:var(--olive);font-size:12px}.gallery-filters button.active{background:var(--olive);border-color:var(--olive);color:white}.treatment-photos{position:relative}.treatment-photos figure[hidden]{display:none}.treatment-photos img{height:480px;aspect-ratio:auto;object-fit:contain;object-position:center;background:#e9eddf}@media(max-width:600px){.brand-with-logo{gap:8px}.brand-logo{width:32px;height:40px}header .brand .brand-name{font-size:18px}header .brand-name>span{font-size:7px;letter-spacing:2px}header{gap:10px}header>.button{max-width:100px;flex:0 0 100px;font-size:10px}.secondary .service-cover{width:calc(100% + 52px);height:210px;margin:-26px -26px 24px}.quote-service .quote-photo{width:calc(100% + 52px);height:230px;margin:-26px -26px 24px}.treatment-photos img{height:390px;max-height:390px}.gallery-filters button{font-size:11px;padding:8px 12px}}

.story-photo-frame{height:480px;background:#e9eddf;display:flex;justify-content:center;align-items:center}.story-window{height:100%;aspect-ratio:722/1300;max-width:100%;overflow:hidden;position:relative}.treatment-photos .story-window img{display:block;position:absolute;left:-1.108033%;top:-8.769231%;width:102.216066%;height:auto!important;max-width:none;max-height:none!important;aspect-ratio:auto;object-fit:initial;background:none}@media(max-width:600px){.story-photo-frame{height:390px}}

.review-grid{display:flex;position:relative;overflow-x:auto;scroll-snap-type:x mandatory;gap:20px;scrollbar-width:thin;overscroll-behavior-x:contain;margin-bottom:0}.review-card{flex:0 0 calc((100% - 40px)/3);min-width:0;scroll-snap-align:start}.review-author{display:flex;align-items:center;gap:12px;margin-bottom:20px}.review-author p{margin:0 0 3px}.review-author small{font-size:10px}.review-avatar{position:relative;display:block;width:45px;height:45px;border-radius:50%;overflow:hidden;flex:none;background:#e9eddf}.review-avatar>span{display:flex;align-items:center;justify-content:center;height:100%;font-size:13px;font-weight:600;color:var(--olive)}.review-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.review-avatar img[hidden]{display:none}.review-card blockquote{font-size:17px;line-height:1.6;white-space:pre-line;margin-bottom:0}.review-controls{margin-bottom:28px}@media(max-width:850px) and (min-width:601px){.review-card{flex-basis:calc((100% - 20px)/2)}}@media(max-width:600px){.review-card{flex-basis:90%}}

.review-card[hidden],.google-rating[hidden]{display:none}.message-symbol{display:flex;align-items:center;justify-content:center;width:45px;height:45px;border-radius:50%;background:#e9eddf;color:var(--olive);font-size:25px;flex:none}.message-card blockquote{margin-top:0}.message-excerpt{margin-top:18px}.message-proof{width:100%;margin-top:15px;border-top:1px solid var(--line);padding-top:12px}.message-proof summary{cursor:pointer;font-size:12px;color:var(--olive)}.message-proof img{display:block;width:100%;max-height:330px;object-fit:contain;object-position:top;margin-top:15px}.review-filters{margin-top:5px}

.review-avatar-print{background-repeat:no-repeat}

.privacy-link{border:0;background:transparent;color:inherit;font:inherit;font-size:12px;text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:6px 0}.cookie-banner{position:fixed;z-index:999;bottom:16px;left:50%;transform:translateX(-50%);width:min(920px,calc(100% - 32px));padding:20px 24px;background:#faf7f2;color:#303a2c;border:1px solid #a8b19e;border-radius:8px;box-shadow:0 6px 30px #28332226;display:flex;align-items:center;gap:24px}.cookie-banner[hidden]{display:none}.cookie-banner strong{font-size:15px}.cookie-banner p{font-size:13px;line-height:1.5;margin:7px 0 2px}.cookie-actions{display:flex;flex-wrap:wrap;gap:10px;flex-shrink:0}.cookie-choice{min-height:44px;border:1px solid #526348;border-radius:4px;padding:11px 20px;background:#faf7f2;color:#35412e;cursor:pointer;font:inherit;font-size:13px;font-weight:600}.cookie-choice:hover{background:#e9eddf}.cookie-choice:focus-visible,.privacy-link:focus-visible{outline:3px solid #526348;outline-offset:3px}#privacy-dialog{max-height:88vh;overflow:auto;width:min(640px,calc(100% - 28px));padding:30px}#privacy-dialog h2{font-size:34px}#privacy-dialog h3{font-size:22px;margin:25px 0 10px}#privacy-dialog p{font-size:14px;line-height:1.65}#privacy-dialog a{color:#354b29;text-decoration:underline}#privacy-dialog .cookie-actions{margin-top:20px}#cookie-status{font-weight:bold}@media(max-width:600px){.cookie-banner{padding:16px;bottom:10px;display:block}.cookie-banner .cookie-actions{margin-top:12px}.cookie-banner .cookie-choice{flex:1}.cookie-banner p{font-size:12px}#privacy-dialog{padding:23px}#privacy-dialog .cookie-choice{width:100%}}
