@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{.relative{position:relative}.static{position:static}.m-1{margin:var(--spacing-1,.25rem)}.mt-2{margin-top:var(--spacing-2,.5rem)}.mt-8{margin-top:var(--spacing-8,2rem)}.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)}.flex{display:flex}.table{display:table}.h-7{height:var(--spacing-7,1.75rem)}.h-full{height:100%}.w-\[100px\]{width:100px}.w-full{width:100%}.scroll-pr-6{scroll-padding-right:var(--spacing-6,1.5rem)}.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}: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-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-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))}.rounded-lg{border-radius:var(--radius-lg,.5rem)}.bg-white{background-color:var(--color-white,#fff)}.p-8{padding:var(--spacing-8,2rem)}.py-1{padding-top:var(--spacing-1,.25rem);padding-bottom:var(--spacing-1,.25rem)}.py-12{padding-top:var(--spacing-12,3rem);padding-bottom:var(--spacing-12,3rem)}.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-4{padding-left:var(--spacing-4,1rem);padding-right:var(--spacing-4,1rem)}.pr-10{padding-right:var(--spacing-10,2.5rem)}.pb-0{padding-bottom:var(--spacing-0,0px)}.text-left{text-align:left}.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-4xl{font-size:var(--font-size-4xl,2.25rem);line-height:var(--font-size-4xl--line-height,2.5rem)}.text-sm{font-size:var(--font-size-sm,.875rem);line-height:var(--font-size-sm--line-height,1.25rem)}.font-bold{font-weight:700}.font-semibold{font-weight:600}.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,)}.tracking-tight{letter-spacing:var(--letter-spacing-tight,-.025em)}.tracking-tighter{letter-spacing:var(--letter-spacing-tighter,-.05em)}.text-neutral-600{color:var(--color-neutral-600,#525252)}.text-neutral-900{color:var(--color-neutral-900,#171717)}.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-all{transition-property:all;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.hover\:text-neutral-800:hover{color:var(--color-neutral-800,#262626)}@media (min-width:768px){.md\:relative{position:relative}.md\:flex-row{flex-direction:row}.md\:items-center{align-items:center}: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)}}@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)}}}:root{--ink:#0b1716;--ink-soft:#3f4c49;--paper:#f2f1eb;--paper-strong:#fffef8;--line:#0b171629;--acid:#c8ff42;--cyan:#91e5dc;--deep:#061a19;--muted:#aab3b0;--red:#ea4d3d;--blue:#76bdec}*{box-sizing:border-box}html{scroll-behavior:smooth;min-width:320px;scroll-padding-top:88px}body{background:var(--paper);color:var(--ink);text-rendering:optimizelegibility;margin:0;font-family:Arial,PingFang SC,Microsoft YaHei,sans-serif}body.lightbox-open{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block}::selection{background:var(--acid);color:var(--ink)}.media-cover{object-fit:cover}.media-contain{object-fit:contain}.skip-link{z-index:200;background:var(--acid);padding:.8rem 1rem;font-weight:700;position:fixed;top:-5rem;left:1rem}.skip-link:focus{top:1rem}.eyebrow{font-family:var(--font-geist-mono),monospace;letter-spacing:.11em;text-transform:uppercase;margin:0 0 1.4rem;font-size:.68rem;font-weight:650}.site-header{z-index:80;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--paper)88%,transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);grid-template-columns:1fr auto 1fr;align-items:center;min-height:72px;padding:0 3vw;display:grid;position:sticky;top:0}.wordmark{font-family:var(--font-geist-mono),monospace;letter-spacing:.14em;width:fit-content;font-size:1.1rem;font-weight:800}.wordmark span{color:#55736e;vertical-align:top;margin-left:.3rem;font-size:.55rem}.site-header nav{font-family:var(--font-geist-mono),monospace;gap:clamp(1rem,2.2vw,2.3rem);font-size:.72rem;display:flex}.site-header nav a,.header-contact,.text-link,.email-link{position:relative}.site-header nav a:after,.text-link:after,.email-link:after{content:"";transform-origin:100%;background:currentColor;height:1px;transition:transform .18s;position:absolute;bottom:-.35rem;left:0;right:0;transform:scaleX(0)}.site-header nav a:hover:after,.site-header nav a:focus-visible:after,.text-link:hover:after,.text-link:focus-visible:after,.email-link:hover:after,.email-link:focus-visible:after{transform-origin:0;transform:scaleX(1)}.header-contact{border-bottom:1px solid;justify-self:end;font-size:.76rem;font-weight:700}.hero{border-bottom:1px solid var(--line);min-height:calc(100vh - 72px);padding:3vw;position:relative;overflow:hidden}.hero-grid{opacity:.42;background-image:linear-gradient(var(--line)1px,transparent 1px),linear-gradient(90deg,var(--line)1px,transparent 1px);pointer-events:none;background-size:8.333vw 8.333vw;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 86%);mask-image:linear-gradient(#000,#0000 86%)}.hero-topline{color:var(--ink-soft);font-family:var(--font-geist-mono),monospace;letter-spacing:.08em;justify-content:space-between;font-size:.66rem;display:flex;position:relative}.hero-content{z-index:1;max-width:920px;padding:clamp(7rem,14vh,10rem) 0 5rem;position:relative}.hero h1{letter-spacing:-.095em;align-items:flex-end;gap:1.5rem;margin:0;font-size:clamp(5rem,13vw,11rem);font-weight:700;line-height:.8;display:flex}.hero h1 span{color:var(--ink-soft);font-family:var(--font-geist-mono),monospace;letter-spacing:.16em;writing-mode:vertical-rl;padding-bottom:.6rem;font-size:clamp(.7rem,1.1vw,.9rem);font-weight:500}.hero-role{letter-spacing:-.04em;max-width:850px;margin:2rem 0 1rem;font-size:clamp(1.25rem,2.35vw,2.15rem);font-weight:600}.hero-intro{color:var(--ink-soft);max-width:700px;margin:0;font-size:clamp(1rem,1.5vw,1.16rem);line-height:1.8}.hero-actions,.resume-actions{align-items:center;gap:2rem;margin-top:2.5rem;display:flex}.primary-button{background:var(--ink);color:var(--paper-strong);font-family:var(--font-geist-mono),monospace;justify-content:space-between;align-items:center;gap:2rem;min-height:48px;padding:0 1.2rem;font-size:.74rem;font-weight:650;transition:background .18s,color .18s;display:inline-flex}.primary-button:hover,.primary-button:focus-visible{background:var(--acid);color:var(--ink)}.text-link{font-family:var(--font-geist-mono),monospace;font-size:.74rem;font-weight:650}.education-card{border:1px solid var(--ink);background:var(--cyan);width:min(280px,24vw);padding:1.3rem;position:absolute;top:31%;right:3vw;transform:rotate(2deg)}.education-card span,.education-card small{font-family:var(--font-geist-mono),monospace;letter-spacing:.08em;font-size:.64rem;display:block}.education-card strong{margin:1.6rem 0 .5rem;font-size:1.1rem;line-height:1.25;display:block}.education-card p{margin:0 0 1.6rem;font-size:.88rem}.stats-grid{z-index:1;border-block:1px solid var(--ink);grid-template-columns:repeat(3,1fr);margin:0;display:grid;position:relative}.stats-grid>div{border-right:1px solid var(--ink);min-height:165px;padding:1.5rem 1.2rem 1rem 0}.stats-grid>div:not(:first-child){padding-left:1.5rem}.stats-grid>div:last-child{border-right:0}.stats-grid dd{letter-spacing:-.07em;margin:0;font-size:clamp(2.8rem,5.5vw,5rem);font-weight:650;line-height:1}.stats-grid dt{margin-top:.65rem;font-weight:750}.stats-grid p{color:var(--ink-soft);margin:.3rem 0 0;font-size:.72rem}.stats-grid>div:first-child{background:var(--acid);padding-left:1.5rem}.stats-grid>div:first-child dd:after{content:"↗";vertical-align:top;margin-left:.35rem;font-size:.42em}.stats-methodology{z-index:1;color:var(--ink-soft);max-width:880px;margin:1rem 0 0;font-size:.7rem;line-height:1.65;position:relative}.home-performance{background:var(--deep);color:var(--paper-strong);grid-template-columns:minmax(320px,.8fr) minmax(0,1.2fr);gap:7vw;padding:clamp(5rem,9vw,8rem) max(3vw,50vw - 640px);display:grid}.performance-heading h2{letter-spacing:-.075em;margin:0;font-size:clamp(3rem,6vw,6.4rem);line-height:.92}.performance-heading>p:last-child{color:var(--muted);max-width:430px;margin:2rem 0 0;line-height:1.8}.performance-mini-grid{border-top:1px solid #ffffff3d;grid-template-columns:repeat(2,1fr);display:grid}.performance-mini-grid>div{border-bottom:1px solid #ffffff2e;border-right:1px solid #ffffff2e;min-height:170px;padding:1.5rem}.performance-mini-grid>div:nth-child(2n){border-right:0}.performance-mini-grid span,.performance-mini-grid p{color:var(--muted);font-family:var(--font-geist-mono),monospace;font-size:.64rem}.performance-mini-grid strong{color:var(--acid);letter-spacing:-.06em;margin-top:2rem;font-size:clamp(2.5rem,4.5vw,4.8rem);display:block}.performance-mini-grid p{margin:.4rem 0 0}.section-shell,.experience-section,.resume-section{padding:clamp(5rem,10vw,9rem) 3vw}.section-heading{grid-template-columns:1fr 2fr;margin-bottom:5rem;display:grid}.section-heading .eyebrow{grid-row:span 2}.section-heading h2{letter-spacing:-.075em;max-width:900px;margin:0;font-size:clamp(2.9rem,6.5vw,6.7rem);font-weight:650;line-height:.98}.section-heading>p:last-child{color:var(--ink-soft);max-width:600px;margin:1.5rem 0 0;font-size:.9rem;line-height:1.7}.featured-grid{grid-template-columns:repeat(12,1fr);gap:clamp(1rem,2vw,2rem);display:grid}.featured-card{border:1px solid var(--ink);background:var(--paper-strong);grid-column:span 6;overflow:hidden}.featured-link{flex-direction:column;height:100%;display:flex}.featured-media{aspect-ratio:16/10;background:var(--deep);min-height:0;position:relative;overflow:hidden}.featured-image{min-height:inherit;width:100%;height:100%;position:relative;overflow:hidden}.project-card-image{object-fit:contain;padding:clamp(.5rem,1.4vw,1.3rem)}.featured-card-04 .project-card-image{object-fit:cover;padding:0}.featured-image img{transition:transform .5s cubic-bezier(.2,.7,.2,1)}.featured-media-split{grid-template-columns:1fr 1fr;display:grid}.featured-link:hover .featured-image img{transform:scale(1.025)}.project-number,.project-open{z-index:2;background:var(--acid);color:var(--ink);font-family:var(--font-geist-mono),monospace;font-size:.66rem;font-weight:700;position:absolute}.project-number{padding:.65rem .75rem;top:1rem;left:1rem}.project-open{padding:.7rem .85rem;bottom:1rem;right:1rem}.featured-copy{flex-direction:column;flex:1;justify-content:space-between;min-width:0;padding:clamp(1.4rem,2.5vw,2.5rem);display:flex}.featured-title-row{justify-content:space-between;gap:1rem;display:flex}.featured-title-row>span{font-size:1.4rem}.featured-copy h3{letter-spacing:-.065em;margin:0;font-size:clamp(1.9rem,3vw,3.35rem);font-weight:650;line-height:.98}.project-chinese-title{margin:.9rem 0 0;font-weight:700}.project-summary{color:var(--ink-soft);margin:2rem 0;font-size:.95rem;line-height:1.8}.project-card-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:flex-end;gap:1rem;padding-top:1.4rem;display:flex}.tag-list{flex-wrap:wrap;gap:.45rem;margin:0;padding:0;list-style:none;display:flex}.tag-list li,.capability-grid span{border:1px solid var(--ink);font-family:var(--font-geist-mono),monospace;padding:.58rem .74rem;font-size:.64rem}.card-metric{text-align:right;white-space:nowrap;margin:0}.card-metric strong,.card-metric span{display:block}.card-metric strong{font-size:1.35rem}.card-metric span{color:var(--ink-soft);margin-top:.2rem;font-size:.65rem}.experience-section{background:var(--deep);color:var(--paper-strong)}.light-heading{border-bottom:1px solid #ffffff40;padding-bottom:4rem}.experience-grid{grid-template-columns:1fr 2fr;gap:4vw;display:grid}.experience-lead span{color:var(--acid);font-family:var(--font-geist-mono),monospace;font-size:.7rem}.experience-lead h3{margin:1.5rem 0 .5rem;font-size:2rem}.experience-lead p,.experience-body>p{color:var(--muted);line-height:1.8}.experience-lead small{color:var(--muted);font-family:var(--font-geist-mono),monospace;max-width:320px;margin-top:.8rem;font-size:.68rem;line-height:1.6;display:block}.experience-body>p{max-width:680px;margin:0 0 3rem;font-size:1.05rem}.experience-body ol{margin:0;padding:0;list-style:none}.experience-body li{border-top:1px solid #fff3;grid-template-columns:70px 1fr;padding:1.2rem 0;font-size:1.05rem;display:grid}.experience-body li span{color:var(--acid);font-family:var(--font-geist-mono),monospace;font-size:.7rem}.about-section{grid-template-columns:minmax(300px,.85fr) 1fr;gap:7vw;display:grid}.about-portrait{border:1px solid var(--ink);background:var(--deep);width:100%;height:clamp(500px,45vw,620px);min-height:0;position:relative;overflow:hidden}.about-portrait img{object-position:center 29%}.about-portrait>span{background:var(--acid);font-family:var(--font-geist-mono),monospace;padding:.7rem .85rem;font-size:.66rem;font-weight:700;position:absolute;bottom:1rem;right:1rem}.about-content{align-self:center}.about-content .section-heading{margin-bottom:2.5rem;display:block}.about-content .section-heading h2{font-size:clamp(2.7rem,5vw,5.4rem)}.about-copy>p{color:var(--ink-soft);margin:0 0 1.4rem;font-size:1.03rem;line-height:1.9}.capability-grid{flex-wrap:wrap;gap:.5rem;margin-top:2.5rem;display:flex}.resume-section{background:var(--acid)}.resume-section h2{letter-spacing:-.075em;max-width:1100px;margin:0;font-size:clamp(2.8rem,6.8vw,7rem);font-weight:650;line-height:.98}.light-button{background:var(--paper-strong);color:var(--ink)}.light-button:hover,.light-button:focus-visible{background:var(--deep);color:var(--paper-strong)}.email-link{font-family:var(--font-geist-mono),monospace;font-size:.82rem;font-weight:650}.contact-note{margin:2rem 0 0;font-size:.75rem}.site-footer{background:var(--deep);color:var(--muted);font-family:var(--font-geist-mono),monospace;grid-template-columns:1fr auto 1fr;gap:1rem;padding:1.6rem 3vw;font-size:.64rem;display:grid}.site-footer a{color:var(--paper-strong);justify-self:end}.project-breadcrumb{color:var(--ink-soft);font-family:var(--font-geist-mono),monospace;letter-spacing:.08em;gap:.7rem;font-size:.64rem;display:flex}.project-breadcrumb a{border-bottom:1px solid}.case-hero{max-width:1360px;margin:0 auto;padding:2rem 3vw 0}.case-hero-copy{grid-template-columns:minmax(0,1.5fr) minmax(260px,.65fr);column-gap:5vw;padding:clamp(5rem,9vw,9rem) 0 4rem;display:grid}.case-hero-copy .eyebrow,.case-hero-copy h1{grid-column:1}.case-hero-copy h1{letter-spacing:-.08em;margin:0;font-size:clamp(4rem,9vw,9.5rem);font-weight:650;line-height:.82}.case-hero-copy h2{grid-column:2;align-self:end;margin:0 0 1.2rem;font-size:clamp(1.4rem,2.1vw,2.2rem)}.case-hero-copy>p:last-child{color:var(--ink-soft);grid-column:2;margin:0;line-height:1.85}.case-cover{border:1px solid var(--ink);background:var(--deep);height:min(66vw,790px);min-height:500px;position:relative;overflow:hidden}.case-cover img{padding:clamp(1rem,3vw,3rem)}.case-metrics{border-bottom:1px solid var(--ink);grid-template-columns:repeat(3,1fr);margin:0;display:grid}.case-metrics div{border-right:1px solid var(--ink);padding:2rem}.case-metrics div:last-child{border-right:0}.case-metrics dt{color:var(--ink-soft);font-size:.7rem}.case-metrics dd{letter-spacing:-.04em;margin:.5rem 0 0;font-size:clamp(1.5rem,2.5vw,2.7rem);font-weight:700}.case-body{max-width:1360px;margin:0 auto;padding:clamp(5rem,9vw,8rem) 3vw}.case-body-intro{grid-template-columns:1fr 2fr;margin-bottom:3rem;display:grid}.case-body-intro>p:last-child{color:var(--ink-soft);max-width:600px;margin:0;font-size:.84rem;line-height:1.7}.case-sections{border-top:1px solid var(--ink)}.case-section{border-bottom:1px solid var(--line);grid-template-columns:70px minmax(210px,.8fr) 1.3fr;gap:2vw;padding:2rem 0;display:grid}.case-section>span,.case-section div>p{font-family:var(--font-geist-mono),monospace;font-size:.64rem}.case-section>div:nth-child(2)>p{color:var(--ink-soft);text-transform:uppercase;margin:0 0 .65rem}.case-section h3{margin:0;font-size:clamp(1.25rem,2vw,2rem)}.case-section-content{color:var(--ink-soft);max-width:740px}.case-section-content>p{margin:0;line-height:1.85}.case-section-content ul{margin:1rem 0 0;padding-left:1.1rem}.case-section-content li{margin:.55rem 0;line-height:1.7}.workflow-case .case-sections{border-bottom:1px solid var(--ink);grid-template-columns:repeat(4,1fr);display:grid}.workflow-case .case-section{border-right:1px solid var(--line);border-bottom:0;flex-direction:column;min-height:330px;padding:1.5rem;display:flex}.workflow-case .case-section:nth-child(-n+4){border-bottom:1px solid var(--line)}.workflow-case .case-section:last-child{border-right:0;grid-column:span 2}.workflow-case .case-section-content{margin-top:auto;font-size:.85rem}.case-supporting{margin:clamp(5rem,9vw,9rem) 0 0}.case-supporting figcaption{font-family:var(--font-geist-mono),monospace;justify-content:space-between;gap:1rem;margin-bottom:1rem;font-size:.66rem;display:flex}.case-supporting figcaption span{color:var(--ink-soft)}.lightbox-trigger{border:1px solid var(--ink);background:var(--deep);color:var(--paper-strong);cursor:zoom-in;width:100%;padding:0;display:block;position:relative;overflow:hidden}.supporting-image{height:min(74vw,920px);min-height:460px}.supporting-image img{padding:clamp(.5rem,2vw,2rem)}.zoom-label{z-index:2;background:var(--acid);color:var(--ink);font-family:var(--font-geist-mono),monospace;padding:.7rem .8rem;font-size:.62rem;font-weight:700;position:absolute;bottom:1rem;right:1rem}.case-tags{margin-top:2rem}.performance-dashboard{background:var(--deep);color:var(--paper-strong);margin-top:clamp(5rem,9vw,9rem);padding:clamp(2rem,5vw,5rem)}.dashboard-headline{border-bottom:1px solid #ffffff3d;grid-template-columns:minmax(250px,.8fr) 1.2fr;align-items:end;column-gap:4vw;padding-bottom:3rem;display:grid}.dashboard-headline .eyebrow{grid-column:1/-1}.dashboard-headline>strong{color:var(--acid);letter-spacing:-.09em;grid-row:span 2;font-size:clamp(5rem,12vw,11rem);line-height:.78}.dashboard-headline>strong span{vertical-align:top;margin-left:.3rem;font-size:.25em}.dashboard-headline h2{letter-spacing:-.05em;margin:0;font-size:clamp(1.8rem,3.5vw,3.8rem);line-height:1}.dashboard-headline>p:last-child{color:var(--muted);margin:1rem 0 0}.follower-comparison,.reach-comparison,.engagement-row{display:grid}.follower-comparison{grid-template-columns:1fr 1fr}.reach-comparison{border-top:1px solid #fff3;grid-template-columns:1fr 1fr}.engagement-row{border-top:1px solid #fff3;grid-template-columns:repeat(3,1fr)}.follower-comparison>div,.reach-comparison>div,.engagement-row>div{border-right:1px solid #fff3;padding:2rem;position:relative}.follower-comparison>div:last-child,.reach-comparison>div:last-child,.engagement-row>div:last-child{border-right:0}.performance-dashboard span,.performance-dashboard p{font-size:.72rem}.performance-dashboard strong{letter-spacing:-.06em;margin-top:1.1rem;font-size:clamp(2.5rem,5.5vw,5.5rem);display:block}.performance-dashboard p{color:var(--muted);line-height:1.65}.follower-comparison b{z-index:2;background:var(--acid);color:var(--ink);border-radius:50%;place-items:center;width:2.4rem;height:2.4rem;display:grid;position:absolute;top:50%;right:-1.2rem;transform:translateY(-50%)}.dashboard-methodology{border-top:1px solid #fff3;gap:2rem;margin:0;padding-top:2rem;display:flex}.dashboard-methodology span{color:var(--acid);font-family:var(--font-geist-mono),monospace;flex:0 0 100px}.improvement-section,.team-contribution{margin-top:clamp(5rem,9vw,9rem)}.module-heading{grid-template-columns:1fr 2fr;margin-bottom:2.5rem;display:grid}.module-heading .eyebrow{grid-row:span 2}.module-heading h2{letter-spacing:-.065em;max-width:850px;margin:0;font-size:clamp(2.4rem,5vw,5.4rem);line-height:.95}.module-heading>p:last-child{color:var(--ink-soft);max-width:700px;margin:1.4rem 0 0;line-height:1.75}.improvement-timeline{border:1px solid var(--ink);grid-template-columns:repeat(5,1fr);margin:0;padding:0;list-style:none;display:grid}.improvement-timeline li{border-right:1px solid var(--ink);min-width:0;min-height:330px;padding:1.4rem;position:relative}.improvement-timeline li:last-child{border-right:0}.improvement-timeline li:after{z-index:2;background:var(--acid);content:"→";border-radius:50%;place-items:center;width:2.1rem;height:2.1rem;display:grid;position:absolute;top:2rem;right:-1.05rem}.improvement-timeline li:last-child:after{display:none}.improvement-timeline li>span,.improvement-timeline li>p,.contribution-grid article>span,.contribution-grid article>p{font-family:var(--font-geist-mono),monospace;font-size:.62rem}.improvement-timeline li>p,.contribution-grid article>p{color:var(--ink-soft);text-transform:uppercase;margin:2.5rem 0 .8rem;line-height:1.5}.improvement-timeline h3,.contribution-grid h3{letter-spacing:-.035em;margin:0;font-size:clamp(1.15rem,1.8vw,1.7rem);line-height:1.12}.improvement-timeline li>div,.contribution-grid article>div{color:var(--ink-soft);margin-top:2rem;font-size:.84rem;line-height:1.75}.team-contribution{background:var(--acid);padding:clamp(2rem,5vw,5rem)}.contribution-grid{border-top:1px solid var(--ink);grid-template-columns:repeat(3,1fr);display:grid}.contribution-grid article{border-right:1px solid var(--ink);min-width:0;padding:2rem}.contribution-grid article:first-child{padding-left:0}.contribution-grid article:last-child{border-right:0;padding-right:0}.contribution-grid article>p{color:var(--ink)}.contribution-grid article>div{color:var(--ink-soft)}.representative-videos{margin-top:clamp(5rem,9vw,9rem)}.video-section-heading{grid-template-columns:1fr 2fr;margin-bottom:2.5rem;display:grid}.video-section-heading .eyebrow{grid-row:span 2}.video-section-heading h2{letter-spacing:-.06em;margin:0;font-size:clamp(2.3rem,4.6vw,5rem)}.video-section-heading>p:last-child{color:var(--ink-soft)}.external-video-grid{grid-template-columns:1fr 1fr;gap:1.5rem;display:grid}.external-video-card{border:1px solid var(--ink);background:var(--paper-strong)}.external-video-image,.film-video-preview{aspect-ratio:16/9;background:var(--deep);position:relative;overflow:hidden}.external-video-image img,.film-video-preview img{padding:1rem}.play-icon{z-index:2;background:var(--acid);color:var(--ink);border-radius:50%;place-items:center;width:4rem;height:4rem;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.external-video-card>div:last-child{padding:1.5rem}.external-video-card>div:last-child>span,.film-video-link>div:last-child>span{color:var(--ink-soft);font-family:var(--font-geist-mono),monospace;font-size:.62rem}.external-video-card h3{min-height:2.6em;margin:1rem 0 2rem;font-size:clamp(1.25rem,2vw,2rem)}.external-video-card>div:last-child>p{font-family:var(--font-geist-mono),monospace;margin:0;font-size:.7rem;font-weight:700}.video-role-note{color:var(--ink-soft);max-width:900px;margin:1.2rem 0 0;font-size:.72rem;line-height:1.7}.lightbox{z-index:300;background:#020a0af0;place-items:center;padding:3.5rem 1rem 1rem;display:grid;position:fixed;inset:0}.lightbox-stage{width:100%;height:100%;position:relative}.lightbox-close{z-index:301;color:#fff;cursor:pointer;background:0 0;border:1px solid #ffffff80;padding:.7rem .9rem;position:fixed;top:1rem;right:1rem}.next-project{background:var(--acid);justify-content:space-between;align-items:flex-end;padding:4rem 3vw;display:flex}.next-project .eyebrow{margin:0}.next-project a{letter-spacing:-.05em;font-size:clamp(1.8rem,4vw,4rem);font-weight:650}.collection-hero{padding:2rem 3vw clamp(5rem,9vw,9rem)}.collection-hero>.eyebrow{margin-top:clamp(5rem,10vw,9rem)}.collection-hero h1{letter-spacing:-.085em;margin:0;font-size:clamp(4.5rem,11vw,11rem);font-weight:650;line-height:.82}.collection-hero>p:last-child{color:var(--ink-soft);margin:2rem 0 0}.film-grid{background:var(--ink);grid-template-columns:1fr 1fr;gap:1px;padding:1px;display:grid}.film-card{background:var(--paper-strong)}.film-image{aspect-ratio:16/9;background:var(--deep);position:relative;overflow:hidden}.film-image img{padding:1rem}.film-card-copy{border-top:8px solid var(--red);padding:clamp(1.5rem,3vw,3rem)}.film-blue .film-card-copy{border-color:var(--blue)}.film-card-copy>p{font-family:var(--font-geist-mono),monospace;margin:0 0 2rem;font-size:.64rem}.film-card-copy h2{letter-spacing:-.06em;margin:0;font-size:clamp(2.2rem,4.2vw,4.8rem)}.film-card-copy h3{color:var(--ink-soft);margin:.4rem 0 2.5rem;font-size:1rem;font-weight:500}.film-card-copy dl{margin:0 0 2.5rem}.film-card-copy dl div{border-top:1px solid var(--line);grid-template-columns:100px 1fr;padding:.9rem 0;display:grid}.film-card-copy dt{color:var(--ink-soft);font-size:.7rem}.film-card-copy dd{margin:0;font-size:.85rem}.film-card-copy>span{font-family:var(--font-geist-mono),monospace;font-size:.68rem;font-weight:700}.collection-note{grid-template-columns:1fr 2fr;padding:4rem 3vw;display:grid}.collection-note span{font-family:var(--font-geist-mono),monospace;font-size:.65rem}.collection-note p{color:var(--ink-soft);max-width:700px;margin:0;line-height:1.8}.film-detail-hero{border-bottom:8px solid var(--red);grid-template-columns:.75fr 1.25fr;padding:2rem 3vw 3vw;display:grid}.film-detail-hero.film-blue{border-color:var(--blue)}.film-detail-hero .project-breadcrumb{grid-column:1/-1}.film-detail-copy{align-self:center;padding:5rem 4vw 5rem 0}.film-detail-copy h1{letter-spacing:-.07em;margin:0;font-size:clamp(3.5rem,7vw,7rem);line-height:.9}.film-detail-copy h2{color:var(--ink-soft);margin:1rem 0 4rem;font-size:clamp(1.2rem,2vw,2rem);font-weight:500}.film-detail-copy dl div{border-top:1px solid var(--line);padding:1rem 0}.film-detail-copy dt{font-family:var(--font-geist-mono),monospace;margin-bottom:.5rem;font-size:.62rem}.film-detail-copy dd{margin:0;font-weight:700;line-height:1.5}.film-detail-copy dd span{color:var(--ink-soft);font-size:.75rem;font-weight:400}.film-detail-image{background:var(--deep);min-height:660px;position:relative}.film-detail-image img{padding:1rem}.film-detail-body{padding:clamp(5rem,9vw,9rem) 3vw}.film-detail-body>article{border-top:1px solid var(--line);grid-template-columns:70px minmax(220px,.8fr) 1.2fr;gap:2vw;padding:2rem 0;display:grid}.film-detail-body>article>span,.film-detail-body article div>p{font-family:var(--font-geist-mono),monospace;font-size:.64rem}.film-detail-body article div>p{color:var(--ink-soft);margin:0 0 .6rem}.film-detail-body h3{margin:0;font-size:1.5rem}.film-detail-body article>p{color:var(--ink-soft);margin:0;line-height:1.85}.film-video-link{border:1px solid var(--ink);background:var(--paper-strong);grid-template-columns:minmax(0,1.5fr) minmax(250px,.65fr);align-items:stretch;margin-top:5rem;display:grid}.film-video-link>div:last-child{flex-direction:column;justify-content:center;padding:clamp(1.5rem,3vw,3rem);display:flex}.film-video-link strong{margin:1.2rem 0 .7rem;font-size:clamp(1.8rem,3vw,3.2rem);display:block}.film-video-link p{color:var(--ink-soft);margin:0}.film-project-nav{font-family:var(--font-geist-mono),monospace;padding:0 3vw 5rem;font-size:.72rem}.photo-hero h2{margin:1rem 0 0;font-size:clamp(1.5rem,3vw,3rem)}.photo-hero>p:last-child{max-width:700px;line-height:1.8}.photo-gallery{grid-template-columns:repeat(12,1fr);gap:3vw;padding:0 3vw clamp(6rem,10vw,10rem);display:grid}.photo-item{margin:0}.photo-item-1{grid-column:1/10}.photo-item-2{grid-column:4/13;margin-top:6vw}.photo-item-3{grid-column:3/9;margin-top:6vw}.gallery-image{aspect-ratio:3/2;background:#d8d7d0;height:auto;max-height:none}.gallery-image img{padding:0}.photo-portrait .gallery-image{aspect-ratio:2/3;height:auto;max-height:900px}.photo-item figcaption{font-family:var(--font-geist-mono),monospace;justify-content:space-between;padding-top:.8rem;font-size:.62rem;display:flex}@media (max-width:1000px){.site-header{grid-template-columns:auto 1fr;padding:0 1.2rem}.site-header nav{justify-self:end;gap:1rem}.header-contact{display:none}.hero,.section-shell,.experience-section,.resume-section{padding-left:1.2rem;padding-right:1.2rem}.education-card{width:min(360px,90%);margin:-2rem 0 5rem auto;position:relative;top:auto;right:auto}.featured-card-01 .featured-link,.featured-card-04 .featured-link{min-height:0;display:flex}.about-portrait{height:520px;min-height:0}.improvement-timeline{grid-template-columns:repeat(2,1fr)}.improvement-timeline li{border-bottom:1px solid var(--ink);min-height:280px}.improvement-timeline li:nth-child(2n){border-right:0}.improvement-timeline li:nth-child(2n):after{display:none}.improvement-timeline li:last-child{border-bottom:0;grid-column:1/-1;min-height:230px}.workflow-case .case-sections{grid-template-columns:1fr 1fr}.workflow-case .case-section{border-bottom:1px solid var(--line);min-height:280px}.workflow-case .case-section:last-child{grid-column:1/-1}}@media (max-width:760px){html{scroll-padding-top:122px}.site-header{grid-template-columns:1fr;align-content:center;gap:.85rem;min-height:112px}.wordmark{justify-self:start}.site-header nav{text-align:center;grid-template-columns:repeat(5,minmax(0,1fr));justify-self:stretch;gap:.2rem;width:100%;font-size:clamp(.52rem,2.45vw,.62rem);display:grid;overflow:visible}.site-header nav a{min-width:0;padding:.3rem 0}.hero{min-height:auto;padding-top:2rem}.hero-topline span:last-child{display:none}.hero-content{padding:5rem 0 4rem}.hero h1{gap:.65rem;font-size:clamp(3.85rem,21vw,5.8rem)}.hero-role{overflow-wrap:anywhere;font-size:clamp(1.1rem,6vw,1.55rem);line-height:1.2}.hero-intro{font-size:.95rem;line-height:1.7}.hero-actions,.resume-actions{flex-direction:column;align-items:flex-start;gap:1.5rem}.hero-actions .primary-button,.resume-actions .primary-button{width:100%;min-height:52px}.hero-actions .text-link,.resume-actions .email-link{overflow-wrap:anywhere;align-items:center;min-height:44px;display:flex}.stats-grid{grid-template-columns:1fr}.stats-grid>div,.stats-grid>div:not(:first-child){border-right:0;border-bottom:1px solid var(--ink);min-height:135px;padding:1.4rem 0}.stats-grid>div:last-child{border-bottom:0}.stats-grid>div:first-child{padding-left:0}.home-performance{grid-template-columns:1fr;gap:3rem;padding-left:1.2rem;padding-right:1.2rem}.performance-mini-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.performance-mini-grid>div{min-height:140px;padding:1.1rem}.performance-mini-grid>div:nth-child(odd){border-right:1px solid #ffffff2e}.performance-mini-grid strong{font-size:clamp(2rem,12vw,3.6rem)}.section-heading,.experience-grid,.case-body-intro,.collection-note{grid-template-columns:1fr}.section-heading .eyebrow{grid-row:auto}.section-heading{margin-bottom:3rem}.featured-card{grid-column:span 12}.featured-card-01 .featured-link,.featured-card-04 .featured-link{min-height:0;display:flex}.featured-media{min-height:0}.featured-card-02 .featured-copy h3,.featured-card-03 .featured-copy h3{font-size:clamp(2rem,10vw,3.2rem)}.project-card-footer{flex-direction:column;align-items:flex-start}.card-metric{text-align:left}.experience-lead{margin-bottom:2rem}.about-section{grid-template-columns:1fr}.about-portrait{height:clamp(360px,112vw,460px);min-height:0}.site-footer{grid-template-columns:1fr}.site-footer a{justify-self:start}.case-hero,.collection-hero{padding-left:1.2rem;padding-right:1.2rem}.case-hero-copy{padding-top:5rem;display:block}.case-hero-copy h1{font-size:clamp(3.7rem,16vw,6rem)}.case-hero-copy h2{margin-top:2rem}.case-cover{height:115vw;min-height:430px}.case-metrics{grid-template-columns:1fr}.case-metrics div{border-right:0;border-bottom:1px solid var(--line);padding:1.4rem 0}.case-body{padding-left:1.2rem;padding-right:1.2rem}.case-body-intro .eyebrow{margin-bottom:1rem}.case-section,.film-detail-body>article{grid-template-columns:40px 1fr;gap:1rem}.case-section-content,.film-detail-body article>p{grid-column:2}.workflow-case .case-sections{grid-template-columns:1fr}.workflow-case .case-section,.workflow-case .case-section:last-child{grid-column:auto;min-height:260px}.supporting-image{height:92vw;min-height:400px}.case-supporting figcaption{flex-direction:column}.dashboard-headline{display:block}.dashboard-headline>strong{overflow-wrap:anywhere;margin:1.5rem 0 2rem;font-size:clamp(4.25rem,21vw,6rem)}.follower-comparison,.reach-comparison,.engagement-row{grid-template-columns:1fr}.follower-comparison>div,.reach-comparison>div,.engagement-row>div{border-bottom:1px solid #fff3;border-right:0}.follower-comparison b{top:auto;bottom:-1.2rem;right:1rem;transform:rotate(90deg)}.dashboard-methodology{flex-direction:column;gap:.7rem}.performance-dashboard{padding:1.4rem}.module-heading{grid-template-columns:1fr}.module-heading .eyebrow{grid-row:auto}.module-heading h2{font-size:clamp(2.3rem,12vw,4rem)}.improvement-timeline{grid-template-columns:1fr}.improvement-timeline li,.improvement-timeline li:last-child{border-right:0;border-bottom:1px solid var(--ink);grid-column:auto;min-height:0;padding:1.4rem}.improvement-timeline li:last-child{border-bottom:0}.improvement-timeline li:after,.improvement-timeline li:nth-child(2n):after{display:grid;top:auto;bottom:-1.05rem;right:1rem;transform:rotate(90deg)}.improvement-timeline li:last-child:after{display:none}.improvement-timeline li>p,.contribution-grid article>p{margin-top:1.5rem}.improvement-timeline li>div,.contribution-grid article>div{margin-top:1.2rem}.team-contribution{margin-left:-1.2rem;margin-right:-1.2rem;padding:3rem 1.2rem}.contribution-grid{grid-template-columns:1fr}.contribution-grid article,.contribution-grid article:first-child,.contribution-grid article:last-child{border-right:0;border-bottom:1px solid var(--ink);padding:1.6rem 0}.contribution-grid article:last-child{border-bottom:0}.video-section-heading,.external-video-grid{grid-template-columns:1fr}.video-section-heading .eyebrow{grid-row:auto}.next-project{flex-direction:column;align-items:flex-start;gap:1.5rem;padding-left:1.2rem;padding-right:1.2rem}.next-project a{font-size:2rem}.collection-hero h1{font-size:clamp(4rem,18vw,7rem)}.photo-hero h1{font-size:clamp(3.35rem,14.5vw,4.2rem)}.film-grid{grid-template-columns:1fr}.film-image{height:62vw;min-height:300px}.collection-note{gap:1rem;padding-left:1.2rem;padding-right:1.2rem}.film-detail-hero{grid-template-columns:1fr;padding-left:1.2rem;padding-right:1.2rem}.film-detail-copy{padding-right:0}.film-detail-image{min-height:58vw}.film-detail-body,.film-project-nav{padding-left:1.2rem;padding-right:1.2rem}.film-video-link{grid-template-columns:1fr}.photo-gallery{padding-left:1.2rem;padding-right:1.2rem;display:block}.photo-item,.photo-item-2,.photo-item-3{margin:0 0 4rem}.gallery-image{aspect-ratio:3/2;width:100%;height:auto;max-height:none}.photo-portrait .gallery-image{aspect-ratio:2/3;height:auto;max-height:none}}@media (min-width:761px){.hero>*,.projects-section>*,.experience-section>*,.about-section,.resume-section>*{max-width:1280px;margin-left:auto;margin-right:auto}.stats-methodology{margin-left:auto;margin-right:auto}}@supports (animation-timeline:view()){.dashboard-headline>strong,.stats-grid dd{animation:linear both metric-reveal}}@keyframes metric-reveal{0%{opacity:.15;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important}}@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-space-y-reverse{syntax:"<number>";inherits:false;initial-value:0}@property --tw-space-x-reverse{syntax:"<number>";inherits:false;initial-value:0}@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-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}
@font-face{font-family:GeistSans;src:url(../media/Geist_Variable-s.p.35889d8b.woff2)format("woff2");font-display:swap;font-weight:100 900}@font-face{font-family:GeistSans Fallback;src:local(Arial);ascent-override:90.59%;descent-override:21.66%;line-gap-override:9.85%;size-adjust:101.56%}.geistsans_d5a4f12f-module__oi7R6W__className{font-family:GeistSans,GeistSans Fallback}.geistsans_d5a4f12f-module__oi7R6W__variable{--font-geist-sans:"GeistSans","GeistSans Fallback"}
@font-face{font-family:GeistMono;src:url(../media/GeistMono_Variable.p.aabdd940.woff2)format("woff2");font-display:swap;font-weight:100 900}.geistmono_157ca88a-module__osPrOG__className{font-family:GeistMono,ui-monospace,SFMono-Regular,Roboto Mono,Menlo,Monaco,Liberation Mono,DejaVu Sans Mono,Courier New,monospace}.geistmono_157ca88a-module__osPrOG__variable{--font-geist-mono:"GeistMono",ui-monospace,SFMono-Regular,Roboto Mono,Menlo,Monaco,Liberation Mono,DejaVu Sans Mono,Courier New,monospace}
