/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0}}}@layer theme{:host,:root{--font-sans:var(--font-inter),-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,sans-serif;--font-serif:var(--font-eb-garamond),"EB Garamond","Garamond","Times New Roman",serif;--font-mono:var(--font-jetbrains-mono),"SF Mono",ui-monospace,Menlo,monospace;--color-red-500:oklch(63.7% .237 25.331);--color-neutral-500:oklch(55.6% 0 0);--color-neutral-950:oklch(14.5% 0 0);--spacing:.25rem;--container-lg:32rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--font-weight-medium:500;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1) infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--container-site:1140px;--color-paper:#fef9ed;--color-paper-2:#f4edde;--color-ink:#1a1a17;--color-ink-2:#4a4a44;--color-ink-3:#7a7872;--color-rule:#e5ddcb;--color-rule-2:#d6ccb7;--color-accent:oklch(55% .08 40);--color-accent-soft:oklch(92% .02 40)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}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,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);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}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components{.heading-display{letter-spacing:-.035em;color:var(--color-ink);margin:0 0 28px;font-size:clamp(20px,4.2vw,25px);font-weight:400;line-height:1.4}.body-text,.heading-display{font-family:var(--font-sans)}.body-text{color:var(--color-ink-2);margin:0 0 18px;font-size:16px;line-height:1.5}.body-text:last-child{margin-bottom:0}}@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing) * 0)}.inset-x-0{inset-inline:calc(var(--spacing) * 0)}.top-0{top:calc(var(--spacing) * 0)}.z-30{z-index:30}.z-50{z-index:50}.\!container{width:100%!important}@media (min-width:40rem){.\!container{max-width:40rem!important}}@media (min-width:48rem){.\!container{max-width:48rem!important}}@media (min-width:64rem){.\!container{max-width:64rem!important}}@media (min-width:80rem){.\!container{max-width:80rem!important}}@media (min-width:96rem){.\!container{max-width:96rem!important}}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.m-0{margin:calc(var(--spacing) * 0)}.-mx-3{margin-inline:calc(var(--spacing) * -3)}.mx-2{margin-inline:calc(var(--spacing) * 2)}.mx-auto{margin-inline:auto}.mt-1{margin-top:calc(var(--spacing) * 1)}.mb-12{margin-bottom:calc(var(--spacing) * 12)}.mb-16{margin-bottom:calc(var(--spacing) * 16)}.line-clamp-3{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.inline-grid{display:inline-grid}.table{display:table}.aspect-square{aspect-ratio:1}.h-7{height:calc(var(--spacing) * 7)}.h-9{height:calc(var(--spacing) * 9)}.h-\[2px\]{height:2px}.h-\[15px\]{height:15px}.h-\[72px\]{height:72px}.h-full{height:100%}.w-7{width:calc(var(--spacing) * 7)}.w-9{width:calc(var(--spacing) * 9)}.w-\[15px\]{width:15px}.w-full{width:100%}.max-w-full{max-width:100%}.max-w-lg{max-width:var(--container-lg)}.max-w-site{max-width:var(--container-site)}.min-w-0{min-width:calc(var(--spacing) * 0)}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.origin-left{transform-origin:0}.scale-0{--tw-scale-x:0%;--tw-scale-y:0%;--tw-scale-z:0%}.scale-0,.scale-100{scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-100{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%}.-rotate-90{rotate:-90deg}.rotate-0{rotate:0deg}.rotate-90{rotate:90deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.resize{resize:both}.list-none{list-style-type:none}.\[grid-template-columns\:1fr_auto\]{grid-template-columns:1fr auto}.\[grid-template-columns\:96px_1fr\]{grid-template-columns:96px 1fr}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-8{gap:calc(var(--spacing) * 8)}.gap-\[2px\]{gap:2px}.gap-\[6px\]{gap:6px}.gap-\[8px\]{gap:8px}.gap-\[10px\]{gap:10px}.gap-\[12px\]{gap:12px}.gap-\[14px\]{gap:14px}.gap-\[20px\]{gap:20px}.gap-x-4{column-gap:calc(var(--spacing) * 4)}.gap-x-\[14px\]{column-gap:14px}.gap-y-\[6px\]{row-gap:6px}.truncate{text-overflow:ellipsis;white-space:nowrap}.overflow-hidden,.truncate{overflow:hidden}.rounded-full{border-radius:3.40282e+38px}.border{border-style:var(--tw-border-style);border-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-rule{border-color:var(--color-rule)}.bg-accent{background-color:var(--color-accent)}.bg-neutral-950{background-color:var(--color-neutral-950)}.bg-paper{background-color:var(--color-paper)}.bg-paper-2{background-color:var(--color-paper-2)}.bg-transparent{background-color:#0000}.object-cover{object-fit:cover}.p-0{padding:calc(var(--spacing) * 0)}.p-0\.5{padding:calc(var(--spacing) * .5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-\[14px\]{padding-inline:14px}.py-1{padding-block:calc(var(--spacing) * 1)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-\[5px\]{padding-block:5px}.py-\[8px\]{padding-block:8px}.text-right{text-align:right}.align-baseline{vertical-align:baseline}.font-mono{font-family:var(--font-mono)}.font-sans{font-family:var(--font-sans)}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-\[11\.5px\]{font-size:11.5px}.text-\[12\.5px\]{font-size:12.5px}.text-\[12px\]{font-size:12px}.text-\[13px\]{font-size:13px}.text-\[14\.5px\]{font-size:14.5px}.text-\[14px\]{font-size:14px}.leading-\[1\.15\]{--tw-leading:1.15;line-height:1.15}.leading-\[1\.55\]{--tw-leading:1.55;line-height:1.55}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.tracking-\[-0\.02em\]{--tw-tracking:-.02em;letter-spacing:-.02em}.tracking-\[-0\.015em\]{--tw-tracking:-.015em;letter-spacing:-.015em}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.text-inherit{color:inherit}.text-ink{color:var(--color-ink)}.text-ink-2{color:var(--color-ink-2)}.text-ink-3{color:var(--color-ink-3)}.text-neutral-500{color:var(--color-neutral-500)}.text-red-500{color:var(--color-red-500)}.italic{font-style:italic}.no-underline{text-decoration-line:none}.underline{text-decoration-line:underline}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a)}.ring,.shadow{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.invert{--tw-invert:invert(100%)}.filter,.invert{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,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[border-color\,background\,color\]{transition-property:border-color,background,color;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[color\,border-color\,background\]{transition-property:color,border-color,background;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[color\,border-color\,transform\]{transition-property:color,border-color,transform;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-500{--tw-duration:.5s;transition-duration:.5s}.duration-\[400ms\]{--tw-duration:.4s;transition-duration:.4s}.\[transition-timing-function\:cubic-bezier\(\.34\,1\.56\,\.4\,1\)\]{transition-timing-function:cubic-bezier(.34,1.56,.4,1)}.\[grid-area\:1\/1\]{grid-area:1/1}.\[grid-area\:1\/2\]{grid-area:1/2}.\[grid-area\:2\/1\/3\/3\]{grid-area:2/1/3/3}@media (hover:hover){.group-hover\:translate-x-\[2px\]:is(:where(.group):hover *){--tw-translate-x:2px;translate:var(--tw-translate-x) var(--tw-translate-y)}.group-hover\:-translate-y-\[1px\]:is(:where(.group):hover *){--tw-translate-y:calc(1px * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.hover\:border-ink\/30:hover{border-color:#1a1a174d}@supports (color:color-mix(in lab,red,red)){.hover\:border-ink\/30:hover{border-color:color-mix(in oklab,var(--color-ink) 30%,transparent)}}.hover\:bg-paper-2:hover{background-color:var(--color-paper-2)}.hover\:text-ink:hover{color:var(--color-ink)}}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-accent:focus-visible{--tw-ring-color:var(--color-accent)}.focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.active\:scale-90:active{--tw-scale-x:90%;--tw-scale-y:90%;--tw-scale-z:90%;scale:var(--tw-scale-x) var(--tw-scale-y)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:opacity-50:disabled{opacity:.5}.data-\[state\=on\]\:bg-ink[data-state=on]{background-color:var(--color-ink)}.data-\[state\=on\]\:text-paper[data-state=on]{color:var(--color-paper)}@media (min-width:40rem){.sm\:mt-0{margin-top:calc(var(--spacing) * 0)}.sm\:mb-24{margin-bottom:calc(var(--spacing) * 24)}.sm\:mb-\[72px\]{margin-bottom:72px}.sm\:mb-\[88px\]{margin-bottom:88px}.sm\:line-clamp-none{-webkit-line-clamp:unset;-webkit-box-orient:horizontal;display:block;overflow:visible}.sm\:block{display:block}.sm\:flex{display:flex}.sm\:hidden{display:none}.sm\:inline{display:inline}.sm\:h-10{height:calc(var(--spacing) * 10)}.sm\:h-\[100px\]{height:100px}.sm\:w-10{width:calc(var(--spacing) * 10)}.sm\:max-w-\[540px\]{max-width:540px}.sm\:max-w-\[640px\]{max-width:640px}.sm\:\[grid-template-columns\:1fr_auto\]{grid-template-columns:1fr auto}.sm\:\[grid-template-columns\:108px_1fr_90px\]{grid-template-columns:108px 1fr 90px}.sm\:\[grid-template-columns\:180px_1fr_auto\]{grid-template-columns:180px 1fr auto}.sm\:\[grid-template-columns\:minmax\(0\,720px\)_1fr\]{grid-template-columns:minmax(0,720px) 1fr}.sm\:gap-6{gap:calc(var(--spacing) * 6)}.sm\:gap-8{gap:calc(var(--spacing) * 8)}.sm\:gap-16{gap:calc(var(--spacing) * 16)}.sm\:gap-\[3px\]{gap:3px}.sm\:gap-\[14px\]{gap:14px}.sm\:gap-\[22px\]{gap:22px}.sm\:gap-x-\[18px\]{column-gap:18px}.sm\:text-\[12\.5px\]{font-size:12.5px}.sm\:text-\[13px\]{font-size:13px}.sm\:text-\[15px\]{font-size:15px}.sm\:\[grid-area\:auto\]{grid-area:auto}}}.dark{--color-paper:#111110;--color-paper-2:#1a1a18;--color-ink:#ececea;--color-ink-2:#b8b6b0;--color-ink-3:#87857f;--color-rule:#26251f;--color-rule-2:#34322a;--color-accent:oklch(72% .07 40);--color-accent-soft:oklch(28% .03 40)}:root{--background:var(--color-paper);--foreground:var(--color-ink);--muted:var(--color-paper-2);--muted-foreground:var(--color-ink-3);--border:var(--color-rule);--input:var(--color-rule);--ring:var(--color-accent);--primary:var(--color-ink);--primary-foreground:var(--color-paper);--secondary:var(--color-paper-2);--secondary-foreground:var(--color-ink);--accent:var(--color-paper-2);--accent-foreground:var(--color-ink);--destructive:var(--color-accent);--destructive-foreground:var(--color-paper);--radius:.375rem}html{font-feature-settings:"ss01","cv11";-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%}body{font-family:var(--font-sans);background:var(--color-paper);color:var(--color-ink);text-rendering:optimizelegibility;letter-spacing:-.011em;overflow-x:hidden}body:before{content:"";z-index:40;pointer-events:none;opacity:.045;background-image:url(/paper-grain.svg);position:fixed;inset:0}.dark body:before{opacity:.025}img,svg,video{max-width:100%;height:auto}::selection{background:var(--color-accent-soft)}a{color:inherit;text-decoration:none}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.fade-up{opacity:0;animation:fadeUp .7s cubic-bezier(.2,.7,.3,1) forwards}.stagger>*{opacity:0;animation:fadeUp .6s cubic-bezier(.2,.7,.3,1) forwards}.stagger>:first-child{animation-delay:60ms}.stagger>:nth-child(2){animation-delay:.12s}.stagger>:nth-child(3){animation-delay:.18s}.stagger>:nth-child(4){animation-delay:.24s}.stagger>:nth-child(5){animation-delay:.3s}.stagger>:nth-child(6){animation-delay:.36s}.stagger>:nth-child(7){animation-delay:.42s}.stagger>:nth-child(8){animation-delay:.48s}.stagger>:nth-child(n+9){animation-delay:.54s}.tinted-image{filter:url(#tint-duotone-light)}.dark .tinted-image{filter:url(#tint-duotone-dark)}.nav-link{padding:4px 0;position:relative}.nav-link:after{content:"";transform-origin:0;background:currentColor;height:1px;transition:transform .32s cubic-bezier(.2,.7,.3,1);position:absolute;bottom:-1px;left:0;right:0;transform:scaleX(0)}.nav-link:hover:after{transform:scaleX(1)}a.link-inline{color:var(--color-accent);font-weight:600;text-decoration:none;display:inline;position:relative}a.link-inline:after{content:"";transform-origin:0;pointer-events:none;background:currentColor;height:1px;transition:transform .32s cubic-bezier(.2,.7,.3,1);position:absolute;bottom:-2px;left:0;right:0;transform:scaleX(0)}a.link-inline:hover:after{transform:scaleX(1)}.with-arrow .arrow{transition:transform .24s cubic-bezier(.2,.7,.3,1);display:inline-block}.with-arrow:hover .arrow{transform:translate(3px,-3px)}.parallax-wrap{overflow:hidden}.parallax-wrap>*{transition:transform .6s cubic-bezier(.2,.7,.3,1)}.parallax-wrap:hover>*{transform:scale(1.04)}@keyframes wave{0%,60%,to{transform:rotate(0)}10%{transform:rotate(-12deg)}20%{transform:rotate(14deg)}30%{transform:rotate(-8deg)}40%{transform:rotate(10deg)}50%{transform:rotate(-4deg)}}.wave{transform-origin:70% 90%;color:var(--color-ink-3);margin-left:2px;animation:wave 2.6s ease-in-out infinite;display:inline-block}@media (prefers-reduced-motion:reduce){.wave{animation:none}}@keyframes ringSpin{to{transform:rotate(1turn)}}.avatar-ring{pointer-events:none;border-radius:50%;animation:ringSpin 18s linear infinite;position:absolute;inset:-12px}.avatar-ring svg{width:100%;height:100%;display:block;overflow:visible}.avatar-ring text{font-family:var(--font-mono);letter-spacing:1.4px;fill:var(--color-ink-3);text-transform:uppercase;font-size:7px}@media (prefers-reduced-motion:reduce){.avatar-ring{animation:none}}.ref{font-family:var(--font-mono);color:var(--color-ink-3);border:1px solid var(--color-rule-2);vertical-align:1px;border-radius:4px;padding:1px 6px;font-size:12.5px;text-decoration:none;transition:background .18s,color .18s,border-color .18s}.ref:hover{background:var(--color-paper-2);color:var(--color-ink);border-color:var(--color-ink-3)}.ref .arr{color:var(--color-accent);margin-left:2px}.elsewhere{width:100%}.elsewhere a{border-top:1px solid var(--color-rule);color:inherit;grid-template-columns:110px 1fr auto;align-items:baseline;gap:16px;padding:16px 0;text-decoration:none;transition:padding .24s cubic-bezier(.34,1.6,.4,1);display:grid}.elsewhere a:last-child{border-bottom:1px solid var(--color-rule)}.elsewhere a:hover{padding-left:8px}.elsewhere a .k{font-family:var(--font-mono);letter-spacing:.6px;text-transform:uppercase;color:var(--color-ink-3);font-size:11px}.elsewhere a .v{font-family:var(--font-serif);color:var(--color-ink);letter-spacing:-.005em;font-size:22px}.elsewhere a .arr{color:var(--color-ink-3);font-family:var(--font-mono);font-size:14px;transition:transform .24s,color .2s}.elsewhere a:hover .arr{color:var(--color-accent);transform:translate(4px,-1px)}@media (max-width:640px){.elsewhere a{grid-template-columns:1fr auto}.elsewhere a .k{display:none}}@keyframes pulseDot{0%,to{box-shadow:0 0 0 0 color-mix(in oklab,var(--color-accent) 60%,transparent)}50%{box-shadow:0 0 0 6px color-mix(in oklab,var(--color-accent) 0%,transparent)}}.live-dot{background:var(--color-accent);border-radius:50%;width:7px;height:7px;animation:pulseDot 1.8s ease-in-out infinite;display:inline-block}.cube-stage{perspective:900px;cursor:grab;width:144px;height:144px;position:relative}@media (max-width:640px){.cube-stage{width:104px;height:104px}.cube-spin{width:72px;height:72px;top:16px;left:16px}.cube .f-front{transform:translateZ(36px)}.cube .f-back{transform:rotateY(180deg)translateZ(36px)}.cube .f-right{transform:rotateY(90deg)translateZ(36px)}.cube .f-left{transform:rotateY(-90deg)translateZ(36px)}.cube .f-top{transform:rotateX(90deg)translateZ(36px)}.cube .f-bottom{transform:rotateX(-90deg)translateZ(36px)}.cube-shadow{width:60px;bottom:4px}}.cube-stage:active{cursor:grabbing}.cube-spin{width:100px;height:100px;transform-style:preserve-3d;margin:auto;animation:cubeSpin 22s linear infinite;position:absolute;inset:22px 0 0 22px}.cube-stage:hover .cube-spin{animation-duration:9s}.cube{transform-style:preserve-3d;transform:rotateX(var(--tx,0deg)) rotateY(var(--ty,0deg));transition:transform .24s cubic-bezier(.2,.7,.3,1)}.cube,.cube .face{position:absolute;inset:0}.cube .face{border:1px solid var(--color-rule-2);background:#fef9edeb}@supports (color:color-mix(in lab,red,red)){.cube .face{background:color-mix(in oklab,var(--color-paper) 92%,transparent)}}.cube .face{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);font-family:var(--font-mono);color:var(--color-ink-2);box-shadow:inset 0 0 0 1px #fef9edcc,0 1px 0 var(--color-rule);place-items:center;font-size:14px;display:grid}@supports (color:color-mix(in lab,red,red)){.cube .face{box-shadow:inset 0 0 0 1px color-mix(in oklab,var(--color-paper) 80%,transparent),0 1px 0 var(--color-rule)}}.cube .face{letter-spacing:.2px}.cube .face.f-grid{background-image:linear-gradient(var(--color-rule) 1px,transparent 1px),linear-gradient(90deg,var(--color-rule) 1px,transparent 1px);background-size:8px 8px}.cube .face.f-accent{color:var(--color-accent)}.cube .face.f-serif{font-family:var(--font-serif);color:var(--color-ink);font-size:32px;font-style:italic}.cube .face.f-dot:after{content:"";background:var(--color-accent);border-radius:50%;width:12px;height:12px;display:block;box-shadow:0 0 0 8px #9a614d2e}@supports (color:color-mix(in lab,red,red)){.cube .face.f-dot:after{box-shadow:0 0 0 8px color-mix(in oklab,var(--color-accent) 18%,transparent)}}.cube .f-front{transform:translateZ(50px)}.cube .f-back{transform:rotateY(180deg)translateZ(50px)}.cube .f-right{transform:rotateY(90deg)translateZ(50px)}.cube .f-left{transform:rotateY(-90deg)translateZ(50px)}.cube .f-top{transform:rotateX(90deg)translateZ(50px)}.cube .f-bottom{transform:rotateX(-90deg)translateZ(50px)}.cube-shadow{background:radial-gradient(#1a1a1738,#0000 70%);border-radius:50%;width:82px;height:9px;position:absolute;bottom:6px;left:50%;transform:translate(-50%)}@supports (color:color-mix(in lab,red,red)){.cube-shadow{background:radial-gradient(ellipse,color-mix(in oklab,var(--color-ink) 22%,transparent),transparent 70%)}}.cube-shadow{filter:blur(2px);animation:shadowBreathe 22s linear infinite}@keyframes cubeSpin{0%{transform:rotateX(-22deg)rotateY(0)}to{transform:rotateX(-22deg)rotateY(1turn)}}@keyframes shadowBreathe{0%,to{opacity:.6;transform:translate(-50%)scaleX(1)}50%{opacity:.9;transform:translate(-50%)scaleX(1.15)}}@media (prefers-reduced-motion:reduce){.cube,.cube-shadow,.fade-up,.live-dot,.stagger>*{opacity:1!important;animation:none!important;transform:none!important}.cube{transform:rotateX(-22deg)rotateY(-32deg)!important}.parallax-wrap>*{transition:none!important}}.prose{font-family:var(--font-serif);color:var(--color-ink);text-align:justify;-webkit-hyphens:auto;hyphens:auto;font-size:17.5px;line-height:1.7}.prose.prose-sans,.prose.prose-sans blockquote,.prose.prose-sans em,.prose.prose-sans h1,.prose.prose-sans h2,.prose.prose-sans h3,.prose.prose-sans h4,.prose.prose-sans li,.prose.prose-sans p,.prose.prose-sans strong{font-family:var(--font-sans)}.prose blockquote,.prose figure,.prose ol,.prose p,.prose pre,.prose ul{margin-block:1em}.prose figure{text-align:center;margin-block:2em}.prose figure img{max-width:100%;height:auto;margin-inline:auto}.prose figcaption{color:var(--color-ink-2);text-align:left;-webkit-hyphens:manual;hyphens:manual;margin-top:.75em;font-size:13.5px;line-height:1.55}.prose ol,.prose ul{padding-left:1.5em}.prose ul{list-style:outside}.prose ol{list-style:decimal}.prose li{margin-block:.35em}.prose li::marker{color:var(--color-ink-3)}.prose ul ul{list-style:circle}.prose ul ul ul{list-style:square}.prose{counter-reset:prose-section prose-eq prose-sidenote prose-sidenote-ref}.prose h1{margin-top:2em;font-size:24px;line-height:1.4}.prose h1,.prose h2{font-family:var(--font-sans);text-align:left;-webkit-hyphens:manual;hyphens:manual;margin-bottom:.75em;font-weight:700}.prose h2{align-items:baseline;gap:.3em;margin-top:2.5em;font-size:19px;display:flex}.prose h2:before{font-family:var(--font-mono);content:counter(prose-section) ".";counter-increment:prose-section;color:var(--color-ink-3);flex:none;font-size:16px;font-weight:500}.prose h3{font-family:var(--font-serif);text-align:left;-webkit-hyphens:manual;hyphens:manual;margin-top:2em;margin-bottom:.5em;font-size:17px;font-weight:600}.prose strong{font-weight:700}.prose em{font-style:italic}.prose a{color:var(--color-accent)}.prose a:hover{color:oklch(from var(--color-accent) calc(l - .05) c h)}.prose .katex{font-size:1.05em}.prose .eq,.prose .katex-display{margin:1.5em 0}.prose .eq{grid-template-columns:1fr auto;align-items:center;display:grid}.prose .eq>.katex-display{grid-column:1;justify-self:center;margin:0}.prose .eq:after{counter-increment:prose-eq;content:"(" counter(prose-eq) ")";font-family:var(--font-mono);color:var(--color-ink-3);grid-column:2;justify-self:end;font-size:12.5px}.prose .sidenote{float:right;clear:right;width:220px;color:var(--color-ink-2);text-align:left;-webkit-hyphens:manual;hyphens:manual;overflow-wrap:anywhere;margin-bottom:1em;margin-left:0;margin-right:-260px;scroll-margin-top:120px;font-size:14.5px;font-style:normal;line-height:1.55;display:block;position:relative}.prose .sidenote:before{content:counter(prose-sidenote) " ";counter-increment:prose-sidenote;margin-right:.4em;font-size:11px;font-style:normal}.prose .sidenote-marker,.prose .sidenote:before{font-family:var(--font-mono);color:var(--color-ink-3)}.prose .sidenote-marker{counter-increment:prose-sidenote-ref;vertical-align:super;font-size:.65em}.prose .sidenote-marker:before{content:counter(prose-sidenote-ref)}.prose .sidenote[data-number]:before{content:"[" attr(data-number) "] ";counter-increment:none}.prose .sidenote-marker[data-number]{counter-increment:none}.prose .sidenote-marker[data-number]:before{content:none}.prose .sidenote-marker:focus-visible,.prose .sidenote:focus-visible{outline:2px solid var(--color-accent);outline-offset:4px}.prose .sidenote:target{background:var(--color-accent-soft)}@media (max-width:1199px){.prose .sidenote{float:none;clear:none;border-left:2px solid var(--color-rule);width:auto;margin:.75em 0;padding-left:12px;font-size:14px}}.site-navigation{transition:transform .3s cubic-bezier(.22,1,.36,1)}.site-navigation[data-hidden=true]{transform:translateY(-100%)}@media (prefers-reduced-motion:reduce){.site-navigation{transition:none}}.writing-article>header:not(:has(.article-artwork)){padding-top:clamp(32px,5vw,64px)}.article-title-group{flex-direction:column;gap:6px;display:flex}.article-subtitle{font-family:var(--font-newsreader),Georgia,serif;color:var(--color-ink);margin:0;font-size:clamp(20px,2.5vw,23px);font-style:normal;font-weight:400;line-height:1.4}.writing-article .article-subtitle{font-style:italic}.article-summary{font-family:var(--font-sans);color:var(--color-ink-2);margin:0;font-size:17px;line-height:1.5}.writing-article .article-summary{font-family:var(--font-newsreader),Georgia,serif;font-optical-sizing:auto;font-size:clamp(18px,1.6vw,20px);line-height:1.55}.article-divider{align-items:center;gap:clamp(12px,2vw,24px);margin-top:16px;display:flex}.article-divider:after,.article-divider:before{content:"";border-top:1px solid var(--color-rule-2);flex:1}.article-ornament{background-color:var(--color-ink-2);opacity:.8;pointer-events:none;flex-shrink:0;width:160px;max-width:40%;height:36px;display:block;-webkit-mask:url(/article-ornament.svg) 50%/contain no-repeat;mask:url(/article-ornament.svg) 50%/contain no-repeat}.article-artwork{width:100%;height:clamp(180px,32svh,320px);margin-bottom:16px;position:relative;overflow:hidden}.article-artwork>:is(img,video,canvas,iframe){object-fit:contain;border:0;width:100%;height:100%;display:block}.article-artwork>img{mix-blend-mode:multiply;filter:brightness(1.04)}.dark .article-artwork>img{mix-blend-mode:screen;filter:brightness(1.04)invert()hue-rotate(180deg)}.studio-project-art{filter:brightness(.65)}.dark .studio-project-art{filter:brightness(1.5)}.technical-article{--article-gutter:clamp(20px,5vw,64px);padding:16px var(--article-gutter) 96px}.article-toc{border-block:1px solid var(--color-rule);font-family:var(--font-newsreader),Georgia,serif;font-optical-sizing:auto;margin-bottom:40px;padding:18px 0;font-size:18px;line-height:1.5}.article-toc summary{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;font-size:21px;font-weight:400;list-style:none;display:flex}.article-toc summary::-webkit-details-marker{display:none}.article-toc summary:after{content:"";height:16px;color:var(--color-ink-3);background:linear-gradient(currentColor,currentColor) 50%/12px 1px no-repeat,linear-gradient(currentColor,currentColor) 50%/1px 12px no-repeat;flex:0 0 16px}.article-toc[open] summary:after{background:linear-gradient(currentColor,currentColor) 50%/12px 1px no-repeat}.article-toc nav{margin-top:18px}.article-toc ol{counter-reset:toc-section;padding-left:2em;list-style:none}.article-toc ol ol{margin-top:6px;padding-left:3em;font-size:.94em}.article-toc li{counter-increment:toc-section}.article-toc li::marker{content:counters(toc-section,".") ". ";color:var(--color-ink-3);font-variant-numeric:tabular-nums}.article-toc li+li{margin-top:6px}.article-toc a{color:var(--color-ink-2);overflow-wrap:anywhere;text-underline-offset:3px}.article-toc a:hover{color:var(--color-ink);text-decoration:underline}.article-toc :is(summary,a):focus-visible{outline:2px solid var(--color-accent);outline-offset:4px}@media (min-width:1024px){.technical-article{padding-right:calc(var(--article-gutter) + 280px)}.technical-article .prose>p:not(:is(h1,h2,h3,h4,h5,h6)~p),.technical-article>.article-toc,.technical-article>header{width:calc(100% + 280px)}.technical-article .sidenote{float:right;clear:right;border:0;width:240px;margin:0 -280px 1em 0;padding:0;font-size:14.5px}}.prose .definition{border:1px solid var(--color-rule);background:var(--color-paper-2);text-align:left;-webkit-hyphens:manual;hyphens:manual;border-radius:2px;margin:1.5em 0;padding:1em 1.25em}.prose .definition .definition-label{font-family:var(--font-mono);letter-spacing:.02em;color:var(--color-ink-3);margin-right:.6em;font-size:11.5px}.prose pre{background:var(--color-paper-2);border:1px solid var(--color-rule);text-align:left;-webkit-hyphens:manual;hyphens:manual;white-space:pre;border-radius:2px;padding:1em;font-size:13px;overflow-x:auto}.prose code,.prose pre{font-family:var(--font-mono)}.prose code{font-size:.92em}@media (max-width:720px){.prose{text-align:left;font-size:15.5px}.prose .eq{grid-template-columns:1fr;gap:4px}.prose .eq:after{grid-column:1;justify-self:start}.prose .katex-display{min-width:0;max-width:100%;overflow:auto hidden}}.writing-article .prose{--font-serif:var(--font-newsreader),Georgia,serif;font-optical-sizing:auto;letter-spacing:-.01em;font-size:clamp(18px,1.6vw,20px);line-height:1.75}.writing-article .heading-display{font-family:var(--font-newsreader),Georgia,serif;font-optical-sizing:auto;font-size:clamp(30px,4vw,38px);font-weight:500;line-height:1.15}.writing-article .prose :is(h1,h2,h3,h4){font-family:var(--font-serif);scroll-margin-top:140px;font-weight:400}.technical-article .prose h2{gap:.45em}.technical-article .prose h2:before{font-family:var(--font-caveat),cursive;content:counter(prose-section) ")";color:var(--color-ink-2);font-size:32px;font-weight:500;line-height:1;transform:rotate(-6deg)}.writing-article .prose h2{font-size:23px}.writing-article .prose h3{font-size:21px}.writing-article .prose h4{font-size:20px}.technical-article .prose h2{font-size:28px}.technical-article .prose h3{font-size:24px;font-weight:500;line-height:1.3}.technical-article .prose h4{font-size:22px;font-weight:500;line-height:1.3}.technical-article .sidenote{font-family:var(--font-gentium-book-plus),Georgia,serif;font-size:16px;line-height:1.6}.technical-article .sidenote:before{font-size:13px}.technical-article .sidenote-marker{font-size:.7em}.writing-article .prose .eq:after,.writing-article .prose .sidenote:before,.writing-article .prose :is(.definition-label,sup a,.sidenote-marker){font-family:var(--font-caveat),cursive;letter-spacing:0;font-weight:500}.writing-article .prose .eq:after{font-size:18px}.writing-article .prose :is(figcaption,.sidenote){font-family:var(--font-newsreader),Georgia,serif;font-size:16px;font-weight:400}.writing-article .prose .sidenote:before,.writing-article .prose :is(sup a,.sidenote-marker){font-size:16px}.prose-note :is(h1,h2,h3,h4,h5,h6){font-weight:500}.prose-note h1{font-weight:400}.prose-note h2{display:block}.prose-note h2:before{content:none;counter-increment:none}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@keyframes pulse{50%{opacity:.5}}