yes you good to go, unique local or site local is what you should use for this. Nobody uses site-local in lew of ULA. If you want to prevent leakages of these, ensure you filter at the internet edge& if required.
Make sure to unique use global id for the ULA if you planning to encompass multiple sites. This will prevent later headaches with duplication of address or if you do the top-half assign the global-id part manually ( is what I do ) or use a generator to make the work easiler.
YMMV but ULA is what you want.
And in your drawging I would generate a ULA for site and waste a /64 on each link
and so on, it's a waste of addresses to use /64, but who cares it ipv6 and ULAs ;)