/* ── PROCESS ── (scroll-drawn gold line lands in step 5) */
#process{background:var(--bg-2);}
#process::before{
  content:''; position:absolute; top:0; left:0; right:0; height:1px;
  background:linear-gradient(90deg, transparent, var(--gold-line), transparent);
}

/* scroll-drawn gold progress line */
.process-line{
  max-width:1240px; margin:0 auto 30px;
  height:2px; background:var(--line-soft); border-radius:1px; overflow:hidden;
}
.process-line-fill{
  height:100%; width:0%;
  background:linear-gradient(90deg, var(--gold-deep), var(--gold-bright));
  box-shadow:0 0 12px var(--gold-line);
}

.process-grid{
  max-width:1240px; margin:0 auto;
  display:grid; grid-template-columns:repeat(4,1fr); gap:16px;
  position:relative;
}

.process-step{
  position:relative;
  border:1px solid var(--line); border-radius:12px;
  background:var(--card);
  padding:32px 26px;
  transition:border-color .3s, background .3s;
}
.process-step:hover{border-color:rgba(217,168,76,0.25); background:var(--card-hover);}

.process-num{
  font-family:var(--display); font-size:52px; font-weight:600; line-height:1;
  color:transparent;
  -webkit-text-stroke:1px var(--gold-line);
  margin-bottom:22px;
}
.process-step:hover .process-num{color:var(--gold-tint); -webkit-text-stroke:1px var(--gold);}

.process-title{
  font-family:var(--display); font-size:20px; font-weight:600;
  color:var(--ink); margin-bottom:12px;
}
.process-desc{font-size:13.5px; line-height:1.65; color:var(--slate);}

@media (max-width: 1000px){ .process-grid{grid-template-columns:repeat(2,1fr);} }
@media (max-width: 560px){ .process-grid{grid-template-columns:1fr;} }

/* ── CAPABILITIES ── */
.cap-grid{
  max-width:1240px; margin:0 auto;
  display:grid; grid-template-columns:repeat(3,1fr); gap:16px;
}
.cap-col{
  border:1px solid var(--line); border-radius:12px;
  background:var(--card); padding:30px 26px;
}
.cap-col-title{
  font-family:var(--mono); font-size:11px; letter-spacing:.18em;
  text-transform:uppercase; color:var(--gold); margin-bottom:20px;
  padding-bottom:14px; border-bottom:1px solid var(--line-soft);
}
.cap-items{display:flex; flex-wrap:wrap; gap:8px;}
.cap-item{
  font-size:12.5px; color:var(--ink-soft);
  border:1px solid var(--line); border-radius:100px; padding:7px 14px;
  background:rgba(255,255,255,0.02);
  transition:border-color .25s, color .25s, background .25s;
}
.cap-item:hover{border-color:var(--gold-line); color:var(--gold-bright); background:var(--gold-tint);}

.cred-badge{
  max-width:1240px; margin:28px auto 0;
  display:flex; align-items:center; gap:12px;
  font-family:var(--mono); font-size:12px; letter-spacing:.06em; color:var(--ink-soft);
  border:1px solid var(--gold-line); border-radius:10px;
  background:var(--gold-tint); padding:16px 22px;
  width:fit-content;
}
.cred-badge svg{width:20px; height:20px; color:var(--gold); flex-shrink:0;}

@media (max-width: 900px){ .cap-grid{grid-template-columns:1fr;} }
