
/* Editorial polish */
.page{padding-block:clamp(2.5rem,6vw,5.5rem)}
.page-heading{max-width:920px;margin:0 auto clamp(2rem,5vw,4rem);padding-inline:clamp(0px,2vw,24px)}
.page-heading .text-link{display:inline-block;margin-bottom:1.5rem;color:var(--accent);font:500 12px/1 var(--mono);letter-spacing:.04em}
.article-label{display:block;margin-bottom:1.15rem;color:var(--accent)}
.page-heading h1{font-size:clamp(2.65rem,6vw,5.65rem);letter-spacing:-.055em;max-width:900px;text-wrap:balance}
.page-heading .article-deck{font-size:clamp(1.12rem,2vw,1.45rem);line-height:1.45;max-width:720px;margin-top:1.3rem;color:var(--text-secondary);text-wrap:pretty}
.page-heading .meta{margin-top:1.35rem}
.article-hero-wrap{margin:0 auto clamp(2.5rem,5vw,4.5rem);max-width:820px}
.article-hero{width:100%;height:auto;aspect-ratio:1200/630;border-radius:10px;object-fit:cover;border:1px solid var(--border);box-shadow:0 18px 50px rgba(16,37,63,.10)}
.article-hero-wrap figcaption{display:flex;flex-wrap:wrap;gap:.35rem .9rem;margin-top:.7rem;color:var(--text-secondary);font:10px/1.5 var(--mono);letter-spacing:.04em}.article-hero-wrap figcaption span+span{color:var(--accent)}
.article-page .prose{max-width:720px;margin-inline:auto}
.article-page .prose h2{margin-top:2.6em;margin-bottom:.65em;font-size:clamp(1.65rem,3vw,2.35rem);letter-spacing:-.025em}
.article-page .prose p{margin:1.05em 0;font-size:1.06rem;line-height:1.8}
.article-page .prose blockquote{margin:2.5rem 0;padding:1.2rem 1.4rem;border-left:3px solid var(--accent);background:var(--soft-teal);border-radius:0 8px 8px 0}
.article-page .prose pre{margin:1.6rem -2rem;padding:1.3rem 1.5rem;border-radius:8px;overflow:auto}
.article-page .prose img{border-radius:8px}
@media(max-width:640px){.page{padding-block:2.2rem}.page-heading h1{font-size:clamp(2.4rem,12vw,3.6rem)}.article-page .prose p{font-size:1rem}.article-page .prose pre{margin-inline:-.35rem;padding:.95rem}.article-hero-wrap{margin-bottom:2.5rem}}
.wabot-quote{display:flex;gap:1rem;align-items:flex-start;margin:2.5rem 0;padding:1.1rem 1.3rem;border-left:3px solid #F5A623;background:var(--soft-teal);border-radius:0 8px 8px 0}
.wabot-quote .wabot-avatar{width:56px;height:56px;flex:0 0 56px}
.wabot-quote-body{min-width:0}.wabot-quote-body .label{display:block;margin-bottom:.25rem}.wabot-quote-body p{margin:0!important}
.cover-link img{height:auto;aspect-ratio:1200/630;object-fit:cover}
