If statements to choose different actions not working

Hello everyone. I am new here. Also, I am self taught up to this point. I have run into a problem I cannot solve. I can't seem to find and answer here, so I'm hoping someone can help.
My sketch blinks a lot of LED and a runs couple servos correctly. However, after this completes, I am trying to make it run through one action, then next time through the entire program it should choose the second action and so on. Now its either runs #1 twice, then skips it twice. I hope some here can help me figure out what I'm doing wrong. Actions are below the dotted line with comments "Lid and Finger

// Steambox Sketch

#include<Servo.h>

int count = 0;
int behavior = 1;
int Y = 0;
int W = 0;
Servo ServoGear;
Servo ServoLock;
Servo ServoLid;
Servo ServoFinger;

int pos = 0;
const int LED_Y = 9;
const int RGB_R = A2;
const int RGB_G = A3;
const int RGB_B = 8;
const int LED_W = 7;   //used as digital pins
const int LED_E = A4;
int LED_B1 = 3;        //PWM for fading LEDS
int LED_B2 = 5;
int LED_B3 = 6;
int LED_B4 = 11;
const int LED_A4;          //Emerald LED     used as digital pins
const int Button = 2;      //button pin
int LEDS = 0;
int buttonState = 0;

void setup() {
  ServoGear.attach(4);
  ServoLock.attach(12);
  ServoLid.attach(13);
  ServoFinger.attach(10);

  ServoGear.write(0);
  ServoLock.write(90);  //start at 35 degrees
  ServoLid.write(0);
  ServoFinger.write(0);

  pinMode(LED_Y, OUTPUT);
  pinMode(RGB_R, OUTPUT);
  pinMode(RGB_B, OUTPUT);
  pinMode(RGB_G, OUTPUT);
  pinMode(LED_W, OUTPUT);
  pinMode(LED_B1, OUTPUT);
  pinMode(LED_B2, OUTPUT);
  pinMode(LED_B3, OUTPUT);
  pinMode(LED_B4, OUTPUT);
  pinMode(LED_E, OUTPUT);
  pinMode(Button, INPUT);

}

void loop() {

  if (digitalRead(Button) == HIGH)  {        //is the switch up

    //___________ Yellow HIGH LED blink______________________________________

    for (int y = 0; y <= 3; y++) {  //Yellow blink quickly twice
      digitalWrite (LED_Y, HIGH);
      delay(100);
      digitalWrite (LED_Y, LOW);
      delay(100);
    }

    digitalWrite(LED_Y, HIGH);     //stay high for 1.5 seconds
    delay(1500);
    digitalWrite(LED_Y, LOW);
    delay (500);

    //-------------White Blink ON------------------------------

    for (int w = 0; w <= 3; w++) {  //Whte blink quickly twice
      digitalWrite (LED_W, HIGH);
      delay(50);
      digitalWrite (LED_W, LOW);
      delay(100);
    }
    digitalWrite(LED_W, HIGH);    // stay on 1.5 seconds
    delay(1500);
    digitalWrite(LED_W, LOW);

    //_----------------RBG Tube----------------------------------
    digitalWrite(RGB_R, HIGH);   //RGB in tube Cycle through red, blue, green
    delay(1000);
    digitalWrite(RGB_R, LOW);
    digitalWrite(RGB_G, HIGH);
    delay(1000);
    digitalWrite(RGB_G, LOW);
    digitalWrite(RGB_B, HIGH);
    delay(1000);
    digitalWrite(RGB_B, LOW);

    //-----------Blue 1 to 2     fading Leds before dragon eye   ---------------------

    for (int fadeValue = 0 ; fadeValue <= 255; fadeValue += 5) {   //1 fade in

      analogWrite(LED_B1, fadeValue);  //fading up to 255

      delay(25);
    }
    for (int fadeValue = 255 ; fadeValue >= 5; fadeValue -= 3) {  //1 fade out
      analogWrite(LED_B1, fadeValue);

      delay(25);
    }



    for (int fadeValue = 0 ; fadeValue <= 255; fadeValue += 5) {    //2 fade in


      analogWrite(LED_B2, fadeValue);  //fading up to 255

      delay(25);
    }

    for (int fadeValue = 255 ; fadeValue >= 5; fadeValue -= 3) {   //2 fade out

      analogWrite(LED_B2, fadeValue);

      delay(25);
    }
    analogWrite(LED_B1, LOW);   //B1  and b2 turn completely off
    analogWrite(LED_B2, LOW);

    //----------------Emerald------------------------

    digitalWrite(LED_E, HIGH);    //green on 4 seconds
    delay( 4000);
    digitalWrite(LED_E, LOW);
    //------------------3 to 4-------------------------


    for (int fadeValue = 0 ; fadeValue <= 255; fadeValue += 5) {   //3 fade in


      analogWrite(LED_B3, fadeValue);  //fading up to 255

      delay(15);
    }
    for (int fadeValue = 255 ; fadeValue >= 5; fadeValue -= 3) {    //3 fade oiu
      analogWrite(LED_B3, fadeValue);

      delay(15);
    }


    for (int fadeValue = 0 ; fadeValue <= 255; fadeValue += 5) {     //4 fade in

      analogWrite(LED_B4, fadeValue);  //fading up to 255

      delay(15);
    }

    for (int fadeValue = 255 ; fadeValue >= 5; fadeValue -= 3) {     //3 fade out
      analogWrite(LED_B4, fadeValue);

      delay(15);

      analogWrite(LED_B3, LOW);    //turn 3 and 4 off
      analogWrite(LED_B4, LOW);
    }
    //Servo gears move-----------------------------------------

    for (pos = 0;  pos <= 180; pos += 1) {
      ServoGear.write(pos);
      delay(15);
    }
    for (pos = 180;  pos >= 0; pos -= 1) {
      ServoGear.write(pos);
      delay(15);
    }

    for (pos = 0;  pos <= 180; pos += 1) {
      ServoGear.write(pos);
      delay(15);
    }
    for (pos = 180;  pos >= 0; pos -= 1) {
      ServoGear.write(pos);
      delay(15);
    }
    //--------------Servolock moves 90 degrees and back

    for (pos = 90; pos >= 0; pos -= 1) {
      ServoLock.write(pos);
      delay(30);
    }
    for (pos = 0; pos <= 90; pos += 1) {
      ServoLock.write(pos);
      delay(30);
    }
    //------------Lid and Finger behaviors-------------
    //---------------------------------------------------------------------------------------------------------------------------
  }
    if(analogRead(LED_B4) == LOW); {

      if (behavior == 1)  {
        
        
        for (pos = 0; pos <= 55; pos += 1) {
          ServoLid.write(pos);
          delay(40);
        }
        for (pos = 0; pos <= 178; pos += 1) {
          ServoFinger.write(pos);
          delay(25);
        }
        for (pos = 178; pos >= 0; pos -= 1) {
          ServoFinger.write(pos);
          delay(25);
        }
        for (pos = 55; pos >= 0; pos -= 1) {
          ServoLid.write(pos);
          delay(40);
        }

        behavior++;
      }
      else if (behavior == 2)  {                 // tap finger

        for (pos = 0; pos <= 55; pos += 1) {
          ServoLid.write(pos);
          delay(30);
        }
        for (pos = 0; pos <= 170; pos += 1) {
          ServoFinger.write(pos);
          delay(25);
        }
        ServoFinger.write(155);
        ServoFinger.write(168);
        ServoFinger.write(155);
        ServoFinger.write(168);
        ServoFinger.write(155);
        ServoFinger.write(168);


        for (pos = 180; pos >= 0; pos -= 1) {
          ServoFinger.write(pos);
          delay(25);
        }
        for (pos = 55; pos >= 0; pos -= 1) {
          ServoLid.write(pos);
          delay(40);
          behavior++;
        }
      }


      else if (behavior == 3) {          // open and close fast


        ServoLid.write(55);
        ServoFinger.write(178);
        ServoFinger.write(0);
        ServoLid.write(0);
        behavior = 1;
      }
    }
}
  

Oops

Edit: actually a double oops

What would you do? Can I take it right out? I've tried digitalRead.

The semicolon?
Absolutely.

And the analogRead.

Thanks, I'll try that

I don't understand what you hope to achieve with the "if" - even a digitalRead is going to be a half-decent random selection.

Yes, I see. I took the if statement out. Stilling trying with it, though. I'll keep scratching my head for a while. Thanks for your INPUT);

The analogRead was never going to work, because it wouldn't be reading the pin you thought

digitalRead of a PWM signal is going to be random.

But you know the last thing you wrote to a PWM pin...

Yes, I see that now. I'll be honest, I'm getting frustrated so I need to leave it for a while. Tomorrow, I'll try to find some examples. Thanks again for your help.