If others run into the same issue, my files look like this now:
/etc/modules-load.d/nvidia-drm.conf
nvidia-drm
/usr/lib/systemd/system/lightdm.service
[Unit]
Description=Light Display Manager
Documentation=man:lightdm(1)
After=systemd-user-sessions.service
# replaces plymouth-quit since lightdm quits plymouth on its own
Conflicts=plymouth-quit.service
After=plymouth-quit.service
# lightdm takes responsibility for stopping plymouth, so if it fails
# for any reason, make sure plymouth still stops
OnFailure=plymouth-quit.service
Requires=systemd-modules-load.service
After=systemd-modules-load.service
[Service]
#ExecStartPre=/usr/bin/sleep 3
ExecStart=/usr/sbin/lightdm
Restart=always
BusName=org.freedesktop.DisplayManager
[Install]
Alias=display-manager.service
dmesg
...
[ 7.903125] [drm] Initialized nvidia-drm 0.0.0 for 0000:01:00.0 on minor 1
...
/var/log/Xorg.0.log
...
[ 9.068] (II) Applying OutputClass "nvidia" to /dev/dri/card1
...
@morgwai666 , the changes in /usr/lib/systemd/system/lightdm.service are not required, as systemd-modules-load.service is an indirect dependency of lightdm.service already: