.essay, .ProseMirror {
  font-family: "Source Serif 4", Palatino, "Palatino Linotype", Georgia, serif;
  font-size: 1.16rem;
  line-height: 1.75;
  color: #3a312a;
}

.essay > :first-child, .ProseMirror > :first-child { margin-top: 0; }

.essay h2, .essay h3, .essay h4,
.ProseMirror h2, .ProseMirror h3, .ProseMirror h4 {
  font-family: "Libre Baskerville", Palatino, Georgia, serif;
  font-weight: 400;
  color: #4a3426;
  line-height: 1.3;
  margin: 2.1rem 0 0.6rem;
}
.essay h2, .ProseMirror h2 { font-size: 1.55rem; }
.essay h3, .ProseMirror h3 { font-size: 1.28rem; }

.essay p, .ProseMirror p { margin: 0 0 1rem; }

.essay a, .ProseMirror a { color: #7d6232; }

.essay blockquote, .ProseMirror blockquote {
  margin: 1.4rem 0;
  padding: 0.85rem 1rem 0.85rem 1.05rem;
  border-left: 2px solid #c4a36a;
  background: rgba(228, 215, 195, 0.45);
  font-style: italic;
  color: #4a3426;
}
.essay blockquote p:last-child, .ProseMirror blockquote p:last-child { margin-bottom: 0; }

.essay ul, .essay ol, .ProseMirror ul, .ProseMirror ol { margin: 0 0 1rem; padding-left: 1.3rem; }
.essay li, .ProseMirror li { margin: 0.25rem 0; }

.essay hr, .ProseMirror hr {
  border: 0;
  height: 16px;
  margin: 1.8rem 0;
  background: url("/images/rope-line.svg") center / 72px 16px repeat-x;
}

.essay img, .ProseMirror img { display: block; margin: 1rem 0; height: auto; }
.featured { margin: 0 0 1.2rem; }
.featured img { display: block; width: 100%; height: auto; }

.essay .embed, .ProseMirror .embed { margin: 1.3rem 0; }
.essay iframe, .ProseMirror iframe {
  width: 100%;
  aspect-ratio: 16 / 9;
  height: auto;
  border: 0;
  background: #efe4d2;
}

.tag-row { display: flex; flex-wrap: wrap; gap: 0.45rem; margin-top: 1.6rem; }
.tag-row a {
  text-decoration: none;
  border: 1px solid #ddcfba;
  padding: 0.1rem 0.5rem;
  color: #6b5344;
  font-size: 0.95rem;
}
.tag-row a:hover { border-color: #c4a36a; color: #4a3426; }

.ProseMirror { outline: none; }
.ProseMirror p.is-editor-empty:first-child::before {
  content: attr(data-placeholder);
  float: left;
  height: 0;
  color: #a89880;
  pointer-events: none;
  font-style: italic;
}
