No código a variável qtdPista já está pegando o elemento pelo id no html, mas depois no else repetimos a informação, só que não está em variável e tiraram o parseInt. Poque isso aconteceu? Não daria para usar só a varíavel no else? Ou ainda, porque foi necessário reescrever document.getElementById('qtd-pista').textContent = qtdPista?
function comprarPista(qtd) {
let qtdPista = parseInt(document.getElementById('qtd-pista').textContent);
if (qtd > qtdPista) {
alert('Quantidade indisponível para o tipo Pista');
} else {
qtdPista = qtdPista - qtd;
document.getElementById('qtd-pista').textContent = qtdPista;
alert('Compra realizada com sucesso!');
}
}