Servo motor not working as per code

The servo motor works perfectly fine when it is asked to move at the beginning of the void loop() as seen in the revised code below. So it's not a power supply issue. It doesn't however work after entering the if-else comparison in the while loop. It's like the execution just jumps over the servo part after the audio file is played.
I even tried putting the servo commands within a function and called it, but it's not working within the if-else inside the while loop.

String voice;

int flashlight = 8;
int eyebrows = 2;

int front = 14;
int back = 15;
int right = 16;
int left = 17;
int fromslave = 18;
int racemode = 19;

#include "SD.h"
#define SD_ChipSelectPin 10
#include "TMRpcm.h"
#include "SPI.h"
#include <Servo.h> //Servo library
 
Servo lefthand;
Servo righthand;  

TMRpcm speech;

#include <SoftwareSerial.h>
SoftwareSerial BT(4,3); //RX | TX

void setup() {
      BT.begin(9600);
      speech.speakerPin=9;
      Serial.begin(9600);
      if(!SD.begin(SD_ChipSelectPin))
      {
      Serial.println("SD fail");
      return;
      }
      speech.quality(1);
      speech.setVolume(6);

      lefthand.attach(5);
      righthand.attach(6);
      
      pinMode(flashlight, OUTPUT);
      pinMode(eyebrows, OUTPUT);

      pinMode(front, OUTPUT);
      pinMode(back, OUTPUT);
      pinMode(right, OUTPUT);
      pinMode(left, OUTPUT);
      pinMode(fromslave, INPUT);
      pinMode(racemode, INPUT);
      
}
void blink()
{
         digitalWrite(eyebrows, LOW);
         delay(200);
         digitalWrite(eyebrows, HIGH);
         delay(200);
         digitalWrite(eyebrows, LOW);
         delay(200);
         digitalWrite(eyebrows, HIGH);
         delay(200);
         digitalWrite(eyebrows, LOW);
         delay(200);
}
void loop() {
  
    lefthand.write(0);
    righthand.write(0);
    delay(500);
    lefthand.write(90);
       righthand.write(90);
       delay(500);
     lefthand.write(0);
    righthand.write(0);  
    digitalWrite(eyebrows, HIGH);
    int t = digitalRead(fromslave);
    if(t == 1)
    {
      blink();
    }
    
    digitalWrite(racemode,LOW);
    
    while(BT.available()) {
    
    delay(500);
    
    
    digitalWrite(right, LOW);
    digitalWrite(left, LOW);
        
    char c = BT.read();
    if(c=='#')
    {break; }
    voice += c;
    }

    if (voice.length() > 0) {
        if (voice == "move forward" || voice == "forward" || voice == "front") {
        speech.play("3.wav");
        delay(1500);
        digitalWrite(front, HIGH);
        delay(500);
        digitalWrite(front, LOW);
        blink();
        }
       else if (voice == "move backward" || voice == "backward" || voice == "back" || voice == "move back") {
       speech.play("2.wav");
       delay(1500);
       digitalWrite(back, HIGH);
       delay(500);
       digitalWrite(back, LOW);
       blink();
       }
       else if (voice == "move right" || voice == "turn right" || voice == "right") {
       speech.play("5.wav");
       delay(1500);
       digitalWrite(right, HIGH);
       delay(500);
       digitalWrite(right, LOW);
       blink();
       }
       else if (voice == "move left" || voice == "turn left" || voice == "left") {
       speech.play("4.wav");
       delay(1500);
       digitalWrite(left, HIGH);
       delay(500);
       digitalWrite(left, LOW);
       blink();
       }
       else if (voice == "hi" || voice == "hello" || voice == "hey" || voice == "hey there") {
       speech.play("1.wav");
       delay(1500);
       lefthand.write(90);
       righthand.write(90);
       delay(1000);
       lefthand.write(0);
       righthand.write(0);
       blink();
       }
       else if (voice == "play a song" || voice == "song" || voice == "play song" || voice == "need a song") {
       speech.play("6.wav");
       blink();
       }
       else if (voice == "turn on flashlight" || voice == "flashlight on" || voice == "light on" || voice == "flashlight" || voice == "light") {
       digitalWrite(flashlight, HIGH);
       blink();
       }
       else if (voice == "turn off flashlight" || voice == "flashlight off" || voice == "light off") {
       digitalWrite(flashlight, LOW);
       blink();
       }
       else if (voice == "joke" || voice == "tell me a joke" || voice == "say a joke" || voice == "tell me joke") {
       int randnumber = random(1,10);
       
       switch (randnumber) {
       case 1:
       speech.play("7.wav");
       break;
       case 2:
       speech.play("8.wav");
       break;
       case 3:
       speech.play("9.wav");
        break;
       case 4:
       speech.play("10.wav");
       break;
       case 5:
       speech.play("11.wav");
       break;
       case 6:
       speech.play("12.wav");
       break;
       case 7:
       speech.play("13.wav");
       break;
       case 8:
       speech.play("14.wav");
       break;
       case 9:
       speech.play("15.wav");
       break;
       default:
       speech.play("7.wav");
        }
         delay(500);
       }
       else if (voice == "enter race mode" || voice == "race mode" || voice == "race" || voice == "race mode on" || voice == "move fast" || voice == "fast") {
        digitalWrite(racemode, HIGH);
        while(true){
        if(BT.available()){
        char input = BT.read();
        if(input == 'F'){
        digitalWrite(front, HIGH);
        }
        else if(input == 'B'){
        digitalWrite(back, HIGH);
        }
        else if(input == 'R'){
        digitalWrite(right, HIGH);  
        }
        else if(input == 'L'){
        digitalWrite(left, HIGH);  
        }
        else if(input == 'X'){
        break;  
        }
        else
        { digitalWrite(front, LOW);
        digitalWrite(back, LOW);
        digitalWrite(right, LOW);
        digitalWrite(left, LOW);
          }
         }
        }
        digitalWrite(racemode, LOW); 
        blink();
       
       }
       else {
       Serial.print("I couldn't understand");
       }
    
    Serial.println(voice);
    voice="";
    }
}