:root{--accent:#f4ff69;--ink:#111210;--ink-soft:#3a3b37;--mute:#75766f;--rule:#e6e4dc;--paper:#f6f3ea;--paper-2:#efece1;--sans:"Geist", ui-sans-serif, system-ui, sans-serif;--serif:"Shippori Mincho", "Newsreader", ui-serif, Georgia, serif;--mono:"Geist Mono", ui-monospace, monospace}*,:before,:after{box-sizing:border-box}body.blog-body{background:var(--paper);color:var(--ink);font-family:var(--serif);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;margin:0;padding:0;display:block;overflow-x:clip}.blog-article{max-width:1280px;margin:0 auto;padding:56px 40px 0}.blog-eyebrow{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-family:var(--mono);font-size:11px;color:var(--mute);text-transform:uppercase;letter-spacing:.08em;margin-bottom:20px}.blog-eyebrow .etag{background:var(--ink);color:var(--accent);padding:3px 8px;border-radius:3px;font-size:11px}.blog-eyebrow .edot{width:4px;height:4px;background:var(--mute);border-radius:50%;display:inline-block;flex-shrink:0}h1.blog-title{font-family:var(--serif);font-weight:700;font-size:clamp(24px,5vw,36px);line-height:1.1;letter-spacing:-.02em;margin:0 0 28px;text-wrap:balance;color:var(--ink)}.blog-deck{font-family:var(--serif);font-size:16px;line-height:1.55;color:var(--ink-soft);max-width:110ch;margin:0 0 40px;text-wrap:pretty}.blog-meta{display:flex;align-items:center;flex-wrap:wrap;gap:24px;padding:18px 0;border-top:1px solid var(--ink);border-bottom:1px solid var(--rule);margin-bottom:48px}.blog-author{display:flex;align-items:center;gap:10px}.blog-avatar{width:40px;height:40px;border-radius:50%;background:var(--paper-2);border:1px solid var(--rule);display:grid;place-items:center;font-family:var(--sans);font-weight:700;font-size:13px;overflow:hidden;flex-shrink:0}.blog-avatar img{width:100%;height:100%;object-fit:cover}.blog-author-info{display:flex;flex-direction:column;line-height:1.3}.blog-author-name{font-family:var(--sans);font-weight:600;font-size:13px}.blog-author-role{font-family:var(--mono);font-size:10px;color:var(--mute);text-transform:uppercase;letter-spacing:.06em}.blog-meta-item{font-family:var(--mono);font-size:11px;color:var(--mute);text-transform:uppercase;letter-spacing:.06em}.blog-meta-item b{color:var(--ink);font-weight:600}.blog-meta-spacer{flex:1}.blog-hero{width:100%;height:auto;aspect-ratio:1200/420;min-height:200px;background:repeating-linear-gradient(135deg,transparent 0 18px,rgba(17,18,16,.04) 18px 19px),var(--paper-2);border:1px solid var(--rule);border-radius:6px;margin-bottom:48px;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.blog-hero img{width:100%;height:100%;object-fit:cover}.blog-hero-label{font-family:var(--mono);font-size:12px;color:var(--mute);text-transform:uppercase;letter-spacing:.12em}.blog-hero-caption{position:absolute;bottom:14px;left:0;right:0;text-align:center;font-family:var(--mono);font-size:10px;color:var(--mute);text-transform:uppercase;letter-spacing:.1em}.blog-body-grid{display:grid;grid-template-columns:200px 1fr;gap:72px;padding-bottom:96px}.blog-sidebar{position:sticky;top:88px;align-self:start}.blog-toc-label{font-family:var(--mono);font-size:10px;color:var(--mute);text-transform:uppercase;letter-spacing:.1em;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--rule)}.blog-toc-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:2px}.blog-toc-list a{display:block;font-family:var(--sans);font-size:12px;line-height:1.4;color:var(--mute);text-decoration:none;padding:4px 8px;border-left:2px solid transparent;transition:color .15s,border-color .15s}.blog-toc-list a:hover{color:var(--ink);border-left-color:var(--rule)}.blog-toc-list a.toc-active{color:var(--ink);font-weight:600;border-left-color:var(--ink)}.blog-toc-list li.toc-h3 a{padding-left:18px;font-size:11px}.blog-prose{max-width:66ch}.blog-prose>*+*{margin-top:1.5em}.blog-prose h2{font-family:var(--sans);font-weight:700;font-size:26px;line-height:1.2;letter-spacing:-.02em;margin:2.5em 0 .5em;color:var(--ink);scroll-margin-top:100px}.blog-prose h3{font-family:var(--sans);font-weight:600;font-size:18px;margin:2em 0 .4em;letter-spacing:-.01em;scroll-margin-top:100px;color:var(--ink)}.blog-prose p{margin:0}.blog-prose a{color:var(--ink);text-decoration:none;background:linear-gradient(180deg,transparent 85%,var(--accent) 85%);padding:0 1px;transition:background .15s}.blog-prose a:hover{background:linear-gradient(180deg,transparent 0%,var(--accent) 0%)}.blog-prose strong{font-weight:700}.blog-prose em{font-style:italic}.blog-prose code{font-family:var(--mono);font-size:.85em;background:var(--paper-2);border:1px solid var(--rule);padding:1px 5px;border-radius:3px}.blog-prose blockquote{margin:2.5em 0;padding:36px 40px;background:var(--ink);color:var(--paper);border-radius:6px;position:relative}.blog-prose blockquote:before{content:"“";position:absolute;top:-18px;left:28px;font-family:var(--serif);font-size:100px;line-height:1;color:var(--accent)}.blog-prose blockquote p{font-family:var(--serif);font-size:22px;font-weight:500;line-height:1.4}.blog-prose pre{font-family:var(--mono);font-size:13px;line-height:1.6;background:var(--ink);color:#d8d6c7;padding:22px 26px;border-radius:6px;overflow-x:auto}.blog-prose pre code{background:0 0;border:0;padding:0;font-size:inherit}.blog-prose ol,.blog-prose ul{margin:0;padding-left:0;list-style:none;display:flex;flex-direction:column;gap:12px}.blog-prose ol{counter-reset:blist}.blog-prose ol li,.blog-prose ul li{padding-left:36px;position:relative;line-height:1.6}.blog-prose ol li{counter-increment:blist}.blog-prose ol li:before{content:counter(blist,decimal-leading-zero);position:absolute;left:0;top:1px;font-family:var(--mono);font-size:11px;color:var(--ink);background:var(--accent);padding:1px 5px;border:1px solid var(--ink);line-height:1.5}.blog-prose ul li:before{content:"";position:absolute;left:4px;top:.72em;width:10px;height:1px;background:var(--ink)}.blog-prose hr{border:0;border-top:1px solid var(--rule);margin:2.5em 0}.blog-prose table{width:100%;table-layout:auto;border-collapse:separate;border-spacing:0;margin:2.5em 0;font-family:var(--sans);font-size:14px;line-height:1.6;border:1px solid var(--rule);border-radius:8px;overflow:hidden;background-color:var(--paper)}@media (max-width:768px){.blog-prose table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}}.blog-prose th,.blog-prose td{padding:14px 18px;border-bottom:1px solid var(--rule);border-right:1px solid var(--rule);text-align:left;vertical-align:top}.blog-prose th:last-child,.blog-prose td:last-child{border-right:none}.blog-prose tr:last-child td{border-bottom:none}.blog-prose th{background-color:#eae2f5;font-weight:600;color:var(--ink);border-bottom:1px solid var(--rule);font-size:13px;letter-spacing:.05em}.blog-prose td:first-child,.blog-prose th:first-child{width:1%;white-space:nowrap;font-weight:600;color:var(--ink)}.blog-prose td:first-child{background-color:#efece159}.blog-prose th:first-child{background-color:#eae2f5}.blog-prose tr:nth-child(2n) td{background-color:#efece126}.blog-prose tr:nth-child(2n) td:first-child{background-color:#efece173}.blog-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}.blog-tags a{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);background:var(--paper-2);border:1px solid var(--rule);padding:5px 10px;border-radius:999px;text-decoration:none;transition:background .15s,border-color .15s}.blog-tags a:hover{background:var(--accent);border-color:var(--ink);color:var(--ink)}.blog-tags a[href$="/news"i]{background-color:#e6f2ff;border-color:#d0e7ff;color:#004080}.blog-tags a[href$="/news"i]:hover{background-color:#d0e7ff;border-color:#004080;color:#004080}.blog-author-card{margin-top:40px;padding:24px;background:var(--paper-2);border:1px solid var(--rule);border-radius:6px;display:grid;grid-template-columns:56px 1fr auto;gap:18px;align-items:center}.blog-author-card .blog-avatar{width:56px;height:56px;font-size:18px}.blog-author-card h4{font-family:var(--sans);font-weight:700;font-size:15px;margin:0 0 4px;color:var(--ink)}.blog-author-card p{margin:0;font-family:var(--serif);font-size:14px;color:var(--ink-soft);line-height:1.5}footer.blog-footer{background:var(--ink);color:var(--paper);padding:56px 40px 28px;margin-top:56px}.blog-footer-inner{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}.blog-footer-brand{font-family:var(--sans);font-weight:700;font-size:28px;letter-spacing:-.025em;line-height:1.1;color:var(--paper)}.blog-footer-brand .fdot{color:var(--accent)}footer.blog-footer h5{font-family:var(--mono);font-size:10px;color:var(--accent);text-transform:uppercase;letter-spacing:.1em;margin:0 0 14px;font-weight:400}footer.blog-footer ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px;font-family:var(--sans);font-size:13px}footer.blog-footer a{color:var(--paper);text-decoration:none;opacity:.8;transition:opacity .15s,color .15s}footer.blog-footer a:hover{opacity:1;color:var(--accent)}.blog-footer-bottom{max-width:1280px;margin:48px auto 0;padding-top:20px;border-top:1px solid #2a2b27;display:flex;justify-content:space-between;font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.08em;opacity:.55}@media (max-width:900px){.blog-body-grid{grid-template-columns:1fr}.blog-sidebar{position:static}.blog-footer-inner{grid-template-columns:1fr 1fr}.blog-article{padding:28px 20px 0}.blog-author-card{grid-template-columns:48px 1fr}}@media (max-width:600px){.blog-footer-inner{grid-template-columns:1fr}h1.blog-title{font-size:clamp(26px,8vw,40px)}}