.prose {
    --tw-prose-body: theme('colors.gray.700');
    --tw-prose-headings: theme('colors.gray.900');
    --tw-prose-links: theme('colors.blue.700');
    --tw-prose-bold: theme('colors.gray.900');
    --tw-prose-hr: theme('colors.gray.300');
    --tw-prose-quotes: theme('colors.gray.600');
    --tw-prose-quote-borders: theme('colors.gray.300');

    /* Override base prose font size / line height */
    font-size: 0.875rem;      /* text-sm */
    line-height: 1.75rem;     /* leading-7 */
    max-width: none;          /* max-w-none */
  }

  .prose p {
    margin-bottom: 1rem;      /* mb-4 */
  }

  .prose h2 {
    margin-top: 1.5rem;       /* mt-6 */
    margin-bottom: 1rem;
    font-size: 1.25rem;       /* text-xl */
    font-weight: 700;
    color: theme('colors.gray.900');
  }

  .prose h3 {
    margin-top: 1.25rem;      /* mt-5 */
    margin-bottom: 0.75rem;
    font-size: 1.125rem;      /* text-lg */
    font-weight: 600;
    color: theme('colors.gray.900');
  }

  .prose strong {
    color: theme('colors.gray.900');
    font-weight: 600;
  }

  .prose a {
    color: theme('colors.blue.700');
    font-weight: 500;
    text-decoration: underline;
  }

  .prose ul {
    margin-bottom: 1.25rem;
    padding-left: 1.5rem;     /* pl-6 */
    list-style-type: disc;
  }

  .prose ol {
    margin-bottom: 1.25rem;
    padding-left: 1.5rem;
    list-style-type: decimal;
  }

  .prose li {
    margin-bottom: 0.375rem;  /* mb-1.5 */
  }