.services-main{background:#fff;color:var(--ink);padding-top:var(--header-height)}
.services-main h1,.services-main h2,.services-main h3{font-weight:300;color:var(--ink);line-height:1.08}
.service-introduction,.service-appointment,.service-contact{padding:clamp(3rem,7vw,7rem) max(1.5rem,7vw)}
.service-introduction h1{font-size:clamp(2.9rem,5.6vw,6.4rem);margin:1.5rem 0 2rem;letter-spacing:-.035em}
.service-introduction>p:last-child{font-size:1.2rem;max-width:52rem;color:var(--muted)}
.services-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3rem;padding:0 max(1.5rem,7vw) 5rem}
.service-card{display:block;text-decoration:none;background:var(--mist);overflow:hidden}
.service-card>img{height:clamp(15rem,25vw,25rem);object-fit:cover;transition:transform .5s}
.service-card>div{padding:2rem 2.3rem 2.5rem}
.service-card h2{font-size:clamp(2rem,3vw,3.2rem);margin:1rem 0}
.service-card p{color:var(--muted);max-width:55ch}
.service-card-link{display:block;color:var(--exedra);margin-top:1.5rem}
.service-card:hover>img{transform:scale(1.015)}
.service-card:focus-visible{outline:3px solid var(--exedra);outline-offset:6px}
.service-appointment{border-top:1px solid var(--line)}
.service-appointment h2,.service-contact h2{font-size:clamp(2.4rem,4vw,4.5rem);max-width:22ch;margin:1.2rem 0}
.service-appointment p,.service-contact>p{max-width:55rem}
.service-contact{background:var(--mist)}
.service-hero{position:relative;min-height:44rem;height:calc(100svh - var(--header-height));max-height:64rem;display:flex;align-items:flex-end;padding:3rem max(1.5rem,7vw)}
.service-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.service-hero-panel{position:relative;max-width:43rem;padding:2.5rem;background:rgba(54,54,61,.78);backdrop-filter:blur(12px);color:#fff;animation:service-rise .7s ease-out}
.service-hero-panel h1{font-size:clamp(2.8rem,4.6vw,5.3rem);color:#fff;margin:1.3rem 0;letter-spacing:-.03em}
.service-hero-panel p{max-width:52ch}.service-hero-link{display:inline-block;margin-top:1rem;text-underline-offset:.4rem}
.service-breadcrumb{display:flex;flex-wrap:wrap;gap:.7rem;padding:1.5rem max(1.5rem,7vw);font-size:.85rem;border-bottom:1px solid var(--line)}
.service-breadcrumb a{text-underline-offset:.2rem}
.service-detail{display:grid;grid-template-columns:1fr 1.3fr;gap:5rem;padding:5rem max(1.5rem,7vw)}
.service-detail h2{font-size:clamp(2.4rem,4vw,4.6rem);max-width:15ch;margin:1.5rem 0}
.service-copy p{margin:0 0 1.7rem;max-width:65ch}
.service-related,.service-other{padding:3rem max(1.5rem,7vw);border-top:1px solid var(--line)}
.service-related h2,.service-other h2{font-size:2rem;margin:0 0 1.5rem}
.service-related>div,.service-other{display:flex;flex-wrap:wrap;gap:1.3rem 2rem}.service-other h2{flex-basis:100%}.service-related a,.service-other a{text-underline-offset:.3rem;color:var(--exedra)}
@keyframes service-rise{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
@media(max-width:760px){.services-grid{grid-template-columns:1fr;gap:2rem}.service-card>img{height:16rem}.service-card>div{padding:1.5rem}.service-hero{min-height:42rem;height:auto;padding-top:12rem;padding-bottom:1.5rem}.service-hero-panel{padding:1.7rem}.service-detail{grid-template-columns:1fr;gap:1rem;padding-top:3rem;padding-bottom:3rem}}
@media(prefers-reduced-motion:reduce){.service-hero-panel{animation:none}.service-card>img{transition:none}}

.services-main .eyebrow-ink{color:var(--exedra)} .service-introduction h1{max-width:none} .service-hero-panel .eyebrow,.service-hero-panel p,.service-hero-panel a{color:#fff}
