.page {
  margin: 8px 8px 0;

  display: flex;
  align-items: center;
  color: var(--theme-color-on-background)
}

main {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  outline: none;
}

header {
  width: 100%;
  max-width: 1760px;

  display: grid;
  gap: 8px;
  grid-template-columns: repeat(2, 1fr);
  grid-auto-flow: row;

  &.content-centered {
    text-align: center;
  }

  .primary-container {
    min-height: 544px;
    grid-column: span 1;

    display: flex;
    justify-content: center;
    margin: 0;
    padding: 56px;
    border-radius: 24px;



    background: var(--theme-color-surface-1);
    background: #95E5CA;
    background: linear-gradient(90deg, #95E5CA 0%, #FDCDCD 100%);
    //background-repeat: no-repeat;
    //background-position: 0 50%;
    //background-size: cover;

    .wrapper {
      max-width: 1200px;
      display: flex;
      flex-direction: column;
      justify-content: center;
    }

    .description {
      max-width: 840px;
      font-family: var(--theme-title-l-font-family);
      font-size: var(--theme-title-l-font-size);
      font-weight: var(--theme-title-l-font-weight);
      line-height: var(--theme-title-l-line-height);
    }
  }

  @media screen and (max-width: 1294px) {
    .primary-container {
      min-height: unset;
    }
  }

  .full-width {
    grid-column: span 2;
  }
}

h1 {
  font-size: var(--theme-hero-font-size);
  font-weight: var(--theme-hero-font-weight);
  letter-spacing: var(--theme-hero-letter-spacing);
  line-height: var(--theme-hero-line-height);

  max-width: 100vw;

  hyphens: manual;

  @media screen and (max-width: 600px) {
    font-size: var(--theme-display-l-font-size);
    line-height: var(--theme-display-l-line-height);

  }
}


.ctas {
  display: grid;
  width: 100%;
  margin-top: 24px;
  grid-gap: 8px;

  button {
    padding: 0 48px;
    border-radius: 48px;
    height: 80px;
    font-size: var(--theme-headline-s-font-size);
    font-weight: var(--theme-headline-s-font-weight);
    letter-spacing: var(--theme-headline-s-letter-spacing);
  }
}


.content-container {
  margin-top: 96px;
  max-width: 1200px;
  width: 100%;

  display: grid;
  gap: 8px;
  grid-template-columns: repeat(6, 1fr);
  grid-auto-flow: row;
  grid-auto-rows: minmax(var(--min-row-height),auto);
}

.section {
  margin: 96px 0;
}

.card-set {
  --min-row-height: 320px;
  --stacked-col-max-height: 198px;

  display: grid;
  gap: 8px;
  grid-template-columns: repeat(6, 1fr);
  grid-auto-flow: row;
  grid-auto-rows: minmax(var(--min-row-height), auto);
}
