/* How we work: a scroll-driven explainer with a sticky illustrated stage. */
.process{position:relative;max-width:1600px;margin:auto;padding:120px 6% 100px;border-top:1px solid #e0d6e7}
.process:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 8% 12%,#ece3f088,transparent 46%),radial-gradient(ellipse at 96% 70%,#e6eddf66,transparent 46%)}
.process-head{display:grid;grid-template-columns:1.05fr 1fr;gap:7%;align-items:end;margin-bottom:70px}
.process-head h2{margin-bottom:0}
.process em{color:#76548d}
.process-intro p{font-size:14px;line-height:1.9;color:#776c7e;max-width:520px}
.process-intro p+p{margin-top:16px;color:#4d4256}
.process-body{display:grid;grid-template-columns:minmax(290px,.78fr) 1.3fr;gap:5%;align-items:start}
.process-steps{position:relative;list-style:none;margin:0;padding:0 0 0 30px}
.process-steps:before,.process-steps:after{content:'';position:absolute;left:0;top:0;bottom:0;width:1px;background:#e0d6e7}
.process-steps:after{background:linear-gradient(#b69b71,#6b4883 55%,#4b81c4);transform-origin:top;transform:scaleY(var(--process-p,0))}
.process-step{position:relative;min-height:78vh;display:flex;align-items:center;gap:24px;padding:40px 0;opacity:.3;transition:opacity .6s}
.process-step.is-active{opacity:1}
.process-step.is-past{opacity:.45}
.process-step:before{content:'';position:absolute;left:-34px;top:50%;width:9px;height:9px;margin-top:-4.5px;border-radius:50%;background:#f8f7f2;border:1px solid #cdbbda;transition:background .4s,border-color .4s,transform .4s}
.process-step.is-active:before{background:#6b4883;border-color:#6b4883;transform:scale(1.35)}
.process-step.is-past:before{background:#cdbbda}
.step-index{display:block;margin-bottom:18px;font-size:10px;font-weight:500;letter-spacing:1.6px;color:#9682a4}
.process-step h3{font-family:Manrope,sans-serif;font-size:clamp(28px,2.6vw,42px);font-weight:500;letter-spacing:-1.3px;line-height:1.1;margin-bottom:16px;color:#302936}
.process-step p{font-size:14px;line-height:1.85;color:#776c7e;max-width:430px}
.step-gets{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:baseline;margin-top:22px;font-size:10px!important;letter-spacing:1.2px;text-transform:uppercase;color:#8b729d!important}
.step-gets b{font-weight:600;color:#6b4883;margin-right:4px}
.step-gets i{font-style:normal;color:#cdbbda}
.process-stage{position:sticky;top:98px;height:calc(100vh - 130px);min-height:520px;max-height:880px;overflow:hidden;border:1px solid #e1d6e8;background:#fbfaf6;background-image:radial-gradient(circle,#cfc2dab0 .7px,transparent .8px);background-size:20px 20px}
.process-canvas{position:absolute;inset:0;width:100%;height:100%}
.process-plate{position:absolute;left:20px;right:20px;bottom:14px;display:flex;justify-content:space-between;gap:12px;font-size:9px;font-weight:500;letter-spacing:1.6px;text-transform:uppercase;color:#8b7898;pointer-events:none}
.process-count{color:#6b4883;font-variant-numeric:tabular-nums}
.process-close{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-top:40px;padding-top:26px;border-top:1px solid #e0d6e7;font-family:Georgia,serif;font-style:italic;font-size:20px;color:#6b4883}
.process-close span{font-family:'DM Sans',sans-serif;font-style:normal;font-size:10px;letter-spacing:1.2px;text-transform:uppercase;color:#9a8ca3;align-self:center}
@media(max-width:1000px){.process-body{grid-template-columns:minmax(250px,.8fr) 1.1fr}.process-step h3{font-size:30px}}
@media(max-width:800px){
 .process{padding:80px 6% 70px}
 .process-head{grid-template-columns:1fr;gap:26px;margin-bottom:34px}
 .process-body{display:flex;flex-direction:column;align-items:stretch}
 .process-stage{order:-1;top:78px;z-index:3;height:50svh;min-height:330px;max-height:none;margin:0 -6.4%;border-left:0;border-right:0}
 .process-steps{padding-left:24px}
 .process-step{min-height:72svh;align-items:flex-start;padding:34px 0 0}
 .process-step:before{left:-28px;top:44px;margin-top:0}
 .step-index{margin-bottom:12px}
 .process-step h3{font-size:28px}
 .process-close{font-size:17px}
}
@media(prefers-reduced-motion:reduce){.process-step,.process-step:before{transition:none}}
