I still use tables for layouting because divs and messing with positioning/floating never really clicked for me.
Nothing wrong really. Tables used to sucks in IE era. But now IE is gone. Modern HTML Tables are fine as long as you know its limitations or basically dont try to do any fancy thing with it. For some strange reason I see people keep saying aviod table at all cost. I dont get it. May be someone could explain it better.
2. How do you deal with responsiveness? A pretty typical pattern would be "have this set of elements horizontal on large viewports, then have it vertical on small viewports". Trivially easy with flexbox (just set flex-direction at a media query breakpoint) or grid (change the number of columns).