Update build infrastructure for Node 20
Docusaurus 3.9.2 requires Node 20. Updates the GitHub Actions workflows to use Node 20 and bumps actions/checkout and actions/setup-node to v4. Updates the Nix dev shell to provide pkgs.nodejs_20 so that yarn start works locally without flags. Adds package-lock.json to .gitignore since the project uses Yarn exclusively and the file was removed in the previous commit.