@layer theme{:root{--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-family-sans);--default-font-feature-settings:var(--font-family-sans--font-feature-settings);--default-font-variation-settings:var(--font-family-sans--font-variation-settings);--default-mono-font-family:var(--font-family-mono);--default-mono-font-feature-settings:var(--font-family-mono--font-feature-settings);--default-mono-font-variation-settings:var(--font-family-mono--font-variation-settings);--breakpoint-sm:640px;--breakpoint-md:768px;--breakpoint-lg:1024px;--breakpoint-xl:1280px;--breakpoint-2xl:1536px;--color-black:#000;--color-white:#fff;--color-slate-50:#f8fafc;--color-slate-100:#f1f5f9;--color-slate-200:#e2e8f0;--color-slate-300:#cbd5e1;--color-slate-400:#94a3b8;--color-slate-500:#64748b;--color-slate-600:#475569;--color-slate-700:#334155;--color-slate-800:#1e293b;--color-slate-900:#0f172a;--color-slate-950:#020617;--color-gray-50:#f9fafb;--color-gray-100:#f3f4f6;--color-gray-200:#e5e7eb;--color-gray-300:#d1d5db;--color-gray-400:#9ca3af;--color-gray-500:#6b7280;--color-gray-600:#4b5563;--color-gray-700:#374151;--color-gray-800:#1f2937;--color-gray-900:#111827;--color-gray-950:#030712;--color-zinc-50:#fafafa;--color-zinc-100:#f4f4f5;--color-zinc-200:#e4e4e7;--color-zinc-300:#d4d4d8;--color-zinc-400:#a1a1aa;--color-zinc-500:#71717a;--color-zinc-600:#52525b;--color-zinc-700:#3f3f46;--color-zinc-800:#27272a;--color-zinc-900:#18181b;--color-zinc-950:#09090b;--color-neutral-50:#fafafa;--color-neutral-100:#f5f5f5;--color-neutral-200:#e5e5e5;--color-neutral-300:#d4d4d4;--color-neutral-400:#a3a3a3;--color-neutral-500:#737373;--color-neutral-600:#525252;--color-neutral-700:#404040;--color-neutral-800:#262626;--color-neutral-900:#171717;--color-neutral-950:#0a0a0a;--color-stone-50:#fafaf9;--color-stone-100:#f5f5f4;--color-stone-200:#e7e5e4;--color-stone-300:#d6d3d1;--color-stone-400:#a8a29e;--color-stone-500:#78716c;--color-stone-600:#57534e;--color-stone-700:#44403c;--color-stone-800:#292524;--color-stone-900:#1c1917;--color-stone-950:#0c0a09;--color-red-50:#fef2f2;--color-red-100:#fee2e2;--color-red-200:#fecaca;--color-red-300:#fca5a5;--color-red-400:#f87171;--color-red-500:#ef4444;--color-red-600:#dc2626;--color-red-700:#b91c1c;--color-red-800:#991b1b;--color-red-900:#7f1d1d;--color-red-950:#450a0a;--color-orange-50:#fff7ed;--color-orange-100:#ffedd5;--color-orange-200:#fed7aa;--color-orange-300:#fdba74;--color-orange-400:#fb923c;--color-orange-500:#f97316;--color-orange-600:#ea580c;--color-orange-700:#c2410c;--color-orange-800:#9a3412;--color-orange-900:#7c2d12;--color-orange-950:#431407;--color-amber-50:#fffbeb;--color-amber-100:#fef3c7;--color-amber-200:#fde68a;--color-amber-300:#fcd34d;--color-amber-400:#fbbf24;--color-amber-500:#f59e0b;--color-amber-600:#d97706;--color-amber-700:#b45309;--color-amber-800:#92400e;--color-amber-900:#78350f;--color-amber-950:#451a03;--color-yellow-50:#fefce8;--color-yellow-100:#fef9c3;--color-yellow-200:#fef08a;--color-yellow-300:#fde047;--color-yellow-400:#facc15;--color-yellow-500:#eab308;--color-yellow-600:#ca8a04;--color-yellow-700:#a16207;--color-yellow-800:#854d0e;--color-yellow-900:#713f12;--color-yellow-950:#422006;--color-lime-50:#f7fee7;--color-lime-100:#ecfccb;--color-lime-200:#d9f99d;--color-lime-300:#bef264;--color-lime-400:#a3e635;--color-lime-500:#84cc16;--color-lime-600:#65a30d;--color-lime-700:#4d7c0f;--color-lime-800:#3f6212;--color-lime-900:#365314;--color-lime-950:#1a2e05;--color-green-50:#f0fdf4;--color-green-100:#dcfce7;--color-green-200:#bbf7d0;--color-green-300:#86efac;--color-green-400:#4ade80;--color-green-500:#22c55e;--color-green-600:#16a34a;--color-green-700:#15803d;--color-green-800:#166534;--color-green-900:#14532d;--color-green-950:#052e16;--color-emerald-50:#ecfdf5;--color-emerald-100:#d1fae5;--color-emerald-200:#a7f3d0;--color-emerald-300:#6ee7b7;--color-emerald-400:#34d399;--color-emerald-500:#10b981;--color-emerald-600:#059669;--color-emerald-700:#047857;--color-emerald-800:#065f46;--color-emerald-900:#064e3b;--color-emerald-950:#022c22;--color-teal-50:#f0fdfa;--color-teal-100:#ccfbf1;--color-teal-200:#99f6e4;--color-teal-300:#5eead4;--color-teal-400:#2dd4bf;--color-teal-500:#14b8a6;--color-teal-600:#0d9488;--color-teal-700:#0f766e;--color-teal-800:#115e59;--color-teal-900:#134e4a;--color-teal-950:#042f2e;--color-cyan-50:#ecfeff;--color-cyan-100:#cffafe;--color-cyan-200:#a5f3fc;--color-cyan-300:#67e8f9;--color-cyan-400:#22d3ee;--color-cyan-500:#06b6d4;--color-cyan-600:#0891b2;--color-cyan-700:#0e7490;--color-cyan-800:#155e75;--color-cyan-900:#164e63;--color-cyan-950:#083344;--color-sky-50:#f0f9ff;--color-sky-100:#e0f2fe;--color-sky-200:#bae6fd;--color-sky-300:#7dd3fc;--color-sky-400:#38bdf8;--color-sky-500:#0ea5e9;--color-sky-600:#0284c7;--color-sky-700:#0369a1;--color-sky-800:#075985;--color-sky-900:#0c4a6e;--color-sky-950:#082f49;--color-blue-50:#eff6ff;--color-blue-100:#dbeafe;--color-blue-200:#bfdbfe;--color-blue-300:#93c5fd;--color-blue-400:#60a5fa;--color-blue-500:#3b82f6;--color-blue-600:#2563eb;--color-blue-700:#1d4ed8;--color-blue-800:#1e40af;--color-blue-900:#1e3a8a;--color-blue-950:#172554;--color-indigo-50:#eef2ff;--color-indigo-100:#e0e7ff;--color-indigo-200:#c7d2fe;--color-indigo-300:#a5b4fc;--color-indigo-400:#818cf8;--color-indigo-500:#6366f1;--color-indigo-600:#4f46e5;--color-indigo-700:#4338ca;--color-indigo-800:#3730a3;--color-indigo-900:#312e81;--color-indigo-950:#1e1b4b;--color-violet-50:#f5f3ff;--color-violet-100:#ede9fe;--color-violet-200:#ddd6fe;--color-violet-300:#c4b5fd;--color-violet-400:#a78bfa;--color-violet-500:#8b5cf6;--color-violet-600:#7c3aed;--color-violet-700:#6d28d9;--color-violet-800:#5b21b6;--color-violet-900:#4c1d95;--color-violet-950:#2e1065;--color-purple-50:#faf5ff;--color-purple-100:#f3e8ff;--color-purple-200:#e9d5ff;--color-purple-300:#d8b4fe;--color-purple-400:#c084fc;--color-purple-500:#a855f7;--color-purple-600:#9333ea;--color-purple-700:#7e22ce;--color-purple-800:#6b21a8;--color-purple-900:#581c87;--color-purple-950:#3b0764;--color-fuchsia-50:#fdf4ff;--color-fuchsia-100:#fae8ff;--color-fuchsia-200:#f5d0fe;--color-fuchsia-300:#f0abfc;--color-fuchsia-400:#e879f9;--color-fuchsia-500:#d946ef;--color-fuchsia-600:#c026d3;--color-fuchsia-700:#a21caf;--color-fuchsia-800:#86198f;--color-fuchsia-900:#701a75;--color-fuchsia-950:#4a044e;--color-pink-50:#fdf2f8;--color-pink-100:#fce7f3;--color-pink-200:#fbcfe8;--color-pink-300:#f9a8d4;--color-pink-400:#f472b6;--color-pink-500:#ec4899;--color-pink-600:#db2777;--color-pink-700:#be185d;--color-pink-800:#9d174d;--color-pink-900:#831843;--color-pink-950:#500724;--color-rose-50:#fff1f2;--color-rose-100:#ffe4e6;--color-rose-200:#fecdd3;--color-rose-300:#fda4af;--color-rose-400:#fb7185;--color-rose-500:#f43f5e;--color-rose-600:#e11d48;--color-rose-700:#be123c;--color-rose-800:#9f1239;--color-rose-900:#881337;--color-rose-950:#4c0519;--animate-spin:spin 1s linear infinite;--animate-ping:ping 1s cubic-bezier(0,0,.2,1)infinite;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--animate-bounce:bounce 1s infinite;--blur:8px;--blur-sm:4px;--blur-md:12px;--blur-lg:16px;--blur-xl:24px;--blur-2xl:40px;--blur-3xl:64px;--radius:.25rem;--radius-sm:.125rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--radius-3xl:1.5rem;--shadow:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--shadow-xs:0 1px #0000000d;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;--shadow-2xl:0 25px 50px -12px #00000040;--shadow-inner:inset 0 2px 4px 0 #0000000d;--inset-shadow-xs:inset 0 1px #0000000d;--inset-shadow-sm:inset 0 1px 1px #0000000d;--inset-shadow:inset 0 2px 4px #0000000d;--drop-shadow:0 1px 2px #0000001a,0 1px 1px #0000000f;--drop-shadow-sm:0 1px 1px #0000000d;--drop-shadow-md:0 4px 3px #00000012,0 2px 2px #0000000f;--drop-shadow-lg:0 10px 8px #0000000a,0 4px 3px #0000001a;--drop-shadow-xl:0 20px 13px #00000008,0 8px 5px #00000014;--drop-shadow-2xl:0 25px 25px #00000026;--spacing-px:1px;--spacing-0:0px;--spacing-0_5:.125rem;--spacing-1:.25rem;--spacing-1_5:.375rem;--spacing-2:.5rem;--spacing-2_5:.625rem;--spacing-3:.75rem;--spacing-3_5:.875rem;--spacing-4:1rem;--spacing-5:1.25rem;--spacing-6:1.5rem;--spacing-7:1.75rem;--spacing-8:2rem;--spacing-9:2.25rem;--spacing-10:2.5rem;--spacing-11:2.75rem;--spacing-12:3rem;--spacing-14:3.5rem;--spacing-16:4rem;--spacing-20:5rem;--spacing-24:6rem;--spacing-28:7rem;--spacing-32:8rem;--spacing-36:9rem;--spacing-40:10rem;--spacing-44:11rem;--spacing-48:12rem;--spacing-52:13rem;--spacing-56:14rem;--spacing-60:15rem;--spacing-64:16rem;--spacing-72:18rem;--spacing-80:20rem;--spacing-96:24rem;--width-3xs:16rem;--width-2xs:18rem;--width-xs:20rem;--width-sm:24rem;--width-md:28rem;--width-lg:32rem;--width-xl:36rem;--width-2xl:42rem;--width-3xl:48rem;--width-4xl:56rem;--width-5xl:64rem;--width-6xl:72rem;--width-7xl:80rem;--width-prose:65ch;--font-family-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-family-serif:ui-serif,Georgia,Cambria,"Times New Roman",Times,serif;--font-family-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--font-size-xs:.75rem;--font-size-xs--line-height:1rem;--font-size-sm:.875rem;--font-size-sm--line-height:1.25rem;--font-size-base:1rem;--font-size-base--line-height:1.5rem;--font-size-lg:1.125rem;--font-size-lg--line-height:1.75rem;--font-size-xl:1.25rem;--font-size-xl--line-height:1.75rem;--font-size-2xl:1.5rem;--font-size-2xl--line-height:2rem;--font-size-3xl:1.875rem;--font-size-3xl--line-height:2.25rem;--font-size-4xl:2.25rem;--font-size-4xl--line-height:2.5rem;--font-size-5xl:3rem;--font-size-5xl--line-height:1;--font-size-6xl:3.75rem;--font-size-6xl--line-height:1;--font-size-7xl:4.5rem;--font-size-7xl--line-height:1;--font-size-8xl:6rem;--font-size-8xl--line-height:1;--font-size-9xl:8rem;--font-size-9xl--line-height:1;--letter-spacing-tighter:-.05em;--letter-spacing-tight:-.025em;--letter-spacing-normal:0em;--letter-spacing-wide:.025em;--letter-spacing-wider:.05em;--letter-spacing-widest:.1em;--line-height-none:1;--line-height-tight:1.25;--line-height-snug:1.375;--line-height-normal:1.5;--line-height-relaxed:1.625;--line-height-loose:2;--line-height-3:.75rem;--line-height-4:1rem;--line-height-5:1.25rem;--line-height-6:1.5rem;--line-height-7:1.75rem;--line-height-8:2rem;--line-height-9:2.25rem;--line-height-10:2.5rem;--perspective-dramatic:100px;--perspective-near:300px;--perspective-normal:500px;--perspective-midrange:800px;--perspective-distant:1200px;--transition-timing-function-linear:linear;--transition-timing-function-in:cubic-bezier(.4,0,1,1);--transition-timing-function-out:cubic-bezier(0,0,.2,1);--transition-timing-function-in-out:cubic-bezier(.4,0,.2,1)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}body{line-height:inherit}hr{color:inherit;border-top-width:1px;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;background:0 0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;background:0 0}input:where(:not([type=button],[type=reset],[type=submit])),select,textarea{border:1px solid}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}::-webkit-search-decoration{-webkit-appearance:none}summary{display:list-item}ol,ul,menu{list-style:none}textarea{resize:vertical}::placeholder{opacity:1;color:color-mix(in srgb,currentColor 50%,transparent)}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]{display:none!important}}@layer components;@layer utilities{.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip:rect(0,0,0,0);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}.isolate{isolation:isolate}.m-1{margin:var(--spacing-1,.25rem)}.mt-2{margin-top:var(--spacing-2,.5rem)}.mt-8{margin-top:var(--spacing-8,2rem)}.mt-\[26px\]{margin-top:26px}.mt-\[8px\]{margin-top:8px}.mb-16{margin-bottom:var(--spacing-16,4rem)}.mb-4{margin-bottom:var(--spacing-4,1rem)}.mb-8{margin-bottom:var(--spacing-8,2rem)}.-ml-\[8px\]{margin-left:-8px}.ml-2{margin-left:var(--spacing-2,.5rem)}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.h-10{height:var(--spacing-10,2.5rem)}.h-11{height:var(--spacing-11,2.75rem)}.h-7{height:var(--spacing-7,1.75rem)}.h-9{height:var(--spacing-9,2.25rem)}.h-\[108px\]{height:108px}.h-\[84px\]{height:84px}.h-full{height:100%}.w-10{width:var(--spacing-10,2.5rem)}.w-\[100px\]{width:100px}.w-\[108px\]{width:108px}.w-\[84px\]{width:84px}.w-full{width:100%}.max-w-\[1060px\]{max-width:1060px}.flex-1{flex:1}.transform{transform:var(--tw-rotate-x)var(--tw-rotate-y)var(--tw-rotate-z)var(--tw-skew-x)var(--tw-skew-y)}.cursor-pointer{cursor:pointer}.scroll-pr-6{scroll-padding-right:var(--spacing-6,1.5rem)}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-2{gap:var(--spacing-2,.5rem)}.gap-4{gap:var(--spacing-4,1rem)}:where(.space-y-1>:not([hidden])~:not([hidden])){margin-bottom:calc(var(--spacing-1,.25rem)*var(--tw-space-y-reverse));margin-top:calc(var(--spacing-1,.25rem)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1\.5>:not([hidden])~:not([hidden])){margin-bottom:calc(var(--spacing-1_5,.375rem)*var(--tw-space-y-reverse));margin-top:calc(var(--spacing-1_5,.375rem)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not([hidden])~:not([hidden])){margin-bottom:calc(var(--spacing-2,.5rem)*var(--tw-space-y-reverse));margin-top:calc(var(--spacing-2,.5rem)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not([hidden])~:not([hidden])){margin-bottom:calc(var(--spacing-4,1rem)*var(--tw-space-y-reverse));margin-top:calc(var(--spacing-4,1rem)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not([hidden])~:not([hidden])){margin-bottom:calc(var(--spacing-6,1.5rem)*var(--tw-space-y-reverse));margin-top:calc(var(--spacing-6,1.5rem)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-x-0>:not([hidden])~:not([hidden])){margin-inline-start:calc(var(--spacing-0,0px)*calc(1 - var(--tw-space-x-reverse)));margin-inline-end:calc(var(--spacing-0,0px)*var(--tw-space-x-reverse))}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.whitespace-nowrap{white-space:nowrap}.rounded-\[18px\]{border-radius:18px}.rounded-\[36px\]{border-radius:36px}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg,.5rem)}.rounded-md{border-radius:var(--radius-md,.375rem)}.rounded-sm{border-radius:var(--radius-sm,.125rem)}.border{border-style:var(--tw-border-style);border-width:1px}.border-\[\#232323\]{border-color:#232323}.border-\[\#2a2a2a\]{border-color:#2a2a2a}.border-transparent{border-color:#0000}.bg-\[\#0b0b0b\]{background-color:#0b0b0b}.bg-\[rgba\(35\,35\,35\,0\.32\)\]{background-color:#23232352}.object-cover{object-fit:cover}.p-1{padding:var(--spacing-1,.25rem)}.p-14{padding:var(--spacing-14,3.5rem)}.p-4{padding:var(--spacing-4,1rem)}.p-6{padding:var(--spacing-6,1.5rem)}.p-\[22px\]{padding:22px}.p-\[54px\]{padding:54px}.p-\[68px\]{padding:68px}.py-0\.5{padding-top:var(--spacing-0_5,.125rem);padding-bottom:var(--spacing-0_5,.125rem)}.py-1{padding-top:var(--spacing-1,.25rem);padding-bottom:var(--spacing-1,.25rem)}.py-1\.5{padding-top:var(--spacing-1_5,.375rem);padding-bottom:var(--spacing-1_5,.375rem)}.py-2{padding-top:var(--spacing-2,.5rem);padding-bottom:var(--spacing-2,.5rem)}.pt-0{padding-top:var(--spacing-0,0px)}.px-0{padding-left:var(--spacing-0,0px);padding-right:var(--spacing-0,0px)}.px-2{padding-left:var(--spacing-2,.5rem);padding-right:var(--spacing-2,.5rem)}.px-2\.5{padding-left:var(--spacing-2_5,.625rem);padding-right:var(--spacing-2_5,.625rem)}.px-3{padding-left:var(--spacing-3,.75rem);padding-right:var(--spacing-3,.75rem)}.px-4{padding-left:var(--spacing-4,1rem);padding-right:var(--spacing-4,1rem)}.px-8{padding-left:var(--spacing-8,2rem);padding-right:var(--spacing-8,2rem)}.pr-10{padding-right:var(--spacing-10,2.5rem)}.pb-0{padding-bottom:var(--spacing-0,0px)}.pb-3{padding-bottom:var(--spacing-3,.75rem)}.text-center{text-align:center}.align-middle{vertical-align:middle}.text-2xl{font-size:var(--font-size-2xl,1.5rem);line-height:var(--font-size-2xl--line-height,2rem)}.text-3xl{font-size:var(--font-size-3xl,1.875rem);line-height:var(--font-size-3xl--line-height,2.25rem)}.text-lg{font-size:var(--font-size-lg,1.125rem);line-height:var(--font-size-lg--line-height,1.75rem)}.text-sm{font-size:var(--font-size-sm,.875rem);line-height:var(--font-size-sm--line-height,1.25rem)}.text-xl{font-size:var(--font-size-xl,1.25rem);line-height:var(--font-size-xl--line-height,1.75rem)}.text-xs{font-size:var(--font-size-xs,.75rem);line-height:var(--font-size-xs--line-height,1rem)}.text-\[18px\]{font-size:18px}.text-\[20px\]{font-size:20px}.text-\[26px\]{font-size:26px}.text-\[30px\]{font-size:30px}.text-\[64px\]{font-size:64px}.text-\[72px\]{font-size:72px}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.leading-\[1\.02\]{line-height:1.02}.leading-\[1\.03\]{line-height:1.03}.leading-none{line-height:var(--line-height-none,1)}.tracking-\[0\.08em\]{letter-spacing:.08em}.tracking-\[0\.15em\]{letter-spacing:.15em}.tracking-\[0\.22em\]{letter-spacing:.22em}.tracking-tight{letter-spacing:var(--letter-spacing-tight,-.025em)}.tracking-tighter{letter-spacing:var(--letter-spacing-tighter,-.05em)}.text-\[\#8fe5ff\]{color:#8fe5ff}.text-\[\#a6a6a6\]{color:#a6a6a6}.text-\[\#f2f2f2\]{color:#f2f2f2}.text-neutral-600{color:var(--color-neutral-600,#525252)}.text-neutral-900{color:var(--color-neutral-900,#171717)}.underline-offset-4{text-underline-offset:4px}.ring{--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-sm{--tw-shadow:0 1px 2px 0 #0000000d;--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.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,)}.grayscale{--tw-grayscale:grayscale(100%);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,)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-all{transition-property:all;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-shadow{transition-property:box-shadow;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-transform{transition-property:transform,translate,scale,rotate;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-in{transition-timing-function:var(--transition-timing-function-in,cubic-bezier(.4,0,1,1))}.ease-in-out{transition-timing-function:var(--transition-timing-function-in-out,cubic-bezier(.4,0,.2,1))}.ease-out{transition-timing-function:var(--transition-timing-function-out,cubic-bezier(0,0,.2,1))}.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\:text-neutral-800:hover{color:var(--color-neutral-800,#262626)}.hover\:underline:hover{text-decoration-line:underline}.hover\:shadow-lg:hover{--tw-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-2:focus{--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\:ring-offset-2:focus{--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\:outline-none:focus{outline-offset:2px;outline:2px solid #0000}.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{outline-offset:2px;outline:2px solid #0000}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:opacity-50:disabled{opacity:.5}.data-\[state\=active\]\:shadow-sm[data-state=active]{--tw-shadow:0 1px 2px 0 #0000000d;--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}@media (min-width:640px){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:768px){.md\:relative{position:relative}.md\:flex-row{flex-direction:row}:where(.md\:space-y-0>:not([hidden])~:not([hidden])){margin-bottom:calc(var(--spacing-0,0px)*var(--tw-space-y-reverse));margin-top:calc(var(--spacing-0,0px)*calc(1 - var(--tw-space-y-reverse)))}:where(.md\:space-x-2>:not([hidden])~:not([hidden])){margin-inline-start:calc(var(--spacing-2,.5rem)*calc(1 - var(--tw-space-x-reverse)));margin-inline-end:calc(var(--spacing-2,.5rem)*var(--tw-space-x-reverse))}:where(.md\:space-x-4>:not([hidden])~:not([hidden])){margin-inline-start:calc(var(--spacing-4,1rem)*calc(1 - var(--tw-space-x-reverse)));margin-inline-end:calc(var(--spacing-4,1rem)*var(--tw-space-x-reverse))}.md\:overflow-auto{overflow:auto}}@media (min-width:1024px){.lg\:sticky{position:sticky}.lg\:top-20{top:var(--spacing-20,5rem)}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (prefers-color-scheme:dark){.dark\:text-neutral-100{color:var(--color-neutral-100,#f5f5f5)}.dark\:text-neutral-300{color:var(--color-neutral-300,#d4d4d4)}.dark\:text-neutral-400{color:var(--color-neutral-400,#a3a3a3)}.dark\:hover\:text-neutral-100:hover{color:var(--color-neutral-100,#f5f5f5)}.dark\:hover\:text-neutral-200:hover{color:var(--color-neutral-200,#e5e5e5)}}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-4 svg{width:var(--spacing-4,1rem);height:var(--spacing-4,1rem)}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}}:root{--bg:#0b0b0b;--text:#f2f2f2;--muted:0 0% 65%;--soft-muted:#7a7a7a;--rule:#232323;--brand:#56d4ff;--brand-soft:#8fe5ff;--background:0 0% 7%;--foreground:0 0% 95%;--card:0 0% 10%;--card-foreground:0 0% 95%;--popover:0 0% 10%;--popover-foreground:0 0% 95%;--muted-foreground:0 0% 30%;--accent:189 100% 60%;--accent-foreground:0 0% 7%;--destructive:0 84% 60%;--destructive-foreground:0 0% 95%;--border:0 0% 20%;--input:0 0% 20%;--ring:189 100% 60%}[data-theme=light]{--bg:#f6f6f3;--text:#141414;--muted:0 0% 50%;--soft-muted:#6b6b6b;--rule:#d8d8d2;--brand:#0b7ea4;--brand-soft:#0b98c8;--background:45 50% 96%;--foreground:0 0% 8%;--card:0 0% 100%;--card-foreground:0 0% 8%;--popover:0 0% 100%;--popover-foreground:0 0% 8%;--muted-foreground:0 0% 55%;--accent:193 85% 33%;--accent-foreground:0 0% 100%;--destructive:0 84% 60%;--destructive-foreground:0 0% 100%;--border:0 0% 90%;--input:0 0% 95%;--ring:193 85% 33%}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);width:100%;min-width:320px;max-width:100%;margin:0;padding:0;overflow-x:clip}body{font-family:var(--font-ui),Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased}.skip-link{z-index:10001;border:1px solid var(--rule);background:var(--bg);color:var(--text);border-radius:.45rem;padding:.5rem .7rem;position:absolute;top:-3rem;left:.75rem}.skip-link:focus-visible{top:.75rem}.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}:focus-visible{outline:2px solid color-mix(in srgb,var(--brand)80%,white);outline-offset:2px}a{color:inherit;text-decoration:none;transition:color .12s,text-decoration-color .12s}.portfolio-shell{width:100%;max-width:100%;padding:2rem 2rem 2.5rem}.portfolio-container{width:100%;max-width:1280px;margin:0 auto;overflow-x:clip}.topbar{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:center;gap:1rem;padding:.5rem 0 1rem;display:flex}.site-identity{align-items:center;gap:.6rem;display:inline-flex}.site-avatar{object-fit:cover;border:1px solid var(--rule);border-radius:999px;width:1.7rem;height:1.7rem}.site-name{font-family:var(--font-ui),Inter,system-ui,sans-serif;color:var(--text);font-size:.95rem;line-height:1.2}.top-nav{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:1.25rem;display:flex}.top-nav a{font-family:var(--font-ui),Inter,system-ui,sans-serif;color:var(--muted);text-transform:lowercase;font-size:clamp(.875rem,1.2vw,1rem)}.theme-toggle{appearance:none;border:1px solid var(--rule);color:var(--muted);cursor:pointer;background:0 0;border-radius:999px;flex:none;place-items:center;width:2rem;height:2rem;padding:0;display:inline-grid}.theme-toggle-icon{stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:1rem;height:1rem}.top-nav a:hover,.theme-toggle:hover,.site-identity:hover .site-name,.article-item a:hover h2,.article-item a:hover h3{color:var(--text);text-underline-offset:.15em;text-decoration:underline;text-decoration-thickness:1px}.quote-strip{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);margin-top:1.1rem;padding:.95rem 0}.quote-strip p{font-family:var(--font-serif),"EB Garamond",Georgia,serif;color:var(--muted);max-width:82ch;margin:0;font-size:clamp(.875rem,1.2vw,1rem);line-height:1.6}.quote-strip span{color:var(--soft-muted)}.home-page{font-family:var(--font-serif),"STIX Two Text",Georgia,serif;color:var(--text);max-width:650px;margin:4rem auto 0}.home-page h1{letter-spacing:0;margin:0 0 1.5rem;font-size:clamp(1.5rem,4vw,1.9rem);font-weight:600;line-height:1.25}.home-page p{color:var(--text);margin:1.35rem 0;font-size:clamp(1.05rem,2vw,1.2rem);line-height:1.5}.home-page ul{margin:1.35rem 0;padding-left:1.2rem;list-style-type:square}.home-page li{margin:.45rem 0;padding-left:.15rem;font-size:clamp(1.05rem,2vw,1.2rem);line-height:1.35}.home-page a{color:var(--text);text-decoration:underline;-webkit-text-decoration-color:var(--soft-muted);-webkit-text-decoration-color:var(--soft-muted);text-decoration-color:var(--soft-muted);text-underline-offset:.16em;text-decoration-thickness:1px}.home-page a:hover{color:var(--muted);-webkit-text-decoration-color:var(--muted);-webkit-text-decoration-color:var(--muted);text-decoration-color:var(--muted)}.blog-page{font-family:var(--font-serif),"STIX Two Text",Georgia,serif;color:var(--text);max-width:760px;margin:4rem auto 0}.blog-header{margin-bottom:2rem}.blog-header h1{letter-spacing:0;margin:0 0 .7rem;font-size:clamp(1.5rem,4vw,1.9rem);font-weight:600;line-height:1.25}.blog-header p{color:var(--muted);max-width:58ch;margin:0;font-size:clamp(1.05rem,2vw,1.2rem);line-height:1.5}.blog-list{border-top:1px solid var(--rule);gap:0;display:grid}.blog-list-item{border-bottom:1px solid var(--rule);grid-template-columns:11rem minmax(0,1fr);gap:1.25rem;padding:1.35rem 0;display:grid}.blog-list-meta{font-family:var(--font-ui),Inter,system-ui,sans-serif;color:var(--soft-muted);flex-direction:column;gap:.3rem;padding-top:.12rem;font-size:.78rem;line-height:1.35;display:flex}.blog-list-item h2{letter-spacing:0;margin:0;font-size:clamp(1.08rem,2vw,1.28rem);font-weight:600;line-height:1.25}.blog-list-item p{color:var(--muted);margin:.45rem 0 0;font-size:clamp(.98rem,1.5vw,1.08rem);line-height:1.55}.blog-list-item a:hover h2{color:var(--muted);text-decoration:underline;-webkit-text-decoration-color:var(--muted);-webkit-text-decoration-color:var(--muted);text-decoration-color:var(--muted);text-underline-offset:.16em;text-decoration-thickness:1px}.main-layout{grid-template-columns:minmax(0,45%) minmax(0,55%);gap:3rem;margin-top:2.4rem;display:grid}.main-layout>*{min-width:0}.hero h1{font-family:var(--font-headline),Anton,Impact,sans-serif;letter-spacing:.02em;text-transform:uppercase;margin:0;font-size:clamp(56px,6vw,96px);line-height:.94}.hero h1 span{display:block}.hero p{font-family:var(--font-ui),Inter,system-ui,sans-serif;color:var(--muted);max-width:50ch;margin:1.4rem 0 0;font-size:clamp(1rem,1.25vw,1.125rem);line-height:1.6}.article-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.65rem 1.4rem;display:grid}.article-item h2,.article-item h3{font-family:var(--font-serif),"EB Garamond",Georgia,serif;margin:0;font-size:clamp(1.125rem,1.8vw,1.375rem);font-weight:600;line-height:1.2}.article-item p{font-family:var(--font-serif),"EB Garamond",Georgia,serif;color:var(--muted);margin:.5rem 0 0;font-size:clamp(.875rem,1.1vw,1rem);line-height:1.6}.article-item small{font-family:var(--font-ui),Inter,system-ui,sans-serif;color:var(--soft-muted);margin-top:.5rem;font-size:.78rem;line-height:1.4;display:inline-block}.quote-strip-centered p{text-align:center;margin:0 auto}.animations-app{--animations-sidebar-width:260px;--animations-options-width:300px;--animations-panel:color-mix(in srgb,var(--bg)92%,var(--text));--animations-stage:color-mix(in srgb,var(--bg)88%,var(--text));--animations-control:color-mix(in srgb,var(--bg)96%,var(--text));grid-template-columns:var(--animations-sidebar-width)minmax(0,1fr)var(--animations-options-width);background:var(--bg);color:var(--text);font-family:var(--font-ui),Inter,system-ui,sans-serif;width:100vw;height:100vh;min-height:620px;display:grid;overflow:hidden}.animations-sidebar,.animations-options{background:var(--animations-panel);min-height:0}.animations-sidebar{z-index:20;border-right:1px solid var(--rule);flex-direction:column;display:flex}.animations-sidebar-toolbar,.animations-panel-header,.animations-drawer-header{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.animations-sidebar-toolbar{border-bottom:1px solid var(--rule);min-height:3.25rem;padding:.65rem .75rem}.animations-sidebar-toolbar strong,.animations-panel-header strong,.animations-drawer-header strong{text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;font-weight:600;line-height:1.3;overflow:hidden}.animations-icon-button,.animations-text-button{appearance:none;border:1px solid var(--rule);background:var(--animations-control);color:var(--muted);cursor:pointer;font:inherit}.animations-icon-button{border-radius:.45rem;flex:none;place-items:center;width:2rem;height:2rem;line-height:1;display:inline-grid}.animations-text-button{border-radius:.45rem;min-height:2rem;padding:0 .7rem;font-size:.78rem}.animations-icon-button:hover,.animations-icon-button.is-active,.animations-text-button:hover{border-color:color-mix(in srgb,var(--brand)45%,var(--rule));color:var(--text)}.animations-icon-button:disabled,.animations-text-button:disabled{cursor:not-allowed;opacity:.45}.animations-search{border-bottom:1px solid var(--rule);padding:.75rem;display:block}.animations-search input,.animations-control-list input,.animations-control-list select{border:1px solid var(--rule);background:var(--animations-control);color:var(--text);font:inherit;border-radius:.45rem;width:100%;min-width:0;height:2.15rem;font-size:.83rem}.animations-search input{padding:0 .7rem}.animations-control-list input,.animations-control-list select{padding:0 .55rem}.animations-control-list input:disabled,.animations-control-list select:disabled{color:var(--soft-muted);opacity:.65}.animations-tree{flex:1;min-height:0;padding:.5rem;overflow:auto}.animations-tree-row{appearance:none;color:var(--muted);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;border-radius:.42rem;grid-template-columns:1.2rem minmax(0,1fr) auto;align-items:center;gap:.35rem;width:100%;min-height:2rem;font-size:.82rem;display:grid}.animations-tree-row:hover,.animations-tree-row.is-focused{background:color-mix(in srgb,var(--text)7%,transparent);color:var(--text)}.animations-tree-row.is-active{background:color-mix(in srgb,var(--brand)16%,transparent);color:var(--text)}.animations-depth-1{padding-left:.9rem}.animations-depth-2{padding-left:1.8rem}.animations-tree-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.animations-tree-label mark{background:color-mix(in srgb,var(--brand)32%,transparent);color:var(--text);border-radius:.2rem}.animations-tree-glyph,.animations-empty-list,.animations-panel-empty{color:var(--soft-muted)}.animations-tree-count{color:var(--soft-muted);font-size:.72rem}.animations-sidebar-is-collapsed{grid-template-columns:3.6rem minmax(0,1fr)var(--animations-options-width)}.animations-sidebar-is-collapsed .animations-sidebar-toolbar{justify-content:center;padding-inline:.5rem}.animations-sidebar-is-collapsed .animations-sidebar-toolbar strong,.animations-sidebar-is-collapsed .animations-search,.animations-sidebar-is-collapsed .animations-tree{display:none}.animations-stage{background:linear-gradient(color-mix(in srgb,var(--text)4%,transparent)1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--text)4%,transparent)1px,transparent 1px),var(--animations-stage);background-size:36px 36px;min-width:0;min-height:0;position:relative;overflow:hidden}.animations-stage-actions{z-index:8;gap:.45rem;display:flex;position:absolute;top:1rem;right:1rem}.animations-preview-wrap{place-items:center;width:100%;height:100%;padding:4rem 2rem;display:grid}.animations-empty-state{color:var(--muted);text-align:center;max-width:34ch;font-size:.95rem;line-height:1.5}.animations-demo-shell{perspective:900px}.animations-demo-card{aspect-ratio:1.42;border:1px solid color-mix(in srgb,var(--brand)35%,var(--rule));background:linear-gradient(135deg,color-mix(in srgb,var(--brand)18%,transparent),transparent 42%),color-mix(in srgb,var(--bg)82%,var(--text));transform-style:preserve-3d;will-change:transform,opacity,filter,box-shadow;border-radius:.5rem;place-items:center;width:min(48vw,360px);min-width:240px;display:grid;position:relative;box-shadow:0 28px 80px #0000004d}.animations-demo-card.is-targeted,.animations-demo-label.is-targeted,.animations-demo-dot.is-targeted{outline:1px solid color-mix(in srgb,var(--brand)65%,transparent);outline-offset:.45rem}.animations-demo-label{font-family:var(--font-serif),"STIX Two Text",Georgia,serif;letter-spacing:0;will-change:transform,opacity,filter;font-size:clamp(1.55rem,4vw,2.4rem);font-weight:600;line-height:1}.animations-demo-dot{background:var(--brand);box-shadow:0 0 22px color-mix(in srgb,var(--brand)45%,transparent);will-change:transform,opacity;border-radius:999px;width:1.25rem;height:1.25rem;position:absolute;bottom:1.1rem;right:1.1rem}.animations-registry-card{border:1px solid var(--rule);background:color-mix(in srgb,var(--bg)88%,var(--text));border-radius:.5rem;width:min(620px,86vw);padding:clamp(1.25rem,4vw,2rem);box-shadow:0 28px 80px #0000003d}.animations-registry-kicker{color:var(--brand-soft);letter-spacing:.04em;text-transform:uppercase;margin-bottom:.7rem;font-size:.76rem;font-weight:600;display:block}.animations-registry-card h1{font-family:var(--font-serif),"STIX Two Text",Georgia,serif;letter-spacing:0;margin:0;font-size:clamp(2rem,6vw,4.2rem);font-weight:600;line-height:.98}.animations-registry-card p{color:var(--muted);max-width:62ch;margin:1.1rem 0 0;font-size:clamp(1rem,1.6vw,1.12rem);line-height:1.6}.animations-registry-status{border:1px solid color-mix(in srgb,var(--brand)36%,var(--rule));color:var(--brand-soft);border-radius:999px;align-items:center;min-height:1.8rem;margin-top:1.35rem;padding:0 .65rem;font-size:.76rem;display:inline-flex}.animations-options{z-index:12;border-left:1px solid var(--rule);overflow:auto}.animations-panel-header{z-index:2;border-bottom:1px solid var(--rule);background:var(--animations-panel);padding:.85rem;position:sticky;top:0}.animations-panel-header div{min-width:0}.animations-panel-header span{color:var(--soft-muted);text-transform:uppercase;margin-bottom:.2rem;font-size:.72rem;display:block}.animations-control-list{gap:.85rem;padding:.85rem;display:grid}.animations-control-list label{color:var(--soft-muted);gap:.35rem;min-width:0;font-size:.74rem;display:grid}.animations-control-list label>span{color:var(--muted)}.animations-field-row{grid-template-columns:minmax(0,1fr) 5rem;gap:.55rem;display:grid}.animations-check{align-items:center;min-height:2rem;grid-template-columns:none!important;gap:.55rem!important;display:flex!important}.animations-check input{accent-color:var(--brand);width:1rem;height:1rem}.animations-panel-empty{margin:0;padding:1rem;font-size:.86rem;line-height:1.5}.animations-registry-panel{color:var(--muted);padding:1rem;font-size:.86rem;line-height:1.55}.animations-registry-panel p{margin:0 0 1rem}.animations-registry-panel dl{gap:.55rem;margin:0;display:grid}.animations-registry-panel div{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:center;gap:1rem;min-height:2.2rem;display:flex}.animations-registry-panel dt,.animations-registry-panel dd{margin:0}.animations-registry-panel dt{color:var(--soft-muted)}.animations-registry-panel dd{color:var(--text);text-align:right}.animations-code-drawer{z-index:18;border-top:1px solid var(--rule);background:color-mix(in srgb,var(--bg)96%,var(--text));grid-template-rows:auto minmax(0,1fr);height:min(44vh,360px);transition:transform .18s;display:grid;position:absolute;bottom:0;left:0;right:0;transform:translateY(105%);box-shadow:0 -24px 70px #00000047}.animations-drawer-is-open .animations-code-drawer{transform:translateY(0)}.animations-drawer-header{border-bottom:1px solid var(--rule);min-height:3rem;padding:.55rem .75rem}.animations-drawer-header div{align-items:center;gap:.45rem;display:flex}.animations-code-block{color:color-mix(in srgb,var(--brand-soft)70%,var(--text));white-space:pre;min-height:0;margin:0;padding:1rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78rem;line-height:1.6;overflow:auto}.animations-mobile-menu,.animations-overlay{display:none}@media (prefers-reduced-motion:reduce){.animations-code-drawer{transition:none}}.post-layout{max-width:650px;margin:4rem auto 0;display:block}.post-header{margin-bottom:1.5rem}.post-header h1{font-family:var(--font-serif),"STIX Two Text",Georgia,serif;letter-spacing:0;text-transform:none;color:var(--text);margin:0;font-size:clamp(1.25rem,4vw,1.5rem);font-weight:500;line-height:1.3}.post-header>a{font-family:var(--font-serif),"STIX Two Text",Georgia,serif;color:var(--muted);margin-top:.25rem;font-size:1rem;line-height:1.5;display:inline-block}.post-header>a:hover{color:var(--text)}.post-subheading{font-family:var(--font-serif),"STIX Two Text",Georgia,serif;color:var(--text);max-width:none;margin:1.5rem 0 0;font-size:1rem;line-height:1.5}.post-rail{align-self:start;max-height:none;padding-right:.45rem;position:sticky;top:1rem;overflow:visible}.toc-wrap{border-top:1px solid var(--rule);margin-top:1.2rem;padding-top:.9rem}.share-trigger{appearance:none;border:1px solid var(--rule);color:var(--muted);font-family:var(--font-ui),Inter,system-ui,sans-serif;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;background:0 0;border-radius:999px;margin-top:.85rem;padding:.34rem .7rem;font-size:.8rem}.share-trigger:hover{color:var(--brand-soft);border-color:color-mix(in srgb,var(--brand)45%,var(--rule))}.reader-toggle{appearance:none;border:1px solid var(--rule);color:var(--muted);font-family:var(--font-ui),Inter,system-ui,sans-serif;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;background:0 0;border-radius:999px;margin-top:.55rem;padding:.34rem .7rem;font-size:.8rem}.reader-toggle:hover{color:var(--brand-soft);border-color:color-mix(in srgb,var(--brand)45%,var(--rule))}.reader-toggle-icon{font-family:var(--font-serif),"EB Garamond",Georgia,serif;text-transform:none;letter-spacing:0;border-radius:999px;place-items:center;width:2rem;height:2rem;margin-top:0;padding:0;font-size:.92rem;line-height:1;display:inline-grid}.share-overlay{-webkit-backdrop-filter:blur(6px)saturate(108%);opacity:0;pointer-events:none;z-index:9999;background:#000000ad;place-items:center;padding:1rem;transition:opacity .21s;display:grid;position:fixed;inset:0}.share-overlay.open{opacity:1;pointer-events:auto}.share-dialog{z-index:10000;border:1px solid var(--rule);background:color-mix(in srgb,var(--bg)92%,#111);opacity:0;border-radius:16px;width:min(680px,100vw - 2rem);padding:1rem;transition:transform .23s,opacity .23s;position:relative;transform:translateY(8px)scale(.985)}.share-dialog.open{opacity:1;transform:translateY(0)scale(1)}.share-header{justify-content:space-between;align-items:center;gap:.6rem;display:flex}.share-header h3{font-family:var(--font-ui),Inter,system-ui,sans-serif;color:var(--text);margin:0;font-size:.95rem}.share-close{appearance:none;border:1px solid var(--rule);color:var(--muted);cursor:pointer;background:0 0;border-radius:999px;width:1.95rem;height:1.95rem}.share-preview{border:1px solid var(--rule);background:color-mix(in srgb,var(--bg)86%,#131821);border-radius:12px;margin-top:.9rem;display:block;overflow:hidden}.share-preview img{aspect-ratio:1200/630;object-fit:cover;border-bottom:1px solid var(--rule);width:100%;height:auto;display:block}.share-preview-copy{padding:.75rem .8rem .8rem}.share-preview-copy strong{font-family:var(--font-ui),Inter,system-ui,sans-serif;color:var(--text);font-size:.95rem;display:block}.share-preview-copy p{font-family:var(--font-ui),Inter,system-ui,sans-serif;color:var(--muted);margin:.32rem 0 0;font-size:.84rem;line-height:1.45}.share-preview-copy small{font-family:var(--font-ui),Inter,system-ui,sans-serif;color:var(--soft-muted);margin-top:.45rem;font-size:.75rem;display:inline-block}.share-options{flex-wrap:wrap;gap:.5rem;margin-top:.85rem;display:flex}.share-options a,.share-options button{appearance:none;border:1px solid var(--rule);color:var(--muted);font-family:var(--font-ui),Inter,system-ui,sans-serif;text-transform:uppercase;letter-spacing:.04em;cursor:pointer;background:0 0;border-radius:999px;padding:.35rem .66rem;font-size:.77rem}.share-options a:hover,.share-options button:hover,.share-close:hover{color:var(--brand-soft);border-color:color-mix(in srgb,var(--brand)45%,var(--rule))}.share-story-note{font-family:var(--font-ui),Inter,system-ui,sans-serif;color:var(--soft-muted);margin:.6rem 0 0;font-size:.75rem;line-height:1.45}.toc-toggle{appearance:none;border:1px solid var(--rule);font-family:var(--font-ui),Inter,system-ui,sans-serif;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);cursor:pointer;background:0 0;border-radius:999px;justify-content:space-between;align-items:center;gap:.55rem;width:100%;margin:0;padding:.34rem .58rem;font-size:.82rem;display:inline-flex}.toc-scroll-indicator{color:var(--soft-muted);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:.35rem;font-size:.66rem;display:inline-flex}.toc-scroll-indicator:after{content:"";background:color-mix(in srgb,var(--brand)55%,var(--rule));width:.85rem;height:1px;display:inline-block}.toc-chevron{transition:transform .22s}.toc-chevron.open{transform:rotate(180deg)}.toc-panel{transform-origin:top;grid-template-rows:0fr;transition:grid-template-rows .26s,opacity .24s,transform .24s;display:grid}.toc-panel.open{opacity:1;grid-template-rows:1fr;transform:translateY(0)}.toc-panel.closed{opacity:0;transform:translateY(-4px)}.toc-inner{min-height:0;overflow:hidden}.toc-list{border-left:1px solid var(--rule);margin:.8rem 0 0;padding:0;list-style:none}.toc-item{font-family:var(--font-ui),Inter,system-ui,sans-serif;margin:0;padding:.2rem 0 .2rem .75rem;font-size:.86rem;line-height:1.35}.toc-item a{color:var(--soft-muted);text-decoration:none;transition:color .12s}.toc-item a:hover{color:var(--brand-soft);text-underline-offset:.14em;text-decoration:underline}.toc-item.active{border-left:2px solid var(--brand);background:color-mix(in srgb,var(--brand)8%,transparent);margin-left:-1px}.toc-item.active a{color:var(--brand-soft)}.toc-item.level-3{padding-left:.7rem}.toc-item.level-4{padding-left:1.35rem}.post-article{font-family:var(--font-serif),"STIX Two Text",Georgia,serif;font-kerning:normal;font-feature-settings:"kern" 1,"liga" 1,"clig" 1,"calt" 1;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;hanging-punctuation:first last;color:var(--text)}.post-article>:where(p,ul,ol,blockquote,pre,figure,h1,h2,h3,h4,h5,h6){max-width:100%}.post-audio{filter:grayscale()contrast(1.02);width:100%;margin:0 0 1.4rem;display:block}.post-audio-pending{font-family:var(--font-ui),Inter,system-ui,sans-serif;color:var(--soft-muted);margin:0 0 1.2rem;font-size:.9rem}.post-audio-meta{font-family:var(--font-ui),Inter,system-ui,sans-serif;color:var(--soft-muted);margin:-.8rem 0 1rem;font-size:.8rem}.post-audio-meta a{color:var(--brand-soft);text-underline-offset:.14em;text-decoration:underline}.post-article p{letter-spacing:0;word-spacing:normal;text-wrap:pretty;color:var(--text);overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto;margin:1.25rem 0;font-size:1rem;line-height:1.5}[data-reader-mode=on] .post-article>:where(p,ul,ol,blockquote,pre,figure,h1,h2,h3,h4,h5,h6){max-width:100%}[data-reader-mode=on] .post-article p,[data-reader-mode=on] .post-article li{font-size:1rem;line-height:1.5}[data-reader-mode=on] .post-article h2,[data-reader-mode=on] .post-article h3{font-size:1.25rem}[data-reader-mode=on] .post-article h4{font-size:1.1rem}.post-article pre{border:1px solid var(--rule);background:color-mix(in srgb,var(--rule)42%,transparent);border-radius:6px;max-width:100%;margin:1.25rem 0;padding:.95rem 1rem;overflow-x:auto}.post-article pre code{max-width:100%;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.86rem;line-height:1.65;display:block}.post-article :not(pre)>code{border:1px solid var(--rule);background:color-mix(in srgb,var(--rule)35%,transparent);border-radius:.35rem;padding:.08rem .36rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.86em}.post-article figure{margin:1.5rem 0}.post-article figure.redacted-media{margin:1.25rem 0 1.5rem;position:relative;overflow:hidden}.post-article .redacted-media-image{border:1px solid var(--rule);box-shadow:0 8px 28px color-mix(in srgb,var(--rule)58%,transparent);width:100%;max-width:100%;height:auto;transition:filter .18s;display:block}.post-article .redacted-media-masks{pointer-events:none;position:absolute;inset:0}.post-article .redacted-media-mask{border:1px solid color-mix(in srgb,var(--text)22%,transparent);background:color-mix(in srgb,var(--surface-elevated)58%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--rule)40%,transparent);position:absolute}.post-article .redacted-media-mask.is-block{background:color-mix(in srgb,var(--text)82%,transparent);border-color:color-mix(in srgb,var(--text)45%,transparent)}.post-article img{border:1px solid var(--rule);border-radius:6px;width:100%;max-width:100%;height:auto;display:block}.post-article figcaption{font-family:var(--font-ui),Inter,system-ui,sans-serif;color:var(--soft-muted);margin-top:.5rem;font-size:.83rem;line-height:1.45}.post-article h1,.post-article h2,.post-article h3,.post-article h4{font-family:var(--font-serif),"STIX Two Text",Georgia,serif;letter-spacing:0;text-wrap:balance;color:var(--text);margin:3rem 0 .5rem;font-weight:500;line-height:1.35;position:relative}.post-article h2,.post-article h3{font-size:1.25rem}.post-article h4{font-size:1.1rem}.post-article h2,.post-article h3,.post-article h4{scroll-margin-top:5.8rem}.post-article ul,.post-article ol{margin:1.25rem 0;padding-left:1.5rem}.post-article li{word-spacing:normal;-webkit-hyphens:auto;hyphens:auto;margin-bottom:.25rem;font-size:1rem;line-height:1.5}.post-article a{color:var(--text);text-underline-offset:.16em;text-decoration:underline;text-decoration-thickness:1px;-webkit-text-decoration-color:var(--soft-muted);-webkit-text-decoration-color:var(--soft-muted);text-decoration-color:var(--soft-muted)}.post-article a:hover{color:var(--muted);-webkit-text-decoration-color:var(--muted);-webkit-text-decoration-color:var(--muted);text-decoration-color:var(--muted)}.post-article a.external-link-inline{align-items:baseline;gap:.28rem;display:inline-flex}.post-article .external-link-icon{color:var(--soft-muted);width:.8em;height:.8em;transform:translateY(.02em)}.post-article .anchor{color:var(--soft-muted);opacity:0;text-decoration:none;transition:opacity .12s;position:absolute;left:-.95rem}.post-article h2:hover .anchor,.post-article h3:hover .anchor,.post-article h4:hover .anchor{opacity:1}.post-article strong,.post-article b{color:var(--text);font-weight:500}.post-article blockquote{border-left:3px solid var(--rule);color:var(--muted);max-width:100%;margin:1.5rem 0;padding:.1rem 0 .1rem 1rem;font-style:italic}.post-article blockquote p{margin:0}.post-inline-related{border:1px solid var(--rule);background:color-mix(in srgb,var(--rule)20%,transparent);border-radius:10px;margin:1.1rem 0 1.2rem;padding:.8rem .85rem}.post-inline-related h3{font-family:var(--font-ui),Inter,system-ui,sans-serif;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0;font-size:.78rem}.post-inline-related-list{gap:.4rem;margin-top:.5rem;display:grid}.post-inline-related-list a{font-family:var(--font-serif),"EB Garamond",Georgia,serif;color:var(--text);font-size:1rem}.post-inline-related-list a:hover{color:var(--brand-soft);text-underline-offset:.15em;text-decoration:underline}.recommended-reads{border-top:1px solid var(--rule);margin-top:2rem;padding-top:1rem}.recommended-reads h3{font-family:var(--font-serif),"STIX Two Text",Georgia,serif;text-transform:none;letter-spacing:0;color:var(--muted);margin:0 0 .75rem;font-size:1rem;font-weight:500}.recommended-list{gap:.5rem;display:grid}.recommended-item{cursor:pointer;background:0 0;border:0;border-radius:0;padding:0;text-decoration:none;display:block}.recommended-item-title{align-items:center;gap:.35rem;display:inline-flex}.recommended-item-title .external-link-icon{color:var(--soft-muted);width:.85em;height:.85em}.recommended-item-title>span{font-family:var(--font-serif),"STIX Two Text",Georgia,serif;color:var(--text);font-size:1rem}.recommended-item:hover{color:var(--muted)}.recommended-item:hover .recommended-item-title>span{color:var(--brand-soft);text-underline-offset:.15em;text-decoration:underline}.recommended-item small{font-family:var(--font-ui),Inter,system-ui,sans-serif;color:var(--soft-muted);margin-top:.2rem;font-size:.75rem;display:block}.recommended-item p{font-family:var(--font-ui),Inter,system-ui,sans-serif;color:var(--muted);margin:.25rem 0 0;font-size:.82rem;line-height:1.45}.related-posts{border-top:1px solid var(--rule);margin-top:1.5rem;padding-top:1rem}.related-posts h3{font-family:var(--font-ui),Inter,system-ui,sans-serif;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0 0 .75rem;font-size:.85rem}.related-post-list{gap:.72rem;display:grid}.related-post-item{border:1px solid var(--rule);border-radius:10px;padding:.65rem .72rem}.related-post-item a{font-family:var(--font-serif),"EB Garamond",Georgia,serif;color:var(--text);font-size:1.02rem}.related-post-item a:hover{color:var(--brand-soft)}.related-post-item p{font-family:var(--font-ui),Inter,system-ui,sans-serif;color:var(--muted);margin:.25rem 0 0;font-size:.82rem;line-height:1.45}.related-post-item small{font-family:var(--font-ui),Inter,system-ui,sans-serif;color:var(--soft-muted);margin-top:.32rem;font-size:.74rem;display:inline-block}.post-cta{border:1px solid var(--rule);background:color-mix(in srgb,var(--rule)24%,transparent);border-radius:12px;margin-top:1.5rem;padding:.95rem}.post-cta h3{font-family:var(--font-ui),Inter,system-ui,sans-serif;text-transform:uppercase;letter-spacing:.06em;color:var(--text);margin:0;font-size:.9rem}.post-cta p{font-family:var(--font-ui),Inter,system-ui,sans-serif;color:var(--muted);margin:.45rem 0 0;font-size:.84rem;line-height:1.5}.post-cta-actions{flex-wrap:wrap;gap:.45rem;margin-top:.65rem;display:flex}.post-cta-actions a{border:1px solid var(--rule);font-family:var(--font-ui),Inter,system-ui,sans-serif;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);border-radius:999px;padding:.34rem .6rem;font-size:.74rem;text-decoration:none}.post-cta-actions a:hover{color:var(--brand-soft);border-color:color-mix(in srgb,var(--brand)45%,var(--rule))}.recent-articles{border-top:1px solid var(--rule);margin-top:3rem;padding-top:1.35rem}.recent-articles h2{font-family:var(--font-ui),Inter,system-ui,sans-serif;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0 0 1.35rem;font-size:clamp(.95rem,1.1vw,1rem);font-weight:500}.recent-articles-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.work-layout{grid-template-columns:minmax(0,38%) minmax(0,62%);gap:3rem;margin-top:2.4rem;display:grid}.work-layout>*{min-width:0}.work-rail h1{font-family:var(--font-headline),Anton,Impact,sans-serif;letter-spacing:.02em;text-transform:uppercase;margin:0;font-size:clamp(2.2rem,5.1vw,4.6rem);line-height:.96}.work-avatar{object-fit:cover;border:1px solid var(--rule);border-radius:999px;width:clamp(68px,8vw,92px);height:clamp(68px,8vw,92px);margin:0 0 .95rem}.work-rail p{font-family:var(--font-ui),Inter,system-ui,sans-serif;color:var(--muted);margin:.8rem 0 0;font-size:1rem;line-height:1.5}.work-summary{max-width:52ch;margin-top:1.1rem}.contact-layout{grid-template-columns:minmax(0,38%) minmax(0,62%);gap:3rem;margin-top:2.4rem;display:grid}.contact-layout>*{min-width:0}.contact-rail h1{font-family:var(--font-headline),Anton,Impact,sans-serif;letter-spacing:.02em;text-transform:uppercase;margin:0;font-size:clamp(2.2rem,5.1vw,4.6rem);line-height:.96}.contact-rail p{font-family:var(--font-ui),Inter,system-ui,sans-serif;color:var(--muted);margin:1rem 0 0}.contact-content{font-family:var(--font-serif),"EB Garamond",Georgia,serif}.contact-list{margin:0;padding-left:0;list-style:none}.contact-list li{margin:0 0 .8rem}.contact-list a{color:var(--text);text-underline-offset:.14em;font-size:clamp(1.08rem,1.6vw,1.2rem);text-decoration:underline}.contact-skills{font-family:var(--font-ui),Inter,system-ui,sans-serif;color:var(--muted);margin:1rem 0 0}.work-content{gap:1.6rem;display:grid}.work-item{border-bottom:1px solid var(--rule);padding-bottom:1.3rem}.work-item-toggle{text-align:left;cursor:pointer;background:0 0;border:0;width:100%;padding:0}.work-item-headline{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.work-item-actions{align-items:center;gap:.45rem;display:inline-flex}.work-item h2{font-family:var(--font-serif),"EB Garamond",Georgia,serif;color:var(--text);margin:0;font-size:clamp(1.3rem,2vw,1.7rem);line-height:1.2}.work-item-chevron{color:var(--soft-muted);transition:transform .22s}.work-item-chevron.open{transform:rotate(180deg)}.work-item-ping{justify-content:center;align-items:center;width:.62rem;height:.62rem;display:inline-flex;position:relative}.work-item-ping-dot{background:var(--brand-soft);border-radius:999px;width:.36rem;height:.36rem}.work-item-ping-ring{border:1px solid color-mix(in srgb,var(--brand)70%,transparent);border-radius:999px;animation:1.45s ease-out infinite workPing;position:absolute;inset:0}@keyframes workPing{0%{opacity:.9;transform:scale(.85)}80%{opacity:0;transform:scale(1.9)}to{opacity:0;transform:scale(1.9)}}.work-company,.work-date,.work-location{font-family:var(--font-ui),Inter,system-ui,sans-serif;color:var(--muted);margin:.45rem 0 0;font-size:.95rem}.work-item ul{margin:.85rem 0 0;padding-left:0;list-style:none}.work-item-panel{opacity:0;grid-template-rows:0fr;transition:grid-template-rows .26s,opacity .23s,transform .23s;display:grid;transform:translateY(-4px)}.work-item-panel.open{opacity:1;grid-template-rows:1fr;transform:translateY(0)}.work-item-panel-inner{min-height:0;overflow:hidden}.work-item li{font-family:var(--font-serif),"EB Garamond",Georgia,serif;color:var(--text);overflow-wrap:anywhere;margin:0 0 .65rem;padding-left:1.2rem;font-size:clamp(1rem,1.45vw,1.08rem);line-height:1.8;position:relative}.work-item li:before{content:"-";color:var(--muted);position:absolute;top:0;left:0}@media (max-width:980px){.animations-app{grid-template-rows:minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr);min-height:100vh}.animations-sidebar{width:min(86vw,300px);transition:transform .18s;position:fixed;inset:0 auto 0 0;transform:translate(-105%)}.animations-sidebar-overlay-open .animations-sidebar{transform:translate(0)}.animations-sidebar-is-collapsed{grid-template-columns:minmax(0,1fr)}.animations-sidebar-is-collapsed .animations-sidebar-toolbar{justify-content:space-between;padding:.65rem .75rem}.animations-sidebar-is-collapsed .animations-sidebar-toolbar strong,.animations-sidebar-is-collapsed .animations-search,.animations-sidebar-is-collapsed .animations-tree{display:block}.animations-mobile-menu{z-index:10;border:1px solid var(--rule);background:var(--animations-control);color:var(--text);border-radius:.45rem;place-content:center;gap:.18rem;width:2.2rem;height:2.2rem;display:grid;position:fixed;top:.8rem;left:.8rem}.animations-mobile-menu span{background:currentColor;width:1rem;height:1px;display:block}.animations-overlay{z-index:16;background:#0000006b;border:0;display:block;position:fixed;inset:0}.animations-stage{min-height:62vh}.animations-stage-actions{top:.8rem;right:.8rem}.animations-options{border-top:1px solid var(--rule);border-left:0;max-height:38vh}.animations-control-list{grid-template-columns:repeat(2,minmax(0,1fr))}.animations-field-row{grid-template-columns:minmax(0,1fr) 4.6rem}.animations-code-drawer{height:min(52vh,380px)}.portfolio-shell{padding:1.5rem 1.25rem 2rem}.main-layout{grid-template-columns:1fr;gap:2rem}.post-layout{grid-template-columns:1fr;gap:1.65rem}.post-rail{max-height:none;padding-right:0;position:static;overflow:visible}.work-layout,.contact-layout{grid-template-columns:1fr;gap:1.65rem}.article-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.4rem 1.2rem}}@media (max-width:640px){.animations-app{min-height:100dvh}.animations-preview-wrap{padding:4rem 1rem 2rem}.animations-demo-card{width:min(86vw,320px);min-width:0}.animations-options{max-height:42vh}.animations-control-list{grid-template-columns:1fr}.animations-panel-header{align-items:flex-start}.portfolio-shell{padding:1.25rem .9rem 1.5rem}.topbar{flex-wrap:wrap;row-gap:.5rem}.blog-page{margin-top:3rem}.blog-list-item{grid-template-columns:1fr;gap:.55rem}.blog-list-meta{flex-flow:wrap;gap:.45rem}.blog-list-meta span:before{content:"/ "}.article-grid{grid-template-columns:1fr;gap:1.2rem}.recent-articles-grid{grid-template-columns:1fr}.post-article>:where(p,ul,ol,blockquote,pre,figure,h1,h2,h3,h4,h5,h6),[data-reader-mode=on] .post-article>:where(p,ul,ol,blockquote,pre,figure,h1,h2,h3,h4,h5,h6){max-width:100%}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes ping{75%,to{opacity:0;transform:scale(2)}}@keyframes pulse{50%{opacity:.5}}@keyframes bounce{0%,to{animation-timing-function:cubic-bezier(.8,0,1,1);transform:translateY(-25%)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:none}}@property --tw-rotate-x{syntax:"<transform-function>";inherits:false;initial-value:rotateX(0)}@property --tw-rotate-y{syntax:"<transform-function>";inherits:false;initial-value:rotateY(0)}@property --tw-rotate-z{syntax:"<transform-function>";inherits:false;initial-value:rotate(0)}@property --tw-skew-x{syntax:"<transform-function>";inherits:false;initial-value:skew(0deg)}@property --tw-skew-y{syntax:"<transform-function>";inherits:false;initial-value:skewY(0)}@property --tw-space-y-reverse{syntax:"<number>";inherits:false;initial-value:0}@property --tw-space-x-reverse{syntax:"<number>";inherits:false;initial-value:0}@property --tw-border-style{syntax:"<custom-ident>";inherits:false;initial-value:solid}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-colored{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-colored{syntax:"*";inherits:false;initial-value:0 0 #0000}@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:"<custom-ident>";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-scale-x{syntax:"<number>|<percentage>";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"<number>|<percentage>";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"<number>|<percentage>";inherits:false;initial-value:1}
@font-face{font-family:Anton;font-style:normal;font-weight:400;font-display:swap;src:url(../media/0e7b7e0b829e3eb9-s.1c9d9a6c.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Anton;font-style:normal;font-weight:400;font-display:swap;src:url(../media/daf789e4474d0d90-s.855fa550.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Anton;font-style:normal;font-weight:400;font-display:swap;src:url(../media/9e9f04e3c37952ab-s.p.4d24b8e7.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Anton Fallback;src:local(Arial);ascent-override:129.7%;descent-override:36.29%;line-gap-override:0.0%;size-adjust:90.69%}.anton_86b06b5b-module__iZtzxW__className{font-family:Anton,Anton Fallback;font-style:normal;font-weight:400}.anton_86b06b5b-module__iZtzxW__variable{--font-headline:"Anton","Anton Fallback"}
@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.2a48534a.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.18a48cbc.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.7a40eb73.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.c995e352.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.76dcb0b2.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.7cd81963.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.3a6ba036.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_3e02c4b2-module__3qanGa__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_3e02c4b2-module__3qanGa__variable{--font-ui:"Inter","Inter Fallback"}
@font-face{font-family:STIX Two Text;font-style:normal;font-weight:400;font-display:swap;src:url(../media/b1d5dad78a0d12b5-s.12543edd.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:STIX Two Text;font-style:normal;font-weight:400;font-display:swap;src:url(../media/17381594d15ffe51-s.67327e73.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:STIX Two Text;font-style:normal;font-weight:400;font-display:swap;src:url(../media/f8ed89659f8cd9f4-s.b264ab4a.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:STIX Two Text;font-style:normal;font-weight:400;font-display:swap;src:url(../media/ea20f3f596d3a0b3-s.51d51449.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:STIX Two Text;font-style:normal;font-weight:400;font-display:swap;src:url(../media/1995f8c0ebebeccd-s.46dc5726.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:STIX Two Text;font-style:normal;font-weight:400;font-display:swap;src:url(../media/62c2ceb5e93c1826-s.p.ef67f540.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:STIX Two Text;font-style:normal;font-weight:500;font-display:swap;src:url(../media/b1d5dad78a0d12b5-s.12543edd.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:STIX Two Text;font-style:normal;font-weight:500;font-display:swap;src:url(../media/17381594d15ffe51-s.67327e73.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:STIX Two Text;font-style:normal;font-weight:500;font-display:swap;src:url(../media/f8ed89659f8cd9f4-s.b264ab4a.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:STIX Two Text;font-style:normal;font-weight:500;font-display:swap;src:url(../media/ea20f3f596d3a0b3-s.51d51449.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:STIX Two Text;font-style:normal;font-weight:500;font-display:swap;src:url(../media/1995f8c0ebebeccd-s.46dc5726.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:STIX Two Text;font-style:normal;font-weight:500;font-display:swap;src:url(../media/62c2ceb5e93c1826-s.p.ef67f540.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:STIX Two Text;font-style:normal;font-weight:600;font-display:swap;src:url(../media/b1d5dad78a0d12b5-s.12543edd.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:STIX Two Text;font-style:normal;font-weight:600;font-display:swap;src:url(../media/17381594d15ffe51-s.67327e73.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:STIX Two Text;font-style:normal;font-weight:600;font-display:swap;src:url(../media/f8ed89659f8cd9f4-s.b264ab4a.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:STIX Two Text;font-style:normal;font-weight:600;font-display:swap;src:url(../media/ea20f3f596d3a0b3-s.51d51449.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:STIX Two Text;font-style:normal;font-weight:600;font-display:swap;src:url(../media/1995f8c0ebebeccd-s.46dc5726.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:STIX Two Text;font-style:normal;font-weight:600;font-display:swap;src:url(../media/62c2ceb5e93c1826-s.p.ef67f540.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:STIX Two Text;font-style:normal;font-weight:700;font-display:swap;src:url(../media/b1d5dad78a0d12b5-s.12543edd.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:STIX Two Text;font-style:normal;font-weight:700;font-display:swap;src:url(../media/17381594d15ffe51-s.67327e73.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:STIX Two Text;font-style:normal;font-weight:700;font-display:swap;src:url(../media/f8ed89659f8cd9f4-s.b264ab4a.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:STIX Two Text;font-style:normal;font-weight:700;font-display:swap;src:url(../media/ea20f3f596d3a0b3-s.51d51449.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:STIX Two Text;font-style:normal;font-weight:700;font-display:swap;src:url(../media/1995f8c0ebebeccd-s.46dc5726.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:STIX Two Text;font-style:normal;font-weight:700;font-display:swap;src:url(../media/62c2ceb5e93c1826-s.p.ef67f540.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:STIX Two Text Fallback;src:local(Times New Roman);ascent-override:72.67%;descent-override:22.7%;line-gap-override:23.84%;size-adjust:104.86%}.stix_two_text_60526bb1-module__M7IQzG__className{font-family:STIX Two Text,STIX Two Text Fallback;font-style:normal}.stix_two_text_60526bb1-module__M7IQzG__variable{--font-serif:"STIX Two Text","STIX Two Text Fallback"}
