:root{--ink:#292c2c;--muted:#626461;--bronze:#826446;--line:#e0e0dc;--surface:#f5f5f2;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65;background:var(--white)}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid var(--bronze);outline-offset:5px}a:hover{color:var(--bronze)}svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.icon-defs{position:absolute;width:0;height:0;overflow:hidden}.wrap{width:min(1120px,calc(100% - 96px));margin:auto}.header{border-bottom:1px solid var(--line)}.header-inner{min-height:106px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:18px;font-size:17px;font-weight:600}.brand small{display:block;font-size:12px;font-weight:400;color:var(--muted)}.monogram{font:36px Georgia,serif;letter-spacing:-3px;border-right:1px solid var(--line);padding-right:20px}.monogram span{color:var(--bronze)}nav{display:flex;gap:30px;font-size:14px}.header-phone{font-size:14px;font-weight:600}.hero{padding-top:70px;padding-bottom:76px;display:grid;grid-template-columns:1.25fr 1fr;gap:76px;align-items:center}.eyebrow{font-size:12px;letter-spacing:1.8px;color:var(--bronze);font-weight:600;margin:0 0 20px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.12;letter-spacing:-1.8px}h1{font-size:62px;margin-bottom:12px}.qualification{font-size:19px;color:var(--muted);margin-bottom:30px}.hero-services{border-left:2px solid #b59979;padding-left:18px;margin-bottom:23px}.hero-services p{margin:2px 0;font-size:18px}.intro{color:var(--muted);margin-bottom:26px}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:56px;padding:14px 25px;background:var(--bronze);color:#fff;font-size:16px;font-weight:600;border-radius:3px}.button:hover{background:#6c5036;color:white}.booking-note{font-size:12px;line-height:1.6;color:var(--muted);max-width:425px;margin:13px 0 0}.portrait{margin:0;position:relative;padding:0 0 23px 23px}.portrait:before{content:'';position:absolute;left:0;bottom:0;width:77%;height:75%;background:#efefeb;z-index:-1}.portrait img{display:block;width:100%;height:465px;object-fit:cover;object-position:center 42%;border-radius:3px}.portrait figcaption{position:absolute;bottom:45px;left:0;padding:19px 27px;background:#fff;box-shadow:0 5px 25px #00000006;font:23px/1.4 Georgia,serif}.portrait figcaption span{color:var(--muted);font-size:18px}.section{padding-top:74px;padding-bottom:74px}h2{font-size:42px;margin-bottom:24px}.places{background:var(--surface)}.section-heading{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:32px}.section-heading h2{margin-bottom:0}.section-heading>p{color:var(--muted);font-size:14px;margin-bottom:3px}.places-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.place{background:white;border:1px solid var(--line);padding:30px 32px 20px;border-radius:4px}.place-top{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.place-top .icon{color:var(--bronze)}h3{font-size:22px;font-weight:500;line-height:1.4}.place-top h3{margin:0}.tag{font-size:12px;color:var(--bronze);background:#f5f1ec;padding:4px 9px;border-radius:3px;margin-left:auto}.address{font-size:18px;line-height:1.6;margin:24px 0 20px}.address span{color:var(--muted);font-size:16px}.schedule{border-top:1px solid var(--line);padding-top:15px}.schedule p{display:flex;justify-content:space-between;gap:12px;font-size:14px;margin-bottom:9px}.schedule strong{white-space:nowrap;font-weight:500}.schedule p>span{color:var(--muted)}.text-link{display:inline-flex;align-items:center;gap:12px;font-size:14px;color:var(--bronze);margin:15px 0 23px}.text-link svg{width:18px}.photo-placeholder{height:112px;background:#f5f5f3;display:flex;align-items:center;justify-content:center;gap:13px;color:#73736c;border:1px dashed #d5d5ce;font-size:14px}.photo-placeholder small{display:block;font-size:12px;color:var(--muted)}.price{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #d5d5ce;margin-top:28px;padding-top:23px}.price>span{color:var(--muted)}.price strong{font-size:24px;font-weight:500;color:var(--bronze)}.price strong span{font-size:14px;color:var(--muted);font-weight:400}.about{display:grid;grid-template-columns:1fr 1.3fr;gap:65px}.large-copy{font:28px/1.4 Georgia,serif}.about p:not(.eyebrow):not(.large-copy){color:var(--muted);max-width:560px}.about p:last-child{margin-bottom:0}.reasons{border-top:1px solid var(--line);background:#fafaf9}.section-intro{color:var(--muted);margin-top:-6px}.reason-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:40px}.reason-grid>div{border-top:1px solid #d8d3cb;padding-top:22px}.reason-grid span{font-size:12px;color:var(--bronze)}.reason-grid h3{font-family:Georgia,serif;font-size:24px;margin:16px 0 12px}.reason-grid p{font-size:15px;color:var(--muted);margin-bottom:0}.contact{display:grid;grid-template-columns:1.3fr 1fr;gap:75px}.contact h2{margin-bottom:28px}.contact-details{border-left:1px solid var(--line);padding-left:64px;padding-top:10px}.contact-details p{margin-bottom:30px}.contact-details p>span{display:block;font-size:12px;letter-spacing:1.5px;color:var(--bronze);margin-bottom:5px}.contact-details a{font-size:23px;overflow-wrap:anywhere}.contact-small{color:var(--muted);font-size:14px}footer{border-top:1px solid var(--line);padding:25px 0;font-size:12px;color:var(--muted)}.footer-inner{display:flex;justify-content:space-between;gap:20px}.footer-inner p{margin:0}.mobile-booking{display:none}.skip{position:fixed;left:20px;top:-100px;background:white;padding:10px;z-index:20}.skip:focus{top:15px}@media(min-width:1450px){.hero{padding-top:90px;padding-bottom:90px}}@media(max-width:1050px){.wrap{width:calc(100% - 64px)}.hero{gap:38px}h1{font-size:50px}.qualification{font-size:16px}.hero-services p{font-size:16px}.portrait img{height:425px}.tag{margin-left:0}.place{padding:25px}.contact-details{padding-left:30px}nav{gap:18px}.header-phone{display:none}}@media(max-width:700px){.wrap{width:calc(100% - 40px)}.header-inner{min-height:83px}.brand{gap:12px;font-size:16px}.brand small{font-size:11px}.monogram{font-size:30px;padding-right:14px}nav{display:none}.hero{grid-template-columns:1fr;gap:30px;padding-top:33px;padding-bottom:42px}.eyebrow{font-size:11px;letter-spacing:1.2px;margin-bottom:15px}h1{font-size:44px;letter-spacing:-1.8px}.qualification{font-size:16px;line-height:1.5;margin-bottom:22px}.hero-services{margin-bottom:18px;padding-left:13px}.hero-services p{font-size:16px;line-height:1.65}.intro{font-size:16px;margin-bottom:22px}.desktop-break{display:none}.hero .button,.contact .button{width:100%}.booking-note{font-size:12px}.portrait{width:100%;max-width:400px;margin:0 auto;padding:0 0 16px 16px}.portrait img{height:340px;object-position:center 34%}.portrait figcaption{font-size:21px;padding:13px 21px;bottom:32px}.portrait figcaption span{font-size:16px}.section{padding-top:43px;padding-bottom:43px}h2{font-size:34px;letter-spacing:-1px}.section-heading{display:block;margin-bottom:25px}.section-heading>p{margin-top:18px;font-size:14px}.places-grid{grid-template-columns:1fr;gap:20px}.place{padding:24px 20px 18px}.place-top{gap:8px}.place-top h3{font-size:23px}.tag{font-size:11px;margin-left:auto}.schedule p{font-size:13px}.photo-placeholder{height:96px}.price{display:block;font-size:15px}.price strong{display:block;margin-top:7px}.about{grid-template-columns:1fr;gap:0}.large-copy{font-size:25px}.reason-grid{grid-template-columns:1fr;gap:25px;margin-top:30px}.reason-grid h3{margin:8px 0}.reason-grid p{font-size:16px}.reason-grid p br{display:none}.contact{grid-template-columns:1fr;gap:32px}.contact-details{border-left:0;border-top:1px solid var(--line);padding:25px 0 0}.contact-details a{font-size:22px}.contact-details p:last-child{margin-bottom:0}footer{padding-bottom:110px}.footer-inner{display:block}.footer-inner p span{display:block}.footer-inner>a{display:inline-block;margin-top:12px}.mobile-booking{display:block;position:fixed;bottom:0;left:0;right:0;background:#ffffffed;border-top:1px solid var(--line);padding:10px 20px calc(10px + env(safe-area-inset-bottom));z-index:10}.mobile-booking .button{width:100%;min-height:50px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.location-note{font-size:14px;color:var(--muted);margin:-7px 0 20px}.extra-hours{background:#f7f4f0;border-left:2px solid #b59979;padding:15px 17px;margin-top:20px;font-size:14px;line-height:1.65}.extra-hours p{margin:0 0 9px}.extra-hours strong{display:block;margin-bottom:5px;font-weight:600}.extra-hours a{display:inline-block;color:var(--bronze);text-decoration:underline;text-underline-offset:4px;padding:6px 0;font-weight:600}

.qualifications{margin:30px 0 0;padding-left:18px;border-left:2px solid #b59979}.qualifications>div+div{margin-top:23px}.qualifications dt{font-size:16px;font-weight:600}.qualifications dd{margin:4px 0 0;font-size:14px;color:var(--muted)}.qualifications dd span{display:block;font-size:13px;margin-top:3px}.fees{display:grid;grid-template-columns:1fr 1fr;gap:28px;border-top:1px solid #d5d5ce;margin-top:28px;padding-top:25px}.fee h3{font-size:17px;margin-bottom:8px}.fee .fee-amount{font-size:23px;color:var(--bronze);margin:0 0 9px;line-height:1.4}.fee-amount span{font-size:14px;color:var(--muted)}.fee>p:not(.fee-amount){font-size:14px;color:var(--muted);margin:0 0 8px}.fee-source{font-size:12px;text-decoration:underline;text-underline-offset:3px;color:var(--muted)}@media(max-width:700px){.qualifications{margin:22px 0 30px}.fees{grid-template-columns:1fr;gap:22px}.fee+.fee{border-top:1px solid var(--line);padding-top:22px}}

.brand-logo{display:block;width:58px;height:58px;object-fit:contain;border-radius:50%;flex-shrink:0}.place{display:flex;flex-direction:column}.place>.text-link{align-self:flex-start}.cabinet-photo{margin:0}.cabinet-photo img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:3px}.cabinet-photo figcaption{font-size:12px;color:var(--muted);padding-top:8px}.entrance-photo{display:flex;align-items:center;gap:15px;margin:18px 0 0;padding-top:18px;border-top:1px solid var(--line)}.entrance-photo img{width:104px;height:auto;border-radius:3px;flex-shrink:0}.entrance-photo figcaption{font-size:14px;line-height:1.5}.entrance-photo figcaption span{display:block;color:var(--muted);font-size:13px;margin-top:5px}@media(max-width:700px){.brand-logo{width:48px;height:48px}.entrance-photo img{width:92px}}

/* Readability and narrow-screen safeguards. */
.booking-note{font-size:.875rem}.reason-grid p{font-size:1rem}.brand small,.eyebrow,.tag{font-size:.75rem}.schedule p{font-size:.875rem;flex-wrap:wrap;column-gap:12px;row-gap:2px}.header-inner>*{min-width:0}.hero-copy,.place,.about>div,.contact>div,.reason-grid>div{min-width:0}nav a,.header-phone{display:inline-flex;align-items:center;min-height:44px}.fee-source{display:inline-block;min-height:44px;padding:10px 0}.entrance-photo figcaption{min-width:0}.brand{line-height:1.4}.skip{max-width:calc(100% - 40px)}@media(max-width:700px){.hero h1{font-size:clamp(2.25rem,11vw,2.75rem)}.hero-services p{font-size:1rem}.brand small,.eyebrow,.tag{font-size:.75rem}.tag{margin-left:0}.schedule p{font-size:.875rem}.mobile-booking .button{font-size:1rem}.contact-details a{font-size:clamp(1rem,5.6vw,1.375rem)}.entrance-photo{flex-wrap:wrap}.entrance-photo figcaption{flex:1 1 130px}}

.practical{font-size:.875rem;color:var(--muted);line-height:1.7;margin:0 0 20px}.practical strong{font-weight:600;color:var(--ink)}.location-note.home-visits{margin-top:0}
@media(max-width:1050px){.header-phone{display:none}}
