@font-face{font-family:"source serif 4";font-weight:400;font-display:swap;src:url(/fonts/source-serif-4-latin-400-normal.woff2)format("woff2")}@font-face{font-family:"source serif 4";font-weight:600;font-display:swap;src:url(/fonts/source-serif-4-latin-600-normal.woff2)format("woff2")}@font-face{font-family:dm sans;font-weight:400;font-display:swap;src:url(/fonts/dm-sans-latin-400-normal.woff2)format("woff2")}@font-face{font-family:dm sans;font-weight:500;font-display:swap;src:url(/fonts/dm-sans-latin-500-normal.woff2)format("woff2")}:root{--ground:#E9E4DC;--ink:#1E1E1E;--muted:#5C5750;--muted-2:#4F4A43;--rule:#CFC7BB;--block:#F6D3D6;--serif:"Source Serif 4", Georgia, serif;--sans:"DM Sans", system-ui, sans-serif}*,*::before,*::after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--ground);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.6}a{color:var(--ink)}a:hover{color:var(--muted)}:focus-visible{outline:2px solid var(--ink);outline-offset:3px;border-radius:4px}img{max-width:100%;height:auto}.skip{position:absolute;left:-9999px;top:8px;padding:8px 14px;background:var(--ink);color:var(--ground)}.skip:focus{left:8px;color:var(--ground)}.wrap{max-width:1120px;margin:0 auto;padding:0 24px}.top{padding:28px 0;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px}.mark{font-family:var(--serif);font-weight:600;font-size:22px;text-decoration:none;padding:4px 0}.top nav{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.nav-link{font-size:15px;text-decoration:none;padding:10px 14px}.pill{display:inline-block;font-size:15px;text-decoration:none;padding:10px 18px;border:1px solid var(--ink);border-radius:999px}.pill-dark{background:var(--ink);color:var(--ground);border-color:var(--ink);padding:12px 20px;font-size:17px;font-weight:500;overflow-wrap:anywhere}.pill-dark:hover{color:var(--block)}.hero{padding:96px 0 72px}h1,h2,h3{font-family:var(--serif)}.hero h1{margin:0;max-width:900px;font-weight:400;font-size:clamp(40px,5.8vw,76px);line-height:1.04;letter-spacing:-.025em}.hero-row{margin-top:56px;display:flex;flex-wrap:wrap;gap:24px}.block{flex:1 1 380px;min-width:0;background:var(--block);border-radius:18px;padding:32px}.block p{margin:0 0 20px;font-size:19px}.steps{flex:1 1 300px;min-width:0;display:flex;flex-direction:column;justify-content:flex-end;gap:14px;color:var(--muted-2);font-size:16px}.steps p{margin:0}.steps strong{color:var(--ink);font-weight:500}.posts{padding:0 0 80px}.page-list{padding-top:48px}.posts-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:20px}.posts-head h1,.posts-head h2,.page h1{margin:0;font-weight:600;font-size:26px}.posts-head a{font-size:15px}.post-list{list-style:none;margin:0;padding:0;border-bottom:1px solid var(--rule)}.post-list a{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 24px;padding:18px 0;border-top:1px solid var(--rule);text-decoration:none}.post-list .t{font-family:var(--serif);font-size:21px;min-width:0;overflow-wrap:anywhere}.post-list time,.byline{font-size:14px;color:var(--muted)}.page{max-width:680px;padding:48px 0 80px;overflow-wrap:break-word}.page.post h1{font-weight:400;font-size:clamp(32px,4.4vw,44px);line-height:1.12;letter-spacing:-.015em}.page h2{font-weight:600;font-size:21px;margin:40px 0 8px}.page table{width:100%;border-collapse:collapse;font-size:15px;display:block;overflow-x:auto}.page th,.page td{text-align:left;vertical-align:top;padding:10px 12px 10px 0;border-top:1px solid var(--rule)}.page pre{background:#f4f0ea;padding:16px;border-radius:8px;overflow-x:auto;font-size:14px}.page code{font-size:.92em}.byline{margin:8px 0 32px}.foot{padding:24px 0 40px;border-top:1px solid var(--rule);display:flex;flex-wrap:wrap;gap:8px 28px;font-size:14px;color:var(--muted)}.foot a{color:var(--muted);padding:2px 0}.page dl{display:grid;grid-template-columns:max-content 1fr;gap:10px 24px;margin:24px 0}.page dt{color:var(--muted)}.page dd{margin:0}