:root{--paper: #fdfbf6;--paper-2: #f7f3e9;--paper-3: #efe9da;--ink: #23221c;--ink-2: #4f4c43;--ink-3: #8a8478;--line: #e3ddcc;--line-2: #d3cbb4;--grass: #3a7d44;--grass-d: #2b5f33;--grass-w: #eaf1e6;--clay: #b4552d;--serif: Georgia, "Iowan Old Style", "Palatino Linotype", "Book Antiqua", "Songti SC", serif;--sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "PingFang SC", "Microsoft YaHei", sans-serif;--mono: ui-monospace, "SFMono-Regular", Menlo, Consolas, "Liberation Mono", monospace;--wrap: 1120px;--measure: 34em;--r: 3px;--shadow-s: 0 1px 2px rgba(35, 34, 28, .05);--shadow-m: 0 12px 32px -18px rgba(35, 34, 28, .35)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;background-color:var(--paper);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.72;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;opacity:.35;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)' opacity='0.055'/%3E%3C/svg%3E")}h1,h2,h3,h4{font-family:var(--serif);font-weight:400;line-height:1.22;letter-spacing:-.012em;margin:0 0 .5em;color:var(--ink);text-wrap:balance}h1{font-size:clamp(2.05rem,1.35rem + 2.6vw,3.35rem)}h2{font-size:clamp(1.5rem,1.15rem + 1.3vw,2.05rem)}h3{font-size:1.22rem;letter-spacing:-.005em}h4{font-size:1.02rem;font-family:var(--sans);font-weight:650;letter-spacing:0}p{margin:0 0 1.15em}a{color:var(--ink);text-decoration-color:var(--line-2);text-underline-offset:.22em;text-decoration-thickness:1px;transition:color .16s ease,text-decoration-color .16s ease}a:hover{color:var(--grass-d);text-decoration-color:var(--grass)}strong{font-weight:650}em{font-style:italic}hr{border:0;border-top:1px solid var(--line);margin:2.6rem 0}img{max-width:100%;height:auto;display:block}ul,ol{margin:0 0 1.2em;padding-left:1.15em}li{margin-bottom:.45em}li::marker{color:var(--ink-3)}blockquote{margin:1.8rem 0;padding:.1rem 0 .1rem 1.4rem;border-left:2px solid var(--grass);font-family:var(--serif);font-size:1.12rem;color:var(--ink-2)}blockquote p:last-child{margin-bottom:0}code{font-family:var(--mono);font-size:.88em;background:var(--paper-3);padding:.12em .38em;border-radius:2px}.wrap{width:100%;max-width:var(--wrap);margin-inline:auto;padding-inline:clamp(1.15rem,5vw,2.5rem);position:relative;z-index:1}.measure{max-width:var(--measure)}.eyebrow{font-family:var(--mono);font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-3);margin:0 0 1.1rem}.eyebrow--grass{color:var(--grass)}.btn{display:inline-flex;align-items:center;gap:.5em;font-family:var(--sans);font-size:.95rem;font-weight:600;line-height:1;padding:.92em 1.5em;border-radius:var(--r);border:1px solid var(--ink);background:var(--ink);color:var(--paper);text-decoration:none;cursor:pointer;transition:transform .14s ease,background .16s ease,border-color .16s ease}.btn:hover{background:var(--grass-d);border-color:var(--grass-d);color:#fff;transform:translateY(-1px)}.btn--ghost{background:transparent;color:var(--ink);border-color:var(--line-2)}.btn--ghost:hover{background:transparent;border-color:var(--grass);color:var(--grass-d)}.btn--sm{font-size:.875rem;padding:.72em 1.1em}.btn--block{display:flex;justify-content:center;width:100%}.card{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:1.6rem;box-shadow:var(--shadow-s)}.tag{display:inline-block;font-family:var(--mono);font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;padding:.28em .55em;border:1px solid var(--line-2);border-radius:2px;color:var(--ink-3);background:var(--paper)}.tag--grass{color:var(--grass-d);border-color:#c6dbc0;background:var(--grass-w)}:focus-visible{outline:2px solid var(--grass);outline-offset:3px;border-radius:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.skip{position:absolute;left:-9999px;top:0;background:var(--ink);color:var(--paper);padding:.7em 1em;z-index:100}.skip:focus{left:1rem;top:1rem}.prose{font-size:1.045rem;line-height:1.78}.prose>p:first-of-type{font-size:1.12rem;color:var(--ink-2)}.prose h2{margin-top:2.6rem;padding-top:0}.prose h3{margin-top:2rem}.prose ul,.prose ol{padding-left:1.3em}.prose table{width:100%;border-collapse:collapse;font-size:.94rem;margin:1.6rem 0}.prose th,.prose td{text-align:left;padding:.62em .7em;border-bottom:1px solid var(--line);vertical-align:top}.prose th{font-family:var(--mono);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);font-weight:500;border-bottom:1px solid var(--line-2)}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}.hdr[data-astro-cid-3ef6ksr2]{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--paper) 88%,transparent);backdrop-filter:saturate(1.1) blur(8px);border-bottom:1px solid var(--line)}.hdr__in[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding-block:.78rem}.brand[data-astro-cid-3ef6ksr2]{display:inline-flex;align-items:center;gap:.62rem;text-decoration:none;color:var(--ink)}.brand__mark[data-astro-cid-3ef6ksr2]{color:var(--grass);flex:none}.brand__txt[data-astro-cid-3ef6ksr2]{display:flex;flex-direction:column;line-height:1.15}.brand__name[data-astro-cid-3ef6ksr2]{font-family:var(--serif);font-size:1.12rem;letter-spacing:.015em}.brand__sub[data-astro-cid-3ef6ksr2]{font-family:var(--mono);font-size:.58rem;letter-spacing:.17em;text-transform:uppercase;color:var(--ink-3);margin-top:2px}.nav[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;gap:clamp(.7rem,2.2vw,1.7rem)}.nav__link[data-astro-cid-3ef6ksr2]{font-size:.9rem;text-decoration:none;color:var(--ink-2);padding-block:.2rem;border-bottom:1px solid transparent}.nav__link[data-astro-cid-3ef6ksr2]:hover{color:var(--ink);border-bottom-color:var(--line-2)}.nav__link[data-astro-cid-3ef6ksr2].is-active{color:var(--ink);border-bottom-color:var(--grass)}.nav__store[data-astro-cid-3ef6ksr2]{font-family:var(--mono);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;padding:.45em .75em;border:1px solid var(--line-2);border-radius:2px;color:var(--ink-2)}.nav__store[data-astro-cid-3ef6ksr2]:hover{border-color:var(--grass);color:var(--grass-d)}@media(max-width:560px){.brand__sub[data-astro-cid-3ef6ksr2]{display:none}.nav[data-astro-cid-3ef6ksr2]{gap:.9rem}.nav__link[data-astro-cid-3ef6ksr2]{font-size:.84rem}}.ftr[data-astro-cid-sz7xmlte]{margin-top:6rem;border-top:1px solid var(--line);background:var(--paper-2);padding-block:3.2rem 1.6rem}.ftr__grid[data-astro-cid-sz7xmlte]{display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr;gap:2rem}.ftr__brand[data-astro-cid-sz7xmlte]{font-family:var(--serif);font-size:1.25rem;margin:0 0 .5rem}.ftr__note[data-astro-cid-sz7xmlte]{font-size:.9rem;color:var(--ink-2);max-width:30ch;line-height:1.65;margin:0}.ftr__h[data-astro-cid-sz7xmlte]{font-family:var(--mono);font-size:.64rem;letter-spacing:.17em;text-transform:uppercase;color:var(--ink-3);margin:0 0 .7rem}.ftr__list[data-astro-cid-sz7xmlte]{list-style:none;margin:0;padding:0;font-size:.9rem}.ftr__list[data-astro-cid-sz7xmlte] li[data-astro-cid-sz7xmlte]{margin-bottom:.35rem}.ftr__list[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{color:var(--ink-2);text-decoration:none}.ftr__list[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:var(--grass-d);text-decoration:underline;text-decoration-color:var(--grass)}.ftr__base[data-astro-cid-sz7xmlte]{margin-top:2.8rem;padding-top:1.1rem;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-family:var(--mono);font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}@media(max-width:780px){.ftr__grid[data-astro-cid-sz7xmlte]{grid-template-columns:1fr 1fr}}@media(max-width:480px){.ftr__grid[data-astro-cid-sz7xmlte]{grid-template-columns:1fr}}
