Need help with timed reed switches

Hi there im working on my first arduino project and need help fixing my code. Its a simple system that requires one reed switch to be activated and then a 1 second delay and then both reed switches to be activated which will light up the LED. Currently the light will not turn on at all Big thanks to anyone who can give a helping hand

const int reedPin1 = 8;
const int reedPin2 = 9;
const int ledPin = 2;

unsigned long timerDuration = 7000;
unsigned long delayDuration = 1000;
unsigned long startTime = 0;
bool timerActive = false;

void startTimer() {
  timerActive = true;
  startTime = millis();
}

bool isTimerActive() {
  if (!timerActive) return false;
if (millis() - startTime <= timerDuration && millis() - startTime >= delayDuration) {
    timerActive = true;
    return true;
  }
  return false;
}

int reedState1;
int reedState2;

void setup() {
  pinMode(ledPin, OUTPUT);
  pinMode(reedPin1, INPUT);
  pinMode(reedPin2, INPUT);
}

void loop() {
  reedState1 = digitalRead(reedPin1);
  reedState2 = digitalRead(reedPin2);

  if (reedState1 == HIGH && !isTimerActive()) {
    startTimer();
  }

  if (reedState2 == HIGH && !isTimerActive()) {
    startTimer();
  }

  if (reedState2 == HIGH && reedState1 == HIGH && isTimerActive()) {
    digitalWrite(ledPin, HIGH);
    timerActive = false;
  } 
  else
    digitalWrite(ledPin, LOW);

}
  1. Post an Annotated Schematic: Show all connections, including power, ground, and power sources. This helps us understand how your circuit is set up and identify any potential issues.
  2. Technical Information Links: Provide links to technical documentation for each hardware device used in your setup. Avoid links to sales sites like Amazon, as they usually lack the necessary technical details. We need complete specifications to help you effectively.

Why Do We Ask For This:

We have no way of knowing the specifics of your setup unless you provide that information. Clear and detailed descriptions enable us to offer the most accurate help possible. Without these details, it’s difficult to diagnose and solve the issues you're experiencing.

the requirements are unclear.

A reed switch is a device that is activated by a magnetic field. When a magnet is brought close to the switch, the reeds inside make contact, completing the circuit

Are you saying that if someone / something activates the switch 1 and then 1 second later activate switch 2 then the light will turn on ?

how does the light goes off ?
what happens if switch2 is activated 1.5s later instead on 1s ?

Can you clarify exactly what you need to achieve?

You are using one "timer" to time two events (reed1 and reed2). Make two timers, when reed1 is active use timer1, when reed2 is active use timer2.

too many issues to explain
look this over

const int reedPin1 = 8;
const int reedPin2 = 9;
const int ledPin = 2;

enum { ReedOn = HIGH, ReedOff = LOW };
enum { LedOn  = LOW,  LedOff  = HIGH };

unsigned long timerDuration = 7000;
unsigned long delayDuration = 1000;
unsigned long startTime = 0;
bool timerActive = false;

void loop()
{
    unsigned long msec = millis ();

    if (timerActive && msec - startTime >= delayDuration)  {
        timerActive = false;
        Serial.println ("timeout");
    }

    if (timerActive && ReedOn == digitalRead(reedPin2))  {
        digitalWrite(ledPin, LedOn);
        Serial.println ("fired");
    }

    if (ReedOn == digitalRead(reedPin1))  {
        if (! timerActive) {
            timerActive = true;
            startTime   = msec;
            Serial.println ("armed");
        }
    }
}

void setup() {
    Serial.begin(9600);
    pinMode(ledPin,   OUTPUT);
    digitalWrite(ledPin, LedOff);
    pinMode(reedPin1, INPUT_PULLUP);
    pinMode(reedPin2, INPUT_PULLUP);
    Serial.println ("ready");
}