(1000 * 60 * 60 * 12)=12 seconds when program runs?

Try

unsigned long lightCycle = (1000UL * 60 * 60 * 12); //check soil every 12 hours

The default for numeric calculations is 16 bit integer.