Это от твоих потребностей, учти, дисплей скрывает элемент и убирает его из потока, опасити и визабилити скроют элемент но оставят зарезервированным место под него
Я стараюсь использовать дисплей, чтобы не было лишних элементов, но тогда transition не будет работать, плавность будет только у опасити, но так как тебе надо по хаверу, то лучше б здесь я бы добавил яваскрипта, в твоём же случае будет актуально или опасити или визабилити, тут уже твое предпочтение. И лучше не делай background: #333;
Background-color сделай, потому что твое свойство в будущем может перебить остальные. А вообще попробуй каждое из этого, я просто с телефона пишу и посмотреть хорошо код не могу) главное пойми, с дисплей и визабилити анимации не будет
И если хочешь верстать, начинай имена классов писать правильно, а то у тебя они, если будут с другим кодом, то тяжело разобрать, что к чему относится, можешь почитать про БЭМ от Яндекса, там все на русском и для начала работы за пол часа можно понять азы