:root{--ink:#2e483a;--cream:#f7f3eb;--sand:#e9decc;--brown:#936d4e;--muted:#62675d}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.65;font-size:16px}a{color:inherit}a:focus-visible{outline:3px solid #b47942;outline-offset:6px}header{max-width:1440px;margin:auto;padding:30px 6%;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{text-decoration:none;font-family:Georgia,serif;font-size:30px;letter-spacing:5px;line-height:1.15}.brand span{display:block;font-family:Arial,sans-serif;font-size:12px;letter-spacing:3px;margin-top:9px}nav{display:flex;align-items:center;gap:32px}nav a{text-decoration:none;font-size:14px}.nav-book{border:1px solid #879283;padding:12px 22px;border-radius:3px}.hero{max-width:1440px;margin:auto;display:grid;grid-template-columns:1fr 1fr;min-height:660px;padding:10px 6% 55px;gap:6%}.hero-copy{padding:55px 0 20px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.eyebrow{font-size:12px;font-weight:600;letter-spacing:2.3px;line-height:1.8;margin:0 0 24px}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.07;margin:0}h1{font-size:clamp(54px,6.4vw,92px);letter-spacing:-3px}.intro{max-width:390px;font-size:18px;margin:27px 0 30px;color:var(--muted)}.button{display:inline-block;background:var(--ink);color:var(--cream);text-decoration:none;padding:16px 30px;border-radius:3px;font-size:15px;transition:background .2s}.button:hover{background:#45614b}.hero-detail{font-size:14px;color:var(--muted);margin:35px 0 0;padding-left:18px;border-left:1px solid #b9b5a4}.hero-image{position:relative;min-height:560px;border-radius:180px 180px 4px 4px;overflow:hidden;background:var(--sand)}.hero-image img{width:100%;height:100%;object-fit:cover;position:absolute}.image-label{position:absolute;bottom:24px;left:0;width:100%;text-align:center;color:white;font-size:12px;letter-spacing:2px;text-shadow:0 1px 8px #000}.strip{background:var(--ink);color:var(--cream);padding:22px 6%;display:flex;justify-content:space-between;gap:20px;font-size:14px}.strip span:first-child{font-family:Georgia,serif;font-size:20px}.strip a{text-decoration:none}.section{max-width:1440px;margin:auto;padding:95px 6%}h2{font-size:clamp(40px,4.5vw,62px);letter-spacing:-1.7px}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:8%}.about-grid p{max-width:530px;color:var(--muted)}.about-grid .large-copy{font-size:21px;line-height:1.6;margin-top:0;color:var(--ink)}.text-link{display:inline-block;text-decoration:none;border-bottom:1px solid var(--brown);padding-bottom:6px;margin-top:16px;font-size:15px}.planning{background:var(--sand);display:grid;grid-template-columns:1fr 1.7fr;gap:9%;max-width:none;padding-left:max(6%,calc((100vw - 1267px)/2));padding-right:max(6%,calc((100vw - 1267px)/2))}.steps article{display:grid;grid-template-columns:45px 1fr;gap:0 20px;padding:25px 0;border-bottom:1px solid #cabeaa}.steps article:first-child{padding-top:0}.number{font-size:14px;color:var(--brown);grid-row:span 2;margin-top:6px}.steps h3{font-size:27px;line-height:1.3}.steps p{margin:9px 0 0;color:var(--muted)}.visit{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.address{font-size:18px;margin:28px 0 4px}.contact-card{background:#e7ece2;padding:50px;border-radius:4px}.contact-card h3{font-size:39px}.contact-card p{color:var(--muted)}.contact-card .eyebrow{color:var(--ink)}.phone{display:block;font-family:Georgia,serif;font-size:29px;text-decoration:none;margin:27px 0}.note{font-size:13px;line-height:1.5;margin-bottom:0}footer{border-top:1px solid #d9d9c9;padding:38px 6%;display:flex;align-items:center;justify-content:space-between;gap:25px}footer p,footer>span{font-size:14px;color:var(--muted)}@media(max-width:760px){header{padding:24px 6%;gap:12px}.brand{font-size:24px;letter-spacing:3px}.brand span{font-size:10px;letter-spacing:2px}nav{gap:12px}nav>a:not(.nav-book){display:none}.nav-book{font-size:12px;padding:10px 12px}.hero{grid-template-columns:1fr;gap:30px;padding-bottom:35px;min-height:0}.hero-copy{padding:25px 0 0}h1{font-size:64px}.eyebrow{font-size:12px;letter-spacing:1.5px}.intro{font-size:17px}.hero-image{min-height:420px;border-radius:140px 140px 4px 4px}.strip{flex-wrap:wrap;gap:8px 20px;font-size:12px}.strip span:first-child{display:none}.section{padding:60px 6%}.about-grid,.planning,.visit{grid-template-columns:1fr;gap:30px}.about-grid .large-copy{font-size:19px}.contact-card{padding:30px}.contact-card h3{font-size:34px}footer{flex-wrap:wrap}footer p{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
.brand{display:flex;align-items:center;gap:12px}.brand .logo{width:48px;height:42px;object-fit:cover;border-radius:3px}.brand .wordmark{font-family:Georgia,serif;font-size:30px;letter-spacing:5px;margin:0}.brand .wordmark span{font-family:Arial,sans-serif;font-size:12px;letter-spacing:3px}.team{padding-top:0}.team img{display:block;width:100%;height:auto;margin-top:35px;border-radius:6px}.team>p:last-child{color:var(--muted);font-size:14px}.menu-intro{padding-bottom:25px}.menu-grid{display:grid;grid-template-columns:1fr 1fr;gap:12%;padding-top:40px}.menu-grid p{color:var(--muted)}.menu-grid .button{margin-top:20px}.menu-questions{background:var(--sand);padding:35px}.menu-questions h3{font-size:32px;margin-bottom:24px}details{border-top:1px solid #cabeaa;padding:18px 0}summary{cursor:pointer;font-size:16px;font-weight:600}details p{font-size:15px;margin-bottom:0}.menu-end{background:var(--ink);color:var(--cream);text-align:center;max-width:none}.menu-end .button{background:var(--cream);color:var(--ink);margin-top:12px}@media(max-width:760px){.brand .wordmark{font-size:21px;letter-spacing:2px}.brand .wordmark span{font-size:10px;letter-spacing:1px}.brand .logo{width:35px;height:32px}nav>a:first-child{display:block}nav>a.nav-book{display:none}.menu-grid{grid-template-columns:1fr;gap:35px}.menu-questions{padding:25px}}

/* Keep the actual storefront and signage fully visible. */
.hero{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:5%;align-items:center;min-height:0}.hero-image{min-height:0;aspect-ratio:1;border-radius:6px;box-shadow:0 16px 44px #2e483a14}.hero-image img{position:relative;display:block;width:100%;height:100%;object-fit:contain}.hero-copy{padding:45px 0}.hero h1{font-size:clamp(50px,5.6vw,80px)}@media(max-width:760px){.hero{grid-template-columns:1fr;gap:28px}.hero-copy{padding:24px 0 0}.hero-image{min-height:0;aspect-ratio:1;border-radius:5px}.hero h1{font-size:64px}}

header nav a[aria-current="page"]{border-bottom:1px solid var(--brown)}.therapists-intro{padding-top:50px;padding-bottom:35px}.therapists-intro h1{font-size:clamp(40px,5vw,68px);letter-spacing:-2px}.therapists-intro>p:not(.eyebrow){max-width:700px;font-size:18px}.therapists-intro .booking-note{font-size:14px;color:var(--muted)}.therapist-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;padding-top:0}.therapist-card{background:#fffdf8;border:1px solid #dedbcf;border-radius:6px;overflow:hidden;display:flex;flex-direction:column}.therapist-card>img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain;background:#e9decc}.therapist-info{padding:26px;display:flex;flex-direction:column;flex:1}.therapist-info .eyebrow{font-size:12px;margin-bottom:8px}.therapist-info h2{font-size:38px;letter-spacing:-1px}.therapist-bio{font-size:16px;color:var(--muted);margin:14px 0}.therapist-info dl{margin:0 0 24px;font-size:14px}.therapist-info dl>div{display:grid;grid-template-columns:90px 1fr;gap:12px;border-top:1px solid #e5e1d7;padding:10px 0}.therapist-info dt{font-weight:600}.therapist-info dd{margin:0;color:var(--muted)}.therapist-info .button{margin-top:auto;text-align:center}.therapists-intro h1{line-height:1.15}@media(max-width:1050px){header{flex-wrap:wrap}nav{gap:22px}.therapist-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){header{gap:20px}header nav{width:100%;justify-content:space-between;gap:12px}header nav>a:not(.nav-book){display:inline-block;font-size:14px}header nav>.nav-book{display:none}.therapists-intro{padding-top:25px}.therapist-grid{gap:18px}.therapist-info{padding:18px}.therapist-info h2{font-size:32px}}@media(max-width:540px){.therapist-grid{grid-template-columns:1fr}.therapist-card>img{aspect-ratio:auto}.therapist-info{padding:25px}}

.treatment-intro{padding-top:50px;padding-bottom:40px}.treatment-intro>p:not(.eyebrow){max-width:640px;font-size:18px}.treatment-intro .price-note{font-size:14px;color:var(--muted)}.treatment-list{padding-top:0;padding-bottom:45px;display:grid;gap:24px}.treatment-card{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:50px;background:#fffdf8;border:1px solid #dedbcf;padding:38px;border-radius:6px}.treatment-card .eyebrow{margin-bottom:12px}.treatment-card h2{font-size:36px;line-height:1.2;letter-spacing:-1px;max-width:650px}.treatment-sub{color:var(--brown);font-size:16px;margin:14px 0}.treatment-copy>p:not(.eyebrow):not(.treatment-sub){color:var(--muted)}.benefit{border-left:2px solid #b29972;padding-left:18px;margin-top:24px}.benefit h3{font-family:Arial,sans-serif;font-size:14px;font-weight:600;line-height:1.5}.benefit p{font-size:15px;margin:8px 0 0;color:var(--muted)}.treatment-book{align-self:center}.treatment-book table{width:100%;border-collapse:collapse;font-size:16px}.treatment-book caption{text-align:left;font-size:14px;color:var(--muted);padding-bottom:15px}.treatment-book th,.treatment-book td{padding:12px 0;border-bottom:1px solid #dedbcf;text-align:left;font-weight:400}.treatment-book thead th{font-size:14px;font-weight:600}.treatment-book td,.treatment-book th:last-child{text-align:right}.treatment-book td{font-size:20px}.treatment-book .button{display:block;text-align:center;margin-top:24px}.addons{background:var(--sand);max-width:none;padding-top:60px;padding-bottom:60px}.addons>h2{font-size:45px}.addon-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-top:35px}.addon-card{background:var(--cream);padding:25px;display:flex;flex-direction:column;border-radius:4px}.addon-card h3{font-size:27px;line-height:1.25}.addon-price{font-size:25px;margin:18px 0 0}.addon-price span{font-size:14px;color:var(--muted)}.addon-card>p:not(.addon-price){font-size:15px;color:var(--muted);margin-bottom:25px}.addon-card .button{margin-top:auto;text-align:center}.visit-notes{padding-top:50px;padding-bottom:60px}.visit-notes h2{font-size:32px}.visit-notes p{max-width:850px;color:var(--muted);font-size:15px}@media(max-width:1050px){.addon-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.treatment-card{gap:30px;grid-template-columns:minmax(0,1fr) 240px;padding:30px}}@media(max-width:760px){.treatment-intro{padding-top:25px}.treatment-card{grid-template-columns:1fr;padding:25px;gap:28px}.treatment-card h2{font-size:30px}.addons>h2{font-size:36px}}@media(max-width:540px){.addon-grid{grid-template-columns:1fr}}

.photo-treatment{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);padding:0;gap:0;overflow:hidden;align-items:stretch}.photo-treatment .treatment-photo{display:block;width:100%;height:100%;min-height:420px;max-height:600px;object-fit:cover;object-position:center}.photo-treatment .treatment-copy{padding:45px;align-self:center}.photo-treatment .benefit{margin-top:28px}.photo-treatment .benefit p{font-size:16px;line-height:1.8}.photo-treatment .button{margin-top:30px;min-width:140px;text-align:center}.photo-treatment:nth-child(even) .treatment-photo{order:2}.photo-treatment:nth-child(even) .treatment-copy{order:1}@media(max-width:1050px){.photo-treatment .treatment-copy{padding:30px}.photo-treatment .treatment-photo{min-height:460px}}@media(max-width:760px){.photo-treatment{grid-template-columns:1fr;gap:0;padding:0}.photo-treatment .treatment-photo{height:320px;min-height:0;max-height:none}.photo-treatment:nth-child(even) .treatment-photo{order:0}.photo-treatment:nth-child(even) .treatment-copy{order:0}.photo-treatment .treatment-copy{padding:28px}.photo-treatment .button{display:block}.photo-treatment .benefit{margin-top:22px}}
/* A calm, full-width brand band across all pages. */
header{max-width:none;background:#665c53;color:#faf6ed;padding:25px max(6%,calc((100vw - 1267px)/2));border-bottom:2px solid #c6ad87;box-shadow:0 4px 18px #4b403512;margin-bottom:26px}header .brand .logo{border:1px solid #97887a}header nav a{color:#faf6ed}header nav a:not(.nav-book){padding:8px 0;border-bottom:1px solid transparent;transition:border-color .2s}header nav a:not(.nav-book):hover,header nav a[aria-current="page"]{border-bottom-color:#dac6a6}header .nav-book{border-color:#d4c5ae;background:#f3edde;color:#665c53;border-radius:4px}header .nav-book:hover{background:#e7dcc7}header a:focus-visible{outline-color:#ead4aa}@media(max-width:760px){header{padding:22px 6% 18px;margin-bottom:15px;gap:18px}header nav{border-top:1px solid #ffffff24;padding-top:10px;flex-wrap:wrap}header nav>a:not(.nav-book){padding:4px 0;font-size:14px}}@media(prefers-reduced-motion:reduce){header nav a{transition:none}}
/* Match booking buttons and the contact strip to the warm taupe header. */
:root{--brand-surface:#665c53;--brand-surface-hover:#554c44;--brand-surface-text:#faf6ed}.button{background:var(--brand-surface);color:var(--brand-surface-text)}.button:hover{background:var(--brand-surface-hover)}.strip{background:var(--brand-surface);color:var(--brand-surface-text)}
.hero.hero-text-only{display:block;text-align:center;padding-top:15px;padding-bottom:50px}.hero-text-only .hero-copy{align-items:center;padding:35px 0 10px}.hero-text-only .intro{max-width:560px}.hero-text-only .hero-detail{border-left:0;padding-left:0;margin-top:24px}.team{text-align:center;padding-top:65px;padding-bottom:65px}.team>img{max-width:1100px;margin:35px auto 0}.team>.button{margin-top:12px}.about>h2{margin-bottom:35px}.about-with-photo{align-items:center;gap:6%}.about-storefront img{display:block;width:100%;height:auto;border-radius:6px;box-shadow:0 14px 40px #4b403510}@media(max-width:760px){.hero.hero-text-only{padding-top:0;padding-bottom:35px}.hero-text-only .hero-copy{padding-top:25px}.team{padding-top:45px;padding-bottom:45px}.about>h2{margin-bottom:28px}.about-with-photo{gap:30px}}
/* Soft oil photography behind the opening message. */
.hero.hero-text-only{max-width:none;background-image:linear-gradient(rgba(247,243,235,.52),rgba(247,243,235,.52)),url('hero-oil-light.webp');background-size:cover;background-position:center 53%;padding-top:50px;padding-bottom:65px}.hero-text-only .hero-copy{max-width:850px;margin:0 auto}.hero-text-only .intro,.hero-text-only .hero-detail{color:#48483f}.hero-text-only h1{color:#293e32}@media(max-width:760px){.hero.hero-text-only{background-position:60% center;padding-top:35px;padding-bottom:45px}}

.hero.hero-clear-oil{background:none;max-width:1440px;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:center;gap:5%;padding:15px 6% 55px;text-align:left}.hero-clear-oil .hero-copy{align-items:flex-start;padding:35px 0}.hero-clear-oil .hero-image{aspect-ratio:1;min-height:0;background:none;box-shadow:0 14px 40px #4b403512}.hero-clear-oil .hero-image img{width:100%;height:auto;object-fit:contain;display:block;opacity:1;filter:none}.hero-clear-oil .intro{max-width:420px}@media(max-width:760px){.hero.hero-clear-oil{grid-template-columns:1fr;gap:28px;padding-top:0;padding-bottom:35px}.hero-clear-oil .hero-copy{padding:24px 0 0}.hero-clear-oil .hero-image{aspect-ratio:1}.hero-clear-oil .hero-image img{height:auto}}
