.blok {
    width: 0%;
    height: inherit;
    background: #ffb510;
    position: absolute;
    animation: mainBlock 2s cubic-bezier(.74, .06, .4, .92) forwards;
    display: flex;
}

.title {
    width: 100%;
    position: relative;
    display: flex;
    align-items: center;
    height: calc(13vh + 6vw);

    h1 {
        font-family: 'Roboto';
        color: #fff;
        font-size: calc(6vh + 3vw);
        -webkit-animation: mainFadeIn 2s forwards;
        -o-animation: mainFadeIn 2s forwards;
        animation: mainFadeIn 2s forwards;
        animation-delay: 1.6s;
        opacity: 0;
        display: flex;
        align-items: baseline;
        position: relative;

        span {
            width:0px;
            height: 0px;
            -webkit-border-radius: 50%;
            -moz-border-radius: 50%;
            border-radius: 50%;

            background: #ffb510;
            -webkit-animation: load 0.6s cubic-bezier(.74, .06, .4, .92) forwards;
            animation: popIn 0.8s cubic-bezier(.74, .06, .4, .92) forwards;
            animation-delay: 2s;
            margin-left: 5px;
            margin-top: -10px;
            position: absolute;
            bottom: 13px;
            right: -12px;
        }
    }
}

.role {
    width: 100%;
    position: relative;
    display: flex;
    align-items: center;
    height: calc(2vh + 1vw);
    margin-top: 1vh;

    .blok {
        width: 0%;
        height: inherit;
        background: white;
        position: absolute;
        animation: secBlock 2s cubic-bezier(.74, .06, .4, .92) forwards;
        animation-delay: 2s;
        display: flex;
    }

    p {
        animation: secFadeIn 2s forwards;
        animation-delay: 3.2s;
        opacity: 0;
        font-weight: 400;
        color: #ffb510;
        font-size: calc(2vh + 1vw);
        text-transform: uppercase;
    }
}

.text-title {
  position: absolute;
  height: calc(3vh + 1vw);
  text-align: left;
  margin: 4vh 0 0 4vh;

  .block-test {
    width: 0%;
    height: inherit;
    background: #ffb510;
    position: absolute;
    animation: none;
    animation-delay: 0s;
  }

  h1 {
    font-family: 'Roboto';
    color: #fff;
    font-size: calc(2vh + 1vw);
    opacity: 0;
    display: flex;
    align-items: baseline;
    animation: none;
    animation-delay: 0s;
    margin: 0;

    span {
      width: 0;
      height: 0;
      border-radius: 50%;
      background: #ffb510;
      position: absolute;
      bottom: 13px;
      right: -12px;
      animation: none;
      animation-delay: 0s;
    }
  }
}


.text-role {
  position: absolute;
  height: calc(2vh + 1vw);
  text-align: left;
  margin: 9vh 0 0 4vh;

  .block-image {
    width: 0%;
    height: inherit;
    background: white;
    position: absolute;
    animation: none;
    animation-delay: 0s;
  }

  p {
    opacity: 0;
    font-weight: 400;
    color: #ffb510;
    font-size: calc(1vh + 1vw);
    text-transform: uppercase;
    animation: none;
    animation-delay: 0s;
    margin: 0;
  }
}

.grid-item:hover {
  .text-role {
    .block-image {
      animation: secBlock 2s cubic-bezier(.74, .06, .4, .92) forwards;
      animation-delay: 2s;
    }

    p {
      animation: secFadeIn 2s forwards;
      animation-delay: 3.2s;
    }
  }

    .text-title {
    .block-test {
      animation: mainBlock 2s cubic-bezier(.74, .06, .4, .92) forwards;
      animation-delay: 0;
    }

    h1 {
      animation: mainFadeIn 2s forwards;
      animation-delay: 1.6s;

      span {
        animation: popIn 0.8s cubic-bezier(.74, .06, .4, .92) forwards;
        animation-delay: 2s;
      }
    }
  }

}

@keyframes mainBlock {
  0% {
    width: 0%;
    left: 0;

  }
  50% {
    width: 100%;
    left: 0;

  }
  100% {
    width: 0;
    left: 100%;
  }
}

@keyframes secBlock {
  0% {
    width: 0%;
    left: 0;

  }
  50% {
    width: 100%;
    left: 0;

  }
  100% {
    width: 0;
    left: 100%;
  }
}

@keyframes mainFadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}


@keyframes popIn {
  0% {
    width: 0px;
    height: 0px;
    background: #e9d856;
    border: 0px solid #ddd;
    opacity: 0;
  }
  50% {
    width: 10px;
    height: 10px;
    background: #e9d856;
    opacity: 1;
    bottom: 45px;
  }
   65% {
      width: 7px;
    height: 7px;
      bottom: 0px;
      width: 15px
   }
   80% {
      width: 10px;
    height: 10px;
      bottom: 20px
   }
  100% {
    width: 7px;
    height: 7px;
    background: #e9d856;
    border: 0px solid #222;
    bottom: 13px;

  }
}

@keyframes secFadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes top {
  0% {
    opacity: 0;
     bottom: -80px
  }
  100% {
    opacity: 1;
     bottom: 0px

  }
}

@keyframes icon {
  0% {
    opacity: 0;
     transform: scale(0.0);
  }
   50% {
      opacity: 1;
     transform: scale(1.3) rotate(-02deg);
   }
  100% {
    opacity: 1;
     bottom: 0px;
  }
}