/* Four scenes with moving rails. Content stays visible without JavaScript. */
#service-flow{background:#f5f7f3;border-bottom:1px solid #dbe4da;scroll-margin-top:98px;overflow:clip}
.service-flow-inner{max-width:1192px;margin:auto;padding:66px 28px 46px}
.service-flow-heading{text-align:center}
.service-flow-eyebrow{margin:0 0 12px;color:#176772;font-size:13px;line-height:1.6;font-weight:700;letter-spacing:.06em}
.service-flow-heading h2{margin:0;color:#194b55;font-size:clamp(28px,3.3vw,38px);line-height:1.65;letter-spacing:.01em}
.service-flow-intro{margin:15px 0 0;color:#47646a;font-size:15px;line-height:1.9}
.service-flow-intro>span{display:inline-block}
.service-flow-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;margin:40px 0 0;padding:0;list-style:none}
.service-flow-steps>li{position:relative;min-width:0}
.flow-step-marker{display:flex;align-items:center;gap:17px;margin-bottom:15px}
.service-flow-number{flex:none;display:block;color:#206c74;font:500 56px/1 Arial,sans-serif;letter-spacing:-.07em;font-variant-numeric:tabular-nums}
.flow-step-rail{height:2px;flex:1;background:#d6e0d6;overflow:hidden}
.flow-step-progress{display:block;width:100%;height:100%;background:#72998d;transform-origin:left}
.service-flow-steps>li.is-in-view .flow-step-progress{background:#b79c57}
.service-flow-steps h3{min-height:58px;margin:0 0 15px;color:#214f58;font-size:18px;line-height:1.65;font-weight:700;text-align:center}
.flow-step-content>p{margin:18px 0 0;color:#426068;font-size:15px;line-height:1.9;overflow-wrap:anywhere}
.flow-scene{position:relative;height:156px;isolation:isolate}
.flow-scene:before{content:'';position:absolute;inset:20px 0 8px;background:#e6eee7;z-index:-1}
.flow-scene--jobs:before{background:#e4eeed}
.flow-scene--prepare:before{background:#eeeadd}
.flow-scene--start:before{background:#e5ede4}
.flow-piece{position:absolute;transform-origin:center}
.scene-adviser{left:0;top:0;width:100%;height:132px;border:4px solid #fff;box-shadow:0 8px 12px -7px #244b4859}
.scene-adviser img{display:block;width:100%;height:100%;object-fit:cover;object-position:56% 40%}
.scene-talk-caption{left:12%;right:0;bottom:0;padding:8px 6px;background:#fff;border-bottom:2px solid #b9cfc2;box-shadow:0 4px 8px -5px #244b4859;text-align:center}
.scene-talk-caption>strong{display:block;color:#215c62;font-size:12px;line-height:1.65;font-weight:600;white-space:nowrap}
.scene-job-back{left:5%;top:9px;width:61%;height:109px;padding:11px 12px;background:#fafffc;border:1px solid #b5d0c7;box-shadow:0 6px 8px -5px #315e5240}
.scene-job-back>span,.scene-document>span{display:block;color:#55766d;font-size:11px;line-height:1.6}
.scene-job-back i,.scene-document i{display:block;height:3px;background:#d0ddd4;margin-top:12px}
.scene-job-back i:last-child,.scene-document i:nth-last-of-type(1){width:66%}
.scene-job-front{right:1%;top:32px;width:76%;padding:12px 11px 15px;background:#fff;border:1px solid #a9c7bf;box-shadow:5px 6px 0 #cededa}
.scene-job-front>span{display:block;color:#1c6570;font-size:12px;font-weight:700;line-height:1.7;white-space:nowrap}
.scene-job-front>strong{display:block;color:#4d716c;font-size:11px;font-weight:500;line-height:1.6;margin-top:6px}
.scene-job-front>i{display:block;height:3px;width:66%;margin-top:5px;background:#d7bd76}
.scene-job-caption{bottom:0;left:0;width:100%;font-size:11px;line-height:1.5;color:#37696b;text-align:center}
.scene-document{left:7%;top:7px;width:55%;height:128px;padding:13px 12px;background:#fff;border:1px solid #c7c6b2;box-shadow:4px 5px 0 #dcd8c4}
.scene-document>b{display:block;position:absolute;left:12px;right:14px;top:63px;height:13px;border-bottom:2px solid #b99b4e;border-top:2px solid #b99b4e;transform:rotate(-5deg)}
.scene-meeting{right:0;bottom:5px;width:59%;padding:9px 7px 10px;background:#fff;border:1px solid #c7cec0;box-shadow:4px 5px 0 #d9dfd0}
.scene-meeting-people{display:flex;align-items:end;justify-content:center;gap:12px;height:51px;color:#557e74}
.scene-meeting-people img{width:36px;height:47px;object-fit:cover;object-position:50% 30%;border-bottom:1px solid #8ead9f}
.scene-meeting-people svg{width:28px;height:42px}
.scene-meeting>strong{display:block;margin-top:5px;font-size:10px;line-height:1.6;font-weight:600;white-space:nowrap;text-align:center;color:#416b62}
.scene-clinic{left:50%;top:7px;width:150px;max-width:94%;margin-left:-75px}
.scene-clinic svg{display:block;width:100%;height:auto}
.scene-start-line{height:2px;left:20%;right:20%;bottom:31px;background:#bca15a;transform-origin:left}
.scene-start-caption{left:0;bottom:4px;width:100%;font-size:14px;line-height:1.6;font-weight:600;color:#285c58;text-align:center;letter-spacing:.04em}
.service-flow-action{margin-top:35px;padding-top:24px;border-top:1px solid #d4e0d8;text-align:center}
.service-flow-action p{margin:0;color:#49656a;font-size:14px;line-height:1.85}
.service-flow-action strong{display:inline-block;color:#215d66;font-weight:600}
.service-flow-action a{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:48px;margin-top:14px;padding:7px 3px;border-bottom:2px solid #8dac9e;color:#136a76;font-size:16px;line-height:1.7;font-weight:700}
.service-flow-action a>span{font-size:24px;transition:transform .2s}
.service-flow-action a:focus-visible{outline:2px solid #a48133;outline-offset:5px}
@media(hover:hover){.service-flow-action a:hover>span{transform:translateX(5px)}}
@media(max-width:1000px) and (min-width:761px){.service-flow-steps{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:40px;row-gap:35px}.service-flow-steps h3{min-height:0}.flow-scene{max-width:280px;margin:auto;width:100%}}
@media(max-width:760px){
  .service-flow-inner{padding:44px 24px 32px}
  .service-flow-heading h2{font-size:28px}
  .service-flow-eyebrow{font-size:12px}
  .service-flow-intro{font-size:14px;margin-top:12px}
  .service-flow-steps{grid-template-columns:minmax(0,1fr);gap:27px;margin-top:30px}
  .service-flow-steps>li{display:grid;grid-template-columns:48px minmax(0,1fr);column-gap:15px;row-gap:17px;padding-bottom:25px;border-bottom:1px solid #d4dfd3}
  .service-flow-steps>li:last-child{padding-bottom:0;border-bottom:0}
  .flow-step-marker{display:contents}
  .service-flow-number{grid-column:1;grid-row:1;font-size:44px;align-self:center}
  .flow-step-rail{grid-column:1/-1;grid-row:2;height:2px;width:100%}
  .service-flow-steps h3{grid-column:2;grid-row:1;align-self:center;min-height:0;margin:0;font-size:19px;line-height:1.65;text-align:center}
  .flow-step-content{grid-column:1/-1;grid-row:3;display:grid;grid-template-columns:120px minmax(0,1fr);gap:18px;align-items:center}
  .flow-step-content>p{margin:0;font-size:15px;line-height:1.85}
  .flow-scene{height:145px}
  .flow-scene:before{inset:14px 0 4px}
  .scene-adviser{top:6px;height:110px;border-width:3px}
  .scene-talk-caption{left:4%;bottom:6px;padding:7px 4px}
  .scene-talk-caption>strong{font-size:11px}
  .scene-job-back{left:0;width:77%;padding:9px;height:103px}
  .scene-job-front{top:36px;right:-3%;width:93%;padding:10px 6px}
  .scene-job-front>span{font-size:10px}
  .scene-job-front>strong{font-size:10px;margin-top:6px}
  .scene-job-caption{font-size:9px;bottom:-3px;white-space:nowrap}
  .scene-document{left:1%;top:2px;width:78%;height:113px;padding:10px}
  .scene-document>span{font-size:10px}
  .scene-meeting{width:82%;bottom:2px;right:-3%;padding:6px 5px}
  .scene-meeting-people{height:43px;gap:9px}
  .scene-meeting-people img{width:32px;height:40px}
  .scene-meeting-people svg{width:25px;height:37px}
  .scene-meeting>strong{font-size:9px}
  .scene-clinic{width:116px;max-width:none;margin-left:-58px;top:21px}
  .scene-start-line{left:14%;right:14%;bottom:28px}
  .scene-start-caption{font-size:12px;bottom:3px;letter-spacing:0}
  .service-flow-action{margin-top:28px;padding-top:22px}
  .service-flow-action p{font-size:13px}
  .service-flow-action a{font-size:15px;margin-top:10px;gap:15px}
}
@media(max-width:359px){.service-flow-inner{padding-inline:18px}.flow-step-content{grid-template-columns:110px minmax(0,1fr);gap:14px}.service-flow-steps h3{font-size:18px}.flow-step-content>p{font-size:14px}.scene-clinic{width:108px;margin-left:-54px}.scene-job-front>span{font-size:9px}}
@media(prefers-reduced-motion:reduce){.service-flow-action a>span{transition:none}}
.flow-scene--start,.flow-scene--jobs{height:156px}
.flow-scene--start:before,.flow-scene--jobs:before{display:none}
.scene-start-photo,.scene-job-photo{inset:0;overflow:hidden}
.scene-start-photo img,.scene-job-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 35%}
.flow-scene--start .scene-start-caption,.flow-scene--jobs .scene-job-caption{left:auto;right:0;bottom:0;width:auto;padding:5px 11px;background:#fff;font-size:12px;letter-spacing:.02em}
@media(max-width:760px){
  .service-flow-steps>li[data-flow-step="4"] .flow-step-content,.service-flow-steps>li[data-flow-step="2"] .flow-step-content{display:block}
  .flow-scene--start{height:auto;aspect-ratio:2316/1500}
  .flow-scene--jobs{height:auto;aspect-ratio:3/2}
  .service-flow-steps>li[data-flow-step="4"] .flow-step-content>p,.service-flow-steps>li[data-flow-step="2"] .flow-step-content>p{margin-top:16px}
  .flow-scene--start .scene-start-caption,.flow-scene--jobs .scene-job-caption{padding:6px 13px;font-size:13px}
}
