/* Scoped service content and navigation; the existing brand and team styles are untouched. */
.service-photo{margin:0;min-width:0}
.service-photo img{width:100%;height:380px;object-fit:cover;border-radius:150px 150px 22px 22px}
.service-photo figcaption{margin-top:10px;font-size:.8rem;line-height:1.4;color:var(--mocha)}
.service-price-jump{display:inline-block;margin-top:22px;font-weight:600;text-decoration:underline;text-underline-offset:4px}
.service-page .service-hero{margin-bottom:42px}
.service-page .service-prices__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}
.service-page .service-price-group{margin:0;padding:26px;background:var(--paper);border:1px solid var(--sand-deep);border-radius:var(--radius);min-width:0}
.service-price-group h3{font-size:1.35rem;line-height:1.25;margin-bottom:18px}
.service-price-group dl{margin:0}
.service-price-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(90px,auto);gap:16px;padding:13px 0;border-bottom:1px solid var(--sand-deep);font-size:.92rem;line-height:1.5}
.service-price-row dt{min-width:0}
.service-price-row dd{margin:0;text-align:right;font-weight:600;max-width:155px;text-wrap:balance}
.service-price-group .service-price-note{margin:18px 0 0;font-size:.87rem;line-height:1.6}
.service-price-actions{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin-top:24px}
.service-price-actions>a:not(.btn){font-size:.85rem;text-decoration:underline;text-underline-offset:3px}
.service-page .service-price-source{font-size:.86rem;margin:20px 0 0;color:var(--mocha)}
.service-price-source a,.service-map a{text-decoration:underline;text-underline-offset:3px}
.service-page .service-map{margin:20px 0 0}
.service-related{display:flex;flex-wrap:wrap;gap:10px 24px}
.service-related h2{flex-basis:100%;margin-bottom:8px}
.service-menu{position:relative;color:var(--ink)}
.service-menu>summary{cursor:pointer;list-style:none;font:600 .85rem var(--sans);padding:.6rem .85rem;white-space:nowrap}
.service-menu>summary::-webkit-details-marker{display:none}
.service-menu>summary::after{content:'⌄';margin-left:7px}
.service-menu[open]>summary::after{content:'⌃'}
.service-menu .service-menu__links{position:absolute;top:100%;left:0;z-index:80;width:290px;padding:12px;display:grid;gap:2px;border:1px solid var(--sand-deep);border-radius:16px;background:var(--paper);box-shadow:0 15px 45px #2a1c1326}
.service-menu .service-menu__links a{padding:10px 12px;font:500 .9rem/1.4 var(--sans);color:var(--ink);border-radius:8px;white-space:normal}
.service-menu .service-menu__links a::after{display:none}
.service-menu .service-menu__links a:hover,.service-menu .service-menu__links a:focus-visible{background:var(--sand);color:var(--ink)}
.service-menu--mobile{color:var(--ivory)}
.service-menu--mobile>summary{font:400 clamp(1.8rem,7vw,2.6rem) var(--serif);padding:.25em 0}
.service-menu--mobile .service-menu__links{position:static;max-width:100%;width:auto;background:transparent;border:0;box-shadow:none;padding:4px 0 12px}
.service-menu--mobile .service-menu__links a{color:var(--ivory);font-size:1rem}
.mobile-menu:has(.service-menu){justify-content:flex-start;padding-top:110px;padding-bottom:100px}
@media(max-width:760px){
 .service-page .service-prices__grid{grid-template-columns:1fr}
 .service-photo img{height:260px;border-radius:100px 100px 18px 18px}
 .service-page .service-price-group{padding:20px}
 .service-price-row{gap:12px;font-size:.9rem}
 .service-price-row dd{max-width:125px}
 .service-page .service-hero{margin-bottom:30px}
 .legal-header:has(.service-menu){gap:10px 14px}
 .legal-header:has(.service-menu)>a:first-child{flex:1 0 calc(100% - 160px)}
 .legal-header .service-menu .service-menu__links{left:auto;right:0;width:min(290px,calc(100vw - 40px))}
 .legal-header .service-menu{order:0}
 .legal-header:has(.service-menu)>a[href="/price"]{margin-right:auto}
}
@media(prefers-reduced-motion:reduce){.service-menu *{transition:none!important}}

.service-page .service-prices__grid:has(> :only-child){grid-template-columns:minmax(0,1fr);max-width:820px}
