.rw-process {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 32px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.rw-process__step { padding: 30px 0; border-top: 2px solid currentColor; }
.rw-process__step > span { display: block; font: 600 80px/1 "Instrument Sans", sans-serif; margin-bottom: 30px; }
.rw-process__step h3 { font: 600 26px/1.2 "Instrument Sans", sans-serif; margin: 0 0 16px; color: inherit; }
.rw-process__step p { font-size: 17px; line-height: 1.6; margin: 0; }
@media (max-width: 781px) {
  .rw-process { grid-template-columns: 1fr; gap: 12px; }
  .rw-process__step { display: grid; grid-template-columns: 64px 1fr; gap: 12px 20px; padding: 24px 0; }
  .rw-process__step > span { grid-row: 1 / 3; font-size: 54px; margin: 0; }
  .rw-process__step h3, .rw-process__step p { margin: 0; }
}

.rw-process.rw-process--background .rw-process__step {
  position: relative;
  isolation: isolate;
  min-height: 290px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}
.rw-process.rw-process--background .rw-process__step > span {
  position: absolute;
  bottom: 0;
  right: 20px;
  padding-inline: .08em;
  transform: translateY(20%);
  clip-path: inset(-10% -10% 20% -10%);
  margin: 0;
  font-size: clamp(110px, 12vw, 170px);
  line-height: 1;
  letter-spacing: .025em;
  opacity: .09;
  pointer-events: none;
  z-index: -1;
}
.rw-process--background .rw-process__step h3 { margin-bottom: 16px; }
