W CSS zwykle nie ma większego znaczenia, gdy używa się właściwości, które są powszechnie obsługiwane przez przeglądarki. Dodatkowo najlepiej używać rozwiązań, które są wygodne w implementacji.
1. Nie ma znaczenia, ale jeżeli nie będzie hamburgera to flex świetnie nadaje się do zmiany poziomej listy w pionową.
2. Jedno jest pewne, najlepiej ustawić wyświetlanie blokowe dla elementów a w nawigacji, aby możliwe było ich kliknięcie na całym rozmiarze elementu, a nie tylko zawartym tekście.
3. Najłatwiej paddingiem. Logo jest obrazkiem, więc line-height się nie nada.
4. Zależy, czy tytułem jest sam tekst, czy dodatkowo jakiś obrazek lub przycisk, czy tło jest jednolite czy jest np. sliderem. Margin-top nie bardzo.
5. Moim zdaniem padding, łatwiej jest nim manipulować przy responsywności.
6. Nie ma znaczenia. Znaczenie by było gdyby to był obrazek wektorowy, a byłoby pomiędzy czy użyć img, background-image a inline czy linkowanie jako symbol.