We study a fair division setting in which participants are to be fairly distributed among teams, where not only do the teams have preferences over the participants as in the canonical fair division setting, but the participants also have preferences over the teams. We focus on guaranteeing envy-freeness up to one participant (EF1) for the teams together with a stability condition for both sides. We show that an allocation satisfying EF1, swap stability, and individual stability always exists and can be computed in polynomial time, even when teams may have positive or negative values for participants. When teams have nonnegative values for participants, we prove that an EF1 and Pareto optimal allocation exists and, if the valuations are binary, can be found in polynomial time. We also show that an EF1 and justified envy-free allocation does not necessarily exist, and deciding whether such an allocation exists is computationally difficult.