/* Service-page banner uses the site's existing palette and typography. */
.service-banner{background:linear-gradient(110deg,var(--brand-light),var(--brand-subtle));border-bottom:1px solid var(--line);overflow:hidden}
.service-banner-grid{display:grid;grid-template-columns:1.15fr 1fr;align-items:stretch;gap:40px}
.service-banner-copy{padding:36px 0 44px;align-self:center;min-width:0}
.service-breadcrumb{display:flex;flex-wrap:wrap;gap:8px;font-size:11px;color:var(--muted);margin-bottom:24px}
.service-breadcrumb a{color:var(--muted)}
.service-breadcrumb a:hover{color:var(--brand)}
.service-banner h1{font-size:clamp(2rem,3.4vw,3rem);margin:0 0 18px}
.service-banner-copy>p{font-size:15px;line-height:1.8;margin:0;max-width:600px}
.service-banner-image{position:relative;min-height:340px;overflow:hidden;border-radius:24px 0 0 24px;margin-right:min(0px,calc((1200px - 100vw)/2))}
.service-banner-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center;background:var(--brand-light)}
@media(max-width:767px){.service-banner-grid{grid-template-columns:1fr;gap:0}.service-banner-copy{padding:26px 0 28px}.service-breadcrumb{margin-bottom:20px;font-size:10px}.service-banner-copy>p{font-size:14px}.service-banner-image{min-height:0;aspect-ratio:1.9;margin:0 -22px;border-radius:0}.service-banner-image img{object-position:center}}
