KiCAD: Error Type (13) - Track crossing
Basically all non-trivial layouts will have mathematically guaranteed track crossings, if restricting yourself to a 2D plane. The trick is to not restrict yourself to a 2D plane ;)

Technique 1: Multi-layered PCB.
If track A needs to pass to the other side of track B, make it go through a via (an electrically conductive hole in the PCB) to the bottom PCB side, continue there for a bit, and come back up again through a second via on the other side of B. More sophisticated designs even utilize four, six, eight or more layers to make routing possible.

Technique 2: Jumpers.
Often you can get away with using parts (resistors/caps/ICs) as bridges. If the part is wide enough, you can make a trace go in between its pads and thus cross the path. If you do not have a part to route under, available where you need it, you can add so-called jumpers (think 0 ohm SMD resistors, or just pieces of wire for through-hole) to jump over existing traces. This solves the track crossing problem without utilizing extra PCB layers, and thus can save costs or time in PCB manufacturing.

Other tricks are for example connecting ICs not outward, but having traces go under the ICs body and continue from there. This can help disentangle the buses leaving thin-pitch ICs.