.nav-links a[aria-current="page"],
.profile-links a[aria-current="page"] {
  text-decoration: underline;
  text-underline-offset: 5px;
}

.blog-content {
  min-width: 0;
}

.blog-content > section {
  padding-bottom: 0;
  border-bottom: 0;
}

.blog-introduction {
  max-width: 38rem;
  font-size: 1.02rem;
}

.post-list {
  margin: 30px 0 0;
  padding: 0;
  border-bottom: 1px solid #000000;
  list-style: none;
}

.post-list > li {
  display: grid;
  grid-template-columns: 8.25rem minmax(0, 1fr);
  gap: 28px;
  align-items: start;
  padding: 22px 0;
  border-top: 1px solid #000000;
}

.post-list time {
  padding-top: 1px;
}

.post-list article,
.post-list h3,
.post-list p {
  margin: 0;
}

.post-list h3 {
  font-size: 1.08rem;
  line-height: 1.4;
}

.post-list p {
  margin-top: 4px;
}

.article-content {
  padding-bottom: 44px;
  border-bottom: 1px solid #000000;
}

.article-heading h2 {
  margin-bottom: 4px;
}

.article-context {
  margin: 0 0 20px;
  font-size: 0.9rem;
}

.article-date {
  margin: 0;
}

.post-content {
  margin-top: 30px;
  padding-top: 24px;
  border-top: 1px solid #000000;
}

.post-content p {
  max-width: 65ch;
  margin: 0 0 18px;
}

.post-content p:last-child {
  margin-bottom: 0;
}

@media (max-width: 640px) {
  .blog-nav .nav-name {
    display: block;
  }

  .blog-nav .nav-links {
    width: auto;
    justify-content: flex-end;
    gap: 24px;
  }

  .post-list > li {
    grid-template-columns: 1fr;
    gap: 4px;
  }
}

@media print {
  .post-list > li,
  .article-content {
    break-inside: avoid;
  }
}
