Opa Douglas! Joia? Primeiramente, parabéns pelo código mano! Se me permitir uma dica em relação as suas condicionais:
if imc < 18.5:
print(f'Seu IMC é: {imc:.2f}\n Você está abaixo do peso.')
elif 18.5 <= imc < 25:
print(f'Seu IMC é: {imc:.2f}\n Seu peso está normal')
Nessa parte, pode fazer mais sentido fazer assim:
if imc < 18.5:
print(f'Seu IMC é: {imc:.2f}\n Você está abaixo do peso.')
elif imc < 25:
print(f'Seu IMC é: {imc:.2f}\n Seu peso está normal')
Afinal, se o IMC saiu do primeiro laço condicional e chegou no elif, é porque ele obrigatoriamente é maior do que 18.5. Logo, não precisa re-validar se ele é maior ou igual do que 18.5. Basta assumir que deve ser menor que 25.
Não está errado principalmente em algoritmos menores, mas pode ajudar a reduzir redundância no código. E cultivar essa prática é interessante!
No mais, parabéns mano! Bora!!