.quote {
  align-items: center;
  display: flex;
  justify-content: center;
  padding: 16rem 0;

  @include media('<phone') {
    padding: 5rem 0;
  }
}

.quote__box {
  max-width: 104rem;
  position: relative;

  @include media('>=desktop') {
    max-width: 1040px;
  }

  @include media('<phone') {
    width: 89%;
  }
}

.quote__description {
  font: 4.6rem/1.35 $font-editorial-new;
  text-align: center;

  .quote--active & {
    span:nth-of-type(1) {
      transform: translateX(-5.3rem);
    }

    span:nth-of-type(2) {
      transform: translateX(5.2rem);
    }

    span:nth-of-type(5) {
      transform: translateX(-5.2rem);
    }

    span:nth-of-type(6) {
      transform: translateX(5.2rem);
    }
  }

  span {
    display: inline-block;
    transition: transform 1s var(--ease-out-expo);
  }

  @include media('>=desktop') {
    font-size: 46px;

    .quote--active & {
      span:nth-of-type(1) {
        transform: translateX(-53px);
      }

      span:nth-of-type(2) {
        transform: translateX(52px);
      }

      span:nth-of-type(5) {
        transform: translateX(-52px);
      }

      span:nth-of-type(6) {
        transform: translateX(52px);
      }
    }
  }

  @include media('<phone') {
    font-size: 3.2rem;
    line-height: 4.3rem;

    br {
      display: none;
    }

    span {
      display: inline;
    }
  }
}

.quote__media {
  border-radius: 50%;
  height: 8rem;
  opacity: 0;
  position: absolute;
  transform: scale(0.5);
  transform-origin: center;
  transition:
    opacity 1s ease,
    transform 1s ease;
  width: 8rem;

  &:nth-of-type(1) {
    left: 16.5rem;
    top: -0.8rem;
  }

  &:nth-of-type(2) {
    left: 101.8rem;
    top: 5.2rem;
  }

  &:nth-of-type(3) {
    left: 59rem;
    top: 17.5rem;
  }

  .quote--active & {
    opacity: 1;
    transform: scale(1);

    &:nth-of-type(1) {
      transition-delay: 0.1s;
    }

    &:nth-of-type(2) {
      transition-delay: 0.3s;
    }

    &:nth-of-type(3) {
      transition-delay: 0.2s;
    }
  }

  @include media('>=desktop') {
    height: 80px;
    width: 80px;

    &:nth-of-type(1) {
      left: 165px;
      top: -8px;
    }

    &:nth-of-type(2) {
      left: 1018px;
      top: 52px;
    }

    &:nth-of-type(3) {
      left: 590px;
      top: 175px;
    }
  }

  @include media('<phone') {
    height: 4.8rem;
    width: 4.8rem;

    &:nth-of-type(1) {
      left: 28rem;
      top: -0.3rem;
    }

    &:nth-of-type(2) {
      left: 0;
      top: 34.5rem;
    }

    &:nth-of-type(3) {
      left: auto;
      right: -1rem;
      top: 42.8rem;
    }
  }
}
