/* ============================================================
   bm-article.css — single article reading page
   ============================================================ */
.article{padding-top:120px}

/* header */
.article__head{padding-block:clamp(40px,8vh,90px) clamp(28px,5vh,48px)}
.article__head-inner{max-width:900px}
.article__meta{display:flex;gap:12px;align-items:center;margin-bottom:28px;color:var(--fg-mute)}
.article__cat{color:var(--accent)}
.article__title{font-size:clamp(2.2rem,6vw,5rem);line-height:1;letter-spacing:-.02em;margin-bottom:28px}
.article__standfirst{font-family:var(--font-display);font-weight:400;font-size:var(--fs-lead);line-height:1.4;color:var(--fg-dim);max-width:60ch}

/* hero featured image — full bleed */
.article__hero{width:100%;max-height:70vh;overflow:hidden;margin-bottom:clamp(40px,8vh,90px);border-block:1px solid var(--hair)}
.article__hero img{width:100%;height:100%;max-height:70vh;object-fit:cover;display:block}

/* body column */
.article__body{max-width:760px;margin:0 auto}

/* ---------- rich in-post content ---------- */
.post-body{font-size:1.175rem;line-height:1.75;color:var(--gray-300)}
.post-body > *{margin-bottom:1.6em}
.post-body h2{font-family:var(--font-display);font-weight:600;font-size:clamp(1.6rem,3vw,2.4rem);line-height:1.1;color:var(--fg);margin-top:2em;letter-spacing:-.02em}
.post-body h3{font-family:var(--font-display);font-weight:600;font-size:clamp(1.3rem,2.2vw,1.7rem);color:var(--fg);margin-top:1.6em}
.post-body p{margin-bottom:1.5em}
.post-body a{color:var(--accent);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.post-body strong{color:var(--fg);font-weight:600}
.post-body ul,.post-body ol{margin:0 0 1.6em 1.2em}
.post-body li{margin-bottom:.6em;padding-left:.4em}
.post-body ul li::marker{color:var(--accent)}
.post-body ol li::marker{color:var(--accent);font-family:var(--font-mono);font-size:.85em}

/* images inside posts — break out wider than text column */
.post-body img{width:100%;height:auto;border-radius:2px;display:block}
.post-body figure{margin:2.5em 0}
.post-body figure.alignwide,.post-body .wp-block-image.alignwide{width:min(1040px,92vw);margin-inline:calc(50% - min(520px,46vw))}
.post-body figure.alignfull,.post-body .wp-block-image.alignfull{width:100vw;margin-inline:calc(50% - 50vw)}
.post-body figure.alignfull img{border-radius:0}
.post-body figcaption,.post-body .wp-element-caption{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.04em;text-transform:uppercase;color:var(--fg-mute);margin-top:12px;text-align:center}

/* galleries — side by side */
.post-body .wp-block-gallery{display:grid;gap:14px;margin:2.5em 0}
.post-body .wp-block-gallery.columns-2,.post-body .wp-block-gallery{grid-template-columns:repeat(2,1fr)}
.post-body .wp-block-gallery.columns-3{grid-template-columns:repeat(3,1fr)}
.post-body .wp-block-gallery figure{margin:0}
.post-body .wp-block-gallery img{height:100%;object-fit:cover}
@media(max-width:600px){.post-body .wp-block-gallery,.post-body .wp-block-gallery.columns-2,.post-body .wp-block-gallery.columns-3{grid-template-columns:1fr}}

/* pull quote */
.post-body blockquote{border:none;position:relative;margin:2.5em 0;padding:0 0 0 32px;border-left:2px solid var(--accent)}
.post-body blockquote p{font-family:var(--font-display);font-weight:500;font-size:clamp(1.4rem,2.6vw,2rem);line-height:1.3;color:var(--fg);margin-bottom:.4em}
.post-body blockquote cite{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--fg-mute);font-style:normal}
.post-body .wp-block-pullquote{border-block:1px solid var(--hair);border-left:none;padding:2em 0;text-align:center}

/* code */
.post-body pre{background:var(--surface);border:1px solid var(--hair);border-radius:2px;padding:20px;overflow-x:auto;font-family:var(--font-mono);font-size:.85rem;line-height:1.6}
.post-body code{font-family:var(--font-mono);font-size:.9em;background:var(--surface);padding:2px 6px;border-radius:2px}
.post-body pre code{background:none;padding:0}

/* first paragraph lead-in */
.post-body > p:first-of-type{font-size:1.3rem;line-height:1.6;color:var(--fg-dim)}

/* article footer */
.article__foot{max-width:760px;margin:clamp(48px,8vh,90px) auto 0;padding-top:32px;border-top:1px solid var(--hair);display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}
.article__tags{display:flex;gap:12px;color:var(--fg-mute)}
.article__cta{display:inline-flex;gap:10px;padding:14px 22px;border:1px solid var(--hair);border-radius:2px;color:var(--fg)}
.article__cta:hover{border-color:var(--accent);color:var(--accent)}

/* related */
.article__related{max-width:760px;margin:clamp(56px,10vh,110px) auto 0}
