5. Дальше, чтобы на больших экранах ширина была 31%, а на маленьких 95% используйте media условия.
https://jsfiddle.net/6zjpmt8k/ изменяйте ширину блока, где показан результат.
Чтобы блоки вставали ровно при большом размере окна я им сделала общую обертку и задала ей display:flex читайте: https://html5book.ru/css3-flexbox/
.service-item::before {
content:"\f005";
font-family: 'FontAwesome';
position: absolute;
top: 0;
left: 0;
width: 40px;
height: 40px;
line-height: 40px;
text-align: center;
background: orange;
border-radius: 0 0 50% 0;
} style="..." в html-коде быть не должно. Пишите классы и описывайте стили в CSS.float: left;
float: left;
margin: 10px;
margin: 5px 10px;
margin: 5px 10px 15px;
margin: 5px 10px 15px 20px;Слышал что якобы поисковики такие сайты день плохо продвигают.
<p> не вкладываюся снова в <p> и парные теги хорошо бы закрывать.