.sp-falls-short__split {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-2xl);
  align-items: start;
}
/* Tablet+: go 2-col so the prose and the pull-out aside sit side-by-side
   wherever there's room. Mobile (<768) stays stacked. */
@media (min-width: 768px) {
  .sp-falls-short__split {
    grid-template-columns: 1.1fr 1fr;
    gap: var(--space-3xl);
    align-items: center;
  }
}
@media (min-width: 1024px) {
  .sp-falls-short__split {
    gap: var(--space-4xl);
  }
}

/* ---- Left: editorial column ---- */
.sp-falls-short__content { max-width: 560px; }
.sp-falls-short__eyebrow {
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--clr-primary);
  margin: 0 0 var(--space-md);
}
.sp-falls-short__heading {
  line-height: 1.05;
  letter-spacing: -0.025em;
  margin: 0 0 var(--space-lg);
}
@media (min-width: 768px) and (max-width: 1023px) {
  .sp-falls-short__heading { font-size: var(--font-size-4xl); }
}
.sp-falls-short__lede {
  line-height: 1.55;
  margin: 0 0 var(--space-lg);
}
.sp-falls-short__body {
  line-height: 1.65;
  margin: 0;
}

/* ---- Right: pull-out aside ---- */
.sp-falls-short__aside {
  border-left: 2px solid var(--clr-primary);
  padding: var(--space-xs) 0 var(--space-xs) var(--space-md);
  max-width: 460px;
}
@media (min-width: 768px) {
  .sp-falls-short__aside {
    padding-left: var(--space-xl);
  }
}
@media (min-width: 1024px) {
  .sp-falls-short__aside {
    padding-left: var(--space-2xl);
  }
}
.sp-falls-short__aside-label {
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--clr-neutral-medium);
  margin: 0 0 var(--space-md);
}
.sp-falls-short__question {
  line-height: 1.1;
  letter-spacing: -0.025em;
  margin: 0 0 var(--space-md);
}
@media (min-width: 768px) and (max-width: 1023px) {
  .sp-falls-short__question { font-size: var(--font-size-3xl); }
}
.sp-falls-short__aside-note {
  line-height: 1.6;
  margin: 0;
}

/* Richtext blocks now wrap their copy in <p>/<h2>; collapse the inner
   element margins so the wrapper-level spacing above stays exact. */
.sp-falls-short__eyebrow > *,
.sp-falls-short__heading > *,
.sp-falls-short__lede > *,
.sp-falls-short__body > *,
.sp-falls-short__aside-label > *,
.sp-falls-short__question > *,
.sp-falls-short__aside-note > * {
  margin: 0;
  font: inherit;
  line-height: inherit;
  letter-spacing: inherit;
  color: inherit;
  text-transform: inherit;
}
