Why is my Camera rotation tilted after parenting it to head?

When I parent my Camera to my player’s head is rotated sideways 90 degrees and tilted 90 degrees. In my Start() I’m parenting it to the head then setting the position and rotation to that of the head. It might be gard to see on the photo but the camera is pointing sideways instead of straight ahead of her and it’s rotate so instead of orbiting up and down it looks left and right but thet axes is set right and the camera pans fine when it’s not parented.
alt text

   void Start()
        fpsCam = GameObject.Find("FPSCam").GetComponent<Camera>();
        head = GameObject.Find("Head");
        fpsCam.transform.parent = head.transform;
        fpsCam.transform.localPosition = Vector3.zero;
        fpsCam.transform.localRotation = head.transform.rotation;

If you still wanna use the script I suggest not using

fpsCam.transform.localRotation = head.transform.rotation;

your head is probably rotated if its not i suggest using

  fpsCam.transform.localRotation = head.Quaternion.identity;