@import url("https://fonts.googleapis.com/css2?family=Newsreader:ital,opsz,wght@0,6..72,400;0,6..72,500;0,6..72,600;1,6..72,400;1,6..72,500&family=Space+Grotesk:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap");

/*
! tailwindcss v3.3.3 | MIT License | https://tailwindcss.com
*/*,:after,:before{box-sizing:border-box;border:0 solid}:after,:before{--tw-content:""}html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal}body{line-height:inherit}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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-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,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}*,:after,:before{--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:rgba(59,130,246,.5);--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: }::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:rgba(59,130,246,.5);--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: }.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.prose{color:var(--tw-prose-body);max-width:65ch}.prose :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-lead);font-size:1.25em;line-height:1.6;margin-top:1.2em;margin-bottom:1.2em}.prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-links);text-decoration:underline;font-weight:500}.prose :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-bold);font-weight:600}.prose :where(a strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal;margin-top:1.25em;margin-bottom:1.25em;padding-left:1.625em}.prose :where(ol[type=A]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal}.prose :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:disc;margin-top:1.25em;margin-bottom:1.25em;padding-left:1.625em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{font-weight:400;color:var(--tw-prose-counters)}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-bullets)}.prose :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.25em}.prose :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){border-color:var(--tw-prose-hr);border-top-width:1px;margin-top:3em;margin-bottom:3em}.prose :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:500;font-style:italic;color:var(--tw-prose-quotes);border-left-width:.25rem;border-left-color:var(--tw-prose-quote-borders);quotes:"\201C""\201D""\2018""\2019";margin-top:1.6em;margin-bottom:1.6em;padding-left:1em}.prose :where(blockquote p:first-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:open-quote}.prose :where(blockquote p:last-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:close-quote}.prose :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:800;font-size:2.25em;margin-top:0;margin-bottom:.8888889em;line-height:1.1111111}.prose :where(h1 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:900;color:inherit}.prose :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:700;font-size:1.5em;margin-top:2em;margin-bottom:1em;line-height:1.3333333}.prose :where(h2 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:800;color:inherit}.prose :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;font-size:1.25em;margin-top:1.6em;margin-bottom:.6em;line-height:1.6}.prose :where(h3 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700;color:inherit}.prose :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.5em;margin-bottom:.5em;line-height:1.5}.prose :where(h4 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700;color:inherit}.prose :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){display:block;margin-top:2em;margin-bottom:2em}.prose :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:500;font-family:inherit;color:var(--tw-prose-kbd);box-shadow:0 0 0 1px rgb(var(--tw-prose-kbd-shadows)/10%),0 3px 0 rgb(var(--tw-prose-kbd-shadows)/10%);font-size:.875em;border-radius:.3125rem;padding:.1875em .375em}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-code);font-weight:600;font-size:.875em}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:"`"}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:"`"}.prose :where(a code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h1 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.875em}.prose :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.9em}.prose :where(h4 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-pre-code);background-color:var(--tw-prose-pre-bg);overflow-x:auto;font-weight:400;font-size:.875em;line-height:1.7142857;margin-top:1.7142857em;margin-bottom:1.7142857em;border-radius:.375rem;padding:.8571429em 1.1428571em}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)){background-color:transparent;border-width:0;border-radius:0;padding:0;font-weight:inherit;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:none}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:none}.prose :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){width:100%;table-layout:auto;text-align:left;margin-top:2em;margin-bottom:2em;font-size:.875em;line-height:1.7142857}.prose :where(thead):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-th-borders)}.prose :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;vertical-align:bottom;padding-right:.5714286em;padding-bottom:.5714286em;padding-left:.5714286em}.prose :where(tbody tr):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-td-borders)}.prose :where(tbody tr:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:0}.prose :where(tbody td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:baseline}.prose :where(tfoot):not(:where([class~=not-prose],[class~=not-prose] *)){border-top-width:1px;border-top-color:var(--tw-prose-th-borders)}.prose :where(tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:top}.prose :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-captions);font-size:.875em;line-height:1.4285714;margin-top:.8571429em}.prose{--tw-prose-body:#374151;--tw-prose-headings:#111827;--tw-prose-lead:#4b5563;--tw-prose-links:#111827;--tw-prose-bold:#111827;--tw-prose-counters:#6b7280;--tw-prose-bullets:#d1d5db;--tw-prose-hr:#e5e7eb;--tw-prose-quotes:#111827;--tw-prose-quote-borders:#e5e7eb;--tw-prose-captions:#6b7280;--tw-prose-kbd:#111827;--tw-prose-kbd-shadows:17 24 39;--tw-prose-code:#111827;--tw-prose-pre-code:#e5e7eb;--tw-prose-pre-bg:#1f2937;--tw-prose-th-borders:#d1d5db;--tw-prose-td-borders:#e5e7eb;--tw-prose-invert-body:#d1d5db;--tw-prose-invert-headings:#fff;--tw-prose-invert-lead:#9ca3af;--tw-prose-invert-links:#fff;--tw-prose-invert-bold:#fff;--tw-prose-invert-counters:#9ca3af;--tw-prose-invert-bullets:#4b5563;--tw-prose-invert-hr:#374151;--tw-prose-invert-quotes:#f3f4f6;--tw-prose-invert-quote-borders:#374151;--tw-prose-invert-captions:#9ca3af;--tw-prose-invert-kbd:#fff;--tw-prose-invert-kbd-shadows:255 255 255;--tw-prose-invert-code:#fff;--tw-prose-invert-pre-code:#d1d5db;--tw-prose-invert-pre-bg:rgba(0,0,0,.5);--tw-prose-invert-th-borders:#4b5563;--tw-prose-invert-td-borders:#374151;font-size:1rem;line-height:1.75}.prose :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;margin-bottom:.5em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-left:.375em}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-left:.375em}.prose :where(.prose>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(.prose>ul>li>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ul>li>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(.prose>ol>li>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ol>li>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-left:1.625em}.prose :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-left:0}.prose :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-right:0}.prose :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding:.5714286em}.prose :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-left:0}.prose :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-right:0}.prose :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(.prose>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(.prose>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.visible{visibility:visible}.static{position:static}.absolute{position:absolute}.relative{position:relative}.m-0{margin:0}.block{display:block}.flex{display:flex}.hidden{display:none}.basis-1\/3{flex-basis:33.333333%}.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))}.resize{resize:both}.flex-col{flex-direction:column}.items-stretch{align-items:stretch}.gap-8{gap:2rem}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.border{border-width:1px}.text-center{text-align:center}.italic{font-style:italic}.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)}.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,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.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:#0b0c10;--bg-2:#14161c;--card:#16181f;--ink:#ecebe4;--ink-2:#c4c3ba;--muted:#8b8a80;--faint:#5f5e57;--line:hsla(0,0%,100%,.1);--line-soft:hsla(0,0%,100%,.055);--grid:hsla(0,0%,100%,.05);--accent:#16c785;--accent-bright:color-mix(in srgb,var(--accent) 72%,#fff);--accent-ink:color-mix(in srgb,var(--accent) 58%,#fff);--accent-soft:color-mix(in srgb,var(--accent) 15%,transparent);--accent-glow:color-mix(in srgb,var(--accent) 34%,transparent);--radius:16px;--radius-s:10px;--maxw:1180px;--serif:"Newsreader",Georgia,"Times New Roman",serif;--sans:"Space Grotesk",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--mono:"JetBrains Mono",ui-monospace,"SF Mono",Menlo,monospace;--ease:cubic-bezier(0.22,1,0.36,1);--cursor:1;color-scheme:dark}:root[data-theme=light],html[data-theme=light]{--bg:#f3f2ed;--bg-2:#faf9f5;--card:#fff;--ink:#1b1a16;--ink-2:#3a392f;--muted:#75736a;--faint:#a3a199;--line:rgba(27,26,22,.1);--line-soft:rgba(27,26,22,.06);--grid:rgba(27,26,22,.045);--accent:#0f9b6b;--accent-bright:color-mix(in srgb,var(--accent) 80%,#fff);--accent-ink:color-mix(in srgb,var(--accent) 82%,#000);--accent-soft:color-mix(in srgb,var(--accent) 11%,transparent);--accent-glow:color-mix(in srgb,var(--accent) 30%,transparent);color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden;transition:background-color .35s var(--ease),color .35s var(--ease);display:flex;flex-direction:column;min-height:100vh}.page-content{flex:1 0 auto}.bg-grid{position:fixed;inset:0;z-index:-2;background-color:var(--bg);background-image:radial-gradient(var(--grid) 1.4px,transparent 1.4px);background-size:26px 26px;background-position:50%;-webkit-mask-image:radial-gradient(ellipse 130% 92% at 50% 0,#000 50%,transparent 100%);mask-image:radial-gradient(ellipse 130% 92% at 50% 0,#000 50%,transparent 100%);transition:background-color .35s var(--ease)}.bg-glow{position:fixed;z-index:-1;width:60vw;height:60vw;max-width:760px;max-height:760px;top:-18vw;left:50%;transform:translateX(-50%);background:radial-gradient(circle at center,var(--accent-glow),transparent 62%);filter:blur(36px);pointer-events:none;animation:glowdrift 14s var(--ease) infinite alternate;opacity:.85}@keyframes glowdrift{0%{transform:translateX(-50%) translateY(0) scale(1);opacity:.7}to{transform:translateX(-46%) translateY(26px) scale(1.12);opacity:.95}}.wrap{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 28px}section{position:relative}.site-header{position:sticky;top:0;z-index:50;backdrop-filter:blur(10px);background:color-mix(in srgb,var(--bg) 72%,transparent);border-bottom:1px solid transparent;transition:border-color .3s,background .3s}.site-header.scrolled{border-bottom-color:var(--line)}.nav{height:70px;display:flex;justify-content:space-between;gap:20px}.brand,.nav{align-items:center}.brand{font-family:var(--mono);font-size:15px;font-weight:500;color:var(--ink);text-decoration:none;display:inline-flex;gap:9px;letter-spacing:-.01em}.brand .dot{width:9px;height:9px;border-radius:50%;background:var(--accent-bright);box-shadow:0 0 0 4px var(--accent-soft)}.brand .lt{color:var(--accent)}.nav-links{display:flex;align-items:center;gap:4px}.nav-links a{font-family:var(--mono);font-size:13.5px;letter-spacing:.01em;color:var(--muted);text-decoration:none;padding:8px 14px;border-radius:99px;transition:color .2s,background .2s}.nav-links a:hover{color:var(--ink);background:var(--line-soft)}.nav-links a.active{color:var(--accent-ink);background:var(--accent-soft)}.nav-cta{font-family:var(--mono);font-size:13px;text-decoration:none;color:var(--bg-2);background:var(--ink);padding:9px 16px;border-radius:99px;transition:transform .2s var(--ease),background .2s}.nav-cta:hover{background:var(--accent-ink);transform:translateY(-1px)}.menu-btn{display:none}.eyebrow{font-family:var(--mono);font-size:13px;letter-spacing:.02em;color:var(--accent);display:inline-flex;align-items:center;gap:8px;margin:0 0 22px}.eyebrow:before{content:"—";color:var(--accent)}h1,h2,h3{font-family:var(--serif);font-weight:500;letter-spacing:-.015em;line-height:1.04;color:var(--ink);margin:0}.display{font-size:clamp(2.9rem,7.4vw,6.4rem);line-height:.98;letter-spacing:-.025em}.display em{font-style:italic;color:var(--accent);font-weight:500}h2.section-title{font-size:clamp(2rem,4.6vw,3.4rem);letter-spacing:-.02em}h2.section-title em{font-style:italic;color:var(--accent)}.lead{font-family:var(--sans);font-size:clamp(1.05rem,1.7vw,1.32rem);line-height:1.55;color:var(--ink-2);max-width:56ch;font-weight:400}.btn{font-family:var(--mono);font-size:14px;display:inline-flex;align-items:center;gap:10px;padding:13px 22px;border-radius:99px;text-decoration:none;cursor:pointer;border:1px solid transparent;transition:transform .2s var(--ease),background .2s,border-color .2s,box-shadow .25s}.btn .arrow{transition:transform .25s var(--ease)}.btn:hover .arrow{transform:translateX(4px)}.btn-primary{background:var(--accent);color:#fff;box-shadow:0 8px 24px -10px var(--accent-glow)}.btn-primary:hover{background:var(--accent-ink);transform:translateY(-2px);box-shadow:0 14px 32px -10px var(--accent-glow)}.btn-ghost{background:transparent;color:var(--ink);border-color:var(--line)}.btn-ghost:hover{border-color:var(--ink);transform:translateY(-2px)}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{font-family:var(--mono);font-size:12.5px;color:var(--ink-2);background:var(--card);border:1px solid var(--line);border-radius:99px;padding:6px 13px;transition:border-color .2s,color .2s,transform .2s}.chip:hover{border-color:var(--accent);color:var(--accent-ink);transform:translateY(-1px)}.chip.accent{color:var(--accent-ink);background:var(--accent-soft);border-color:transparent}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);transition:transform .3s var(--ease),border-color .3s,box-shadow .3s}.card:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--line));box-shadow:0 22px 48px -28px rgba(27,26,22,.3);transform:translateY(-3px)}.pill{font-family:var(--mono);font-size:11.5px;letter-spacing:.03em;display:inline-flex;align-items:center;gap:7px;padding:5px 11px;border-radius:99px;text-transform:uppercase}.pill.live{color:var(--accent-ink);background:var(--accent-soft)}.pill .blink{width:7px;height:7px;border-radius:50%;background:var(--accent-bright);box-shadow:0 0 0 0 var(--accent-glow);animation:blink 1.8s infinite}@keyframes blink{0%{box-shadow:0 0 0 0 var(--accent-glow)}70%{box-shadow:0 0 0 7px transparent}to{box-shadow:0 0 0 0 transparent}}.section-pad{padding:clamp(72px,11vw,140px) 0}.section-head{margin-bottom:54px;max-width:720px}.site-footer{border-top:1px solid var(--line);margin-top:40px;padding:60px 0 48px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px;align-items:start}.footer-grid h4{font-family:var(--mono);font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--faint);margin:0 0 16px;font-weight:500}.footer-grid a{display:block;color:var(--muted);text-decoration:none;font-size:14.5px;padding:5px 0;transition:color .2s,transform .2s}.footer-grid a:hover{color:var(--accent-ink);transform:translateX(3px)}.foot-soc{display:flex;align-items:center;gap:14px}.foot-soc .ico{font-size:16px;color:var(--muted);transition:color .2s}.foot-soc:hover .ico{color:var(--accent)}.footer-big{font-family:var(--serif);font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.1;margin:0 0 18px}.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:48px;padding-top:24px;border-top:1px solid var(--line-soft);font-family:var(--mono);font-size:12.5px;color:var(--faint);flex-wrap:wrap}.reveal{opacity:0;transform:translateY(26px);transition:opacity .8s var(--ease),transform .8s var(--ease)}.reveal.in{opacity:1;transform:none}.reveal[data-d="1"]{transition-delay:.08s}.reveal[data-d="2"]{transition-delay:.16s}.reveal[data-d="3"]{transition-delay:.24s}.reveal[data-d="4"]{transition-delay:.32s}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}.bg-glow{animation:none}}.photo-ph{position:relative;overflow:hidden;background-color:var(--bg-2);background-image:repeating-linear-gradient(135deg,var(--line-soft) 0 2px,transparent 2px 11px);border:1px solid var(--line);display:flex;align-items:center;justify-content:center}.photo-ph span{font-size:12px;letter-spacing:.04em}.meta,.photo-ph span{font-family:var(--mono);color:var(--faint)}.meta{font-size:12.5px;letter-spacing:.01em}@media (max-width:860px){.footer-grid{grid-template-columns:1fr 1fr}.nav-links{display:none}.menu-btn{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:10px;background:var(--card);border:1px solid var(--line);cursor:pointer;color:var(--ink)}}@media (max-width:560px){.wrap{padding:0 18px}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column;align-items:flex-start}}.m-sheet{position:fixed;inset:0;z-index:60;background:color-mix(in srgb,var(--bg) 96%,transparent);backdrop-filter:blur(14px);display:none;flex-direction:column;padding:22px}.m-sheet.open{display:flex}.m-sheet .top{display:flex;justify-content:space-between;align-items:center;height:48px}.m-sheet nav{display:flex;flex-direction:column;gap:6px;margin-top:30px}.m-sheet nav a{font-family:var(--serif);font-size:2rem;color:var(--ink);text-decoration:none;padding:10px 0;border-bottom:1px solid var(--line-soft)}.m-sheet nav a:hover{color:var(--accent)}.ico{width:1em;height:1em;display:inline-block;vertical-align:-.125em;flex:none;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.ico.fill{fill:currentColor;stroke:none}.nav-right{display:flex;align-items:center;gap:10px}.status-badge{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;font-family:var(--mono);font-size:12px;color:var(--muted);border:1px solid var(--line);border-radius:99px;padding:7px 13px;background:var(--card)}.status-badge .live-dot{width:7px;height:7px;border-radius:50%;background:var(--accent-bright);box-shadow:0 0 0 3px var(--accent-soft);animation:blink 1.8s infinite}.theme-toggle{width:42px;height:42px;flex:none;display:inline-flex;align-items:center;justify-content:center;border-radius:11px;cursor:pointer;background:var(--card);border:1px solid var(--line);color:var(--ink);transition:border-color .2s,transform .2s var(--ease),color .2s;font-size:18px}.theme-toggle:hover{border-color:var(--accent);color:var(--accent-ink);transform:translateY(-1px)}.theme-toggle .moon,html[data-theme=dark] .theme-toggle .sun{display:none}html[data-theme=dark] .theme-toggle .moon{display:inline-block}.brand .mark{color:var(--accent)}@media (hover:hover) and (pointer:fine){html.cursor-on,html.cursor-on *{cursor:none!important}.cursor-dot,.cursor-ring{position:fixed;top:0;left:0;z-index:9999;pointer-events:none;border-radius:50%}.cursor-dot{width:7px;height:7px;margin:-3.5px 0 0 -3.5px;background:var(--accent);transition:opacity .25s,transform .12s ease-out}.cursor-ring{width:34px;height:34px;margin:-17px 0 0 -17px;border:1.5px solid color-mix(in srgb,var(--accent) 60%,transparent);transition:width .22s var(--ease),height .22s var(--ease),margin .22s var(--ease),background .22s,border-color .22s,opacity .25s}html.cursor-active .cursor-ring{width:56px;height:56px;margin:-28px 0 0 -28px;background:var(--accent-soft);border-color:transparent}html.cursor-active .cursor-dot{transform:scale(0)}html.cursor-hidden .cursor-dot,html.cursor-hidden .cursor-ring{opacity:0}}@media (max-width:860px){.nav-cta,.status-badge{display:none}}.dots-canvas{position:fixed;inset:0;z-index:-2;pointer-events:none;-webkit-mask-image:radial-gradient(ellipse 130% 92% at 50% 0,#000 50%,transparent 100%);mask-image:radial-gradient(ellipse 130% 92% at 50% 0,#000 50%,transparent 100%)}html.dots-live .bg-grid{background-image:none}.nav-links a{display:inline-flex;align-items:center;gap:7px}.nav-links a .ico{font-size:15px;opacity:.85}.pslider{position:relative;width:100%;overflow:hidden}.pslide{position:absolute;inset:0;opacity:0}.pslide:first-child{opacity:1}.pslide img{-o-object-fit:cover;object-fit:cover;-o-object-position:top center;object-position:top center;display:block}.pslide .photo-ph,.pslide img{width:100%;height:100%}.pslider-dots{position:absolute;left:50%;bottom:12px;transform:translateX(-50%);display:flex;gap:7px;z-index:3;background:color-mix(in srgb,var(--card) 70%,transparent);backdrop-filter:blur(6px);padding:6px 9px;border-radius:99px;border:1px solid var(--line-soft)}.pslider-dots button{width:7px;height:7px;border-radius:50%;border:none;cursor:pointer;padding:0;background:var(--faint);transition:background .25s,width .25s}.pslider-dots button.on{background:var(--accent);width:18px;border-radius:4px}.pslider{cursor:zoom-in}.pslider-zoom-btn{position:absolute;top:14px;right:14px;z-index:10;width:38px;height:38px;border-radius:50%;background:color-mix(in srgb,var(--card) 80%,transparent);border:1px solid var(--line-soft);backdrop-filter:blur(8px);color:var(--ink);display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transform:scale(.9);transition:opacity .25s var(--ease),transform .25s var(--ease),background .2s;box-shadow:0 4px 12px rgba(0,0,0,.12)}.pslider:hover .pslider-zoom-btn{opacity:1;transform:scale(1)}.pslider-zoom-btn:hover{background:var(--card);color:var(--accent)}.pslider-lightbox{position:fixed;inset:0;z-index:9999;background:rgba(11,12,16,.9);backdrop-filter:blur(16px);display:flex;flex-direction:column;align-items:center;justify-content:center;animation:pslider-fade-in .25s var(--ease) forwards}@keyframes pslider-fade-in{0%{opacity:0}to{opacity:1}}.pslider-lightbox-close{position:absolute;top:24px;right:28px;width:44px;height:44px;border-radius:50%;background:hsla(0,0%,100%,.08);border:1px solid hsla(0,0%,100%,.1);color:#fff;font-size:20px;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10002;transition:background .2s,transform .2s}.pslider-lightbox-close:hover{background:hsla(0,0%,100%,.15);transform:scale(1.05)}.pslider-lightbox-content{position:relative;width:90vw;height:80vh;max-width:1400px;border-radius:12px;border:1px solid hsla(0,0%,100%,.1);background:#000;box-shadow:0 20px 50px rgba(0,0,0,.5)}.pslider-lightbox-content,.pslider-lightbox-img-wrap{display:flex;align-items:center;justify-content:center;overflow:hidden}.pslider-lightbox-img-wrap{width:100%;height:100%}.pslider-lightbox-img-wrap img{max-width:100%;max-height:100%;-o-object-fit:contain;object-fit:contain;transition:transform .2s ease-out;transform-origin:center center}.pslider-lightbox-hint{position:absolute;bottom:24px;color:hsla(0,0%,100%,.6);font-family:var(--mono);font-size:13px;background:rgba(0,0,0,.6);padding:6px 14px;border-radius:99px;pointer-events:none;letter-spacing:.02em;border:1px solid hsla(0,0%,100%,.1)}.hero-grid{display:grid;grid-template-columns:1.35fr .85fr;gap:56px;align-items:center}.hero-copy{min-width:0}.hero-actions{display:flex;gap:14px;margin-top:30px;flex-wrap:wrap}.hero-type{margin:18px 0 0;font-family:var(--mono);font-size:clamp(.95rem,1.5vw,1.15rem);color:var(--accent-ink)}.caret-line{display:inline-flex;align-items:baseline}.caret{display:inline-block;width:9px;height:1.05em;background:var(--accent);margin-left:3px;transform:translateY(2px);animation:caret 1s steps(1) infinite}@keyframes caret{50%{opacity:0}}.hero-stats{display:flex;gap:38px;margin-top:44px;flex-wrap:wrap}.stat{display:flex;flex-direction:column;gap:4px}.stat .num{font-family:var(--serif);font-size:2.4rem;line-height:1;color:var(--ink);font-weight:500}.stat .lbl{font-family:var(--mono);font-size:12px;color:var(--muted);letter-spacing:.01em}.hero-side{display:flex;flex-direction:column;gap:16px}.photo-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:12px}.photo-meta{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;padding:14px 8px 6px}.now-card{background:var(--ink);color:var(--bg-2);border-radius:var(--radius);padding:20px 22px}.now-card .meta{color:var(--accent-bright)}.now-title{font-family:var(--serif);font-size:1.5rem;margin:6px 0 4px;color:#fff}.now-sub{font-size:13.5px;color:#c9c8bf;margin:0 0 12px;line-height:1.45}.now-link{font-family:var(--mono);font-size:13px;color:var(--accent-bright);text-decoration:none}.now-link:hover{color:#fff}:root[data-theme=dark] .now-card,html[data-theme=dark] .now-card{background:linear-gradient(155deg,color-mix(in srgb,var(--accent) 18%,#0e1714),#0e1714 72%);border:1px solid color-mix(in srgb,var(--accent) 24%,var(--line))}.marquee{overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:16px 0;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}.marquee-track{display:inline-flex;align-items:center;gap:18px;white-space:nowrap;animation:scroll-x 34s linear infinite;font-family:var(--mono);font-size:14px;color:var(--ink-2)}.marquee-track i{color:var(--accent);font-style:normal}.marquee:hover .marquee-track{animation-play-state:paused}@keyframes scroll-x{to{transform:translateX(-50%)}}.feature{display:grid;grid-template-columns:1.05fr 1fr;overflow:hidden}.feature-media{padding:26px;background:linear-gradient(160deg,var(--accent-soft),transparent 70%);display:flex;align-items:center;border-right:1px solid var(--line-soft)}.browser{width:100%;border-radius:12px;overflow:hidden;border:1px solid var(--line);box-shadow:0 30px 60px -34px rgba(27,26,22,.4);background:var(--card)}.browser-bar{display:flex;align-items:center;gap:7px;padding:11px 14px;border-bottom:1px solid var(--line-soft);background:var(--bg-2)}.bd{width:11px;height:11px;border-radius:50%}.bd.r{background:#f5685f}.bd.y{background:#fbbf3b}.bd.g{background:#34c759}.browser-url{font-family:var(--mono);font-size:12px;color:var(--muted);background:var(--card);border:1px solid var(--line-soft);border-radius:6px;padding:3px 12px;margin-left:8px}.feature-body{padding:38px}.feature-lede{font-size:1.08rem;line-height:1.55;color:var(--ink-2);margin:0 0 22px}.feature-lede strong{color:var(--ink)}.feature-list{list-style:none;padding:0;margin:0 0 4px;display:grid;gap:14px}.feature-list li{position:relative;padding-left:26px;font-size:14.5px;line-height:1.5;color:var(--muted)}.feature-list li b{color:var(--ink);font-weight:600}.feature-list li:before{content:"";position:absolute;left:4px;top:8px;width:7px;height:7px;border-radius:2px;background:var(--accent);transform:rotate(45deg)}.timeline{display:grid;gap:16px}.tl-item{display:grid;grid-template-columns:180px 1fr;gap:24px;padding:28px 30px;align-items:start}.tl-when{padding-top:4px}.tl-date{cursor:default}.tl-main h3{font-size:1.7rem;margin-bottom:4px}.tl-org{font-family:var(--mono);font-size:13px;color:var(--accent-ink);margin:0 0 12px}.tl-desc{margin:0;font-size:15px;color:var(--muted);line-height:1.55;max-width:64ch}.skills-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.skill-col{padding:26px 26px 30px}.skill-head{color:var(--accent);margin:0 0 18px}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}.about-body p{font-size:1.05rem;line-height:1.65;color:var(--ink-2);margin:0 0 18px}.about-body strong{color:var(--ink)}.blog-list{display:grid;gap:12px}.blog-row{display:grid;grid-template-columns:110px 1fr auto auto;gap:22px;align-items:center;padding:22px 28px;text-decoration:none}.blog-tag{font-family:var(--mono);font-size:11.5px;color:var(--accent-ink);background:var(--accent-soft);border-radius:99px;padding:5px 12px;text-align:center;justify-self:start}.blog-title{font-family:var(--serif);font-size:1.35rem;color:var(--ink);line-height:1.2}.blog-date{white-space:nowrap}.blog-arrow{font-family:var(--mono);color:var(--faint);transition:transform .25s var(--ease),color .25s}.blog-row:hover .blog-arrow{color:var(--accent);transform:translateX(5px)}.blog-row:hover .blog-title{color:var(--accent-ink)}.cta-card{background:var(--card);border:1px solid var(--line);border-radius:24px;padding:clamp(44px,6vw,76px) 32px;position:relative;overflow:hidden}.cta-card:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 60% 80% at 50% 0,var(--accent-soft),transparent 70%);pointer-events:none}@media (max-width:960px){.hero-grid{grid-template-columns:1fr;gap:40px}.hero-side{flex-direction:row}.hero-side>*{flex:1}.feature{grid-template-columns:1fr}.feature-media{border-right:none;border-bottom:1px solid var(--line-soft)}.about-grid{gap:28px}.about-grid,.skills-grid{grid-template-columns:1fr}}@media (max-width:680px){.hero-side{flex-direction:column}.tl-item{grid-template-columns:1fr;gap:12px}.blog-row{grid-template-columns:1fr auto;row-gap:10px}.blog-tag{grid-row:1}.blog-title{grid-column:1/-1;grid-row:2}.feature-body{padding:28px 22px}.hero-stats{gap:26px}}.writing-head{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:26px;padding-bottom:18px;border-bottom:1px solid var(--line);flex-wrap:wrap}.post-list{display:flex;flex-direction:column}.post-row{display:grid;grid-template-columns:60px 1fr auto;gap:28px;align-items:start;padding:30px 8px;text-decoration:none;color:inherit;border-bottom:1px solid var(--line-soft);transition:padding .3s var(--ease),background .25s;position:relative}.post-row:after{content:"";position:absolute;left:0;bottom:-1px;height:1px;width:0;background:var(--accent);transition:width .4s var(--ease)}.post-row:hover{padding-left:18px;padding-right:18px}.post-row:hover:after{width:100%}.pr-no{font-family:var(--mono);font-size:14px;color:var(--accent);padding-top:7px}.pr-main{min-width:0}.pr-title{font-family:var(--serif);font-size:clamp(1.35rem,2.5vw,1.85rem);line-height:1.18;margin:0 0 10px;transition:color .2s}.post-row:hover .pr-title{color:var(--accent-ink)}.pr-excerpt{font-size:14.5px;color:var(--muted);line-height:1.55;margin:0 0 14px;max-width:72ch}.pr-tags{display:flex;flex-wrap:wrap;gap:7px}.pr-tags span{font-family:var(--mono);font-size:11px;color:var(--ink-2);border:1px solid var(--line);border-radius:99px;padding:4px 11px}.pr-meta{display:flex;flex-direction:column;align-items:flex-end;gap:4px;text-align:right;padding-top:5px;white-space:nowrap}.pr-read{font-size:12.5px;color:var(--ink-2)}.pr-date,.pr-read{font-family:var(--mono)}.pr-date{font-size:12px;color:var(--faint)}.pr-arrow{margin-top:8px;font-size:18px;color:var(--faint);display:inline-flex;transition:transform .25s var(--ease),color .25s}.post-row:hover .pr-arrow{color:var(--accent);transform:translate(3px,-3px)}@media (max-width:640px){.post-row{grid-template-columns:1fr;gap:8px;padding:24px 6px}.pr-no{padding-top:0}.pr-meta{flex-direction:row;align-items:center;gap:12px;text-align:left;padding-top:6px}.pr-arrow{margin-top:0;margin-left:auto}.post-row:hover{padding-left:10px;padding-right:10px}}.feat-stack{display:grid;gap:22px}.feat-card{display:grid;grid-template-columns:.92fr 1.08fr;overflow:hidden}.feat-card:nth-child(2n){grid-template-columns:1.08fr .92fr}.feat-card:nth-child(2n) .feat-thumb{order:2;border-left:1px solid var(--line-soft);border-right:none}.feat-thumb{display:flex;flex-direction:column;gap:0;padding:22px;min-height:320px;border-right:1px solid var(--line-soft)}.feat-thumb.vl{background:linear-gradient(155deg,var(--accent-soft),transparent 72%)}.feat-thumb.sb{background:linear-gradient(155deg,rgba(96,165,250,.12),transparent 72%)}.feat-thumb.ag{background:linear-gradient(155deg,rgba(251,191,60,.14),transparent 72%)}.browser-mini{display:flex;align-items:center;gap:7px;padding:9px 12px;background:var(--card);border:1px solid var(--line);border-bottom:none;border-radius:10px 10px 0 0}.feat-thumb .photo-ph{border-radius:0 0 10px 10px;border-top:none}.browser-mini .browser-url{font-family:var(--mono);font-size:11.5px;color:var(--muted);background:var(--bg-2);border-radius:5px;padding:3px 10px;margin-left:6px}.feat-thumb .pslider{border:1px solid var(--line);border-top:none;border-radius:0 0 10px 10px;overflow:hidden;background:var(--bg-2)}.feat-info{padding:36px 38px;display:flex;flex-direction:column}@media (min-width:901px){.feat-info{min-height:480px}}.expandable-desc-container{position:relative;margin-bottom:12px}.expand-fade-overlay{position:absolute;bottom:0;left:0;right:0;height:48px;background:linear-gradient(to top,var(--card) 0,transparent 100%);pointer-events:none;transition:opacity .3s}html[data-theme=dark] .expand-fade-overlay{background:linear-gradient(to top,var(--card) 0,rgba(22,24,31,0) 100%)}.expand-toggle-btn{font-family:var(--mono);font-size:12.5px;color:var(--accent-ink);background:transparent;border:none;cursor:pointer;padding:6px 0;margin-top:6px;display:inline-flex;align-items:center;font-weight:500;transition:color .2s,transform .2s}.expand-toggle-btn:hover{color:var(--accent-bright)}.expand-toggle-btn .ico{transition:transform .3s var(--ease)}.feat-top{display:flex;align-items:center;gap:14px;margin-bottom:6px}.feat-top h3{font-size:clamp(1.8rem,3vw,2.4rem)}.feat-role{font-family:var(--mono);font-size:13px;color:var(--accent-ink);margin:0 0 16px}.feat-desc{font-size:15.5px;line-height:1.6;color:var(--muted);margin:0;max-width:60ch}.feat-links{align-items:center;gap:16px;margin-top:auto}.feat-links,.repo-head{display:flex;flex-wrap:wrap}.repo-head{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:32px}.filter-bar{display:flex;gap:6px;background:var(--card);border:1px solid var(--line);border-radius:99px;padding:5px}.filter-btn{font-family:var(--mono);font-size:12.5px;color:var(--muted);background:transparent;border:none;cursor:pointer;padding:8px 15px;border-radius:99px;transition:color .2s,background .2s}.filter-btn:hover{color:var(--ink)}.filter-btn.active{color:#fff;background:var(--accent)}.repo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.repo-card{padding:24px 24px 20px;text-decoration:none;display:flex;flex-direction:column;min-height:160px;transition:transform .35s var(--ease),border-color .3s,box-shadow .3s,opacity .3s}.repo-card.hide{display:none}.repo-icon{font-size:18px;color:var(--accent);margin-bottom:16px}.repo-name{font-family:var(--mono);font-size:15px;font-weight:500;color:var(--ink);letter-spacing:-.01em;margin:0 0 8px}.repo-desc{font-size:14px;color:var(--muted);margin:0 0 auto;line-height:1.45}.repo-foot{display:flex;justify-content:space-between;margin-top:18px}.lang,.repo-foot{align-items:center}.lang{font-family:var(--mono);font-size:12px;color:var(--ink-2);display:inline-flex;gap:7px}.ld{width:10px;height:10px;border-radius:50%;display:inline-block}.ld.ts{background:#3178c6}.ld.js{background:#e3c427}.ld.html{background:#e34c26}.repo-card:hover .repo-name,.repo-live{color:var(--accent-ink)}.repo-live{display:inline-flex;align-items:center;gap:6px}.repo-live .dotlive{width:6px;height:6px;border-radius:50%;background:var(--accent-bright);box-shadow:0 0 0 3px var(--accent-soft)}.repo-foot .meta .ico{vertical-align:middle;opacity:.6;transition:transform .25s var(--ease),opacity .2s}.repo-card:hover .repo-foot .meta .ico{opacity:1;transform:translate(2px,-2px);color:var(--accent)}.repo-more{text-align:center;margin-top:32px}.repo-more a{font-family:var(--mono);font-size:14px;color:var(--accent-ink);text-decoration:none}.repo-more a:hover{text-decoration:underline}@media (max-width:900px){.feat-card,.feat-card:nth-child(2n){grid-template-columns:1fr}.feat-card:nth-child(2n) .feat-thumb{order:0;border-left:none}.feat-thumb{border-right:none;border-bottom:1px solid var(--line-soft)}.repo-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:560px){.repo-grid{grid-template-columns:1fr}.feat-info{padding:28px 22px}.repo-head{flex-direction:column;align-items:stretch}.filter-bar{overflow-x:auto}}.contact-grid{display:grid;grid-template-columns:1fr .92fr;gap:64px;align-items:start}.channels{display:grid;gap:12px;margin-top:38px}.channel{display:flex;align-items:center;gap:16px;padding:18px 20px;text-decoration:none}.ch-ico{width:44px;height:44px;flex:none;border-radius:11px;background:var(--accent-soft);color:var(--accent-ink);display:grid;place-items:center;font-family:var(--mono);font-size:20px}.ch-body{display:flex;flex-direction:column;min-width:0}.ch-label{font-family:var(--mono);font-size:11.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--faint)}.ch-val{font-size:15.5px;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ch-arrow{margin-left:auto;font-family:var(--mono);color:var(--faint);transition:transform .25s var(--ease),color .25s;display:inline-flex}.ch-arrow .ico{font-size:18px}.channel:hover .ch-arrow{color:var(--accent);transform:translateX(4px)}.socials{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}.soc{font-family:var(--mono);font-size:13px;color:var(--ink-2);text-decoration:none;border:1px solid var(--line);border-radius:99px;padding:9px 17px;transition:border-color .2s,color .2s,transform .2s;display:inline-flex;align-items:center;gap:8px}.soc .ico{font-size:15px}.soc:hover{border-color:var(--accent);color:var(--accent-ink);transform:translateY(-2px)}.contact-form{padding:34px;position:relative;overflow:hidden}.form-status{display:flex;align-items:center;gap:8px;margin:0 0 22px}.blink-dot{width:8px;height:8px;border-radius:50%;background:var(--accent-bright);box-shadow:0 0 0 4px var(--accent-soft)}.field{margin-bottom:18px}.field label{display:block;font-family:var(--mono);font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin-bottom:8px}.field input,.field textarea{width:100%;font-family:var(--sans);font-size:15px;color:var(--ink);background:var(--bg-2);border:1px solid var(--line);border-radius:11px;padding:13px 15px;transition:border-color .2s,background .2s,box-shadow .2s;resize:vertical}.field input::-moz-placeholder,.field textarea::-moz-placeholder{color:var(--faint)}.field input::placeholder,.field textarea::placeholder{color:var(--faint)}.field input:focus,.field textarea:focus{outline:none;border-color:var(--accent);background:var(--card);box-shadow:0 0 0 3px var(--accent-soft)}.field.invalid input,.field.invalid textarea{border-color:#e0564f;background:#fdf3f2}.err{display:none;font-family:var(--mono);font-size:12px;color:#c64138;margin-top:7px}.field.invalid .err{display:block}.form-submit{width:100%;justify-content:center;margin-top:6px}.form-success{position:absolute;inset:0;background:var(--card);display:none;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px;gap:8px}.form-success.show{display:flex}.form-success .check{width:58px;height:58px;border-radius:50%;background:var(--accent-soft);color:var(--accent-ink);display:grid;place-items:center;font-size:28px;margin-bottom:10px}.form-success h3{font-family:var(--serif);font-size:1.7rem}.form-success p{font-size:15px;color:var(--muted);max-width:34ch;margin:4px 0 16px;line-height:1.55}@media (max-width:880px){.contact-grid{grid-template-columns:1fr;gap:40px}}article.prose{max-width:72ch;margin:0 auto;font-family:var(--sans);color:var(--ink)}article.prose h1,article.prose h2,article.prose h3,article.prose h4{font-family:var(--serif);margin-top:1.8em;margin-bottom:.6em;font-weight:500;color:var(--ink);line-height:1.2}article.prose h1{font-size:clamp(2rem,4.5vw,3rem)}article.prose h2{font-size:clamp(1.6rem,3.5vw,2.2rem);border-bottom:1.5px solid var(--line-soft);padding-bottom:8px}article.prose h3{font-size:clamp(1.3rem,2.8vw,1.7rem)}article.prose p{margin-bottom:1.4em;font-size:17px;line-height:1.7;color:var(--ink-2)}article.prose strong{color:var(--ink)}article.prose a{color:var(--accent-ink);text-decoration:underline;text-underline-offset:3px;transition:color .2s}article.prose a:hover{color:var(--accent)}article.prose pre{background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius-s);padding:20px;overflow-x:auto;margin:1.8em 0;line-height:1.5}article.prose code,article.prose pre{font-family:var(--mono);font-size:14px}article.prose code{background:var(--line-soft);padding:3px 6px;border-radius:4px;color:var(--accent-ink)}article.prose pre code{background:none;padding:0;border-radius:0;color:inherit}article.prose blockquote{border-left:4px solid var(--accent);padding-left:20px;font-style:italic;color:var(--muted);margin:1.8em 0}article.prose ol,article.prose ul{margin-bottom:1.6em;padding-left:24px;color:var(--ink-2)}article.prose ul{list-style-type:square}article.prose ol{list-style-type:decimal}article.prose li{margin-bottom:.6em}article.prose hr{border:0;border-top:1px solid var(--line);margin:2.5em 0}.m-sheet nav a.active{color:var(--accent)}.list-timeline-markdown ul{list-style-type:disc;padding-left:20px;margin-top:10px;margin-bottom:0}.list-timeline-markdown li{margin-bottom:8px;font-size:15px;color:var(--muted);line-height:1.55}.list-timeline-markdown li:last-child{margin-bottom:0}.feat-markdown-details ul{list-style-type:square;padding-left:20px;margin-top:12px;margin-bottom:12px}.feat-markdown-details li{margin-bottom:8px;font-size:14.5px;color:var(--muted);line-height:1.5}.feat-markdown-details p{margin-bottom:12px}.feat-markdown-details li b,.feat-markdown-details li strong{color:var(--ink);font-weight:600}.infinite-loader-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 0 20px;gap:12px}.loading-dots{display:flex;gap:6px}.loading-dot{width:8px;height:8px;border-radius:50%;background-color:var(--accent);animation:dot-jump .6s infinite alternate}.loading-dot:nth-child(2){animation-delay:.2s}.loading-dot:nth-child(3){animation-delay:.4s}@keyframes dot-jump{0%{transform:translateY(0);opacity:.3}to{transform:translateY(-8px);opacity:1}}.loading-text{font-family:var(--mono);font-size:13px;color:var(--muted)}.page-loader{position:fixed;inset:0;z-index:99999;background:var(--bg);display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;animation:page-loader-fade-in .25s var(--ease) forwards}@keyframes page-loader-fade-in{0%{opacity:0}to{opacity:1}}.loader-top-bar{position:absolute;top:0;left:0;height:3px;background:linear-gradient(90deg,transparent,var(--accent),transparent);width:100%;animation:loader-sweep 2s linear infinite}@keyframes loader-sweep{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.loader-content{display:flex;flex-direction:column;align-items:center;gap:20px;position:relative;z-index:2}.loader-brand{font-family:var(--mono);font-size:18px;font-weight:500;color:var(--ink);display:inline-flex;align-items:center;gap:9px;letter-spacing:-.01em}.loader-brand .dot{width:10px;height:10px;border-radius:50%;background:var(--accent-bright);box-shadow:0 0 0 4px var(--accent-soft);animation:dot-glow 1.5s infinite alternate}@keyframes dot-glow{0%{box-shadow:0 0 0 4px var(--accent-soft)}to{box-shadow:0 0 12px 6px var(--accent-glow)}}.loader-pulse{width:60px;height:2px;background:var(--line);position:relative;overflow:hidden}.loader-pulse:after{content:"";position:absolute;top:0;left:0;height:100%;width:20px;background:var(--accent);filter:blur(2px);animation:pulse-slide 1.2s ease-in-out infinite}@keyframes pulse-slide{0%{left:-30%}to{left:130%}}.loader-text{font-family:var(--mono);font-size:13px;color:var(--muted);letter-spacing:.05em;text-transform:uppercase;animation:text-pulse 1.5s infinite alternate}@keyframes text-pulse{0%{opacity:.4}to{opacity:1}}.loader-scanline{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,hsla(0,0%,100%,0),rgba(22,199,133,.04) 50%,hsla(0,0%,100%,0));background-size:100% 200%;animation:scanline-move 4s linear infinite}@keyframes scanline-move{0%{background-position:0 -100%}to{background-position:0 100%}}.global-progress-bar{position:fixed;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,transparent,var(--accent-bright),transparent);z-index:999999;width:100%;transform-origin:left;animation:loader-sweep 1.5s linear infinite}.skeleton-container{max-width:var(--wrap);margin:0 auto;padding:clamp(56px,8vw,96px) var(--pad) clamp(48px,7vw,88px);display:flex;flex-direction:column;gap:24px}.skeleton-item{background:var(--line);position:relative;overflow:hidden;border-radius:8px}.skeleton-item:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;transform:translateX(-100%);background:linear-gradient(90deg,hsla(0,0%,100%,0),hsla(0,0%,100%,.03) 20%,hsla(0,0%,100%,.08) 60%,hsla(0,0%,100%,0));animation:shimmer 1.6s infinite}[data-theme=dark] .skeleton-item:after{background:linear-gradient(90deg,hsla(0,0%,100%,0),hsla(0,0%,100%,.02) 20%,hsla(0,0%,100%,.05) 60%,hsla(0,0%,100%,0))}@keyframes shimmer{to{transform:translateX(100%)}}.skeleton-eyebrow{height:14px;width:120px}.skeleton-title{height:48px;width:60%;border-radius:12px}.skeleton-lead{height:20px;width:90%;margin-top:12px}.skeleton-lead-2{height:20px;width:75%}.skeleton-card{height:160px;width:100%;border-radius:16px;margin-top:24px}.skeleton-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;margin-top:32px}.side-dots{position:fixed;right:26px;top:50%;transform:translateY(-50%);z-index:45;display:flex;flex-direction:column;gap:16px;align-items:flex-end}.side-dots button{display:flex;align-items:center;gap:12px;cursor:pointer;background:none;border:none;padding:4px 0;color:var(--muted)}.side-dots .sd-label{font-family:var(--mono);font-size:11px;letter-spacing:.04em;text-transform:uppercase;opacity:0;transform:translateX(6px);transition:opacity .25s,transform .25s,color .25s;white-space:nowrap;color:var(--muted)}.side-dots button.active .sd-label,.side-dots button:hover .sd-label{opacity:1;transform:none}.side-dots button.active .sd-label{color:var(--accent-ink)}.side-dots .sd-mark{width:9px;height:9px;border-radius:50%;flex:none;border:1.6px solid var(--faint);background:transparent;transition:background .25s,border-color .25s,transform .25s var(--ease)}.side-dots button:hover .sd-mark{border-color:var(--accent)}.side-dots button.active .sd-mark{background:var(--accent);border-color:var(--accent);transform:scale(1.25)}@media (max-width:1180px){.side-dots{display:none}}@media (min-width:1024px){.lg\:flex{display:flex}}.personalinfo_personal_info__ipF74{display:flex;flex-direction:row-reverse;justify-content:space-between;align-items:stretch;gap:10rem;margin:2.8rem 0}.personalinfo_personal_info_img__vhLAT{width:500px;height:500px;-o-object-fit:cover;object-fit:cover;border:0 solid #000;box-shadow:14px 14px 2px 1px var(--color-shadow)}.personalinfo_personal_info_svg__cbTti{width:1200px;height:550px;-o-object-fit:cover;object-fit:cover}.personalinfo_personal_info_text__WktRw{display:flex;flex-direction:column;align-items:flex-start;gap:14px;overflow:hidden}.personalinfo_personal_info_text__WktRw h1,.personalinfo_personal_info_text__WktRw h3,.personalinfo_personal_info_text__WktRw p{color:var(--color-primary);font-family:var(--font-poppins)}.personalinfo_personal_info_text__WktRw h1{font-size:90px;font-weight:600}.personalinfo_personal_info_text__WktRw h2{color:var(--color-dark);font-family:var(--font-prata);font-size:25px;font-weight:400}.personalinfo_personal_info_text__WktRw h3{font-size:35px;font-weight:500}.personalinfo_personal_info_text__WktRw p{color:var(--color-secondary);font-size:25px}@media (max-width:950px){.personalinfo_personal_info__ipF74{align-items:center;flex-direction:column;gap:2rem}.personalinfo_personal_info_img__vhLAT,.personalinfo_personal_info_svg__cbTti{width:250px;height:250px}.personalinfo_personal_info_text__WktRw{align-items:center;text-align:center}.personalinfo_personal_info_text__WktRw h1{font-size:45px}.personalinfo_personal_info_text__WktRw h4{font-size:25px;text-align:center}.personalinfo_personal_info_text__WktRw p{font-size:18px;text-align:center}}@media (max-width:400px){.personalinfo_personal_info_text__WktRw h1{font-size:40px}}.modal_modal__8uoMt{position:absolute;bottom:0;left:0;right:0;height:80%;width:100%;overflow:auto;background:var(--color-secondary)}.modal_modal_backdrop__ky0aq{position:absolute;top:0;left:0;height:100%;width:100%;background-color:rgba(0,0,0,.5)}.modal_modal_container__IQZJi{padding:.5rem;overflow:auto;display:flex;flex-direction:column;align-items:stretch;gap:8px}.modal_modal_container__IQZJi a{margin-left:auto}.button_button__QSkif{background-color:var(--color-white);text-align:center;font-family:var(--font-poppins);font-size:22px;font-weight:500;color:var(--color-primary);transition:all .3s ease;padding:12px 44px}.button_button__QSkif.button_round__Ujpff{border-radius:100px;display:grid;place-items:center}.button_button__QSkif.button_default__TjV5f{padding:4px 44px}.button_button__QSkif.button_xl__rFLmy{padding:12px 44px}.button_button__QSkif.button_sm__92_1t{width:50px;height:50px;padding:10px}.button_button__QSkif.button_xs__8pYNA{width:35px;height:35px;padding:0}.button_button__QSkif.button_active__12luA,.button_button__QSkif:hover{color:var(--color-white);background-color:var(--color-primary)}.button_button__QSkif:disabled{color:var(--color-primary);background-color:var(--color-gray);cursor:not-allowed;pointer-events:none}@media (max-width:600px){.button_button__QSkif{font-size:18px}.button_button__QSkif.button_xl__rFLmy{padding:12px 30px}.button_button__QSkif.button_sm__92_1t{width:35px;height:35px;padding:0}}.pagination_pages__eL_6D{display:flex;align-items:center;justify-content:center;gap:12px;margin:2rem 0;flex-wrap:wrap}.container_container__TSSwC{width:inherit;max-width:var(--container-width);margin:0 auto;padding:0 1rem}@media (max-width:500px){.container_container__TSSwC{margin:0}}.pageheader_page_header_container__GHfjr{display:flex;align-items:center;justify-content:space-between}.pageheader_page_header__yoe3j{color:var(--color-primary)!important;font-family:var(--font-prata);font-size:53px!important;font-weight:400!important;margin:2rem 0}@media (max-width:500px){.pageheader_page_header__yoe3j{font-size:35px}}.loadingspinner_spinner__qXbgs{border:4px solid rgba(0,0,0,.1);border-top:4px solid var(--color-primary);border-radius:50%;width:35px;height:35px;animation:loadingspinner_spin__SN1y2 1s linear infinite}@keyframes loadingspinner_spin__SN1y2{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:500px){.loadingspinner_spinner__qXbgs{width:20px;height:20px}}.card_card__fYlLW{display:flex;flex-direction:column;align-items:stretch;font-family:var(--font-poppins)}.card_card__fYlLW .card_date__I1cv8{color:var(--color-secondary);font-weight:300}.card_card__fYlLW .card_title__QfUlu{color:var(--color-primary);font-size:25px;font-weight:600;transition:all .3s ease}.card_card__fYlLW .card_title__QfUlu:hover{text-decoration:underline}.card_card__fYlLW .card_content__sBNsx{text-align:justify;font-size:15px;font-weight:400;margin-top:10px;color:var(--color-secondary)}