:root{--bg:#f3efe8;--surface:#fcfaf7;--ink:#101820;--text:#3c4045;--muted:#67655f;--gold:#98601e;--button:#ad793c;--line:#e8dfd2;--wash:#f5ecdf;--hero-fade:252,247,238;--serif:Georgia,'Times New Roman',serif}html[data-theme=dark]{--bg:#171715;--surface:#21211e;--ink:#f5eee5;--text:#d4cfc7;--muted:#b5afa5;--gold:#d9ac70;--button:#ba8749;--line:#494437;--wash:#302b23;--hero-fade:33,33,30}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:1rem}body{margin:0;background:var(--bg);color:var(--ink);font:1rem/1.55 Arial,Helvetica,sans-serif}button,input{font:inherit}a{color:inherit;text-decoration:none}a,button{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:hover{color:var(--gold)}button:focus-visible,a:focus-visible,iframe:focus-visible{outline:3px solid var(--gold);outline-offset:5px}svg{width:24px;height:24px;flex-shrink:0}img{display:block;max-width:100%;object-fit:cover}p{margin:0 0 1.1rem;color:var(--text)}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.08;margin:0 0 1rem;letter-spacing:-.035em}h1{font-size:clamp(2.7rem,4.4vw,4rem)}h2{font-size:2.45rem}h3{font-size:1.4rem;letter-spacing:-.025em}hr{border:0;border-top:1px solid var(--line);margin:1.8rem 0}.site-shell{max-width:1440px;margin:10px auto;background:var(--surface);border:1px solid var(--line);border-radius:16px;overflow:clip}.container{width:calc(100% - 150px);max-width:1290px;margin-inline:auto}.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}.skip{position:fixed;top:5px;left:12px;background:var(--surface);padding:10px;z-index:100;transform:translateY(-150%)}.skip:focus{transform:none}.button{display:inline-flex;align-items:center;justify-content:center;gap:14px;background:var(--button);border:1px solid var(--button);color:#fff;border-radius:50px;padding:12px 28px;font-size:1rem;font-weight:500;line-height:1.4;min-height:46px}.button svg{width:20px;height:20px}.button:hover{background:var(--gold);border-color:var(--gold);color:#fff}html[data-theme=dark] .button{color:#141410}html[data-theme=dark] .button:hover{color:#141410}.text-link{display:inline-flex;align-items:center;gap:8px;color:var(--gold)}.text-link svg{width:19px;height:19px}.text-link:hover{text-decoration:underline;text-underline-offset:4px}.eyebrow{text-transform:uppercase;letter-spacing:.045em;color:var(--gold);font-size:.86rem;margin-bottom:12px;line-height:1.4}.intro{font-size:1.17rem;max-width:590px}.note{font-size:.88rem;line-height:1.6;color:var(--muted)}.note a{text-decoration:underline}.brand{display:flex;gap:10px;align-items:center;flex-shrink:0}.brand img{width:58px;height:58px;object-fit:contain}.brand>span{font-family:var(--serif);font-size:1.15rem;line-height:1.2;white-space:nowrap}.brand small{font-family:Arial,sans-serif;display:block;font-size:.57rem;letter-spacing:.25em;text-align:center;margin-top:7px}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:22px;height:70px}header{position:relative;z-index:5;border-bottom:1px solid var(--line);background:var(--surface)}header nav{display:flex;align-items:center;gap:30px;margin-left:auto}header nav a{font-size:.86rem;white-space:nowrap}header nav a[aria-current=page]{color:var(--gold)}.header-actions{display:flex;align-items:center;gap:20px}.header-book{font-size:.86rem;padding:10px 23px;min-height:42px;white-space:nowrap}.theme-toggle{display:flex;align-items:center;gap:6px;border:0;background:transparent;color:var(--gold);padding:0;min-height:44px}.theme-toggle>span{width:40px;height:30px;display:grid;place-items:center;background:var(--button);color:#fff;border-radius:24px}.theme-toggle>span svg{width:19px;height:19px}.menu-toggle{display:none;background:none;border:0;color:var(--ink);padding:8px}.home-hero{position:relative;isolation:isolate;min-height:433px;padding-top:36px;padding-bottom:28px}.hero-scene{position:absolute;inset:0;z-index:-1;background-image:linear-gradient(90deg,rgba(var(--hero-fade),1) 0%,rgba(var(--hero-fade),.98) 30%,rgba(var(--hero-fade),.9) 41%,rgba(var(--hero-fade),.18) 58%,rgba(var(--hero-fade),0) 70%),url('../images/hero.jpg');background-repeat:no-repeat;background-position:center,right center;background-size:100% 100%,auto 100%}.hero-copy h1{font-size:4rem;line-height:.97;letter-spacing:-.045em;margin-bottom:16px}.hero-description{font-size:1.22rem;line-height:1.42;max-width:610px;margin-bottom:18px}.hero-copy>.button{padding-inline:33px}.benefits{display:flex;gap:33px;margin-top:30px}.benefits>div{display:flex;gap:14px;max-width:220px;align-items:flex-start}.benefits svg{width:36px;height:36px;color:var(--gold)}.benefits p{font-size:.86rem;line-height:1.42;margin:0;max-width:165px}.benefits strong{display:block;font-weight:600;color:var(--ink);margin-bottom:4px}.benefits span{display:block}.home-services{padding-block:30px 26px}.section-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.section-top h2{margin:0}.section-top>.text-link{font-size:1rem}.services-track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.service-card{border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:0 1px 3px #47371d0a;display:flex;flex-direction:column}.card-image{display:block;overflow:hidden;aspect-ratio:1.92}.card-image img{width:100%;height:100%;transition:transform .25s}.card-image:hover img{transform:scale(1.035)}.card-copy{padding:13px 20px 17px;display:flex;flex:1;flex-direction:column}.card-copy h3{font-size:1.32rem;line-height:1.15;margin-bottom:7px}.card-copy p{font-size:.95rem;line-height:1.42;margin-bottom:12px}.card-copy .text-link{font-size:.92rem;margin-top:auto;align-self:flex-start}.booking{display:flex;align-items:center;gap:16px;background:var(--wash);border:1px solid var(--line);border-radius:14px;padding:24px}.booking h3{font-size:1.45rem;line-height:1.2}.booking p{font-size:.95rem;line-height:1.5}.booking>svg{width:50px;height:50px;color:var(--button)}.desktop-booking{flex-direction:column-reverse;justify-content:space-between;align-items:flex-start;padding:23px}.desktop-booking .button{padding:10px 20px;font-size:.9rem}.desktop-booking h3{margin-top:12px}.desktop-booking p{margin-bottom:16px}.mobile-booking,.mobile-label,.carousel-dots{display:none}.quote{min-height:133px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(90deg,var(--wash),transparent 50%,var(--wash)),var(--wash);border-block:1px solid var(--line);padding:25px}.quote p{font:italic 2.05rem/1.3 var(--serif);color:var(--ink);margin:0;text-align:center}.quote span{height:2px;width:55px;background:var(--gold);margin-top:15px}footer{padding-top:25px}.footer-grid{display:grid;grid-template-columns:1.4fr .62fr 1.1fr 1.1fr .95fr;gap:25px}.footer-grid h2{font:500 .88rem/1.4 Arial,sans-serif;letter-spacing:0;margin:5px 0 13px}.footer-brand .brand{gap:7px}.footer-brand .brand img{width:48px;height:48px}.footer-brand .brand>span{font-size:.97rem}.footer-brand .brand small{font-size:.48rem}.footer-brand p{font-size:.9rem;margin:10px 0 15px}.socials{display:flex;gap:20px}.socials a{min-height:35px}.socials svg{width:24px;height:24px}.footer-nav>a{display:block;font-size:.84rem;line-height:1.7}.contact-line{display:flex;gap:10px;font-size:.82rem;line-height:1.65;margin-bottom:9px}.contact-line svg{color:var(--gold);width:20px;height:20px;margin-top:2px}.contact-line p{margin:0;font-size:inherit;color:inherit}.map-box{background:var(--wash);border:1px solid var(--line);border-radius:8px;overflow:hidden}.map-box iframe{width:100%;height:110px;display:block;border:0;background:var(--wash);color-scheme:normal}.map-box>.text-link{font-size:.78rem;display:block;padding:7px 9px}.footer-bottom{border-top:1px solid var(--line);margin-top:22px;padding-block:14px;display:flex;justify-content:space-between;gap:20px;font-size:.73rem;color:var(--text)}.footer-bottom a{display:inline;color:inherit}.footer-bottom>span:last-child{white-space:nowrap}.footer-bottom>span:last-child a{font-weight:600}.footer-bottom>span:first-child>a{display:inline-block;margin-left:8px;text-decoration:underline}.page-intro{padding-block:60px 38px}.page-intro h1{max-width:850px}.page-intro .intro{max-width:680px}.section-heading .intro{margin-bottom:0}.editorial-list{padding-bottom:62px}.editorial-row{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:65px;padding-block:36px;border-top:1px solid var(--line)}.editorial-row.reverse>img{order:2}.editorial-row h2{max-width:530px}.editorial-row p{max-width:560px}.editorial-image{width:100%;height:345px;border-radius:12px}.price-from{font-family:var(--serif);font-size:1.3rem;color:var(--gold)}.detail-hero{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:65px;padding-block:52px}.detail-hero h1{margin-top:20px;font-size:3.65rem;line-height:1.03}.detail-photo{width:100%;height:390px;border-radius:13px}.breadcrumb{font-size:.85rem;color:var(--gold)}.detail-hero .intro{margin-bottom:25px}.treatment-body{display:grid;grid-template-columns:1.2fr 1fr;gap:100px;padding-block:35px 65px;border-top:1px solid var(--line)}.details-list{margin:28px 0}.details-list>div{border-top:1px solid var(--line);padding:16px 0}.details-list dt{font-size:1.07rem;color:var(--ink);margin-bottom:4px}.details-list dd{margin:0;color:var(--text)}.treatment-price{background:var(--wash);border-radius:12px;padding:30px;align-self:start}.price-table{width:100%;border-collapse:collapse;margin:0 0 22px;font-size:1rem;text-align:left}.price-table caption{text-align:left;font:1.8rem/1.2 var(--serif);letter-spacing:-.025em;color:var(--ink);padding-bottom:18px}.price-table th{font-weight:400;color:var(--text)}.price-table td{text-align:right;white-space:nowrap;color:var(--ink);padding-left:18px}.price-table th,.price-table td{padding-block:13px;border-bottom:1px solid var(--line)}.related{border-top:1px solid var(--line);padding-block:35px 55px}.related h2{font-size:1.9rem}.related a{display:flex;justify-content:space-between;padding:14px 0;border-bottom:1px solid var(--line)}.pricing-layout{display:grid;grid-template-columns:1.3fr 1fr;gap:95px;padding-block:10px 70px}.pricing-layout .price-table{margin-bottom:48px}.pricing-aside{align-self:start;position:sticky;top:25px}.pricing-aside>img{height:330px;width:100%;object-position:65% center;border-radius:12px}.pricing-aside>div{padding:28px 8px}.pricing-aside .text-link{display:flex;margin-top:20px}.about-hero .detail-photo,.booking-hero .detail-photo{height:420px}.about-story{margin-bottom:55px}.contact-layout{display:grid;grid-template-columns:1fr 1.25fr;gap:75px;padding-block:20px 60px}.contact-layout address{font-style:normal;color:var(--text);font-size:1.1rem;margin-block:20px 12px}.contact-layout h3{margin-top:30px}.hours{max-width:420px;margin-bottom:25px}.hours>div{display:flex;justify-content:space-between;gap:20px;padding:9px 0;border-bottom:1px solid var(--line)}.hours dd{margin:0;color:var(--text);text-align:right}.large-phone{font:2rem var(--serif);display:block;margin:30px 0 20px}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px}.map-large{display:flex;flex-direction:column;min-height:530px}.map-large iframe{flex:1;min-height:470px}.map-large>.text-link{font-size:.95rem;padding:16px}.contact-booking{padding-bottom:60px}.contact-booking .booking{justify-content:space-between;padding:30px}.booking-steps{display:grid;grid-template-columns:1.2fr 1fr;gap:90px;padding-block:25px 65px;border-top:1px solid var(--line)}.booking-steps ol{padding:0;list-style:none;counter-reset:steps}.booking-steps li{position:relative;padding:20px 0 8px 52px;counter-increment:steps;border-bottom:1px solid var(--line)}.booking-steps li:before{content:'0' counter(steps);position:absolute;left:0;top:19px;font:1.5rem var(--serif);color:var(--gold)}.booking-steps li h3{font-size:1.3rem}.booking-steps aside{background:var(--wash);padding:35px;border-radius:12px;align-self:start}.booking-steps aside>.note{margin-top:18px}.privacy-layout{display:grid;grid-template-columns:260px 1fr;gap:90px;padding-bottom:65px}.privacy-index{display:flex;flex-direction:column;align-self:start;position:sticky;top:25px}.privacy-index a{font-size:.9rem;padding:12px 0;border-bottom:1px solid var(--line);color:var(--gold)}.privacy-copy{max-width:750px}.privacy-copy section{padding:20px 0;border-top:1px solid var(--line)}.privacy-copy h2{font-size:1.7rem}.privacy-copy a{text-decoration:underline;color:var(--gold)}
@media(min-width:1500px){.site-shell{margin-block:18px}}@media(max-width:1330px){.container{width:calc(100% - 90px)}.header-inner{gap:16px}header nav{gap:19px}.header-actions{gap:14px}.brand>span{font-size:1rem}.brand img{width:48px;height:48px}.footer-grid{gap:20px}.footer-brand .brand>span{font-size:.86rem}.footer-brand .brand img{width:40px}.hero-copy h1{font-size:3.7rem}.home-hero{min-height:410px}.card-copy{padding-inline:16px}.desktop-booking{padding:20px}.footer-grid{grid-template-columns:1.25fr .6fr 1.1fr 1.15fr .9fr}.contact-line{font-size:.78rem}}
@media(max-width:1100px){.container{width:calc(100% - 64px)}.header-inner{height:76px}.header-book{display:none}header nav{gap:20px}.home-hero{min-height:410px}.hero-copy h1{font-size:3.55rem}.hero-description{font-size:1.12rem;max-width:510px}.benefits{gap:24px}.benefits>div{gap:10px;max-width:195px}.services-track{gap:16px}.card-copy h3{font-size:1.18rem}.card-copy p{font-size:.88rem}.desktop-booking h3{font-size:1.25rem}.desktop-booking .button{padding-inline:14px}.footer-grid{grid-template-columns:1.2fr .7fr 1.2fr 1.2fr}.footer-map{grid-column:1/-1}.footer-map iframe{height:130px}.footer-map h2{display:none}.footer-bottom{font-size:.75rem}.detail-hero,.editorial-row{gap:40px}.detail-hero h1{font-size:3.15rem}.pricing-layout,.booking-steps,.treatment-body{gap:55px}.privacy-layout{gap:45px}}
@media(max-width:800px){.site-shell{margin:0;border-radius:0;border:0}.container{width:calc(100% - 44px)}.header-inner{height:75px;gap:10px}.brand img{width:43px;height:43px}.brand>span{font-size:.94rem}.brand small{font-size:.47rem;letter-spacing:.21em}.header-actions{gap:13px}.theme-toggle{gap:4px}.theme-toggle>svg{width:22px;height:22px}.theme-toggle>span{width:34px;height:28px}.menu-toggle{display:block;padding:5px;min-height:44px;min-width:35px}.menu-toggle svg{width:26px;height:26px}header nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--surface);padding:12px 22px 20px;border-bottom:1px solid var(--line);box-shadow:0 10px 18px #00000012;margin:0}header nav.is-open{display:flex;flex-direction:column;gap:0;align-items:stretch}header nav a{font-size:1rem;padding:11px 5px;border-bottom:1px solid var(--line)}.home-hero{padding-top:0;padding-bottom:0;min-height:0}.hero-scene{bottom:auto;height:365px;background-image:linear-gradient(90deg,rgba(var(--hero-fade),.97),rgba(var(--hero-fade),.8) 45%,rgba(var(--hero-fade),.05)),url('../images/hero.jpg');background-position:center,65% center;background-size:100% 100%,auto 100%}.hero-copy{height:365px;padding-top:42px}.hero-copy .eyebrow{font-size:.77rem;margin-bottom:13px}.hero-copy h1{font-size:2.45rem;line-height:1.01;letter-spacing:-.04em;margin-bottom:14px}.hero-description{font-size:.98rem;line-height:1.45;max-width:270px;margin-bottom:19px}.desktop-break{display:none}.hero-copy>.button{font-size:.91rem;padding:12px 24px;gap:15px}.benefits{margin-top:0;padding-top:19px;padding-bottom:18px;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.benefits>div{display:flex;flex-direction:column;align-items:center;gap:7px;text-align:center;max-width:none}.benefits svg{width:28px;height:28px}.benefits p{font-size:.74rem;line-height:1.4}.benefits strong{font-weight:500;margin:0}.benefits span{display:none}.home-services{padding-block:22px 28px}.section-top{gap:12px;margin-bottom:16px}.section-top h2{font-size:1.75rem}.section-top>.text-link{font-size:.86rem;white-space:nowrap;gap:5px}.mobile-label{display:inline}.desktop-label{display:none}.services-track{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin-right:-22px;padding-right:22px;scroll-padding-left:0;overscroll-behavior-x:contain}.services-track::-webkit-scrollbar{display:none}.service-card{flex:0 0 82%;scroll-snap-align:start;border-radius:9px}.card-image{aspect-ratio:1.87}.card-copy{padding:12px 14px 15px}.card-copy h3{font-size:1.25rem}.card-copy p{font-size:.91rem;margin-bottom:7px}.card-copy .text-link{font-size:.88rem;min-height:28px}.desktop-booking{display:none}.carousel-dots{display:flex;justify-content:center;gap:1px;padding:6px 0 17px}.carousel-dots button{border:0;background:transparent;width:25px;height:30px;display:grid;place-items:center;padding:0}.carousel-dots button:after{content:'';width:7px;height:7px;background:var(--line);border-radius:50%}.carousel-dots button[aria-pressed=true]:after{background:var(--button)}.mobile-booking{display:flex;padding:16px}.mobile-booking h3{font-size:1.12rem;margin-bottom:6px;letter-spacing:-.025em}.mobile-booking p{font-size:.85rem;line-height:1.4;margin-bottom:10px}.mobile-booking .button{font-size:.87rem;padding:9px 22px;min-height:40px}.mobile-booking>svg{width:44px;height:44px}.quote{min-height:105px;padding:25px 22px}.quote p{font-size:1.55rem}.home-services+.quote{display:none}footer{border-top:1px solid var(--line);padding-top:23px}.footer-grid{grid-template-columns:1fr 1fr;gap:25px 20px}.footer-brand{grid-column:1/-1}.footer-brand .brand img{width:49px;height:49px}.footer-brand .brand>span{font-size:1.04rem}.footer-brand .brand small{font-size:.5rem}.footer-brand p{font-size:.86rem}.footer-nav{display:none}.footer-grid h2{font-size:.9rem}.contact-line{font-size:.83rem;gap:7px}.contact-line svg{width:17px;height:17px}.footer-map{grid-column:1/-1}.footer-map iframe{height:165px}.footer-bottom{flex-direction:column;gap:8px;font-size:.73rem;padding-bottom:20px;margin-top:22px}.footer-bottom>span:first-child>a{margin:5px 0 0;display:block}.footer-bottom>span:last-child{white-space:normal}.page-intro{padding-block:39px 25px}h1{font-size:2.6rem}h2{font-size:2rem}.intro{font-size:1.05rem}.eyebrow{font-size:.8rem}.editorial-list{padding-bottom:28px}.editorial-row{grid-template-columns:1fr;gap:24px;padding-block:27px}.editorial-row.reverse>img{order:0}.editorial-image{height:auto;aspect-ratio:1.6;border-radius:10px}.editorial-row h2{font-size:2rem}.detail-hero{grid-template-columns:1fr;gap:27px;padding-block:35px}.detail-hero h1{font-size:2.6rem;margin-top:15px}.detail-photo{height:auto;aspect-ratio:1.45}.treatment-body{grid-template-columns:1fr;gap:28px;padding-block:30px}.treatment-price{padding:23px}.price-table{font-size:.95rem}.price-table caption{font-size:1.65rem}.related{padding-block:25px 35px}.related h2{font-size:1.65rem}.related a{font-size:.95rem}.pricing-layout{grid-template-columns:1fr;gap:20px;padding-bottom:35px}.pricing-aside{position:static}.pricing-aside>img{height:255px}.pricing-aside>div{padding:23px 0}.about-hero .detail-photo,.booking-hero .detail-photo{height:285px}.about-story{margin-bottom:25px}.contact-layout{grid-template-columns:1fr;gap:30px;padding-bottom:30px}.map-large{min-height:360px}.map-large iframe{min-height:300px}.contact-booking{padding-bottom:35px}.contact-booking .booking{padding:22px}.contact-booking .booking h3{font-size:1.3rem}.booking-steps{grid-template-columns:1fr;gap:30px;padding-block:28px 35px}.booking-steps aside{padding:24px}.privacy-layout{grid-template-columns:1fr;gap:25px;padding-bottom:35px}.privacy-index{position:static;display:grid;grid-template-columns:1fr 1fr;gap:0 15px}.privacy-index a{font-size:.8rem}.privacy-copy h2{font-size:1.55rem}}
@media(max-width:380px){.container{width:calc(100% - 34px)}.header-inner{gap:6px}.brand>span{font-size:.8rem}.brand img{width:36px;height:40px}.brand{gap:6px}.brand small{font-size:.41rem}.header-actions{gap:6px}.theme-toggle>svg{width:20px;height:20px}.theme-toggle>span{width:29px}.hero-copy h1{font-size:2.22rem}.section-top h2{font-size:1.5rem}.hero-copy>.button{padding-inline:20px}.services-track{margin-right:-17px;padding-right:17px}.service-card{flex-basis:90%}.mobile-booking{gap:10px;padding:13px}.mobile-booking>svg{width:36px;height:36px}.footer-grid{grid-template-columns:1fr}.footer-brand,.footer-map{grid-column:auto}.privacy-index{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
/* Refinements from comparison with the supplied desktop and mobile mockup. */
@media(min-width:801px){.hero-scene{background-image:linear-gradient(90deg,rgba(var(--hero-fade),1) 0%,rgba(var(--hero-fade),1) 43%,rgba(var(--hero-fade),.88) 48%,rgba(var(--hero-fade),.18) 62%,rgba(var(--hero-fade),0) 73%),url('../images/hero.jpg')}.desktop-booking{padding:20px;justify-content:center;gap:6px}.desktop-booking>svg{width:36px;height:36px}.desktop-booking h3{font-size:1.3rem;margin-top:8px;margin-bottom:10px}.desktop-booking p{font-size:.9rem;margin-bottom:14px}.benefits>div:first-child{max-width:215px}.benefits>div:first-child p{max-width:175px}}
.card-image img{transform:scale(1.035)}.card-image:hover img{transform:scale(1.06)}
@media(max-width:800px){.hero-scene{height:335px;background-position:center,left center;background-image:linear-gradient(90deg,rgba(var(--hero-fade),.98),rgba(var(--hero-fade),.87) 45%,rgba(var(--hero-fade),.05)),url('../images/hero.jpg')}.hero-copy{height:335px;padding-top:38px}.hero-copy h1{font-size:2.35rem}.hero-description{max-width:270px}.benefits{padding-bottom:12px}.home-services{padding-top:18px}}
@media(max-width:380px){.hero-copy h1{font-size:2.22rem}}
.quote{background-image:linear-gradient(90deg,transparent,rgba(var(--hero-fade),.12),transparent),url('../images/botanical-banner.jpg');background-size:cover;background-position:center 60%}html[data-theme=dark] .quote{background-image:linear-gradient(rgba(25,25,21,.8),rgba(25,25,21,.8)),url('../images/botanical-banner.jpg')}
.editorial-image,.detail-photo{clip-path:inset(3px round 10px)}
@media(max-width:800px){.hero-scene{background-size:100% 100%,auto 120%}}
:root{--button:#9e6e33}html[data-theme=dark]{--button:#ba8749}.booking-hero .note{margin-top:15px}

/* Original treatment material */
.treatment-material{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:center;border-top:1px solid var(--line);padding-block:46px 55px}.treatment-material-copy{max-width:500px}.treatment-material-copy h2{font-size:2.15rem}.treatment-flyer{margin:0;justify-self:center;width:min(100%,520px);background:var(--wash);border:1px solid var(--line);border-radius:14px;padding:14px}.treatment-flyer img{width:100%;height:auto;max-height:690px;object-fit:contain;border-radius:8px;background:#fff}@media(max-width:800px){.treatment-material{grid-template-columns:1fr;gap:24px;padding-block:30px 36px}.treatment-material-copy h2{font-size:1.8rem}.treatment-flyer{width:min(100%,480px);padding:9px;border-radius:11px}.treatment-flyer img{max-height:none}}

/* v3.2 — responsive corrections: home services + global footer */
@media (min-width:600px) and (max-width:959px){
  .services-track{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
    overflow:visible;
    margin-right:0;
    padding-right:0;
    scroll-snap-type:none;
  }
  .service-card{flex:none;min-width:0;scroll-snap-align:none}
  .desktop-booking{display:flex}
  .mobile-booking,.carousel-dots{display:none}

  .footer-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:28px 38px;
  }
  .footer-brand{grid-column:auto}
  .footer-nav{display:block}
  .footer-map{grid-column:1/-1}
  .footer-map h2{display:block}
  .footer-map iframe{width:100%;height:220px}
}

@media (max-width:599px){
  .services-track{
    display:grid;
    grid-template-columns:1fr;
    gap:16px;
    overflow:visible;
    margin-right:0;
    padding-right:0;
    scroll-snap-type:none;
  }
  .service-card{flex:none;width:100%;min-width:0;scroll-snap-align:none}
  .carousel-dots{display:none}
  .desktop-booking{display:none}
  .mobile-booking{display:flex;margin-top:16px}

  .footer-grid{
    display:grid;
    grid-template-columns:1fr;
    gap:28px;
  }
  .footer-brand,.footer-nav,.footer-map{grid-column:auto}
  .footer-nav{display:block}
  .footer-grid h2{display:block;margin-bottom:12px}
  .footer-map h2{display:block}
  .footer-map iframe{width:100%;height:220px}
  .footer-bottom{align-items:flex-start}
}


/* v3.3 — footer location heading + social emphasis */
.footer-map h2{display:flex;align-items:center;gap:8px}
.footer-location-icon{width:19px;height:19px;color:var(--gold);flex:0 0 auto}
.socials{gap:10px}
.socials a{
  width:40px;height:40px;min-height:40px;
  display:grid;place-items:center;
  border:1px solid color-mix(in srgb,var(--gold) 48%,transparent);
  border-radius:10px;color:var(--gold);
  transition:background-color .18s ease,border-color .18s ease,transform .18s ease;
}
.socials a svg{width:23px;height:23px;stroke-width:1.7}
.socials a:hover{background:var(--wash);border-color:var(--gold);color:var(--gold);transform:translateY(-1px)}

/* The 960–1100 range inherits the compact footer, but must keep its location label. */
@media (min-width:960px) and (max-width:1100px){
  .footer-map h2{display:flex}
}

@media (max-width:599px){
  .footer-map iframe{height:180px}
  .socials a{width:42px;height:42px;min-height:42px}
  .socials a svg{width:24px;height:24px}
}

/* v3.4 — larger, consistent touch CTAs */
.button-secondary{background:transparent;color:var(--gold);border-color:var(--gold);padding:10px 20px;min-height:44px}.button-secondary:hover{background:var(--gold);border-color:var(--gold);color:#fff;text-decoration:none}html[data-theme=dark] .button-secondary{color:var(--gold);background:transparent}html[data-theme=dark] .button-secondary:hover{color:#141410;background:var(--gold)}.card-copy .button-secondary{font-size:.88rem;padding:8px 15px;min-height:40px;gap:8px;margin-top:auto;align-self:flex-start}.card-copy .button-secondary svg{width:17px;height:17px}.actions .button-secondary{min-width:0}@media(max-width:800px){.button-secondary{min-height:46px;padding:10px 20px}.pricing-aside .button-secondary,.contact-layout .button-secondary,.about-story .button-secondary{margin-top:6px}.actions{gap:12px}.card-copy .button-secondary{min-height:42px;padding:8px 16px}}

/* v3.5 — mobile menu visual consistency */
@media (max-width: 760px){
  header nav.is-open a{
    border:1px solid var(--line);
    border-radius:18px;
    padding:14px 18px;
    min-height:52px;
    display:flex;
    align-items:center;
    transition:background .18s ease,border-color .18s ease,color .18s ease;
  }
  header nav.is-open a:hover,
  header nav.is-open a:focus-visible{background:var(--wash);border-color:var(--gold);}
  header nav.is-open a[aria-current=page]{
    background:var(--wash);
    border-color:var(--gold);
    color:var(--gold);
  }
}

/* v3.6 — pill-style navigation, matching the approved WordPress visual language */
@media (max-width:800px){
  header nav{padding:18px 22px 24px;gap:10px}
  header nav.is-open{gap:10px}
  header nav.is-open a{
    border:1px solid var(--line);
    border-radius:999px;
    padding:13px 20px;
    min-height:50px;
    width:100%;
  }
  header nav.is-open a:hover,
  header nav.is-open a:focus-visible{background:var(--wash);border-color:var(--gold)}
  header nav.is-open a[aria-current=page]{
    background:var(--button);
    border-color:var(--button);
    color:#fff;
  }
  html[data-theme=dark] header nav.is-open a[aria-current=page]{color:#141410}
}

/* Desktop keeps the horizontal header, but uses the same rounded-pill language. */
@media (min-width:801px){
  header nav{gap:8px}
  header nav a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:38px;
    padding:8px 14px;
    border:1px solid transparent;
    border-radius:999px;
    transition:background .18s ease,border-color .18s ease,color .18s ease;
  }
  header nav a:hover,
  header nav a:focus-visible{background:var(--wash);border-color:var(--line);text-decoration:none}
  header nav a[aria-current=page]{
    background:var(--button);
    border-color:var(--button);
    color:#fff;
  }
  html[data-theme=dark] header nav a[aria-current=page]{color:#141410}
}
