.breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding-top:28px;font-size:11px;color:var(--muted)}
.breadcrumbs a{text-decoration:underline;text-underline-offset:3px}
.service-hero{display:grid;grid-template-columns:1fr 1.05fr;gap:64px;align-items:center;padding-block:42px 64px}
.service-hero h1{font-size:clamp(42px,4.5vw,65px);letter-spacing:-2.5px;margin-top:20px}
.service-hero h1 em{color:var(--clay)}
.service-intro{max-width:440px;margin-top:25px;font-size:15px;line-height:1.85}
.service-hero .opening-date{width:fit-content;margin-block:23px}
.service-hero .button{margin-top:5px}
.service-contact{display:block;width:fit-content;margin-top:17px;font-size:12px;text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}
.service-hero figure img{width:100%;aspect-ratio:1.18;object-fit:cover;border-top-left-radius:135px}
.service-hero figcaption,.service-photo-caption{font-size:11px;color:var(--muted);margin-top:13px;line-height:1.7}
.service-facts{background:var(--sage);border-block:1px solid var(--line)}
.service-facts .shell{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;padding-block:25px}
.service-facts p{font-size:12px;line-height:1.75}
.service-facts strong{display:block;color:var(--ink);font-size:14px;font-weight:600}
.service-details{display:grid;grid-template-columns:1.2fr .8fr;gap:90px;padding-block:85px}
.service-details h2,.service-location h2{font-size:40px;letter-spacing:-1.1px;margin-top:16px}
.service-details p:not(.eyebrow),.service-location p:not(.eyebrow){margin-top:23px;font-size:14px;line-height:1.9}
.service-details h3{font-size:25px;margin-top:30px}
.service-details .detail-list{font-size:13px;margin-block:18px}
.service-aside{align-self:start;background:var(--paper);border:1px solid var(--line);padding:32px}
.service-aside h2{font-size:30px;margin-top:0}
.service-aside ol{padding-left:20px;font-size:13px;color:var(--muted);line-height:1.85}
.service-aside li{padding-left:4px;margin-block:16px}
.service-aside .text-link{font-size:12px;margin-top:8px}
.service-aside .service-price{font:42px/1.3 var(--serif);color:var(--clay);margin-top:20px}
.service-price span{font:13px var(--sans);color:var(--muted)}
.service-location{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;padding-block:65px;border-top:1px solid var(--line)}
.service-location img{width:100%;aspect-ratio:1.4;object-fit:cover}
.service-location address{font-style:normal;margin-block:22px;font-size:13px;line-height:1.85;padding-left:17px;border-left:2px solid #c9d0bc}
.service-location .text-link{font-size:12px}
.service-faq{padding-top:35px;gap:85px}
.service-faq h2{font-size:40px}
.service-faq .faq-list p a{text-decoration:underline;text-underline-offset:3px}
.service-cta{padding-block:62px;background:var(--green);color:var(--cream)}
.service-cta .shell{display:flex;align-items:center;justify-content:space-between;gap:40px}
.service-cta h2{font-size:39px;letter-spacing:-1px}
.service-cta p{color:#d1d6c9;font-size:13px;margin-top:15px;max-width:570px}
.service-cta .button{flex-shrink:0}
.service-cross-link{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;padding-block:28px;border-bottom:1px solid var(--line)}
.service-cross-link p,.service-cross-link .text-link{font-size:12px}
.service-page .header-inner nav>a[aria-current=page]{color:var(--clay);text-decoration:underline;text-underline-offset:6px}
@media(max-width:1100px){.service-hero{gap:36px}.service-details{gap:45px}.service-location{gap:40px}.service-faq{gap:45px}.service-cta h2{font-size:34px}}
@media(max-width:800px){.service-hero{grid-template-columns:1fr;gap:35px;padding-block:32px 45px}.service-hero h1{font-size:56px;max-width:610px}.service-intro{max-width:550px}.service-hero figure img{aspect-ratio:1.6;border-top-left-radius:100px}.service-details{gap:30px;grid-template-columns:1fr 1fr;padding-block:60px}.service-details h2,.service-location h2{font-size:34px}.service-aside{padding:25px}.service-aside h2{font-size:27px}.service-location{gap:30px;padding-block:45px}.service-faq{grid-template-columns:1fr;gap:28px;padding-bottom:60px}.service-cta .shell{align-items:flex-start;flex-direction:column;gap:25px}}
@media(max-width:560px){.breadcrumbs{padding-top:22px;font-size:10px}.service-hero h1{font-size:43px;letter-spacing:-1.6px}.service-intro{font-size:14px}.service-hero figure img{aspect-ratio:1.25;border-top-left-radius:90px}.service-facts .shell{grid-template-columns:1fr;gap:16px;padding-block:23px}.service-facts p+p{border-top:1px solid #cdd5c5;padding-top:14px}.service-details,.service-location{grid-template-columns:1fr;gap:32px}.service-details{padding-block:47px}.service-details h2,.service-location h2{font-size:33px}.service-faq h2{font-size:34px}.service-cta{padding-block:45px}.service-cta h2{font-size:33px}.service-cta .button{max-width:100%;font-size:12px;gap:18px}.service-aside .service-price{font-size:38px}}
/* Service pages use the same uncropped, intrinsic-ratio photo treatment. */
.service-hero figure,.service-location figure{min-width:0}
.service-hero figure img,.service-location img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain;border-radius:0}
