Bonjour, ton code est bon que se sois html qui est biens tructurer les propriété css aussi, j'ai donc remarqué que tu t'étais ismplmene tromper de class:
tu dois mettre ton flex column dans row car en le mettantdazsn gallery celui ci ne fasi quela colonne de son enfantqui est juste 1 div, alors que dans row ses enfant sont tes 3 figures auquel s'applique donc ta column.
Petit conseil n'hesite pas a mettre des background color a tes class afin de voir ou ellesesitue et qu'est se qu'elle enveloppe ;)
.row {
flex-direction: column;
display: flex;
flex-wrap: wrap;
margin-left: -40px;
/ Compenser la marge ajoutée à .gallery /
}