/* Equal flexible columns. A percentage track beside a flexible one collapses the copy. */
.tc-case.tc-case-story {
  display: grid;
  grid-template-columns: minmax(0, var(--tc-story-copy, 1fr)) minmax(0, var(--tc-story-track, 1fr));
  height: calc(720 * var(--u));
  overflow: hidden;
  background: var(--tangerine-sand, #f0dfcf);
}

.tc-case.tc-case-story.tc-case-story--left {
  grid-template-columns: minmax(0, var(--tc-story-track, 1fr)) minmax(0, var(--tc-story-copy, 1fr));
}

.tc-case-story--left .tc-case-story__media {
  order: -1;
}

.tc-case-story .tc-case-story__copy {
  display: flex;
  align-items: flex-start;
  align-self: center;
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
  gap: calc(24 * var(--u));
  /* Same left start as the other case rows. Only the outer edge uses the canvas margin, so the half column is not squeezed. */
  padding: 0 48px 0 var(--tc-m);
}

.tc-case-story--left .tc-case-story__copy {
  padding: 0 var(--tc-m) 0 48px;
}

.tc-case-story--stack .tc-case-story__copy {
  flex-direction: column;
  gap: calc(16 * var(--u));
}

.tc-case-story .tc-case-story__kicker {
  flex: 0 0 auto;
  width: calc(90 * var(--u));
  margin: 0;
  font-weight: 400;
  font-size: calc(15 * var(--u));
  line-height: calc(21 * var(--u));
  letter-spacing: -0.06em;
  text-transform: uppercase;
}

.tc-case-story--stack .tc-case-story__kicker {
  width: auto;
}

.tc-case-story .tc-case-story__text {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  gap: calc(21 * var(--u));
  width: 100%;
  max-width: 431px;
  min-width: 0;
  font-size: calc(15 * var(--u));
  line-height: calc(21 * var(--u));
}

.tc-case-story .tc-case-story__media {
  align-self: center;
  height: var(--tc-story-media-h, 100%);
}

@media (max-width: 1024px) {
  .tc-case.tc-case-story,
  .tc-case.tc-case-story.tc-case-story--left {
    grid-template-columns: minmax(0, 1fr);
    height: auto;
  }

  .tc-case-story--left .tc-case-story__media {
    order: 0;
  }

  .tc-case-story .tc-case-story__copy {
    flex-direction: column;
    gap: 12px;
    padding: 72px var(--tc-m);
  }

  .tc-case-story .tc-case-story__kicker {
    width: auto;
    font-size: 15px;
  }

  .tc-case-story .tc-case-story__text {
    gap: 21px;
    width: 100%;
    max-width: 560px;
    font-size: 15px;
    line-height: 21px;
  }

  .tc-case-story .tc-case-story__media {
    justify-self: stretch;
    width: auto;
    height: var(--tc-story-media-h, auto);
    aspect-ratio: 710 / 720;
  }
}

@media (max-width: 767px) {
  .tc-case-story .tc-case-story__copy {
    padding: 56px var(--tc-m);
  }

  .tc-case-story .tc-case-story__media {
    margin: 0 var(--tc-m) 64px;
  }
}
