/* Editorial additions. Logical properties preserve the Arabic reading order. */
.hero--illustrated .hero__grid { gap: clamp(1.5rem, 3vw, 3.5rem); }
.hero__art { margin: 0; min-inline-size: 0; }
.hero__art img { inline-size: 100%; aspect-ratio: 3 / 2; object-fit: cover; border-radius: 10px; }
.hero__art figcaption { color: #c2d0d8; font-size: .78rem; margin-block-start: .75rem; }
.opportunity-feature, .hope-feature, .questions-layout { display: grid; gap: var(--space-4); align-items: center; }
.opportunity-feature > *, .hope-feature > *, .questions-layout > * { min-inline-size: 0; }
.opportunity-feature .board { padding-block-start: 1rem; }
.hope-feature > img { inline-size: 100%; aspect-ratio: 3 / 2; object-fit: cover; border-radius: 10px; }
.hope-feature .pull-quote { margin: 0; padding: 0; text-align: start; }
.hope-feature .pull-quote blockquote { font-size: var(--step-3); }
.hope-feature .pull-quote p { font-size: var(--step-0); }
.journey-intro { max-inline-size: 70ch; margin-block-end: 2.5rem; }
.journey { display: grid; gap: 2rem; margin: 0; padding: 0; list-style: none; counter-reset: journey; }
.journey li { min-inline-size: 0; position: relative; padding-block-start: 1rem; border-block-start: 2px solid var(--river); }
.journey__number { display: grid; place-items: center; inline-size: 2.75rem; block-size: 2.75rem; border-radius: 50%; background: var(--sun); color: #071e30; font-size: 1.15rem; font-weight: 700; margin-block-end: 1.25rem; }
.journey h3 { margin-block-end: .75rem; font-size: 1.1rem; }
.journey h3 a { color: inherit; text-decoration-color: var(--line); }
.journey p { color: var(--ink-2); font-size: .95rem; margin: 0; }
.journey-footer { border-block-start: 1px solid var(--line); margin-block-start: 2rem; padding-block-start: 1.25rem; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1rem 2rem; }
.journey-footer p { max-inline-size: 65ch; margin: 0; }
.journey-footer a { white-space: normal; }
.questions-layout { align-items: start; }
.questions details { border-block-end: 1px solid var(--line); padding-block: 1rem; }
.questions details:first-child { padding-block-start: 0; }
.questions summary { cursor: pointer; color: var(--night); font-weight: 600; padding-block: .5rem; padding-inline-end: .5rem; min-block-size: 44px; }
.questions details p { color: var(--ink-2); margin-block: .5rem 0; }
.questions details[open] summary { color: var(--river-ink); }
@media (min-width: 640px) { .journey { grid-template-columns: 1fr 1fr; } }
@media (min-width: 900px) {
  .hero--illustrated .hero__grid { grid-template-columns: 1fr 1fr; }
  .hero--illustrated { padding-block: 3.5rem 4rem; }
  .opportunity-feature { grid-template-columns: .85fr 1.4fr; gap: 3.5rem; }
  .hope-feature { grid-template-columns: 1.1fr 1fr; gap: 4rem; }
  .questions-layout { grid-template-columns: .8fr 1.2fr; gap: 4rem; }
  .journey { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 639px) {
  .journey { gap: 1.5rem; }
  .journey li { padding-inline-start: 4rem; border-block-start: 0; padding-block-start: 0; min-block-size: 5.5rem; }
  .journey__number { position: absolute; inset-inline-start: 0; inset-block-start: 0; }
  .journey li:not(:last-child)::after { content: ''; position: absolute; inset-inline-start: 1.3rem; inset-block-start: 3.25rem; inset-block-end: -1rem; inline-size: 2px; background: var(--line); }
  .hero--illustrated .hero__lede { font-size: 1.05rem; }
}
@media print {
  .journey { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .journey__number { position: static; }
  .journey li { padding-inline-start: 0; }
  .journey li::after, .journey-footer a { display: none; }
}
