@font-face{font-family:Cormorant;src:url(assets/serif.woff2) format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:Cormorant;src:url(assets/italic.woff2) format("woff2");font-style:italic;font-weight:500;font-display:swap}
@font-face{font-family:DM;src:url(assets/sans.woff2) format("woff2");font-display:swap}
:root{--ink:#17392f;--green:#174c40;--cream:#fbf9f3;--soft:#ecf1e9;--accent:#dde9ba;--line:#cfdbcd;--pad:clamp(24px,6vw,100px);--serif:Cormorant,Georgia,serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:12px}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.6 DM,Arial,sans-serif}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,summary{font:inherit}figure,p,h1,h2,h3,blockquote{margin:0}a:focus-visible,summary:focus-visible,button:focus-visible{outline:3px solid #be7329;outline-offset:5px}a,button,summary{-webkit-tap-highlight-color:transparent}.wrap{width:min(100%,1536px);margin:auto;padding-inline:var(--pad)}.symbols{position:absolute;width:0;height:0;overflow:hidden}.skip{position:absolute;top:-100px;left:10px;padding:12px;background:white;z-index:9}.skip:focus{top:0}svg{display:block;width:20px;height:20px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.6;flex:none}.head{height:87px;display:flex;align-items:center;gap:clamp(20px,4vw,68px);position:relative}.brand{width:143px;height:55px;object-fit:contain}.head nav{margin-left:auto;display:flex;gap:clamp(16px,2.65vw,52px);font-size:14px}.head nav a,.foot a{padding-block:10px}.head nav a:hover,.foot a:hover{text-decoration:underline;text-underline-offset:5px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:22px;min-height:47px;padding:12px 23px;border-radius:99px;background:var(--green);color:white;font-size:14px;font-weight:600;transition:background .2s,transform .2s}.btn:hover{transform:translateY(-2px);background:#286653}.bright{background:var(--accent);color:#163a2d}.bright:hover{background:#ebf5d2}.menu{display:none}
.hero{display:grid;grid-template-columns:53% 47%;background:var(--green);color:var(--cream);max-width:1920px;margin:auto}.hero-copy{position:relative;overflow:hidden;padding:clamp(55px,6vw,105px) clamp(45px,6.2vw,103px) clamp(60px,6.15vw,103px) max(var(--pad),calc((100vw - 1536px)/2 + var(--pad)));isolation:isolate}.eyebrow{display:flex;align-items:center;gap:12px;text-transform:uppercase;letter-spacing:.17em;font-weight:600;font-size:10.5px;line-height:1.55}.eyebrow>span{width:31px;height:1px;background:currentColor}.hero .eyebrow,.contact .eyebrow{color:#d2e2c5}.hero h1,h2,.services summary,h3,.review-grid blockquote{font-family:var(--serif);font-weight:500}.hero h1{font-size:clamp(67px,6.9vw,112px);line-height:.91;letter-spacing:-.042em;max-width:700px;margin:31px 0 23px;text-wrap:balance}.hero em,.contact em{color:#d8e7b8;font-weight:500}.hero-copy>p{color:#e0e9dc;max-width:425px;line-height:1.67;font-size:clamp(15px,1.15vw,18px)}.hero-copy>.btn{margin-top:30px}.hero-flower{position:absolute;z-index:-1;bottom:-34px;right:-55px;width:clamp(145px,15vw,255px);height:auto;opacity:.21;transform:rotate(-18deg)}.hero-img{position:relative;overflow:hidden;min-height:100%;background:#b19a87}.hero-img>img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:50% 48%}.hero-img figcaption{position:absolute;right:18px;bottom:18px}.hero-img figcaption a{border:1px solid #ffffff60;border-radius:99px;display:flex;align-items:center;gap:8px;padding:7px 12px;font-size:11px;color:white;background:#223c33ba;backdrop-filter:blur(9px)}.hero-img figcaption svg{width:15px;height:15px}
.visit-strip{background:#eef3e9;border-bottom:1px solid var(--line)}.quick{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:65px}.quick>*{display:flex;align-items:center;gap:10px;font-size:13px}.quick svg{width:18px;height:18px}.quick a:hover{text-decoration:underline}.section{padding-block:clamp(68px,7.8vw,126px)}.treatments{display:grid;grid-template-columns:1fr 1fr;gap:9%}h2{font-size:clamp(47px,4.7vw,77px);line-height:.98;letter-spacing:-.035em;margin-top:20px}h2 em{font-weight:500;color:#4d745e}.section-intro h2,.studio-copy h2{max-width:440px}.section-intro p,.studio-copy>p{max-width:465px;margin-top:22px;color:#466050}.text-link{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:13px;text-decoration:underline;text-underline-offset:5px;text-decoration-color:#8aa091}.text-link svg{width:15px;height:15px}.section-intro .text-link{margin-top:26px}.services{border-top:1px solid var(--line)}.services details{border-bottom:1px solid var(--line);padding-block:18px}.services summary{display:flex;align-items:center;justify-content:space-between;list-style:none;font-size:clamp(27px,2.25vw,39px);line-height:1.2;cursor:pointer}.services summary::-webkit-details-marker{display:none}.plus{width:15px;height:15px;position:relative;margin-left:15px}.plus::before,.plus::after{content:"";height:1px;width:15px;position:absolute;left:0;top:7px;background:var(--green)}.plus::after{transform:rotate(90deg)}details[open] .plus::after{display:none}.services details>p{color:#486050;font-size:15px;margin-top:12px;max-width:92%}.studio{background:#e9eee5}.studio-inner{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:9%;padding-block:clamp(40px,5.6vw,86px)}.studio-inner>figure{aspect-ratio:1.45}.studio-inner>figure img{width:100%;height:100%;object-fit:cover}.byline{display:flex;align-items:center;gap:13px;margin-top:24px}.byline img{width:52px;height:52px;border-radius:50%;object-fit:cover}.byline strong,.byline small{display:block}.byline strong{font-size:14px}.byline small{font-size:12px;color:#51675a}.section-header{display:flex;align-items:end;justify-content:space-between;gap:35px}.section-header>.text-link{margin-bottom:8px}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(15px,2.1vw,34px);margin-top:38px}.piece>div{aspect-ratio:1.04;position:relative;overflow:hidden;background:#d5dcd0}.piece img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.piece:hover img{transform:scale(1.04)}.play{height:36px;width:36px;display:grid;place-items:center;background:#f7f8efed;color:#285242;border-radius:50%;position:absolute;bottom:11px;right:11px}.piece h3{font-size:clamp(25px,2.2vw,37px);line-height:1.1;margin-top:13px}.piece small{color:#5c7060;font-size:12px}.reviews{background:#f0eee4}.rating{color:var(--ink);display:flex;align-items:center;gap:14px}.rating strong{white-space:nowrap;font-family:var(--serif);font-weight:500;font-size:42px;line-height:1}.rating strong span{font:20px DM;color:#7d6238}.rating>span{font-size:12px;text-decoration:underline;text-underline-offset:4px}.review-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:24px;margin-top:45px}.review-grid figure{grid-column:span 2;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;border-top:1px solid #b2bdab;padding:19px 6px 16px 0;gap:20px}.review-grid figure:nth-child(n+4){grid-column:span 3}.review-grid blockquote{font-size:clamp(24px,2vw,32px);line-height:1.12;letter-spacing:-.018em}.review-grid figcaption,.asof{font-size:12px}.asof{color:#536754;margin-top:13px}.contact{background:var(--green);color:var(--cream)}.contact-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:10%}.contact .btn{margin-top:27px}.address h3{font-size:28px;line-height:1.1;margin:0 0 8px;color:#e8f0db}.address p{font-size:15px;color:#e0e8df}.address .text-link{margin:9px 0 24px}.foot{display:flex;align-items:center;gap:30px;min-height:68px;font-size:13px}.foot a:first-child{margin-right:auto;font-weight:600}
@media(min-width:1700px){.hero-copy{padding-left:max(var(--pad),calc((min(100vw,1920px) - 1536px)/2 + var(--pad)))}}
@media(max-width:900px){.head{height:74px;gap:25px}.head nav{gap:16px}.brand{width:120px}.hero h1{font-size:clamp(58px,8vw,74px)}.quick{gap:12px}.quick>*{font-size:11px;gap:6px}.treatments,.studio-inner{gap:6%}.hero-copy{padding-right:32px}.head nav{font-size:13px}}
@media(max-width:730px){.head{height:65px;gap:14px}.brand{width:106px;height:43px}.head-cta{margin-left:auto;min-height:38px;padding:8px 15px;gap:9px;font-size:12px}.head-cta svg{width:15px;height:15px}.menu{display:grid;align-content:center;gap:5px;place-items:center;background:none;border:0;padding:7px;width:35px;height:40px;color:var(--ink);cursor:pointer}.menu span{width:22px;height:1.5px;background:currentColor}.head nav{display:none;position:absolute;top:100%;left:0;right:0;margin:0;background:var(--cream);padding:16px var(--pad);z-index:3;box-shadow:0 14px 15px #17392f14}.head nav.open{display:flex;flex-direction:column;gap:0}.head nav a{padding:11px 0}.hero{grid-template-columns:1fr}.hero-copy{padding:45px var(--pad) 41px}.hero h1{max-width:510px;font-size:clamp(57px,10.5vw,76px);margin:21px 0 17px;text-wrap:initial}.hero-copy>p{font-size:15px;max-width:440px}.hero-copy>.btn{margin-top:23px}.hero-img{height:clamp(280px,69vw,400px)}.hero-img>img{object-position:50% 47%}.hero-img figcaption{right:12px;bottom:12px}.quick{min-height:auto;justify-content:center;padding-block:15px;flex-wrap:wrap;gap:8px 18px}.quick>*{font-size:12px}.quick>:last-child{display:none}.treatments,.studio-inner,.contact-grid{grid-template-columns:1fr}.treatments{gap:35px}.section-intro h2,.studio-copy h2{max-width:530px}.section-intro p,.studio-copy>p{margin-top:16px}.studio-inner{gap:31px}.studio-inner>figure{aspect-ratio:1.65}.studio-copy{padding-bottom:12px}.section-header{align-items:flex-start;flex-direction:column;gap:18px}.section-header>.text-link{margin:0}.gallery-grid{gap:12px;margin-top:25px}.piece h3{font-size:21px}.piece small{font-size:10px}.play{width:27px;height:27px;bottom:6px;right:6px}.review-grid{grid-template-columns:1fr 1fr;gap:15px;margin-top:25px}.review-grid figure,.review-grid figure:nth-child(n+4){grid-column:span 1}.review-grid figure:last-child{grid-column:1/-1}.contact-grid{gap:42px}.foot{gap:16px;flex-wrap:wrap}.foot a{padding:4px}.foot{padding-block:16px}}
@media(max-width:470px){.quick{flex-direction:column;align-items:flex-start;gap:5px}.quick svg{width:15px;height:15px}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 13px}.piece:last-child{grid-column:1/-1}.piece:last-child>div{aspect-ratio:2.1}.foot a:first-child{width:100%}.hero-image{min-height:0}.review-grid{grid-template-columns:1fr}.review-grid figure,.review-grid figure:nth-child(n+4){grid-column:1}.review-grid figure{gap:10px;padding:16px 0 6px}.hero-flower{width:140px;right:-37px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}
