The stock status has a sense for the material products, but why does Magento 2 shows it for the virtual products?
The stock status visibility is controlled by the «Catalog
» → «Inventory
» → «Stock Options
» → «Display products availability in stock on Storefront
» backend config option:
But a store owner can set it per store view only, not per product.
Let see the situation: a store sells refrigerators and support services. Surely, a refrigerator can be in stok or out of stock, but the support services is always available! So it has no sense to show “IN STOCK” for the support services.