I found the culprit for this issue.
I have a main form with a column panel named “content_panel”.
I load different pages by adding forms to “content_panel”:
self.content_panel.clear()
self.content_panel.add_component(Location_Form(),full_width_row=True)
It is this column panel that adds the rogue vertical scroll bar when the browser is resized below min-width 991px or on mobile devices.
I can fix the issue with a “hide_vscroll” role for “content_panel” of overflow-y: hidden
I was struggling to find this because I was working on the issue being with the form I was loading not the main form.
I would be interested to know why this behaviour happens if anyone has any ideas?