/* Public services overview and single-service pages. */
.service-list a:focus-visible,
.service-related-card:focus-visible{outline:3px solid rgba(77,189,184,.36);outline-offset:4px}
.services-overview-section{padding-block:clamp(3.75rem,6vw,5.25rem);padding-bottom:clamp(5rem,8vw,6.5rem)}
.services-overview-container{width:min(calc(100% - 3rem),1180px)!important;max-width:1180px!important}
.service-list{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;align-items:stretch}
.service-list .service-card{display:flex!important;flex-direction:column;gap:1rem;height:100%;min-height:15.25rem;padding:1.45rem!important;scroll-margin-top:7rem}
.service-list .service-card>div:last-child{display:flex;flex-direction:column;flex:1;min-width:0}
.service-card__icon{display:grid;place-items:center;width:3.75rem!important;height:3.75rem!important;border-radius:1rem;background:var(--ui-teal-soft);color:var(--ui-teal-dark);flex:0 0 auto}
.service-card__icon svg{width:2.1rem!important;height:2.1rem!important}.service-card h2{font-size:1.24rem!important;line-height:1.35;margin:0 0 .55rem!important}.service-card p{color:var(--ui-muted);font-size:.95rem;line-height:1.75;margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.service-card .btn-text{margin-top:auto;padding-top:1rem;align-self:flex-start}
.service-card h2 a{color:inherit;text-decoration:none}
.service-card h2 a:hover{color:var(--ui-teal-dark)}
.service-single-hero{padding:calc(var(--ui-header) + 2.55rem) 0 3rem;background:radial-gradient(circle at 18% 20%,rgba(77,189,184,.18),transparent 30%),linear-gradient(135deg,var(--ui-navy),var(--ui-navy-2));color:#fff;overflow:hidden}
.service-single-hero__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(18rem,.72fr);gap:clamp(2rem,5vw,4rem);align-items:center}
.service-single-hero h1{font-size:clamp(2.25rem,5vw,4.25rem)!important;line-height:1.18!important;color:#fff;margin:0 0 1rem;font-weight:800}
.service-single-hero .eyebrow{color:rgba(255,255,255,.68)!important}.service-single-hero .breadcrumb{margin-bottom:1rem}.service-single-hero .breadcrumb a{color:rgba(255,255,255,.72)}.service-single-hero .breadcrumb a:hover{color:#fff}
.service-single-hero__lead{max-width:42rem;color:#d5e0ec;font-size:1.08rem;line-height:1.9;margin:0 0 1.6rem}
.service-single-hero__actions{display:flex;flex-wrap:wrap}.service-single-hero__media{margin:0;border-radius:var(--ui-radius-lg);overflow:hidden;box-shadow:0 30px 80px rgba(4,12,24,.34);background:rgba(255,255,255,.08)}
.service-single-hero__media img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.service-single .site-section{padding-block:clamp(3.5rem,5vw,5rem)}.service-single .section-heading{margin-bottom:clamp(1.4rem,3vw,2.1rem)}.service-single-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(17rem,.38fr);gap:clamp(1.5rem,4vw,3rem);align-items:start}.service-single-content,.service-single-cta{border:1px solid var(--ui-border);border-radius:var(--ui-radius-lg);background:#fff;box-shadow:var(--ui-shadow-soft);padding:clamp(1.5rem,3vw,2.25rem)}
.service-single-content h2,.service-single-cta h2{font-size:1.45rem;font-weight:800;margin:0 0 .8rem}.service-single-content p{color:#334155;line-height:2}.service-single-cta{position:sticky;top:calc(var(--ui-header) + 1.5rem)}.service-single-cta p{color:var(--ui-muted);margin-bottom:1.25rem}.service-single-cta .btn{width:100%;margin-top:.55rem}
.service-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.service-related-card{text-decoration:none}.service-related-card h3{font-size:1.15rem;font-weight:800;margin:0 0 .5rem}.service-related-card p{color:var(--ui-muted);font-size:.95rem;margin:0}
@media(max-width:1099px){.service-list{grid-template-columns:repeat(2,minmax(0,1fr))}.service-list .service-card{min-height:14.5rem}}
@media(min-width:768px) and (max-width:1099px){}
@media(max-width:900px){.service-single-hero__grid,.service-single-layout{grid-template-columns:1fr}.service-single-cta{position:static}.service-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){}
@media(max-width:620px){.services-overview-section{padding-bottom:8rem}.services-overview-container{width:min(calc(100% - 1.35rem),var(--ui-container))!important}.service-list{grid-template-columns:1fr}.service-list .service-card{min-height:0}.service-card p{-webkit-line-clamp:4}}
@media(max-width:520px){.service-single-hero{padding:calc(var(--ui-header) + 2rem) 0 2.5rem}.service-related-grid{grid-template-columns:1fr}.service-single-hero__actions .btn{width:100%}}
@media(prefers-reduced-motion:reduce){.service-card h2 a,.service-related-card{transition:none}}
