AES-256-GCM envelope via 5 isolated KMS CMKs; TLS 1.3
- 68 encrypted PHI columns across the Dashboard and Legal schemas (42 Dashboard + 26 Legal)
- Unique data encryption key per operation, zeroed from memory after use
- Customer-managed KMS CMKs — main app, Legal, Edu, disk-layer, and content
- TLS 1.2/1.3 enforced at ALB and CloudFront; 1.3 negotiated when client supports it
- S3 bucket policies reject any non-encrypted upload