.blog-article {
  padding: 3rem 1.5rem 4rem;
}
.blog-article-inner {
  max-width: 720px;
  margin: 0 auto;
}
.blog-back {
  display: inline-block;
  font-size: 13px;
  color: var(--text2);
  text-decoration: none;
  margin-bottom: 1.5rem;
  transition: color 0.2s ease;
}
.blog-back:hover {
  color: var(--pl);
}
.blog-article-inner h1 {
  font-size: clamp(26px, 4vw, 38px);
  font-weight: 700;
  line-height: 1.25;
  margin-bottom: 0.75rem;
}
.blog-meta {
  font-size: 13px;
  color: var(--text2);
  margin-bottom: 2.5rem;
  padding-bottom: 1.5rem;
  border-bottom: 0.5px solid var(--border);
}
.blog-article-inner h2 {
  font-size: 22px;
  font-weight: 700;
  margin-top: 2.5rem;
  margin-bottom: 1rem;
}
.blog-article-inner h3 {
  font-size: 17px;
  font-weight: 650;
  margin-top: 1.75rem;
  margin-bottom: 0.5rem;
  color: var(--pl);
}
.blog-article-inner p {
  font-size: 16px;
  line-height: 1.75;
  color: var(--text2);
  margin-bottom: 1.25rem;
}
.blog-article-inner ul {
  margin: 0 0 1.25rem;
  padding-left: 1.25rem;
}
.blog-article-inner li {
  font-size: 16px;
  line-height: 1.7;
  color: var(--text2);
  margin-bottom: 0.6rem;
}
.blog-article-inner strong {
  color: var(--text);
  font-weight: 700;
}
.blog-article-inner em {
  color: var(--text);
  font-style: italic;
}
.blog-article-inner a {
  color: var(--pl);
  text-decoration: underline;
  text-decoration-color: rgba(129, 140, 248, 0.35);
  transition: color 0.2s ease;
}
.blog-article-inner a:hover {
  color: #fff;
}

.blog-index {
  padding: 3rem 1.5rem 4rem;
}
.blog-index-inner {
  max-width: 860px;
  margin: 0 auto;
}
.blog-index-inner h1 {
  font-size: clamp(28px, 4vw, 40px);
  font-weight: 700;
  margin-bottom: 2.5rem;
  text-align: center;
}
.blog-card-list {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.blog-card {
  display: block;
  background: var(--bg2);
  border: 0.5px solid var(--border);
  border-radius: var(--r);
  padding: 1.5rem;
  text-decoration: none;
  transition: all 0.25s ease;
}
.blog-card:hover {
  transform: translateY(-2px);
  border-color: var(--primary);
}
.blog-card-title {
  font-size: 19px;
  font-weight: 700;
  color: var(--text);
  margin-bottom: 6px;
}
.blog-card-desc {
  font-size: 14px;
  color: var(--text2);
  line-height: 1.6;
}

@media (max-width: 700px) {
  .blog-article {
    padding: 2rem 1.25rem 3rem;
  }
  .blog-index {
    padding: 2rem 1.25rem 3rem;
  }
}
