@font-face{font-family:Blog Kanit;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/kanit-latin-600-normal.woff2)format("woff2")}@font-face{font-family:Blog Kanit;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/kanit-latin-800-normal.woff2)format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/inter-latin-700-normal.woff2)format("woff2")}.blog-shell{--blog-bg:#0c0c0c;--blog-fg:#d7e2ea;--blog-muted:#a3adb5;--blog-line:#34383b;--blog-surface:#141617;--accent:#d7e2ea;background:var(--blog-bg);min-height:100svh;color:var(--blog-fg);overflow-wrap:break-word;font-family:Inter,sans-serif;line-height:1.6}.blog-shell *,.blog-shell :before,.blog-shell :after{box-sizing:border-box}.blog-shell ::selection{background:var(--blog-fg);color:var(--blog-bg)}.blog-shell :focus-visible{outline:2px solid var(--blog-fg);outline-offset:5px;border-radius:2px}.blog-shell a{text-underline-offset:.25em}.blog-shell a:hover{text-decoration:underline}.blog-container{width:min(100% - 3rem,1200px);margin-inline:auto}.blog-skip-link{z-index:100;background:var(--blog-fg);color:var(--blog-bg);padding:.75rem 1rem;position:fixed;top:.5rem;left:.5rem;transform:translateY(-160%)}.blog-skip-link:focus{transform:translateY(0)}.blog-site-header{border-bottom:1px solid var(--blog-line);justify-content:space-between;align-items:center;gap:1.5rem;min-height:104px;display:flex}.blog-wordmark{text-transform:uppercase;letter-spacing:-.04em;font-family:Blog Kanit,sans-serif;font-size:1.4rem;font-weight:600;line-height:1.1}.blog-site-header nav{align-items:center;gap:clamp(1rem,3vw,2.5rem);font-size:.875rem;display:flex}.blog-site-header nav a{align-items:center;gap:.25rem;min-height:44px;display:inline-flex}.blog-fixture-banner{background:var(--blog-fg);color:var(--blog-bg);text-align:center;padding:1rem 1.5rem;font-size:.875rem}.blog-eyebrow{letter-spacing:.12em;text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:.6875rem;line-height:1.6}.blog-index-header{padding-block:clamp(3rem,7vw,6rem) 3rem}.blog-index-header h1{letter-spacing:-.065em;text-transform:uppercase;margin:1rem 0 2rem;font-family:Blog Kanit,sans-serif;font-size:clamp(5rem,15vw,12rem);font-weight:800;line-height:.95}.blog-index-header h1 span{color:var(--blog-muted)}.blog-index-intro{max-width:38rem;color:var(--blog-muted);font-size:clamp(1rem,2vw,1.25rem)}.blog-catalog{padding-bottom:3rem}.blog-filters{border-top:1px solid var(--blog-line);grid-template-columns:minmax(0,1fr) minmax(12rem,.4fr);gap:1.5rem;padding-block:1.5rem;display:grid}.blog-filters label{color:var(--blog-muted);margin-bottom:.5rem;font-size:.75rem;display:block}.blog-filters input,.blog-filters select{border:1px solid var(--blog-line);background:var(--blog-surface);width:100%;min-height:48px;color:var(--blog-fg);font:inherit;border-radius:0;padding:.75rem 1rem;font-size:.9375rem}.blog-filters input::placeholder{color:var(--blog-muted);opacity:1}.blog-results-bar{min-height:3.5rem;color:var(--blog-muted);justify-content:space-between;align-items:center;gap:1rem;font-size:.8125rem;display:flex}.blog-results-bar button{min-height:44px;color:var(--blog-fg);text-underline-offset:.25em;cursor:pointer;text-decoration:underline}.blog-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:3rem 2rem;display:grid}.blog-card-grid>*{min-width:0}.blog-card{border-top:1px solid var(--blog-line);height:100%;padding-top:1rem}.blog-card-featured{border-top:2px solid var(--blog-fg)}.blog-card-image{aspect-ratio:1200/630;background:var(--blog-surface);overflow:hidden}.blog-card-image img{object-fit:cover;width:100%;height:100%;display:block}.blog-card-copy{padding-top:1.5rem}.blog-card .blog-eyebrow{color:var(--blog-muted);margin-bottom:.75rem}.blog-featured-label{color:var(--blog-fg)}.blog-card h2,.blog-card h3{letter-spacing:-.035em;font-size:clamp(1.25rem,2.4vw,1.875rem);font-weight:700;line-height:1.25}.blog-card-summary{color:var(--blog-muted);margin-block:1rem;font-size:.9375rem}.blog-meta{color:var(--blog-muted);font-size:.75rem}.blog-empty{border-top:1px solid var(--blog-line);max-width:48rem;padding:clamp(2rem,5vw,4rem) 0}.blog-empty h2{margin-block:.75rem 1rem;font-family:Blog Kanit,sans-serif;font-size:clamp(1.75rem,4vw,2.75rem);font-weight:600;line-height:1.2}.blog-empty p:not(.blog-eyebrow){color:var(--blog-muted);max-width:36rem}.blog-text-link{align-items:center;gap:.5rem;min-height:44px;margin-top:1rem;text-decoration:underline;display:inline-flex}.blog-footer{border-top:1px solid var(--blog-line);justify-content:space-between;align-items:center;gap:1.5rem;margin-top:4rem;padding-block:2.5rem;font-size:.8125rem;display:flex}.blog-footer p{color:var(--blog-muted)}.blog-footer>a:last-child{padding-block:.75rem}.blog-breadcrumbs{color:var(--blog-muted);margin-block:2rem;font-size:.75rem}.blog-breadcrumbs ol{flex-wrap:wrap;gap:.5rem;display:flex}.blog-breadcrumbs li:not(:last-child):after{content:"/";margin-left:.5rem}.blog-breadcrumbs a{padding-block:.5rem;display:inline-block}.blog-breadcrumbs li:last-child{padding-block:.5rem}.blog-article-header{max-width:58rem;margin:3rem auto}.blog-article-header h1{letter-spacing:-.04em;margin-block:1.25rem;font-family:Blog Kanit,sans-serif;font-size:clamp(2.5rem,5.6vw,4.75rem);font-weight:600;line-height:1.08}.blog-article-description{color:var(--blog-muted);max-width:46rem;font-size:clamp(1.0625rem,2vw,1.25rem)}.blog-byline{color:var(--blog-muted);flex-wrap:wrap;gap:.5rem 1.25rem;margin-top:1.5rem;font-size:.75rem;display:flex}.blog-byline a{color:var(--blog-fg);text-decoration:underline}.blog-hero-image{margin-block:3rem}.blog-hero-image img{background:var(--blog-surface);width:100%;height:auto;display:block}.blog-reading-layout{max-width:48rem;margin:3rem auto}.blog-reading-column{min-width:0}.blog-toc{border-block:1px solid var(--blog-line);margin-bottom:2.5rem;padding-block:1.5rem;font-size:.8125rem}.blog-toc h2{text-transform:uppercase;letter-spacing:.1em;margin-bottom:1rem;font-family:JetBrains Mono,monospace;font-size:.6875rem}.blog-toc li{margin-block:.25rem}.blog-toc a{color:var(--blog-muted);padding-block:.375rem;display:block}.blog-toc a:hover{color:var(--blog-fg)}.blog-toc .blog-toc-subheading{padding-left:1rem}.blog-prose{color:var(--blog-fg);overflow-wrap:anywhere;font-size:1.0625rem;line-height:1.85}.blog-prose>:first-child{margin-top:0}.blog-prose p,.blog-prose ul,.blog-prose ol,.blog-prose blockquote,.blog-prose figure,.blog-prose .code-block,.blog-prose .table-scroll,.blog-prose .youtube-embed{margin-block:1.5rem}.blog-prose h2,.blog-prose h3,.blog-prose h4,.blog-prose h5,.blog-prose h6{letter-spacing:-.025em;margin-block:2.5rem 1rem;scroll-margin-top:2rem;font-weight:700;line-height:1.3}.blog-prose h2{font-size:1.875rem}.blog-prose h3{font-size:1.5rem}.blog-prose h4{font-size:1.25rem}.blog-prose h5,.blog-prose h6{font-size:1.0625rem}.blog-prose a{text-decoration:underline}.blog-prose ul{padding-left:1.5rem;list-style:outside}.blog-prose ol{padding-left:1.5rem;list-style:decimal}.blog-prose li{margin-block:.5rem;padding-left:.25rem}.blog-prose li>ul,.blog-prose li>ol{margin-block:.5rem}.blog-prose .contains-task-list{padding-left:0;list-style:none}.blog-prose input[type=checkbox]{accent-color:var(--blog-fg);margin-right:.5rem}.blog-prose blockquote{border-left:2px solid var(--blog-fg);color:var(--blog-muted);padding:.25rem 1.5rem}.blog-prose blockquote p{margin-block:.5rem}.blog-prose hr{border:0;border-top:1px solid var(--blog-line);margin-block:3rem}.blog-prose code{font-family:JetBrains Mono,monospace;font-size:.8125em}.blog-prose :not(pre)>code{background:#202427;padding:.125rem .375rem}.blog-prose .code-block{border:1px solid var(--blog-line);background:var(--blog-surface);overflow:hidden}.blog-prose .code-language{border-bottom:1px solid var(--blog-line);color:var(--blog-muted);text-transform:uppercase;letter-spacing:.08em;padding:.5rem 1.25rem;font-family:JetBrains Mono,monospace;font-size:.6875rem;display:block}.blog-prose pre{background:var(--blog-surface);tab-size:2;margin-block:1.5rem;padding:1.25rem;line-height:1.7;overflow-x:auto}.blog-prose .code-block pre{margin:0}.blog-prose pre code{min-width:max-content;font-size:.8125rem;display:block}.blog-prose .hljs-comment,.blog-prose .hljs-quote{color:#a3adb5}.blog-prose .hljs-keyword,.blog-prose .hljs-selector-tag,.blog-prose .hljs-literal{color:#c0dcef}.blog-prose .hljs-string,.blog-prose .hljs-title,.blog-prose .hljs-section{color:#c0d8c7}.blog-prose .hljs-number,.blog-prose .hljs-attr,.blog-prose .hljs-built_in{color:#e0c9a6}.blog-prose .table-scroll{border:1px solid var(--blog-line);max-width:100%;overflow-x:auto}.blog-prose table{border-collapse:collapse;width:100%;font-size:.875rem;line-height:1.6}.blog-prose th,.blog-prose td{border:1px solid var(--blog-line);text-align:left;vertical-align:top;min-width:9rem;padding:.75rem 1rem}.blog-prose th{background:#202427;font-weight:700}.blog-prose img{max-width:100%;height:auto;display:block}.blog-prose figure img{width:100%}.blog-prose figcaption{color:var(--blog-muted);padding-top:.75rem;font-size:.8125rem;line-height:1.6}.blog-prose .youtube-embed{aspect-ratio:16/9;background:var(--blog-surface);width:100%;position:relative}.blog-prose .youtube-embed iframe{aspect-ratio:16/9;border:0;width:100%;height:100%;display:block}.blog-prose .footnotes{border-top:1px solid var(--blog-line);color:var(--blog-muted);margin-top:3rem;padding-top:1.5rem;font-size:.875rem}.blog-prose [id]{scroll-margin-top:2rem}.blog-prose .sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.blog-tags{flex-wrap:wrap;gap:.5rem;margin-block:3rem;display:flex}.blog-tags li{border:1px solid var(--blog-line);color:var(--blog-muted);padding:.375rem .75rem;font-size:.75rem}.blog-author{border-top:1px solid var(--blog-line);margin-top:3rem;padding-top:2rem;scroll-margin-top:2rem}.blog-author h2{margin-block:.5rem;font-family:Blog Kanit,sans-serif;font-size:2rem;font-weight:600}.blog-author>p:not(.blog-eyebrow){color:var(--blog-muted);font-size:.9375rem}.blog-author .blog-text-link{font-size:.875rem}.blog-related{border-top:1px solid var(--blog-line);margin-top:5rem;padding-top:2rem}.blog-section-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2rem;display:flex}.blog-section-heading h2{letter-spacing:-.03em;font-family:Blog Kanit,sans-serif;font-size:2.5rem;font-weight:600}.blog-section-heading a{padding-block:.75rem;font-size:.875rem}.blog-back-link{margin-top:3rem;font-size:.875rem}.blog-back-link a{padding-block:.75rem;display:inline-block}@media (min-width:1100px){.blog-reading-layout.blog-has-toc{grid-template-columns:220px minmax(0,48rem);gap:4rem;max-width:none;display:grid}.blog-toc{align-self:start;max-height:calc(100svh - 4rem);position:sticky;top:2rem;overflow-y:auto}}@media (max-width:700px){.blog-container{width:calc(100% - 2rem)}.blog-site-header{gap:1rem;min-height:88px}.blog-wordmark{font-size:1.125rem}.blog-site-header nav{gap:1rem;font-size:.75rem}.blog-filters,.blog-card-grid{grid-template-columns:minmax(0,1fr)}.blog-filters{gap:1rem}.blog-card-grid{gap:2.5rem}.blog-footer{flex-direction:column;align-items:flex-start;gap:1rem}.blog-article-header,.blog-hero-image{margin-block:2rem}.blog-prose{font-size:1rem}.blog-prose h2{font-size:1.625rem}.blog-prose h3{font-size:1.375rem}.blog-reading-layout{margin-block:2rem}}@media (prefers-reduced-motion:reduce){.blog-shell *,.blog-shell :before,.blog-shell :after{scroll-behavior:auto;transition:none;animation:none}}
