:root{color-scheme:light;--cloud:#f0edf3;--lilac:#c8b5d4;--plum:#2d1832;--plum-soft:#513657;--leaf:#66715b;--ink:#251b28;--line:#2d18322e;--label:clamp(.72rem, .85vw, .9rem);--title:clamp(1rem, 1.25vw, 1.25rem);--gutter:clamp(1.25rem, 5vw, 5rem);--ease:cubic-bezier(.16, 1, .3, 1);font-synthesis:none;font-family:Manrope Variable,Manrope,ui-sans-serif,system-ui,sans-serif}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--cloud);min-width:320px;color:var(--ink)}body{min-width:320px;margin:0;overflow-x:hidden}h1,h2,h3,p,blockquote,figure,dl,dd{margin:0}h1,h2,h3{text-wrap:balance}p,blockquote{text-wrap:pretty}a{color:inherit;text-decoration:none}img{width:100%;display:block}button,input,select,textarea{font:inherit}.site-header{border-bottom:1px solid var(--line);min-height:5.5rem;padding-inline:var(--gutter);background:var(--cloud);grid-template-columns:1fr auto 1fr;align-items:center;display:grid}.brand{align-items:baseline;gap:.7rem;width:max-content;display:flex}.brand strong{letter-spacing:-.03em;font-family:Baskerville,Iowan Old Style,Georgia,serif;font-size:clamp(1.5rem,2vw,2rem);font-style:italic;font-weight:400}.brand span,.hero__copy>p,.script,.team header>p,.booking__intro>p{font-size:var(--label);letter-spacing:.08em;text-transform:uppercase;font-weight:680}.desktop-nav{gap:clamp(1.25rem,3vw,2.75rem);display:flex}.desktop-nav a,.book-link{font-size:var(--label);font-weight:650}.desktop-nav a{color:var(--plum-soft)}.desktop-nav a:hover,.desktop-nav a:focus-visible{color:var(--ink)}.book-link{border-bottom:1px solid;justify-self:end;align-items:center;gap:1rem;min-height:3rem;display:inline-flex}.mobile-nav{display:none}.hero{background:var(--lilac);grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);min-height:calc(100svh - 5.5rem);display:grid}.hero__copy{min-height:44rem;padding:clamp(3rem, 7vw, 7rem) var(--gutter) clamp(2.5rem, 5vw, 4.5rem);flex-direction:column;justify-content:space-between;display:flex}.hero__copy>p{max-width:25ch;color:var(--plum-soft)}.hero h1{letter-spacing:-.04em;max-width:8.5ch;font-size:clamp(3.2rem,7vw,6rem);font-weight:360;line-height:.88}.hero h1 em{font-family:Baskerville,Iowan Old Style,Georgia,serif;font-weight:400}.hero__copy>div{justify-content:space-between;align-items:flex-end;gap:2rem;display:flex}.hero__copy>div span{max-width:27rem;color:var(--plum-soft);font-size:1rem;font-weight:520;line-height:1.55}.hero__copy>div a{font-size:var(--label);border-bottom:1px solid;flex:none;padding-bottom:.4rem;font-weight:720}.hero__image{min-height:44rem;position:relative;overflow:hidden}.hero__image:after{content:"";pointer-events:none;background:linear-gradient(#0000 65%,#1e0e228f);position:absolute;inset:0}.hero__image img{object-fit:cover;height:100%;animation:image-arrive 1.4s var(--ease) both}.hero__image figcaption{z-index:1;color:#fff;font-size:var(--label);font-weight:650;position:absolute;bottom:2rem;right:2rem}.treatments{padding:clamp(6rem, 12vw, 11rem) var(--gutter);background:var(--cloud)}.treatments>header{grid-template-columns:minmax(0,1.2fr) minmax(16rem,.8fr);align-items:end;gap:3rem;margin-bottom:clamp(4rem,8vw,7rem);display:grid}.treatments h2,.team h2,.faq h2{letter-spacing:-.04em;font-size:clamp(2.4rem,5vw,5rem);font-weight:400;line-height:.98}.treatments header p,.faq header p{max-width:34rem;color:var(--plum-soft);font-size:1rem;font-weight:520;line-height:1.65}.treatments__list{border-top:1px solid var(--line)}.treatments__list a{border-bottom:1px solid var(--line);min-height:7rem;transition:color .25s var(--ease), padding .25s var(--ease);grid-template-columns:3rem minmax(0,1fr) 6rem 5rem 2rem;align-items:center;gap:1.5rem;display:grid}.treatments__list a:hover,.treatments__list a:focus-visible{color:var(--plum-soft);padding-inline:1rem}.treatments__list span,.treatments__list p,.treatments__list strong{font-size:var(--label);font-weight:650}.treatments__list h3{font-family:Baskerville,Iowan Old Style,Georgia,serif;font-size:clamp(1.35rem,2.4vw,2.3rem);font-weight:400}.treatments__list i{font-style:normal;font-size:var(--title)}.care{background:var(--plum);min-height:50rem;color:var(--cloud);grid-template-columns:minmax(0,1.1fr) minmax(24rem,.9fr);display:grid}.care figure{min-height:42rem;overflow:hidden}.care img{object-fit:cover;height:100%}.care__copy{padding:clamp(4rem, 8vw, 8rem) var(--gutter);flex-direction:column;justify-content:center;display:flex}.script{color:var(--lilac);margin-bottom:3rem}.care h2{max-width:12ch;font-family:Baskerville,Iowan Old Style,Georgia,serif;font-size:clamp(2.5rem,4.8vw,4.8rem);font-weight:400;line-height:1}.care__copy>p:not(.script){color:#f0edf3b8;max-width:38rem;margin-top:2rem;font-size:1rem;font-weight:500;line-height:1.7}.care dl{gap:0;margin-top:4rem;display:grid}.care dl div{border-top:1px solid #f0edf32e;grid-template-columns:7rem 1fr;gap:1.5rem;padding-block:1.1rem;display:grid}.care dt,.care dd{font-size:var(--label);line-height:1.55}.care dt{color:var(--lilac);font-weight:680}.care dd{color:#f0edf3b8;font-weight:520}.voices{padding:clamp(7rem, 14vw, 13rem) var(--gutter);background:var(--lilac);text-align:center;place-items:center;gap:2.5rem;display:grid}.voices blockquote{max-width:26ch;font-family:Baskerville,Iowan Old Style,Georgia,serif;font-size:clamp(2rem,4.3vw,4.2rem);font-weight:400;line-height:1.08}.voices p{color:var(--plum-soft);font-size:var(--label);font-weight:650}.team{padding:clamp(7rem, 12vw, 12rem) var(--gutter);grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(4rem,10vw,10rem);display:grid}.team header>p{color:var(--plum-soft);margin-bottom:2rem}.team>div{border-top:1px solid var(--line)}.team article{border-bottom:1px solid var(--line);padding:2rem 0 3rem}.team article span{color:var(--plum-soft);font-size:var(--label);font-weight:650}.team article h3{margin-top:1.25rem;font-family:Baskerville,Iowan Old Style,Georgia,serif;font-size:clamp(1.75rem,3vw,3rem);font-weight:400}.team article p{max-width:34rem;color:var(--plum-soft);margin-top:.8rem;font-size:1rem;line-height:1.6}.faq{padding:clamp(7rem, 12vw, 11rem) var(--gutter);background:#e2d9e8;grid-template-columns:minmax(18rem,.72fr) minmax(0,1.28fr);gap:clamp(4rem,9vw,9rem);display:grid}.faq header p{margin-top:2rem}.faq>div{border-top:1px solid var(--line)}.faq details{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;min-height:6rem;font-size:var(--title);justify-content:space-between;align-items:center;gap:2rem;font-weight:620;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary span{font-size:var(--title);transition:transform .25s var(--ease)}.faq details[open] summary span{transform:rotate(45deg)}.faq details p{max-width:42rem;color:var(--plum-soft);padding:0 3rem 2rem 0;font-size:1rem;line-height:1.65}.booking{padding:clamp(7rem, 12vw, 12rem) var(--gutter);background:var(--plum);color:var(--cloud);grid-template-columns:minmax(0,.8fr) minmax(28rem,1.2fr);gap:clamp(4rem,10vw,10rem);display:grid}.booking__intro>p{color:var(--lilac)}.booking h2{max-width:8ch;margin-top:2rem;font-family:Baskerville,Iowan Old Style,Georgia,serif;font-size:clamp(3rem,6vw,6rem);font-weight:400;line-height:.95}.booking__intro>span{color:#f0edf3ad;max-width:35rem;margin-top:2rem;font-size:1rem;line-height:1.65;display:block}.booking form{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;display:grid}.booking label{color:var(--lilac);font-size:var(--label);gap:.65rem;font-weight:650;display:grid}.booking input,.booking select,.booking textarea{color:#fff;background:0 0;border:1px solid #f0edf33d;border-radius:0;outline:0;width:100%;padding:.9rem 0}.booking input:focus,.booking select:focus,.booking textarea:focus{border-color:var(--lilac);box-shadow:0 3px #c8b5d447}.booking select option{color:var(--ink)}.booking__note{grid-column:1/-1}.booking button{background:var(--lilac);min-height:3.5rem;color:var(--plum);cursor:pointer;border:0;grid-column:1/-1;justify-content:space-between;align-items:center;margin-top:1rem;padding-inline:1.25rem;font-size:1rem;font-weight:720;display:inline-flex}.site-footer{padding:clamp(4rem, 8vw, 7rem) var(--gutter) 2rem;color:var(--cloud);background:#1e1022;grid-template-columns:1fr auto auto;align-items:start;gap:5rem;display:grid}.brand--footer{color:var(--lilac)}.site-footer__contact,.site-footer nav{gap:.6rem;display:grid}.site-footer__contact p,.site-footer__contact a,.site-footer nav a{color:#f0edf3b3;font-size:var(--label);font-weight:540}.site-footer__legal{color:#f0edf36b;font-size:var(--label);border-top:1px solid #f0edf324;grid-column:1/-1;margin-top:3rem;padding-top:1.5rem}@keyframes image-arrive{0%{filter:saturate(.6);transform:scale(1.08)}to{filter:saturate();transform:scale(1)}}@media (width<=58rem){.site-header{grid-template-columns:1fr auto}.desktop-nav,.book-link{display:none}.mobile-nav{justify-self:end;display:block;position:relative}.mobile-nav summary{cursor:pointer;place-content:center;gap:.45rem;width:3rem;height:3rem;list-style:none;display:grid}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav summary span{background:currentColor;width:1.5rem;height:1px}.mobile-nav[open] summary span:first-child{transform:translateY(.23rem)rotate(45deg)}.mobile-nav[open] summary span:last-child{transform:translateY(-.23rem)rotate(-45deg)}.mobile-nav nav{z-index:10;background:var(--plum);color:var(--cloud);display:grid;position:fixed;top:5.5rem;left:1rem;right:1rem}.mobile-nav nav a{border-bottom:1px solid #f0edf324;padding:1.1rem 1.25rem;font-size:1rem;font-weight:650}.hero,.care,.team,.faq,.booking{grid-template-columns:1fr}.hero__copy{min-height:35rem}.hero__image{min-height:40rem}.hero__copy>div{flex-direction:column;align-items:flex-start}.care figure{min-height:34rem}.booking{gap:4rem}}@media (width<=42rem){.hero h1{font-size:clamp(3rem,16vw,5rem)}.treatments>header{grid-template-columns:1fr}.treatments__list a{grid-template-columns:2rem minmax(0,1fr) auto;gap:.7rem 1rem;min-height:auto;padding-block:1.5rem}.treatments__list h3{grid-area:1/2/auto/-1}.treatments__list a>span{grid-area:1/1}.treatments__list p{grid-column:2}.treatments__list strong{grid-column:3}.treatments__list i{display:none}.booking form{grid-template-columns:1fr}.booking__note,.booking button{grid-column:auto}.site-footer{grid-template-columns:1fr;gap:2.5rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
