When you position the subcomponents, don't include the containing block's X, Y, or Z attributes in the formulas (firepit!X + the rest of the position formula). If you do, everything displaces the amount that you move plus the additional distance.
Try the component in the attached file.