<a href=""><span class="visually-hidden">Инструменты</span></a>
. Про паттерн visually-hidden погуглите. блок div расширяется хотя все размеры выставлены
<code></code>
и/или песочницы типа codepen.io ну на эту разметку как бы пофиг, есть ошибка или нет, тем более такого рода, это же фигня.
div > a
Вы css-правила для одного элемента раскидываете по разным селекторам - это нерациональный подход.
<section class="">
<a href="#"><img src="https://i.ibb.co/KWqbcvP/Screenshot-2.png" ></a>
<h2 class="h2-cp">Lorem ipsum dolor sit.</h2>
<p class="text-cp">
Lorem ipsum, dolor sit amet consectetur adipisicing elit.
Cum, molestias quae? Libero itaque aperiam dicta
veritatis quo nostrum facilis expedita!
</p>
</section>
span 2
и отступ или размер.
Песочницу ага, посмотрю