/* Three step cards: icon and ghost numeral on top, title, text, tags. */
.how__steps { display: grid; gap: var(--space-4); grid-template-columns: 1fr; }
@media (min-width: 900px) { .how__steps { grid-template-columns: repeat(3, 1fr); gap: var(--space-5); } }

.how__step {
  position: relative;
  display: flex; flex-direction: column;
  padding: clamp(26px, 2.6vw, 36px);
  background: linear-gradient(180deg, #131314, #0f0f10);
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.05) inset;
  transition: border-color 0.4s, transform 0.5s var(--ease);
}
.how__step:hover { border-color: var(--line-strong); transform: translateY(-3px); }

/* A faint rail between the cards on desktop. */
@media (min-width: 900px) {
  .how__step + .how__step::before {
    content: ""; position: absolute; left: calc(var(--space-5) * -1); top: 50px; width: var(--space-5); height: 1px;
    background: linear-gradient(90deg, var(--line-strong), transparent);
  }
}

.how__top { display: flex; align-items: center; justify-content: space-between; margin-bottom: var(--space-6); }
.how__icon {
  display: grid; place-items: center; width: 48px; height: 48px;
  border: 1px solid var(--line-strong); border-radius: 14px;
  background: rgba(255, 255, 255, 0.03);
}
.how__icon svg { width: 22px; height: 22px; fill: none; stroke: var(--text); stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.how__num {
  font-family: var(--serif); font-weight: 600; font-size: 3.4rem; line-height: 0.8;
  letter-spacing: -0.03em; color: rgba(255, 255, 255, 0.12);
}

.how__title { font-family: var(--sans); font-weight: 600; font-size: 1.3rem; letter-spacing: -0.02em; line-height: 1.2; margin-bottom: var(--space-3); }
.how__text { color: var(--text-2); font-size: 0.98rem; max-width: 38ch; }

.how__chips { display: flex; flex-wrap: wrap; gap: 8px; margin-top: auto; padding-top: var(--space-5); }
.how__chip {
  padding: 5px 12px; border: 1px solid var(--line); border-radius: var(--radius-pill);
  background: rgba(255, 255, 255, 0.025);
  color: var(--text-2); font-family: var(--mono); font-size: 0.7rem; letter-spacing: 0.04em;
}
