Combination Lock Opener - Providing Clean Power

I am making a combination lock opener and I intend to use an Arduino Mega with a 2.8 TFT touch screen to control it. If you would like to take a look at my current design plans to get a better understanding of what I am trying to accomplish, they should be located below. In my design, I am using a servo motor to pull on the lock’s shackle and a stepper motor to turn the dial. I am comfortable with the programming aspect, but I would like to get some feedback for my PCB schematic design. In the end, I would like to run this project from my benchtop power supply that will be set to 12v. In my circuitry, there are two buck converters. The first buck provides a 5v output for the Arduino + touch screen and the second provides 6v output for the servo motor. Theoretically I could power the servo motor with 5v instead of 6v and use one buck converter instead of two. The main reason I am using two buck converters is because I am trying to keep the 5v rail as clean as possible and I think regulating it separately should provide a bit of protection. The stepper motor and driver are powered directly from the 12v power supply. My main concern revolves around voltage spikes and noise on the rails (I am assuming the servo motor will create a lot of this). Do I have enough protection to prevent damage to the sensitive electronics (schematic attached below)? Should I keep the servo motor and Arduino + touch screen on separate supplies? Is there anything I should change or add (such as diodes, Zener diodes, capacitors, etc.)?

Components that I am using:
Sparkfun’s EasyDriver (part number: ROB-12779)
Servo motor: MG996R

Note: If you look at the “schematic-overview” image and fine details are not visible, try zooming in and it should become clear to read.

Thanks.

3D-design.PNG