Okay, thanks John.
It’s strange, my function size for hero is as follows:
add_image_size( 'hero', 1366, 400, true );
I’m uploading at 2732px by 800px to account for @2x images. This works across all other image fields (which are smaller).
I’ll do some further digging.