@font-face{font-family:Caprasimo;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,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) format("woff2"),url(data:font/woff;base64,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) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Caprasimo;font-style:normal;font-display:swap;font-weight:400;src:url(/portfolio/assets/caprasimo-latin-400-normal-u3avbpQ7.woff2) format("woff2"),url(/portfolio/assets/caprasimo-latin-400-normal-CPOhBPz8.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Figtree;font-style:normal;font-display:swap;font-weight:400;src:url(/portfolio/assets/figtree-latin-ext-400-normal-CXAzuTZb.woff2) format("woff2"),url(/portfolio/assets/figtree-latin-ext-400-normal-Gbh-3PTk.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Figtree;font-style:normal;font-display:swap;font-weight:400;src:url(/portfolio/assets/figtree-latin-400-normal-g7Dtegnw.woff2) format("woff2"),url(/portfolio/assets/figtree-latin-400-normal-BD4aNku5.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Figtree;font-style:normal;font-display:swap;font-weight:600;src:url(/portfolio/assets/figtree-latin-ext-600-normal-DJlfifZj.woff2) format("woff2"),url(/portfolio/assets/figtree-latin-ext-600-normal-CQqsimlV.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Figtree;font-style:normal;font-display:swap;font-weight:600;src:url(/portfolio/assets/figtree-latin-600-normal-Cv_xCTDl.woff2) format("woff2"),url(/portfolio/assets/figtree-latin-600-normal-BM_oTo4n.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Figtree;font-style:normal;font-display:swap;font-weight:700;src:url(/portfolio/assets/figtree-latin-ext-700-normal-CS4sQkGV.woff2) format("woff2"),url(/portfolio/assets/figtree-latin-ext-700-normal-BoDi4KL2.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Figtree;font-style:normal;font-display:swap;font-weight:700;src:url(/portfolio/assets/figtree-latin-700-normal-th6qEP7c.woff2) format("woff2"),url(/portfolio/assets/figtree-latin-700-normal-BCCt2T1q.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--color-bg: #f5ead8;--color-surface: #ebddc5;--color-text: #201e1d;--color-accent: #c67139;--color-accent-2: #7a8a5e;--color-divider: color-mix(in srgb, #201e1d 16%, transparent);--color-neutral-100: #f9f4ed;--color-neutral-200: #eee7db;--color-neutral-300: #dcd3c4;--color-neutral-400: #c0b6a5;--color-neutral-500: #a19786;--color-neutral-600: #82796a;--color-neutral-700: #645c50;--color-neutral-800: #474238;--color-neutral-900: #2e2b25;--color-accent-100: #fff2eb;--color-accent-200: #ffe1d0;--color-accent-300: #ffc6a5;--color-accent-400: #f6a06b;--color-accent-500: #d67f48;--color-accent-600: #b2622d;--color-accent-700: #8c491a;--color-accent-800: #643312;--color-accent-900: #402310;--color-accent-2-100: #f0fae1;--color-accent-2-200: #e1eecc;--color-accent-2-300: #ccdbb2;--color-accent-2-400: #aebf92;--color-accent-2-500: #8fa073;--color-accent-2-600: #728157;--color-accent-2-700: #56633f;--color-accent-2-800: #3d472b;--color-accent-2-900: #272e1b;--font-heading: "Caprasimo", system-ui, sans-serif;--font-heading-weight: 400;--font-body: "Figtree", system-ui, sans-serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, monospace;--space-1: 4.4px;--space-2: 8.8px;--space-3: 13.2px;--space-4: 17.6px;--space-6: 26.4px;--space-8: 35.2px;--radius-sm: 8px;--radius-md: 16px;--radius-lg: 28px;--shadow-sm: 0 1px 2px color-mix(in srgb, #2e2b25 14%, transparent);--shadow-md: 0 3px 10px color-mix(in srgb, #2e2b25 16%, transparent);--shadow-lg: 0 12px 32px color-mix(in srgb, #2e2b25 22%, transparent);--ease-organic: cubic-bezier(.22, 1, .36, 1);--duration-fast: .22s;--duration-slow: .7s}*,*:before,*:after{box-sizing:border-box}body{margin:0;background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:15px;line-height:1.55;font-weight:400}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:var(--font-heading-weight);line-height:1.12;letter-spacing:-.015em;margin:0 0 var(--space-2)}h1{font-size:42px}h2{font-size:32px}h3{font-size:25px}h4{font-size:20px}h5{font-size:16px}h6{font-size:13px;letter-spacing:.08em;text-transform:uppercase}p{margin:0 0 var(--space-3)}a{color:var(--color-accent);text-underline-offset:3px}img{display:block;max-width:100%}figure{margin:0}figcaption{font-size:11px;margin-top:var(--space-1);color:color-mix(in srgb,var(--color-text) 55%,transparent)}.text-muted{color:color-mix(in srgb,var(--color-text) 55%,transparent)}:focus{outline:none}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}::selection{background:color-mix(in srgb,var(--color-accent) 30%,transparent)}.washed{filter:saturate(.6) contrast(.85) brightness(1.1) opacity(.94)}.hr{height:1px;border:0;margin:var(--space-4) 0;background:var(--color-divider)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;cursor:pointer;text-decoration:none;font-family:var(--font-heading);font-weight:var(--font-heading-weight);font-size:14px;line-height:1.2;color:var(--color-text);background:transparent;border:1px solid transparent;padding:var(--space-2) calc(var(--space-3) * 1.2);border-radius:var(--radius-md)}.btn svg{display:block}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--color-accent);color:var(--color-bg)}.btn-primary:hover{background:var(--color-accent-600)}.btn-primary:active{background:var(--color-accent-700)}.btn-secondary{border-color:var(--color-divider)}.btn-secondary:hover{background:color-mix(in srgb,var(--color-text) 7%,transparent)}.btn-secondary:active{background:color-mix(in srgb,var(--color-text) 14%,transparent)}.btn-ghost{color:var(--color-accent);padding-inline:var(--space-1)}.btn-ghost:hover{background:color-mix(in srgb,var(--color-accent) 10%,transparent)}.btn-ghost:active{background:color-mix(in srgb,var(--color-accent) 18%,transparent)}.btn-icon{width:36px;height:36px;padding:0}.btn-block{width:100%;margin-top:var(--space-2)}.field>label{display:block;font-size:12px;margin-bottom:5px;color:color-mix(in srgb,var(--color-text) 70%,transparent)}.input{width:100%;min-height:36px;padding:6px 10px;font:inherit;font-size:14px;color:var(--color-text);caret-color:var(--color-accent);background:var(--color-surface);border:1px solid var(--color-divider);border-radius:var(--radius-md)}.input:hover{border-color:color-mix(in srgb,var(--color-text) 45%,transparent)}.input:focus-visible{border-color:var(--color-accent);outline-offset:0}textarea.input{min-height:90px;resize:vertical}.card{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-surface)}.elev-sm{box-shadow:var(--shadow-sm)}.elev-md{box-shadow:var(--shadow-md)}.elev-lg{box-shadow:var(--shadow-lg)}.tag{display:inline-flex;align-items:center;font-size:11px;letter-spacing:.02em;padding:3px 10px;border-radius:calc(var(--radius-md) * .75)}.tag-accent{background:var(--color-accent-100);color:var(--color-accent-800)}.tag-accent-2{background:var(--color-accent-2-100);color:var(--color-accent-2-800)}.tag-neutral{background:var(--color-neutral-100);color:var(--color-neutral-800)}.tag-outline{border:1px solid var(--color-accent);color:var(--color-accent)}.tag-solid{background:var(--color-accent-2-600);color:var(--color-bg)}.tag-on-tint{background:var(--color-bg);color:var(--color-accent-2-800)}.card{border-radius:calc(var(--radius-lg) * 1.15)}.btn,.tag,.input{border-radius:999px}.input{padding-inline:14px}html{scroll-behavior:smooth}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--color-bg)}::-webkit-scrollbar-thumb{background:var(--color-neutral-300);border-radius:999px}@keyframes om-drift{0%,to{transform:translate(0) rotate(0)}33%{transform:translate(14px,-20px) rotate(6deg)}66%{transform:translate(-12px,12px) rotate(-5deg)}}@keyframes om-bob{0%,to{transform:translateY(0)}50%{transform:translateY(9px)}}.page{position:relative;min-height:100vh;background:var(--color-bg);color:var(--color-text);font-family:var(--font-body)}.backdrop{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;overflow:hidden}.backdrop__blob{position:absolute;transition:transform .6s var(--ease-organic)}.backdrop__blob--one{top:-140px;right:-120px;width:520px;height:520px;border-radius:62% 38% 47% 53%/55% 48% 52% 45%;background:var(--color-accent-200);opacity:.55;filter:blur(6px);transform:translate3d(calc(var(--px, 0) * 26px),calc(var(--py, 0) * 26px),0);animation:om-drift 26s ease-in-out infinite}.backdrop__blob--two{bottom:-180px;left:180px;width:600px;height:600px;border-radius:44% 56% 60% 40%/48% 42% 58% 52%;background:var(--color-accent-2-200);opacity:.5;filter:blur(10px);transform:translate3d(calc(var(--px, 0) * -34px),calc(var(--py, 0) * -22px),0);transition-duration:.7s;animation:om-drift 34s ease-in-out infinite reverse}.backdrop__blob--three{top:38%;left:-90px;width:280px;height:280px;border-radius:50%;background:var(--color-accent-100);opacity:.7;filter:blur(4px);transform:translate3d(calc(var(--px, 0) * 16px),calc(var(--py, 0) * -16px),0);transition-duration:.5s}[data-reveal=pending]{opacity:0;transform:translateY(22px)}[data-reveal=in]{opacity:1;transform:none;transition:opacity var(--duration-slow) var(--ease-organic),transform var(--duration-slow) var(--ease-organic)}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}[data-reveal=pending]{opacity:1;transform:none}}.article__backdrop-blob{position:fixed;pointer-events:none}.article__backdrop-blob--one{top:-160px;right:-140px;width:520px;height:520px;border-radius:62% 38% 47% 53%/55% 48% 52% 45%;background:var(--color-accent-200);opacity:.5;filter:blur(6px)}.article__backdrop-blob--two{bottom:-220px;left:-120px;width:480px;height:480px;border-radius:44% 56% 60% 40%/48% 42% 58% 52%;background:var(--color-accent-2-200);opacity:.45;filter:blur(10px)}.article{position:relative;max-width:720px;margin:0 auto;padding:56px 32px 110px}.article__back{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--color-neutral-700);text-decoration:none}.article__back:hover{color:var(--color-accent-700)}.article__eyebrow{display:flex;align-items:center;gap:12px;margin-top:40px;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--color-neutral-600);font-weight:600}.article__eyebrow-rule{width:24px;height:2px;border-radius:999px;background:var(--color-accent)}.article__title{margin:16px 0 0;font-size:clamp(34px,5.6vw,56px);line-height:1.06;letter-spacing:-.03em;text-wrap:pretty}.article__title em{font-style:normal;color:var(--color-accent-700)}.article__dek{margin:16px 0 0;font-family:var(--font-mono);font-size:15px;color:var(--color-neutral-600)}.article__body{margin-top:40px}.article__body p{margin:0 0 22px;font-size:18px;line-height:1.72;color:var(--color-neutral-800);text-wrap:pretty}.article__lede{font-size:20px;color:var(--color-accent-900)}.article__body h2{margin:44px 0 16px;font-size:27px}.article__body code{font-family:var(--font-mono);font-size:.88em;background:var(--color-surface);padding:2px 8px;border-radius:999px}.article__body pre{margin:0 0 22px;padding:22px 24px;border-radius:var(--radius-lg);background:var(--color-neutral-900);color:var(--color-neutral-200);font-family:var(--font-mono);font-size:14.5px;line-height:1.75;overflow-x:auto;box-shadow:var(--shadow-md)}.article__body pre code{background:none;padding:0;border-radius:0;font-size:inherit}.article__body pre .c{color:var(--color-accent-400)}.article__body blockquote{margin:0 0 22px;padding:4px 0 4px 22px;border-left:3px solid var(--color-accent-300);font-size:19px;line-height:1.6;color:var(--color-accent-800)}.article__body ol{margin:0 0 22px;padding-left:24px;display:flex;flex-direction:column;gap:18px;font-size:18px;line-height:1.7;color:var(--color-neutral-800)}.article__foot{margin-top:56px;padding-top:26px;border-top:1px solid var(--color-divider);display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;align-items:center}.article__sibling{display:inline-flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:var(--color-accent-700);text-decoration:none}.article__sibling:hover{color:var(--color-accent-800)}.chain{margin:0 0 26px;display:flex;flex-direction:column;gap:0}.chain__node{padding:16px 20px;border-radius:var(--radius-lg);background:var(--color-surface)}.chain__node--found{background:var(--color-accent-200);border:2px solid var(--color-accent);display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.chain__node--sage{background:var(--color-accent-2-100)}.chain__node--base{background:var(--color-neutral-200)}.chain__name{font-family:var(--font-heading);font-size:17px}.chain__node--found .chain__name{color:var(--color-accent-900)}.chain__node--sage .chain__name{color:var(--color-accent-2-900)}.chain__note{font-family:var(--font-mono);font-size:13px;color:var(--color-neutral-600);margin-top:2px}.chain__node--found .chain__note{color:var(--color-accent-800)}.chain__node--sage .chain__note{color:var(--color-accent-2-800)}.chain__step{padding:9px 0 9px 24px;font-family:var(--font-mono);font-size:12.5px;color:var(--color-neutral-600)}.chain__terminal{padding:10px 0 0 24px;font-family:var(--font-mono);font-size:12.5px;color:var(--color-neutral-500)}.chain__caption{margin-top:14px;font-family:var(--font-mono);font-size:13px;color:var(--color-neutral-700)}.chain__tag{background:var(--color-accent);color:var(--color-bg)}@media(max-width:700px){.article{padding:30px 20px 72px}.article__body pre{font-size:13px}}
