.paragraph-mosaic {
  margin: 0 auto;
  padding: 0 30px;
  position: relative;
}
@media (min-width: 730px) {
  .paragraph-mosaic {
    padding: 0;
  }
}

.paragraph-mosaic__inner {
  position: relative;
  z-index: 2;
  box-shadow: 0 20px 50px 10px rgba(36, 46, 50, 0.2);
}
@media (min-width: 480px) {
  .paragraph-mosaic__inner {
    display: flex;
    flex-wrap: wrap;
  }
}

.paragraph-mosaic__text-item {
  display: flex;
  background: #fff;
}
@media (min-width: 480px) {
  .paragraph-mosaic__text-item {
    flex: 0 0 100%;
  }
}
@media (min-width: 980px) {
  .paragraph-mosaic__text-item {
    flex: 0 0 50%;
  }
}
.paragraph-mosaic__text-item.has-background--primary {
  background: rgb(198, 141, 39);
  color: #fff;
}
.paragraph-mosaic__text-item.has-background--primary h2 {
  color: #fff;
}
.paragraph-mosaic__text-item.has-background--secondary {
  background: rgb(68, 86, 95);
  color: #fff;
}
.paragraph-mosaic__text-item.has-background--secondary h2 {
  color: #fff;
}
.paragraph-mosaic__text-item.has-background--dark {
  background: rgb(38, 50, 56);
  color: #fff;
}
.paragraph-mosaic__text-item.has-background--dark h2 {
  color: #fff;
}
.paragraph-mosaic__text-item.has-background--light {
  background: rgb(238, 239, 243);
}
.paragraph-mosaic__text-item.has-background--light h2 {
  color: rgb(98, 98, 98);
}

.paragraph-mosaic__text-item__inner {
  padding: 60px 60px 0;
  position: relative;
}

.paragraph-mosaic__text-item__title {
  margin-top: 40px;
  font-weight: 300;
  text-transform: none;
}
@media (min-width: 730px) {
  .paragraph-mosaic__text-item__title {
    font-size: 32px;
    line-height: 1em;
  }
}

.paragraph-mosaic__text-item__icon {
  display: block;
  height: 24px;
}

.paragraph-mosaic__item {
  flex: 0 0 100%;
  position: relative;
}
@media (min-width: 480px) {
  .paragraph-mosaic__item {
    flex: 0 0 50%;
  }
}
@media (min-width: 980px) {
  .paragraph-mosaic__item {
    flex: 0 0 25%;
  }
}

.paragraph-mosaic__item__content::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: rgba(0, 0, 0, 0.5);
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.75) 100%);
  z-index: 0;
}
.paragraph-mosaic__item__content {
  position: absolute;
  bottom: 0;
  margin: 0;
  padding: 15px;
  color: white;
  z-index: 2;
  width: 100%;
}
@media (min-width: 730px) {
  .paragraph-mosaic__item__content {
    padding: 15px 20px;
  }
}

.paragraph-mosaic__item .field--name-field-title {
  font-size: 15px;
  line-height: 19px;
  margin: 0 auto 5px;
  font-weight: 600;
  text-transform: uppercase;
  position: relative;
}

.paragraph-mosaic__item .field--name-field-p-hp-igrid-img-description {
  margin: 0 0 -1.5rem;
  font-size: 14px;
  line-height: 19px;
  position: relative;
}
@media (min-width: 730px) {
  .paragraph-mosaic__item .field--name-field-p-hp-igrid-img-description {
    line-height: 19px;
  }
}

/* drupal selectors */