@import url('/assets/fonts.css');
:root{--plum:#3f3051;--deep:#2c203b;--lavender:#bea4ff;--paper:#faf8fd;--lilac:#eee8f6;--ink:#30263b;--muted:#665b71;--line:#ded6e8;--orange:#b04410;--white:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.7 Inter,Arial,sans-serif}a{color:inherit;text-underline-offset:5px}a:hover{text-decoration-color:var(--plum)}a:focus-visible,summary:focus-visible,button:focus-visible{outline:3px solid #9556ed;outline-offset:5px}img{max-width:100%;height:auto;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Montserrat,Arial,sans-serif;line-height:1.2;font-weight:500;letter-spacing:-.035em}h2{font-size:clamp(27px,3vw,42px)}h3{font-size:20px}p{margin-bottom:1.2em}.skip{position:fixed;z-index:20;left:20px;top:-100px;padding:12px;background:white}.skip:focus{top:10px}.topbar{height:34px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;background:var(--plum);color:white;font-size:11px;letter-spacing:.04em}.topbar a{text-decoration:none}header{min-height:113px;padding:22px 5%;display:flex;align-items:center;justify-content:space-between;gap:28px;background:white;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:17px;text-decoration:none;flex-shrink:0}.brand img{width:160px}.brand>span{font-size:10px;font-weight:600;letter-spacing:.18em;border-left:1px solid var(--line);padding-left:17px}header nav{display:flex;gap:26px}header nav a{text-decoration:none;font-size:13px;font-weight:500}header nav a:hover,header nav a[aria-current]{text-decoration:underline}.official{font-size:12px;white-space:nowrap}.mobile-menu{display:none}main{max-width:1600px;margin:auto}.hero{display:grid;grid-template-columns:1.1fr 1fr;min-height:590px;overflow:hidden}.hero-copy{padding:76px 7% 42px 9%;position:relative;z-index:1}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.18em;font-weight:600;color:var(--muted);margin-bottom:27px}.hero h1{font-size:clamp(40px,4.5vw,68px);max-width:690px;line-height:1.14;margin-bottom:30px}.hero h1>span{display:block;color:#7852a8;font-weight:400}.hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.button{display:inline-flex;padding:15px 23px;background:var(--plum);color:white;text-decoration:none;font-size:13px;font-weight:500;align-items:center;justify-content:center;min-height:50px;border-radius:2px;transition:background .15s}.button:hover{background:#5c4278}.text-link{font-size:13px;font-weight:500}.hero-address{margin-top:47px;border-top:1px solid var(--line);padding-top:21px;display:flex;gap:32px}.hero-address p{font-size:13px;margin:0}.small-label{font-size:10px;letter-spacing:.13em;font-weight:600}.hero-art{position:relative;background:var(--lilac);padding:63px 8% 52px;display:flex;align-items:center;justify-content:center;flex-direction:column;isolation:isolate;overflow:hidden}.hero-art:before{content:"";position:absolute;inset:35px;border:1px solid #cbbce0;border-radius:50% 50% 0 0;z-index:-1}.portrait-ring{padding:14px;border-radius:50% 50% 4px 4px;background:#d7c3fa;width:min(100%,365px);z-index:1}.portrait-ring img{width:100%;border-radius:50% 50% 2px 2px;aspect-ratio:1.05;object-fit:cover}.portrait-caption{margin-top:23px;z-index:1;text-align:center}.portrait-caption>span{display:block;font-family:Montserrat,sans-serif;font-size:21px}.portrait-caption small{font-size:12px;color:var(--muted)}.decorative-word{position:absolute;bottom:-41px;left:20px;right:20px;text-align:center;z-index:-1;font-family:Montserrat,sans-serif;font-size:140px;font-weight:600;letter-spacing:.04em;color:#e0d5ed;line-height:1}.source-strip{display:flex;padding:0 5%;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:white;flex-wrap:wrap}.source-strip a{display:flex;gap:18px;align-items:center;padding:25px 28px;text-decoration:none;border-right:1px solid var(--line);flex:1;min-width:195px}.source-strip a:first-child{padding-left:0}.source-strip strong{font-family:Montserrat,sans-serif;font-size:33px;font-weight:500;line-height:1.1}.source-strip span{font-size:12px}.source-strip span:last-child{margin-left:auto}.section{padding:76px 5%}.section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:18px;margin-bottom:33px}.section-heading h2{margin:0}.section-heading>a{font-size:13px;white-space:nowrap}.review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:start}.review-card{background:white;padding:29px;border:1px solid var(--line);border-top:3px solid #c8b2e4;overflow-wrap:anywhere;min-width:0}.review-top{display:flex;gap:12px;align-items:center;justify-content:space-between;margin-bottom:22px}.source-pill{font-size:10px;text-transform:uppercase;letter-spacing:.11em;font-weight:600;color:var(--muted)}.rating{font-size:13px;font-weight:600;white-space:nowrap}.rating>span{color:var(--orange);margin-left:4px}.review-card h3{font-family:Inter,sans-serif;font-weight:600;font-size:16px;letter-spacing:-.02em;line-height:1.5;margin-bottom:4px}.review-card h3 a{text-decoration:none}.review-date{color:var(--muted);font-size:11px;margin-bottom:18px}.review-text{font-size:14px;line-height:1.8;white-space:pre-wrap}.review-bottom{display:flex;align-items:baseline;justify-content:space-between;gap:14px;border-top:1px solid var(--line);padding-top:17px;margin-top:23px;font-size:10px;color:var(--muted)}.source-link{font-size:11px;flex-shrink:0}.review-bottom>span{text-align:right}.reply{border-left:2px solid var(--line);padding-left:15px;margin-top:20px}.reply summary{font-size:12px;cursor:pointer;margin-bottom:10px}.reply .review-text{font-size:13px}.treatment-section{background:var(--lilac);display:grid;grid-template-columns:1fr 2fr;gap:55px}.treatment-section h2{margin-bottom:28px}.service-list>a{display:flex;gap:20px;align-items:center;border-bottom:1px solid #cebedf;padding:24px 0;text-decoration:none}.service-list>a:first-child{border-top:1px solid #cebedf}.service-list h3{margin:0;line-height:1.4}.service-list .number{font-size:11px;color:var(--muted)}.service-list>a>span:last-child{margin-left:auto;font-size:20px}.service-list a:hover h3{text-decoration:underline;text-underline-offset:6px}.location-band{padding:70px 5%;display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:50px;background:white}.location-band h2{margin-bottom:20px}.location-band .eyebrow{margin-bottom:20px}.location-band .small-label{margin-top:5px;color:var(--muted)}.location-band p{font-size:14px}.breadcrumbs{padding:28px 5% 0;display:flex;gap:13px;font-size:11px;flex-wrap:wrap;color:var(--muted)}.page-intro{padding:55px 5% 48px;max-width:1150px}.page-intro h1{font-size:clamp(30px,4vw,53px);line-height:1.2;margin:0}.page-intro h1>span{display:block;color:#7852a8;font-size:.75em;margin-top:10px}.page-intro .eyebrow{margin-bottom:21px}.intro-text{margin-top:20px;color:var(--muted);max-width:750px}.archive-layout{padding:0 5% 75px;display:grid;grid-template-columns:210px minmax(0,1fr);gap:42px}.archive-layout aside{padding-top:34px}.archive-layout aside h2{font:600 11px/1.4 Inter,sans-serif;letter-spacing:.1em;text-transform:uppercase}.archive-layout aside>a{display:block;padding:11px 0;font-size:13px;text-decoration:none;border-bottom:1px solid var(--line)}.aside-address{margin-top:37px;font-size:13px}.aside-address a{font-size:12px}.archive-layout .review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.archive-count{font-size:12px;color:var(--muted);margin-bottom:20px}.pagination{display:flex;gap:8px;flex-wrap:wrap;margin-top:30px}.pagination a{display:flex;align-items:center;justify-content:center;min-width:43px;min-height:43px;border:1px solid var(--line);text-decoration:none;font-size:13px}.pagination a[aria-current]{background:var(--plum);color:white}.review-detail{max-width:900px;padding:0 5% 85px}.review-detail .review-card{padding:38px}.review-detail .review-text{font-size:16px}.detail-nav{display:flex;gap:25px;flex-wrap:wrap;margin-top:28px;font-size:13px}.profile{padding:0 5% 85px;display:grid;grid-template-columns:1fr 1.5fr;gap:70px;align-items:start}.profile-image{padding:30px;background:var(--lilac)}.profile-image img{width:100%}.profile p{font-size:15px}.profile-links{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:30px;font-size:13px}.location-layout{padding:0 5% 85px;display:grid;grid-template-columns:1fr 1fr;gap:60px}.address-panel{padding:42px;background:var(--lilac)}.address-large{font-size:23px;font-family:Montserrat,sans-serif;line-height:1.5}.location-details{padding-top:20px}.location-details h2{font-size:25px}.location-details dl{display:grid;grid-template-columns:1fr 1fr;font-size:14px;margin-bottom:25px;gap:13px}.location-details dd{margin:0}.location-details .spaced{margin-top:38px}.location-details p{font-size:14px}.location-details>a{font-size:12px}.no-top{padding-top:0}.service-overview{padding:0 5% 45px;max-width:950px}.service-overview p{font-size:19px;line-height:1.8}.service-overview>div{display:flex;align-items:center;gap:28px;flex-wrap:wrap}.sources-list{padding:0 5% 80px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}.sources-list article{padding:30px;background:white;border:1px solid var(--line)}.sources-list h2{font-size:25px}.sources-list p{font-size:13px;color:var(--muted)}.sources-list a{display:block;font-size:14px;margin-top:12px}footer{background:var(--plum);color:white;padding:55px 5% 22px;display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:40px;font-size:12px}footer .footer-name{font-family:Montserrat,sans-serif;font-size:19px;max-width:300px;line-height:1.4}footer h2{font:500 12px/1.4 Inter,sans-serif;letter-spacing:0;margin-bottom:23px;color:#d8c8ef}footer>div>a{display:block;margin-bottom:10px;text-decoration:none}footer a:hover{text-decoration:underline}.footer-end{grid-column:1/-1;border-top:1px solid #796589;padding-top:20px;display:flex;justify-content:space-between;gap:20px;font-size:10px;color:#d8c8ef}
@media(min-width:1600px){header,.topbar,footer{padding-left:max(5%,calc((100vw - 1440px)/2));padding-right:max(5%,calc((100vw - 1440px)/2))}}
@media(max-width:1150px){header{gap:20px}header nav{gap:17px}.brand img{width:145px}.brand{gap:10px}.brand>span{padding-left:10px}.official{display:none}.hero-copy{padding-top:55px}.hero-art{padding:40px 8%}.hero{min-height:530px}.review-card{padding:23px}.hero-actions{gap:20px}}
@media(max-width:800px){header{min-height:93px;padding:17px 5%;position:relative}header>nav{display:none}.brand img{width:150px}.mobile-menu{display:block}.mobile-menu summary{cursor:pointer;font-size:13px;list-style:none;padding:12px}.mobile-menu summary:after{content:' +';margin-left:8px}.mobile-menu[open] summary:after{content:' −'}.mobile-menu nav{position:absolute;left:0;right:0;top:100%;padding:20px 5%;background:white;z-index:10;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:15px}.mobile-menu nav a{padding:7px}.hero{grid-template-columns:1.05fr 1fr;min-height:490px}.hero-copy{padding:43px 8%}.hero h1{font-size:37px}.hero-actions .text-link{font-size:12px}.hero-address{display:block;margin-top:28px}.hero-address p{margin-top:8px}.hero-art{padding:30px 7%}.hero-art:before{inset:20px}.portrait-caption>span{font-size:18px}.portrait-caption small{font-size:10px}.decorative-word{font-size:90px;bottom:-22px}.section{padding:50px 5%}.review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.treatment-section{grid-template-columns:1fr;gap:20px}.treatment-section h2{margin-bottom:15px}.location-band{gap:30px;grid-template-columns:1.2fr 1fr}.location-band>div:last-child{grid-column:1/-1;border-top:1px solid var(--line);padding-top:20px}.archive-layout{grid-template-columns:1fr;gap:25px}.archive-layout aside{padding-top:0;display:flex;flex-wrap:wrap;gap:10px}.archive-layout aside>h2,.aside-address{display:none}.archive-layout aside>a{border:1px solid var(--line);padding:8px 13px;font-size:12px}.page-intro{padding-top:38px}.profile{gap:35px;grid-template-columns:1fr 1.3fr}.location-layout{gap:30px}.address-panel{padding:25px}.address-large{font-size:20px}.location-details dl{grid-template-columns:1fr;gap:5px}.location-details dd{margin-bottom:10px}.no-top{padding-top:0}}
@media(max-width:560px){.topbar{font-size:10px}.hero{grid-template-columns:1fr}.hero-copy{padding:40px 6%}.hero h1{font-size:44px;max-width:430px}.hero .eyebrow{font-size:10px;margin-bottom:22px}.hero-address{display:flex;gap:22px;margin-top:29px}.hero-address p{margin:0}.hero-art{padding:33px 14% 28px}.hero-art:before{inset:18px 35px}.portrait-ring{max-width:265px}.portrait-caption{margin-top:14px}.decorative-word{font-size:115px;bottom:-26px}.source-strip{padding:0 5%}.source-strip a,.source-strip a:first-child{padding:20px 12px;min-width:45%;gap:12px}.source-strip strong{font-size:27px}.source-strip span{font-size:10px}.source-strip a:nth-child(even){border-right:0}.source-strip a:first-child{padding-left:0}.review-grid,.archive-layout .review-grid{grid-template-columns:1fr}.review-card{padding:25px}.section-heading{margin-bottom:25px}.section-heading>a{font-size:11px}.location-band{grid-template-columns:1fr;padding:45px 6%;gap:25px}.location-band>div:last-child{grid-column:auto}.location-band h2{margin-bottom:17px}.profile,.location-layout,.sources-list{grid-template-columns:1fr}.profile-image{max-width:400px}.profile{gap:30px}.page-intro h1{font-size:33px}.page-intro{padding-bottom:30px}.review-detail .review-card{padding:25px}.review-detail .review-text{font-size:14px}.service-overview p{font-size:16px}.service-list h3{font-size:18px}.service-list>a{gap:13px}.service-list .number{font-size:10px}.address-panel{padding:30px}.location-details dl{grid-template-columns:1fr 1fr;font-size:13px}.sources-list article{padding:25px}footer{grid-template-columns:1fr 1fr;gap:30px;padding-top:40px}footer>div:first-child{grid-column:1/-1}.footer-end{flex-direction:column;gap:10px}.hero-actions{gap:21px}.button{padding:14px 19px;font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.source-context{font-size:12px;color:var(--muted);line-height:1.6}.collection-date{margin:0 6% 25px;color:var(--muted);font-size:13px}.source-strip{flex-wrap:wrap}
.mirror-links{font-size:12px;margin:14px 0}
