Как исправить разную позицию у псевдоэлементов, CSS?
Есть три одинаковых блока, с текстом. Текст представлен псевдоэлементом и повернут на 90 градусов. Но почему-то каждый элемент после первого смещен, как это исправить. Ниже ссылка для наглядного примера:

https://plupiks.github.io/project2/
.benefits--blocks {
display: flex;
align-items: center;
justify-content: space-between;
&:not(:last-child) {
margin-bottom: 80px;
}
}
.blocks--img {
width: auto;
display: block;
}
.blocks--text {
position: relative;
width: 540px;
display: flex;
flex-direction: column;
gap: 20px;
&::after {
position: absolute;
bottom: -20px;
left: 0;
content: '';
background: #2e77e4;
width: 100%;
height: 2px;
}
}
.blocks-text-before::before {
box-sizing: content-box;
content: attr(data-rotate-text);
display: block;
position: absolute;
top: 40px;
left: -95px;
font-family: 'CormorantInfant';
font-style: normal;
font-weight: 700;
font-size: 56px;
line-height: 135%;
color: #a4c7fc;
-webkit-transform: rotate(-90deg);
-moz-transform: rotate(-90deg);
-o-transform: rotate(-90deg);
-ms-transform: rotate(-90deg);
transform: rotate(-90deg);
}
.blocks-text--title {
font-family: 'CormorantInfant';
font-style: italic;
font-weight: 700;
font-size: 56px;
line-height: 135%;
color: #2e77e4;
}
.benefits--blocks {
&:nth-child(odd) {
flex-direction: row;
}
}
<article class="benefits--blocks blocks">
<div class="blocks--img">
<img src="@img/1920/benefits/01.png" alt="benefits image">
</div>
<div class="blocks--text blocks-text-before" data-rotate-text="Расскажу">
<h3 class="blocks-text--title">
Практикам, экспертам, специалистам
</h3>
<ul class="list">
<li class="list-item">
Не понимаете, в чем ваша ценность как эксперта и мучаетесь от синдрома самозванца
</li>
<li class="list-item">
Хотите передавать свой опыт, но не понимаете, как начать
</li>
<li class="list-item">
Желаете перейти из офлайна в онлайн
</li>
<li class="list-item">
Мечтаете о своём курсе, но не знаете, с кем и как мне это делать
</li>
</ul>
</div>
</article>
Ответы (1 шт):
Автор решения: KopteLove
→ Ссылка
Да @Vitaliy ты прав это из-за длинны текста, тк ты позиционируешь слева, но при этом поворачиваешь на 90deg
.blocks-text-before::before {
box-sizing: content-box;
content: attr(data-rotate-text);
display: block;
position: absolute;
top: 50%;
left: -70px;
white-space: nowrap;
font-family: "CormorantInfant";
font-style: normal;
font-weight: 700;
font-size: 56px;
line-height: 135%;
color: #a4c7fc;
transform: rotate(-90deg) translateX(-50%);
transform-origin: left center;
}
Можно попробовать так)