*,:before,:after,::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border:0 solid #e5e7eb}:before,:after{--tw-content:""}html,:host{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}body{line-height:inherit;margin:0}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:#0000;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{margin:0;padding:0;list-style:none}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.\!container{width:100%!important}.container{width:100%}@media (min-width:640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media (min-width:768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media (min-width:1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media (min-width:1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media (min-width:1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.pointer-events-none{pointer-events:none}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.bottom-0{bottom:0}.bottom-6{bottom:1.5rem}.bottom-8{bottom:2rem}.left-0{left:0}.left-1\/2{left:50%}.left-12{left:3rem}.left-6{left:1.5rem}.left-8{left:2rem}.right-0{right:0}.right-6{right:1.5rem}.right-8{right:2rem}.top-0{top:0}.top-1\/2{top:50%}.top-full{top:100%}.z-10{z-index:10}.z-40{z-index:40}.z-50{z-index:50}.z-\[100\]{z-index:100}.mx-4{margin-left:1rem;margin-right:1rem}.mx-auto{margin-left:auto;margin-right:auto}.mb-1{margin-bottom:.25rem}.mb-12{margin-bottom:3rem}.mb-16{margin-bottom:4rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-8{margin-bottom:2rem}.ml-8{margin-left:2rem}.mr-2{margin-right:.5rem}.mr-4{margin-right:1rem}.mt-16{margin-top:4rem}.mt-20{margin-top:5rem}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.h-1{height:.25rem}.h-14{height:3.5rem}.h-32{height:8rem}.h-6{height:1.5rem}.h-full{height:100%}.min-h-screen{min-height:100vh}.w-0\.5{width:.125rem}.w-1\.5{width:.375rem}.w-14{width:3.5rem}.w-24{width:6rem}.w-32{width:8rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-full{width:100%}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.-translate-x-1\/2{--tw-translate-x:-50%;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-full{--tw-translate-x:-100%;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y:-50%;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-0{--tw-translate-x:0px;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-100{--tw-scale-x:1;--tw-scale-y:1;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-105{--tw-scale-x:1.05;--tw-scale-y:1.05;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-110{--tw-scale-x:1.1;--tw-scale-y:1.1;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-125{--tw-scale-x:1.25;--tw-scale-y:1.25;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-95{--tw-scale-x:.95;--tw-scale-y:.95;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-pointer{cursor:pointer}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.items-baseline{align-items:baseline}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-x-12{column-gap:3rem}.gap-y-8{row-gap:2rem}.space-y-12>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(3rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(3rem * var(--tw-space-y-reverse))}.space-y-16>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(4rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(4rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-7>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.75rem * var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.whitespace-nowrap{white-space:nowrap}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.border-2{border-width:2px}.border-l-2{border-left-width:2px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-\[var\(--accent\)\]{border-color:var(--accent)}.border-\[var\(--border\)\]{border-color:var(--border)}.border-\[var\(--foreground\)\]{border-color:var(--foreground)}.bg-\[var\(--accent\)\]{background-color:var(--accent)}.bg-\[var\(--background\)\]{background-color:var(--background)}.bg-\[var\(--border\)\]{background-color:var(--border)}.bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity,1))}.bg-transparent{background-color:#0000}.bg-opacity-10{--tw-bg-opacity:.1}.px-2{padding-left:.5rem;padding-right:.5rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-24{padding-top:6rem;padding-bottom:6rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.pl-12{padding-left:3rem}.pl-6{padding-left:1.5rem}.pt-8{padding-top:2rem}.text-center{text-align:center}.font-\[\'Lora\'\]{font-family:Lora}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.italic{font-style:italic}.leading-relaxed{line-height:1.625}.tracking-wider{letter-spacing:.05em}.text-\[var\(--accent\)\]{color:var(--accent)}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.underline{text-decoration-line:underline}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-20{opacity:.2}.opacity-30{opacity:.3}.opacity-40{opacity:.4}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-80{opacity:.8}.opacity-90{opacity:.9}.shadow-2xl{--tw-shadow:0 25px 50px -12px #00000040;--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow,0 0 #0000)}.blur{--tw-blur:blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.grayscale{--tw-grayscale:grayscale(100%);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter,backdrop-filter;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-all{transition-property:all;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-opacity{transition-property:opacity;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-transform{transition-property:transform;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}:root{--bg:#f4f1ea;--bg-fold:#ebe7dc;--ink:#1a1a1a;--ink-2:#4a4842;--ink-3:#8a877e;--ink-4:#c8c4b8;--accent:#7b241c;--accent-2:#1e3a5f;--hl:#f6e8b0;--f-serif:"Source Serif 4", "Newsreader", Charter, Georgia, serif;--f-sans:"Inter Tight", system-ui, -apple-system, sans-serif;--f-mono:"JetBrains Mono", "IBM Plex Mono", ui-monospace, Menlo, monospace;--f-display:var(--f-serif);--f-body:var(--f-serif);--f-meta:var(--f-mono);--col:640px;--section-gap:6.5rem;--para-gap:1.1rem;--t-meta:11px;--t-body:17.5px;--t-lead:20px;--t-h2:22px;--t-display:clamp(34px, 5.8vw, 56px);--hair:1px solid var(--ink-4);--background:var(--bg);--foreground:var(--ink);--border:var(--ink-4);--burgundy:var(--accent);--vellum:var(--bg);--off-black:var(--ink);--oxblood:var(--accent);--heading-font:var(--f-serif);--body-font:var(--f-serif);--mono-font:var(--f-mono)}[data-surface=paper]{--bg:#f4f1ea;--bg-fold:#ebe7dc;--ink:#1a1a1a;--ink-2:#4a4842;--ink-3:#8a877e;--ink-4:#c8c4b8;--background:#f4f1ea;--foreground:#1a1a1a;--border:#c8c4b8}[data-surface=neutral]{--bg:#fafaf8;--bg-fold:#f1f1ee;--ink:#111;--ink-2:#444;--ink-3:#888;--ink-4:#dcdcd6;--background:#fafaf8;--foreground:#111;--border:#dcdcd6}[data-surface=cool]{--bg:#f6f7f8;--bg-fold:#ebedf0;--ink:#0e1116;--ink-2:#3b424b;--ink-3:#7a828c;--ink-4:#d0d4da;--hl:#e6efff;--background:#f6f7f8;--foreground:#0e1116;--border:#d0d4da}[data-surface=ink]{--bg:#0d0f12;--bg-fold:#15181c;--ink:#ece9df;--ink-2:#a8a59a;--ink-3:#6f6e69;--ink-4:#2c2e33;--accent:#e07060;--hl:#3a3a1e;--background:#0d0f12;--foreground:#ece9df;--border:#2c2e33}[data-accent=oxblood]{--accent:#7b241c;--accent-2:#1e3a5f}[data-accent=indigo]{--accent:#1e3a5f;--accent-2:#7b241c}[data-accent=forest]{--accent:#2f4d2a;--accent-2:#1e3a5f}[data-accent=mono]{--accent:var(--ink);--accent-2:var(--ink)}[data-type=serif]{--f-display:var(--f-serif);--f-body:var(--f-serif);--t-body:17.5px;--t-display:clamp(34px,5.8vw,56px)}[data-type=news]{--f-display:"Newsreader",serif;--f-body:"Newsreader",serif;--t-body:18.5px;--t-display:clamp(38px,6.2vw,64px)}[data-type=sans]{--f-display:var(--f-sans);--f-body:var(--f-sans);--t-body:16px;--t-display:clamp(30px,5vw,48px)}[data-type=mono]{--f-display:var(--f-mono);--f-body:var(--f-sans);--t-body:16px;--t-display:clamp(26px,4.2vw,40px)}[data-density=cozy]{--col:600px;--section-gap:5rem;--para-gap:.9rem;--t-body:16.5px}[data-density=comfortable]{--col:640px;--section-gap:6.5rem;--para-gap:1.1rem}[data-density=spacious]{--col:680px;--section-gap:9rem;--para-gap:1.4rem;--t-body:18.5px}*,:before,:after{box-sizing:border-box}html,body{margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font-family:var(--f-body);font-size:var(--t-body);font-feature-settings:"kern", "liga", "calt", "onum", "ss01";-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-variant-numeric:oldstyle-nums proportional-nums;counter-reset:fn;line-height:1.55;transition:background .24s,color .24s}::selection{background:var(--hl);color:var(--ink)}.topbar{z-index:11;position:relative}.theme-toggle{border:1px solid var(--ink-4);color:var(--ink-2);cursor:pointer;background:0 0;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;padding:0;transition:border-color .16s,color .16s,background .16s;display:inline-flex}.theme-toggle:hover{border-color:var(--ink-2);color:var(--ink);background:var(--bg-fold)}.theme-toggle svg{width:14px;height:14px;display:block}.theme-toggle .moon,[data-surface=ink] .theme-toggle .sun{display:none}[data-surface=ink] .theme-toggle .moon{display:block}.tab{font-variant-numeric:tabular-nums lining-nums}.mono{font-family:var(--f-meta);font-size:var(--t-meta);letter-spacing:.04em;text-transform:uppercase;font-feature-settings:"tnum";font-variant-numeric:tabular-nums lining-nums;color:var(--ink-3)}.mono--lc{text-transform:none;letter-spacing:.01em}.topbar{z-index:10;background:color-mix(in oklab, var(--bg) 88%, transparent);-webkit-backdrop-filter:saturate(140%)blur(8px);border-bottom:var(--hair);position:sticky;top:0}.topbar__inner{grid-template-columns:1fr auto 1fr;align-items:center;gap:2rem;max-width:1080px;margin:0 auto;padding:14px 32px;display:grid}.mark{color:var(--ink);font-family:var(--f-display);letter-spacing:.02em;align-items:baseline;gap:8px;font-size:14px;font-weight:500;text-decoration:none;display:inline-flex;border-bottom:none!important}.mark__glyph{border:1px solid var(--ink);background:var(--bg);width:14px;height:14px;transition:transform .38s cubic-bezier(.2,.7,.2,1);display:inline-block;position:relative;top:1px;transform:rotate(45deg)}.mark:hover .mark__glyph{transform:rotate(225deg)}.nav{font-family:var(--f-meta);letter-spacing:.08em;text-transform:uppercase;justify-self:center;align-items:baseline;font-size:11px;display:flex}.nav a{color:var(--ink-3);padding:4px 14px;text-decoration:none;transition:color .16s;position:relative;border-bottom:none!important}.nav a+a:before{content:"";background:var(--ink-4);width:1px;height:9px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.nav a:hover,.nav a[aria-current=page]{color:var(--ink)}.nav a[aria-current=page]:after{content:"";background:var(--accent);height:1px;position:absolute;bottom:-3px;left:14px;right:14px}.topbar__meta{justify-self:end;align-items:center;gap:1.25rem;display:flex}.topbar__meta a{color:var(--ink-3);text-decoration:none}.topbar__meta a:hover{color:var(--ink)}#cmdk-hint{display:inline-flex}@media (max-width:760px){#cmdk-hint{display:none!important}}@media (min-width:769px){.topbar--home,.progress--home{display:none!important}}.hamburger{cursor:pointer;background:0 0;border:none;flex-direction:column;justify-content:center;gap:4px;width:28px;height:28px;padding:4px;display:none}.ham-line{background:var(--ink-2);width:18px;height:1.5px;transition:transform .2s,opacity .2s;display:block}.ham-line.open:first-child{transform:translateY(5.5px)rotate(45deg)}.ham-line.open:nth-child(2){opacity:0}.ham-line.open:nth-child(3){transform:translateY(-5.5px)rotate(-45deg)}.nav-drawer{border-top:var(--hair);background:var(--bg);flex-direction:column;padding:12px 0;animation:.24s cubic-bezier(.16,1,.3,1) both navSlideDown;display:flex}.nav-drawer a{font-family:var(--f-meta);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);padding:12px 24px;font-size:12.5px;text-decoration:none;transition:color .16s,background .16s}.nav-drawer a:hover{color:var(--ink);background:var(--bg-fold)}.nav-drawer a[aria-current=page]{color:var(--ink);font-weight:500}@keyframes navSlideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}main.wide{max-width:1080px;margin:0 auto;padding:5.5rem 1.5rem 6rem}.hero h1{font-family:var(--f-display);font-weight:400;font-size:var(--t-display);letter-spacing:-.022em;text-wrap:balance;font-variation-settings:"opsz" 48;margin:0 0 1.4rem;line-height:1.02}.hero h1 em{color:var(--accent);font-style:italic}.hero .lead{font-size:var(--t-lead);color:var(--ink);text-wrap:pretty;max-width:32em;margin:0 0 1.4rem;line-height:1.5}.hero .lead .ink-2{color:var(--ink-2)}.hero .status{color:var(--ink-3);align-items:center;gap:8px;display:inline-flex}.pulse{background:var(--accent);border-radius:50%;flex-shrink:0;width:7px;height:7px;display:inline-block;position:relative}.pulse:after{content:"";background:var(--accent);opacity:.4;border-radius:50%;animation:2.6s ease-out infinite pulse;position:absolute;inset:-3px}@keyframes pulse{0%{opacity:.5;transform:scale(.6)}to{opacity:0;transform:scale(2.3)}}.links{border-top:var(--hair);flex-wrap:wrap;gap:0;margin-top:2.25rem;padding-top:1.25rem;display:flex}.links a{color:var(--ink);font-size:var(--t-body);align-items:baseline;gap:6px;margin-right:1.6rem;padding:6px 0;text-decoration:none;transition:color .16s;display:inline-flex;border-bottom:none!important}.links a .arr{font-family:var(--f-meta);color:var(--ink-3);transition:transform .22s cubic-bezier(.2,.7,.2,1);display:inline-block}.links a:hover{color:var(--accent)}.links a:hover .arr{color:var(--accent);transform:translate(2px,-2px)}.links a .k{font-family:var(--f-meta);text-transform:uppercase;color:var(--ink-4);letter-spacing:.06em;margin-left:4px;font-size:10px}.sec-head{border-bottom:var(--hair);align-items:baseline;gap:1rem;margin-bottom:2rem;padding-bottom:.8rem;display:flex}.sec-head h2{font-family:var(--f-display);font-weight:500;font-size:var(--t-h2);letter-spacing:-.005em;color:var(--ink);margin:0}.sec-head .num{font-family:var(--f-meta);color:var(--ink-3);letter-spacing:.06em;font-variant-numeric:tabular-nums;font-size:11px}.sec-head .num:before{content:"§ ";color:var(--ink-4)}.sec-head .perma,.sec-head .aside{font-family:var(--f-meta);color:var(--ink-4);letter-spacing:.04em;margin-left:auto;font-size:11px;text-decoration:none;border-bottom:none!important}.sec-head .perma{opacity:0;transition:opacity .2s}.sec-head:hover .perma{opacity:1}.sec-head .perma:hover{color:var(--ink-2)}.mosaic-wrap{width:100%;max-width:1080px;margin:0 auto}.mosaic{grid-template-columns:repeat(4,1fr);grid-auto-rows:150px;grid-auto-flow:dense;gap:14px;display:grid}.tile{background:var(--bg);border:1px solid var(--ink-4);color:var(--ink);isolation:isolate;flex-direction:column;justify-content:flex-end;padding:16px 18px;text-decoration:none;transition:background .22s,border-color .22s;display:flex;position:relative;overflow:hidden}.tile:hover{background:var(--bg-fold);border-color:var(--ink-3)}.tile:hover .tile__title{color:var(--accent)}.tile:hover .tile__arr{color:var(--accent);transform:translate(2px,-2px)}.tile--lg{grid-area:span 2/span 2}.tile--wide{grid-area:span 1/span 2}.tile--tall{grid-area:span 2/span 1}.tile--sm{grid-area:span 1/span 1}.tile__corner{font-family:var(--f-meta);color:var(--ink-3);letter-spacing:.06em;text-transform:uppercase;font-variant-numeric:tabular-nums;pointer-events:none;justify-content:space-between;align-items:baseline;font-size:10px;display:flex;position:absolute;top:14px;left:16px;right:16px}.tile__arr{font-family:var(--f-meta);color:var(--ink-4);font-size:12px;transition:transform .22s cubic-bezier(.2,.7,.2,1),color .22s;position:absolute;top:14px;right:16px}.tile__title{font-family:var(--f-display);letter-spacing:-.005em;color:var(--ink);text-wrap:balance;margin:0;font-size:17px;font-weight:500;line-height:1.25;transition:color .2s}.tile__title em{color:var(--ink-2);font-style:italic;font-weight:400}.tile--lg .tile__title{font-size:26px;line-height:1.15}.tile--wide .tile__title{font-size:20px}.tile--tall .tile__title{font-size:18px}.tile__desc{color:var(--ink-2);text-wrap:pretty;margin:8px 0 0;font-size:14px;line-height:1.5}.tile--sm .tile__desc,.tile--tall .tile__desc{display:none}.tile--note{cursor:default;font-family:var(--f-display);color:var(--ink-2);text-wrap:pretty;background:0 0;justify-content:center;align-items:flex-start;font-size:15px;font-style:italic;line-height:1.4;border:1px dashed var(--ink-4)!important}.tile--note:hover{border-color:var(--ink-4)!important;background:0 0!important}.tile--note:before{content:"note";font-family:var(--f-meta);letter-spacing:.08em;color:var(--ink-4);text-transform:uppercase;font-size:10px;font-style:normal;position:absolute;top:14px;left:16px}.exp-list{flex-direction:column;display:flex}.exp-item{border-bottom:var(--hair);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:2px;justify-content:space-between;align-items:flex-start;gap:1.5rem;margin:0 -.5rem;padding:.9rem .5rem;transition:background .18s,padding-left .2s;display:flex}.exp-item:first-child{border-top:var(--hair)}.exp-item:hover{background:var(--bg-fold);padding-left:calc(.5rem + 5px)}.exp-compact{flex-direction:column;display:flex}.exp-compact__row{border-bottom:var(--hair);border-radius:2px;justify-content:space-between;align-items:flex-start;gap:1.5rem;margin:0 -.5rem;padding:.9rem .5rem;transition:background .16s;display:flex}.exp-compact__row:first-child{border-top:var(--hair)}.exp-compact__row:hover{background:var(--bg-fold)}.exp-compact__left{flex-direction:column;gap:.2rem;min-width:0;display:flex}.exp-info{flex-direction:column;gap:.1rem;min-width:0;display:flex}.exp-co{font-family:var(--f-display);color:var(--ink);letter-spacing:-.003em;font-size:15.5px;font-weight:500}.exp-sep{display:none}.exp-role{font-family:var(--f-display);color:var(--ink-2);font-size:13.5px;font-style:italic}.exp-date{font-family:var(--f-meta);color:var(--ink-3);letter-spacing:.04em;font-variant-numeric:tabular-nums;white-space:nowrap;flex-shrink:0;font-size:11px}.exp-details{max-height:0;margin:0 -.5rem;padding:0 .5rem;transition:max-height .3s cubic-bezier(.4,0,.2,1);overflow:hidden}.exp-details.open{max-height:200px}.exp-bullets{border-bottom:var(--hair);flex-direction:column;gap:.35rem;margin:0;padding:.5rem 0 .85rem;list-style:none;display:flex}.exp-bullet{color:var(--ink-2);padding-left:1.1rem;font-size:14px;line-height:1.5;position:relative}.exp-bullet:before{content:"—";color:var(--ink-4);font-family:var(--f-meta);font-size:10px;position:absolute;top:.2em;left:0}.now-grid{grid-template-columns:1fr 1fr;gap:2rem 2.5rem;display:grid}.now-card{border-radius:3px;margin:-.75rem -1rem;padding:.75rem 1rem;transition:background .2s}.now-card:hover{background:var(--bg-fold)}.now-card .label{font-family:var(--f-meta);color:var(--ink-3);letter-spacing:.06em;text-transform:uppercase;margin-bottom:.55rem;font-size:11px}.now-card p{color:var(--ink-2);margin:0 0 .4rem;font-size:15.5px;line-height:1.55}.now-card p .pop{color:var(--ink)}.now-card .small{font-family:var(--f-meta);color:var(--ink-4);letter-spacing:.04em;font-size:10.5px}.post{border-bottom:var(--hair);color:inherit;grid-template-columns:1fr auto;align-items:baseline;gap:1.5rem;margin:0 -8px;padding:.8rem 8px;text-decoration:none;transition:background .16s,padding-left .2s;display:grid}.post:hover{background:var(--bg-fold);padding-left:12px}.post__title{font-family:var(--f-display);color:var(--ink);font-size:17px;font-weight:500}.post__title em{color:var(--ink-2);font-style:italic;font-weight:400}.post__date{font-family:var(--f-meta);color:var(--ink-3);letter-spacing:.04em;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:11px}.post__draft{color:var(--ink-4);font-style:italic;font-family:var(--f-body);margin-left:6px}.contact p{font-family:var(--f-display);font-size:var(--t-lead);color:var(--ink);text-wrap:pretty;max-width:32em;margin:0 0 1.2rem;line-height:1.5}.contact .copy{color:var(--accent);font:inherit;cursor:pointer;box-shadow:inset 0 -1px 0 var(--accent);background:0 0;border:0;align-items:baseline;gap:8px;padding:0;transition:opacity .16s;display:inline-flex}.contact .copy:hover{opacity:.7}.contact .copied{font-family:var(--f-meta);color:var(--ink-3);text-transform:uppercase;letter-spacing:.06em;opacity:0;margin-left:8px;font-size:10.5px;transition:opacity .2s}.contact .copied.on{opacity:1}.colophon{margin-top:var(--section-gap);border-top:var(--hair);font-family:var(--f-meta);color:var(--ink-3);letter-spacing:.04em;font-variant-numeric:tabular-nums;flex-wrap:wrap;justify-content:space-between;gap:1rem;padding-top:1.25rem;font-size:10.5px;display:flex}.colophon a{color:var(--ink-3);box-shadow:inset 0 -1px 0 var(--ink-4);text-decoration:none}.colophon a:hover{color:var(--ink)}.fn{cursor:help;font-family:var(--f-meta);vertical-align:super;color:var(--accent);margin-left:1px;font-size:.7em;position:relative}.fn:before{content:counter(fn);counter-increment:fn}.fn .note{background:var(--bg);border:var(--hair);width:280px;font-family:var(--f-body);color:var(--ink-2);text-transform:none;letter-spacing:normal;opacity:0;pointer-events:none;z-index:5;box-shadow:0 1px 0 var(--ink-4), 0 14px 40px -18px #0000004d;font-variant-numeric:oldstyle-nums;padding:10px 12px;font-size:13.5px;line-height:1.45;transition:opacity .18s,transform .22s cubic-bezier(.2,.7,.2,1);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)translateY(4px)}.fn:hover .note,.fn:focus-visible .note{opacity:1;transform:translate(-50%)translateY(0)}.prose a{color:var(--ink);box-shadow:inset 0 -1px 0 var(--ink-4);text-decoration:none;transition:box-shadow .16s,color .16s}.prose a:hover{color:var(--accent);box-shadow:inset 0 -1px 0 var(--accent)}.progress{z-index:5;font-family:var(--f-meta);color:var(--ink-3);letter-spacing:.04em;font-variant-numeric:tabular-nums;pointer-events:none;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;font-size:10.5px;display:flex;position:fixed;bottom:22px;right:22px}.progress__ring{background:conic-gradient(var(--ink-2) calc(var(--p) * 1%), var(--ink-4) 0);border-radius:50%;width:18px;height:18px;-webkit-mask:radial-gradient(6px,#0000 98%,#000 100%);mask:radial-gradient(6px,#0000 98%,#000 100%)}.kbd{font-family:var(--f-meta);border:1px solid var(--ink-4);color:var(--ink-2);background:var(--bg);border-bottom-width:2px;border-radius:3px;padding:1px 5px;font-size:10px;line-height:1.2;display:inline-block}@media (max-width:760px){.topbar__inner{grid-template-columns:1fr auto;gap:1rem;padding:12px 18px}.nav{display:none}.hamburger{display:flex}.nav-clock{display:none}main.wide{padding:3.5rem 1.25rem 4rem}.now-grid{grid-template-columns:1fr}.mosaic{grid-template-columns:repeat(2,1fr);grid-auto-rows:130px}.tile--lg{grid-area:span 2/span 2}.tile--wide{grid-column:span 2}}@media (max-width:460px){.mosaic{grid-template-columns:1fr}.tile--lg,.tile--wide,.tile--tall,.tile--sm{grid-area:span 1/span 1}.tile{min-height:110px}}@media (max-width:480px){.exp-role{font-size:13px}}.narrow-page{max-width:760px;margin:0 auto;padding:5.5rem 2rem 6rem}.narrow-page section+section{margin-top:var(--section-gap)}.page-head{border-bottom:var(--hair);margin-bottom:4rem;padding-bottom:2rem}.page-head .crumb{font-family:var(--f-meta);color:var(--ink-3);letter-spacing:.06em;text-transform:uppercase;align-items:baseline;gap:8px;margin-bottom:1.4rem;font-size:11px;display:flex}.page-head .crumb a{color:var(--ink-3);box-shadow:inset 0 -1px 0 var(--ink-4);text-decoration:none;border-bottom:none!important}.page-head .crumb a:hover{color:var(--ink)}.page-head .crumb .sep{color:var(--ink-4)}.page-head h1{font-family:var(--f-display);font-weight:400;font-size:var(--t-display);letter-spacing:-.022em;text-wrap:balance;font-variation-settings:"opsz" 48;margin:0 0 1rem;line-height:1.02}.page-head h1 em{color:var(--accent);font-style:italic}.page-head .blurb{font-size:var(--t-lead);color:var(--ink-2);text-wrap:pretty;max-width:32em;margin:0}.page-head .stats{font-family:var(--f-meta);color:var(--ink-3);letter-spacing:.04em;font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:2rem;margin-top:1.5rem;font-size:11px;display:flex}.page-head .stats b{color:var(--ink);font-weight:500}.group-head{align-items:center;gap:14px;margin:4.5rem 0 0;display:flex}.group-head:first-child{margin-top:0}.group-head h3{font-family:var(--f-meta);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);white-space:nowrap;margin:0;font-size:10.5px;font-style:normal;font-weight:500}.group-head .count{font-family:var(--f-meta);color:var(--ink-4);letter-spacing:.04em;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:10px}.group-head .rule{background:var(--ink-4);flex:1;align-self:center;height:1px}.work{flex-direction:column;display:flex}.work__item{border-bottom:var(--hair);border-radius:3px;grid-template-columns:34px 1fr auto;gap:.9rem 1.25rem;margin:0 -1rem;padding:1.6rem 1rem;transition:background .16s;display:grid}.work__item:last-child{border-bottom:none}.work__item:hover{background:var(--bg-fold)}.work__num{font-family:var(--f-meta);color:var(--ink-3);letter-spacing:.04em;font-variant-numeric:tabular-nums;white-space:nowrap;padding-top:6px;font-size:10px}.work__main{min-width:0}.work__title{font-family:var(--f-display);letter-spacing:-.005em;color:var(--ink);margin:0 0 .3rem;font-size:19px;font-weight:500;line-height:1.25}.work__title em{color:var(--ink-2);font-style:italic;font-weight:400}.work__meta{font-family:var(--f-meta);color:var(--ink-3);letter-spacing:.04em;font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:4px 10px;margin-bottom:.55rem;font-size:11px;display:flex}.work__meta .dot{color:var(--ink-4)}.work__desc{color:var(--ink-2);text-wrap:pretty;max-width:36em;margin:0;font-size:16px;line-height:1.55}.work__desc+.work__desc{margin-top:.5rem}.work__desc .pop{color:var(--ink)}.work__date{font-family:var(--f-meta);color:var(--ink-3);letter-spacing:.04em;text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;padding-top:6px;font-size:11px}.work__links{flex-wrap:wrap;gap:1rem;margin-top:.7rem;display:flex}.work__links a{font-family:var(--f-meta);letter-spacing:.04em;color:var(--ink-2);box-shadow:inset 0 -1px 0 var(--ink-4);align-items:baseline;gap:4px;padding:2px 0;font-size:11px;text-decoration:none;transition:color .16s,box-shadow .16s;display:inline-flex;border-bottom:none!important}.work__links a:hover{color:var(--accent);box-shadow:inset 0 -1px 0 var(--accent)}.work__links a .arr{transition:transform .2s cubic-bezier(.2,.7,.2,1);display:inline-block}.work__links a:hover .arr{transform:translate(2px,-2px)}.book{border-bottom:var(--hair);border-radius:3px;grid-template-columns:26px 1fr auto;align-items:start;gap:.5rem 1.4rem;margin:0 -1rem;padding:1.6rem 1rem;transition:background .16s;display:grid}.book:hover{background:var(--bg-fold)}.book:last-child{border-bottom:none}.book__spine{background:var(--ink-4);flex-shrink:0;width:10px;height:64px;margin-top:4px;position:relative;box-shadow:inset -2px 0 #0000000f}.book__spine:before{content:"";border:1px solid #ffffff2e;position:absolute;inset:4px 3px}.book__spine--ox{background:var(--accent)}.book__spine--in{background:var(--accent-2)}.book__spine--gr{background:#2f4d2a}.book__spine--bn{background:#6b4a2b}.book__spine--sl{background:#5a5e63}.book__spine--cr{background:#b8a071}.book__main{min-width:0}.book__title{font-family:var(--f-display);letter-spacing:-.003em;color:var(--ink);margin:0 0 .15rem;font-size:18px;font-weight:500;line-height:1.3}.book__title em{color:var(--ink);font-style:italic;font-weight:400}.book__author{font-family:var(--f-display);color:var(--ink-2);margin:0 0 .5rem;font-size:15px;font-style:italic}.book__meta{font-family:var(--f-meta);color:var(--ink-3);letter-spacing:.04em;text-transform:uppercase;font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:12px;margin-bottom:.6rem;font-size:10.5px;display:flex}.book__meta .dot{color:var(--ink-4)}.book__meta .status{align-items:center;gap:5px;display:inline-flex}.book__meta .status:before{content:"";background:var(--ink-4);border-radius:50%;width:6px;height:6px;display:inline-block}.book__meta .status.reading:before{background:var(--accent)}.book__meta .status.finished:before{background:var(--ink-2)}.book__meta .status.shelved:before{border:1px solid var(--ink-4);background:0 0;width:5px;height:5px}.book__take{color:var(--ink-2);text-wrap:pretty;max-width:36em;margin:0;font-size:15.5px;line-height:1.55}.book__take .pop{color:var(--ink)}.book__rating{font-family:var(--f-meta);color:var(--ink-3);letter-spacing:.1em;text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:11px}.book__rating .stars{color:var(--accent);letter-spacing:.1em;margin-bottom:2px;font-size:13px;display:block}.book__rating .stars .empty{color:var(--ink-4)}@media (max-width:760px){.narrow-page{max-width:100%;padding:3.5rem 1.25rem 4rem}.work__item{grid-template-columns:auto 1fr;gap:.5rem 1rem;margin:0;padding:1.6rem 0}.work__num{grid-area:1/1;padding-top:0}.work__date{text-align:right;grid-area:1/2;padding-top:0}.work__main{grid-area:2/1/auto/span 2}.book{grid-template-columns:20px 1fr;gap:.5rem 1.25rem;margin:0;padding:1.6rem 0}.book__spine{grid-area:1/1/span 2;width:12px;height:56px;margin-top:2px}.book__main{grid-area:1/2}.book__rating{text-align:left;grid-area:2/2;margin-top:.25rem}}.hover\:w-2:hover{width:.5rem}.hover\:translate-x-2:hover{--tw-translate-x:.5rem;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-110:hover{--tw-scale-x:1.1;--tw-scale-y:1.1;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-\[var\(--accent\)\]:hover{border-color:var(--accent)}.hover\:bg-\[var\(--foreground\)\]:hover{background-color:var(--foreground)}.hover\:text-\[var\(--accent\)\]:hover{color:var(--accent)}.hover\:text-\[var\(--background\)\]:hover{color:var(--background)}.hover\:opacity-100:hover{opacity:1}.hover\:opacity-40:hover{opacity:.4}.hover\:opacity-60:hover{opacity:.6}.hover\:opacity-80:hover{opacity:.8}@media (min-width:768px){.md\:ml-32{margin-left:8rem}.md\:ml-40{margin-left:10rem}.md\:mr-8{margin-right:2rem}.md\:block{display:block}.md\:flex{display:flex}.md\:hidden{display:none}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1024px){.lg\:ml-48{margin-left:12rem}.lg\:ml-56{margin-left:14rem}.lg\:mr-24{margin-right:6rem}}
