:root {
  --blog-text: #1f2937;
  --blog-muted: #6b7280;
  --blog-rule: #e5e7eb;
}

.blog-article {
  font-family: "Source Serif 4", "Times New Roman", serif;
  font-size: 1.35rem;
  line-height: 2.05;
  color: var(--blog-text);
  max-width: 720px;
  margin-left: auto;
  margin-right: auto;
}

.blog-article p {
  margin: 1.9rem 0;
}

.blog-article h2 {
  font-family: "Source Serif 4", "Times New Roman", serif;
  font-size: 1.55rem;
  font-weight: 600;
  margin: 2.6rem 0 1rem;
  color: var(--blog-text);
}

.blog-article ul,
.blog-article ol {
  margin: 1.4rem 0 1.8rem 1.4rem;
  color: var(--blog-text);
}

.blog-article li {
  margin: 0.7rem 0;
}

.blog-article table {
  width: 100%;
  border-collapse: collapse;
  margin: 2rem 0 2.4rem;
  font-size: 1.05rem;
}

.blog-article th,
.blog-article td {
  border: 1px solid var(--blog-rule);
  padding: 1rem 0.9rem;
  text-align: left;
  vertical-align: top;
}

.blog-article th {
  font-weight: 600;
  background: #f9fafb;
}

.blog-article a {
  color: var(--blog-muted);
  text-decoration: underline;
}

@media (max-width: 768px) {
  .blog-article {
    font-size: 1.15rem;
    line-height: 1.9;
  }

  .blog-article h2 {
    font-size: 1.35rem;
  }
}
