@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-pan-x:initial;--tw-pan-y:initial;--tw-pinch-zoom:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}}}@layer theme{:root,:host{--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-gray-300:#d1d5dc;--color-gray-400:#99a1af;--color-gray-600:#4a5565;--color-neutral-400:#a1a1a1;--color-neutral-500:#737373;--color-neutral-900:#171717;--color-neutral-950:#0a0a0a;--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-sm:24rem;--container-md:28rem;--container-4xl:56rem;--container-6xl:72rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--font-weight-light:300;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-wider:.05em;--tracking-widest:.1em;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-2xl:1rem;--ease-in-out:cubic-bezier(.4, 0, .2, 1);--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--blur-sm:8px;--blur-md:12px;--blur-lg:16px;--blur-xl:24px;--blur-3xl:64px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--animate-spotlight:spotlight 2s ease .75s 1 forwards;--color-card:#0a0d0d;--color-card-foreground:#fff;--color-border:#ffffff26;--color-background:#000;--color-foreground:#fff;--color-muted-foreground:#9ba6a3}@supports (color:lab(0% 0 0)){:root,:host{--color-gray-300:lab(85.1236% -.612259 -3.7138);--color-gray-400:lab(65.9269% -.832707 -8.17473);--color-gray-600:lab(35.6337% -1.58697 -10.8425);--color-neutral-400:lab(66.128% -.0000298023 .0000119209);--color-neutral-500:lab(48.496% 0 0);--color-neutral-900:lab(7.78201% -.0000149012 0);--color-neutral-950:lab(2.75381% 0 0)}}}@layer utilities{.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{inset:calc(var(--spacing) * 0)}.inset-1{inset:calc(var(--spacing) * 1)}.inset-3{inset:calc(var(--spacing) * 3)}.inset-5{inset:calc(var(--spacing) * 5)}.inset-x-0{inset-inline:calc(var(--spacing) * 0)}.top-0{top:calc(var(--spacing) * 0)}.top-1\/2{top:50%}.top-80{top:calc(var(--spacing) * 80)}.right-0{right:calc(var(--spacing) * 0)}.bottom-0{bottom:calc(var(--spacing) * 0)}.left-0{left:calc(var(--spacing) * 0)}.left-1\/2{left:50%}.-z-10{z-index:calc(10 * -1)}.z-0{z-index:0}.z-10{z-index:10}.z-20{z-index:20}.z-\[1\]{z-index:1}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.my-4{margin-block:calc(var(--spacing) * 4)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-12{margin-top:calc(var(--spacing) * 12)}.block{display:block}.flex{display:flex}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.aspect-\[3\/4\]{aspect-ratio:3/4}.h-0{height:calc(var(--spacing) * 0)}.h-0\.5{height:calc(var(--spacing) * .5)}.h-1{height:calc(var(--spacing) * 1)}.h-2{height:calc(var(--spacing) * 2)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-11{height:calc(var(--spacing) * 11)}.h-20{height:calc(var(--spacing) * 20)}.h-32{height:calc(var(--spacing) * 32)}.h-80{height:calc(var(--spacing) * 80)}.h-\[1px\]{height:1px}.h-\[30rem\]{height:30rem}.h-\[96\%\]{height:96%}.h-\[169\%\]{height:169%}.h-\[600px\]{height:600px}.h-full{height:100%}.min-h-\[40px\]{min-height:40px}.min-h-\[200px\]{min-height:200px}.min-h-\[640px\]{min-height:640px}.w-0{width:calc(var(--spacing) * 0)}.w-1{width:calc(var(--spacing) * 1)}.w-2{width:calc(var(--spacing) * 2)}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-6{width:calc(var(--spacing) * 6)}.w-7{width:calc(var(--spacing) * 7)}.w-10{width:calc(var(--spacing) * 10)}.w-12{width:calc(var(--spacing) * 12)}.w-20{width:calc(var(--spacing) * 20)}.w-\[138\%\]{width:138%}.w-\[320px\]{width:320px}.w-auto{width:auto}.w-full{width:100%}.max-w-4xl{max-width:var(--container-4xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-full{max-width:100%}.max-w-md{max-width:var(--container-md)}.max-w-sm{max-width:var(--container-sm)}.min-w-\[40px\]{min-width:40px}.flex-1{flex:1}.grow{flex-grow:1}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.scale-\[1\.6\]{scale:1.6}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-\[spin_1s_ease-in-out_infinite\]{animation:1s ease-in-out infinite spin}.animate-\[spin_2s_linear_infinite\]{animation:2s linear infinite spin}.animate-\[spin_3s_linear_infinite_reverse\]{animation:3s linear infinite reverse spin}.animate-\[spin_4s_linear_infinite\]{animation:4s linear infinite spin}.animate-\[spin_10s_linear_infinite\]{animation:10s linear infinite spin}.animate-pulse{animation:var(--animate-pulse)}.animate-spotlight{animation:var(--animate-spotlight)}.cursor-grab{cursor:grab}.cursor-none{cursor:none}.cursor-pointer{cursor:pointer}.touch-pan-y{--tw-pan-y:pan-y;touch-action:var(--tw-pan-x,) var(--tw-pan-y,) var(--tw-pinch-zoom,)}.resize{resize:both}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:calc(var(--spacing) * 1)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-8{gap:calc(var(--spacing) * 8)}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}.overflow-hidden{overflow:hidden}.overflow-x-hidden{overflow-x:hidden}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-\[\#15c8b6\]{border-color:#15c8b6}.border-\[\#15c8b6\]\/30{border-color:#15c8b64d;border-color:lab(72.5007% -45.4586 -3.23516/.3)}.border-\[rgba\(255\,255\,255\,0\.08\)\]{border-color:#ffffff14}.border-border{border-color:var(--color-border)}.border-transparent{border-color:#0000}.border-white\/5{border-color:#ffffff0d}@supports (color:color-mix(in lab, red, red)){.border-white\/5{border-color:color-mix(in oklab, var(--color-white) 5%, transparent)}}.border-white\/10{border-color:#ffffff1a}@supports (color:color-mix(in lab, red, red)){.border-white\/10{border-color:color-mix(in oklab, var(--color-white) 10%, transparent)}}.border-white\/20{border-color:#fff3}@supports (color:color-mix(in lab, red, red)){.border-white\/20{border-color:color-mix(in oklab, var(--color-white) 20%, transparent)}}.border-white\/\[0\.15\]{border-color:#ffffff26}@supports (color:color-mix(in lab, red, red)){.border-white\/\[0\.15\]{border-color:color-mix(in oklab, var(--color-white) 15%, transparent)}}.border-t-\[\#15c8b6\]{border-top-color:#15c8b6}.border-b-\[\#57e6d6\]{border-bottom-color:#57e6d6}.border-l-white\/55{border-left-color:#ffffff8c}@supports (color:color-mix(in lab, red, red)){.border-l-white\/55{border-left-color:color-mix(in oklab, var(--color-white) 55%, transparent)}}.bg-\[\#0a0a0c\]{background-color:#0a0a0c}.bg-\[\#0a0d0d\]{background-color:#0a0d0d}.bg-\[\#0f1211\]{background-color:#0f1211}.bg-\[\#15c8b6\]{background-color:#15c8b6}.bg-\[\#15c8b6\]\/15{background-color:#15c8b626;background-color:lab(72.5007% -45.4586 -3.23516/.15)}.bg-\[\#15c8b6\]\/70{background-color:#15c8b6b3;background-color:lab(72.5007% -45.4586 -3.23516/.7)}.bg-\[\#57e6d6\]{background-color:#57e6d6}.bg-\[\#141b1a\]{background-color:#141b1a}.bg-background{background-color:var(--color-background)}.bg-black\/10{background-color:#0000001a}@supports (color:color-mix(in lab, red, red)){.bg-black\/10{background-color:color-mix(in oklab, var(--color-black) 10%, transparent)}}.bg-black\/35{background-color:#00000059}@supports (color:color-mix(in lab, red, red)){.bg-black\/35{background-color:color-mix(in oklab, var(--color-black) 35%, transparent)}}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab, red, red)){.bg-black\/50{background-color:color-mix(in oklab, var(--color-black) 50%, transparent)}}.bg-card{background-color:var(--color-card)}.bg-card\/70{background-color:#0a0d0db3}@supports (color:color-mix(in lab, red, red)){.bg-card\/70{background-color:color-mix(in oklab, var(--color-card) 70%, transparent)}}.bg-gray-300{background-color:var(--color-gray-300)}.bg-neutral-900{background-color:var(--color-neutral-900)}.bg-neutral-900\/80{background-color:#171717cc}@supports (color:color-mix(in lab, red, red)){.bg-neutral-900\/80{background-color:color-mix(in oklab, var(--color-neutral-900) 80%, transparent)}}.bg-neutral-950{background-color:var(--color-neutral-950)}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.bg-white\/\[0\.02\]{background-color:#ffffff05}@supports (color:color-mix(in lab, red, red)){.bg-white\/\[0\.02\]{background-color:color-mix(in oklab, var(--color-white) 2%, transparent)}}.bg-gradient-to-b{--tw-gradient-position:to bottom in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-r{--tw-gradient-position:to right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-t{--tw-gradient-position:to top in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-black\/80{--tw-gradient-from:#000c}@supports (color:color-mix(in lab, red, red)){.from-black\/80{--tw-gradient-from:color-mix(in oklab, var(--color-black) 80%, transparent)}}.from-black\/80{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-neutral-950{--tw-gradient-from:var(--color-neutral-950);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-transparent{--tw-gradient-from:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-white\/10{--tw-gradient-from:#ffffff1a}@supports (color:color-mix(in lab, red, red)){.from-white\/10{--tw-gradient-from:color-mix(in oklab, var(--color-white) 10%, transparent)}}.from-white\/10{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.via-neutral-950\/50{--tw-gradient-via:#0a0a0a80}@supports (color:color-mix(in lab, red, red)){.via-neutral-950\/50{--tw-gradient-via:color-mix(in oklab, var(--color-neutral-950) 50%, transparent)}}.via-neutral-950\/50{--tw-gradient-via-stops:var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.via-white\/10{--tw-gradient-via:#ffffff1a}@supports (color:color-mix(in lab, red, red)){.via-white\/10{--tw-gradient-via:color-mix(in oklab, var(--color-white) 10%, transparent)}}.via-white\/10{--tw-gradient-via-stops:var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.to-transparent{--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.object-center{object-position:center}.object-top{object-position:top}.p-1{padding:calc(var(--spacing) * 1)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.p-8{padding:calc(var(--spacing) * 8)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-8{padding-inline:calc(var(--spacing) * 8)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.pt-0{padding-top:calc(var(--spacing) * 0)}.text-center{text-align:center}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[10px\]{font-size:10px}.text-\[30px\]{font-size:30px}.leading-none{--tw-leading:1;line-height:1}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-light{--tw-font-weight:var(--font-weight-light);font-weight:var(--font-weight-light)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[0\.3em\]{--tw-tracking:.3em;letter-spacing:.3em}.tracking-\[0\.7em\]{--tw-tracking:.7em;letter-spacing:.7em}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.whitespace-nowrap{white-space:nowrap}.text-\[\#9ba6a3\]{color:#9ba6a3}.text-\[\#15c8b6\]{color:#15c8b6}.text-\[\#57e6d6\]\/80{color:#57e6d6cc;color:lab(83.4024% -42.7866 -4.20376/.8)}.text-\[\#03211d\]{color:#03211d}.text-black{color:var(--color-black)}.text-card-foreground{color:var(--color-card-foreground)}.text-foreground{color:var(--color-foreground)}.text-gray-400{color:var(--color-gray-400)}.text-muted-foreground{color:var(--color-muted-foreground)}.text-neutral-400{color:var(--color-neutral-400)}.text-neutral-500{color:var(--color-neutral-500)}.text-white{color:var(--color-white)}.text-white\/10{color:#ffffff1a}@supports (color:color-mix(in lab, red, red)){.text-white\/10{color:color-mix(in oklab, var(--color-white) 10%, transparent)}}.text-white\/30{color:#ffffff4d}@supports (color:color-mix(in lab, red, red)){.text-white\/30{color:color-mix(in oklab, var(--color-white) 30%, transparent)}}.uppercase{text-transform:uppercase}.italic{font-style:italic}.underline-offset-4{text-underline-offset:4px}.opacity-0{opacity:0}.opacity-70{opacity:.7}.opacity-80{opacity:.8}.mix-blend-multiply{mix-blend-mode:multiply}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[0_0_6px_rgba\(87\,230\,214\,0\.9\)\]{--tw-shadow:0 0 6px var(--tw-shadow-color,#57e6d6e6);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[0_0_10px_rgba\(21\,200\,182\,0\.5\)\]{--tw-shadow:0 0 10px var(--tw-shadow-color,#15c8b680);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[0_0_10px_rgba\(21\,200\,182\,0\.8\)\]{--tw-shadow:0 0 10px var(--tw-shadow-color,#15c8b6cc);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[0_0_10px_rgba\(87\,230\,214\,0\.4\)\]{--tw-shadow:0 0 10px var(--tw-shadow-color,#57e6d666);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring,.ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-white\/10{--tw-shadow-color:#ffffff1a}@supports (color:color-mix(in lab, red, red)){.shadow-white\/10{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-white) 10%, transparent) var(--tw-shadow-alpha), transparent)}}.ring-white\/10{--tw-ring-color:#ffffff1a}@supports (color:color-mix(in lab, red, red)){.ring-white\/10{--tw-ring-color:color-mix(in oklab, var(--color-white) 10%, transparent)}}.ring-offset-background{--tw-ring-offset-color:var(--color-background)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.blur-3xl{--tw-blur:blur(var(--blur-3xl));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,)}.blur-xl{--tw-blur:blur(var(--blur-xl));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,)}.saturate-150{--tw-saturate:saturate(150%);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,)}.saturate-200{--tw-saturate:saturate(200%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-blur-lg{--tw-backdrop-blur:blur(var(--blur-lg));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.backdrop-blur-md{--tw-backdrop-blur:blur(var(--blur-md));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-500{--tw-duration:.5s;transition-duration:.5s}.ease-\[cubic-bezier\(0\.22\,1\,0\.36\,1\)\]{--tw-ease:cubic-bezier(.22,1,.36,1);transition-timing-function:cubic-bezier(.22,1,.36,1)}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}@media (hover:hover){.group-hover\:top-0:is(:where(.group):hover *){top:calc(var(--spacing) * 0)}.group-hover\:translate-x-0\.5:is(:where(.group):hover *){--tw-translate-x:calc(var(--spacing) * .5);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-hover\:-translate-y-0\.5:is(:where(.group):hover *){--tw-translate-y:calc(var(--spacing) * -.5);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-hover\:scale-105:is(:where(.group):hover *){--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}.group-hover\:bg-\[\#0f1211\]\/95:is(:where(.group):hover *){background-color:#0f1211f2;background-color:lab(5.18402% -1.2891 .148544/.95)}.group-hover\:opacity-20:is(:where(.group):hover *){opacity:.2}.group-hover\:backdrop-blur-md:is(:where(.group):hover *){--tw-backdrop-blur:blur(var(--blur-md));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.hover\:scale-105:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}.hover\:border-white\/\[0\.24\]:hover{border-color:#ffffff3d}@supports (color:color-mix(in lab, red, red)){.hover\:border-white\/\[0\.24\]:hover{border-color:color-mix(in oklab, var(--color-white) 24%, transparent)}}.hover\:bg-\[\#15c8b6\]\/50:hover{background-color:#15c8b680;background-color:lab(72.5007% -45.4586 -3.23516/.5)}.hover\:bg-black\/70:hover{background-color:#000000b3}@supports (color:color-mix(in lab, red, red)){.hover\:bg-black\/70:hover{background-color:color-mix(in oklab, var(--color-black) 70%, transparent)}}.hover\:bg-white\/10:hover{background-color:#ffffff1a}@supports (color:color-mix(in lab, red, red)){.hover\:bg-white\/10:hover{background-color:color-mix(in oklab, var(--color-white) 10%, transparent)}}.hover\:text-\[\#15c8b6\]:hover{color:#15c8b6}.hover\:text-white:hover{color:var(--color-white)}.hover\:underline:hover{text-decoration-line:underline}.hover\:shadow-\[0_22px_55px_-22px_rgba\(0\,0\,0\,0\.7\)\]:hover{--tw-shadow:0 22px 55px -22px var(--tw-shadow-color,#000000b3);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.active\:scale-95:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.active\:cursor-grabbing:active{cursor:grabbing}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-50:disabled{opacity:.5}@media (min-width:48rem){.md\:w-\[460px\]{width:460px}.md\:flex-row{flex-direction:row}.md\:items-start{align-items:flex-start}.md\:px-8{padding-inline:calc(var(--spacing) * 8)}.md\:text-left{text-align:left}.md\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.md\:text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}}@media (min-width:64rem){.lg\:w-\[84\%\]{width:84%}}@media (prefers-color-scheme:dark){.dark\:bg-card\/30{background-color:#0a0d0d4d}@supports (color:color-mix(in lab, red, red)){.dark\:bg-card\/30{background-color:color-mix(in oklab, var(--color-card) 30%, transparent)}}.dark\:bg-gray-600{background-color:var(--color-gray-600)}}}@keyframes spotlight{0%{opacity:0;transform:translate(-72%,-62%)scale(.5)}to{opacity:1;transform:translate(-50%,-40%)scale(1)}}:root{--bg:#000;--bg-1:#0a0d0d;--bg-2:#0f1413;--bg-3:#141b1a;--line:#ffffff14;--line-2:#ffffff26;--line-3:#ffffff3d;--text:#fff;--text-dim:#9ba6a3;--text-faint:#646f6c;--accent:#15c8b6;--accent-2:#57e6d6;--accent-ink:#03211d;--accent-12:#15c8b61f;--accent-20:#15c8b638;--accent-glow:#15c8b661;--font-display:"Space Grotesk", system-ui, sans-serif;--font-body:"Hanken Grotesk", system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;--maxw:1200px;--gut:clamp(20px, 5vw, 64px);--radius:14px;--radius-lg:22px;--ease:cubic-bezier(.22, 1, .36, 1)}:root[data-accent=blue]{--accent:#3f7bff;--accent-2:#7aa4ff;--accent-ink:#020817;--accent-12:#3f7bff24;--accent-20:#3f7bff38;--accent-glow:#3f7bff66}:root[data-accent=amber]{--accent:#ffb02e;--accent-2:#ffc764;--accent-ink:#1c1200;--accent-12:#ffb02e24;--accent-20:#ffb02e38;--accent-glow:#ffb02e66}*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:96px;overflow-x:hidden}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background:var(--bg);color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:17px;line-height:1.6;overflow-x:hidden}::selection{background:var(--accent);color:var(--accent-ink)}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}ul,ol{margin:0;padding:0}.nav-links,.skill-list,.award-list,.rec-list,.proof-grid,.edu-scholar-list,.timeline,.speaking-list,.certs-list,.socials,.stack-tags,.suggest{margin:0;padding:0;list-style:none}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}img{max-width:100%;display:block}h1,h2,h3,h4{margin:0;font-weight:600}.mono{font-family:var(--font-mono)}.display{font-family:var(--font-display)}.eyebrow{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--accent);align-items:center;gap:10px;font-size:12.5px;display:inline-flex}.eyebrow-ic{color:var(--accent);align-items:center;display:inline-flex}.eyebrow-ic svg{display:block}.section{max-width:var(--maxw);padding-left:var(--gut);padding-right:var(--gut);margin:0 auto}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:48px;display:flex}.section-title{font-family:var(--font-display);letter-spacing:-.02em;margin:14px 0 0;font-size:clamp(28px,4vw,46px);font-weight:600;line-height:1.02}.section-index{font-family:var(--font-mono);color:var(--text-faint);font-size:13px}.nav{z-index:80;padding:16px var(--gut);transition:background .4s var(--ease), border-color .4s var(--ease), padding .4s var(--ease);border-bottom:1px solid #0000;justify-content:space-between;align-items:center;display:flex;position:fixed;top:0;left:0;right:0}.nav.scrolled{background:var(--bg)}@supports (color:color-mix(in lab, red, red)){.nav.scrolled{background:color-mix(in srgb, var(--bg) 72%, transparent)}}.nav.scrolled{-webkit-backdrop-filter:blur(14px)saturate(140%);border-bottom:1px solid var(--line);padding-top:12px;padding-bottom:12px}.brand{align-items:center;gap:12px;display:flex}.brand-mark{border:1px solid var(--line-2);width:34px;height:34px;font-family:var(--font-mono);color:var(--accent);background:var(--bg-1);border-radius:9px;place-items:center;font-size:14px;font-weight:700;display:grid;position:relative;overflow:hidden}.brand-mark:after{content:"";background:radial-gradient(circle at 30% 20%, var(--accent-20), transparent 70%);position:absolute;inset:0}.brand-mark img{z-index:1;display:block;position:relative}.brand-name{font-family:var(--font-display);letter-spacing:-.01em;white-space:nowrap;font-size:15px;font-weight:600}.brand-sub{font-family:var(--font-mono);color:var(--text-faint);font-size:11px}.nav-links{align-items:center;gap:30px;display:flex}.nav-item{position:relative}.nav-link{font-family:var(--font-mono);color:var(--text-dim);letter-spacing:.02em;background:0 0;border:none;align-items:center;gap:6px;padding:0;font-size:13px;transition:color .2s;display:inline-flex;position:relative}.nav-link .caret{transition:transform .25s var(--ease);opacity:.7}.nav-item:hover .nav-link .caret{transform:rotate(180deg)}.nav-link:after{content:"";background:var(--accent);height:1px;transition:right .3s var(--ease);position:absolute;bottom:-5px;left:0;right:100%}.nav-link:hover{color:var(--text)}.nav-link:after{display:none}.nav-link.active{color:var(--accent)}.nav-lamp{z-index:-1;background:var(--accent);border-radius:999px;position:absolute;inset:-7px -14px}@supports (color:color-mix(in lab, red, red)){.nav-lamp{background:color-mix(in srgb, var(--accent) 13%, transparent)}}.nav-lamp:before{content:"";background:var(--accent);border-radius:999px;height:3px;position:absolute;bottom:0;left:16px;right:16px;transform:translateY(50%)}.nav-lamp:after{content:"";background:var(--accent);opacity:.4;filter:blur(9px);border-radius:999px;width:60%;height:13px;position:absolute;bottom:0;left:50%;transform:translate(-50%,50%)}.nav-menu{background:var(--bg-1);min-width:230px;position:absolute;top:calc(100% + 14px);left:50%;transform:translate(-50%)translateY(8px)}@supports (color:color-mix(in lab, red, red)){.nav-menu{background:color-mix(in srgb, var(--bg-1) 96%, transparent)}}.nav-menu{-webkit-backdrop-filter:blur(14px);border:1px solid var(--line-2);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .22s var(--ease), transform .22s var(--ease), visibility .22s;z-index:90;border-radius:14px;flex-direction:column;gap:2px;padding:8px;display:flex;box-shadow:0 30px 60px -30px #000000e6}.nav-menu:before{content:"";height:16px;position:absolute;bottom:100%;left:0;right:0}.nav-item:hover .nav-menu,.nav-item:focus-within .nav-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%)translateY(0)}.nav-menu a{font-family:var(--font-mono);color:var(--text-dim);border-radius:9px;align-items:center;gap:10px;padding:10px 12px;font-size:12.5px;transition:background .18s,color .18s;display:flex}.nav-menu a:hover{background:var(--bg-3);color:var(--text)}.nav-menu a .mi{color:var(--text-faint);font-size:11px;transition:color .18s}.nav-menu a:hover .mi{color:var(--accent)}.nav-cta{font-family:var(--font-mono);color:var(--accent-ink);background:var(--accent);transition:transform .2s var(--ease), box-shadow .3s;border:none;border-radius:9px;align-items:center;gap:8px;padding:9px 15px;font-size:13px;font-weight:500;display:inline-flex}.nav-cta:hover{box-shadow:0 8px 24px -8px var(--accent-glow);transform:translateY(-1px)}.nav-cta .dot{background:var(--accent-ink);border-radius:50%;width:7px;height:7px;animation:2s infinite pulse}.status-pill{font-family:var(--font-mono);color:var(--text-dim);border:1px solid var(--line);background:var(--bg-1);border-radius:99px;align-items:center;gap:8px;padding:6px 12px;font-size:12px;display:inline-flex}.status-dot{background:var(--accent);width:7px;height:7px;box-shadow:0 0 0 0 var(--accent-glow);border-radius:50%;animation:2.4s infinite pulse}@keyframes pulse{50%{opacity:.5}}.nav-burger{border:1px solid var(--line-2);width:38px;height:38px;color:var(--text);background:0 0;border-radius:8px;display:none}.hero{min-height:100vh;padding:140px var(--gut) 60px;flex-direction:column;justify-content:center;max-width:1240px;margin:0 auto;display:flex;position:relative;overflow:hidden}.hero-grid-bg{z-index:0;pointer-events:none;background-image:linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px);background-size:56px 56px;animation:22s linear infinite gridDrift;display:none;position:absolute;inset:0;-webkit-mask-image:radial-gradient(90% 70% at 50% 35%,#000 30%,#0000 78%);mask-image:radial-gradient(90% 70% at 50% 35%,#000 30%,#0000 78%)}.hero-glow{z-index:0;pointer-events:none;background:radial-gradient(circle, var(--accent-12), transparent 62%);filter:blur(20px);border-radius:50%;width:720px;height:720px;position:absolute;top:18%;left:50%;transform:translate(-50%,-50%)}@keyframes gridDrift{0%{background-position:0 0,0 0}to{background-position:56px 56px,56px 56px}}@media (prefers-reduced-motion:reduce){.hero-grid-bg{animation:none}}.hero-inner{z-index:2;width:100%;position:relative}.hero-card{-webkit-backdrop-filter:blur(18px)saturate(165%);border-radius:var(--radius-lg);background:linear-gradient(135deg,#ffffff12,#ffffff04);border:1px solid #ffffff29;width:100%;height:clamp(420px,54vh,520px);margin-top:8px;position:relative;overflow:hidden;box-shadow:0 40px 90px -50px #000000e6,inset 0 1.5px 1px #ffffff4d,inset 0 -28px 60px -40px #ffffff12,inset 0 0 0 1px #ffffff0a}.hero-card:after{content:"";z-index:1;pointer-events:none;background:linear-gradient(#ffffff1f,#0000 20%),radial-gradient(130% 70% at 14% -10%,#ffffff29,#0000 44%);position:absolute;inset:0}.hero-card-grid{height:100%;display:flex}.hero-card-text{z-index:10;flex-direction:column;flex:1;justify-content:center;min-width:0;padding:clamp(26px,4vw,52px);display:flex;position:relative}.hero-card-text .eyebrow{margin-bottom:18px}.hero-card-text .hero-lede{max-width:none;margin-top:0;font-size:clamp(30px,4.4vw,56px);line-height:1.04}.hero-card-text .hero-lede-sub{max-width:none}.hero-card-robot{flex:1;position:relative}.hero-card-robot .spline-fill{width:100%;height:100%}.hero-robot-loading{place-items:center;display:grid;position:absolute;inset:0}.hero-meta{font-family:var(--font-mono);letter-spacing:.02em;color:var(--text-dim);margin:28px 0 0;font-size:12.5px}.hero-inner>.console{margin-top:clamp(28px,5vh,52px)}.loader{border:3px solid var(--line-2);border-top-color:var(--accent);border-radius:50%;width:38px;height:38px;animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@keyframes floatY{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes panelRise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media (max-width:860px){.hero-card{height:auto}.hero-card-grid{flex-direction:column}.hero-card-text{padding-bottom:8px}.hero-card-robot{aspect-ratio:3/4;flex:none;align-self:center;width:min(320px,84%);min-height:0}}.hero-lede{font-family:var(--font-display);letter-spacing:-.025em;max-width:16ch;color:var(--text);margin:26px 0 0;font-size:clamp(26px,4vw,46px);font-weight:600;line-height:1.08}.hero-lede .accent{color:var(--accent)}.hero-lede-sub{font-family:var(--font-mono);color:var(--text-dim);max-width:52ch;margin:16px 0 0;font-size:clamp(13px,1.4vw,15px)}.hero-top{flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:26px;display:flex}.hero-loc{font-family:var(--font-mono);color:var(--text-dim);align-items:center;gap:8px;font-size:12.5px;display:inline-flex}.console{background:radial-gradient(130% 90% at 50% 0%, var(--accent), transparent 58%), linear-gradient(135deg, #ffffff0e, #ffffff03);margin-top:40px}@supports (color:color-mix(in lab, red, red)){.console{background:radial-gradient(130% 90% at 50% 0%, color-mix(in srgb, var(--accent) 8%, transparent), transparent 58%), linear-gradient(135deg, #ffffff0e, #ffffff03)}}.console{-webkit-backdrop-filter:blur(18px)saturate(165%);border-radius:var(--radius-lg);border:1px solid #ffffff29;position:relative;overflow:hidden;box-shadow:0 40px 90px -50px #000000e6,inset 0 1.5px 1px #ffffff4d,inset 0 -28px 60px -40px #ffffff12,inset 0 0 0 1px #ffffff0a}.console:before{content:"";z-index:3;background:linear-gradient(90deg, transparent, var(--accent-20), transparent);height:1px;position:absolute;top:0;left:0;right:0}.console:after{content:"";z-index:2;pointer-events:none;background:linear-gradient(#ffffff1a,#0000 16%),radial-gradient(130% 60% at 14% -12%,#ffffff24,#0000 42%);position:absolute;inset:0}.console-bar{border-bottom:1px solid var(--line);background:var(--bg-2);align-items:center;gap:12px;padding:13px 18px;display:flex}@supports (color:color-mix(in lab, red, red)){.console-bar{background:color-mix(in srgb, var(--bg-2) 60%, transparent)}}.console-dots{gap:7px;display:flex}.console-dots i{background:var(--bg-3);border-radius:50%;width:11px;height:11px;display:block}.console-title{font-family:var(--font-mono);color:var(--text-dim);font-size:12.5px}.console-badge{font-family:var(--font-mono);color:var(--accent);border:1px solid var(--accent-20);background:var(--accent-12);border-radius:99px;align-items:center;gap:6px;margin-left:auto;padding:4px 10px;font-size:11px;display:inline-flex}.console-body{scroll-behavior:smooth;flex-direction:column;gap:18px;min-height:480px;max-height:min(820px,78vh);padding:26px 28px;display:flex;overflow-y:auto}.console-body::-webkit-scrollbar{width:8px}.console-body::-webkit-scrollbar-thumb{background:var(--line-2);border-radius:99px}.msg{animation:msgIn .45s var(--ease) both;align-items:flex-start;gap:13px;display:flex}@keyframes msgIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.msg-avatar{width:30px;height:30px;font-family:var(--font-mono);border:1px solid var(--line-2);border-radius:8px;flex:none;place-items:center;font-size:12px;font-weight:700;display:grid}.msg.bot .msg-avatar{color:var(--accent);background:var(--accent-12);border-color:var(--accent-20)}.msg.user .msg-avatar{color:var(--text-dim);background:var(--bg-2)}.msg-body{flex:1;min-width:0}.msg.user{flex-direction:row-reverse}.msg.user .msg-body{text-align:right}.msg-name{font-family:var(--font-mono);color:var(--text-faint);letter-spacing:.04em;margin-bottom:5px;font-size:11px}.msg-text{color:var(--text);overflow-wrap:anywhere;font-size:15.5px;line-height:1.62}.msg.bot .msg-text{color:var(--text)}.msg-text p{margin:0 0 10px}.msg-text p:last-child{margin-bottom:0}.msg-text strong{color:var(--accent-2);font-weight:600}.msg.user .msg-text{background:var(--bg-2);border:1px solid var(--line);border-radius:12px;padding:9px 14px;font-size:15px;display:inline-block}.cursor{background:var(--accent);vertical-align:-2px;width:8px;height:1.05em;margin-left:2px;animation:1s steps(2,end) infinite blink;display:inline-block}@keyframes blink{50%{opacity:0}}.cites{flex-wrap:wrap;gap:8px;margin-top:13px;display:flex}.cite{font-family:var(--font-mono);color:var(--text-dim);border:1px solid var(--line);background:var(--bg-2);cursor:default;animation:msgIn .4s var(--ease) both;border-radius:7px;align-items:center;gap:7px;padding:5px 9px;font-size:11px;transition:border-color .2s,color .2s,transform .2s;display:inline-flex}.cite:hover{border-color:var(--accent-20);color:var(--text);transform:translateY(-1px)}.cite .ic{color:var(--accent);display:inline-flex}.cite .ln{color:var(--text-faint)}.suggest{flex-wrap:wrap;gap:9px;display:flex}.chip{font-family:var(--font-mono);color:var(--text-dim);border:1px solid var(--line-2);transition:all .2s var(--ease);background:0 0;border-radius:99px;padding:8px 14px;font-size:12.5px}.chip:hover{color:var(--text);border-color:var(--accent);background:var(--accent-12);transform:translateY(-1px)}.chip:disabled{opacity:.5;cursor:default}.chip .pre{color:var(--accent);margin-right:7px}.console-input{background:0 0;border-top:none;align-items:center;gap:12px;padding:14px 16px;display:flex}.console-input .prompt{color:var(--accent);font-family:var(--font-mono);flex:none;font-size:15px}.console-input input{min-width:0;color:var(--text);font-family:var(--font-mono);background:0 0;border:none;outline:none;flex:1;font-size:15px}.console-input input::placeholder{color:var(--text-faint)}.send-btn{background:var(--accent);color:var(--accent-ink);font-family:var(--font-mono);border:none;border-radius:9px;flex:none;align-items:center;gap:7px;padding:9px 14px;font-size:13px;font-weight:600;transition:transform .15s,box-shadow .3s,opacity .2s;display:inline-flex}.console-hint{text-align:center;line-height:1.5;font-family:var(--font-mono);color:var(--text-faint);padding:4px 22px 20px;font-size:11px;display:block}.console-hint svg{vertical-align:-1.5px;margin-right:6px;display:inline}.scroll-cue{font-family:var(--font-mono);color:var(--text-faint);letter-spacing:.15em;flex-direction:column;align-items:center;gap:8px;margin:46px auto 0;font-size:11px;display:flex}.scroll-cue .bar{background:linear-gradient(var(--accent), transparent);width:1px;height:34px;animation:cueDrop 1.8s var(--ease) infinite}@keyframes cueDrop{0%{transform-origin:top;opacity:.4;transform:scaleY(.3)}50%{opacity:1;transform:scaleY(1)}to{transform-origin:bottom;opacity:.4;transform:scaleY(.3)}}.proof{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--bg-1);margin-top:30px}.proof-grid{max-width:var(--maxw);grid-template-columns:repeat(5,1fr);margin:0 auto;display:grid}.proof-cell{padding:30px var(--gut);border-right:1px solid var(--line);flex-direction:column;gap:7px;display:flex;position:relative}.proof-cell:last-child{border-right:none}.proof-num{font-family:var(--font-display);letter-spacing:-.02em;color:var(--text);font-size:clamp(26px,3.4vw,40px);font-weight:600;line-height:1}.proof-num .u{color:var(--accent)}.proof-label{font-family:var(--font-mono);color:var(--text-dim);font-size:11.5px;line-height:1.4}.block{padding-block:clamp(80px,12vh,140px)}.proj-feature{border:1px solid var(--line-2);border-radius:var(--radius-lg);background:var(--bg-1);animation:projSlideIn .38s var(--ease) both;grid-template-columns:1.15fr 1fr;transition:border-color .35s;display:grid;overflow:hidden}@keyframes projSlideIn{0%{opacity:0;transform:translate(-26px)}to{opacity:1;transform:translate(0)}}@media (prefers-reduced-motion:reduce){.proj-feature{animation:none}}.proj-feature:hover{border-color:var(--line-3)}.proj-feature-media{border-left:1px solid var(--line);background:var(--bg-2);place-items:center;min-height:100%;padding:28px;display:grid;position:relative;overflow:hidden}.proj-feature-media:has(.media-toggle){padding-top:60px;padding-bottom:20px}.media-toggle{z-index:4;-webkit-backdrop-filter:blur(10px)saturate(150%);backdrop-filter:blur(10px)saturate(150%);background:#12141499;border:1px solid #ffffff24;border-radius:999px;gap:3px;padding:3px;display:inline-flex;position:absolute;top:16px;left:50%;transform:translate(-50%);box-shadow:0 10px 30px -18px #000000e6,inset 0 1px #ffffff14}.media-toggle button{cursor:pointer;font:inherit;letter-spacing:.01em;color:var(--text-faint);background:0 0;border:0;border-radius:999px;align-items:center;gap:6px;padding:6px 14px;font-size:12.5px;transition:color .25s,background .25s;display:inline-flex}.media-toggle button svg{opacity:.9}.media-toggle button:hover{color:var(--text)}.media-toggle button.active{color:#06201d;background:var(--accent);box-shadow:0 6px 18px -8px #15c8b699}.shot-gallery{flex-direction:column;align-items:center;gap:14px;width:100%;display:flex}.shot-nav{align-items:center;gap:12px;display:inline-flex}.shot-nav>button{cursor:pointer;width:32px;height:32px;color:var(--text-dim);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#12141499;border:1px solid #ffffff24;border-radius:999px;justify-content:center;align-items:center;transition:color .2s,border-color .2s,background .2s;display:inline-flex}.shot-nav>button:hover{color:var(--accent);border-color:var(--accent-20);background:var(--accent-12)}.shot-dots{align-items:center;gap:7px;display:inline-flex}.shot-dots button{cursor:pointer;background:var(--line-3);width:8px;height:8px;transition:all .25s var(--ease);border:0;border-radius:999px;padding:0}.shot-dots button:hover{background:var(--accent-40,#15c8b680)}.shot-dots button.active{background:var(--accent);width:20px}.phone-wrap:before{content:"";z-index:-1;aspect-ratio:1;pointer-events:none;background:var(--accent);border-radius:50%;width:168%;position:absolute;top:calc(50% - 28px);left:50%;transform:translate(-50%,-50%)}.phone-wrap{z-index:1;flex-direction:column;align-items:center;gap:16px;display:flex;position:relative}.phone-frame{z-index:1;aspect-ratio:9/19;border:1px solid var(--line-3);max-width:100%;height:clamp(400px,62vh,560px);transition:transform .4s var(--ease);background:linear-gradient(160deg,#1b201f,#0a0d0d);border-radius:40px;padding:10px;position:relative;box-shadow:0 34px 70px -30px #000000d9,inset 0 0 0 1px #ffffff0d}.proj-feature:hover .phone-frame{transform:translateY(-4px)}.phone-island{z-index:3;background:#000;border-radius:14px;width:82px;height:22px;position:absolute;top:19px;left:50%;transform:translate(-50%)}.phone-btn{z-index:0;background:linear-gradient(#20211f,#303330 50%,#141513);border-radius:3px;position:absolute}.phone-btn.pb-mute{width:3px;height:26px;top:92px;left:-3px}.phone-btn.pb-volup{width:3px;height:46px;top:140px;left:-3px}.phone-btn.pb-voldn{width:3px;height:46px;top:198px;left:-3px}.phone-btn.pb-power{width:3px;height:64px;top:150px;right:-3px}.phone-screen{background:#000;border-radius:31px;width:100%;height:100%;position:relative;overflow:hidden}.phone-screen video,.phone-screen img{object-fit:cover;width:100%;height:100%;display:block}.phone-ctrl{z-index:4;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0000008c;border:1px solid #ffffff1f;border-radius:99px;align-items:center;gap:10px;width:clamp(200px,30vh,272px);padding:8px 12px;display:flex}.phone-ctrl button{cursor:pointer;width:26px;height:26px;color:var(--accent-ink);background:var(--accent);transition:transform .2s var(--ease), background .2s var(--ease);border:none;border-radius:50%;flex:none;place-items:center;display:grid}.phone-ctrl button:hover{background:var(--accent-2);transform:scale(1.08)}.phone-time{font-family:var(--font-mono);color:#ffffffbf;white-space:nowrap;letter-spacing:-.02em;flex:none;font-size:9.5px}.phone-seek{appearance:none;cursor:pointer;background:#fff3;background-image:linear-gradient(var(--accent), var(--accent));background-size:var(--p,0%) 100%;background-repeat:no-repeat;border-radius:99px;flex:1;min-width:0;height:4px}.phone-seek::-webkit-slider-thumb{appearance:none;background:var(--accent);width:12px;height:12px;box-shadow:0 0 0 1px var(--accent);border:2px solid #000;border-radius:50%}.phone-seek::-moz-range-thumb{background:var(--accent);border:2px solid #000;border-radius:50%;width:12px;height:12px}.phone-ph{text-align:center;width:100%;height:100%;font-family:var(--font-mono);color:var(--text-faint);background:radial-gradient(circle at 50% 32%, var(--accent-12), transparent 60%), var(--bg-1);place-items:center;padding:26px;font-size:12px;line-height:1.5;display:grid}.macbook-svg-wrap{z-index:1;width:min(100%,580px);transition:transform .4s var(--ease);justify-content:center;display:flex;position:relative}.proj-feature:hover .macbook-svg-wrap{transform:translateY(-4px)}.macbook-svg{color:#0b0e0e;filter:drop-shadow(0 24px 34px #0000008c);width:100%;height:auto}.proj-feature:has(.proj-feature-media.is-desktop){grid-template-columns:1fr 1.42fr}.mac-wrap{z-index:1;flex-direction:column;align-items:center;gap:16px;width:100%;display:flex;position:relative}.macbook{z-index:1;width:min(100%,620px);transition:transform .4s var(--ease);flex-direction:column;align-items:center;display:flex;position:relative}.proj-feature:hover .macbook{transform:translateY(-4px)}.mac-screen{border:1px solid var(--line-3);background:linear-gradient(160deg,#2b2f2e,#0b0e0e);border-radius:16px;width:100%;padding:11px;box-shadow:0 26px 58px -30px #000000d9,inset 0 0 0 1px #ffffff0f}.mac-display{background:#000;border-radius:6px;position:relative;overflow:hidden}.mac-bar{border-bottom:1px solid var(--line);background:#14181a;align-items:center;gap:7px;padding:8px 12px;display:flex}.browser-dot{border-radius:50%;flex:none;width:11px;height:11px}.browser-dot.r{background:#ff5f57}.browser-dot.y{background:#febc2e}.browser-dot.g{background:#28c840}.browser-url{min-width:0;font-family:var(--font-mono);color:var(--text-dim);background:var(--bg-1);border:1px solid var(--line);white-space:nowrap;text-overflow:ellipsis;border-radius:6px;flex:1;margin-left:8px;padding:4px 11px;font-size:11px;overflow:hidden}.mac-content{aspect-ratio:16/10;background:#000;width:100%;position:relative;overflow:hidden}.mac-content video,.mac-content img{object-fit:cover;width:100%;height:100%;display:block}.mac-content img.shot,.phone-screen img.shot{object-fit:contain;background:#0b0e0e}.mac-content:has(img.shot-fill){aspect-ratio:auto}.mac-content img.shot.shot-fill{object-fit:fill;background:0 0;height:auto}.mac-base{background:linear-gradient(#cfd4d6,#949a9c 46%,#6b7072);border-radius:2px 2px 11px 11px;width:111%;height:15px;position:relative;box-shadow:0 12px 20px -9px #000000bf}.mac-base:before{content:"";background:#565b5d;border-radius:0 0 9px 9px;width:16%;height:6px;position:absolute;top:0;left:50%;transform:translate(-50%)}.proj-feature-body{min-width:0;padding:clamp(28px,4vw,48px)}.proj-tag-row{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:22px;display:flex}.badge-ms{font-family:var(--font-mono);color:var(--text);border:1px solid var(--line-2);background:var(--bg-2);border-radius:99px;align-items:center;gap:8px;padding:5px 11px;font-size:11px;display:inline-flex}.badge-ms .ms{grid-template-columns:1fr 1fr;gap:1.5px;display:grid}.badge-ms .ms i{width:6px;height:6px;display:block}.proj-name{font-family:var(--font-display);letter-spacing:-.025em;margin:0 0 6px;font-size:clamp(30px,4vw,48px);font-weight:600;line-height:1}.proj-kicker{font-family:var(--font-mono);color:var(--accent);margin-bottom:22px;font-size:13px}.po-grid{gap:20px;margin:26px 0;display:grid}.po-item{border-left:2px solid var(--line-2);padding-left:16px}.po-item .k{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text-faint);margin-bottom:6px;font-size:11px}.po-item .v{color:var(--text);font-size:15.5px;line-height:1.55}.po-item .v b,.po-item .v strong{color:var(--accent-2);font-weight:600}.stack-tags{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.tag{font-family:var(--font-mono);color:var(--text-dim);border:1px solid var(--line);background:var(--bg-2);border-radius:7px;align-items:center;padding:5px 10px;font-size:12px;transition:color .2s,border-color .2s,background .2s;display:inline-flex}.tag:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-12)}.tag-ico{background-color:currentColor;flex:none;width:13px;height:13px;margin-right:6px;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.skill .tag-ico{width:15px;height:15px;margin-top:1.5px;margin-right:7px}.tag-ico-img{object-fit:contain;background-color:#0000;-webkit-mask-image:none;mask-image:none}.outcome-row{border-top:1px solid var(--line);flex-wrap:wrap;gap:34px;margin-top:30px;padding-top:26px;display:flex}.outcome .n{font-family:var(--font-display);letter-spacing:-.02em;color:var(--accent);font-size:30px;font-weight:600;line-height:1}.outcome .l{font-family:var(--font-mono);color:var(--text-dim);max-width:160px;margin-top:7px;font-size:11.5px;line-height:1.4}.proj-grid{grid-template-columns:repeat(3,1fr);gap:20px;margin-top:22px;display:grid}.proj-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-1);transition:transform .3s var(--ease), border-color .3s, background .3s;flex-direction:column;gap:14px;padding:26px;display:flex;position:relative;overflow:hidden}.proj-card:before{content:"";z-index:1;background:var(--accent);width:0;height:2px;transition:width .4s var(--ease);position:absolute;top:0;left:0}.proj-card:hover{border-color:var(--line-3);background:var(--bg-2);transform:translateY(-4px)}.proj-card:hover:before{width:100%}.proj-card-media{border:1px solid var(--line);width:100%;height:168px;margin-bottom:4px;display:block}.proj-card .idx{font-family:var(--font-mono);color:var(--text-faint);font-size:12px}.proj-card .nm{font-family:var(--font-display);letter-spacing:-.01em;font-size:21px;font-weight:600}.proj-card .pr{color:var(--text-dim);flex:1;font-size:15px;line-height:1.55}.proj-card-foot{justify-content:space-between;align-items:center;gap:12px;display:flex}.proj-card .oc{font-family:var(--font-mono);color:var(--accent);align-items:center;gap:8px;font-size:12.5px;display:flex}.proj-card-link{font-family:var(--font-mono);color:var(--text-dim);border:1px solid var(--line-2);border-radius:7px;flex:none;align-items:center;gap:5px;padding:5px 9px;font-size:12px;transition:all .2s;display:inline-flex}.proj-card-link:hover{color:var(--accent);border-color:var(--accent-20);background:var(--accent-12)}.proj-live{font-family:var(--font-mono);color:var(--accent-ink);border:1px solid var(--accent);background:var(--accent);border-radius:9px;align-items:center;gap:9px;max-width:100%;margin-top:26px;padding:10px 15px;font-size:13px;font-weight:600;transition:transform .2s,box-shadow .3s,filter .2s;display:inline-flex;box-shadow:0 10px 24px -12px #15c8b699}.proj-live svg{flex:none}.proj-live-label{text-overflow:ellipsis;white-space:nowrap;flex:0 auto;min-width:0;overflow:hidden}.proj-live:hover{filter:brightness(1.06);transform:translateY(-1px);box-shadow:0 12px 30px -10px #15c8b6bf}.skill-wheel{max-width:100%;margin:6px auto 40px;position:relative}.skill-wheel-ring{animation:46s linear infinite wheelSpin;position:absolute;inset:0}.skill-wheel-node{color:var(--accent);background:var(--bg-2);border:1px solid var(--accent-20);border-radius:50%;place-items:center;transition:border-color .3s,box-shadow .3s;animation:46s linear infinite wheelSpinRev;display:grid;position:absolute;box-shadow:0 8px 20px -10px #0009,inset 0 0 0 1px #ffffff05}.skill-wheel:hover .skill-wheel-node{border-color:var(--accent);box-shadow:0 8px 24px -8px var(--accent-glow)}.skill-wheel-ico{background-color:currentColor;width:24px;height:24px;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.skill-wheel-ico-img{object-fit:contain;width:26px;height:26px}.skill-wheel-center{pointer-events:none;place-items:center;display:grid;position:absolute;inset:0}.skill-wheel-center span{text-align:center;aspect-ratio:1;background:radial-gradient(circle at 50% 35%, var(--accent-12), transparent 70%), var(--bg-1);border:1px solid var(--line-2);width:44%;font-family:var(--font-mono);letter-spacing:.16em;color:var(--accent);border-radius:50%;place-items:center;font-size:13px;display:grid;box-shadow:inset 0 0 0 6px #15c8b60a}@keyframes wheelSpin{to{transform:rotate(360deg)}}@keyframes wheelSpinRev{to{transform:rotate(-360deg)}}@media (prefers-reduced-motion:reduce){.skill-wheel-ring,.skill-wheel-node{animation:none}}@media (max-width:520px){.skill-wheel{margin-bottom:12px}}.skill-marq{flex-direction:column;gap:14px;margin-top:4px;display:flex}.skill-marq-row{align-items:center;gap:18px;display:flex}.skill-marq-label{width:148px;font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--accent);text-align:right;flex:none;justify-content:flex-end;align-items:center;gap:8px;font-size:11px;display:flex}.skill-marq-dot{background:var(--accent);border-radius:50%;flex:none;width:6px;height:6px}.skill-marq-vp{flex:1;min-width:0;padding:3px 0;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 5% 95%,#0000);mask-image:linear-gradient(90deg,#0000,#000 5% 95%,#0000)}.skill-marq-track{gap:8px;width:max-content;animation-name:marqScroll;animation-timing-function:linear;animation-iteration-count:infinite;display:flex}.skill-marq-row[data-dir=rev] .skill-marq-track{animation-direction:reverse}.skill-marq-vp:hover .skill-marq-track{animation-play-state:paused}.marq-chip{cursor:default;flex:none}@keyframes marqScroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.skill-marq-track{animation:none}}@media (max-width:640px){.skill-marq-row{flex-direction:column;align-items:stretch;gap:6px}.skill-marq-label{text-align:left;justify-content:flex-start;width:auto}}.skill-groups{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.skill-group{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-1);padding:28px;transition:border-color .3s}.skill-group:hover{border-color:var(--line-2)}.skill-group h3{margin:0 0 20px;font-weight:400}.sg-badge{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--accent-ink);background:var(--accent);border:1px solid var(--accent);border-radius:8px;align-items:center;gap:8px;padding:7px 13px;font-size:12px;font-weight:600;display:inline-flex;box-shadow:0 6px 16px -8px #15c8b68c}.sg-badge svg{flex:none}.skill-group .gn{font-family:var(--font-mono);color:var(--text-faint);margin-bottom:22px;font-size:11px}.skill-list{flex-wrap:wrap;gap:11px;display:flex}.skill{font-family:var(--font-mono);color:var(--text);border:1px solid var(--line-2);background:var(--bg-2);transition:all .2s var(--ease);border-radius:8px;align-items:flex-start;padding:8px 12px;font-size:13px;display:inline-flex}.skill:hover{color:var(--accent);border-color:var(--accent-20);background:var(--accent-12);transform:translateY(-2px)}.timeline{padding:4px 0;position:relative}.tl-row{grid-template-columns:56px 1fr;gap:24px;padding-bottom:44px;display:grid;position:relative}.tl-row:last-child{padding-bottom:0}.tl-row:before{content:"";background:var(--line);width:1.5px;position:absolute;top:8px;bottom:-2px;left:28px;transform:translate(-50%)}.tl-row:last-child:before{display:none}.tl-node{border:1px solid var(--line-3);background:var(--bg-1);z-index:1;width:56px;height:56px;color:var(--text-dim);border-radius:50%;flex:none;place-items:center;transition:border-color .3s;display:grid;position:relative}.tl-row:hover .tl-node{border-color:var(--accent)}.tl-logo{object-fit:contain;width:32px;height:32px}.tl-body{min-width:0;padding-top:3px}.tl-r{font-family:var(--font-display);letter-spacing:-.01em;font-size:20px;font-weight:600}.tl-meta{font-family:var(--font-mono);color:var(--text-dim);flex-wrap:wrap;align-items:center;gap:8px;margin-top:6px;font-size:13px;display:flex}.tl-co{color:var(--text)}.tl-sep{color:var(--text-faint)}.tl-desc{color:var(--text-faint);border-left:2px solid var(--line-2);transition:color .35s var(--ease), border-color .35s var(--ease);margin:12px 0 0;padding-left:13px;font-size:14px;font-style:italic;line-height:1.6}.tl-row:hover .tl-desc{color:var(--accent);border-left-color:var(--accent)}.tl-bullets{flex-direction:column;gap:8px;margin:14px 0 0;padding:0;list-style:none;display:flex}.tl-bullets li{color:var(--text-dim);padding-left:18px;font-size:14.5px;line-height:1.6;position:relative}.tl-bullets li:before{content:"";background:var(--text-dim);border-radius:50%;width:4px;height:4px;position:absolute;top:9px;left:2px}.tl-tags{flex-wrap:wrap;gap:7px;margin-top:14px;display:flex}.spot-card{position:relative}.spot-card:after{content:"";z-index:3;border-radius:inherit;pointer-events:none;background:radial-gradient(210px 210px at var(--mx,-300px) var(--my,-300px), #15c8b629, transparent 62%);opacity:0;transition:opacity .3s;position:absolute;inset:0}.spot-card:hover:after{opacity:1}.contact{text-align:center;position:relative;overflow:hidden}.contact-glow{background:radial-gradient(circle, var(--accent-12), transparent 65%);filter:blur(20px);z-index:0;pointer-events:none;border-radius:50%;width:600px;height:400px;position:absolute;top:40%;left:50%;transform:translate(-50%,-50%)}.contact-inner{z-index:2;position:relative}.contact-split{text-align:left;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:center;gap:clamp(24px,5vw,70px);max-width:1080px;margin:0 auto;display:grid;transform:translate(18px)}.contact-photo{aspect-ratio:4/5;border-radius:var(--radius-lg);border:1px solid var(--line-2);background:radial-gradient(78% 68% at 50% 40%,#2ddec929,#0000 66%),linear-gradient(160deg,#0b0e0d,#050706);justify-content:center;align-items:flex-end;width:100%;max-width:400px;margin:0 auto;display:flex;position:relative;overflow:hidden}.cp-stars{--sparkle:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%235ef0dd' d='M12 0C13 8 16 11 24 12C16 13 13 16 12 24C11 16 8 13 0 12C8 11 11 8 12 0Z'/%3E%3C/svg%3E");z-index:1;pointer-events:none;background-repeat:no-repeat;background-image:var(--sparkle), var(--sparkle), var(--sparkle), var(--sparkle), var(--sparkle), var(--sparkle), var(--sparkle), var(--sparkle);filter:drop-shadow(0 0 4px #15c8b68c);background-position:15% 18%,68% 12%,40% 30%,85% 40%,25% 55%,55% 62%,78% 72%,10% 78%;background-size:20px 20px,12px 12px,16px 16px,24px 24px,13px 13px,18px 18px,14px 14px,16px 16px;animation:3s ease-in-out infinite cpTwinkle;position:absolute;inset:0}.cp-stars-2{background-position:30% 10%,90% 22%,50% 44%,72% 52%,18% 40%,62% 84%,38% 70%,92% 66%;background-size:14px 14px,18px 18px,12px 12px,20px 20px,13px 13px,16px 16px,12px 12px,17px 17px;animation-duration:4.6s;animation-delay:1.1s}@keyframes cpTwinkle{0%,to{opacity:.25}50%{opacity:1}}.contact-photo img{z-index:2;object-fit:cover;object-position:center top;width:100%;height:100%;display:block;position:relative}.contact-photo:after{content:"";z-index:3;border-radius:inherit;pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 -70px 55px -35px #00000080}@media (prefers-reduced-motion:reduce){.cp-stars{opacity:.7;animation:none}}.contact-copy{text-align:left}.contact-hello-row{align-items:flex-start;display:inline-flex;position:relative}.contact-hello{font-family:var(--font-display);letter-spacing:-.01em;color:#15c8b624;-webkit-text-stroke:1.4px var(--accent);text-stroke:1.4px var(--accent);paint-order:stroke fill;font-size:clamp(24px,3.2vw,38px);font-weight:700;line-height:1}.contact-burst{width:clamp(32px,3.2vw,46px);height:auto;color:var(--accent);transform-origin:50% 100%;animation:2.4s ease-in-out infinite burstPop;position:absolute;bottom:calc(100% - 16px);right:-35px}@keyframes burstPop{0%,to{opacity:.82;transform:scale(.95)}50%{opacity:1;transform:scale(1.04)}}@media (prefers-reduced-motion:reduce){.contact-burst{animation:none}}.contact-split .eyebrow{justify-content:flex-start}.contact-split .contact-copy h2{text-align:left;text-wrap:balance;max-width:none;margin:18px 0 0}.contact-split .contact-copy p{text-align:left;max-width:none;margin:22px 0 0}.contact-split .contact-actions{justify-content:flex-start;max-width:none}.contact-split .contact-actions>a{flex:1 1 0;justify-content:center}@media (max-width:760px){.contact-split{text-align:center;grid-template-columns:1fr;gap:0;transform:none}.contact-copy{display:contents}.contact-hello-row{order:1;justify-self:center}.contact-split .contact-copy h2{text-align:center;order:2;margin:18px auto 0}.contact-photo{order:3;max-width:280px;margin:26px auto}.contact-split .contact-copy p{text-align:center;order:4;max-width:46ch;margin:20px auto 0}.contact-actions{order:5;justify-content:center;margin-top:30px}.contact-split .eyebrow{justify-content:center}}.contact h2{font-family:var(--font-display);letter-spacing:-.03em;max-width:13ch;margin:18px auto 0;font-size:clamp(32px,5.2vw,58px);font-weight:600;line-height:1.04}.contact h2 .ac{color:var(--accent)}.contact p{color:var(--text-dim);max-width:46ch;margin:22px auto 0;font-size:18px}.contact-actions{flex-wrap:wrap;justify-content:center;gap:14px;margin-top:40px;display:flex}.btn-primary{background:var(--accent);color:var(--accent-ink);font-family:var(--font-mono);border:none;border-radius:11px;align-items:center;gap:10px;padding:15px 24px;font-size:14px;font-weight:600;transition:transform .2s,box-shadow .3s;display:inline-flex}.btn-primary:hover{box-shadow:0 14px 34px -12px var(--accent-glow);transform:translateY(-2px)}.btn-ghost{color:var(--text);border:1px solid var(--line-2);font-family:var(--font-mono);background:0 0;border-radius:11px;align-items:center;gap:10px;padding:15px 22px;font-size:14px;transition:border-color .2s,background .2s;display:inline-flex}.btn-ghost:hover{border-color:var(--line-3);background:var(--bg-1)}.socials{flex-wrap:wrap;justify-content:center;gap:24px;margin-top:40px;font-style:normal;display:flex}.social{font-family:var(--font-mono);color:var(--text-dim);align-items:center;gap:8px;font-size:13px;transition:color .2s;display:inline-flex}.social:hover{color:var(--accent)}.edu-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-1);flex-direction:column;padding:30px;display:flex}.carousel{position:relative}.carousel-track{scroll-snap-type:x proximity;scrollbar-width:none;cursor:grab;gap:18px;margin:0 -2px;padding:4px 2px 20px;display:flex;overflow-x:auto}.carousel-track::-webkit-scrollbar{display:none}.carousel-track.dragging{cursor:grabbing;scroll-snap-type:none}.carousel-track>*{scroll-snap-align:start;flex:none}.carousel-track:focus-visible{outline:1px solid var(--accent-20);outline-offset:6px;border-radius:var(--radius)}.carousel-ctl{align-items:center;gap:18px;margin-top:14px;display:flex}.carousel-progress{background:var(--line);border-radius:99px;flex:1;height:4px;position:relative;overflow:hidden}.carousel-thumb{background:var(--accent);height:100%;transition:left .14s var(--ease);border-radius:99px;position:absolute;top:0}.carousel-count{color:var(--text);white-space:nowrap;letter-spacing:.08em;font-size:12.5px}.carousel-count span{color:var(--text-faint)}.carousel-arrows{gap:10px;display:flex}.carousel-arrow{border:1px solid var(--line-2);background:var(--bg-1);width:40px;height:40px;color:var(--text);transition:all .2s var(--ease);border-radius:50%;place-items:center;display:grid}.carousel-arrow:hover:not(:disabled){border-color:var(--accent);color:var(--accent-ink);background:var(--accent);box-shadow:0 8px 18px -6px var(--accent-glow);transform:translateY(-1px)}.carousel-arrow:disabled{opacity:.3;cursor:default}.c-card{background:var(--bg-1);border:1px solid var(--line);border-radius:var(--radius);transition:transform .3s var(--ease), border-color .3s, background .3s;flex-direction:column;gap:12px;padding:26px;display:flex;position:relative;overflow:hidden}.c-card:hover{border-color:var(--line-3);background:var(--bg-2);transform:translateY(-4px)}.c-card.placeholder{border-style:dashed}.c-tag,.c-idx{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--accent);border:1px solid var(--accent-20);background:var(--accent-12);border-radius:7px;align-self:flex-start;padding:4px 9px;font-size:11px}.c-idx{color:var(--text-faint);border-color:var(--line-2);background:var(--bg-2)}.cta-tag{color:var(--accent-ink);background:var(--accent);border-color:var(--accent);align-items:center;gap:6px;font-weight:600;display:inline-flex;box-shadow:0 6px 16px -8px #15c8b68c}.cta-tag svg{flex:none}.c-title{font-family:var(--font-display);letter-spacing:-.01em;margin:0;font-size:21px;font-weight:600;line-height:1.12}.c-title.sm{font-size:17px}.c-sub{font-family:var(--font-mono);color:var(--text-dim);margin:0;font-size:12px;line-height:1.5}.c-desc{color:var(--text-dim);flex:1;margin:0;font-size:14.5px;line-height:1.55}.c-year{font-family:var(--font-mono);color:var(--accent);margin-top:auto;font-size:12px}.cc-ico{color:var(--accent)}.cc-cap .c-title{color:var(--text)}.cc-cap .c-sub{color:var(--text-dim)}.cc-cap .c-year{color:var(--accent);font-weight:600}.c-media{border:1px solid var(--line);width:100%;height:150px;margin-bottom:4px;display:block}.c-icon{color:var(--accent);display:inline-flex}.pub-media{background:#0b0e0e;border-radius:8px;height:300px;position:relative;overflow:hidden}.pub-bg{object-fit:cover;filter:blur(30px)saturate(1.6)brightness(.92);opacity:.92;width:100%;height:100%;position:absolute;inset:0;transform:scale(1.25)}.pub-fg{z-index:1;object-fit:contain;width:100%;height:100%;position:relative}.pub-card{position:relative}.carousel-track .proj-card{width:clamp(290px,84vw,380px)}.carousel-track .edu-card2{width:clamp(280px,82vw,360px)}.carousel-track .award-card2{width:clamp(230px,70vw,290px)}.carousel-track .org-card,.carousel-track .speak-card.has-img,.carousel-track .pub-card{width:calc(33.3333% - 12px)}.carousel-track .speak-card{width:clamp(230px,68vw,282px)}.carousel-track .cert-card{width:calc(33.3333% - 12px)}.cert-card .c-title,.pub-card .c-title{margin-top:14px}.cert-card .c-sub,.pub-card .c-sub{margin-top:4px}.cert-card,.pub-card{text-align:center}.carousel-track .skill-group{width:calc(33.3333% - 12px)}@media (max-width:820px){.carousel-track .proj-card,.carousel-track .edu-card2,.carousel-track .award-card2,.carousel-track .speak-card,.carousel-track .speak-card.has-img,.carousel-track .skill-group,.carousel-track .pub-card,.carousel-track .org-card,.carousel-track .cert-card{width:100%}}.edu-layout{grid-template-columns:1fr 1fr;align-items:stretch;gap:clamp(20px,3vw,44px);display:grid}.edu-stack{flex-direction:column;gap:16px;display:flex}.edu-stack .c-card{width:auto}.edu-head{align-items:center;gap:13px;padding-right:76px;display:flex}.edu-head .c-title{margin:0}.edu-logo{object-fit:contain;flex:none;width:44px;height:44px}.edu-corner-tag{position:absolute;top:22px;right:22px}.edu-photos-col{flex-direction:column;display:flex}.edu-gallery{border-radius:16px;flex:1;min-height:480px;position:relative;overflow:hidden}.app-loader{z-index:9999;background:var(--bg);transition:opacity .55s var(--ease);place-items:center;display:grid;position:fixed;inset:0}.app-loader.is-hide{opacity:0;pointer-events:none}.awards-gallery{border-radius:16px;width:100%;height:clamp(560px,74vh,760px);position:relative;overflow:hidden}.edu-note{max-width:60ch;color:var(--color-muted-foreground);margin-top:22px;font-size:.95rem;line-height:1.6}.edu-gallery-nav{justify-content:center;gap:12px;margin-top:16px;display:flex}.edu-nav-btn{border:1px solid var(--line-2);background:var(--bg-1);width:42px;height:42px;color:var(--text);transition:all .2s var(--ease);border-radius:50%;place-items:center;display:grid}.edu-nav-btn:hover{border-color:var(--accent);color:var(--accent-ink);background:var(--accent);box-shadow:0 8px 18px -6px var(--accent-glow);transform:translateY(-1px)}.cert-gallery{height:clamp(380px,48vh,460px);margin-bottom:clamp(40px,6vh,72px);position:relative}.edu-3d{perspective:1600px;height:clamp(440px,56vh,540px);position:relative}.edu-frame{border:1px solid var(--line-2);background:var(--bg-1);border-radius:16px;position:absolute;inset:0;overflow:hidden}.edu-3d-card{transform-style:preserve-3d;will-change:transform;animation:9s ease-in-out infinite eduSway;box-shadow:0 40px 90px -50px #000000e6}@keyframes eduSway{0%,to{transform:rotateY(-22deg)}50%{transform:rotateY(22deg)}}@media (prefers-reduced-motion:reduce){.edu-3d-card{animation:none;transform:none}}.edu-frame-bg{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.edu-frame-overlay{background:linear-gradient(#00000059,#0000001a 55%,#0000008c);position:absolute;inset:0}.edu-frame-figure{object-fit:contain;object-position:bottom;opacity:0;filter:drop-shadow(0 12px 30px #00000080);width:auto;max-width:100%;height:97%;transition:opacity .8s;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.edu-frame-figure.active{opacity:1}.edu-frame-dots{z-index:20;gap:7px;display:flex;position:absolute;bottom:14px;left:50%;transform:translate(-50%)}.edu-frame-dots span{background:#ffffff59;border-radius:50%;width:7px;height:7px;transition:background .2s}.edu-frame-dots span.on{background:var(--accent)}.cg-nav{z-index:20;border:1px solid var(--line-2);width:42px;height:42px;color:var(--text);-webkit-backdrop-filter:blur(6px);transition:all .2s var(--ease);background:#0000008c;border-radius:50%;place-items:center;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.cg-nav:hover{border-color:var(--accent);color:var(--accent-ink);background:var(--accent);box-shadow:0 8px 18px -6px var(--accent-glow)}.cg-prev{left:6px}.cg-next{right:6px}@media (max-width:860px){.edu-layout{grid-template-columns:1fr;gap:14px}.edu-photos-col{order:-1}.edu-gallery{min-height:360px}.edu-gallery-nav{margin-top:10px}.edu-head{padding-right:116px}}.award-card2{gap:10px}.award-medal{border-radius:9px;align-self:flex-start;place-items:center;width:34px;height:34px;font-size:15px;display:grid}.award-card2.gold .award-medal{background:var(--accent-12);border:1px solid var(--accent-20);color:var(--accent)}.award-card2.reg .award-medal{background:var(--bg-2);border:1px solid var(--line-2);color:var(--text-faint)}.award-card2.feature{background:linear-gradient(180deg, var(--accent-12), transparent);border-color:var(--accent-20)}.award-card2.feature .c-title{color:var(--accent-2)}.award-card2.summary{justify-content:center;align-items:flex-start}.award-card2.summary .big{font-family:var(--font-display);color:var(--accent);font-size:46px;font-weight:600;line-height:1}.speak-card,.cert-card{gap:14px}.sub-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:30px;display:flex}.sub-head .st{font-family:var(--font-display);letter-spacing:-.02em;margin:8px 0 0;font-size:clamp(22px,2.8vw,30px);font-weight:600}.sub-block{margin-top:clamp(48px,7vh,90px)}.sub-block:first-child{margin-top:0}.soft-panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-1);padding:clamp(24px,4vw,38px)}.soft-panel .skill-list{gap:10px}.soft-panel .skill{padding:9px 14px;font-size:14px}.group-band{font-family:var(--font-mono);letter-spacing:.15em;text-transform:uppercase;color:var(--text-faint);align-items:center;gap:18px;margin-bottom:8px;font-size:17px;display:flex}.group-band:after{content:"";background:var(--line);flex:1;height:1px}.group-band .gi{color:var(--accent);font-weight:700}.footer{border-top:1px solid var(--line);padding:40px var(--gut);max-width:var(--maxw);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin:0 auto;display:flex}.footer .col{font-family:var(--font-mono);color:var(--text-faint);font-size:12px;line-height:1.7}.footer .col b{color:var(--text-dim);font-weight:500}.logo-marquee-sec{padding:clamp(40px,6vh,60px) 0;overflow:hidden}.logo-marquee-head{text-align:center;margin:0 0 30px}.logo-marquee-kicker{font-family:var(--font-mono);letter-spacing:.06em;color:var(--text-faint);margin:0 0 6px;font-size:13px}.logo-marquee-title{font-family:var(--font-display);letter-spacing:-.01em;color:var(--accent);margin:0;font-size:clamp(19px,2.4vw,27px);font-weight:600;line-height:1.1}.logo-marquee{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:40px 0;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 8% 92%,#0000);mask-image:linear-gradient(90deg,#0000,#000 8% 92%,#0000)}.logo-marquee-track{will-change:transform;backface-visibility:hidden;align-items:center;gap:clamp(40px,6vw,72px);width:max-content;animation:48s linear infinite logoScroll;display:flex;transform:translateZ(0)}.logo-marquee:hover .logo-marquee-track{animation-play-state:paused}.logo-marquee-item{opacity:.68;transition:opacity .3s var(--ease);flex:none;align-items:center;gap:13px;display:inline-flex}.logo-marquee-item:hover{opacity:1}.logo-marquee-item img{object-fit:contain;flex:none;width:auto;max-width:190px;height:64px}.logo-marquee-item.is-flag img{border:1px solid #ffffff1f;border-radius:4px;height:40px}.logo-marquee-item.is-card img{box-sizing:content-box;background:#fff;border-radius:10px;max-width:150px;height:42px;padding:10px 14px;box-shadow:0 4px 14px -6px #0009}.logo-marquee-item span{font-family:var(--font-mono);color:var(--text-dim);white-space:nowrap;font-size:13px}@keyframes logoScroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.logo-marquee-track{animation:none}}.site-footer{border-top:1px solid var(--line);background:linear-gradient(180deg, var(--bg) 0%, #06110f 100%);position:relative}.site-footer-top{max-width:var(--maxw);padding:clamp(48px, 7vh, 72px) var(--gut) 40px;text-align:center;flex-direction:column;align-items:center;gap:16px;margin:0 auto;display:flex}.site-footer-brand{transition:transform .3s var(--ease);display:inline-flex}.site-footer-brand:hover{transform:translateY(-2px)}.site-footer-brand img{display:block}.site-footer-name{font-family:var(--font-display);letter-spacing:-.01em;margin:2px 0 0;font-size:18px;font-weight:600}.site-footer-tagline{max-width:560px;color:var(--text-dim);margin:0;font-size:14px;line-height:1.7}.site-footer-socials{flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:clamp(14px,3vw,26px);margin-top:8px;display:inline-flex}.site-footer-social{color:var(--text-dim);flex-direction:column;align-items:center;gap:8px;transition:color .2s;display:inline-flex}.site-footer-social svg{width:19px;height:19px}.site-footer-social-ic{border:1px solid var(--line-2);background:var(--bg-2);border-radius:999px;place-items:center;width:42px;height:42px;transition:border-color .2s,background .2s,transform .2s;display:grid}.site-footer-social:hover{color:var(--accent)}.site-footer-social:hover .site-footer-social-ic{border-color:var(--accent-20);background:var(--accent-12);transform:translateY(-2px)}.site-footer-social-cap{font-family:var(--font-mono);letter-spacing:.02em;font-size:11px}@media (max-width:560px){.site-footer-socials{flex-wrap:nowrap;gap:8px;max-width:100%}.site-footer-social{gap:6px;min-width:0}.site-footer-social-ic{width:34px;height:34px}.site-footer-social svg{width:15px;height:15px}.site-footer-social-cap{letter-spacing:0;white-space:nowrap;font-size:8.5px}}.site-footer-bottom{border-top:1px solid var(--line);padding:18px var(--gut);text-align:center;font-family:var(--font-mono);color:var(--text-faint);font-size:11.5px}.fab{z-index:90;background:var(--accent);color:var(--accent-ink);font-family:var(--font-mono);box-shadow:0 16px 40px -12px var(--accent-glow);transition:transform .25s var(--ease), opacity .35s, visibility .35s;border:none;border-radius:99px;align-items:center;gap:10px;padding:13px 19px;font-size:13.5px;font-weight:600;display:inline-flex;position:fixed;bottom:26px;right:26px}.fab:hover{transform:translateY(-2px)scale(1.02)}.fab.hidden{opacity:0;visibility:hidden;transform:translateY(12px)}.fab .fdot{background:var(--accent-ink);border-radius:50%;width:8px;height:8px;animation:2s infinite pulse}.fchat{z-index:95;background:var(--bg-1);border:1px solid var(--line-2);border-radius:var(--radius-lg);transform-origin:100% 100%;width:min(400px,100vw - 32px);height:min(620px,100vh - 48px);animation:fchatIn .3s var(--ease);flex-direction:column;display:flex;position:fixed;bottom:24px;right:24px;overflow:hidden;box-shadow:0 40px 100px -40px #000000e6}@keyframes fchatIn{0%{opacity:0;transform:translateY(20px)scale(.96)}to{opacity:1;transform:none}}.fchat-head{border-bottom:1px solid var(--line);background:var(--bg-2);align-items:center;gap:12px;padding:14px 16px;display:flex}.fchat-head .av{background:var(--accent-12);border:1px solid var(--accent-20);width:32px;height:32px;color:var(--accent);font-family:var(--font-mono);border-radius:9px;place-items:center;font-size:13px;font-weight:700;display:grid}.fchat-head .nm{font-family:var(--font-display);font-size:14px;font-weight:600}.fchat-head .st{font-family:var(--font-mono);color:var(--text-dim);align-items:center;gap:6px;font-size:11px;display:flex}.fchat-close{border:1px solid var(--line-2);color:var(--text-dim);background:0 0;border-radius:8px;place-items:center;width:30px;height:30px;margin-left:auto;transition:all .2s;display:grid}.fchat-close:hover{color:var(--text);border-color:var(--line-3)}.fchat-body{flex-direction:column;flex:1;gap:16px;padding:18px;display:flex;overflow-y:auto}.fchat-body::-webkit-scrollbar{width:7px}.fchat-body::-webkit-scrollbar-thumb{background:var(--line-2);border-radius:99px}.fchat-foot{border-top:1px solid var(--line);padding:12px}.fchat-foot .console-input{margin:0}.fchat-foot .ci-emoji-pop{right:48px}.console-bar.fchat-bar{background:var(--bg-2);border-bottom:1px solid var(--line);align-items:center;display:flex}.fchat-head-tools{z-index:2;align-items:center;gap:3px;display:flex;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.fchat-tools-sep{background:var(--line-2);border-radius:1px;width:1px;height:16px;margin:0 3px}.fchat-bar .fchat-close{width:28px;height:28px;color:var(--text-dim);background:0 0;border:none;border-radius:7px;margin-left:0;position:static;transform:none}.fchat-bar .fchat-close:hover{color:var(--accent);background:var(--accent-12);border-color:#0000}.chat-actions{align-items:center;gap:2px;display:inline-flex}.console .console-tools{z-index:2;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.chat-action{width:28px;height:28px;color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:7px;place-items:center;transition:color .2s,background .2s;display:grid}.chat-action:hover{color:var(--accent);background:var(--accent-12)}.chat-action:disabled{opacity:.35;cursor:default}.chat-action:disabled:hover{color:var(--text-dim);background:0 0}.reveal{opacity:0;transition:opacity .8s var(--ease), transform .8s var(--ease);transform:translateY(26px)}.reveal.in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transition:none;transform:none}.msg,.cite,.fchat,.cursor,.status-dot,.nav-cta .dot,.fab .fdot,.scroll-cue .bar{animation:none!important}}.console{background:radial-gradient(130% 90% at 50% 0%, var(--accent), transparent 58%), linear-gradient(135deg, #ffffff0e, #ffffff03)}@supports (color:color-mix(in lab, red, red)){.console{background:radial-gradient(130% 90% at 50% 0%, color-mix(in srgb, var(--accent) 8%, transparent), transparent 58%), linear-gradient(135deg, #ffffff0e, #ffffff03)}}.console{-webkit-backdrop-filter:blur(16px)saturate(135%)}.console-bar{background:linear-gradient(#3c3c4099,#2424288c);border-bottom:1px solid #0000008c;padding:9px 14px;position:relative}.console-dots{z-index:2;gap:8px}.console-dots i{width:12px;height:12px;box-shadow:inset 0 0 0 .5px #00000040}.console-dots i:first-child{background:#ff5f57}.console-dots i:nth-child(2){background:#febc2e}.console-dots i:nth-child(3){background:#28c840}.console-title{font-family:var(--font-mono);color:#b9b9bd;pointer-events:none;justify-content:center;align-items:center;gap:7px;font-size:12px;line-height:1;display:flex;position:absolute;inset:0}.console-title b{color:#e7e7ea;font-weight:600}.console-title-bot{color:var(--accent);flex:none;display:block}.console-badge{display:none}.console-body,.console-hint{background:0 0}.console-input{align-items:center;gap:10px;margin:8px 22px 4px;display:flex;position:relative}.ci-emoji-pop{z-index:6;width:320px;max-width:calc(100vw - 24px);animation:msgIn .2s var(--ease) both;border-radius:12px;position:absolute;bottom:calc(100% + 10px);right:56px;overflow:hidden;box-shadow:0 24px 60px -24px #000000d9}.ci-emoji-pop .EmojiPickerReact{--epr-bg-color:var(--bg-1);--epr-category-label-bg-color:var(--bg-1);--epr-hover-bg-color:var(--bg-3);--epr-search-input-bg-color:var(--bg-2);--epr-picker-border-color:var(--line-2);--epr-emoji-size:26px;--epr-highlight-color:var(--accent);--epr-focus-bg-color:var(--accent-12);--epr-category-icon-active-color:var(--accent);border-color:var(--line-2)!important}.ci-emoji-pop .epr-body{scrollbar-width:thin;scrollbar-color:var(--accent) transparent}.ci-emoji-pop .epr-body::-webkit-scrollbar{width:8px}.ci-emoji-pop .epr-body::-webkit-scrollbar-track{background:0 0}.ci-emoji-pop .epr-body::-webkit-scrollbar-thumb{background:var(--accent);border:2px solid var(--bg-1);border-radius:99px}.ci-emoji-pop .epr-body::-webkit-scrollbar-thumb:hover{background:var(--accent-2)}.ci-pill{border:1px solid var(--line-2);background:0 0;border-radius:999px;flex:1;align-items:center;gap:6px;min-width:0;padding:5px 6px 5px 16px;transition:border-color .2s;display:flex}.ci-pill:focus-within{border-color:var(--accent)}.ci-emoji{width:34px;height:34px;color:var(--text-dim);background:0 0;border:none;border-radius:50%;flex:none;place-items:center;transition:color .2s,background .2s;display:grid}.ci-emoji:hover{color:var(--accent);background:var(--accent-12)}.ci-mic{background:var(--accent);border:1px solid var(--accent);width:42px;height:42px;color:var(--accent-ink);border-radius:50%;flex:none;place-items:center;padding:0;transition:box-shadow .3s,transform .15s,filter .2s;display:grid}.ci-mic:hover{filter:brightness(1.06);box-shadow:0 8px 22px -8px var(--accent-glow);transform:translateY(-1px)}.ci-mic.listening{color:var(--accent-ink);background:var(--accent);border-color:var(--accent);animation:1.1s ease-in-out infinite micPulse}@keyframes micPulse{0%,to{box-shadow:0 0 0 0 var(--accent-20)}50%{box-shadow:0 0 0 9px #0000}}.send-btn{background:var(--accent);width:42px;height:42px;color:var(--accent-ink);font-family:var(--font-mono);border:none;border-radius:50%;flex:none;place-items:center;padding:0;font-size:14px;font-weight:600;transition:transform .15s,box-shadow .3s,opacity .2s;display:grid}.send-btn:hover{box-shadow:0 8px 22px -8px var(--accent-glow);transform:translateY(-1px)}.send-btn:disabled{opacity:.4;box-shadow:none;cursor:default;transform:none}.console-body,.fchat-body{font-family:var(--font-body)}.wa-row{align-items:flex-start;gap:8px;display:flex}.wa-row.bot{justify-content:flex-start}.wa-row.user{justify-content:flex-end}.wa-avatar{border:1px solid var(--line-2);border-radius:50%;flex:none;align-self:flex-start;place-items:center;width:30px;height:30px;margin-top:1px;display:grid}.wa-avatar.bot{background:var(--accent-12);color:var(--accent);border-color:var(--accent-20)}.wa-avatar.user{color:#e9edef;background:#005c4b;border-color:#ffffff26}.wa-bubble{overflow-wrap:anywhere;max-width:min(82%,720px);animation:msgIn .35s var(--ease) both;border-radius:16px;padding:12px 16px;font-size:15.5px;line-height:1.6;position:relative;box-shadow:0 1px 1.5px #0000004d}.wa-row.bot .wa-bubble{color:#e9edef;background:#202c33;border:none;border-top-left-radius:6px}.wa-row.user .wa-bubble{color:#e9edef;background:#005c4b;border:none;border-top-right-radius:6px}.wa-bubble p{margin:0 0 8px}.wa-bubble p:last-child{margin:0}.wa-bubble strong{color:var(--accent-2);font-weight:600}.chat-cta{border:1px solid var(--accent-20);background:var(--accent-12);width:fit-content;color:var(--accent);font-family:var(--font-mono);cursor:pointer;border-radius:999px;align-items:center;gap:8px;margin-top:8px;padding:8px 14px;font-size:13px;font-weight:500;transition:background .2s,color .2s,border-color .2s,transform .15s;display:flex}.chat-cta:hover{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);transform:translateY(-1px)}.chat-reply{border:1px solid var(--accent-20);color:var(--accent);font-family:var(--font-mono);cursor:pointer;background:0 0;border-radius:999px;align-items:center;margin:8px 8px 0 0;padding:7px 15px;font-size:13px;font-weight:500;transition:background .2s,color .2s,border-color .2s,transform .15s;display:inline-flex}.chat-reply:hover:not(:disabled){background:var(--accent);color:var(--accent-ink);border-color:var(--accent);transform:translateY(-1px)}.chat-reply:disabled{opacity:.45;cursor:default}.wa-row.user .wa-bubble strong{color:#d8fff5}.wa-bubble .cites{margin-top:10px}.image-slot{text-align:center;background:var(--bg-2);border:1.5px dashed var(--line-2);color:var(--text-faint);font-family:var(--font-mono);border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:16px;font-size:11.5px;line-height:1.45;display:flex;position:relative}.image-slot .is-icon{opacity:.5;color:var(--text-faint)}.image-slot .is-cap{max-width:90%}@media (max-width:980px){:is(.proj-feature,.proj-feature:has(.proj-feature-media.is-desktop)){grid-template-columns:1fr}.proj-feature-media{border-left:none;border-top:1px solid var(--line);order:-1;min-height:220px;padding:32px 24px 40px}.proj-feature-media:has(.media-toggle){padding-top:78px;padding-bottom:44px}.proj-grid{grid-template-columns:1fr 1fr}.skill-groups{grid-template-columns:1fr}.contact-split{transform:none}.proof-grid{grid-template-columns:1fr 1fr 1fr}.proof-cell:nth-child(n+4){border-top:1px solid var(--line)}.proof-cell:nth-child(3){border-right:none}}@media (max-width:900px){.nav-links{display:none}.nav-links.open{padding:24px var(--gut);background:var(--bg-1);border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:18px;max-height:78vh;display:flex;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.nav-item{width:100%}.nav-menu{opacity:1;visibility:visible;pointer-events:auto;min-width:0;box-shadow:none;-webkit-backdrop-filter:none;border:none;border-left:1px solid var(--line);background:0 0;border-radius:0;margin:12px 0 0 6px;padding:0 0 0 12px;position:static;transform:none}.nav-item .nav-link .caret{display:none}.nav-burger{place-items:center;display:grid}.brand{min-width:0}.brand-name{text-overflow:ellipsis;overflow:hidden}}@media (max-width:720px){:root{--gut:clamp(24px, 7vw, 44px)}body{font-size:16px}.block{padding-block:clamp(34px,5.5vh,66px)}.section-head{margin-bottom:28px}.sub-block{margin-top:clamp(32px,4.5vh,54px)}.awards-nav{padding-block:6px}.proj-live{justify-content:flex-start;gap:7px;width:100%;max-width:100%;padding:10px 13px;font-size:clamp(10.5px,3vw,13px);display:flex}.proj-live-label{flex:auto}.hero{min-height:auto;padding-top:120px}.hero-card-text .eyebrow{white-space:nowrap;letter-spacing:.06em;font-size:clamp(8.5px,2.2vw,12.5px)}.proj-grid{grid-template-columns:1fr}.proof-grid{grid-template-columns:1fr 1fr}.proof-cell{border-right:none}.proof-cell:nth-child(odd){border-right:1px solid var(--line)}.proof-cell:nth-child(n+3){border-top:1px solid var(--line)}.tl-row{grid-template-columns:44px 1fr;gap:16px;padding-bottom:34px}.tl-row:before{left:22px}.tl-node{width:44px;height:44px}.tl-logo{width:26px;height:26px}.outcome-row{gap:22px}.console-body{min-height:60vh;max-height:74vh}.fab{bottom:16px;right:16px}}@media (max-width:520px){.ci-emoji-pop,.fchat-foot .ci-emoji-pop{width:auto;max-width:none;left:8px;right:8px}.brand-suffix{display:none}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-pan-x{syntax:"*";inherits:false}@property --tw-pan-y{syntax:"*";inherits:false}@property --tw-pinch-zoom{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}
