/* Mission page */
.mission-page__lead { margin-top: 14px; max-width: 62ch; }
.mission-block { margin-top: clamp(48px, 6vw, 88px); }
.mission-block > h2 { font-size: clamp(2rem, 3.2vw, 3.2rem); }

/* Start, Serve, Share, Save */
.pledge-row { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; margin-top: 24px; }
.pledge-card { padding: clamp(20px, 2vw, 30px); background: rgb(24 24 27 / .88); border-top: 3px solid var(--red); }
.pledge-card__word { display: block; font: italic 700 clamp(2.2rem, 3.4vw, 3.5rem)/1.05 "Oswald", sans-serif; text-transform: uppercase; }
.pledge-card p { margin-top: 10px; color: var(--muted); font-size: 1.1rem; line-height: 1.45; }

/* The problem and the solution */
.gospel-pair { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-top: 24px; }
.gospel-card { padding: clamp(22px, 2.4vw, 36px); background: rgb(24 24 27 / .88); }
.gospel-card h3 { font-size: clamp(1.5rem, 2.1vw, 2.1rem); }
.gospel-card h3 .accent { padding-bottom: .04em; }
.gospel-list { margin-top: 18px; display: grid; gap: 18px; counter-reset: point; }
.gospel-list li { position: relative; padding-left: 40px; counter-increment: point; font-size: 1.1rem; line-height: 1.4; }
.gospel-list li::before {
  content: counter(point); position: absolute; left: 0; top: -.1em;
  font: italic 700 1.6rem/1.2 "Oswald", sans-serif; color: #e8243f;
}

/* Scripture links */
.refs { display: flex; flex-wrap: wrap; gap: 0 14px; margin-top: 3px; }
.refs a {
  display: inline-flex; align-items: center; min-height: 30px;
  color: var(--muted); font-size: .98rem; text-underline-offset: 3px; transition: color .2s;
}
.refs a:hover { color: var(--text); }

/* What must I do to be saved? */
.steps-row { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; margin-top: 24px; }
.step-card { padding: clamp(18px, 2vw, 26px); background: rgb(24 24 27 / .88); }
.step-card--wide { grid-column: 1 / -1; }
.step-card__label { display: block; color: #ff8d9c; font: 500 .95rem/1.2 "Oswald", sans-serif; text-transform: uppercase; letter-spacing: .06em; }
.step-card h3 { margin-top: 4px; font-size: clamp(1.5rem, 2vw, 2rem); }
.step-card .refs { margin-top: 8px; }

.mission-cta { margin-top: clamp(40px, 5vw, 64px); }

@media (max-width: 900px) {
  .pledge-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .gospel-pair { grid-template-columns: minmax(0, 1fr); }
  .steps-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
  .pledge-row, .steps-row { grid-template-columns: minmax(0, 1fr); }
  .step-card--wide { grid-column: auto; }
  .mission-cta .btn { width: 100%; }
}
