.process-journey{padding-bottom:130px}
.process-layout{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:clamp(56px,9vw,138px);align-items:start}
.process-intro{position:sticky;top:20vh;align-self:start;padding:10px 0 30px}
.process-intro>.section-label{margin:0 0 34px}
.process-intro h2{font:400 clamp(57px,6vw,88px)/.98 var(--serif);letter-spacing:-.045em;margin:0 0 25px;color:#172d39}
.process-intro h2 em{font-weight:400;color:#77a9bd}
.process-intro>p{max-width:390px;margin:0;color:#668294;font-size:16px;line-height:1.8}
.process-path{--process-progress:0px;--process-line-start:150px;--process-line-end:150px;position:relative;display:block;grid-template-columns:none;gap:0;padding:0 0 0 38px}
.process-path:before,.process-path:after{content:"";position:absolute;left:7px;top:var(--process-line-start);bottom:var(--process-line-end);width:1px;border:0;border-radius:2px}
.process-path:before{background:#d9eaf1}
.process-path:after{bottom:auto;height:var(--process-progress);max-height:calc(100% - 50px);background:#43b6d9;transition:height 1.15s cubic-bezier(.22,1,.36,1)}
.process-step{position:relative;display:flex;flex-direction:column;justify-content:center;min-height:clamp(260px,36vh,350px);padding:22px 0;margin:0;border-bottom:1px solid #e2edf2;opacity:.42;transform:translateX(0);transition:opacity .7s ease,color .7s ease}
.process-step:last-child{min-height:clamp(260px,34vh,330px);margin-bottom:0;border-bottom:0}
.process-step:before{content:"";position:absolute;left:-37px;top:50%;width:9px;height:9px;transform:translateY(-50%);border:1px solid #9bcfe0;border-radius:50%;background:#fff;box-shadow:0 0 0 5px #fff;transition:background .5s,box-shadow .5s,border-color .5s}
.process-step.is-current{opacity:1}
.process-step.is-current:before{border-color:#3aafd3;background:#3aafd3;box-shadow:0 0 0 6px #dff5fb}
.process-step-kicker{display:flex;align-items:center;gap:9px;color:#7795a5;font-size:11px;font-weight:550;letter-spacing:.1em}
.process-step-kicker i{font-style:normal;color:#b1c9d3}
.process-step h3{font:400 42px/1 var(--serif);letter-spacing:-.035em;color:#1b303b;margin:17px 0 10px;transition:color .3s}
.process-step.is-current h3{color:#1689b2}
.process-step p{max-width:430px;color:#728c9b;font-size:15px;line-height:1.75;margin:0 0 14px}
.process-footnote{font-size:10px;letter-spacing:.085em;color:#9ab0bb}
@media(max-width:900px){
 .process-layout{gap:50px;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr)}
 .process-intro h2{font-size:clamp(52px,6vw,68px)}
 .process-step{min-height:clamp(440px,62vh,620px)}
 .process-step h3{font-size:37px}
 .process-step p{font-size:14px}
}
@media(max-width:680px){
 .process-journey{padding-bottom:86px}
 .process-layout{display:block}
 .process-intro{position:static;padding:0;margin-bottom:34px}
 .process-intro>.section-label{margin-bottom:24px}
 .process-intro h2{font-size:clamp(48px,11vw,66px);margin-bottom:18px}
 .process-intro>p{font-size:15px;line-height:1.75}
 .process-path{padding-left:31px}
 .process-path:before,.process-path:after{left:6px}
 .process-step{min-height:280px;padding:20px 0;margin:0;opacity:.42}
 .process-step:last-child{min-height:260px;padding-bottom:20px;margin-bottom:0}
 .process-step:before{left:-30px;top:50%;width:8px;height:8px}
 .process-step h3{font-size:36px;margin:12px 0 7px}
 .process-step p{font-size:15px;line-height:1.65}
}
@media(prefers-reduced-motion:reduce){
 .process-path:after,.process-step,.process-step:before,.process-step h3{transition:none}
 .process-step{opacity:1}
 .process-path:after{height:100%}
}
