*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:7rem}body{margin:0;-webkit-font-smoothing:antialiased}body:has(dialog[open]){overflow:hidden}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}img{display:block;max-width:100%;object-fit:cover}figure{margin:0}h1,h2,h3,p{margin:0}p{line-height:1.75}h1,h2,h3{font-weight:400;text-wrap:balance}button{border:0}em{font-weight:inherit}::selection{background:var(--accent);color:var(--paper)}:focus-visible{outline:.125rem solid currentColor;outline-offset:.375rem}[hidden]{display:none!important}.skip-link{position:fixed;top:0;left:1rem;transform:translateY(-150%);z-index:100;background:var(--ink);color:var(--paper);padding:1rem}.skip-link:focus{transform:none}.section-pad{padding:7rem max(2rem,calc((100vw - 80rem)/2))}.section-heading{margin-bottom:3.5rem}.section-description{max-width:35rem;margin-top:1.5rem}.eyebrow{font-size:.6875rem;letter-spacing:.15em;line-height:1.5;text-transform:uppercase;margin-bottom:1.5rem}.logo{display:flex;flex-direction:column;align-items:center;flex:none}.logo-main{font-size:1.8rem;letter-spacing:.14em;line-height:1.2;white-space:nowrap}.logo-flower{font-size:1rem;vertical-align:top;margin-left:.35rem}.logo-sub{font-size:.5rem;letter-spacing:.2em;margin-top:.35rem}.header{display:flex;align-items:center;justify-content:space-between;z-index:30;gap:1.5rem}.header nav:not(#mobile-nav),.nav-right{display:flex;align-items:center;gap:1.8rem}.header a,.header button{white-space:nowrap}.header .logo{flex-direction:column}.mobile-menu{display:none;background:none}.button,.nav-book{display:inline-flex;align-items:center;justify-content:space-between;gap:2rem;border:1px solid var(--ink);padding:1rem 1.5rem;border-radius:3rem;background:var(--ink);color:var(--paper);font-size:.8125rem;line-height:1.2;transition:background .3s,color .3s,border-color .3s}.button:hover,.nav-book:hover{background:var(--accent);border-color:var(--accent);color:var(--paper)}.arrow{display:inline-block;transition:transform .3s}.button:hover .arrow,.text-link:hover .arrow,.nav-book:hover .arrow{transform:translate(.15rem,-.15rem) rotate(5deg)}.text-link{display:inline-flex;align-items:center;gap:1.5rem;line-height:1.4;font-size:.8125rem;padding:.3rem 0;border-bottom:1px solid currentColor;background:none;text-align:left}.hero-actions{display:flex;gap:1.5rem;align-items:center;flex-wrap:wrap}.hero-copy>p:not(.pill){max-width:31rem}.pill{display:inline-block;border:1px solid var(--line);border-radius:3rem;padding:.55rem .85rem;font-size:.625rem;letter-spacing:.12em;line-height:1.2}.hero-copy h1{margin:1.7rem 0 1.6rem}.hero-actions{margin-top:2rem}.treatment-image{display:block;position:relative;width:100%;padding:0;background:var(--muted);overflow:hidden;text-align:left}.treatment-image img{width:100%;height:100%;transition:transform 1s cubic-bezier(.2,.7,.2,1);transform:scale(1.025)}.treatment-image:hover img{transform:scale(1)}.treatment-card h3{margin:1rem 0}.treatment-card>p,.card-body>p:not(.eyebrow){font-size:.875rem}.treatment-grid{display:grid;gap:1.5rem}.section-footnote{max-width:48rem;text-align:center;font-size:.75rem;margin:3rem auto 0;opacity:.8}.about-copy>p:not(.eyebrow){margin-bottom:1.5rem;max-width:32rem}.about-copy h2{margin-bottom:2rem}.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3rem}.steps h3{margin:1.5rem 0 1rem}.steps p{font-size:.875rem}.step-no{display:block}.faq{display:grid;grid-template-columns:1fr 1.2fr;gap:6rem}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{list-style:none;padding:1.6rem 0;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:2rem;font-size:.9375rem;line-height:1.5}summary::-webkit-details-marker{display:none}summary>span{font-size:1.5rem;transition:transform .3s;flex:none}details[open] summary>span{transform:rotate(45deg)}details>p{font-size:.875rem;max-width:38rem;padding:0 2rem 1.8rem 0}.visit{display:grid;grid-template-columns:1fr 1fr;gap:6rem}.visit h2{margin-bottom:2rem}.visit .button{margin-top:2rem}.visit-card{position:relative;padding:3rem;background:var(--muted);border:1px solid var(--line)}.visit-mark{position:absolute;right:2rem;top:2rem;font-size:3rem;opacity:.5}.visit-card address{font-style:normal;font-size:1.4rem;line-height:1.6;margin-bottom:1.5rem}.visit-info{margin-top:3rem;border-top:1px solid var(--line);padding-top:2rem;display:grid;gap:2rem}.visit-info small{display:block;font-size:.6rem;letter-spacing:.12em;margin-bottom:.8rem}.visit-info a{display:block;font-size:.875rem;overflow-wrap:anywhere;line-height:1.9}.visit-info p{font-size:.875rem}.fine-print{font-size:.6875rem;line-height:1.6;opacity:.75}footer{padding:4rem max(2rem,calc((100vw - 80rem)/2)) 1.5rem;background:var(--ink);color:var(--paper)}.footer-top{display:flex;justify-content:space-between;gap:3rem;padding-bottom:4rem}.footer-top .logo{align-items:flex-start}.footer-top p{font-size:.875rem}.footer-top>div:last-child{display:flex;flex-direction:column;gap:1rem;font-size:.875rem}.footer-bottom{padding-top:1.5rem;border-top:1px solid #ffffff33;display:flex;justify-content:space-between;gap:1.5rem;font-size:.625rem;line-height:1.7}dialog{color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:1.5rem;width:min(38rem,calc(100% - 2rem));max-height:90svh;padding:3rem;box-shadow:0 2rem 7rem #0003}dialog::backdrop{background:#2228;backdrop-filter:blur(.3rem)}dialog h2{font-size:3rem;margin-bottom:1.5rem}dialog>p:not(.eyebrow){font-size:.875rem;margin-bottom:1.8rem}.dialog-close{position:absolute;top:1rem;right:1rem;background:none;font-size:1.8rem;line-height:1;display:grid;place-items:center;width:2.75rem;height:2.75rem}form{display:grid;gap:1.2rem}form label{display:grid;gap:.6rem;font-size:.75rem}form input,form select,form textarea{min-width:0;width:100%;border:1px solid var(--line);padding:.9rem;background:transparent;color:var(--ink);border-radius:.3rem}form+ .text-link{margin-top:1.5rem}#treatment-content>img{height:15rem;width:100%;margin-bottom:2rem;border-radius:1rem}#treatment-content>p{margin-bottom:1.5rem;font-size:.9rem}#treatment-content .button{margin-top:.8rem}#mobile-nav{position:absolute;top:calc(100% + .5rem);right:0;left:0;background:var(--paper);color:var(--ink);padding:1.5rem;display:flex;flex-direction:column;align-items:flex-start;gap:1.5rem;border:1px solid var(--line);border-radius:1rem}.reveal.is-pending{opacity:0;transform:translateY(1.5rem)}.reveal.is-visible{opacity:1;transform:none;transition:opacity .8s ease,transform .9s cubic-bezier(.2,.7,.2,1)}
@media(max-width:70rem){.header nav:not(#mobile-nav){gap:1rem}.header .nav-right{gap:1rem}.section-pad{padding:5rem 2rem}.faq,.visit{gap:3rem}.header{gap:1rem}}
@media(max-width:55rem){.header nav:not(#mobile-nav),.nav-contact,.header .nav-right>a{display:none}.mobile-menu{display:inline-flex;align-items:center;gap:.75rem;padding:.5rem;font-size:.75rem}.header .nav-book{display:none}.header .logo{align-items:flex-start}.section-pad{padding:4rem 1.5rem}.faq,.visit{grid-template-columns:1fr;gap:2rem}.steps{gap:1.5rem}.footer-top{flex-wrap:wrap}.footer-bottom{flex-direction:column;gap:.6rem}.section-heading{margin-bottom:2.5rem}.visit-card{padding:2rem}.visit-mark{right:1.5rem;top:1rem}}
@media(max-width:38rem){.steps{grid-template-columns:1fr;gap:2rem}.steps article{border-top:1px solid var(--line);padding-top:1.5rem}.steps h3{margin-top:1rem}.hero-actions{gap:1.2rem}.footer-top{flex-direction:column;gap:2rem}.footer-top>div:last-child{gap:.75rem}dialog{padding:2.8rem 1.5rem 1.8rem}dialog h2{font-size:2.4rem}.section-pad{padding:3.8rem 1.25rem}footer{padding:3rem 1.25rem 1.5rem}.visit-card address{font-size:1.2rem}.visit-mark{font-size:2rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal.is-pending{opacity:1;transform:none}}

@font-face{font-family:Luxia;src:url('/assets/luxia.otf') format('opentype');font-display:swap}@font-face{font-family:Raleway;src:url('/assets/raleway.woff2') format('woff2');font-display:swap}
:root{--paper:#f3e9de;--ink:#514c40;--accent:#896155;--muted:#e8d8cc;--line:#b9ab99}body{font-family:Raleway,Arial,sans-serif;background:var(--paper);color:var(--ink)}body:before{content:'';position:fixed;inset:0;pointer-events:none;z-index:80;opacity:.045;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.7' filter='url(%23n)'/%3E%3C/svg%3E")}h1,h2,h3,.logo-main{font-family:Luxia,Georgia,serif}h1{font-size:clamp(3.25rem,4.6vw,5rem);line-height:1.05;letter-spacing:.035em}h2{font-size:clamp(2.5rem,3.4vw,3.5rem);line-height:1.16;letter-spacing:.025em}h3{font-size:1.75rem;line-height:1.2;letter-spacing:.015em}em{font-style:normal;color:var(--accent)}.header{position:relative;padding:1.25rem max(2rem,calc((100vw - 80rem)/2));border-bottom:1px solid var(--ink);min-height:6.5rem}.header nav a,.nav-right>a{font-family:Luxia,serif;font-size:.9rem;letter-spacing:.02em}.header .logo{position:absolute;left:50%;transform:translateX(-50%)}.nav-book{padding:.8rem 1.15rem;gap:1.4rem}.logo-main{font-size:1.65rem}.hero{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--ink);min-height:43rem}.hero-copy{padding:6.7rem 4rem 3rem max(2rem,calc((100vw - 80rem)/2));align-self:center}.hero-copy>p:not(.pill){font-size:1rem}.hero-copy .pill{background:#c6b8a580;border:0}.hero-location{margin-top:4.5rem;font-size:.5625rem;letter-spacing:.12em;display:flex;align-items:center;gap:1rem}.hero-location>span{font-size:1.8rem}.hero-visual{position:relative;border-left:1px solid var(--ink);padding:2rem 4.5rem 2rem;display:flex;flex-direction:column;justify-content:space-between;gap:2rem}.hero-visual-top,.hero-image-caption{display:flex;justify-content:space-between;font-size:.5625rem;letter-spacing:.1em;gap:1rem}.hero-portrait{width:100%;max-width:28rem;aspect-ratio:4/4.6;margin:auto}.arch{border-radius:50% 50% 0 0;border:1px solid var(--ink);overflow:hidden}.hero-portrait img{width:100%;height:100%;object-position:50% 34%}.vertical-note{position:absolute;left:2.6rem;bottom:5rem;writing-mode:vertical-rl;transform:rotate(180deg);font-size:.625rem;letter-spacing:.23em}.about{display:grid;grid-template-columns:1.1fr 1fr;gap:5rem;border-bottom:1px solid var(--line);align-items:center}.arched-trio{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.3rem}.arched-trio figure:nth-child(2){margin-top:4rem}.arched-trio img{width:100%;aspect-ratio:3/4.5;border-radius:50% 50% 0 0;border:1px solid var(--ink)}.arched-trio figcaption{font-family:Luxia,serif;font-size:.625rem;letter-spacing:.05em;margin-top:.8rem}.about-copy{max-width:32rem}.treatments{border-bottom:1px solid var(--line)}.treatments .section-heading{text-align:center;max-width:44rem;margin-inline:auto}.treatments .section-description{margin-inline:auto}.treatment-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:1.8rem}.treatment-image{aspect-ratio:3/3.8}.treatment-image>span{position:absolute;bottom:1rem;right:1rem;background:var(--paper);border-radius:50%;width:2.5rem;height:2.5rem;display:grid;place-items:center;transition:background .3s}.treatment-image:hover>span{background:var(--accent);color:var(--paper)}.treatment-card h3{font-size:1.6rem}.card-topline{margin-top:1.2rem;display:flex;justify-content:space-between;font-size:.5625rem;letter-spacing:.1em}.treatment-card>p{margin-bottom:1.5rem;line-height:1.7}.treatment-card{display:flex;flex-direction:column}.treatment-card .text-link{margin-top:auto;align-self:flex-start}.feature{display:grid;grid-template-columns:1fr 1fr;min-height:39rem;background:var(--ink);color:var(--paper)}.feature-photo{overflow:hidden}.feature-photo img{width:100%;height:100%;max-height:44rem;object-position:50% 28%;transition:transform 1s;transform:scale(1.025)}.feature-photo:hover img{transform:scale(1)}.feature-copy{padding:6rem max(2rem,calc((100vw - 80rem)/2)) 6rem 5rem;align-self:center;position:relative}.feature-copy h2{font-size:clamp(2rem,3.2vw,3.2rem);margin-bottom:2rem}.feature-copy em{color:#d1b6a7}.feature-copy>p:not(.eyebrow){max-width:28rem;margin-bottom:2rem}.feature-copy .button{background:var(--paper);color:var(--ink);border-color:var(--paper)}.feature-flower{position:absolute;right:3rem;bottom:1.5rem;font-size:4rem;opacity:.25}.ritual{border-bottom:1px solid var(--line)}.steps{padding-top:1rem}.step-no{font-family:Luxia,serif;font-size:3.5rem;color:var(--accent)}.steps article{border-top:1px solid var(--line);padding-top:1.5rem}.steps h3{font-size:1.65rem}.faq{border-bottom:1px solid var(--line)}.visit{background:#eadccf}.visit-card{background:#f3e9de99}.visit em{color:var(--accent)}footer em{color:inherit}.footer-top .logo-main{font-size:2rem}
@media(min-width:100rem){.hero-copy{padding-left:max(3rem,calc((100vw - 80rem)/2))}.hero-visual{padding-right:max(3rem,calc((100vw - 80rem)/2))}}
@media(max-width:74rem){.header{padding-inline:2rem}.header nav{gap:1rem!important}.hero-copy{padding-left:2rem;padding-right:2rem}.hero-visual{padding-inline:3rem}.vertical-note{left:1.2rem}.about{gap:3rem}.feature-copy{padding:4rem 2rem}.treatment-grid{gap:1rem}.treatment-card h3{font-size:1.4rem}}
@media(max-width:55rem){.header{padding:1rem 1.5rem;min-height:5rem}.header .logo{position:static;transform:none;align-items:flex-start}.hero{min-height:0}.hero-copy{padding:4rem 1.5rem 3rem}h1{font-size:2.8rem}.hero-visual{padding:1.5rem;gap:2rem}.vertical-note{display:none}.hero-visual-top{font-size:.45rem}.hero-image-caption{font-size:.45rem}.hero-location{margin-top:3rem;font-size:.5rem}.hero-actions{align-items:flex-start;flex-direction:column}.hero-actions .button{font-size:.75rem;padding:.9rem 1.2rem;gap:1rem}.about{grid-template-columns:1fr;gap:3rem}.arched-trio{max-width:40rem}.treatment-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:3rem 1.5rem}.feature{min-height:30rem}.feature-copy h2{font-size:2.1rem}.feature-copy{padding:3rem 1.5rem}.feature-copy .button{font-size:.7rem;gap:1rem}.steps h3{font-size:1.4rem}}
@media(max-width:38rem){.hero{display:flex;flex-direction:column}.hero-copy{padding:3rem 1.25rem}.hero-copy h1{font-size:3.3rem}.hero-actions{flex-direction:row;align-items:center;gap:1rem}.hero-location{margin-top:2.5rem}.hero-visual{border-left:0;border-top:1px solid var(--line);padding:1.25rem 2.5rem 1.5rem}.hero-portrait{max-width:20rem;aspect-ratio:4/4.2}.hero-visual-top{font-size:.5rem}.hero-image-caption{font-size:.5rem}.about{padding-top:3rem}.arched-trio{gap:.8rem}.arched-trio figcaption{font-size:.5rem}.arched-trio figure:nth-child(2){margin-top:2rem}.treatment-grid{gap:2rem .9rem}.treatment-card h3{font-size:1.15rem}.treatment-card>p{font-size:.75rem}.treatment-card .text-link{font-size:.65rem;gap:.6rem}.treatment-image>span{width:2rem;height:2rem;bottom:.6rem;right:.6rem}.feature{grid-template-columns:1fr}.feature-photo{height:25rem}.feature-copy{padding:3rem 1.25rem}.feature-copy h2{font-size:2.5rem}h2{font-size:2.6rem}.faq{gap:1rem}}

.footer-brand-copy{display:flex;flex-direction:column;align-items:flex-start;gap:1.4rem}.footer-socials{display:flex;align-items:center;gap:.75rem}.footer-top .footer-socials a{display:grid;place-items:center;width:2.3rem;height:2.3rem;border:1px solid #ffffff66;border-radius:50%;transition:background .25s,color .25s}.footer-socials svg{width:1rem;height:1rem}.footer-top .footer-socials a:hover{background:var(--paper);color:var(--ink)}.studio-signature{white-space:nowrap}.studio-signature:hover{text-decoration:underline;text-underline-offset:.2rem}

/* Review: framed editorial sections and consistent secondary actions. */
.v1 .button-secondary{background:transparent;color:var(--ink);border:1px solid var(--ink);border-radius:3rem;padding:1rem 1.5rem;gap:1.5rem;font-size:.8125rem;line-height:1.2;text-align:left}
.v1 .button-secondary:hover{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.v1 .about-single{width:100%;display:flex;justify-content:center}.v1 .about-single figure{width:min(100%,29rem);aspect-ratio:4/4.7}.v1 .about-single img{width:100%;height:100%;object-position:50% 30%}
.v1 .treatment-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:3rem 2rem}
.v1 .treatment-image{aspect-ratio:4/3.8;border-radius:50% 50% 0 0}
.v1 .treatment-card h3{font-size:2rem;margin-top:1.5rem}.v1 .treatment-card>p{max-width:34rem;font-size:.9375rem}.v1 .treatment-card .button-secondary{margin-top:auto;align-self:flex-start}
.v1 #treatments,.v1 #ritual,.v1 .faq,.v1 #visit{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);position:relative}
.v1 #treatments:before,.v1 #ritual:before{content:'';position:absolute;top:0;bottom:0;left:50%;border-left:1px solid var(--ink);pointer-events:none;z-index:0}
.v1 #treatments>.section-heading,.v1 #ritual>.section-heading{position:relative;background:var(--paper);max-width:none;margin:0;padding:0 0 3.5rem}
.v1 #ritual>.section-heading{text-align:center;margin-inline:auto}
.v1 #treatments .treatment-grid,.v1 #ritual .steps{position:relative}
.v1 #treatments .treatment-grid{column-gap:4rem}.v1 #ritual:before{display:none}
.v1 .about{border-bottom:0}.v1 .feature{border-bottom:0}.v1 .ritual{border-bottom:0!important}
.v1 .faq{gap:0;padding-top:0;padding-bottom:0}.v1 .faq>.section-heading{margin:0;padding:6rem 3rem 6rem 0}.v1 .faq>.faq-list{border-top:0;border-left:1px solid var(--ink);padding:4.5rem 0 4.5rem 3rem}.v1 .faq details{border-color:var(--line)}
.v1 #visit{border-top:0;gap:0;padding-top:0;padding-bottom:0}.v1 .visit-intro{padding:6rem 3rem 6rem 0}.v1 .visit-card{border:0;border-left:1px solid var(--ink);padding:6rem 0 6rem 3rem;background:transparent}.v1 .visit-mark{top:3rem;right:0}
.v1 .feature .button-secondary{color:var(--paper);border-color:var(--paper)}.v1 dialog .button-secondary{width:100%;margin-top:1.5rem;justify-content:center}
@media(max-width:55rem){.v1 #treatments .treatment-grid{column-gap:2rem}.v1 .faq>.section-heading{padding:4rem 0 2rem}.v1 .faq>.faq-list{border-left:0;padding:0 0 4rem}.v1 .visit-intro{padding:4rem 0 2rem}.v1 .visit-card{border-left:0;border-top:1px solid var(--ink);padding:3rem 0 4rem}.v1 .visit-mark{top:2rem}.v1 .treatment-card h3{font-size:1.7rem}}
@media(max-width:38rem){.v1 .treatment-grid{grid-template-columns:1fr;gap:2.5rem}.v1 #treatments:before{display:none}.v1 .treatment-image{aspect-ratio:4/4}.v1 .treatment-card h3{font-size:2rem}.v1 .treatment-card>p{font-size:.9rem}.v1 .about-single figure{max-width:23rem}.v1 .hero-actions .button-secondary{font-size:.75rem;padding:.9rem 1.2rem}.v1 .faq>.section-heading{padding-top:3.8rem}}

.v1 .card-pricing{margin:0 0 1.5rem;padding-top:1.1rem;border-top:1px solid var(--line)}.v1 .card-pricing>span{display:block;font-size:1.05rem;margin-bottom:.5rem}.v1 .card-pricing p{font-size:.8rem}.v1 .card-pricing strong{font-weight:500}.v1 .card-pricing small{font-size:.6875rem;line-height:1.6;display:block;margin-top:.3rem;opacity:.8}

/* Consistent directional SVG and published treatment prices. */
.arrow{display:inline-flex;align-items:center;justify-content:center;width:1.125rem;height:1.125rem;flex:none;vertical-align:middle;transition:transform .3s cubic-bezier(.2,.7,.2,1)}.arrow svg{display:block;width:100%;height:100%}.button:hover .arrow,.nav-book:hover .arrow,.text-link:hover .arrow{transform:translateX(.25rem)}.treatment-image:hover .arrow{transform:translateX(.15rem)}
.v1 .card-pricing{padding-top:1.2rem;margin:1.5rem 0;border-top:1px solid var(--line)}.v1 .card-pricing .priced-service{font-size:.75rem;line-height:1.6;max-width:30rem;margin-bottom:.85rem;opacity:.85}.v1 .price-line{display:flex;justify-content:space-between;gap:1rem;align-items:center}.v1 .price-line strong{font-size:1.55rem;font-weight:400}.v1 .price-line>span{font-size:.75rem;white-space:nowrap}
.v1 #treatments:before{display:none}

.service-tools{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:1.5rem}.service-tools--tabs{margin-top:.5rem}.service-categories{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.service-categories button{background:transparent;color:var(--ink);border:1px solid var(--line);border-radius:3rem;font-size:.75rem;line-height:1.3;padding:.9rem 1.2rem;transition:background .25s,color .25s}.service-categories button[aria-selected=true],.service-categories button[aria-pressed=true],.service-categories button:hover{background:var(--ink);color:var(--paper);border-color:var(--ink)}.service-results{font-size:.7rem;letter-spacing:.04em;margin-bottom:1.8rem;opacity:.75}.service-link{display:flex;flex-direction:column;text-decoration:none;transition:box-shadow .3s,border-color .3s;background:var(--paper);border:1px solid var(--line);overflow:hidden}.service-link:hover{box-shadow:0 .6rem 2rem #39442b13;border-color:var(--ink)}.service-link:hover img{transform:scale(1)}.service-link .card-body{display:flex;flex-direction:column;flex:1}.service-link .card-pricing{margin-top:auto!important;padding-top:1.5rem!important}.service-link .card-body>p{margin-bottom:1.5rem}.service-link .card-body>.button{align-self:flex-start;margin-top:0}.service-link:hover .button{background:var(--accent);border-color:var(--accent);color:var(--paper)}.service-link:hover .arrow{transform:translateX(.2rem)}.service-link:focus-visible{outline-offset:.35rem}.v1 .service-link{border-color:var(--ink);border-radius:18rem 18rem .5rem .5rem;background:#ffffff15}.v1 .service-link .treatment-image{border:0;border-radius:0;aspect-ratio:4/3.8}.v1 .service-link .card-body{padding:2rem}.v1 .service-link h3{margin-top:0;font-size:1.8rem}.v1 .service-link .image-arrow{position:absolute;bottom:1rem;right:1rem;width:2.5rem;height:2.5rem;display:grid;place-items:center;background:var(--paper);border-radius:50%}.v1 .service-link .image-arrow>.arrow{width:1.125rem;height:1.125rem;display:inline-flex;background:none}.v1 .service-link .treatment-image>span{top:auto;left:auto;transform:none}.v1 .service-link .treatment-image>span.image-arrow{bottom:1rem;right:1rem}.v1 .catalog-header>.section-heading{background:var(--paper);text-align:center;margin-bottom:3rem}.v1 .catalog-header .section-description{margin-inline:auto}.v2 .service-link h3{font-size:2rem}.v2 .service-link .treatment-image{aspect-ratio:1.3}.v2 .service-link .image-tag{height:auto;width:auto;max-width:calc(100% - 2rem)}
@media(max-width:55rem){.service-categories{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;max-width:100%;padding:.3rem .1rem 1rem}.service-categories button{flex:none;white-space:nowrap;font-size:.7rem;padding:.8rem 1rem}.v1 .service-link .card-body{padding:1.5rem}.v1 .service-link h3{font-size:1.5rem}.v2 .service-link h3{font-size:1.7rem}}
@media(max-width:38rem){.v1 .service-link{border-radius:12rem 12rem .5rem .5rem}.v1 .service-link h3{font-size:1.6rem}.v2 .service-link h3{font-size:2rem}.v1 .service-link .treatment-image{aspect-ratio:1}.service-results{margin-bottom:1.3rem}}

.contact-extra{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:3rem;width:100%;border-top:1px solid var(--line);padding-top:3rem;margin-top:3rem}.contact-form-wrap h3{margin-bottom:2rem;font-size:2rem}.contact-name-email{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.contact-extra form .button{justify-self:start;margin:0}.contact-extra form label{font-size:.75rem}.clinic-map{display:flex;flex-direction:column;overflow:hidden;min-height:28rem;border:1px solid var(--line)}.clinic-map iframe{display:block;border:0;width:100%;flex:1;min-height:25rem}.map-address{padding:1rem;font-size:.75rem;background:var(--paper);line-height:1.6}.footer-certification{width:6.5rem;height:6.7rem;object-fit:contain;align-self:flex-start;background:white;border-radius:.5rem;padding:.2rem;flex:none}.v1 .contact-extra{border-color:var(--ink);padding:3rem 0 5rem}.v1 .visit-intro .button{margin-bottom:1rem}.v2 .clinic-map{border-radius:1.5rem}.v2 .visit-card .button-secondary{background:transparent;color:var(--ink);border-color:var(--ink);margin-top:0}.v2 .visit-card .button-secondary:hover{background:var(--ink);color:var(--paper)}
@media(max-width:55rem){.contact-extra{grid-template-columns:1fr;gap:2rem;margin-top:2rem}.clinic-map{min-height:24rem}.clinic-map iframe{min-height:22rem}.v1 .contact-extra{padding-bottom:3.5rem}.footer-certification{width:5.5rem;height:5.7rem}}
@media(max-width:38rem){.contact-name-email{grid-template-columns:1fr}.contact-extra{padding-top:2rem}.contact-form-wrap h3{font-size:1.6rem}.footer-top{gap:2rem}.footer-certification{align-self:flex-start}}

.footer-links{display:flex;flex-direction:column;gap:1rem;font-size:.875rem}

.v1 .service-categories{justify-content:center}.v1 .service-results{text-align:center}.v2 .service-tools{display:grid;grid-template-columns:minmax(12rem,1fr) minmax(0,2.8fr);gap:1.5rem;align-items:center}.v2 .service-tools .search-label{width:100%;max-width:none}.v2 .service-categories{justify-content:flex-end;gap:.45rem}.v2 .service-categories button{padding:.85rem .9rem}.v2 .care-path .section-heading h2{font-size:clamp(3rem,4.4vw,4.6rem)}
@media(max-width:65rem){.v2 .service-tools{grid-template-columns:1fr}.v2 .service-categories{justify-content:flex-start}}
@media(max-width:55rem){.v1 .service-categories{justify-content:flex-start}}

/* Full image hero study: fill the right column from edge to edge. */
.v1 .hero-visual--full{padding:0;gap:0;overflow:hidden;align-self:stretch}.v1 .hero-visual--full>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 34%}
@media(max-width:38rem){.v1 .hero-visual--full{min-height:30rem;aspect-ratio:4/5}}
