.section-text_with_image {
  margin: 5rem 0;
}
.section-text_with_image:first-child {
  padding-top: 3rem;
}
.section-text_with_image .container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  grid-column-gap: 100px;
  grid-row-gap: 50px;
  flex-direction: row-reverse;
}
.section-text_with_image .container .subheading {
  margin-left: 0;
}
.section-text_with_image .container .content {
  width: 45%;
}
.section-text_with_image .container .content *:first-child {
  margin-top: 0;
}
.section-text_with_image .container .content *:last-child {
  margin-bottom: 0;
}
.section-text_with_image .container .content :is(h1, h2) {
  width: 100%;
  margin: 0 0 25px;
}
.section-text_with_image .container .content .description {
  line-height: 1.7em;
  font-size: 0.9em;
}
.section-text_with_image .container .content .buttons {
  margin-top: 2rem;
}
.section-text_with_image .container .image {
  flex: 1;
}
.section-text_with_image .container .image img {
  border-radius: 20px;
}

@media (max-width: 950px) {
  .section-text_with_image .container {
    justify-content: center;
  }
  .section-text_with_image .container .content {
    width: 100%;
  }
  .section-text_with_image .container .image {
    flex: unset;
    width: 100%;
    max-width: 500px;
    margin-top: 25px;
  }
}
/*

Options - Border Bottom

*/
.section-text_with_image[options~=border-bottom] .container {
  border-bottom: 1px solid rgba(0, 0, 0, 0.5);
  padding-bottom: 5rem;
}

/*

Options - Border Top

*/
.section-text_with_image[options~=border-top] .container {
  border-top: 1px solid rgba(0, 0, 0, 0.5);
  padding-top: 5rem;
}

/*

Options - Align right

*/
.section-text_with_image[options~=align-right] .container {
  flex-direction: unset;
}

/*

Loading transitions

*/
/* Image */
.section-text_with_image .container .image {
  opacity: 0;
}

.section-text_with_image.scrolled-to .container .image {
  animation: tWIIMage 1s forwards;
}

@keyframes tWIIMage {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
/* Content */
.section-text_with_image .container .content {
  opacity: 0;
  margin-top: -3rem;
  margin-bottom: 3rem;
}

.section-text_with_image.scrolled-to .container .content {
  animation: tWIContent 1.5s forwards;
}

@keyframes tWIContent {
  0%, 30% {
    opacity: 0;
    margin-top: -3rem;
    margin-bottom: 3rem;
  }
  100% {
    opacity: 1;
    margin-top: 0;
    margin-bottom: 0;
  }
}