.brand[data-astro-cid-f7espo7c]{color:var(--ink);align-items:center;gap:.72rem;display:inline-flex}.brand__mark[data-astro-cid-f7espo7c]{border:1px solid #17332c33;border-radius:50%;flex:none;place-items:center;width:2.5rem;height:2.5rem;display:grid}svg[data-astro-cid-f7espo7c]{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.55px;width:1.45rem}.brand__words[data-astro-cid-f7espo7c]{line-height:1;display:grid}.brand__words[data-astro-cid-f7espo7c]>span[data-astro-cid-f7espo7c]{font-family:var(--font-display);letter-spacing:-.02em;font-size:1.02rem}.brand__words[data-astro-cid-f7espo7c] small[data-astro-cid-f7espo7c]{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;margin-top:.2rem;font-size:.58rem;font-weight:650}.brand--compact[data-astro-cid-f7espo7c] .brand__words[data-astro-cid-f7espo7c]{display:none}@media (width<=47rem){.brand__mark[data-astro-cid-f7espo7c]{width:2.15rem;height:2.15rem}.brand__words[data-astro-cid-f7espo7c]>span[data-astro-cid-f7espo7c]{font-size:.95rem}svg[data-astro-cid-f7espo7c]{width:1.25rem}}@layer reset{*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:6rem}body,h1,h2,h3,p,figure,ol,ul{margin:0}ol,ul{padding:0;list-style:none}img,svg{max-width:100%;display:block}a{color:inherit;text-decoration:none}address{font:inherit}}@layer base{:root{--ink:#17332c;--ink-soft:#315047;--paper:#f7f4ee;--cream:#eee8dc;--white:#fffdf8;--sage:#d7e0d8;--sage-deep:#9fb3a4;--line:#17332c29;--muted:#68766f;--font-body:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display:Georgia, "Times New Roman", serif;--shadow-soft:0 1.5rem 4rem #17332c14}body{background:var(--paper);min-width:20rem;color:var(--ink);font-family:var(--font-body);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-size:1rem;line-height:1.65;overflow-x:hidden}::selection{background:var(--ink);color:var(--paper)}:focus-visible{outline-offset:4px;outline:3px solid #c8653b}h1,h2,h3{text-wrap:balance;font-weight:400;line-height:1.04}h1,h2{font-family:var(--font-display);letter-spacing:-.045em}h2{font-size:clamp(2rem,3.2vw,3.4rem)}h3{letter-spacing:-.025em;font-size:clamp(1.2rem,1.6vw,1.55rem)}p{text-wrap:pretty}}@layer components{.container{width:min(100% - 3rem,72rem);margin-inline:auto}.skip-link{z-index:100;background:var(--white);box-shadow:var(--shadow-soft);color:var(--ink);border-radius:999px;padding:.75rem 1rem;font-weight:700;position:fixed;top:.75rem;left:.75rem;transform:translateY(-180%)}.skip-link:focus{transform:translateY(0)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.preview-ribbon{z-index:20;color:#2b1c15;letter-spacing:.06em;text-align:center;text-transform:uppercase;background:#d9906f;padding:.48rem 1rem;font-size:.72rem;font-weight:750;position:relative}.site-header{z-index:10;border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--paper) 90%, transparent);backdrop-filter:blur(14px);position:sticky;top:0}.site-header__inner{grid-template-columns:auto 1fr;align-items:center;min-height:4.5rem;display:grid}.logo-link{border-radius:.25rem;justify-self:start}.site-nav{justify-self:end;align-items:center;gap:clamp(1.2rem,3vw,2.5rem);font-size:.82rem;font-weight:650;display:flex}.site-nav a,.site-footer__links a,.text-link{background-image:linear-gradient(currentColor,currentColor);background-position:0 100%;background-repeat:no-repeat;background-size:0 1px;transition:background-size .18s}.site-nav a:hover,.site-footer__links a:hover,.text-link:hover{background-size:100% 1px}.hero{border-bottom:1px solid var(--line);background:radial-gradient(circle at 81% 44%, #d7e0d8bf, transparent 32rem), var(--paper);position:relative;overflow:clip}.hero__grid{grid-template-columns:minmax(0,1fr);align-items:center;gap:clamp(2rem,4vw,4rem);min-height:0;padding-block:clamp(2.75rem,5vw,4rem);display:grid}.hero__copy{min-width:0}.eyebrow,.section-kicker,.overline{color:var(--muted);letter-spacing:.15em;text-transform:uppercase;font-size:.72rem;font-weight:750}.eyebrow:before,.section-kicker:before{content:"";vertical-align:middle;background:currentColor;width:1.8rem;height:1px;margin-right:.75rem;display:inline-block}.hero h1{max-width:14ch;margin-top:1.1rem;font-size:clamp(2.8rem,4.4vw,4.2rem)}.hero h1 em{color:var(--ink-soft);font-weight:400;display:block}.hero__lead{max-width:39rem;color:var(--muted);margin-top:1.4rem;font-size:clamp(1rem,1.2vw,1.12rem)}.hero__actions{flex-wrap:wrap;align-items:center;gap:1.25rem 2rem;margin-top:1.9rem;display:flex}.button{border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:1.4rem;min-height:3.25rem;padding:.82rem 1.4rem;font-size:.85rem;font-weight:750;transition:transform .18s,box-shadow .18s;display:inline-flex}.button:hover{transform:translateY(-2px);box-shadow:0 .8rem 2rem #17332c26}.button--primary{background:var(--ink);color:var(--white)}.button--light{background:var(--white);color:var(--ink)}.text-link{font-size:.86rem;font-weight:700}.section{padding-block:clamp(3rem,5vw,4.5rem)}@media (height<=50rem){.section{padding-block:clamp(2rem,4vh,2.75rem)}.specialist-section{padding-block:clamp(1.75rem,3.5vh,2.5rem)}.hero__grid{padding-block:clamp(1.75rem,4vh,2.75rem)}.contact-map__viewport,.contact-map__frame{height:12rem;min-height:12rem}}.section--paper{background:var(--white)}.section--cream{background:var(--cream)}.section--sage{background:var(--sage)}.specialist-section{border-bottom:1px solid var(--line);background:var(--cream);padding-block:clamp(2.75rem,4.5vw,4rem)}.specialist-profile{grid-template-columns:minmax(13rem,17.5rem) minmax(0,1fr);align-items:center;gap:clamp(1.75rem,4.5vw,3.75rem);display:grid}.specialist-profile__media{box-shadow:none;background:#e8e8e8;border-radius:.45rem;outline:1px solid #17332c1a;margin:0;overflow:hidden}.specialist-profile__media picture{line-height:0;display:block}.specialist-profile__image{aspect-ratio:1085/1410;object-fit:cover;object-position:center 12%;width:100%;height:auto;display:block}.specialist-profile__identity>.section-kicker{margin-bottom:.85rem}.specialist-profile__identity>h2+p{color:var(--muted);margin-top:.65rem;font-size:.92rem;font-weight:650}.specialist-profile__summary{max-width:38rem;color:var(--ink-soft);margin-top:1.25rem;font-size:1.02rem;font-weight:500;line-height:1.65}.specialist-profile__summary+.specialist-profile__summary{margin-top:.9rem}.contact-list__item span{color:var(--muted);letter-spacing:.11em;text-transform:uppercase;font-size:.68rem;font-weight:750}.section-heading--compact h2{margin-top:.8rem}.hygiene-section{grid-template-columns:minmax(14rem,.85fr) minmax(0,1.15fr);align-items:start;gap:clamp(2rem,5vw,4.5rem);display:grid}.hygiene-section__intro{position:sticky;top:6.5rem}.hygiene-section__intro h2{max-width:12ch;margin-top:.85rem;font-size:clamp(2.1rem,3.2vw,3rem)}.hygiene-section__lead{max-width:22rem;color:var(--muted);margin-top:1.15rem;font-size:1.02rem;font-weight:500;line-height:1.55}.hygiene-faq{gap:0;display:grid}.hygiene-faq__item{border-bottom:1px solid var(--line);grid-template-columns:auto minmax(0,1fr);gap:.9rem 1.15rem;padding-block:1.35rem;display:grid}.hygiene-faq__item:first-child{padding-top:.35rem}.hygiene-faq__index{color:var(--sage-deep);font-family:var(--font-display);letter-spacing:-.04em;font-size:1.15rem;font-weight:400;line-height:1.3}.hygiene-faq__content{gap:.55rem;display:grid}.hygiene-faq__question{color:var(--ink);font-family:var(--font-body);letter-spacing:0;text-wrap:balance;margin:0;font-size:clamp(1.05rem,1.5vw,1.2rem);font-weight:700;line-height:1.3}.hygiene-faq__answer{max-width:38rem;color:var(--ink-soft);margin:0;font-size:1rem;font-weight:500;line-height:1.65}.services-section__inner{grid-template-columns:minmax(0,.8fr) minmax(18rem,1fr);align-items:start;gap:clamp(2rem,6vw,6rem);display:grid}.services-section__inner h2{max-width:10ch}.services-section__note{max-width:34rem;color:var(--ink-soft);padding-top:.35rem;font-size:1.05rem}.services-section__note a{text-underline-offset:.22rem;font-weight:700;text-decoration:underline}.services-list{border-top:1px solid #17332c33}.services-list li{border-bottom:1px solid #17332c33;gap:.55rem;padding-block:1.2rem;display:grid}.services-list__row{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem 1.5rem;display:flex}.services-list__row h3{flex:14rem;max-width:34rem;font-size:1.05rem;font-weight:700;line-height:1.35}.services-list__price{color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap;flex:none;font-size:1.05rem;font-weight:750}.services-list>li>p{max-width:38rem;color:var(--ink-soft);font-size:.95rem;line-height:1.55}.services-section__footnote{max-width:34rem;color:var(--muted);margin-top:1.25rem;font-size:.78rem;font-weight:500;line-height:1.45}.contact-section{background:var(--white);padding:.75rem}.contact-panel{background:radial-gradient(circle at 15% 100%, #9fb3a438, transparent 30rem), var(--ink);min-height:0;color:var(--white);border-radius:.4rem;grid-template-columns:minmax(0,.85fr) minmax(20rem,1fr);align-items:start;gap:clamp(2rem,4vw,3rem) clamp(2rem,4vw,3.5rem);padding:clamp(2rem,4vw,3.5rem);display:grid}.section-kicker--light{color:#fffdf8a6}.contact-panel__intro h2{max-width:12ch;margin-top:.9rem}.contact-list{border-top:1px solid #fffdf833}.contact-list__item{border-bottom:1px solid #fffdf833;grid-template-columns:.45fr 1fr;gap:1rem;padding-block:1.25rem;display:grid}.contact-list__item span{color:#fffdf88c}.contact-list__item a,.contact-list__item strong{font-size:.96rem;font-style:normal;font-weight:650}.contact-list__item a{text-underline-offset:.24rem;text-decoration:underline #fffdf859}.contact-panel>.button{place-self:end start}.booking-section{gap:clamp(1rem,2.5vw,1.75rem);display:grid}.booking-section .section-heading p{max-width:36rem;color:var(--muted);margin-top:.75rem;font-size:.95rem;line-height:1.55}.booking-embed{border:1px solid var(--line);background:var(--cream);border-radius:.3rem;overflow:hidden}.booking-embed__cta{justify-items:start;gap:1rem;padding:clamp(1.25rem,3vw,2rem);display:grid}.booking-embed__cta p{max-width:34rem;color:var(--muted);font-size:.95rem;line-height:1.5}.booking-embed__viewport{background:var(--white);display:none}.booking-embed__frame{background:var(--white);border:0;width:100%;height:min(28rem,100svh - 16rem);display:block}.booking-embed--desktop .booking-embed__cta{display:none}.booking-embed--desktop .booking-embed__viewport{display:block}@media (height<=60rem){.booking-embed__frame{height:min(22rem,100svh - 16rem)}}.contact-map{background:var(--white);color:var(--ink);border:1px solid #fffdf833;border-radius:.3rem;grid-column:1/-1;overflow:hidden;box-shadow:0 2rem 4rem #00000029}.contact-map__viewport{background:var(--sage);min-height:clamp(15rem,25vw,20rem);position:relative;overflow:hidden}.contact-map__placeholder{background:radial-gradient(circle at 22% 28%, #fffdf866, transparent 9rem), linear-gradient(135deg, var(--sage), #b9c9bd);place-items:center;display:grid;position:absolute;inset:0;overflow:hidden}.contact-map__roads{fill:none;stroke:#fffdf89e;stroke-linecap:round;stroke-width:16px;width:calc(100% + 2rem);height:calc(100% + 2rem);position:absolute;inset:-1rem}.contact-map__roads path:nth-child(2){stroke:#17332c2e;stroke-width:8px}.contact-map__roads path:nth-child(3){stroke-width:10px}.contact-map__marker{z-index:1;text-align:center;background:#fffdf8f0;border:1px solid #17332c1f;justify-items:center;min-width:min(20rem,100% - 2rem);padding:1.1rem 1.4rem;display:grid;position:relative;box-shadow:0 1rem 3rem #17332c26}.contact-map__marker>span{background:var(--ink);width:3.4rem;height:3.4rem;color:var(--white);border-radius:50%;place-items:center;margin-top:-3rem;display:grid;box-shadow:0 .7rem 1.5rem #17332c40}.contact-map__marker svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5px;width:1.35rem}.contact-map__marker strong{font-family:var(--font-display);margin-top:.8rem;font-size:clamp(1.3rem,2vw,1.75rem);font-weight:400}.contact-map__marker small{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;margin-top:.15rem;font-size:.68rem;font-weight:750}.contact-map__frame{background:var(--sage);border:0;width:100%;height:clamp(15rem,25vw,20rem);display:block}.contact-map__bar{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:1.5rem;min-height:4.5rem;padding:.75rem 1rem .75rem 1.25rem;display:flex}.contact-map__bar>div:first-child{display:grid}.contact-map__bar>div:first-child span{color:var(--muted);letter-spacing:.11em;text-transform:uppercase;font-size:.62rem;font-weight:750}.contact-map__bar>div:first-child strong{margin-top:.15rem;font-size:.95rem}.contact-map__actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.65rem;display:flex}.contact-map__actions button,.contact-map__actions a{border:1px solid var(--ink);min-height:2.8rem;font:inherit;cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:.65rem;padding:.65rem 1rem;font-size:.75rem;font-weight:750;line-height:1.2;transition:background-color .18s,color .18s;display:inline-flex}.contact-map__actions button{background:var(--white);color:var(--ink)}.contact-map__actions button:hover{background:var(--sage)}.contact-map__actions button:disabled{cursor:wait;opacity:.65}.contact-map__actions a{background:var(--ink);color:var(--white)}.contact-map__actions a:hover{background:var(--ink-soft)}.site-footer{border-top:1px solid var(--line);background:var(--paper);padding-block:3rem}.site-footer__grid{grid-template-columns:1fr auto;align-items:center;gap:3rem;display:grid}.site-footer__links{flex-wrap:wrap;justify-content:flex-end;gap:.5rem 1.4rem;font-size:.8rem;font-weight:650;display:flex}.site-footer__legal{color:var(--muted);margin-top:.65rem;font-size:.72rem}.site-footer__legal a{text-decoration:underline;text-decoration-color:color-mix(in srgb, currentColor 45%, transparent);text-underline-offset:.2rem}.legal-page{padding-block:clamp(5rem,10vw,9rem)}.legal-page__header{max-width:55rem}.legal-page__header h1,.not-found h1{margin-top:1.3rem;font-size:clamp(3.4rem,7vw,6.8rem)}.legal-page__header>p:last-child{color:var(--muted);margin-top:1.5rem}.legal-notice{background:var(--cream);border-left:3px solid #c8653b;max-width:55rem;margin-top:3rem;padding:1.2rem 1.4rem}.legal-copy{gap:3rem;max-width:55rem;margin-top:4rem;display:grid}.legal-copy section{border-top:1px solid var(--line);grid-template-columns:minmax(11rem,.35fr) minmax(0,1fr);gap:2rem;padding-top:2rem;display:grid}.legal-copy section>:not(h2){grid-column:2}.legal-copy h2{font-family:var(--font-body);letter-spacing:0;font-size:.92rem;font-weight:750}.legal-copy p{color:var(--muted)}.legal-copy a{text-underline-offset:.2rem;text-decoration:underline}.not-found{align-content:center;justify-items:start;min-height:65svh;padding-block:5rem;display:grid}.not-found>p:not(.eyebrow){max-width:34rem;color:var(--muted);margin-top:1.5rem}.not-found .button{margin-top:2.5rem}}@layer utilities{@media (width<=47rem){html{scroll-padding-top:7.5rem}.container{width:min(100% - 2rem,72rem)}.section{padding-block:3rem}.preview-ribbon{font-size:.62rem;line-height:1.4}.preview-ribbon__details{display:none}.site-header__inner{grid-template-columns:1fr;min-height:auto}.site-nav{border-top:1px solid var(--line);grid-column:1/-1;grid-template-columns:.65fr 1.35fr .85fr;gap:0;width:calc(100% + 2rem);margin-inline:-1rem;padding:0;font-size:.72rem;display:grid;overflow:visible}.site-nav a{white-space:nowrap;background-image:none;border:0;border-radius:0;justify-content:center;align-items:center;min-height:2.75rem;padding:.5rem .2rem;display:flex}.site-nav a+a{border-left:1px solid var(--line)}.site-nav a:hover{background-color:#d7e0d873;background-size:0}.logo-link{padding-block:.7rem}.hero__grid{grid-template-columns:1fr;gap:clamp(1.25rem,3svh,2rem);padding-block:clamp(1.75rem,4svh,2.5rem)}.hero h1{overflow-wrap:break-word;max-width:15ch;margin-top:.85rem;font-size:clamp(2.3rem,9.5vw,3.15rem)}.hero__lead{margin-top:1rem;line-height:1.55}.hero__actions{flex-wrap:nowrap;gap:.75rem;margin-top:1.25rem}.hero__actions .button{min-height:3rem;padding:.7rem 1.1rem}.hero__actions .text-link{white-space:nowrap;font-size:.8rem}.specialist-section{padding-block:2.5rem}.specialist-profile{grid-template-columns:1fr;justify-items:start;gap:1.5rem}.specialist-profile__media{width:min(100%,15.5rem)}.hygiene-section{grid-template-columns:1fr;gap:1.75rem}.hygiene-section__intro{position:static}.hygiene-section__intro h2{max-width:14ch}.hygiene-faq__item{gap:.75rem .9rem;padding-block:1.15rem}.services-section__inner{grid-template-columns:1fr;gap:1.5rem}.contact-section{padding:.5rem}.contact-panel{grid-template-columns:1fr;gap:2.25rem;padding:2.5rem 1.25rem}.contact-list__item{grid-template-columns:1fr;gap:.35rem}.contact-map__viewport,.contact-map__frame{height:15rem;min-height:15rem}.contact-map__bar{padding:1.2rem;display:grid}.contact-map__actions{grid-template-columns:1fr;justify-content:stretch;display:grid}.contact-map__actions button,.contact-map__actions a{width:100%}.site-footer__grid{grid-template-columns:1fr;align-items:start;gap:2rem}.site-footer__links{justify-content:start;display:grid}.legal-copy section{grid-template-columns:1fr}.legal-copy section>:not(h2){grid-column:auto}}@media (width<=47rem) and (height<=42rem){.hero__grid{gap:1rem;padding-block:1.25rem}.hero .eyebrow{font-size:.65rem}.hero h1{margin-top:.65rem;font-size:clamp(2rem,8.8vw,2.5rem)}.hero__lead{margin-top:.75rem;font-size:.94rem;line-height:1.45}.hero__actions{margin-top:1rem}.hero__actions .button{min-height:2.75rem;padding-block:.55rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}@media print{.preview-ribbon,.site-header,.site-footer{display:none}body{color:#000;background:#fff}}}
