.blog-page .site-head{background:var(--paper)}.blog-page .cursor-dot{display:none}.blog-page a:focus-visible,.blog-section a:focus-visible{outline:2px solid var(--vermilion);outline-offset:5px}.blog-page .site-nav a[aria-current=page]{color:var(--vermilion)}.blog-index{width:100%;padding-top:clamp(140px,14vw,210px);padding-bottom:clamp(90px,12vw,170px)}.blog-index-head{max-width:1000px;margin-bottom:clamp(64px,8vw,110px)}.blog-index h1{margin-top:25px;font-size:clamp(48px,6.5vw,92px);line-height:1.04}.blog-intro{max-width:52ch;color:var(--ink-70);text-wrap:pretty;margin-top:28px;font-size:clamp(18px,1.6vw,23px);line-height:1.6}.blog-posts{max-width:1200px}.blog-row{border-top:1px solid var(--ink-15);grid-template-columns:minmax(160px,.7fr) minmax(0,2fr);gap:clamp(28px,5vw,80px);padding:36px 0 48px;display:grid}.blog-row-meta{color:var(--ink-70);flex-direction:column;gap:12px;font-size:13px;display:flex}.blog-row-meta>span{color:var(--vermilion-deep);font-weight:600}.blog-row h2{max-width:24ch;font-size:clamp(30px,3.2vw,48px);line-height:1.12}.blog-row h2 a{transition:color .18s}.blog-row h2 a:hover{color:var(--vermilion)}.blog-row p{max-width:62ch;color:var(--ink-70);text-wrap:pretty;margin-top:20px;font-size:17px;line-height:1.7}.blog-text-link{color:var(--vermilion-deep);flex-wrap:wrap;align-items:center;gap:10px;margin-top:26px;font-size:14px;font-weight:600;display:inline-flex}.blog-text-link:hover{text-underline-offset:4px;text-decoration:underline}.blog-read-time{color:var(--ink-70);margin-left:10px;font-weight:400}.blog-article-head{max-width:1400px;padding-top:clamp(115px,10vw,155px);padding-bottom:45px}.blog-back{color:var(--ink-70);gap:12px;margin-bottom:clamp(38px,5vw,66px);font-size:13px;display:inline-flex}.blog-back:hover{color:var(--vermilion)}.blog-article-head .mono-tag{color:var(--vermilion-deep)}.blog-article-head h1{max-width:18ch;margin-top:23px;font-size:clamp(42px,6vw,86px);line-height:1.06}.blog-deck{max-width:62ch;color:var(--ink-70);text-wrap:pretty;margin-top:30px;font-size:clamp(18px,1.7vw,24px);line-height:1.6}.blog-byline{border-top:1px solid var(--ink-15);border-bottom:1px solid var(--ink-15);color:var(--ink-70);flex-wrap:wrap;justify-content:space-between;gap:14px 35px;margin-top:40px;padding-block:26px;font-size:12px;display:flex}.blog-article-layout{grid-template-columns:minmax(190px,.75fr) minmax(0,2fr);gap:clamp(36px,6vw,100px);max-width:1400px;padding-bottom:clamp(60px,7vw,100px);display:grid}.blog-sidebar nav{max-width:250px;padding-top:8px;position:sticky;top:112px}.blog-sidebar-title{margin-bottom:22px;font-size:13px;font-weight:600}.blog-sidebar ol{flex-direction:column;gap:15px;list-style:none;display:flex}.blog-sidebar a{color:var(--ink-70);font-size:13px;line-height:1.55}.blog-sidebar a:hover{color:var(--vermilion)}.blog-prose{overflow-wrap:break-word;text-wrap:pretty;min-width:0;max-width:68ch;font-size:clamp(17px,1.35vw,19px);line-height:1.85}.blog-prose>*+*{margin-top:1.35em}.blog-prose>p:first-child{font-size:1.13em;line-height:1.7}.blog-prose h2,.blog-prose h3,.blog-prose h4{scroll-margin-top:112px}.blog-prose h2{margin-top:1.8em;margin-bottom:.65em;font-size:clamp(29px,3vw,40px);line-height:1.18}.blog-prose h3{font-family:var(--sans);margin-top:1.7em;font-size:1.15em;font-weight:600;line-height:1.45}.blog-prose a{color:var(--vermilion-deep);text-underline-offset:4px;text-decoration:underline;text-decoration-thickness:1px}.blog-prose a:hover{text-decoration-thickness:2px}.blog-prose ul,.blog-prose ol{padding-left:1.4em}.blog-prose li+li{margin-top:.55em}.blog-prose li::marker{color:var(--vermilion-deep)}.blog-prose blockquote{border-block:1px solid var(--ink-15);color:var(--vermilion-deep);font-family:var(--serif);padding-block:1.2em;font-size:1.3em;line-height:1.5}.blog-prose code{font-family:var(--mono);background:var(--ink-08);border-radius:3px;padding:.15em .35em;font-size:.8em}.blog-prose pre{text-wrap:initial;border-radius:4px;padding:24px;overflow-x:auto}.blog-prose pre code{background:0 0;padding:0}.blog-prose table{border-collapse:collapse;text-wrap:initial;max-width:100%;font-size:.9em;display:block;overflow-x:auto}.blog-prose th,.blog-prose td{border:1px solid var(--ink-15);text-align:left;padding:12px 16px}.blog-prose img{border-radius:4px;max-width:100%;height:auto}.blog-prose hr{border:0;border-top:1px solid var(--ink-15);margin-block:2.5em}.blog-project{border-top:1px solid var(--ink-15);justify-content:space-between;align-items:center;gap:40px;max-width:1400px;margin-bottom:50px;padding-block:clamp(38px,5vw,64px);display:flex}.blog-project h2{max-width:23ch;margin-top:18px;font-size:clamp(32px,3.6vw,52px);line-height:1.12}.blog-project p:not(.mono-tag){max-width:54ch;color:var(--ink-70);margin-top:18px;font-size:16px}.blog-section{padding-block:clamp(70px,8vw,120px)}.blog-section-head{justify-content:space-between;align-items:baseline;gap:24px;margin-bottom:40px;display:flex}.blog-section-head h2{font-size:clamp(40px,4.7vw,68px);line-height:1.1}.blog-section-head>a{color:var(--vermilion-deep);flex-shrink:0;font-size:14px}.blog-section-head>a:hover{text-underline-offset:4px;text-decoration:underline}.blog-section .blog-row{padding-bottom:0}@media (width<=760px){.blog-index{padding-top:135px}.blog-row{grid-template-columns:minmax(0,1fr);gap:24px;padding-top:25px}.blog-row-meta{flex-flow:wrap;gap:8px 20px;font-size:12px}.blog-row h2{max-width:26ch}.blog-article-head{padding-top:115px;padding-bottom:30px}.blog-article-head h1{font-size:clamp(39px,8vw,60px)}.blog-byline{margin-top:30px;padding-block:20px}.blog-article-layout{grid-template-columns:minmax(0,1fr);gap:32px}.blog-sidebar nav{border-bottom:1px solid var(--ink-15);max-width:none;padding-bottom:26px;position:static}.blog-sidebar-title{margin-bottom:14px}.blog-sidebar ol{gap:9px}.blog-project{flex-direction:column;align-items:flex-start;gap:26px}.blog-section-head{flex-direction:column;align-items:flex-start;gap:16px}}@media (prefers-reduced-motion:reduce){.blog-row h2 a{transition:none}}
