/* Multiple visible services, one continuous horizontal rail. */
#services{padding:0;background:#edf5fc;color:#002557;scroll-margin-top:88px}
#services:before,#services:after{display:none}
.services-stage{width:100%;padding:32px 0 25px;background:radial-gradient(ellipse at 80% 0,#d5edf9,transparent 65%),#edf5fc}
.services-heading,.services-rail-footer,.services-note{margin-left:clamp(20px,4vw,64px);margin-right:clamp(20px,4vw,64px)}
.services-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:26px}
.services-heading h2{font:900 clamp(30px,3vw,44px)/1.1 SUIT;letter-spacing:-1.5px}
.services-heading .eyebrow{font-size:9px;color:#007eac;letter-spacing:2px;margin-bottom:12px}
.services-heading>p{font:650 13px/1.7 SUIT;color:#416582}
.services-viewport{margin-left:clamp(20px,4vw,64px);margin-right:clamp(20px,4vw,64px);overflow-x:auto;scrollbar-width:thin;scrollbar-color:#008cbd #c5ddea;outline-offset:4px}
.services-enhanced .services-viewport{overflow:hidden}
.services-track{display:flex;gap:22px;width:100%;align-items:stretch}
.service-panel{flex:0 0 calc((100% - 66px)/3.35);min-width:0;background:#fff;border:1px solid #c9ddea;box-shadow:0 8px 24px #00255708}
.service-visual{position:relative;aspect-ratio:16/10;overflow:hidden;background:#d4e4ed}
.service-visual>img{display:block;width:100%;height:100%;object-fit:cover}
.service-visual>svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;fill:none;stroke:#a6eeff;stroke-width:2;filter:drop-shadow(0 1px 3px #002557);opacity:.85}
.service-visual>svg .area{fill:#31c5ec15}.service-visual>svg .point{fill:#d6f9ff;stroke:#008cc6;stroke-width:2}
.service-copy{padding:19px 20px 23px}
.service-kicker{display:flex;align-items:center;gap:9px;color:#007b9f;font:750 10px/1.4 SUIT;margin-bottom:9px;min-height:16px}
.service-kicker span{font:850 13px/1 SUIT;color:#007eaa}
.service-copy h3{font:900 clamp(21px,1.8vw,27px)/1.3 SUIT;letter-spacing:-.7px;word-break:keep-all;overflow-wrap:break-word}
.service-purpose{font:650 13px/1.7 SUIT;color:#365a77;margin-top:10px;word-break:keep-all;overflow-wrap:break-word;min-height:44px}
.service-delivery{margin:16px 0 0;padding:13px 0 0;border-top:1px solid #e1eaf1}
.service-delivery dt{font:750 9px/1.4 SUIT;color:#1885a7;margin-bottom:5px}
.service-delivery dd{margin:0;font:550 11px/1.65 SUIT;color:#567388;word-break:keep-all;overflow-wrap:break-word}
.services-rail-footer{display:flex;align-items:center;gap:22px;margin-top:25px;font:750 10px/1.5 SUIT;color:#376384}
.services-count{min-width:74px;font-variant-numeric:tabular-nums}
.services-progress{height:3px;background:#c2d9e8;flex:1;overflow:hidden}.services-progress>span{display:block;width:100%;height:100%;background:#008cc7;transform:scaleX(0);transform-origin:left}
.services-scroll-hint{display:none}.services-enhanced .services-scroll-hint{display:inline}.services-enhanced .services-swipe-hint{display:none}
.services-note{font:500 9px/1.6 SUIT;color:#688197;margin-top:15px}
@media(min-width:1600px){.service-panel{flex-basis:calc((100% - 88px)/4.2)}}
@media(max-width:1100px){.service-panel{flex-basis:calc((100% - 44px)/2.65)}.services-track{gap:18px}.service-copy{padding:17px}.service-copy h3{font-size:23px}}
@media(max-width:760px){
 #services{scroll-margin-top:76px}.services-stage{padding:24px 0 20px}.services-heading{display:block;margin-bottom:20px}.services-heading h2{font-size:31px;letter-spacing:-1px}.services-heading .eyebrow{font-size:8px;margin-bottom:9px}.services-heading>p{font-size:12px;margin-top:12px}
 .services-track{gap:14px}.service-panel{flex-basis:76%}.service-copy{padding:16px}.service-kicker{font-size:9px;gap:8px}.service-copy h3{font-size:23px}.service-purpose{font-size:12px;min-height:41px}.service-delivery{margin-top:12px;padding-top:11px}.service-delivery dd{font-size:10px}.services-rail-footer{gap:12px;font-size:9px;margin-top:20px}.services-count{min-width:62px}.services-note{font-size:8px;margin-top:12px}
}
@media(max-width:360px){.service-copy{padding:13px}.service-copy h3{font-size:20px}.service-kicker{font-size:8px}.service-purpose{font-size:11px}.service-delivery dd{font-size:9px}}
@media(min-height:900px){.services-enhanced .services-stage{min-height:calc(100svh - 88px);display:flex;flex-direction:column;justify-content:center}}
@media(prefers-reduced-motion:reduce){.services-progress{display:none}}
@media(max-height:800px) and (min-width:761px){.services-stage{padding-top:20px;padding-bottom:18px}.services-heading{margin-bottom:20px}.services-rail-footer{margin-top:20px}.services-note{margin-top:10px}.service-visual{aspect-ratio:16/9}}

/* Keep the introduction and the first service cards in one viewport. */
.services-stage,.services-enhanced .services-stage{padding-top:0;min-height:0;display:block}
.services-stage>.brand-statement{padding:26px 0;margin-bottom:24px}
.services-stage>.brand-statement h2{font-size:clamp(26px,2.5vw,36px);line-height:1.3}
.services-stage>.brand-statement .wrap{gap:40px}
.services-heading{margin-bottom:22px}
@media(max-width:760px){
 .services-stage>.brand-statement{padding:20px 0;margin-bottom:20px}
 .services-stage>.brand-statement h2{font-size:24px;line-height:1.3}
 .services-stage>.brand-statement p{font-size:11px;line-height:1.7;margin-top:12px;max-width:none}
}
@media(max-height:800px) and (min-width:761px){
 .services-stage>.brand-statement{padding:18px 0;margin-bottom:18px}
 .services-stage>.brand-statement h2{font-size:26px;line-height:1.25}
 .services-stage>.brand-statement p{font-size:12px;line-height:1.7}
 .services-heading{margin-bottom:16px}
 .services-heading h2{font-size:30px}
 .service-visual{max-height:22svh}
}

.services-heading{padding-top:40px}
@media(max-width:760px){.services-heading{padding-top:16px}}
@media(max-height:800px) and (min-width:761px){.services-heading{padding-top:20px}}
@media(hover:hover) and (pointer:fine){
 .service-visual>img{transition:transform .65s cubic-bezier(.22,1,.36,1)}
 .service-panel:hover .service-visual>img{transform:scale(1.06)}
}

/* This compact mode is selected once per viewport width, not by browser-bar height. */
@media(max-width:760px){
 [data-compact-services] .services-stage{padding-bottom:14px}
 [data-compact-services] .services-stage>.brand-statement{padding:12px 0;margin-bottom:12px}
 [data-compact-services] .services-stage>.brand-statement h2{font-size:20px;line-height:1.25}
 [data-compact-services] .services-stage>.brand-statement p{display:none}
 [data-compact-services] .services-heading{padding-top:12px;margin-bottom:14px}
 [data-compact-services] .services-heading h2{font-size:28px}
 [data-compact-services] .services-heading>p{display:none}
 [data-compact-services] .service-visual{max-height:16svh}
 [data-compact-services] .service-copy{padding:12px}
 [data-compact-services] .service-kicker{margin-bottom:7px}
 [data-compact-services] .service-copy h3{font-size:21px}
 [data-compact-services] .service-purpose{font-size:11px;min-height:0;margin-top:8px}
 [data-compact-services] .services-rail-footer{margin-top:14px}
 [data-compact-services] .services-note{margin-top:10px}
}
