Odd.... RCFlyer had it, it was the missing semi-colon (or you could drop the "then" to a separate line, it's the same difference):
Also, make sure there's a blank line after the "fi" statement... It's possible that might be confusing it.
if [ "index.html" -nt "reference.txt" ]
mail firstname.lastname@example.org -s a subject line "Page down" </dev/null
One other point to note, although this won't produce a syntax error, is that the "a subject line" entry was a placehold.... you can actually just use "-s Page Down" on the mail line, and the quotes aren't required, ie:
Again, this wouldn't produce your syntax error, just an e-mail with a subject line that wouldn't have been what you expected.
mail email@example.com -s a Page down </dev/null