/* ── Process components (PS family: ::process-steps) ─────────────────────────
   Shipped by post.twig only when the article embeds one ('apw-ps' in the
   rendered HTML). Light editorial block modeled on the finance F4 steps card.
   Text rules scoped under .apw-ps-steps (0-2-0) vs .post-content (0-1-1). */

.apw-ps-steps {
  background: #f8f9fb;
  border: 1px solid #e3e6eb;
  border-radius: 6px;
  padding: 18px 20px;
  margin: 1.5rem 0;
}
.apw-ps-steps .apw-ps-eyebrow { display: block; font-size: .82rem; font-weight: 800; letter-spacing: .01em; text-transform: uppercase; color: #16263a; margin-bottom: 13px; }
.apw-ps-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px 20px; }
@media (max-width: 767px) { .apw-ps-grid { grid-template-columns: 1fr; gap: 12px; } }
.apw-ps-step { display: flex; gap: 12px; align-items: flex-start; }
.apw-ps-steps .apw-ps-num {
  flex-shrink: 0; width: 26px; height: 26px; border-radius: 50%;
  background: #16263a; color: #fff;
  display: flex; align-items: center; justify-content: center;
  font-size: .8rem; font-weight: 700;
}
.apw-ps-steps .apw-ps-title { display: block; font-size: .92rem; font-weight: 800; color: #1f2a3a; line-height: 1.25; }
.apw-ps-steps .apw-ps-sub { display: block; font-size: .84rem; color: #5b6472; line-height: 1.45; margin-top: 2px; }
.apw-ps-foot { display: flex; align-items: center; flex-wrap: wrap; gap: 10px 18px; margin-top: 16px; padding-top: 14px; border-top: 1px solid #e3e6eb; }
.apw-ps-steps .apw-ps-note { font-size: .78rem; color: #8a8f98; }
.apw-ps-steps .apw-ps-cta {
  margin-left: auto;
  background: #16263a; color: #fff;
  font-size: .84rem; font-weight: 700;
  padding: .45rem .85rem; border-radius: 4px; text-decoration: none;
  transition: background .15s;
}
.apw-ps-steps .apw-ps-cta:hover { background: #22385a; color: #fff; text-decoration: none; }
