DMARC does not only ask whether SPF or DKIM passed. It asks whether the domain that passed matches the domain in the visible From address. For SPF that is the envelope sender (Return-Path) domain. For DKIM it is the d= domain in the signature.
By default alignment is relaxed (adkim=r; aspf=r): the domains need to share the same organisational domain, so mail.example.com aligns with example.com. Strict (s) needs an exact match.
A newsletter or CRM tool often sends with its own Return-Path domain and signs with its own d= domain. SPF and DKIM then pass, but for the vendor's domain, not yours, so DMARC does not align.
d=yourdomain.com.The free checker reads your live DNS and shows what is missing. The $29 Email Fix Pack writes the fix for your email provider and DNS host, with a rollback plan.