:root{--sage:#8ca787;--sage-light:#eef3ed;--ink:#1f3029;--muted:#5b695f;--line:#dce4d9;--white:#fff;--serif:'Abhaya Libre',Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:#fff;color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid var(--ink);outline-offset:5px}img{display:block;max-width:100%}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.02;letter-spacing:-.045em}h1{font-size:clamp(5rem,8.8vw,8.7rem)}h2{font-size:clamp(3rem,4.5vw,4.7rem)}h3{font-size:2.6rem}em{font-weight:400;color:#6d8768}p{color:var(--muted)}.eyebrow{font-size:12px;font-weight:600;letter-spacing:.19em;color:#4d644c;margin-bottom:25px}.header{height:100px;display:flex;align-items:center;justify-content:space-between;gap:28px;padding:0 4.5%;border-bottom:1px solid var(--line);background:rgba(255,255,255,.97);position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:7px;flex-shrink:0}.brand img{width:70px;height:70px;object-fit:contain}.brand>span{font-family:var(--serif);font-size:32px;line-height:1}.brand small{display:block;font:10px Arial;letter-spacing:.2em;margin-top:6px}nav{display:flex;gap:27px}nav a{font-size:14px;white-space:nowrap}nav a:hover,.text-link:hover{color:#657f60}.button{display:inline-flex;justify-content:center;align-items:center;min-height:52px;padding:13px 25px;background:var(--ink);border:1px solid var(--ink);color:white;font-size:14px;border-radius:3px;transition:background .2s}.button:hover{background:#3d5144}.nav-book{min-height:44px;padding:10px 18px}.menu-toggle{display:none}.text-link{display:inline-block;border-bottom:1px solid #9aaf96;padding-bottom:4px;font-size:14px}.hero{padding:50px 4.5% 40px;display:grid;grid-template-columns:1.1fr 1fr;gap:5%;position:relative;max-width:1600px;margin:auto}.hero-copy{align-self:center;padding:25px 0 65px}.hero h1 em{display:block}.hero-intro{font-size:18px;max-width:405px;line-height:1.7;margin:25px 0 30px}.actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap}.hero-note{display:flex;gap:17px;align-items:center;margin-top:50px}.hero-note p{font-size:14px;color:var(--ink)}.hero-note p span{font-size:12px;color:var(--muted)}.note-line{height:46px;width:2px;background:var(--sage)}.hero-visual{position:relative;padding-bottom:35px}.hero-visual:before{content:'';position:absolute;inset:18px -17px 16px 24px;background:var(--sage-light);border-radius:45% 45% 0 0;z-index:-1}.portrait{width:100%;height:590px;object-fit:cover;object-position:center 34%;border-radius:45% 45% 3px 3px}.portrait-caption{position:absolute;bottom:11px;left:-35px;background:#fff;padding:22px 30px;min-width:245px;border:1px solid var(--line);box-shadow:0 12px 24px #1f302909}.portrait-caption span{font-size:10px;letter-spacing:.15em;color:var(--muted);display:block}.portrait-caption strong{display:block;font:34px var(--serif);margin:1px 0 5px}.portrait-caption a{font-size:12px;border-bottom:1px solid var(--sage)}.hero-bottom{position:absolute;bottom:26px;left:4.5%;font-size:10px;letter-spacing:.16em;color:#6d806b}.intro-band{padding:29px 5%;background:var(--sage);display:flex;gap:25px;justify-content:space-between;align-items:center}.intro-band p{font:30px var(--serif);color:var(--ink)}.intro-band span{font-size:14px;color:var(--ink)}.section{padding:105px 5%;max-width:1600px;margin:0 auto}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:60px;margin-bottom:50px}.section-heading>p{max-width:370px;font-size:16px}.treatment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.treatment{padding:30px 26px;background:var(--sage-light);border-top:2px solid var(--sage);display:flex;flex-direction:column}.index{font-size:12px;color:#6b8069;letter-spacing:.12em}.treatment h3{margin:24px 0 13px}.treatment-top p{font-size:14px;min-height:47px}.treatment dl{margin:28px 0 34px}.treatment dl>div{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:13px 0;border-bottom:1px solid #d5dfd1}.treatment dt{font-size:14px}.treatment dd{margin:0;white-space:nowrap;font-size:16px;color:var(--ink)}dd small{font-size:12px;margin-left:4px}.treatment>.text-link{align-self:flex-start;margin-top:auto}.pricing-note{display:flex;gap:14px;justify-content:center;align-items:center;margin-top:28px;font-size:14px}.pricing-note span{color:var(--muted)}.pricing-note a{text-decoration:underline;text-underline-offset:4px}.results{background:#fafbf9;max-width:none;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:30px}.filters button{padding:9px 20px;font-size:14px;border:1px solid var(--line);background:white;color:var(--muted);border-radius:30px}.filters button.active{background:var(--ink);border-color:var(--ink);color:white}.gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:30px}.result-card{padding:0;border:0;background:transparent;text-align:left;color:var(--ink)}.result-card[hidden]{display:none}.result-image{position:relative;overflow:hidden;background:white;border:1px solid var(--line);border-radius:3px}.result-image img{width:100%;height:auto;transition:transform .35s}.result-card:hover img{transform:scale(1.035)}.view-image{position:absolute;bottom:15px;right:15px;background:#fff;padding:5px 12px;border-radius:3px;font-size:12px}.result-title{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid var(--line);font:26px var(--serif)}.result-title>span{font:22px Arial}.fine-print{font-size:12px;margin-top:27px}.about{display:grid;grid-template-columns:.85fr 1fr;align-items:center;gap:10%;padding-top:120px;padding-bottom:120px}.about-image{position:relative}.about-image img{width:100%;max-height:650px;object-fit:cover;border-radius:3px}.image-label{position:absolute;bottom:0;left:0;right:0;background:var(--ink);color:white;padding:16px 20px;letter-spacing:.15em;font-size:10px}.about-copy h2{margin-bottom:27px}.about-copy p{margin-bottom:20px}.about-copy .large-copy{font:29px/1.25 var(--serif);color:var(--ink);letter-spacing:-.015em;margin-bottom:27px}.about-copy .button{margin-top:10px}.signature{font:35px var(--serif);margin-top:30px;font-style:italic}.signature span{display:block;font:10px Arial;letter-spacing:.15em;margin-top:6px;font-style:normal;color:var(--muted)}.locations{background:var(--sage-light);max-width:none}.location-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #c9d7c5}.location{padding:30px 30px 15px;border-right:1px solid #c9d7c5}.location:first-child{padding-left:0}.location:last-child{border:0}.location h3{margin:28px 0 15px}.location p{font-size:14px;min-height:70px}.location .text-link{margin-top:15px}.location-note{font-size:14px;margin-top:40px}.location-note a{text-decoration:underline;text-underline-offset:4px}.booking{padding:95px 6%;background:var(--ink);color:white;display:grid;grid-template-columns:1.5fr 1fr;gap:60px}.booking .eyebrow{color:#bacbb4}.booking h2{font-size:clamp(3.5rem,5vw,5.5rem)}.booking h2 em{color:#b0c4a9}.booking p{color:#c2cdc5;max-width:480px;margin:25px 0 30px}.light{background:var(--sage);border-color:var(--sage);color:#142019}.light:hover{background:#a2b89d}.outline{background:transparent;border-color:#697c6e}.email{display:inline-block;color:#c2cdc5;font-size:14px;margin-top:25px;text-decoration:underline;text-underline-offset:5px}.booking aside{border-left:1px solid #4b5c50;display:flex;flex-direction:column;align-items:center;justify-content:center}.booking-mark{font:100px var(--serif);letter-spacing:-.05em}.booking aside>p{margin:0 0 40px;font-size:14px;letter-spacing:.4em}.booking-details{display:flex;flex-direction:column;align-items:center;gap:8px;font-size:10px;letter-spacing:.15em;color:#b0c4a9}footer{padding:40px 5%;display:flex;align-items:center;justify-content:space-between;gap:30px}.footer-brand{font:30px var(--serif);white-space:nowrap}.footer-brand span{display:block;font:9px Arial;letter-spacing:.2em}footer>div{display:flex;gap:24px;font-size:12px}footer small{font-size:10px;color:var(--muted)}.mobile-book{display:none}.skip{position:fixed;top:-80px;left:10px;padding:10px 20px;background:white;z-index:99}.skip:focus{top:5px}dialog{width:min(1100px,94vw);padding:22px;border:0;border-radius:4px;max-height:90dvh;box-shadow:0 20px 80px #0005}dialog::backdrop{background:#142019bc}dialog img{width:100%;max-height:70dvh;object-fit:contain}.dialog-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:15px}.dialog-head h2{font-size:32px}.dialog-head button{background:var(--sage-light);border:1px solid var(--line);padding:6px 14px;font-size:14px}dialog p{font-size:12px;margin-top:12px}
@media(min-width:1600px){.results,.locations{padding-left:max(5%,calc((100vw - 1440px)/2));padding-right:max(5%,calc((100vw - 1440px)/2))}}@media(max-width:1100px){.header{gap:18px;padding:0 4%}nav{gap:16px}nav a{font-size:12px}.brand>span{display:none}.portrait{height:540px}.hero-copy{padding-top:0}.hero-note{margin-top:35px}.treatment-grid{gap:15px}.treatment{padding:26px 18px}.treatment dt{font-size:13px}.treatment dd{font-size:14px}.section{padding:80px 5%}.about{gap:6%}.booking{gap:40px}footer{flex-wrap:wrap}}@media(max-width:780px){html{scroll-padding-top:90px}.header{height:80px;padding:0 5%;gap:14px}.brand img{width:58px;height:58px}.brand>span{display:block;font-size:26px}.brand small{font-size:8px}.nav-book{margin-left:auto;min-height:38px;font-size:12px;padding:8px 12px}.menu-toggle{display:block;background:transparent;border:0;border-bottom:1px solid var(--sage);padding:4px 0;font-size:14px}nav{display:none;position:absolute;top:79px;left:0;right:0;background:white;flex-direction:column;padding:20px 5% 25px;gap:0;border-bottom:1px solid var(--line);box-shadow:0 15px 20px #0001}nav.open{display:flex}nav a{font-size:16px;padding:12px 0}.hero{grid-template-columns:1fr;gap:25px;padding:45px 6% 40px}.hero-copy{padding:0}.hero .eyebrow{margin-bottom:18px}h1{font-size:clamp(4.8rem,16vw,7rem)}h2{font-size:clamp(2.8rem,9vw,4rem)}.hero-intro{font-size:16px;margin:20px 0 24px}.actions{gap:20px}.hero-note{margin:25px 0 0}.hero-visual{margin:10px 12px 15px}.portrait{height:510px;object-position:center 32%}.portrait-caption{left:-10px;bottom:10px;padding:17px 22px;min-width:210px}.hero-bottom{display:none}.intro-band{padding:24px 6%;display:block}.intro-band p{font-size:26px;margin-bottom:7px}.intro-band span{font-size:12px}.section{padding:65px 6%}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:20px;max-width:550px;font-size:15px}.eyebrow{margin-bottom:16px}.treatment-grid{grid-template-columns:1fr;gap:20px}.treatment{padding:28px}.treatment h3{margin-top:16px}.treatment-top p{min-height:0}.treatment dl{margin:18px 0 24px}.treatment dt{font-size:14px}.treatment dd{font-size:16px}.pricing-note{display:block;text-align:center}.pricing-note span{display:block;margin-bottom:5px}.gallery{grid-template-columns:1fr;gap:26px}.filters{gap:8px}.filters button{padding:8px 14px;font-size:13px}.about{grid-template-columns:1fr;gap:35px}.about-image{max-width:480px;margin:auto}.about-image img{max-height:510px}.about-copy .large-copy{font-size:27px}.location-grid{grid-template-columns:1fr}.location,.location:first-child{border-right:0;border-bottom:1px solid #c9d7c5;padding:26px 0}.location h3{margin:14px 0}.location p{min-height:0}.location .text-link{margin-top:15px}.location-note{margin-top:25px}.booking{grid-template-columns:1fr;padding:65px 6%}.booking aside{display:none}.booking h2{font-size:3.6rem}.booking .actions{gap:12px}.booking .button{padding:12px 19px}footer{padding:35px 6% 90px;align-items:flex-start;gap:24px}footer>div{flex-wrap:wrap;gap:16px}footer small{width:100%}.mobile-book{display:block;position:fixed;bottom:0;left:0;right:0;z-index:25;background:white;padding:10px 5% max(10px,env(safe-area-inset-bottom));border-top:1px solid var(--line)}.mobile-book a{display:block;text-align:center;background:var(--ink);color:white;padding:11px;font-size:14px;border-radius:3px}.dialog-head h2{font-size:24px}dialog{padding:15px}}@media(max-width:380px){.brand>span{display:none}.nav-book{font-size:11px}h1{font-size:4.3rem}.treatment{padding:22px}.treatment dt{font-size:13px}.treatment dd{font-size:14px}.portrait{height:440px}.email{font-size:13px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Header wordmark sized to the D/K capitals inside the wreath. */
.brand>span{display:block;white-space:nowrap;font-family:"Times New Roman",Times,"Liberation Serif",serif;font-weight:700;font-style:normal;font-size:19px;color:#000;letter-spacing:0;line-height:1}
@media(max-width:1100px) and (min-width:781px){.brand{gap:4px}}
@media(max-width:780px){.brand{gap:4px}.brand>span{font-size:16px}.header{gap:10px}}
@media(max-width:430px){.nav-book{max-width:110px;padding:8px;line-height:1.3;text-align:center}}
@media(max-width:380px){.brand{gap:3px}.brand img{width:48px;height:48px}.brand>span{display:block;font-size:13px}.header{gap:8px}}
