Whenever you're ready, walk me through how you'd approach this.
Explain the trade-offs between different consistency models in a distributed database.
Discuss strong consistency, eventual consistency, causal consistency, and session guarantees. Explain how replica lag, partitions, quorum settings, read and write paths, latency, availability, conflict resolution, and workload requirements influence the choice. Include how you would validate the design and handle failures.