.paragraph-settings-wrapper {
  position: relative;
}

.paragraph-settings-wrapper .content-wrapper {
  position: relative;
  z-index: 2;
}

.paragraph-settings-wrapper .media-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.paragraph-settings-wrapper .media-wrapper .bg-color,
.paragraph-settings-wrapper .media-wrapper .bg-image,
.paragraph-settings-wrapper .media-wrapper .bg-video {
  position: absolute; /** @codetag: backport */
  top: 0;
  left: 0;
  display: block;
  height: 100%;
  width: 100%;
}

/**
 * This is targeting only projects created after release of version 4.3.0 that
 * have .background-wrapper class and where .bg-color, .bg-image and .bg-video
 * are no longer positioned absolute (but relative).
 */
.paragraph-settings-wrapper .media-wrapper .background-wrapper {
  height: 100%;
}

.paragraph-settings-wrapper .media-wrapper .background-wrapper .bg-color,
.paragraph-settings-wrapper .media-wrapper .background-wrapper .bg-image,
.paragraph-settings-wrapper .media-wrapper .background-wrapper .bg-video {
  position: relative;
}

.paragraph-settings-wrapper .media-wrapper .background-wrapper .bg-color ~ .bg-image,
.paragraph-settings-wrapper .media-wrapper .background-wrapper .bg-color ~ .bg-video {
  top: -100%;
}

.paragraph-settings-wrapper .media-wrapper .background-wrapper .bg-color ~ .bg-image ~ .bg-video {
  top: -200%;
}
/** end of .background-wrapper targeting */

.paragraph-settings-wrapper .media-wrapper .bg-color {
  z-index: 3;
}

.paragraph-settings-wrapper .media-wrapper .bg-image {
  z-index: 2;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

.paragraph-settings-wrapper .media-wrapper .bg-video {
  z-index: 1;
}

.paragraph-settings-wrapper .media-wrapper .bg-video video {
  position: absolute;
  top: 50%;
  left: 50%;
  width: auto;
  height: auto;
  min-width: 100%;
  min-height: 100%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.paragraph-settings-wrapper .media-wrapper .bg-video video.vertical {
  max-height: 100%;
}

.paragraph-settings-wrapper .media-wrapper .bg-video video.horizontal {
  max-width: 100%;
}

/** Title styles **/
.ps_title_style__align_left {
  text-align: left;
}

.ps_title_style__align_center {
  text-align: center;
}
