  We introduce new foundations for relative topos theory based on stacks. One
of the central results in our theory is an adjunction between the category of
toposes over the topos of sheaves on a given site $({\mathcal{C}}, J)$ and that
of ${\mathcal{C}}$-indexed categories. This represents a wide generalization of
the classical adjunction between presheaves on a topological space and bundles
over it, and allows one to interpret several constructions on sheaves and
stacks in a geometrical way; in particular, it leads to fibrational
descriptions of direct and inverse images of sheaves and stacks, as well as to
a geometric understanding of the sheafification process. It also naturally
allows one to regard any Grothendieck topos as a 'petit' topos associated with
a 'gros' topos, thereby providing an answer to a problem posed by Grothendieck
in the seventies. Another key ingredient in our theory is a notion of relative
site, which allows one to represent arbitrary geometric morphisms towards a
fixed base topos of sheaves on a site as structure morphisms induced by
relative sites over that site.
