pre[class*=language-]{color:#f4f4f5}.token.class-name,.token.function,.token.selector,.token.selector .class,.token.selector.class,.token.tag{color:#f472b6}.token.attr-name,.token.important,.token.keyword,.token.pseudo-class,.token.rule{color:#d4d4d8}.token.module{color:#f472b6}.token.attr-value,.token.class,.token.property,.token.string{color:#5eead4}.token.attr-equals,.token.punctuation{color:#71717a}.language-css .token.function,.token.unit{color:#bae6fd}.token.combinator,.token.comment,.token.operator{color:#a1a1aa}

/*
! tailwindcss v3.2.4 | MIT License | https://tailwindcss.com
*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}html{line-height:1.5;-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}body{margin:0;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-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}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-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-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: }.prose{--tw-prose-body:#3c3d42;--tw-prose-headings:#2a2b2f;--tw-prose-links:#b05a36;--tw-prose-links-hover:#8c4325;--tw-prose-underline:rgba(176,90,54,.35);--tw-prose-underline-hover:#b05a36;--tw-prose-bold:#2a2b2f;--tw-prose-counters:#2a2b2f;--tw-prose-bullets:#b05a36;--tw-prose-hr:#e0dcd3;--tw-prose-quote-borders:#e0dcd3;--tw-prose-captions:#616867;--tw-prose-code:#2a2b2f;--tw-prose-code-bg:#f4efe6;--tw-prose-pre-code:#fef9ef;--tw-prose-pre-bg:#2a2b2f;--tw-prose-pre-border:transparent;--tw-prose-th-borders:#e0dcd3;--tw-prose-td-borders:#f4efe6;--tw-prose-invert-body:#e0dcd3;--tw-prose-invert-headings:#fef9ef;--tw-prose-invert-links:#c07858;--tw-prose-invert-links-hover:#e09a7b;--tw-prose-invert-underline:rgba(192,120,88,.4);--tw-prose-invert-underline-hover:#c07858;--tw-prose-invert-bold:#fef9ef;--tw-prose-invert-counters:#fef9ef;--tw-prose-invert-bullets:#c07858;--tw-prose-invert-hr:#3c3d42;--tw-prose-invert-quote-borders:#3c3d42;--tw-prose-invert-captions:#b0b6b5;--tw-prose-invert-code:#d4d4d8;--tw-prose-invert-code-bg:hsla(240,6%,90%,.05);--tw-prose-invert-pre-code:#f4f4f5;--tw-prose-invert-pre-bg:rgba(0,0,0,.4);--tw-prose-invert-pre-border:hsla(240,6%,90%,.1);--tw-prose-invert-th-borders:#3f3f46;--tw-prose-invert-td-borders:#27272a;color:var(--tw-prose-body);line-height:1.75rem}.prose :where(.prose>*):not(:where([class~=not-prose] *)){margin-top:2.5rem;margin-bottom:2.5rem}.prose :where(p):not(:where([class~=not-prose] *)){margin-top:1.75rem;margin-bottom:1.75rem}.prose :where(h2,h3):not(:where([class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600}.prose :where(h2):not(:where([class~=not-prose] *)){font-size:1.25rem;line-height:1.75rem;margin-top:5rem;margin-bottom:1rem}.prose :where(h3):not(:where([class~=not-prose] *)){font-size:1rem;line-height:1.75rem;margin-top:4rem;margin-bottom:1rem}.prose :where(:is(h2,h3)+*):not(:where([class~=not-prose] *)){margin-top:0}.prose :where(img):not(:where([class~=not-prose] *)){border-radius:1.5rem}.prose :where(a):not(:where([class~=not-prose] *)){color:var(--tw-prose-links);font-weight:600;text-decoration:underline;text-decoration-color:var(--tw-prose-underline);transition-property:color,text-decoration-color;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.prose :where(a:hover):not(:where([class~=not-prose] *)){color:var(--tw-prose-links-hover);text-decoration-color:var(--tw-prose-underline-hover)}.prose :where(strong):not(:where([class~=not-prose] *)){color:var(--tw-prose-bold);font-weight:600}.prose :where(code):not(:where([class~=not-prose] *)){display:inline-block;color:var(--tw-prose-code);font-size:.875rem;font-weight:600;background-color:var(--tw-prose-code-bg);border-radius:.5rem;padding-left:.25rem;padding-right:.25rem}.prose :where(a code):not(:where([class~=not-prose] *)){color:inherit}.prose :where(:is(h2,h3) code):not(:where([class~=not-prose] *)){font-weight:700}.prose :where(blockquote):not(:where([class~=not-prose] *)){padding-left:1.5rem;border-left-width:2px;border-left-color:var(--tw-prose-quote-borders);font-style:italic}.prose :where(figcaption):not(:where([class~=not-prose] *)){color:var(--tw-prose-captions);font-size:.875rem;line-height:1.5rem;margin-top:.75rem}.prose :where(figcaption>p):not(:where([class~=not-prose] *)){margin:0}.prose :where(ul):not(:where([class~=not-prose] *)){list-style-type:disc}.prose :where(ol):not(:where([class~=not-prose] *)){list-style-type:decimal}.prose :where(ul,ol):not(:where([class~=not-prose] *)){padding-left:1.5rem}.prose :where(li):not(:where([class~=not-prose] *)){margin-top:1.5rem;margin-bottom:1.5rem;padding-left:.875rem}.prose :where(li):not(:where([class~=not-prose] *))::marker{font-size:.875rem;font-weight:600}.prose :where(ol>li):not(:where([class~=not-prose] *))::marker{color:var(--tw-prose-counters)}.prose :where(ul>li):not(:where([class~=not-prose] *))::marker{color:var(--tw-prose-bullets)}.prose :where(li :is(ol,ul)):not(:where([class~=not-prose] *)){margin-top:1rem;margin-bottom:1rem}.prose :where(li :is(li,p)):not(:where([class~=not-prose] *)){margin-top:.75rem;margin-bottom:.75rem}.prose :where(pre):not(:where([class~=not-prose] *)){color:var(--tw-prose-pre-code);font-size:.875rem;font-weight:500;background-color:var(--tw-prose-pre-bg);border-radius:1.5rem;padding:2rem;overflow-x:auto;border:1px solid;border-color:var(--tw-prose-pre-border)}.prose :where(pre code):not(:where([class~=not-prose] *)){display:inline;color:inherit;font-size:inherit;font-weight:inherit;background-color:transparent;border-radius:0;padding:0}.prose :where(hr):not(:where([class~=not-prose] *)){margin-top:5rem;margin-bottom:5rem;border-top-width:1px;border-color:var(--tw-prose-hr)}@media (min-width:1024px){.prose :where(hr):not(:where([class~=not-prose] *)){margin-left:calc(3rem * -1);margin-right:calc(3rem * -1)}}.prose :where(table):not(:where([class~=not-prose] *)){width:100%;table-layout:auto;text-align:left;font-size:.875rem}.prose :where(thead):not(:where([class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-th-borders)}.prose :where(thead th):not(:where([class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;vertical-align:bottom;padding-bottom:.5rem}.prose :where(thead th:not(:first-child)):not(:where([class~=not-prose] *)){padding-left:.5rem}.prose :where(thead th:not(:last-child)):not(:where([class~=not-prose] *)){padding-right:.5rem}.prose :where(tbody tr):not(:where([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] *)){border-bottom-width:0}.prose :where(tbody td):not(:where([class~=not-prose] *)){vertical-align:baseline}.prose :where(tfoot):not(:where([class~=not-prose] *)){border-top-width:1px;border-top-color:var(--tw-prose-th-borders)}.prose :where(tfoot td):not(:where([class~=not-prose] *)){vertical-align:top}.prose :where(:is(tbody,tfoot) td):not(:where([class~=not-prose] *)){padding-top:.5rem;padding-bottom:.5rem}.prose :where(:is(tbody,tfoot) td:not(:first-child)):not(:where([class~=not-prose] *)){padding-left:.5rem}.prose :where(:is(tbody,tfoot) td:not(:last-child)):not(:where([class~=not-prose] *)){padding-right:.5rem}.visible{visibility:visible}.absolute{position:absolute}.relative{position:relative}.inset-0{top:0;right:0;bottom:0;left:0}.-inset-y-6{top:-1.5rem;bottom:-1.5rem}.-inset-x-4{left:-1rem;right:-1rem}.inset-y-0{top:0;bottom:0}.left-0{left:0}.z-0{z-index:0}.z-20{z-index:20}.z-10{z-index:10}.order-first{order:-9999}.mx-auto{margin-left:auto;margin-right:auto}.my-8{margin-top:2rem;margin-bottom:2rem}.-my-4{margin-top:-1rem;margin-bottom:-1rem}.mb-8{margin-bottom:2rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-8{margin-top:2rem}.mt-10{margin-top:2.5rem}.mb-3{margin-bottom:.75rem}.mt-2{margin-top:.5rem}.ml-1{margin-left:.25rem}.ml-3{margin-left:.75rem}.mt-5{margin-top:1.25rem}.mt-12{margin-top:3rem}.mt-7{margin-top:1.75rem}.mb-4{margin-bottom:1rem}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.aspect-\[9\/10\]{aspect-ratio:9/10}.h-3{height:.75rem}.h-\[14px\]{height:14px}.h-4{height:1rem}.h-3\.5{height:.875rem}.h-\[18px\]{height:18px}.h-full{height:100%}.h-7{height:1.75rem}.h-\[19px\]{height:19px}.h-6{height:1.5rem}.max-h-\[380px\]{max-height:380px}.min-h-full{min-height:100%}.w-3{width:.75rem}.w-\[14px\]{width:14px}.w-auto{width:auto}.w-4{width:1rem}.w-0\.5{width:.125rem}.w-0{width:0}.w-3\.5{width:.875rem}.w-\[18px\]{width:18px}.w-44{width:11rem}.w-full{width:100%}.w-7{width:1.75rem}.w-\[19px\]{width:19px}.w-6{width:1.5rem}.max-w-3xl{max-width:48rem}.max-w-none{max-width:none}.max-w-7xl{max-width:80rem}.max-w-2xl{max-width:42rem}.flex-none{flex:none}.flex-1{flex:1 1 0%}.rotate-180{--tw-rotate:180deg}.rotate-180,.scale-95{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-95{--tw-scale-x:.95;--tw-scale-y:.95}.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}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1\.5{gap:.375rem}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-8{gap:2rem}.gap-3{gap:.75rem}.gap-y-8{row-gap:2rem}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.rounded-2xl{border-radius:1rem}.rounded-md{border-radius:.375rem}.rounded-full{border-radius:9999px}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-t{border-top-width:1px}.border-\[var\(--border\)\]{border-color:var(--border)}.bg-\[var\(--figure-bg\)\]{background-color:var(--figure-bg)}.bg-zinc-800{--tw-bg-opacity:1;background-color:rgb(39 39 42/var(--tw-bg-opacity))}.bg-zinc-50{--tw-bg-opacity:1;background-color:rgb(250 250 250/var(--tw-bg-opacity))}.bg-zinc-200{--tw-bg-opacity:1;background-color:rgb(228 228 231/var(--tw-bg-opacity))}.bg-zinc-100{--tw-bg-opacity:1;background-color:rgb(244 244 245/var(--tw-bg-opacity))}.bg-gradient-to-t{background-image:linear-gradient(to top,var(--tw-gradient-stops))}.from-black\/75{--tw-gradient-from:rgba(0,0,0,.75);--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.via-black\/0{--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-from),transparent,var(--tw-gradient-to)}.stroke-current{stroke:currentColor}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.p-4{padding:1rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.py-4{padding-top:1rem;padding-bottom:1rem}.px-8{padding-left:2rem;padding-right:2rem}.px-2{padding-left:.5rem;padding-right:.5rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-0{padding-top:0;padding-bottom:0}.pt-28{padding-top:7rem}.pb-8{padding-bottom:2rem}.pl-3\.5{padding-left:.875rem}.pl-3{padding-left:.75rem}.pt-32{padding-top:8rem}.pt-3{padding-top:.75rem}.pt-12{padding-top:3rem}.text-xs{font-size:.8125rem;line-height:1.5rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-base{font-size:1rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.5rem}.text-2xl{font-size:1.5rem;line-height:2rem}.text-4xl{font-size:2rem;line-height:2.5rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.leading-relaxed{line-height:1.625}.tracking-tight{letter-spacing:-.025em}.text-\[var\(--muted\)\]{color:var(--muted)}.text-\[var\(--text-2\)\]{color:var(--text-2)}.text-\[var\(--text\)\]{color:var(--text)}.text-zinc-100{--tw-text-opacity:1;color:rgb(244 244 245/var(--tw-text-opacity))}.text-zinc-900{--tw-text-opacity:1;color:rgb(24 24 27/var(--tw-text-opacity))}.text-zinc-800{--tw-text-opacity:1;color:rgb(39 39 42/var(--tw-text-opacity))}.text-zinc-600{--tw-text-opacity:1;color:rgb(82 82 91/var(--tw-text-opacity))}.text-\[var\(--accent\)\]{color:var(--accent)}.text-zinc-400{--tw-text-opacity:1;color:rgb(161 161 170/var(--tw-text-opacity))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.opacity-70{opacity:.7}.shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline-offset-2{outline-offset:2px}.ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.blur{--tw-blur:blur(8px)}.blur,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}:root{color-scheme:light;--bg:#fef9ef;--surface:#fff;--surface-2:#f4efe6;--surface-3:#e0dcd3;--text:#2a2b2f;--text-2:#3c3d42;--muted:#616867;--border:#e0dcd3;--border-strong:#c8c3b9;--accent:#b05a36;--accent-2:#8c4325;--accent-ink:#8c4325;--accent-soft:#f6ebe3;--product-green:#79bd8b;--product-green-ink:#2b683d;--product-green-soft:#eaf5ed;--product-blue:#488ad5;--product-purple:#786bc4;--product-yellow:#d3b35b;--blue-gray:#6a7784;--gold:#2b683d;--gold-soft:#eaf5ed;--figure-bg:#fff;--canvas-rgb:176,90,54;--canvas-rgb-2:121,189,139;--canvas-blue-rgb:72,138,213;--canvas-muted-rgb:106,119,132;--shadow-sm:0 1px 2px rgba(42,43,47,.05),0 1px 1px rgba(42,43,47,.03);--shadow-md:0 10px 28px -14px rgba(42,43,47,.2);--shadow-lg:0 28px 56px -26px rgba(42,43,47,.28);--radius-sm:10px;--radius:16px;--radius-lg:22px;--font-sans:"FT Base","Inter",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--font-serif:"Financier Display","Playfair Display",Georgia,serif;--font-mono:"DM Mono",ui-monospace,"SF Pro",Menlo,Consolas,monospace;--ease:cubic-bezier(0.22,1,0.36,1);--nav-h:64px}:root.dark,:root[data-theme=dark]{color-scheme:dark;--bg:#1b1c1f;--surface:#2a2b2f;--surface-2:#34363b;--surface-3:#3c3d42;--text:#fef9ef;--text-2:#e0dcd3;--muted:#b0b6b5;--border:#3c3d42;--border-strong:#53565c;--accent:#c07858;--accent-2:#e09a7b;--accent-ink:#f0b296;--accent-soft:rgba(192,120,88,.18);--product-green:#79bd8b;--product-green-ink:#9bd6aa;--product-green-soft:rgba(121,189,139,.16);--product-blue:#6aa4e8;--product-purple:#9a8ee0;--product-yellow:#dfc270;--blue-gray:#8fa0b0;--gold:#9bd6aa;--gold-soft:rgba(121,189,139,.16);--figure-bg:#faf6ee;--canvas-rgb:192,120,88;--canvas-rgb-2:121,189,139;--canvas-blue-rgb:106,164,232;--canvas-muted-rgb:176,182,181;--shadow-sm:0 1px 2px rgba(0,0,0,.45);--shadow-md:0 12px 30px -14px rgba(0,0,0,.7);--shadow-lg:0 30px 60px -26px rgba(0,0,0,.82)}@property --ring-angle{syntax:"<angle>";inherits:false;initial-value:0deg}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-h) + 20px);-webkit-text-size-adjust:100%}body{font-family:var(--font-sans);font-size:16px;line-height:1.65;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;overflow-x:hidden;transition:background-color .35s var(--ease),color .35s var(--ease)}body.modal-open{overflow:hidden}::-moz-selection{background:rgba(var(--canvas-rgb),.22);color:var(--text)}::selection{background:rgba(var(--canvas-rgb),.22);color:var(--text)}[data-focus-visible-added]{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}.hide-scrollbar::-webkit-scrollbar{display:none}.hide-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.text-balance{text-wrap:balance}.site-container{width:100%;max-width:1120px;margin-inline:auto;padding-inline:28px}.skip-link{position:fixed;left:16px;top:-60px;z-index:3000;padding:8px 14px;border-radius:10px;background:var(--text);color:var(--bg);font-weight:500;transition:top .2s ease}.skip-link:focus{top:12px;color:var(--bg)}.scroll-progress{position:fixed;top:0;left:0;z-index:1200;width:100%;height:2px;transform:scaleX(0);transform-origin:0 50%;background:linear-gradient(90deg,var(--accent),var(--product-green));pointer-events:none}.site-nav{position:fixed;inset:0 0 auto 0;z-index:1100;height:var(--nav-h);transition:background-color .3s ease,box-shadow .3s ease}.site-nav.is-scrolled,.site-nav.menu-open{background:hsla(40,88%,97%,.86);-webkit-backdrop-filter:saturate(180%) blur(16px);backdrop-filter:saturate(180%) blur(16px);box-shadow:0 1px 0 var(--border)}:root.dark .site-nav.is-scrolled,:root.dark .site-nav.menu-open,:root[data-theme=dark] .site-nav.is-scrolled,:root[data-theme=dark] .site-nav.menu-open{background:rgba(27,28,31,.86)}.site-nav-inner{position:relative;max-width:1120px;height:100%;margin:0 auto;padding:0 28px;display:flex;align-items:center;gap:20px}.brand{display:inline-flex;align-items:center;gap:11px;text-decoration:none}.brand,.brand:hover{color:var(--text)}.brand-avatar{width:36px;height:36px;border-radius:999px;padding:1.5px;background:linear-gradient(135deg,var(--accent),var(--product-green));box-shadow:0 6px 16px -6px rgba(176,90,54,.5);overflow:hidden;flex:none}.brand-avatar img{width:100%;height:100%;border-radius:999px;-o-object-fit:cover;object-fit:cover;display:block}.brand-name{font-size:.95rem;font-weight:600;letter-spacing:-.01em;opacity:0;transform:translateX(-6px);transition:opacity .3s ease,transform .3s var(--ease)}.site-nav.always-show-brand .brand-name,.site-nav.is-scrolled .brand-name{opacity:1;transform:none}.nav-links{margin-left:auto;display:flex;align-items:center;gap:2px}.nav-links a{position:relative;display:inline-flex;align-items:center;gap:5px;padding:7px 13px;border-radius:999px;font-size:.9rem;font-weight:500;color:var(--text-2);text-decoration:none;transition:color .2s ease,background-color .2s ease}.nav-links a:hover{color:var(--text);background:var(--surface-2)}.nav-links a.is-active{color:var(--text)}.nav-links a.is-active:after{content:"";position:absolute;left:50%;bottom:2px;width:4px;height:4px;border-radius:50%;background:var(--accent);transform:translateX(-50%)}.nav-links .nav-cv{margin-left:6px;border:1px solid var(--border-strong)}.nav-actions{display:flex;align-items:center;gap:8px}.icon-btn{width:38px;height:38px;display:grid;place-items:center;border-radius:999px;border:1px solid var(--border-strong);background:var(--surface);color:var(--text-2);cursor:pointer;transition:color .2s ease,border-color .2s ease,background-color .2s ease,transform .2s ease}.icon-btn:hover{color:var(--text);border-color:var(--muted)}.icon-btn:active{transform:scale(.95)}.menu-toggle{display:none}.hero{position:relative;isolation:isolate;overflow:hidden;padding:calc(var(--nav-h) + 68px) 0 54px}.hero-canvas{position:absolute;inset:0;z-index:-1;width:100%;height:100%;pointer-events:none;-webkit-mask-image:linear-gradient(90deg,transparent calc(var(--text-edge, 55%) - 240px),rgba(0,0,0,.25) calc(var(--text-edge, 55%) + 10px),#000 calc(var(--text-edge, 55%) + 90px));mask-image:linear-gradient(90deg,transparent calc(var(--text-edge, 55%) - 240px),rgba(0,0,0,.25) calc(var(--text-edge, 55%) + 10px),#000 calc(var(--text-edge, 55%) + 90px))}.hero-canvas--front{z-index:1}.hero-glow{position:absolute;z-index:-3;top:-10%;right:-12%;width:72%;height:115%;pointer-events:none;background:radial-gradient(closest-side at 62% 42%,rgba(var(--canvas-rgb),.13),transparent 72%),radial-gradient(closest-side at 80% 72%,rgba(var(--canvas-rgb-2),.1),transparent 72%);animation:glow-drift 18s ease-in-out infinite alternate}@keyframes glow-drift{to{transform:translate3d(-5%,4%,0) scale(1.1)}}.hero-spotlight{position:absolute;inset:0;z-index:-2;pointer-events:none;background:radial-gradient(560px circle at var(--spot-x,70%) var(--spot-y,40%),rgba(var(--canvas-rgb),.08),transparent 65%);opacity:0;transition:opacity .6s ease}.hero.has-pointer .hero-spotlight{opacity:1}.hero:after{content:"";position:absolute;left:0;right:0;bottom:0;z-index:-1;height:140px;background:linear-gradient(to bottom,transparent,var(--bg));pointer-events:none}.hero-grid{display:grid;grid-template-columns:minmax(0,1.28fr) minmax(0,.72fr);align-items:center;gap:52px}.status-badge{display:inline-flex;align-items:center;gap:10px;padding:6px 14px 6px 12px;border-radius:999px;font-size:.82rem;font-weight:500;color:var(--text-2);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);text-decoration:none;transition:color .2s ease,border-color .2s ease,transform .3s var(--ease)}.status-badge:hover{color:var(--text);border-color:var(--border-strong);transform:translateY(-1px)}.status-badge svg{transition:transform .3s var(--ease)}.status-badge:hover svg{transform:translateX(3px)}.status-dot{position:relative;width:8px;height:8px;flex:none}.status-dot,.status-dot:after{border-radius:50%;background:var(--product-green)}.status-dot:after{content:"";position:absolute;inset:-4px;opacity:.35;animation:ping 2.2s var(--ease) infinite}@keyframes ping{0%{transform:scale(.55);opacity:.5}80%,to{transform:scale(1.7);opacity:0}}.hero-name{margin-top:22px;font-family:var(--font-serif);font-weight:400;font-size:clamp(3rem,6.4vw,4.9rem);line-height:1.02;letter-spacing:-.02em;color:var(--text)}.hero-name .word{overflow:hidden;vertical-align:top;padding:.08em .06em .14em 0;margin:-.08em 0 -.14em}.hero-name .word,.hero-name .word>span{display:inline-block}.hero-name-accent{font-style:normal;color:var(--accent)}.hero-role{margin-top:18px;font-size:1.02rem;line-height:1.6;color:var(--text-2)}.about-text a,.hero-role a,.news-item p a{color:var(--text);font-weight:500;text-decoration:underline;text-decoration-color:rgba(var(--canvas-rgb),.42);text-decoration-thickness:1.5px;text-underline-offset:4px;transition:color .2s ease,text-decoration-color .2s ease}.about-text a:hover,.hero-role a:hover,.news-item p a:hover{color:var(--accent);text-decoration-color:var(--accent)}.hero-lede{margin-top:14px;max-width:35em;font-size:1.1rem;line-height:1.64;color:var(--text-2)}.about-text strong,.hero-lede strong{font-weight:600;color:var(--text)}.hero-cta{margin-top:28px;display:flex;flex-wrap:wrap;gap:12px}.btn-pill{display:inline-flex;align-items:center;justify-content:center;gap:9px;height:48px;padding:0 22px;border-radius:999px;border:1.5px solid transparent;font-size:.94rem;font-weight:550;text-decoration:none;cursor:pointer;transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .2s ease,background-color .25s ease,color .25s ease}.btn-pill-primary{position:relative;overflow:hidden;isolation:isolate;color:#fef9ef;background:#b05a36;box-shadow:0 12px 24px -14px rgba(176,90,54,.55)}.btn-pill-primary:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(115deg,transparent 35%,hsla(40,88%,97%,.22) 50%,transparent 65%);transform:translateX(-120%);transition:transform .9s var(--ease);pointer-events:none}.btn-pill-primary:hover:after{transform:translateX(120%)}.btn-pill-primary:hover{color:#fef9ef;background:#2a2b2f;transform:translateY(-2px);box-shadow:0 18px 32px -16px rgba(42,43,47,.55)}:root.dark .btn-pill-primary,:root[data-theme=dark] .btn-pill-primary{color:#1b1c1f;background:#c07858;box-shadow:0 12px 24px -14px rgba(0,0,0,.65)}:root.dark .btn-pill-primary:hover,:root[data-theme=dark] .btn-pill-primary:hover{color:#1b1c1f;background:#fef9ef}.btn-pill-ghost{color:var(--text);background:var(--surface);border-color:var(--border-strong)}.btn-pill-ghost:hover{color:var(--accent);border-color:var(--accent);transform:translateY(-2px)}.btn-pill-sm{height:38px;padding:0 16px;font-size:.86rem}.hero-social{list-style:none;display:flex;flex-wrap:wrap;gap:10px;margin-top:24px;padding:0}.hero-social a{position:relative;width:42px;height:42px;display:grid;place-items:center;border-radius:12px;color:var(--text-2);background:var(--surface);border:1px solid var(--border);text-decoration:none;transition:color .2s ease,border-color .2s ease,transform .3s var(--ease)}.hero-social a:hover{color:var(--accent);border-color:rgba(var(--canvas-rgb),.48);transform:translateY(-2px)}.hero-social a:after{content:attr(data-tip);position:absolute;top:calc(100% + 8px);left:50%;padding:3px 8px;border-radius:6px;font:500 .7rem/1.4 var(--font-mono);white-space:nowrap;color:var(--bg);background:var(--text);opacity:0;transform:translate(-50%,-4px);pointer-events:none;transition:opacity .2s ease,transform .2s ease}.hero-social a:hover:after,.hero-social a[data-focus-visible-added]:after{opacity:1;transform:translate(-50%)}.hero-social a:focus-visible:after,.hero-social a:hover:after{opacity:1;transform:translate(-50%)}.hero-portrait{position:relative;justify-self:center;width:min(320px,100%)}.portrait-ring{position:relative;aspect-ratio:1;padding:4px;border-radius:50%;background:conic-gradient(from var(--ring-angle),var(--accent),var(--product-green),rgba(var(--canvas-rgb-2),.14) 45%,rgba(var(--canvas-rgb),.14) 70%,var(--accent));box-shadow:var(--shadow-lg);animation:ring-spin 14s linear infinite;transform:perspective(900px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .7s var(--ease)}@keyframes ring-spin{to{--ring-angle:360deg}}.portrait-glare{position:absolute;inset:4px;border-radius:50%;pointer-events:none;background:radial-gradient(circle at var(--glare-x,50%) var(--glare-y,30%),hsla(0,0%,100%,.55),transparent 55%);mix-blend-mode:soft-light;opacity:var(--glare-o,0);transition:opacity .5s ease}.portrait-ring img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;border-radius:50%;border:5px solid var(--bg);background:var(--surface-2)}.portrait-chip{position:absolute;z-index:2;display:inline-flex;align-items:center;gap:6px;padding:6px 11px;border-radius:999px;font:500 .72rem/1 var(--font-mono);white-space:nowrap;color:var(--text);background:var(--surface);border:1px solid var(--border-strong);box-shadow:var(--shadow-md);animation:float 7.5s ease-in-out infinite}.portrait-chip svg{color:var(--accent);flex:none}.chip-1{top:2%;right:-12%;animation-delay:0s}.chip-2{top:43%;right:-18%;animation-delay:-1.6s}.chip-3{bottom:4%;right:-6%;animation-delay:-3.2s}.chip-4{bottom:12%;left:-13%;animation-delay:-4.8s}.chip-5{top:16%;left:-14%;animation-delay:-6.2s}.portrait-chips-mobile{display:none}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.site-section{padding-top:96px}.section-head{display:flex;align-items:center;gap:16px;margin-bottom:36px}.section-head--split{justify-content:space-between;flex-wrap:wrap;row-gap:20px}.section-title{font-family:var(--font-serif);font-weight:400;font-size:clamp(2.15rem,4.2vw,2.95rem);line-height:1.05;letter-spacing:-.015em;color:var(--text)}.about-grid{display:grid;grid-template-columns:minmax(0,1fr) 390px;grid-template-rows:auto auto 1fr;grid-template-areas:"heading heading" "text resume" "text glance";align-items:start;-moz-column-gap:44px;column-gap:44px;row-gap:16px}.about-heading{grid-area:heading;margin-bottom:20px}.about-text{grid-area:text}.about-resume{grid-area:resume}.about-glance{grid-area:glance}.about-text p{font-size:1.02rem;line-height:1.78;color:var(--text-2)}.about-text p+p{margin-top:18px}.side-card{padding:22px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm)}.exp-col-title,.side-title{font:500 .72rem/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.side-title{margin-bottom:14px}.chips{list-style:none;display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:0}.chips li{padding:6px 12px;border-radius:999px;font-size:.82rem;font-weight:500;color:var(--text-2);background:var(--surface-2);border:1px solid var(--border)}.facts{display:grid;gap:10px;margin:0}.facts div{display:grid;grid-template-columns:82px minmax(0,1fr);gap:12px;font-size:.9rem;line-height:1.5}.facts dt{color:var(--muted)}.facts dd{font-weight:500;color:var(--text);overflow-wrap:anywhere;margin:0}.facts dd a{color:var(--text);text-decoration:none}.facts dd a:hover{color:var(--accent)}.resume-widget{padding:24px;border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm)}.resume-widget-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:16px;border-bottom:1px solid var(--border)}.resume-widget-title{display:flex;align-items:center;gap:10px;font-size:.94rem;font-weight:600;color:var(--text)}.resume-widget-badge{font:500 .7rem/1 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--accent-ink);background:var(--accent-soft);border:1px solid rgba(var(--canvas-rgb),.25);padding:5px 9px;border-radius:999px}.resume-widget-list{list-style:none;margin:18px 0 0;padding:0;display:flex;flex-direction:column;gap:14px}.resume-role-row{display:flex;align-items:center;gap:13px}.resume-logo-badge{position:relative;width:40px;height:40px;flex:none;display:flex;align-items:center;justify-content:center;border-radius:999px;background:#fff;box-shadow:0 2px 6px rgba(42,43,47,.06);border:1px solid var(--border);overflow:hidden}:root.dark .resume-logo-badge,:root[data-theme=dark] .resume-logo-badge{background:var(--surface-2);border-color:var(--border-strong)}.resume-role-meta{min-width:0;flex:1}.resume-role-top{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.resume-company{font-size:.9rem;font-weight:600;color:var(--text);text-decoration:none}a.resume-company:hover{color:var(--accent)}.resume-date{font:500 .72rem/1.4 var(--font-mono);color:var(--muted);white-space:nowrap}.resume-title{font-size:.8rem;color:var(--text-2);line-height:1.35}.news-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--border)}.news-item{display:grid;grid-template-columns:92px 34px minmax(0,1fr);align-items:start;gap:18px;padding:15px 0;border-bottom:1px solid var(--border)}.news-date{padding-top:8px;font:500 .76rem/1 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;font-variant-numeric:tabular-nums;color:var(--muted)}.news-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;color:var(--text-2);background:var(--surface);border:1px solid var(--border)}.news-item.is-highlight .news-icon{color:var(--accent-ink);background:var(--accent-soft);border-color:rgba(var(--canvas-rgb),.28)}.news-item p{padding-top:4px;font-size:.97rem;line-height:1.6;color:var(--text-2);margin:0}.text-btn{display:inline-flex;align-items:center;gap:8px;margin-top:20px;padding:6px 0;border:0;border-bottom:1px solid var(--border-strong);background:none;font-size:.9rem;font-weight:500;color:var(--text);text-decoration:none;cursor:pointer;transition:color .2s ease,border-color .2s ease}.text-btn:hover{color:var(--accent);border-color:var(--accent)}.pub-filter{display:inline-flex;padding:4px;border-radius:999px;background:var(--surface-2);border:1px solid var(--border)}.filter-btn{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border:0;border-radius:999px;background:transparent;font-size:.85rem;font-weight:500;color:var(--text-2);cursor:pointer;transition:background-color .25s ease,color .25s ease,box-shadow .25s ease}.filter-btn:hover{color:var(--text)}.filter-btn.is-active{color:var(--text);background:var(--surface);box-shadow:var(--shadow-sm),0 0 0 1px var(--border)}.filter-count{min-width:22px;padding:3px 6px;border-radius:999px;font:500 .7rem/1 var(--font-mono);text-align:center;color:var(--muted);background:var(--surface-3)}.filter-btn.is-active .filter-count{color:var(--accent-ink);background:var(--accent-soft)}.pub-list{display:flex;flex-direction:column;gap:18px}.pub-year{display:flex;align-items:center;gap:14px;margin-top:18px;font:500 .78rem/1 var(--font-mono);letter-spacing:.12em;color:var(--muted)}.pub-year:after{content:"";flex:1;height:1px;background:var(--border)}.pub-list>.pub-year:first-child{margin-top:0}.pub-card{position:relative;display:grid;grid-template-columns:minmax(0,.38fr) minmax(0,.62fr);overflow:hidden;border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);transition:transform .45s var(--ease),box-shadow .45s var(--ease),border-color .3s ease}.pub-card:hover{transform:translateY(-3px);border-color:rgba(var(--canvas-rgb),.36);box-shadow:var(--shadow-lg)}.pub-media{padding:18px;background:var(--surface-2);border-right:1px solid var(--border);text-decoration:none}.pub-figure,.pub-media{display:flex;align-items:center}.pub-figure{flex:1;justify-content:center;padding:10px;overflow:hidden;border-radius:12px;background:var(--figure-bg);box-shadow:0 1px 3px rgba(42,43,47,.08),inset 0 0 0 1px rgba(0,0,0,.05)}.pub-figure img{width:100%;height:auto;max-height:235px;-o-object-fit:contain;object-fit:contain;transition:transform .7s var(--ease)}.pub-card:hover .pub-figure img{transform:scale(1.03)}.pub-body{min-width:0;display:flex;flex-direction:column;padding:22px 26px}.pub-badges{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px}.badge{display:inline-flex;align-items:center;gap:6px;padding:4px 9px;border-radius:7px;font:500 .74rem/1.25 var(--font-mono);letter-spacing:.01em}.badge-venue{color:var(--accent-ink);background:var(--accent-soft);border:1px solid rgba(var(--canvas-rgb),.24)}.badge-preprint{color:var(--text-2);background:var(--surface-2);border:1px solid var(--border-strong)}.badge-highlight{font-weight:600;color:var(--gold);background:var(--gold-soft);border:1px solid rgba(121,189,139,.35)}.pub-topic-glyphs{display:inline-flex;align-items:center;gap:5px;margin-left:auto}.topic-glyph{position:relative;width:26px;height:26px;display:grid;place-items:center;border-radius:8px;color:var(--text-2);background:var(--surface-2);border:1px solid var(--border);transition:color .2s ease,border-color .2s ease,background-color .2s ease}.topic-glyph:hover{color:var(--accent);border-color:rgba(var(--canvas-rgb),.45);background:var(--accent-soft)}.topic-glyph:after{content:attr(data-tip);position:absolute;bottom:calc(100% + 6px);left:50%;padding:3px 7px;border-radius:6px;font:500 .68rem/1.3 var(--font-mono);white-space:nowrap;color:var(--bg);background:var(--text);opacity:0;transform:translate(-50%,3px);pointer-events:none;transition:opacity .18s ease,transform .18s ease;z-index:20}.topic-glyph:hover:after{opacity:1;transform:translate(-50%)}.pub-title{font-size:1.12rem;font-weight:600;line-height:1.4;letter-spacing:-.011em;color:var(--text);margin:0}.pub-title a{color:inherit;text-decoration:none}.pub-title a:hover{color:var(--accent)}.pub-authors{margin-top:6px;font-size:.89rem;line-height:1.55;color:var(--muted)}.pub-author-self{font-weight:600;color:var(--text);text-decoration:underline;text-decoration-color:rgba(var(--canvas-rgb),.6);text-decoration-thickness:1.5px;text-underline-offset:3px}.authors-more{margin-left:5px;padding:1px 7px;border:0;border-radius:6px;background:var(--surface-2);font:500 .76rem/1.5 var(--font-mono);color:var(--text-2);cursor:pointer}.authors-more:hover{color:var(--accent)}.pub-tldr{margin-top:10px;font-size:.93rem;line-height:1.6;color:var(--text-2)}.pub-result{margin-top:8px;font-size:.87rem;line-height:1.55;color:var(--text);font-weight:500}.pub-actions{margin-top:auto;padding-top:16px;display:flex;flex-wrap:wrap;gap:8px}.pub-link{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;border-radius:999px;border:1px solid var(--border-strong);background:var(--surface);font-size:.81rem;font-weight:500;color:var(--text-2);text-decoration:none;cursor:pointer;transition:color .2s ease,border-color .2s ease,background-color .2s ease}.pub-link:hover,.pub-link[aria-expanded=true]{color:var(--accent-ink);border-color:rgba(var(--canvas-rgb),.45);background:var(--accent-soft)}.pub-abstract{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s var(--ease)}.pub-abstract>div{overflow:hidden}.pub-abstract.is-open{grid-template-rows:1fr}.pub-abstract p{margin-top:14px;padding:14px 16px;border-radius:12px;background:var(--surface-2);font-size:.89rem;line-height:1.68;color:var(--text-2)}.modal-overlay{position:fixed;inset:0;z-index:2000;display:grid;place-items:center;padding:20px;background:rgba(27,28,31,.58);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:fade-in .2s ease}.modal-panel{width:min(660px,100%);max-height:85vh;overflow:auto;padding:22px;border-radius:20px;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-lg)}.modal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.modal-head h3{font-family:var(--font-serif);font-weight:400;font-size:1.7rem;line-height:1;margin:0}.modal-code{padding:16px;border-radius:12px;border:1px solid var(--border);background:var(--surface-2);font:.8rem/1.65 var(--font-mono);white-space:pre-wrap;word-break:break-word;color:var(--text);margin:0}.modal-actions{display:flex;gap:10px;margin-top:16px}@keyframes fade-in{0%{opacity:0}}.exp-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:24px}.exp-col{padding:28px;border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm)}.exp-col-title{display:flex;align-items:center;gap:10px;margin-bottom:24px}.exp-col-title svg{color:var(--accent)}.exp-list{position:relative;list-style:none;margin:0;padding:0}.exp-list:before{content:"";position:absolute;left:19px;top:12px;bottom:12px;width:1px;background:var(--border-strong)}.exp-item{position:relative;display:flex;align-items:flex-start;gap:16px}.exp-item+.exp-item{margin-top:24px}.exp-logo{position:relative;z-index:1;width:40px;height:40px;flex:none;display:flex;align-items:center;justify-content:center;border-radius:999px;background:#fff;border:1.5px solid var(--border-strong);box-shadow:0 2px 6px rgba(42,43,47,.06)}:root.dark .exp-logo,:root[data-theme=dark] .exp-logo{background:var(--surface-2)}.exp-item.is-current .exp-logo{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.exp-date{font:500 .74rem/1.4 var(--font-mono);letter-spacing:.04em;color:var(--muted)}.exp-role{margin:2px 0 0;font-size:1rem;font-weight:600;line-height:1.38;color:var(--text)}.exp-org{margin:2px 0 0;font-size:.9rem;color:var(--text-2)}.exp-org a{font-weight:500;color:var(--text);text-decoration:none}.exp-org a:hover{color:var(--accent)}.exp-desc{margin:5px 0 0;font-size:.88rem;line-height:1.56;color:var(--muted)}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.info-card{padding:24px;border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);transition:box-shadow .4s var(--ease),border-color .3s ease,transform .35s var(--ease)}.info-card:hover{border-color:rgba(var(--canvas-rgb),.34);box-shadow:var(--shadow-md)}.info-title{display:flex;align-items:center;gap:12px;margin:0 0 18px;font-size:1.02rem;font-weight:600;color:var(--text)}.info-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:11px;color:var(--accent-ink);background:var(--accent-soft)}.info-list{list-style:none;margin:0;padding:0;display:grid;gap:12px}.info-list li{display:grid;grid-template-columns:56px minmax(0,1fr);gap:10px;font-size:.89rem;line-height:1.5;color:var(--text-2)}.info-year{font:500 .73rem/1.9 var(--font-mono);color:var(--muted)}.info-subtitle{margin:20px 0 10px;font:500 .7rem/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.site-footer{margin-top:112px;border-top:1px solid var(--border)}.site-footer-inner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px 24px;padding-block:28px;font-size:.86rem;color:var(--muted)}@media (max-width:980px){.hero-grid{grid-template-columns:1fr;gap:32px}.hero-portrait{order:-1;justify-self:start;width:100%;max-width:360px}.hero-portrait .portrait-ring{width:190px}.hero-portrait .portrait-chip{display:none}.portrait-chips-mobile{display:flex;flex-wrap:wrap;gap:7px;margin-top:16px;list-style:none;padding:0}.portrait-chips-mobile li{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border-radius:999px;font:500 .72rem/1 var(--font-mono);color:var(--text);background:var(--surface);border:1px solid var(--border-strong);box-shadow:var(--shadow-sm)}.portrait-chips-mobile li svg{color:var(--accent)}.hero-canvas{-webkit-mask-image:linear-gradient(180deg,#000,rgba(0,0,0,.4) 45%,transparent 75%);mask-image:linear-gradient(180deg,#000,rgba(0,0,0,.4) 45%,transparent 75%)}.about-grid{grid-template-columns:1fr;grid-template-rows:auto;grid-template-areas:"resume" "heading" "text" "glance";row-gap:20px}.about-heading{margin-top:28px;margin-bottom:0}.exp-grid{grid-template-columns:1fr}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.site-container,.site-nav-inner{padding-inline:20px}.menu-toggle{display:grid}.nav-actions{margin-left:auto}.nav-links{position:absolute;top:calc(var(--nav-h) - 4px);left:12px;right:12px;flex-direction:column;align-items:stretch;gap:2px;padding:10px;border-radius:18px;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-lg);opacity:0;visibility:hidden;transform:translateY(-8px) scale(.98);transform-origin:top center;transition:opacity .25s ease,transform .3s var(--ease),visibility .3s}.site-nav.menu-open .nav-links{opacity:1;visibility:visible;transform:none}.nav-links a{padding:12px 14px;border-radius:12px;font-size:.98rem}.nav-links a.is-active:after{left:auto;right:16px;bottom:auto;top:50%;transform:translateY(-50%)}.nav-links .nav-cv{margin:6px 0 0}.hero{padding:calc(var(--nav-h) + 36px) 0 24px}.site-section{padding-top:76px}.news-item{grid-template-columns:34px minmax(0,1fr);-moz-column-gap:14px;column-gap:14px;row-gap:4px}.news-date{grid-column:2;grid-row:1;padding-top:2px}.news-icon{grid-column:1;grid-row:1/span 2}.news-item p{grid-column:2;grid-row:2;padding-top:0}.card-grid,.pub-card{grid-template-columns:1fr}.pub-media{border-right:0;border-bottom:1px solid var(--border);padding:14px}.pub-body{padding:20px}.pub-topic-glyphs{margin-left:0}}@media (max-width:480px){.site-container,.site-nav-inner{padding-inline:16px}.hero-portrait .portrait-ring{width:155px}.hero-name{font-size:2.75rem}.pub-filter{width:100%}.filter-btn{flex:1;justify-content:center}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{animation-duration:.001ms!important;animation-delay:0s!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}.hover\:bg-zinc-700:hover{--tw-bg-opacity:1;background-color:rgb(63 63 70/var(--tw-bg-opacity))}.hover\:bg-zinc-100:hover{--tw-bg-opacity:1;background-color:rgb(244 244 245/var(--tw-bg-opacity))}.hover\:text-\[var\(--accent\)\]:hover{color:var(--accent)}.hover\:underline:hover{text-decoration-line:underline}.active\:bg-zinc-800:active{--tw-bg-opacity:1;background-color:rgb(39 39 42/var(--tw-bg-opacity))}.active\:bg-zinc-100:active{--tw-bg-opacity:1;background-color:rgb(244 244 245/var(--tw-bg-opacity))}.active\:text-zinc-100\/70:active{color:hsla(240,5%,96%,.7)}.active\:text-zinc-900\/60:active{color:rgba(24,24,27,.6)}.active\:transition-none:active{transition-property:none}.group:hover .group-hover\:scale-100{--tw-scale-x:1;--tw-scale-y:1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:opacity-100{opacity:1}.dark .dark\:prose-invert{--tw-prose-body:var(--tw-prose-invert-body);--tw-prose-headings:var(--tw-prose-invert-headings);--tw-prose-links:var(--tw-prose-invert-links);--tw-prose-links-hover:var(--tw-prose-invert-links-hover);--tw-prose-underline:var(--tw-prose-invert-underline);--tw-prose-underline-hover:var(--tw-prose-invert-underline-hover);--tw-prose-bold:var(--tw-prose-invert-bold);--tw-prose-counters:var(--tw-prose-invert-counters);--tw-prose-bullets:var(--tw-prose-invert-bullets);--tw-prose-hr:var(--tw-prose-invert-hr);--tw-prose-quote-borders:var(--tw-prose-invert-quote-borders);--tw-prose-captions:var(--tw-prose-invert-captions);--tw-prose-code:var(--tw-prose-invert-code);--tw-prose-code-bg:var(--tw-prose-invert-code-bg);--tw-prose-pre-code:var(--tw-prose-invert-pre-code);--tw-prose-pre-bg:var(--tw-prose-invert-pre-bg);--tw-prose-pre-border:var(--tw-prose-invert-pre-border);--tw-prose-th-borders:var(--tw-prose-invert-th-borders);--tw-prose-td-borders:var(--tw-prose-invert-td-borders)}.dark .dark\:bg-zinc-700{--tw-bg-opacity:1;background-color:rgb(63 63 70/var(--tw-bg-opacity))}.dark .dark\:bg-zinc-800\/50{background-color:rgba(39,39,42,.5)}.dark .dark\:bg-zinc-500{--tw-bg-opacity:1;background-color:rgb(113 113 122/var(--tw-bg-opacity))}.dark .dark\:bg-zinc-800{--tw-bg-opacity:1;background-color:rgb(39 39 42/var(--tw-bg-opacity))}.dark .dark\:text-zinc-300{--tw-text-opacity:1;color:rgb(212 212 216/var(--tw-text-opacity))}.dark .dark\:text-zinc-100{--tw-text-opacity:1;color:rgb(244 244 245/var(--tw-text-opacity))}.dark .dark\:text-zinc-400{--tw-text-opacity:1;color:rgb(161 161 170/var(--tw-text-opacity))}.dark .dark\:text-zinc-500{--tw-text-opacity:1;color:rgb(113 113 122/var(--tw-text-opacity))}.dark .dark\:text-zinc-200{--tw-text-opacity:1;color:rgb(228 228 231/var(--tw-text-opacity))}.dark .dark\:hover\:bg-zinc-600:hover{--tw-bg-opacity:1;background-color:rgb(82 82 91/var(--tw-bg-opacity))}.dark .dark\:hover\:bg-zinc-800:hover{--tw-bg-opacity:1;background-color:rgb(39 39 42/var(--tw-bg-opacity))}.dark .dark\:hover\:text-zinc-50:hover{--tw-text-opacity:1;color:rgb(250 250 250/var(--tw-text-opacity))}.dark .dark\:active\:bg-zinc-700:active{--tw-bg-opacity:1;background-color:rgb(63 63 70/var(--tw-bg-opacity))}.dark .dark\:active\:bg-zinc-800\/50:active{background-color:rgba(39,39,42,.5)}.dark .dark\:active\:text-zinc-100\/70:active{color:hsla(240,5%,96%,.7)}.dark .dark\:active\:text-zinc-50\/70:active{color:hsla(0,0%,98%,.7)}@media (min-width:640px){.sm\:-inset-x-6{left:-1.5rem;right:-1.5rem}.sm\:mt-14{margin-top:3.5rem}.sm\:w-72{width:18rem}.sm\:rounded-2xl{border-radius:1rem}.sm\:px-8{padding-left:2rem;padding-right:2rem}.sm\:text-5xl{font-size:3rem;line-height:3.5rem}}@media (min-width:768px){.md\:col-span-3{grid-column:span 3/span 3}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:border-l{border-left-width:1px}.md\:border-zinc-100{--tw-border-opacity:1;border-color:rgb(244 244 245/var(--tw-border-opacity))}.md\:pl-6{padding-left:1.5rem}.dark .md\:dark\:border-zinc-700\/40{border-color:rgba(63,63,70,.4)}}@media (min-width:1024px){.lg\:max-w-5xl{max-width:64rem}.lg\:px-8{padding-left:2rem;padding-right:2rem}.lg\:px-12{padding-left:3rem;padding-right:3rem}}