Transform: scale(1.05); Как уменьшить обратную скорость?
.talkBtn:hover {
    transition: all 0.5s ease-in; // При наведении кнопка увеличивается за полсекунды
}

.talkBtn {
    transition: all 3s ease-in; // А уменьшается обратно уже за три
}
Если вам просто нужна одинаковая скорость, то transition нужно назначать для дефольного состояния без ховера. В вашем коде для уменьшения вообще transition не работает.Нормальна ли такая структура?Нет, кнопки нужно делать при помощи кнопок: <button class="talkBtn" type="button">Высказаться</button>
Тем более, что ваш дизайн вполне можно реализовать при помощи одного элемента, использовать три совершенно нет причин.
А вообще, по последним спецификациям в ссылки можно вставлять блочные элементы, да.
https://youtu.be/MWJKwn_gKR4
P.S. Вендорные префиксы лучше доверить расставлять автопрефиксеру.
1. Без js никак.
2. The a element may be wrapped around entire paragraphs, lists, tables, and so forth, even entire sections, so long as there is no interactive content within (e.g. buttons or other links). https://www.w3.org/TR/html5/text-level-semantics.h...