.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. Вендорные префиксы лучше доверить расставлять
автопрефиксеру.