:root{--color-bg:#fff;--color-text:#111;--color-link:currentColor;--content-max-width:645px;--font-sans:"Manrope",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-mono:"Fira Code",Menlo,Monaco,Consolas,monospace}.site-header{border-bottom:1px solid var(--color-border)}.site-header__inner{display:flex;flex-direction:column;gap:1.25rem;position:relative;width:min(100%,var(--content-wide-width))}.site-brand{display:block;flex-shrink:0;min-width:0}.site-title{color:inherit;font-size:1.375rem;font-weight:700;letter-spacing:-.5px;line-height:1.125;text-decoration:none}.site-title:focus,.site-title:hover{text-decoration:underline}.site-tagline{color:var(--color-text-subtle);font-size:var(--font-size-sm,.9rem);margin-top:.4rem;max-width:40ch}.site-nav{align-items:center;display:flex;justify-content:flex-start;width:100%}.site-nav__list{align-items:center;display:flex;flex-wrap:wrap;font-size:var(--font-size-md,1rem);gap:.65rem 1rem;list-style:none;margin:0;padding:0}.site-nav__link{border-radius:6px;color:inherit;font-weight:400;padding:.15rem .35rem;text-decoration:none;transition:background-color .2s ease,color .2s ease}.site-nav__link:focus,.site-nav__link:hover{background:rgba(0,0,0,.04);text-decoration:none}.site-nav__checkbox{border:0;height:1px;margin:-1px;padding:0;position:absolute;width:1px;clip:rect(0 0 0 0);overflow:hidden;white-space:nowrap}.site-nav__toggle{align-items:center;background:var(--color-bg);border:1px solid var(--color-border);border-radius:6px;cursor:pointer;display:none;font-size:var(--font-size-md,1rem);font-weight:500;gap:.4rem;min-height:2.35rem;padding:.35rem .65rem}.site-nav__checkbox:focus-visible+.site-nav__toggle{outline:2px solid currentColor;outline-offset:3px}.site-nav__icon{display:none;flex-direction:column;gap:5px}.site-nav__icon-bar{background:currentColor;border-radius:999px;display:block;height:2px;width:20px}.site-main__inner{margin:0 auto var(--space-4,40px);width:min(100%,var(--content-max-width))}.site-footer{border-top:1px solid var(--color-border);padding-top:var(--space-3,30px)}.site-footer__inner{color:var(--color-text-subtle);display:flex;flex-wrap:wrap;font-size:var(--font-size-sm,.875rem);gap:.5rem 1.25rem;justify-content:space-between;margin:0 auto;width:min(100%,var(--content-wide-width))}.site-footer a{color:inherit}@media (max-width:768px){.site-header__inner{align-items:flex-start;display:flex;flex-direction:row;flex-wrap:wrap;gap:var(--space-1,10px);width:min(100%,var(--content-max-width))}.site-brand{flex:0 1 auto}.site-nav{align-items:flex-start;display:flex;flex:1 1 auto;flex-direction:column;gap:var(--space-1,10px)}.site-nav__checkbox{order:1}.site-nav__toggle{align-self:flex-start;display:inline-flex;order:2}.site-nav__list{align-items:stretch;background:var(--color-bg);border:1px solid var(--color-border);border-radius:4px;box-shadow:none;display:none;flex-direction:column;gap:0;list-style:none;margin:0;max-height:0;opacity:0;order:3;overflow:hidden;padding:0;pointer-events:none;transform:translateY(-6px);transition:opacity .14s ease,transform .14s ease,max-height .16s ease,margin-top .14s ease;visibility:hidden;width:100%}.site-nav__item{width:100%}.site-nav__item+.site-nav__item{border-top:1px solid var(--color-border)}.site-nav__link{border-radius:0;display:block;font-weight:500;padding:1.05rem var(--global-padding-inline,var(--space-3));width:100%}.site-nav__link:focus,.site-nav__link:hover{background:rgba(0,0,0,.03);text-decoration:underline}.site-nav__checkbox:checked~.site-nav__list{display:flex;margin-top:var(--space-1,10px);max-height:500px;opacity:1;pointer-events:auto;transform:translateY(0);visibility:visible}}@media (min-width:769px){.site-header__inner{align-items:center;flex-direction:row}.site-nav{flex:1 1 auto;justify-content:flex-end}.site-nav__list{align-items:center;background:transparent;border:0;box-shadow:none;display:flex;flex-direction:row;gap:.65rem 1rem;padding:0;position:static}}.page-header,.post-header{display:flex;flex-direction:column;gap:.5rem;margin-bottom:var(--space-3,30px)}.page-title,.post-title{font-size:var(--font-size-xl);font-weight:400;letter-spacing:-.02em;line-height:1.15}.page-meta,.post-meta{color:var(--color-text-subtle);font-size:var(--font-size-sm);margin:0}.page-content{display:block;font-size:var(--font-size-md,1rem)}.post-content{display:block;font-size:var(--font-size-md,1rem);margin-bottom:var(--space-2,20px)}.post-listing-link{align-items:center;color:var(--color-text);display:inline-flex;font-size:var(--font-size-sm);gap:.35em;margin-bottom:var(--space-2,20px);margin-top:var(--space-1,10px);text-decoration:none}.post-listing-link:focus,.post-listing-link:hover{text-decoration:underline}.page-content h2,.post-content h2{font-size:var(--font-size-lg);margin-top:var(--space-2,20px)}.page-content h3,.post-content h3{font-size:var(--font-size-md);margin-top:var(--space-2,20px)}.page-content p,.post-content p{line-height:var(--line-height-base,1.4);margin:0 0 var(--space-2,20px)}.page-content p:last-child,.post-content p:last-child{margin-bottom:0}.page-content figure,.post-content figure{margin:0}.page-content figcaption,.post-content figcaption{color:var(--color-text-subtle);font-size:var(--font-size-sm)}.blog-header{display:flex;flex-direction:column;gap:.75rem;margin-bottom:var(--space-3,30px)}.blog-title{font-size:var(--font-size-xl);font-weight:600;letter-spacing:-.02em;margin:0}.blog-description{color:var(--color-text);display:block}.post-list{display:flex;flex-direction:column;gap:var(--space-3,30px);list-style:none;margin:var(--space-3,30px) 0 0;padding:0}.post-list-item{margin:0;padding:0}.post-item-title{font-size:var(--font-size-md);font-weight:600;letter-spacing:-.02em;margin:0 0 var(--space-1,10px)}.post-item-link{color:inherit;text-decoration:none}.post-item-link:focus,.post-item-link:hover{text-decoration:underline}.post-item-summary{color:var(--color-text);font-size:var(--font-size-md);margin:0 0 var(--space-1,10px)}.post-item-meta{color:var(--color-text-subtle);font-size:var(--font-size-sm);margin:0}.post-list-empty{color:var(--color-text-subtle,#6b7280);font-size:var(--font-size-md,1rem);font-style:italic}