A versão curta é que sua regra de reescrita precisava de um parâmetro de exclusão para offline.php. Caso contrário, ele estava tentando redirecionar todas as páginas nesse domínio, incluindo offline.php - assim, o loop infinito que o Firefox estava lhe alertando.
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{REQUEST_URI} !^/offline\.php$
RewriteRule ^(.*)$ http://www.example.com/offline.php [L,NC,R=301]
Para mais informações, confira a solução descrita em ". htaccess e mod_rewrite (redireciona) Explained ".
Redirecting all your pages to one:
This special rewrite is useful when a you need to close a site (permanently or for maintenance) and send the traffic from all the pages to a special page that explains the current situation. This example excludes stylesheets, jpg and gif images from the redirect, so you can still use our "look and feel" on the special pages. See my Mod_rewite Redirects All Site Pages To One post for some more on this one.