.quote {
  margin: em(50px) 0;
  position: relative;
  z-index: 1;
  color: $dark_gray;
  &.image {
    padding-right: em(250px);
    min-height: em(300px);
  }
  @media screen and (max-width: $medium_breakpoint) {
    &.image {
      min-height: 0;
      padding-right: 0;
    }
  }
}

.quote__image__frame {
  position: absolute;
  top: em(-10px);
  right: 0;
  width: em(230px);
  @media screen and (max-width: $medium_breakpoint) {
    position: relative;
    top: 0;
    width: em(140px);
    margin: em(30px) 0 0;
  }
}

.quote__image__main {
  width: 100%;
  padding-bottom: 100%;
  height: 0;
  overflow: hidden;
  border-radius: 50%;
  position: relative;
  will-change: transform;
  & + .quote__source {
    margin-top: 25px;
    text-align: center;
  }
}

.quote__image {
  position: absolute;
  top: -10%;
  left: 0;
  display: block;
  width: 100%;
  height: auto;
}

.quote__content {
  font-size: em(35px);
  font-weight: 300;
  line-height: 1.3;
  margin-bottom: em(10px);
  &:before {
    content: '«';
    display: inline;
  }
  &:after {
    content: '»';
    display: inline;
  }
  @media screen and (max-width: $medium_breakpoint) {
    font-size: em(25px);
  }
}

.quote__source {
  font-weight: 800;
}