TCP-nets are an extension of CP-nets which allow the expression of conditional relative importance of pairs of variables. In this paper it is shown that a simple logic of conditional preferences can be used to express TCP-net orders, as well as being able to represent much stronger statements of importance than TCP-nets allow. The paper derives various sufficient conditions for a subset of the logical language to be consistent, and develops methods for finding a total order on outcomes which is consistent with the set of conditional preferences. This leads also to an approach to the problem of constrained optimisation.