How to learn an opening?


It's good to learn your opening(s) well, but you don't need to memorize variations you aren't planning to play. It's more important you understand the ideas behind the moves; that's true for any variations. You don't need to memorize things though; it isn't practical to brute force memorize everything. Chess has over one thousand chess variations and each variation has their own details to learn.
It's better to focus on concept like this: https://www.chess.com/blog/KeSetoKaiba/opening-principles-again


What I started doing recently is learn few most important variations and then find critical position and explore few games from that position. Then I just take that position and draw arrows with typical ideas. Like this:
How does one find the 'best' opening befitting to the 'style of play'? My opening theory ends on move 3-4...
Nf3 - c4 - e3/b4/b3/Nc3/g3 for white,
d4 d5 - c4 c6 - Nf3 exc4 for black,
or d4 Nf3 - c4 e6 and hope for Nf3 to play c5+b5
e4 e5 and hope not to get anything besides Italian,