In 90% of cases, ordinary Gutenberg blocks are enough, they are good and getting better. But for different devices, you should always write a custom css. And also I don’t understand how in 2022 they still don’t have a hover state, it’s wild.
Is there any lightweight solution for this?