OK, I think I've got to the bottom of it, and the answer, as you suggested, is to use absolute URL's for the config.xlm and theme.css files. The juicebox.js link doesn't care if the path is relative or absolute.
Here are the links, as shown in Chrome's Developers tools:
URL re-write off, relative paths - WORKS
http://stevemortonphotography.uk/juiceb … uicebox.js
http://stevemortonphotography.uk/juiceb … /theme.css
http://stevemortonphotography.uk/images … config.xml
URL re-write on, relative paths - FAILS
http://stevemortonphotography.uk/juiceb … uicebox.js
http://stevemortonphotography.uk/galler … /theme.css
http://stevemortonphotography.uk/galler … config.xml
URL re-write on, theme url absolute, others relative - FAILS
http://stevemortonphotography.uk/juiceb … uicebox.js
http://stevemortonphotography.uk/juiceb … /theme.css
http://stevemortonphotography.uk/galler … config.xml
URL re-write on, theme and gallery url's absolute, jbcore relative - WORKS
http://stevemortonphotography.uk/juiceb … uicebox.js
http://stevemortonphotography.uk/juiceb … /theme.css
http://stevemortonphotography.uk/images … config.xml
The difference between the juicebox.js path and the others is that it is set up directly in the embed code in the page source, while the other two are (presumably!) passed through some of your code, as they are defined as part of the 'juicebox' structure, and are then getting re-written by Joomla.
I think the reason that absolute URL's didn't work when I first tried them was due to a typo, which I'd managed to copy and paste to each address - sorry about that.
I'm happy to live with the use of absolute URL's, and everything else seems to working very well, so, unless you want to dig into it further, you can consider this one solved.
Again, thanks for your time.
Steve