  In two dimensions, Gallagher's theorem is a strengthening of the Littlewood
conjecture that holds for almost all pairs of real numbers. We prove an
inhomogeneous fibre version of Gallagher's theorem, sharpening and making
unconditional a result recently obtained conditionally by Beresnevich, Haynes
and Velani. The idea is to find large generalised arithmetic progressions
within inhomogeneous Bohr sets, extending a construction given by Tao. This
precise structure enables us to verify the hypotheses of the Duffin--Schaeffer
theorem for the problem at hand, via the geometry of numbers.
