[data-astro-cid-l6lhmie6][data-theme-toggle] [data-astro-cid-l6lhmie6][data-moon],:root[data-theme=dark] [data-astro-cid-l6lhmie6][data-theme-toggle] [data-astro-cid-l6lhmie6][data-sun]{display:none}:root[data-theme=dark] [data-astro-cid-l6lhmie6][data-theme-toggle] [data-astro-cid-l6lhmie6][data-moon]{display:block}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) [data-astro-cid-l6lhmie6][data-theme-toggle] [data-astro-cid-l6lhmie6][data-sun]{display:none}:root:not([data-theme=light]) [data-astro-cid-l6lhmie6][data-theme-toggle] [data-astro-cid-l6lhmie6][data-moon]{display:block}}:root{--paper:#fbf9f5;--paper-sunk:#f3efe6;--ink:#1b1a17;--ink-muted:#6b665c;--rule:#e2ddd1;--accent:#9a3f1f;--accent-quiet:#b8703f;--font-body:var(--font-serif);--font-meta:var(--font-sans);--measure:34rem;--gutter:clamp(1.25rem, 4vw, 3rem);--reading-scale:1;--step-body:calc(1.0625rem * var(--reading-scale));--step-meta:.75rem;--leading-prose:1.7;--transition:.18s cubic-bezier(.32, .72, 0, 1);color-scheme:light;accent-color:var(--accent)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--paper:#14130f;--paper-sunk:#1c1b16;--ink:#eae6dc;--ink-muted:#948d7e;--rule:#2c2a23;--accent:#e09a6f;--accent-quiet:#c7825a;color-scheme:dark}}:root[data-theme=dark]{--paper:#14130f;--paper-sunk:#1c1b16;--ink:#eae6dc;--ink-muted:#948d7e;--rule:#2c2a23;--accent:#e09a6f;--accent-quiet:#c7825a;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:var(--step-body);line-height:var(--leading-prose);font-optical-sizing:auto;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;transition:background-color var(--transition), color var(--transition);margin:0}::selection{background:var(--accent);color:var(--paper)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:1px}a{color:inherit;text-decoration-color:var(--accent-quiet);text-underline-offset:.18em;text-decoration-thickness:1px}a:hover{text-decoration-color:var(--accent)}img{max-width:100%;height:auto}.shell{width:min(100% - var(--gutter) * 2, var(--measure));margin-inline:auto}.shell--wide{width:min(100% - var(--gutter) * 2, 60rem)}.masthead{justify-content:space-between;align-items:baseline;gap:1rem;padding-block:clamp(1.75rem,4vw,3rem) 1.25rem;display:flex}.masthead__name{letter-spacing:.01em;font-size:1.0625rem;font-weight:500;text-decoration:none}.masthead__tools{align-items:center;gap:.375rem;display:flex}.footer{border-top:1px solid var(--rule);color:var(--ink-muted);font-family:var(--font-meta);font-size:var(--step-meta);justify-content:space-between;gap:1rem;margin-top:clamp(4rem,12vw,8rem);padding-block:1.5rem 3rem;display:flex}.meta{font-family:var(--font-meta);font-size:var(--step-meta);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);font-variant-numeric:tabular-nums;line-height:1.4}.meta--plain{letter-spacing:.01em;text-transform:none}.lede{border-bottom:1px solid var(--rule);color:var(--ink-muted);text-wrap:balance;margin:0 0 clamp(2.5rem,7vw,4.5rem);padding-bottom:clamp(2rem,6vw,3.5rem);font-size:1.25rem;font-style:italic;line-height:1.5}.index{margin:0;padding:0;list-style:none}.index__item+.index__item{border-top:1px solid var(--rule);margin-top:clamp(2rem,5vw,3rem);padding-top:clamp(2rem,5vw,3rem)}.index__link{text-decoration:none;display:block}.index__title{letter-spacing:-.015em;text-wrap:balance;transition:color var(--transition);margin:.5rem 0 0;font-size:clamp(1.6rem,1.2rem + 1.6vw,2.15rem);font-weight:400;line-height:1.12}.index__link:hover .index__title{color:var(--accent)}.index__excerpt{color:var(--ink-muted);text-wrap:pretty;margin:.6rem 0 0;line-height:1.55}.index__cover{aspect-ratio:16/9;object-fit:cover;background:var(--paper-sunk);filter:saturate(.92);width:100%;margin-bottom:1rem}.empty{color:var(--ink-muted);padding-block:4rem;font-style:italic}.article__header{padding-block:clamp(1rem,3vw,2rem) clamp(2rem,6vw,3.5rem)}.article__title{letter-spacing:-.022em;text-wrap:balance;margin:.75rem 0 0;font-size:clamp(2.1rem,1.4rem + 3.2vw,3.4rem);font-weight:400;line-height:1.05}.article__cover{width:100%;margin-bottom:clamp(2rem,5vw,3rem)}.prose{font-size:var(--step-body);hanging-punctuation:first last}.prose :where(h2,h3,h4,p,ul,ol,li,blockquote,figure,pre,hr,table){margin:0}.prose>*+*{margin-top:1.4em}.prose p{text-wrap:pretty}.prose h2,.prose h3{letter-spacing:-.01em;scroll-margin-top:2rem;font-weight:500;line-height:1.2}.prose>h2,.prose>h3{margin-top:2.2em}.prose>h2+*,.prose>h3+*{margin-top:.6em}.prose h2{font-size:1.5em}.prose h3{font-size:1.2em}.prose blockquote{border-left:2px solid var(--accent);color:var(--ink-muted);margin:2em 0;padding-left:1.25em;font-style:italic}.prose blockquote p+p{margin-top:1em}.prose>p:has(>img){margin-block:2.4em}.prose img{background:var(--paper-sunk);width:100%;display:block}.prose figcaption,.prose img+em{font-family:var(--font-meta);color:var(--ink-muted);font-size:.8em}.prose ul,.prose ol{padding-left:1.3em}.prose li>ul,.prose li>ol,.prose li+li{margin-top:.5em}.prose li::marker{color:var(--ink-muted)}.prose hr{border:0;border-top:1px solid var(--rule);margin-block:3em}.prose code{background:var(--paper-sunk);padding:.15em .35em;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.85em}.prose pre{background:var(--paper-sunk);margin-block:1.8em;padding:1rem 1.1rem;font-size:.85em;line-height:1.6;overflow-x:auto}.prose pre code{font-size:inherit;background:0 0;padding:0}.prose table{border-collapse:collapse;width:100%;font-size:.9em}.prose th,.prose td{border-bottom:1px solid var(--rule);text-align:left;padding:.5em .6em}.prose th{font-family:var(--font-meta);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-muted);font-size:.85em}.article__footer{border-top:1px solid var(--rule);margin-top:clamp(3rem,8vw,5rem);padding-top:1.5rem}.control{min-width:2rem;height:2rem;color:var(--ink-muted);font-family:var(--font-meta);font-size:var(--step-meta);cursor:pointer;transition:color var(--transition), border-color var(--transition);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;padding:0 .5rem;line-height:1;display:inline-flex}.control:hover,.control[aria-pressed=true]{color:var(--ink);border-color:var(--rule)}.control svg{width:1rem;height:1rem}.type-scale{border:1px solid var(--rule);align-items:center;display:inline-flex}.type-scale .control{border:0}.type-scale .control+.control{border-left:1px solid var(--rule)}.type-scale__small{font-size:.7rem}.type-scale__large{font-size:1rem}.progress{background:var(--accent);transform-origin:0;height:2px;transform:scaleX(var(--progress,0));z-index:10;position:fixed;inset-block-start:0;inset-inline:0}@supports (animation-timeline:scroll()){.progress{--progress:0;animation:linear progress-grow scroll(root);transform:scaleX(0)}@keyframes progress-grow{to{transform:scaleX(1)}}}.field{margin-bottom:1.25rem;display:block}.field__label{font-family:var(--font-meta);font-size:var(--step-meta);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);margin-bottom:.4rem;display:block}.input,.textarea{border:1px solid var(--rule);background:var(--paper);width:100%;color:var(--ink);padding:.6rem .7rem;font-family:inherit;font-size:1rem;line-height:1.5}.input:focus,.textarea:focus{outline:2px solid var(--accent);outline-offset:-1px;border-color:#0000}.button{border:1px solid var(--ink);background:var(--ink);min-height:2.25rem;color:var(--paper);font-family:var(--font-meta);letter-spacing:.02em;white-space:nowrap;cursor:pointer;transition:background-color var(--transition), border-color var(--transition), color var(--transition);justify-content:center;align-items:center;gap:.4rem;padding:0 1rem;font-size:.8125rem;line-height:1;text-decoration:none;display:inline-flex}.button:hover{background:color-mix(in oklab, var(--ink) 86%, var(--paper));border-color:color-mix(in oklab, var(--ink) 86%, var(--paper))}.button--quiet{color:var(--ink);border-color:var(--rule);background:0 0}.button--quiet:hover{border-color:var(--ink);background:0 0}.button--danger{border-color:var(--rule);color:var(--ink-muted);background:0 0}.button--danger:hover{border-color:var(--accent);color:var(--accent);background:0 0}.notice{border-left:2px solid var(--accent);background:var(--paper-sunk);font-family:var(--font-meta);margin-bottom:1.25rem;padding:.7rem .9rem;font-size:.8125rem;line-height:1.5}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
