Hi there,
Thanks for posting in.
Tha solution would be setting minimum height for each of your columns, example, you can inspect the column and add this min-height: 200px; to Inline CSS input field under Customize section. OR, the best solution is turning on your rows margin less column and you can do that through rows options (inspect the row).
As for buttons, they are styled with flex layout what you could do is utilize the Hide During Breakpoints under Customize section. Example, you can add two header container, one which is hidden from mobile and one hidden from the desktop (through Customize option). Then in each container have the same buttons, the only difference is each container have different flex layout, flex layout controls if the child elements will be displayed by columns or by rows.
Hope this helps.