What is wrong with my code?

i am trying to control two servos over serial on a mac, which is easy with one, but two is causing problems. the first servo works fine, and goes right to left as it should when i press a and d, but the second servo tries to catch up a bit afterward. it doesnt respond to the keys, s and w. it also sounds like it wants to move, but cant. idk. check my code. im using two hitec servos, which i already set in the code

#include <Servo.h>

Servo servo1;
Servo servo2;

/** Adjust these values for your servo and setup, if necessary **/
int servo1Pin     =  10;    // control pin for servo motor
int servo2Pin     =  11;    // control pin for servo motor
int minPulse     =  900;  // minimum servo position
int maxPulse     =  2100; // maximum servo position
int turnRate     =  100;  // servo turn rate increment (larger value, faster rate)
int refreshTime  =  20;   // time (ms) between pulses (50Hz)

/** The Arduino will calculate these values for you **/
int centerServo;         // center servo position
int pulseWidth;          // servo pulse width
int moveServo1;           // raw user input
int moveServo2;           // raw user input
long lastPulse   = 0;    // recorded time (ms) of the last pulse


void setup() {
  pinMode(servo1Pin, OUTPUT);  // Set servo pin as an output pin
  pinMode(servo2Pin, OUTPUT);  // Set servo pin as an output pin
  centerServo = maxPulse - ((maxPulse - minPulse)/2);
  pulseWidth = centerServo;   // Give the servo a starting point (or it floats)
  Serial.begin(9600);
  Serial.println("      Arduino Serial Servo Control");
  Serial.println("Press < or > to move, spacebar to center");
  Serial.println();
}

void loop() {
  // wait for serial input
  if (Serial.available() > 0) {
    // read the incoming byte:
    moveServo1 = Serial.read();
    moveServo2 = Serial.read();

    // ASCII 'a' is 97, ASCII 'd' is 100
    if (moveServo1 == 97) { pulseWidth = pulseWidth - turnRate; }
    if (moveServo1 == 100) { pulseWidth = pulseWidth + turnRate; }
    if (moveServo1 == 32) { pulseWidth = centerServo; }
   
    // ASCII 's' is 115, ASCII 'w' is 119
    if (moveServo2 == 115) { pulseWidth = pulseWidth - turnRate; }
    if (moveServo2 == 119) { pulseWidth = pulseWidth + turnRate; }
    if (moveServo2 == 32) { pulseWidth = centerServo; }

    // stop servo pulse at min and max
    if (pulseWidth > maxPulse) { pulseWidth = maxPulse; }
    if (pulseWidth < minPulse) { pulseWidth = minPulse; }

    // print pulseWidth back to the Serial Monitor (uncomment to debug)
    // Serial.print("Pulse Width: ");
    // Serial.print(pulseWidth);
    // Serial.println("us");   // microseconds
  }

  // pulse the servo every 20 ms (refreshTime) with current pulseWidth
  // this will hold the servo's position if unchanged, or move it if changed
  if (millis() - lastPulse >= refreshTime) {
    digitalWrite(servo1Pin, HIGH);   // start the pulse
    delayMicroseconds(pulseWidth);  // pulse width
    digitalWrite(servo1Pin, LOW);    // stop the pulse
    lastPulse = millis();           // save the time of the last pulse
  }
  if (millis() - lastPulse >= refreshTime) {
    digitalWrite(servo2Pin, HIGH);   // start the pulse
    delayMicroseconds(pulseWidth);  // pulse width
    digitalWrite(servo2Pin, LOW);    // stop the pulse
    lastPulse = millis();           // save the time of the last pulse
  }
}

You're cross-posting - please see my reponse elsewhere.