delay(25200000) // :)
It is ok, there is room for 4 294 967 296 milliseconds - it is a unsigned long
If you need to have both a one second and a 7 hour, then use the method outlined i the NoDelayBlink, where you loop and check if milli() has increased 25200000 since you last "fired" the 7 hour code. And this will be acurate, evn if your 7 hour code takes minutes of CPU time (the milli() stuff increments via a timer interrupt)
The acuracy is limited by the crystal. It will be in the same ballpark accuracy wise as any ordinary watch.