/* Article layout (plan 3.11): header, text column + sidebar from 1024px, related articles. Tokens only; loaded on posts. */
.jm-article{padding:var(--s-4) 0 0}
.jm-article .jm-article__wrap{box-sizing:border-box;max-width:calc(var(--max-width) + 2 * var(--gutter));margin:0 auto;padding:0 var(--gutter)}
.jm-article__head{max-width:900px;margin:var(--s-2) 0 var(--s-5)}
.jm-article__eyebrow{margin:0 0 var(--s-3)}
.jm-article__title{margin:0 0 var(--s-3);font:600 var(--t-hero)/1.08 var(--font-display);letter-spacing:-.005em;color:var(--ink);text-transform:none}
.jm-article__byline{display:flex;flex-wrap:wrap;gap:var(--s-1) var(--s-5);font-size:var(--t-meta)}
.jm-article__grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s-7)}
.jm-article__main{min-width:0}
.jm-article__hero{margin:0 0 var(--s-6)}
.jm-article__hero-img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover}
@media (min-width:768px){.jm-article__hero-img{aspect-ratio:3/2}}
@media (min-width:1024px){.jm-article__grid.has-side{grid-template-columns:minmax(0,1fr) 300px;gap:var(--s-9)}}
/* Text: 680px column for prose, wide blocks (grids, rows, images) use the whole column. */
.jm-prose{font:400 var(--t-body)/var(--lh-body) var(--font-ui);color:var(--ink-2)}
.jm-prose>p,.jm-prose>ul,.jm-prose>ol,.jm-prose>h2,.jm-prose>h3,.jm-prose>h4,.jm-prose>blockquote,.jm-prose>details{max-width:var(--editorial-width)}
.jm-prose p,.jm-prose li{font-size:inherit;line-height:inherit}
.jm-prose h2{margin:var(--s-8) 0 var(--s-3);font:600 var(--t-h2)/1.15 var(--font-display);letter-spacing:0;text-transform:none;color:var(--ink)}
.jm-prose h3{margin:var(--s-6) 0 var(--s-2);font:700 var(--t-h3)/1.3 var(--font-ui);letter-spacing:0;text-transform:none;color:var(--ink)}
.jm-prose h4{margin:var(--s-5) 0 var(--s-2);font:700 var(--t-body)/1.3 var(--font-ui);color:var(--ink)}
.jm-prose a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.jm-prose img{max-width:100%;height:auto}
.jm-prose>p:first-of-type:not(:has(img,strong)),.jm-prose>p.jm-lead{font:500 clamp(1.1875rem,1.08rem + .5vw,1.4375rem)/1.45 var(--font-display);color:var(--ink)}
.jm-prose>.jm-toc{max-width:var(--editorial-width)}
.jm-article__tags{display:flex;flex-wrap:wrap;gap:var(--s-2);margin:var(--s-6) 0 0;padding:0;list-style:none}
.jm-article__tags li{margin:0}
.jm-article__tags a{display:inline-flex;align-items:center;min-height:var(--tap-min);padding:0 var(--s-3);border:1px solid var(--line);border-radius:var(--r-pill);color:var(--ink-2);font-size:var(--t-meta);text-decoration:none}
/* Sidebar: under the text below 1024px; the side table of contents is for wide screens only (a collapsed box is in the text). */
.jm-article__side{display:grid;gap:var(--s-5);align-content:start;min-width:0}
.jm-article__side .jm-toc{margin:0}
.jm-toc--side{display:none}
@media (min-width:1024px){.jm-toc--side{display:block}}
.jm-article__widget{box-sizing:border-box;margin:0;padding:var(--s-4);background:var(--white);border:1px solid var(--line);border-radius:var(--r-sm)}
.jm-article__widget>:last-child{margin-bottom:0}
.jm-article__widget-title{margin:0 0 var(--s-3);font:700 var(--t-label)/1.2 var(--font-ui);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--ink-2)}
.jm-article__pills{display:flex;flex-wrap:wrap;gap:var(--s-2);margin:0;padding:0;list-style:none}
.jm-article__pills li{margin:0}
.jm-article__news{background:var(--jm-footer-bg);border-color:var(--jm-footer-bg);color:var(--jm-footer-soft)}
.jm-article__news .jm-newsletter__row{flex-direction:column}
.jm-article__news .jm-newsletter__submit{background:var(--jm-footer-fg);color:var(--jm-footer-bg);border:1px solid var(--jm-footer-fg)}
.jm-article__news .jm-newsletter__consent label{color:var(--jm-footer-soft)}
.jm-article__related{margin-top:var(--s-9);padding:var(--s-2) 0 var(--s-9);background:var(--porcelain-2)}
.jm-article__comments{margin-top:var(--s-8)}
