Thanks for that Matt.
I've been backtracking through the Adapt code for an analogous example, such as to see how the Hot Graphic component is replaced by the Narrative component at smaller device widths - it looks as though if there were such a utility build into Adapt it might go in the device.js where it is checking for platform and screen size.