The 23-year-old joined Leipzig from Red Bull Salzburg in 2016 and made 49 appearances for the club, including three in the Champions League last season.
Bernardo becomes Brighton's fourth signing of the summer transfer window, joining Leon Balogun, Florin Andone and Jason Steele in making a switch to the Amex Stadium, and boss Chris Hughton is happy to have strengthened at the back.
"We're delighted to welcome Bernardo to the club. He is a strong, committed defender who can play on the left or right, and so his versatility gives us good options," he told Albion's official website.
"For a young player he already has good experience, having played in the Bundesliga, the Champions League and the Europa League. He is a good character and speaks numerous languages, and I'm sure he will fit in well with the rest of the squad."
Bernardo, full name Bernardo Fernandes da Silva Junior, is understood to have cost the Seagulls around £9m.