.blog{color:var(--ink);background:0 0;min-height:70vh}.blog a{color:inherit}.blog-wrap{width:min(1160px,100% - clamp(32px,7vw,88px));margin-inline:auto}.blog-borrowed{background:var(--seal-soft,#e8efff);color:var(--ink-2,#454b60);border-radius:12px;margin:10px 0 0;padding:10px 14px;font-size:14px;line-height:1.5}.blog-hero{padding:clamp(56px,10vw,128px) 0 clamp(28px,4vw,48px)}.blog-eyebrow{font:600 12px/1 var(--font-ui);letter-spacing:.16em;text-transform:uppercase;color:var(--seal);align-items:center;gap:10px;display:inline-flex}.blog-eyebrow:before{content:"";background:currentColor;border-radius:2px;width:28px;height:2px}.blog-hero h1{font:500 clamp(40px, 7vw, 84px)/1.02 var(--font-display);letter-spacing:-.02em;text-wrap:balance;max-width:14ch;margin:18px 0 0}.blog-hero p{max-width:52ch;font:400 clamp(17px, 2vw, 21px)/1.6 var(--font-ui);color:var(--ink-2);margin:20px 0 0}.blog-topics{flex-wrap:wrap;gap:8px;margin:28px 0 0;padding:0;list-style:none;display:flex}.blog-topics a{border:1px solid var(--line-2);font:500 14px/1 var(--font-ui);transition:background .2s var(--ease-ink), border-color .2s var(--ease-ink);background:0 0;border-radius:999px;align-items:center;gap:8px;padding:8px 16px;text-decoration:none;display:inline-flex}.blog-topics a:hover,.blog-topics a[aria-current=page]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.blog-topics small{opacity:.6}.blog-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:clamp(20px,3vw,36px);padding:24px 0 clamp(64px,9vw,120px);display:grid}.blog-card{flex-direction:column;gap:14px;text-decoration:none;display:flex}.blog-card .cover{aspect-ratio:16/10;border-radius:var(--ink-radius);background:linear-gradient(135deg, var(--paper-2), var(--seal-soft));border:1px solid var(--line);place-items:center;display:grid;overflow:hidden}.blog-card .cover img{object-fit:cover;width:100%;height:100%;transition:transform .6s var(--ease-ink)}.blog-card:hover .cover img{transform:scale(1.03)}.blog-card .cover span{font:500 64px/1 var(--font-display);color:var(--seal);opacity:.55}.blog-card .kicker{font:600 11px/1 var(--font-ui);letter-spacing:.14em;text-transform:uppercase;color:var(--seal)}.blog-card h2,.blog-card h3{font:500 clamp(22px, 2.2vw, 28px)/1.18 var(--font-display);letter-spacing:-.01em;text-wrap:balance;margin:0}.blog-card p{color:var(--ink-2);font:400 15.5px/1.6 var(--font-ui);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.blog-card .meta{font:400 13px/1 var(--font-ui);color:var(--mute)}.blog-card.lead{grid-column:1/-1;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:center;gap:clamp(20px,3vw,40px);display:grid}.blog-card.lead h2{font-size:clamp(30px,4vw,48px)}.blog-card.lead p{-webkit-line-clamp:4;font-size:17px}.blog-card:hover h2,.blog-card:hover h3{text-underline-offset:5px;text-decoration:underline;text-decoration-thickness:1px}.blog-foot{font:400 14px/1.5 var(--font-ui);color:var(--mute);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;padding-bottom:64px;display:flex}.blog-empty{font:400 18px/1.6 var(--font-display);color:var(--ink-2);padding:56px 0 96px}.post{padding-bottom:clamp(56px,8vw,110px)}.post-head{max-width:920px;padding:clamp(44px,8vw,104px) 0 clamp(24px,4vw,44px)}.post-head .crumbs{font:500 13px/1.4 var(--font-ui);color:var(--mute);flex-wrap:wrap;gap:6px;display:flex}.post-head .crumbs a{text-decoration:none}.post-head .crumbs a:hover{text-decoration:underline}.post-head h1{font:500 clamp(34px, 5.6vw, 68px)/1.06 var(--font-display);letter-spacing:-.02em;text-wrap:balance;margin:18px 0 0}.post-head .deck{max-width:60ch;font:400 clamp(18px, 2vw, 22px)/1.55 var(--font-display);color:var(--ink-2);margin:22px 0 0;font-style:italic}.post-head .byline{font:500 13.5px/1.4 var(--font-ui);color:var(--mute);flex-wrap:wrap;gap:6px 18px;margin-top:26px;display:flex}.post-cover{margin:0 0 clamp(28px,5vw,56px)}.post-cover img{object-fit:cover;border-radius:var(--ink-radius-lg);border:1px solid var(--line);background:var(--paper-2);width:100%;max-height:560px;display:block}.post-cover figcaption{font:400 13px/1.5 var(--font-ui);color:var(--mute);margin-top:10px}.post-layout{grid-template-columns:minmax(0, 220px) minmax(0, var(--measure));justify-content:start;align-items:start;gap:clamp(28px,5vw,72px);display:grid}.post-toc{font:500 14px/1.5 var(--font-ui);position:sticky;top:92px}.post-toc h2{font:600 11px/1 var(--font-ui);letter-spacing:.14em;text-transform:uppercase;color:var(--mute);margin:0 0 12px}.post-toc ol{border-left:1px solid var(--line-2);margin:0;padding:0;list-style:none}.post-toc li a{color:var(--ink-2);border-left:2px solid #0000;margin-left:-1px;padding:5px 0 5px 14px;text-decoration:none;display:block}.post-toc li a:hover{border-left-color:var(--seal);color:var(--ink)}.post-toc li.sub a{padding-left:28px;font-size:13px}.prose{font:400 clamp(17px, 1.5vw, 19.5px)/1.78 var(--font-display);color:var(--ink)}.prose>*+*{margin-top:1.15em}.prose h2,.prose h3,.prose h4{font-family:var(--font-display);letter-spacing:-.012em;text-wrap:balance;scroll-margin-top:96px;font-weight:500;line-height:1.2;position:relative}.prose h2{margin-top:2.2em;font-size:1.75em}.prose h3{margin-top:1.9em;font-size:1.35em}.prose h4{margin-top:1.6em;font-size:1.1em}.prose .anchor{opacity:0;color:var(--seal);font-family:var(--font-ui);font-weight:400;text-decoration:none;position:absolute;left:-1.1em}.prose h2:hover .anchor,.prose h3:hover .anchor,.prose h4:hover .anchor,.prose .anchor:focus{opacity:1}.prose a{color:var(--indigo);text-underline-offset:3px;text-decoration-thickness:1px}.prose a:hover{color:var(--seal)}.prose ul,.prose ol{padding-left:1.3em}.prose li+li{margin-top:.4em}.prose li::marker{color:var(--seal)}.prose blockquote{border-left:3px solid var(--seal);color:var(--ink-2);margin-inline:0;padding:.2em 0 .2em 1.2em;font-style:italic}.prose code{background:var(--paper-2);border-radius:6px;padding:.12em .4em;font:.88em/1 ui-monospace,Cascadia Code,Consolas,monospace}.prose pre{border-radius:var(--ink-radius);background:var(--ink);color:var(--paper);padding:18px 20px;font-size:15px;line-height:1.6;overflow-x:auto}.prose pre code{color:inherit;background:0 0;padding:0}.prose hr{background:var(--line-2);border:0;height:1px;margin-block:2.4em}.prose figure{margin-inline:0}.prose img{border-radius:var(--ink-radius);border:1px solid var(--line);background:var(--paper-2);max-width:100%;height:auto}.prose figcaption{font:400 13.5px/1.5 var(--font-ui);color:var(--mute);margin-top:8px}.prose .table-scroll{overflow-x:auto}.prose table{border-collapse:collapse;width:100%;font:400 15.5px/1.5 var(--font-ui)}.prose th,.prose td{text-align:start;border-bottom:1px solid var(--line);padding:10px 14px}.prose th{background:var(--paper-2);font-weight:600}.post-faq{margin-top:56px}.post-faq h2{font:500 28px/1.2 var(--font-display)}.post-faq details{border-top:1px solid var(--line-2);font:400 16.5px/1.65 var(--font-display);padding:14px 0}.post-faq summary{cursor:pointer;font:600 16px/1.4 var(--font-ui)}.post-faq details[open] summary{color:var(--seal)}.post-langs{font:500 14px/1.4 var(--font-ui);color:var(--mute);flex-wrap:wrap;align-items:center;gap:8px 14px;margin-top:40px;display:flex}.post-langs a{border:1px solid var(--line-2);color:var(--ink);border-radius:999px;padding:5px 12px;text-decoration:none}.post-cta{border-radius:var(--ink-radius-lg);background:var(--ink);color:var(--paper);gap:14px;margin-top:56px;padding:clamp(24px,4vw,40px);display:grid}.post-cta h2{font:500 clamp(24px, 3vw, 34px)/1.15 var(--font-display);margin:0}.post-cta p{max-width:52ch;font:400 16px/1.6 var(--font-ui);opacity:.85;margin:0}.post-cta a{background:var(--seal);color:var(--seal-ink);font:600 15px/1 var(--font-ui);transition:transform .2s var(--ease-ink);border-radius:999px;justify-self:start;padding:12px 22px;text-decoration:none}.post-cta a:hover{transform:translateY(-2px)}.post-related{border-top:1px solid var(--line-2);margin-top:clamp(56px,8vw,96px);padding-top:32px}.post-related>h2{font:500 30px/1.2 var(--font-display);margin:0 0 24px}@media (max-width:920px){.post-layout{grid-template-columns:minmax(0,1fr)}.post-toc{border:1px solid var(--line);border-radius:var(--ink-radius);background:var(--surface);padding:16px 18px;position:static}.blog-card.lead{grid-template-columns:minmax(0,1fr)}}.blog .prose p,.blog .prose li,.blog .prose blockquote,.blog .prose td{color:var(--ink)}.blog .prose blockquote{color:var(--ink-2)}.blog .blog-card>div:last-child{align-content:center;gap:10px;display:grid}.blog .blog-card h2,.blog .blog-card h3{margin:0}.share-bar{flex-wrap:wrap;align-items:center;gap:8px;margin:28px 0 0;display:flex}.share-bar.compact{margin:18px 0 0}.share-label{font:600 12px/1 var(--font-ui);letter-spacing:.12em;text-transform:uppercase;color:var(--mute);margin-inline-end:4px}.share-button{border:1px solid var(--line);background:var(--surface);min-width:38px;height:38px;color:var(--ink-2);font:600 13px/1 var(--font-ui);cursor:pointer;transition:background .18s, color .18s, border-color .18s, transform .18s var(--ease-ink);border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 10px;text-decoration:none;display:inline-flex}.share-button:hover{background:var(--ink);border-color:var(--ink);color:var(--paper);transform:translateY(-1px)}.share-button:focus-visible{box-shadow:0 0 0 4px color-mix(in srgb, var(--seal) 26%, transparent);outline:none}.share-button.copy.done{background:color-mix(in srgb, var(--moss) 16%, transparent);color:var(--moss);border-color:#0000}.share-glyph{font:800 13px/1 var(--font-ui);letter-spacing:-.02em}.post-tags{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:10px;margin:36px 0 0;padding-top:22px;display:flex}.post-tags>span{font:600 12px/1 var(--font-ui);letter-spacing:.12em;text-transform:uppercase;color:var(--mute)}.post-tags ul,.blog-tags{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.blog-tags{margin-top:12px}.post-tags a,.blog-tags a{background:var(--paper-2);color:var(--ink-2);font:500 13px/1 var(--font-ui);border-radius:999px;padding:7px 12px;text-decoration:none;transition:background .18s,color .18s;display:inline-block}.post-tags a:hover,.blog-tags a:hover,.blog-tags a[aria-current=page]{background:var(--seal-soft);color:var(--indigo)}.post-author{border:1px solid var(--line);background:var(--paper-2);border-radius:20px;align-items:flex-start;gap:16px;margin:32px 0 0;padding:20px;display:flex}.post-author-mark{background:var(--blue-gradient);color:#fff;width:48px;height:48px;font:700 18px/1 var(--font-ui);border-radius:50%;flex:none;place-items:center;display:grid}.post-author div{gap:4px;display:grid}.post-author-kicker{font:600 11px/1 var(--font-ui);letter-spacing:.12em;text-transform:uppercase;color:var(--mute)}.post-author strong{font:700 17px/1.3 var(--font-display)}.post-author p{color:var(--ink-2);font:400 14.5px/1.55 var(--font-ui);margin:2px 0 0}.reading-progress{z-index:70;pointer-events:none;height:3px;position:fixed;inset:0 0 auto}.reading-progress span{background:var(--blue-gradient);transform-origin:0;height:100%;transition:transform .12s linear;display:block}[dir=rtl] .reading-progress span{transform-origin:100%}@media (min-width:1000px){.post-toc{align-self:start;max-height:calc(100vh - 140px);position:sticky;top:104px;overflow:auto}}
