/* ===== BaseFortify Article Typography (scoped) ===== */
.article-content {
  /* Consistent base text */
  font-family: "Open Sans", sans-serif !important;
  font-weight: 400 !important;
  font-size: 1rem !important;
  line-height: 1.7 !important;
  color: #212529 !important;

  /* Vertical rhythm variables */
  --rh: 0.75rem;           /* base gap between text blocks */
  --indent: 1.25rem;       /* list indent */
}

/* Paragraphs */
.article-content p { margin: 0 0 var(--rh) 0 !important; }

/* Headings: tighter top/bottom than Argon’s defaults */
.article-content h1,
.article-content h2,
.article-content h3,
.article-content h4 {
  font-family: "Open Sans", sans-serif !important;
  font-weight: 600 !important;
  color: #1a1a1a !important;
  line-height: 1.3 !important;
  margin: 1.25rem 0 .5rem 0 !important;
}

/* Lists */
.article-content ul,
.article-content ol {
  /* reset Bootstrap/Argon 2rem padding; then apply our own */
  margin: 0 0 var(--rh) 0 !important;
  padding-left: var(--indent) !important;
}

/* Nested lists: smaller gaps and slightly less indent */
.article-content ul ul,
.article-content ol ol,
.article-content ul ol,
.article-content ol ul {
  margin: .25rem 0 .25rem 0 !important;
  padding-left: calc(var(--indent) - .25rem) !important;
}

/* List items: small gap between items */
.article-content li { margin: .25rem 0 !important; }

/* Bullets/markers style */
.article-content ul { list-style: disc outside !important; }
.article-content ul ul { list-style: circle outside !important; }
.article-content ol { list-style: decimal outside !important; }

/* Blockquote */
.article-content blockquote {
  margin: 1rem 0 !important;
  padding-left: 1rem !important;
  border-left: 3px solid #e5e7eb !important;
  color: #555 !important;
}

/* Code & preformatted */
.article-content code {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas,
               "Liberation Mono", "Courier New", monospace !important;
  font-size: .95em !important;
}
.article-content pre {
  margin: var(--rh) 0 1rem 0 !important;
  padding: .75rem 1rem !important;
  background: #f6f8fa !important;
  border-radius: .5rem !important;
  overflow: auto !important;
}

/* Tables */
.article-content table {
  width: 100% !important;
  border-collapse: collapse !important;
  margin: var(--rh) 0 1rem 0 !important;
}
.article-content th,
.article-content td {
  padding: .5rem .75rem !important;
  border: 1px solid #e5e7eb !important;
}
.article-content thead th { font-weight: 600 !important; }

/* Images & figures */
.article-content figure { margin: 1rem 0 !important; }
.article-content figcaption {
  margin-top: .5rem !important;
  font-size: .95rem !important;
  color: #555 !important;
}

/* Highlights & strong */
.article-content mark,
.article-content .highlight {
  background-color: #fff3cd !important;
  color: #000 !important;
  font-weight: 600 !important;
}
.article-content strong,
.article-content b { font-weight: 600 !important; }

/* Horizontal rule */
.article-content hr { margin: 1.25rem 0 !important; }

/* Links (optional) */
.article-content a { text-decoration: underline; }
.article-content a:hover { text-decoration: none; }
