Как осуществить поэтапную задержку зацикленной анимации на чистом css?

Суть проблемы. У меня есть анимация. Бесконечная. Див постепенно, в три этапа, увеличивает свою ширину (на 15%, потом еще на 15%). Увеличение ширины прописаны в @keyframes. Так вот, я хочу поставить задержку выполнения в несколько секунд (не важно сколько, 2,3,4 секунды) на КАЖДЫЙ(!) этап анимации. То есть, в начале задержка, див увеличился, снова задержка, див увеличился. Но как бы я не пыжился, задержка срабатывает лишь в начале. Подскажите пожалуйста, что я делаю не так.

.out-5 {
  background: darkcyan;
}

.out-5-inner {
  background: DodgerBlue;
    display                  : flex;
    width                    : 15%;
    overflow                 : hidden;
    animation-name           : anim5;
    animation                : anim5 2s 2s linear infinite;
}

p {
  padding: 0px 30px;
  color: red;
}

@keyframes anim5 {
    to {
        width: 30%;
    }
}
@keyframes anim5 {
    to {
        width: 45%;
    }
}
<div class="out-5">
  <div class="out-5-inner">
    <p>Text1</p>
    <p>Text2</p>
    <p>Text3</p>
  </div>
</div>


Ответы (1 шт):

Автор решения: Sevastopol'

Согласно уточненным данным в комментариях от автора вопроса, будем считать:

Продолжительность анимации одного (а их два) увеличения ширины - по 2сек * 2 = 4сек

До первого увеличения ширины, и между первым и вторым - по 1сек * 2 = 2сек

После второго увеличения до возврата в исходную позицию, и возврат в исходную позицию - по 1сек * 2 = 2сек

Всего получаем 8сек - это 100%. 100% делим на 8сек = 12,5% - это 1сек

.out-5 {
  background: darkcyan;
}

.out-5-inner {
  background: DodgerBlue;
  display: flex;
  width: 15%;
  overflow: hidden;
  animation-name: anim5;
  animation: ani 8s linear infinite; /*8s - 100%; 1s - 12.5%*/
}

p {
  padding: 0px 30px;
  color: red;
}

@keyframes ani {
  0% {width: 15%;}
  /*задержка перед первым увеличением ширины - 1с*/
  12.5% {width: 15%;}
  /*первое увеличение ширины - 2с*/
  37.5% {width: 30%;}
  /*задержка перед вторым увеличением ширины - 1с*/
  50% {width: 30%;}
  /*второе увеличение ширины - 2с*/
  75% {width: 45%;}
  /*задержка перед возвратом в исходное состояние - 1с*/
  87.5% {width: 45%;}
  /*возврат в исходное состояние - 1с*/
  100% {width: 15%;}
}
<div class="out-5">
  <div class="out-5-inner">
    <p>Text1</p>
    <p>Text2</p>
    <p>Text3</p>
  </div>
</div>

→ Ссылка