  We consider the semilinear curl-curl wave equation $s(x) \partial_t^2 U
+\nabla\times\nabla\times U + q(x) U \pm V(x) |U|^{p-1} U = 0 \mbox{ for }
(x,t)\in \mathbb{R}^3\times\mathbb{R}$. For any $p>1$ we prove the existence of
time-periodic spatially localized real-valued solutions (breathers) both for
the $+$ and the $-$ case under slightly different hypotheses. Our solutions are
classical solutions that are radially symmetric in space and decay
exponentially to $0$ as $|x|\to \infty$. Our method is based on the fact that
gradient fields of radially symmetric functions are annihilated by the
curl-curl operator. Consequently, the semilinear wave equation is reduced to an
ODE with $r=|x|$ as a parameter. This ODE can be efficiently analyzed in phase
space. As a side effect of our analysis, we obtain not only one but a full
continuum of phase-shifted breathers $U(x,t+a(x))$, where $U$ is a particular
breather and $a:\mathbb{R}^3\to\mathbb{R}$ an arbitrary radially symmetric
$C^2$-function.
