.image--banner {
  position: relative;
  overflow: hidden;
}

.image--banner > .image__body {
  min-height: 18.75rem;
  display: flex;
  float: none;
}

.image--banner > .image__body:after, .image--banner > .image__body:before {
  content: " ";
  display: table;
}

.image--banner > .image__body:after {
  clear: both;
}

.image--banner > .image__body > img {
  position: absolute;
  top: 50%;
  left: 50%;
  width: auto;
  height: 100%;
  max-height: none;
  max-width: none;
  min-height: 100%;
  min-width: 100%;
  transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
}

  @media only screen and (min-width : 48em) {
    .image--banner > .image__body {
      height: 31.25rem;
    }

    .image--banner > .image__body > img {
      top: 0;
      height: auto;
      transform: translate(-50%);
      -ms-transform: translate(-50%);
      -webkit-transform: translate(-50%);
    }
  }