/* Only enqueued for native posts. Main pages and blog archive keep their layout. */
.km-single.content-shell { padding-block:48px 72px; }
.km-single > .site-container { width:calc(100% - 48px); max-width:1200px; }
.km-article { width:100%; max-width:960px; min-width:0; margin-inline:auto; }
.km-article__header.content-shell__header {
  width:100%; max-width:none; margin:0; padding:36px 48px;
  border:1px solid #c79a2b55; border-radius:24px;
  background:linear-gradient(120deg,#42090d,#75131c); color:#fff9f2;
}
.km-article__header .breadcrumb { margin-bottom:22px; gap:6px 10px; color:#f2d9cb; line-height:1.8; overflow-wrap:anywhere; }
.km-article__header .breadcrumb [aria-current] { flex:1 1 220px; min-width:0; }
.km-article__header .eyebrow { margin-bottom:12px; color:#e4c66a; }
.km-article__header h1 { margin:0 0 24px; font-size:clamp(1.8rem,3.4vw,3rem); line-height:1.45; letter-spacing:0; overflow-wrap:anywhere; text-wrap:pretty; }
.km-article__meta { display:flex; flex-wrap:wrap; gap:8px 24px; margin:0; font-size:.85rem; line-height:1.8; color:#f5e0d4; }
.km-article__meta > span { min-width:0; overflow-wrap:anywhere; }
.km-article__draft { color:#ffe4a5; font-weight:700; }
.km-article__cover.entry-featured { width:100%; max-width:none; margin:24px 0 0; background:var(--cream); border:1px solid var(--line); border-radius:20px; overflow:hidden; }
.km-article__cover img { display:block; width:100%; height:auto; max-height:360px; object-fit:contain; border-radius:0; }
.km-article__body.entry-content { width:100%; max-width:760px; min-width:0; margin:36px auto 0; font-size:1.0625rem; line-height:1.9; overflow-wrap:anywhere; }
.km-article__body > :first-child { margin-top:0; }
.km-article__body h2 { margin-top:1.6em; margin-bottom:.65em; font-size:clamp(1.45rem,2.4vw,2rem); line-height:1.5; letter-spacing:0; text-wrap:pretty; }
.km-article__body h3 { margin-top:1.6em; margin-bottom:.6em; font-size:clamp(1.15rem,1.8vw,1.35rem); line-height:1.6; letter-spacing:0; text-wrap:pretty; }
.km-article__body :is(h2,h3,h4)[id] { scroll-margin-top:170px; }
.km-article__body :is(ul,ol) { padding-inline-start:1.5em; }
.km-article__body li + li { margin-top:.5em; }
.km-article__body :is(figure,blockquote) { max-width:100%; margin-inline:0; }
.km-article__body blockquote { padding:16px 24px; border-inline-start:3px solid var(--gold); background:var(--cream); }
.km-article__body :is(iframe,video) { max-width:100%; }
.km-article__body .alignwide,.km-article__body .alignfull { width:100%; max-width:100%; margin-inline:0; }
.km-article__body a { text-decoration:underline; text-underline-offset:.2em; }
.km-article__pages { display:flex; flex-wrap:wrap; align-items:center; gap:12px; margin-top:32px; }
.km-article__pages .post-page-numbers { min-width:44px; min-height:44px; display:grid; place-items:center; border:1px solid var(--line); border-radius:8px; }
.km-article__pages .current { background:var(--red-dark); color:#fff; }
.km-article__footer { max-width:760px; margin:40px auto 0; padding-top:20px; border-top:1px solid var(--line); }
.km-article__footer a { display:inline-flex; align-items:center; min-height:44px; color:var(--red-dark); font-weight:700; }
@media(max-width:640px) {
  .km-single.content-shell { padding-block:24px 40px; }
  .km-single > .site-container { width:calc(100% - 32px); }
  .km-article__header.content-shell__header { padding:24px 20px; border-radius:18px; }
  .km-article__header .breadcrumb { margin-bottom:18px; font-size:.75rem; }
  .km-article__header .breadcrumb [aria-current] { flex-basis:100%; }
  .km-article__header h1 { font-size:clamp(1.65rem,6.4vw,2.2rem); margin-bottom:20px; line-height:1.5; }
  .km-article__meta { gap:6px 16px; font-size:.8rem; }
  .km-article__cover.entry-featured { margin-top:16px; border-radius:14px; }
  .km-article__cover img { max-height:240px; }
  .km-article__body.entry-content { margin-top:26px; font-size:1rem; line-height:1.9; }
  .km-article__footer { margin-top:28px; }
}
