.paragraph--type--text-image .field-paragraph-media {
  margin-top: 6px;
}
.paragraph--type--text-image .field-paragraph-media img,
.paragraph--type--text-image .field-paragraph-text,
.paragraph--type--text-image {
  margin-bottom: 2em;
}
.paragraph--type--image {
  margin: 2em 0 3em;
}
.paragraph--type--text div>h2:first-child {
  margin-top: 0;
}

.text-float-left ul,
.text-float-right ul {
  padding-left: 2.1rem;
}

@media only screen and (min-width: 960px) {
  .field-paragraph-media img:last-child,
  .paragraph--type--text-image .field-paragraph-text {
    margin-bottom:0;
  }
  .paragraph--type--text-image:not(.no-image)>div {
    width: calc(50% - 15px);
  }
  .paragraph--type--text-image:not(.no-image) .field-paragraph-text p {
    margin-top: -7px;
  }
  .paragraph--type--text-image:not(.no-image)>div:first-child {
    float: left;
  }
  .paragraph--type--text-image:not(.no-image)>div:first-child+div {
    margin-left: calc(50% + 15px);
  }
  .paragraph--type--text-image:not(.no-image).media-third>div.field-paragraph-text {
    width: calc(100% / 3 * 2 - 15px);
  }
  .paragraph--type--text-image:not(.no-image).media-third.text-float-right>div.field-paragraph-text {
    margin-left: calc(100% / 3 + 15px);
  }
  .paragraph--type--text-image:not(.no-image).media-third div.field-paragraph-media {
    width: calc(100% / 3 - 15px);
  }
  .paragraph--type--text-image:not(.no-image).media-third.text-float-left div.field-paragraph-media {
    margin-left: calc(100% / 3 * 2 + 15px);
  }
}
