I don't think that this is a problem, and I don't actually think it's what I would call a loop or circular reference.
A circular reference is where e.g. table A has a non-nullable FK to table B, which has a non-nullable FK to table A (or the circle could be A to B to C to D to A). If both tables are empty you cannot actually add a row to either of them, as both require a reference to a row in the other. I'm not actually sure that this situation is against 3NF, but it's plainly a problem!
Your situation does not have a circular reference and so as far as I'm concerned it's fine.