.article-byline{flex-wrap:wrap;align-items:center;gap:14px 28px;display:flex}.article-byline-photo{object-fit:cover;border:1px solid var(--line);border-radius:50%;width:44px;height:44px}.article-byline-author{gap:2px;margin:0;display:grid}.article-byline-author .label-caps{color:var(--muted)}.article-byline-author a{color:var(--text);font-weight:var(--fw-semibold);text-decoration:none}.article-byline-author a:hover{color:var(--blueprint)}.article-meta{flex-wrap:wrap;gap:14px 32px;margin:0;display:flex}.article-meta div{align-content:end;gap:2px;display:grid}.article-meta dt{font-size:var(--fs-label);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--muted)}.article-meta dd{font-size:var(--fs-small);font-weight:var(--fw-medium);color:var(--text);margin:0}.article-meta .visually-hidden{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.article-cover{border:1px solid var(--line);border-radius:4px;margin:0;overflow:hidden}.article-cover img{width:100%;height:auto;display:block}.article-layout{grid-template-columns:minmax(0,1fr);display:grid}.article-layout--toc{grid-template-columns:minmax(200px,280px) minmax(0,1fr);gap:clamp(40px,4.5vw,64px)}.article-main{min-width:0}.article-toc{align-self:start;max-height:calc(100vh - 140px);position:sticky;top:112px;overflow-y:auto}.article-toc summary{border-bottom:1px solid var(--line);color:var(--muted);cursor:pointer;padding-bottom:14px;list-style:none}.article-toc summary::-webkit-details-marker{display:none}.article-toc ol{margin:0;padding:12px 0 0;list-style:none}.article-toc li{margin:0}.article-toc a{color:var(--muted);font-size:var(--fs-small);line-height:var(--lh-title);border-left:2px solid #0000;padding:7px 0 7px 14px;text-decoration:none;transition:color .2s,border-color .2s;display:block}.article-toc .article-toc-sub a{padding-left:28px}.article-toc a:hover{color:var(--text)}.article-toc a[aria-current]{color:var(--blueprint);border-left-color:var(--blueprint)}.article-body{font-size:var(--fs-lead);line-height:var(--lh-body);color:var(--text);overflow-wrap:break-word}.article-body>*+*{margin-top:1.1em}.article-body h2{font-size:var(--fs-h3);font-weight:var(--fw-regular);line-height:var(--lh-heading);letter-spacing:var(--tracking-heading);text-wrap:balance;margin-top:1.8em}.article-body h3{font-size:var(--fs-h4);font-weight:var(--fw-semibold);line-height:var(--lh-title);margin-top:1.6em}.article-body :is(h2,h3)+*{margin-top:.7em}.article-body :is(strong,b){font-weight:var(--fw-semibold)}.article-body a{color:var(--blueprint);text-underline-offset:3px;text-decoration:underline}.article-body :is(ul,ol){padding-left:1.4em}.article-body ul{list-style:square}.article-body ol{list-style:decimal}.article-body li{padding-left:.3em}.article-body li::marker{color:var(--blueprint)}.article-body li+li,.article-body li>:is(ul,ol){margin-top:.5em}.article-body blockquote{border-left:2px solid var(--blueprint);color:var(--muted);margin-inline:0;padding:4px 0 4px 20px}.article-body hr{border:0;border-top:1px solid var(--line);margin-block:2em}.article-body code{font-family:var(--font-mono);background:var(--surface);border-radius:2px;padding:.1em .35em;font-size:.9em}.article-body img{border:1px solid var(--line);border-radius:4px;max-width:100%;height:auto;margin:1.8em auto;display:block}.article-body figure{text-align:center;margin:1.8em 0}.article-body figcaption{font-size:var(--fs-small);color:var(--muted);margin-top:10px}.article-table{border:1px solid var(--line);background:var(--paper,var(--bg));overflow-x:auto}.article-body table{border-collapse:collapse;width:100%;font-size:var(--fs-body-sm);line-height:var(--lh-body)}.article-body :is(th,td){text-align:left;vertical-align:top;border-bottom:1px solid var(--line);min-width:140px;padding:14px 20px}.article-body :is(th,td)+:is(th,td){border-left:1px solid var(--line)}.article-body thead th{background:var(--blueprint-ink,var(--text));color:#f1f4f3;font-size:var(--fs-label);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase}.article-body tbody tr>:first-child{color:var(--text);font-weight:var(--fw-semibold)}.article-body tbody tr:nth-child(2n){background:var(--surface-alt)}.article-body tr:last-child>*{border-bottom:0}.article-author{border:1px solid var(--line);background:var(--surface-alt);border-radius:4px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:20px;margin-top:clamp(48px,6vw,72px);padding:28px;display:grid}.article-author-photo{object-fit:cover;border:1px solid var(--line);background:var(--bg);border-radius:50%;width:72px;height:72px}.article-author-photo--logo{object-fit:contain;padding:14px 8px}.article-author-photo--initials{background:var(--blueprint);color:#f1f4f3;font-size:var(--fs-h5);font-weight:var(--fw-semibold);letter-spacing:.04em;place-items:center;display:grid}.article-author-copy{gap:4px;display:grid}.article-author-copy p{margin:0}.article-author-copy .label-caps{color:var(--muted)}.article-author-name{font-size:var(--fs-h5);font-weight:var(--fw-semibold);color:var(--text)}.article-author-role{font-size:var(--fs-small);color:var(--blueprint)}.article-author-copy .article-author-bio{font-size:var(--fs-body-sm);line-height:var(--lh-body);color:var(--muted);margin-top:6px}.article-author-link{font-size:var(--fs-small);font-weight:var(--fw-semibold);color:var(--blueprint);align-items:center;gap:6px;margin-top:8px;display:inline-flex}.article-back{border-top:1px solid var(--line);margin-top:clamp(40px,5vw,64px);padding-top:28px;display:block}@media (width<=1090px){.article-layout--toc{grid-template-columns:minmax(0,1fr);gap:32px}.article-toc{border:1px solid var(--line);background:var(--surface-alt);border-radius:4px;max-height:none;padding:16px 20px;position:static;overflow:visible}.article-toc summary{border-bottom:0;justify-content:space-between;padding-bottom:0;display:flex}.article-toc summary:after{content:"+";font-size:1.4em;line-height:1}.article-toc details[open] summary:after{content:"−"}.article-toc details[open] summary{border-bottom:1px solid var(--line);padding-bottom:12px}}@media (width<=767px){.article-body{font-size:var(--fs-body)}.article-body :is(th,td){padding:12px 14px}.article-author{grid-template-columns:1fr;padding:22px}}
