.card-stack {
  --card-stack-gap: 16px; /* Used by JS */
  padding-block: 64px 48px;
}

.card-stack--is-enhanced {
  & .card-stack-item__title {
    block-size: var(--card-stack-title-height, auto);
  }

  & .card-stack-item__title-inner {
    position: absolute;
    inset-block-start: 0;
    inset-inline: 0;
  }
}


.card-stack__header {
  inline-size: min(100%, 387px);
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.card-stack__header .field--name-field-title {
  color: #FFF;
  font-size: 32px;
  font-weight: 400;
  line-height: 1.188;
  letter-spacing: -0.5px;
}

.card-stack__header .field--name-field-body {
  color: #B7B7B8;
  font-size: 24px;
  font-weight: 400;
  line-height: 1.25;
  letter-spacing: -0.2px;
}

.card-stack__header .field--name-field-title > *,
.card-stack__header .field--name-field-body > * {
  margin-block-end: 0;
}

.card-stack__items {
  inline-size: 100%;
  margin-block-start: 32px;
  display: grid;
  gap: var(--card-stack-gap);
}

.card-stack__item-shell {
  position: relative;
}

@media screen and (min-width: 768px) {
  .card-stack {
    --card-stack-gap: 32px;
    padding-block: 91px 120px;
  }

  .card-stack__header {
    inline-size: min(100%, 923px);
    gap: 40px;
  }

  .card-stack__header .field--name-field-title {
    inline-size: min(100%, 784px);
    font-size: 41px;
    line-height: 1.122;
  }

  .card-stack__header .field--name-field-body {
    font-size: 36px;
    line-height: 1.278;
  }

  .card-stack__items {
    inline-size: 100%;
    margin-block-start: 81px;
  }
}
