/* ============================================================
   72-blog-post — single blog post (and other ported old-site long-form
   pages). Sits ON TOP of 23-prose: the section carries both
   .sec-23-prose and .sec-72-post. 23-prose styles p/ul/h2; this adds what
   the ported WordPress bodies also contain: h3-h5, ordered lists, inline
   images, YouTube embeds and a table. Generated by tools/port-blogs.mjs.
   Scoped under .sec-72-post.
   ============================================================ */

.sec-72-post .sec-23-prose__h {
  margin-top: 2.2rem;
}
.sec-72-post h2.sec-23-prose__h { font-size: var(--fs-h3); }
.sec-72-post h3.sec-23-prose__h { font-size: clamp(1.25rem, 1.1rem + 0.6vw, 1.5rem); }
.sec-72-post h4.sec-23-prose__h,
.sec-72-post h5.sec-23-prose__h,
.sec-72-post h6.sec-23-prose__h {
  font-size: 1.12rem;
  letter-spacing: -0.01em;
  margin-top: 1.8rem;
  margin-bottom: 0.6rem;
}

.sec-72-post .sec-23-prose__h:first-child { margin-top: 0; }

.sec-72-post p + .sec-23-prose__list,
.sec-72-post .sec-23-prose__list + p,
.sec-72-post .sec-23-prose__list + .sec-23-prose__list,
.sec-72-post .sec-72-post__media + p,
.sec-72-post p + .sec-72-post__media {
  margin-top: 1.1rem;
}

.sec-72-post ol.sec-23-prose__list li { list-style: decimal; }

.sec-72-post li > .sec-23-prose__list { margin-top: 0.6rem; }

.sec-72-post__feature {
  margin: 0 0 2rem;
  border-radius: var(--radius-card);
  overflow: hidden;
  box-shadow: var(--shadow-soft);
  width: fit-content;
  max-width: min(100%, 560px);
}
.sec-72-post__feature img { width: 100%; height: auto; }

.sec-72-post__media {
  margin: 1.6rem 0;
}
.sec-72-post__media img {
  height: auto;
  border-radius: var(--radius-card);
}

.sec-72-post__embed {
  margin: 1.6rem 0;
  aspect-ratio: 16 / 9;
  width: 100%;
  border-radius: var(--radius-card);
  overflow: hidden;
  background: var(--ink, #111);
}
.sec-72-post__embed iframe {
  width: 100%;
  height: 100%;
  border: 0;
}

.sec-72-post__table {
  margin: 1.6rem 0;
  overflow-x: auto;
}
.sec-72-post__table table {
  border-collapse: collapse;
  width: 100%;
  font-size: 0.98rem;
}
.sec-72-post__table th,
.sec-72-post__table td {
  border: 1px solid rgba(0, 0, 0, 0.14);
  padding: 0.6rem 0.8rem;
  text-align: left;
  vertical-align: top;
  line-height: 1.55;
  color: var(--text-on-bone);
}

.sec-72-post blockquote {
  margin: 1.6rem 0;
  padding-left: 1.1rem;
  border-left: 3px solid var(--accent);
}

.sec-72-post__back {
  margin-top: 3rem;
  padding-top: 1.4rem;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
}
