3. I contacted their support and their response was: "I'm really sorry but it is considered invalid because it was less than 0.01. If it is below 0.01 the blockchain takes it in as a fee and won't update the tokens." Are they actually helpless, or have they just stolen my money? To be fair, it was my fault for authorising the transaction at an amount less than the minimum investment.
This is pretty much bullshit... the "blockchain" doesn't take anything as a fee. Those coins have been assigned to a private key which THEY are in control of. They may not consider your investment valid as it is below 0.01 BTC, but they can sure as hell access those coins and send them back. If they don't they're basically treating your payment as a "donation", which is an expensive lesson to learn... and a bit shit on their behalf.
It probably makes no difference in the long run because, as cpfreeplz has already mentioned, you should NEVER fund ICO's directly from Exchange addresses... fairly sure Bittrex even have a warning about this:
Do not withdrawal directly to a crowdfund or ICO. We will not credit your account with tokens from that sale.
So, you likely never would have got the tokens anyway
4. I used the 'extended public key' on my hardware wallet which then generated a barcode that I scanned in to MyCelium. I then scanned the MyCelium barcode at the ATM. Funds seem to have sent, but they're not appearing in my balance on my hardware wallet.
What wallet app are you using? The Ledger chrome app? If so, did you select "Legacy" or "SegWit" chain?