Having trouble preparing my game for different resolutions and aspect ratios

I’m finishing up a mobile 2D game of mine and am having quite some troubles figuring out the way to properly scale it for the multitude of resolutions that there is on the market. So right now, I control the camera in such a way that I have a script attach to the camera which establishes the ortographicSize like this:

public class OrthoSizeSetter : MonoBehaviour {

    public Main mainScriptHolder;

    [Range(0, 2)]
    public float zoomBias = 1.0f;

    // Use this for initialization
    void Start()
    {
        Camera.main.orthographicSize = (mainScriptHolder.mapWidth * Screen.height / Screen.width * 0.5f) * zoomBias;
    }
}

and another one which controls the projectionMatrix:

public class CameraAspectController : MonoBehaviour {

    public float orthographicSize = 100;
    public float aspect = 0.625f;
    void Update()
    {
        Camera.main.projectionMatrix = Matrix4x4.Ortho(
                -orthographicSize * aspect, orthographicSize * aspect,
                -orthographicSize, orthographicSize,
                Camera.main.nearClipPlane, Camera.main.farClipPlane);
    }
}

Now, this works pretty well for some devices - for example when running the game in the Mate 20 Pro or the Samsung S10+, I get exactly what I want:

However, running it on devices that aren’t as tall makes it basically unplayable, like an iPhone 8 or the Google Pixel XL:

Why is that so? How can I counter it to have it scale as easily to such devices as it does to the ones in the first group?

No ideas? :frowning: