/* Our Process page and the responsive service-card stack. */
.process-page{width:100%;max-width:none;overflow:visible;background:#fff;color:#121212}
.process-page :is(h2,h3){letter-spacing:-.03em}
.process-wrap{width:min(1312px,calc(100% - 128px));margin-inline:auto}
.process-page section{scroll-margin-top:110px}
.process-hero{padding:205px 0 145px;background:#fff}
.process-hero h1{max-width:1220px;font-size:clamp(68px,8.2vw,134px);line-height:.96;font-weight:600;letter-spacing:-.048em;text-wrap:balance}
.process-hero-bottom{display:flex;align-items:end;justify-content:space-between;gap:60px;margin-top:75px}
.process-hero-bottom p{max-width:700px;font-size:clamp(20px,1.8vw,28px);line-height:1.33}
.process-button{flex:none}
.v2a.process-page .button.button-05.process-button--zap{--arrow-surface:#e2ff3a;--arrow-surface-hover:#efff92;color:#121212}
.v2a.process-page .button.button-05.process-button--dark{--arrow-surface:#121212;--arrow-surface-hover:#303030;color:#fff}
.process-path{background:#121212;color:#fff}
.process-path-inner{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:90px;overflow-x:auto;scrollbar-width:none}
.process-path-inner::-webkit-scrollbar{display:none}
.process-path a{flex:none;padding:12px 0;color:#f4f4f4;font-size:16px;font-weight:600;white-space:nowrap;transition:color .2s ease}
.process-path a:hover,.process-path a:focus-visible{color:#e2ff3a}
.process-path a:focus-visible{outline:2px solid #e2ff3a;outline-offset:4px}
.process-intro{padding:145px 0 115px;background:#f1fafe}
.process-intro-grid{display:grid;grid-template-columns:1fr .78fr;gap:100px;align-items:end}
.process-intro h2{max-width:670px;font-size:clamp(55px,5.7vw,86px);font-weight:600;line-height:1.01}
.process-intro p{max-width:570px;font-size:clamp(20px,1.6vw,24px);line-height:1.38;color:#494a4a}
.process-stages,
.process-stages *,
.process-stages *::before,
.process-stages *::after{box-sizing:border-box}
.process-stages{--process-canvas:#fff;--process-card:#fff;--process-text:#121212;--process-muted:#494a4a;--process-line:#cdd2d1;padding:clamp(100px,18svh,180px) 32px clamp(100px,18svh,180px);overflow-x:clip;color:var(--process-text);background:var(--process-canvas)}
.process-stages[data-theme="dark"]{--process-canvas:#121212;--process-card:#262626;--process-text:#fff;--process-muted:#d1d2d2;--process-line:#606363}
.process-stack{position:relative;width:min(100%,1240px);margin:0 auto}
.process-stage{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(340px,.9fr);min-height:560px;margin-bottom:24px;overflow:hidden;border-radius:32px;color:var(--process-text);background:var(--process-card);box-shadow:0 44px 18px rgba(0,0,0,.01),0 22px 39px rgba(0,0,0,.1)}
.process-stage:last-child{margin-bottom:0}
.process-stage-main{display:flex;flex-direction:column;min-width:0;padding:clamp(26px,3vw,42px)}
.process-stage-phase{display:inline-flex;align-items:center;gap:10px;align-self:flex-start;margin-bottom:24px;color:#b2b2b2;font-family:Saans,Arial,sans-serif;font-size:12px;font-style:normal;font-weight:600;line-height:normal;letter-spacing:2.4px;text-transform:uppercase}.process-stage-phase img{display:block;flex:none;width:18px;height:18px;object-fit:contain}
.process-stage-main h2{max-width:680px;margin:0 0 24px;font-size:clamp(40px,4vw,59px);line-height:1.04;font-weight:600;text-wrap:balance}
.process-stage-main>p{max-width:630px;color:var(--process-muted);font-size:18px;line-height:1.43}
.process-stage-meta{display:grid;grid-template-columns:1fr 1fr;gap:26px;max-width:650px;margin-top:auto;padding-top:28px;border-top:1px solid var(--process-line)}
.process-stage-meta h3{margin:0 0 9px;font-size:15px;font-weight:600}
.process-stage-meta p{color:var(--process-muted);font-size:14px;font-weight:500;line-height:1.38}
.process-stage-meta a{color:var(--process-text)}
.process-stage-meta .text-link{font-size:14px;font-weight:500;border-bottom:1px solid currentColor;padding-bottom:4px}
.process-stage-art{position:relative;isolation:isolate;min-width:0;min-height:0;margin:8px 8px 8px 0;overflow:hidden;border-radius:24px;background:#f1fafe}
@media(min-width:1025px){
  .process-stages.is-enhanced .process-stack{height:min(82svh,680px);min-height:560px}
  .process-stages.is-enhanced .process-stage{position:absolute;inset:0;width:100%;height:100%;margin:0;transform-origin:center center}
  .process-stages.is-enhanced .process-stage:not(:first-child){visibility:hidden;transform:translateY(120%)}
}
.process-stage-art--explore{background:#eaf6fb}
.process-art-grid{position:absolute;inset:-20%;background-image:linear-gradient(#9fc9d8 1px,transparent 1px),linear-gradient(90deg,#9fc9d8 1px,transparent 1px);background-size:62px 62px;opacity:.44;transform:rotate(-13deg)}
.process-map-radius{position:absolute;top:50%;left:50%;width:165px;height:165px;border:1px dashed #22799c;border-radius:50%;transform:translate(-50%,-50%)}
.process-map-radius::after{content:"";position:absolute;inset:26px;border-radius:50%;background:rgba(226,255,58,.3)}
.process-map-pin{position:absolute;z-index:1;width:25px;height:25px;border:7px solid #fff;border-radius:50%;background:#0d3d52;box-shadow:0 5px 18px #567b8c55}
.process-map-pin--one{top:45%;left:47%;width:37px;height:37px;border-color:#e2ff3a}.process-map-pin--two{top:20%;left:70%}.process-map-pin--three{top:70%;left:23%}
.process-stage-art--select{display:flex;align-items:center;justify-content:center;gap:12px;background:#f3f4ef}
.process-site-shape{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;width:27%;height:46%;padding:16px;border:1px solid #b4bec1;border-radius:9px;background:#fff;transform:rotate(-10deg)}
.process-site-shape:nth-child(2){transform:translateY(-28px) rotate(5deg);border-color:#121212;box-shadow:0 14px 25px #162f3c24}
.process-site-shape:nth-child(3){transform:translateY(23px) rotate(-4deg)}
.process-site-shape i{display:block;border-radius:5px;background:#d9e4e7}.process-site-shape:nth-child(2) i{background:#e2ff3a}
.process-stage-art--build{background:#e8f2f5}
.process-build-base{position:absolute;left:20%;right:20%;bottom:17%;height:24px;border-radius:50%;background:#97acb2;filter:blur(4px)}
.process-build-post{position:absolute;left:42%;bottom:20%;width:18%;height:54%;border:8px solid #121212;border-radius:42px 42px 22px 22px;background:#fff;box-shadow:15px 15px 0 #26383f}
.process-build-arm{position:absolute;left:46%;bottom:20%;width:26%;height:28%;border:10px solid #121212;border-top:0;border-left:0;border-radius:0 0 100px 0;transform:rotate(13deg)}
.process-stage-art--operate{display:grid;place-items:center;background:#f1fafe}
.process-chart{display:flex;align-items:end;gap:16px;width:70%;height:53%;padding:24px;border-bottom:2px solid #121212}
.process-chart i{flex:1;height:30%;border-radius:5px 5px 0 0;background:#6ec9ee}.process-chart i:nth-child(2){height:52%}.process-chart i:nth-child(3){height:41%}.process-chart i:nth-child(4){height:72%;background:#e2ff3a}.process-chart i:nth-child(5){height:90%;background:#121212}
.process-stage-art--grow{background:#fcffeb}
.process-growth-dot{position:absolute;display:block;width:50px;height:50px;border:12px solid #121212;border-radius:50%;background:#fff}.process-growth-dot:nth-child(1){top:38%;left:27%}.process-growth-dot:nth-child(2){top:20%;left:60%}.process-growth-dot:nth-child(3){top:68%;left:45%}.process-growth-dot:nth-child(4){top:52%;left:75%}
.process-growth-dot:not(:last-child)::after{content:"";position:absolute;top:50%;left:100%;width:120px;border-top:2px dashed #121212;transform:rotate(-25deg);transform-origin:left center}

.process-close{padding:145px 0;background:#e2ff3a}
.process-close-grid{display:flex;align-items:end;justify-content:space-between;gap:60px}
.process-close h2{max-width:900px;margin:0 0 25px;font-size:clamp(62px,6.4vw,94px);line-height:1.01;font-weight:600}
.process-close p{font-size:21px}
@media(max-width:1024px){
  .process-wrap{width:calc(100% - 80px)}
  .process-hero{padding-top:170px}
  .process-path-inner{justify-content:flex-start;gap:24px}
  .process-intro-grid{gap:50px}
  .process-stages{padding:24svh 24px}
  .process-stack{display:flex;flex-direction:column;gap:24px}
  .process-stage{position:relative;display:flex;flex-direction:column;height:auto;min-height:0;margin:0;border-radius:24px}
  .process-stage-main{min-height:380px;padding:28px}
  .process-stage-main h2{font-size:clamp(40px,5vw,52px)}
  .process-stage-main>p{font-size:18px}
  .process-stage-meta{width:100%;margin-top:auto}
  .process-stage-art{order:-1;flex:none;height:340px;margin:8px 8px 0;border-radius:18px}
}
@media(max-width:700px){
  .process-wrap{width:calc(100% - 40px)}
  .process-hero{padding:150px 0 92px}
  .process-hero h1{font-size:clamp(53px,11.6vw,76px)}
  .process-hero-bottom{align-items:flex-start;flex-direction:column;gap:30px;margin-top:40px}
  .process-hero-bottom p{font-size:19px}
  .process-path-inner{min-height:68px}
  .process-path a{font-size:14px}
  .process-intro{padding:85px 0 65px}
  .process-intro-grid{grid-template-columns:1fr;gap:25px}
  .process-intro h2{font-size:clamp(48px,10vw,66px)}
  .process-intro p{font-size:18px}
  .process-stages{padding:18svh 16px}
  .process-stack{gap:16px}
  .process-stage{border-radius:20px}
  .process-stage-main{min-height:0;padding:24px}
  .process-stage-phase{margin-bottom:20px}
  .process-stage-main h2{font-size:clamp(36px,9.5vw,48px)}
  .process-stage-main>p{font-size:16px}
  .process-stage-meta{gap:20px;margin-top:30px;padding-top:20px}
  .process-stage-meta h3{font-size:14px}
  .process-stage-meta p,.process-stage-meta .text-link{font-size:13px}
  .process-stage-art{height:300px}
  .process-close{padding:90px 0}
  .process-close-grid{align-items:flex-start;flex-direction:column;gap:30px}
  .process-close h2{font-size:clamp(52px,10vw,70px)}
  .process-close p{font-size:17px}
}
@media(max-width:479px){
  .process-stage-main{padding:20px}
  .process-stage-meta{grid-template-columns:1fr}
  .process-stage-art{height:260px}
}
@media(prefers-reduced-motion:reduce){
  .process-stages .process-stack{display:flex;flex-direction:column;gap:24px;height:auto}
  .process-stages .process-stage{position:relative;inset:auto;display:flex;flex-direction:column;height:auto;min-height:0;visibility:visible;transform:none;margin:0}
  .process-stages .process-stage-art{order:-1;height:300px;margin:8px 8px 0}
  .process-stages .process-stage-main{min-height:0}
}
