#blogArchive .spec-meta{line-height:2.1}#blogArchive .spec-meta .tag{margin-left:4px}.article{max-width:780px;margin:0 auto;padding:100px 44px 80px}.article-header{margin-bottom:56px;padding-bottom:40px;border-bottom:1px solid var(--rule)}.article-title{font-family:var(--f-display);font-weight:350;font-size:clamp(36px,5.2vw,64px);line-height:1.04;letter-spacing:-.022em;font-variation-settings:"opsz" 144,"SOFT" 50;color:var(--ink-bright);margin-bottom:24px}.article-title em{font-style:italic;color:var(--green);font-variation-settings:"opsz" 144,"SOFT" 100}.article-lede{font-family:var(--f-sans);font-size:19px;line-height:1.55;color:var(--ink);max-width:640px;margin-bottom:28px}.article-meta{font-family:var(--f-mono);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-dim)}.article-body{font-family:var(--f-sans);font-size:17px;line-height:1.75;color:var(--ink)}.article-body>*:first-child{margin-top:0}.article-body p{margin:0 0 1.4em}.article-body p:first-of-type:first-line{font-variant-caps:all-small-caps;letter-spacing:.04em}.article-body h2{font-family:var(--f-display);font-weight:400;font-size:32px;line-height:1.12;letter-spacing:-.018em;font-variation-settings:"opsz" 144,"SOFT" 50;color:var(--ink-bright);margin:2.6em 0 .7em}.article-body h2 em{font-style:italic;color:var(--green);font-variation-settings:"opsz" 144,"SOFT" 100}.article-body h3{font-family:var(--f-display);font-weight:450;font-size:22px;line-height:1.2;letter-spacing:-.012em;font-variation-settings:"opsz" 144;color:var(--ink-bright);margin:2.2em 0 .5em}.article-body h4{font-family:var(--f-sans);font-weight:600;font-size:15px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-bright);margin:2em 0 .4em}.article-body strong{color:var(--ink-bright);font-weight:600}.article-body em{font-style:italic;color:var(--ink-bright)}.article-body a{color:var(--green);text-decoration:none;border-bottom:1px solid var(--green-deep);transition:border-color .2s,color .2s}.article-body a:hover{color:var(--ink-bright);border-bottom-color:var(--green)}.article-body ul,.article-body ol{margin:1.2em 0 1.6em 1.5em;padding:0}.article-body li{margin-bottom:.5em}.article-body ul li{list-style:none;position:relative}.article-body ul li:before{content:"—";color:var(--green);position:absolute;left:-1.5em;font-family:var(--f-mono)}.article-body blockquote{margin:2em 0;border-left:2px solid var(--green);background:var(--hover-mint);padding:20px 24px}.article-body blockquote p:last-child{margin-bottom:0}.article-body code{font-family:var(--f-mono);font-size:.88em;padding:2px 6px;background:var(--bg-card);border:1px solid var(--rule);color:var(--green);border-radius:3px}.article-body pre{margin:1.8em 0;padding:20px 22px;background:var(--bg-card);border:1px solid var(--rule-bright);border-radius:4px;overflow-x:auto;font-family:var(--f-mono);font-size:13.5px;line-height:1.6;color:var(--ink)}.article-body pre code{background:transparent;border:none;padding:0;color:inherit;font-size:inherit}.article-body img{display:block;max-width:100%;height:auto;margin:2em auto;border:1px solid var(--rule-bright);border-radius:4px}.article-body hr{border:0;border-top:1px solid var(--rule);margin:3em 0}.article-body table{width:100%;border-collapse:collapse;margin:1.8em 0;font-size:14.5px}.article-body th,.article-body td{padding:10px 14px;border-bottom:1px solid var(--rule);text-align:left}.article-body th{font-family:var(--f-mono);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-dim);font-weight:500}.article-foot{margin-top:72px;padding-top:32px;border-top:1px solid var(--rule);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px}.article-tags{display:flex;flex-wrap:wrap;gap:6px}.article-foot .link-chip .arrow{transform:none}.article-foot .link-chip:hover .arrow{transform:translate(-4px)}@media(max-width:960px){.article{padding:60px 22px}.article-body{font-size:16px;line-height:1.7}.article-body h2{font-size:26px}.article-body h3{font-size:19px}.article-body ul li:before{left:-1.2em}.article-body ul,.article-body ol{margin-left:1.2em}.article-foot{flex-direction:column;align-items:flex-start}}
