This article develops a general theory of selective opacity effects, configurations in which the same constituent is opaque for some operations but transparent for others. Classical observations of selective opacity lie in the realm of movement. Finite clauses, for instance, are opaque for A-movement but transparent for Ā-extraction, a pattern that generalizes beyond the A/Ā distinction. Using novel evidence from movement-agreement interactions in Hindi-Urdu, I argue that selective opacity also encompasses ϕ-agreement and I propose that the underlying constraint applies, not to movement itself, but to Agree. I develop the novel concept of horizons, which delimit search spaces in probe specific ways by terminating search. They thereby prevent particular probes from searching into them, inducing selective opacity. The horizons account derives an otherwise surprising property of selective opacity effects noted previously: the higher the structural position of a probe in the clausal spine, the more structures are transparent to it. The analysis proposed here unifies improper movement and related selective opacity restrictions, mismatches in the locality of movement and agreement, and intricate interactions between movement types and agreement.