Yes, that was my epiphany a few years back as well. Now the question is, what does that mean in practice? And that is where another misconception must be alleviated: One Topic = one message type.
Kafka does not prevent to write different message types into the same topic. In fact it is built for the opposite. For example when using Avro with Kafka, what is the Avro Schema linked to? Every single message contains the unique id of the schema! IT is not the topic that holds the schema identifier but every single message has an integer telling the consumer what the schema is.
Combining those two gives us the perfect solution. We can load all sales orders (header, line items,...) into a single topic partition, thus it is perfectly ordered. And if it does not matter if your order comes a millisecond before mine or vice versa - as long as each order is consistent - we can use multiple partitions and the order number as partitioning key.