.general-cta {
  .general-cta__row {
    display: flex;
    align-items: center;
    gap: 1rem;
  }

  .general-cta__text {
    flex: 1 1 auto;

    h3 {
      margin: 0;
    }
  }

  .general-cta__actions {
    flex: 0 0 auto;
    margin-left: auto;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0.75rem;
    white-space: nowrap;
  }

  // Explicit stacked layout (regardless of breakpoint)
  &.cta--stacked {
    .general-cta__row {
      flex-direction: column;
      align-items: flex-start;
    }

    .general-cta__actions {
      margin-left: 0;
      width: 100%;
      justify-content: flex-start;
      flex-wrap: wrap;
      white-space: normal;
    }
  }

  // optional: stack on small screens
  @include media-breakpoint-down(sm) {
    .general-cta__row {
      flex-direction: column;
      align-items: flex-start;
    }

    .general-cta__actions {
      margin-left: 0;
      width: 100%;
      justify-content: flex-start;
      flex-wrap: wrap;
      white-space: normal;
    }
  }
}