@font-face{font-family:Manrope Variable;font-style:normal;font-display:block;font-weight:200 800;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope Variable;font-style:normal;font-display:block;font-weight:200 800;src:url(/cv/_astro/manrope-cyrillic-wght-normal.Dvxsihut.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope Variable;font-style:normal;font-display:block;font-weight:200 800;src:url(/cv/_astro/manrope-greek-wght-normal.DL7QRZyv.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:block;font-weight:200 800;src:url(/cv/_astro/manrope-vietnamese-wght-normal.usUDDRr7.woff2)format("woff2-variations");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:Manrope Variable;font-style:normal;font-display:block;font-weight:200 800;src:url(/cv/_astro/manrope-latin-ext-wght-normal.Ch3YOpNY.woff2)format("woff2-variations");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:Manrope Variable;font-style:normal;font-display:block;font-weight:200 800;src:url(/cv/_astro/manrope-latin-wght-normal.DHIcAJRg.woff2)format("woff2-variations");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:JetBrains Mono Variable;font-style:normal;font-display:block;font-weight:100 800;src:url(data:font/woff2;base64,d09GMgABAAAAAAfsABQAAAAAEAwAAAeCAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoP0hWQVJbBmA/U1RBVIFiJyYAdC9qEQgKhGSEAAsgADCGCAE2AiQDOgQgBYlMB4EUDAcbLQ4onoexrSC/2ZyLAa8p8VHB8/x3Vue+V0hVJalMJg2nx/TCrQXxBeqLjQG7FyM1WEa/X1tEXN7cFz9EJEMmMUz3RihWSSKeQCbcIou0izz/C8v+fq3VfajEa9gDD11CImXS7qL/RJFVzC1qiB6KmKeD6TZdQ6IRGv78dL6uSVVCfgni5mzu7kcgQBgAEAQTQRCoL++STTYybkJxNfQxAAIAGu8OdEB9teW2jh4BpgDqFjAeSEByW3zFP0CBBgNMsMCGEDjgggdhiEAUAeIIED7ABTDUEnkIE9Q9ahFgKttcVhApo4ACB4qobHaccgDfEjFO6aaWUhjMLt2SyIvHKoDqoA4CSUwEIYQCEjhAO9R1G6keDeDZGjNo+AhxOjCEGTr1WeIF3kYBiLAOKvkJSMiKX0VdAyQt3SDJClCkxJCHkCzfqyVTriJZLcolS32JZHUekq2TYNkYtCtjYHMQXSxGjXDz2t/yLWXzDzxz+o3zFwDEaN23F+13pyMdQAEaSKAR9vcGq4A4MTSKCElGW+M7UcY7xqkggITb28ZJhlqc9q2twYKTt0NjixBgYvO9BIihEBLYuOFXQzfIQ7dXGUEEEgFDooBfAzqiQbpJrhiWSuKJCRFKYbHCyJKI2G5GiZbNAvgAu5pc3vwx4G+g3aDkhklABiSz0BICXrYghtYhx/cdJ+44rY2oZ0aMNRFz3VZjb6W33F3gzltqtOCV8tTHSpOeXuItfvr5lCdfzFpqtEitvqdcdGGFd28ZqqC0tPbeChGXgrIlnhSWu/eUso4uKWFLugyDzQJhflY4659+WjQ++6x72WUMv9G8mw6QJl7BVxX5fe/kpUsOvnZwee9uQ0cGXYd0o89XB2748sDSnt8d2VphdOTTgceDVvOds0v9P/s7HPq15aGun/6Vllb56f1dl0t1LejqrNkpdRZsG8TOnM5vkBG5oiVyVGnS8LHps5cfNWJs6qKPfaNSxiQNBUm3cKNWROr0GSur7Za31k1vieq7LH11VF+jXdRIasRKflc7jkobm1Z9te1IyZA0pDkhLR98+H37Zf1c/8at+dB7x+7GfVyTfJMPiYztsnl59Y5l4j+0n1RXlpHnF3Tq7HecmNF/CJodEMAikruxiyJaGLvHOdAfoA+oDvpjBm2b91cHGRZMU9n25xEU0A8fgEEAdKI3Q1iDtc034sug5YVMkE2jsE+BIkwSoQ3gxXMqz9tELp48bd0cFKOKS7xYjEuXBnZP5ia7DyiO/X/YI+PQSbt2uSdqAkWL9nQbV1XB94/+uPfdZz8dnXYFBYrcTl2SIR/ybxJNJPz/Gupb0JaZeens2ekC7EKr8t+Ls/P5VJPYJdHKyqfg2nqU6bhlidzcddQV/7MmecTzJ5VPcKXkNKSEogHjYFx6QZ7rQ+FSe8njaiNuOnXS8H2ScQ619c2mC3VTtauL0rRbXd/CkSOP37FY9Zkjz8+GibYUMOEWF+RdrFS8Ecv1SHOpPUPZGEIpjPvFyU5cXKjd6OXqorTqy9GwRd++HVufPGnVsW+aO3vggKZ18jR9sXaTC1PWTEsVUaK0FkNySbTQDqlm2PfDjZcu4aalnSLKjnOoYQ0nUlqqXcGpPu/4VgV/xU2pAqW4BW3qzhQ8/hFKhV2qE3+BKAtDqBXjfgnVdH4y0wg5tbVNRenNdTWOrenWLcupQdmsbq5b+18piTe/xRdp1xbILxNPJGInm2z6hoB21Lal0i+ePTtd7B45+3XhFJ329evskXm7qurUVREotqSluSo/L29d3qDhI4YOQqWhI4YNvBNfsMHeXKemXrxQfKeuPOGRVayA3JtkJKEgbPp+dXUDluddutRYLFoXGXWX6N3WFaGLbQtRSitVYNacTNSdy7AaG/HSaUEANcBoGXNdcZvZsOqQ1icBDv21/gzAoYPHH/WDW0qNR3QTYKEAEHig6o13NXbND06CQPlRtYjGNnSktRc09k1mAMDvAlDKfQjgy6fssInlfzmNAjKkDxoxHOBLdVRAIVt9j4qo+hA1w9T1aNBNTUOTTNUHLbqokE+UAfJXCIGw/IxCSL5GRUJeR40rL/UxTm4Q08H6MbCs70ObuNyIIXrINHQYInF06UUlevTjbQzTh5upiDMzMMogUtEnjPs/Y7jAHCJeB0GBHh04tC6FiB6ZFB1oArUSIoFoqhzCeAN6lHwm0T4C3VVPWvjpSMXReuWesMEcoqrmgtNBGd2noWeV0hNAz9rFeShNJxHGsPa3HXeKTk8b55hahySYHaYKKFFLpCfN8rsoaJn01CR04Gkc+5k7KVTCmClX8Q10HCrUEkVlSX+XO33oQR9609tJ516H497WSobWs5Up6TLaS10/dessIskgJSLiDlWvHVUywpkQ7hdPZqGyiEF0uVQerVcPamT1A3eKXdyI1vG9OoflrSXihZ1qqGE3nhmAgiIbRCQgPLEPtOM3UQwTLYaYYomNlpA44opnjV6jkD6id80OOrzf6BzmMD6eEa1zKyeYG1fzfEf16V6jw9XYOaar1/b2kP/IYX8oR2mcFvv2GtBV3JXgd437AQAA)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:block;font-weight:100 800;src:url(/cv/_astro/jetbrains-mono-cyrillic-wght-normal.D73BlboJ.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:block;font-weight:100 800;src:url(/cv/_astro/jetbrains-mono-greek-wght-normal.Bw9x6K1M.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:block;font-weight:100 800;src:url(/cv/_astro/jetbrains-mono-vietnamese-wght-normal.Bt-aOZkq.woff2)format("woff2-variations");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:JetBrains Mono Variable;font-style:normal;font-display:block;font-weight:100 800;src:url(/cv/_astro/jetbrains-mono-latin-ext-wght-normal.DBQx-q_a.woff2)format("woff2-variations");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:JetBrains Mono Variable;font-style:normal;font-display:block;font-weight:100 800;src:url(/cv/_astro/jetbrains-mono-latin-wght-normal.B9CIFXIH.woff2)format("woff2-variations");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:Bebas Neue;src:url(/cv/_astro/BebasNeue-Bold.D5bfTgnW.woff2)format("woff2");font-weight:400;font-style:normal;font-display:block}:root{font-family:var(--body);color-scheme:dark;--bg:#090909;--text:#e8e8e8;--muted:#888;--accent:#e8ff47;--mint:#a3f7bf;--line:#e8e8e80d;--tag-border:#e5e7eb;--grid:#ffffff06;--surface:#ffffff08;--header:#ffffff08;--button-text:#090909;--body:"Manrope Variable", sans-serif;--display:"Bebas Neue", sans-serif;--scroll-track:#111;--scroll-thumb:#444;--mono:"JetBrains Mono Variable", monospace}:root[data-theme=light]{color-scheme:light;--bg:#fff;--text:#111827;--muted:#6b7280;--accent:#2563eb;--mint:#3b82f6;--line:#0f172a17;--tag-border:#cbd5e1;--grid:#0f172a08;--surface:#0f172a05;--header:#ffffff4d;--button-text:#fff;--scroll-track:#f8fafc;--scroll-thumb:#9ca3af}*{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-gutter:stable;scrollbar-color:var(--scroll-thumb) var(--scroll-track);scrollbar-width:thin;scroll-padding-top:110px}body{background:var(--bg);color:var(--text);margin:0;font-size:16px;line-height:1.5}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:var(--scroll-track)}::-webkit-scrollbar-thumb{background:var(--scroll-thumb);border-radius:2px}@supports selector(::-webkit-scrollbar){html{scrollbar-width:auto;scrollbar-color:auto}}body:after{content:"";z-index:15;pointer-events:none;opacity:.4;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='.04'/%3E%3C/svg%3E");position:fixed;inset:0}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--display);letter-spacing:.05em;text-transform:uppercase;font-weight:400;line-height:1}a{color:inherit;text-decoration:none;transition:color .18s,border-color .18s,background .18s}a:hover{color:var(--accent)}button{font:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:5px}::selection{background:var(--accent);color:var(--bg)}ul{margin:0;padding:0}svg{display:block}.container{width:100%;max-width:1152px;margin-inline:auto;padding-inline:24px}.skip-link{z-index:20;background:var(--accent);color:var(--button-text);padding:10px 20px;position:fixed;top:12px;left:12px;transform:translateY(-200%)}.skip-link:focus{transform:none}.header{top:0;z-index:10;backdrop-filter:blur();background:0 0;border:1px solid #0000;padding-block:24px;transition:background .5s cubic-bezier(.4,0,.2,1),padding .5s cubic-bezier(.4,0,.2,1),border-color .5s cubic-bezier(.4,0,.2,1),backdrop-filter .5s cubic-bezier(.4,0,.2,1);position:fixed;inset-inline:0}.header.scrolled{background:var(--header);border-color:color-mix(in srgb, var(--text) 7%, transparent);backdrop-filter:blur(12px);padding-block:12px}.header-inner,.header-controls,.navigation,.languages{align-items:center;display:flex}.header-inner{gap:20px;min-height:38px;position:relative;transform:translateZ(0)}.brand{font-family:var(--display);letter-spacing:.05em;text-transform:uppercase;color:var(--accent);flex-shrink:0;font-size:24px;line-height:32px;transition:opacity .5s cubic-bezier(.4,0,.2,1)}.brand:hover{opacity:.8}.header.brand-hidden .brand{opacity:0;pointer-events:none}.header.brand-hidden .brand:focus-visible,.menu-open .header .brand{opacity:1;pointer-events:auto}.navigation{letter-spacing:.025em;color:var(--muted);gap:16px;margin-left:auto;font-size:14px}.navigation a:hover{color:var(--text)}.navigation a{white-space:nowrap}.header-controls{flex-shrink:0;gap:16px}.languages{font-family:var(--mono);gap:6px;font-size:11px}.languages span,.languages a:not([aria-current]){color:var(--muted)}.languages [aria-current]{color:var(--accent)}.theme-toggle{width:36px;height:36px;color:var(--muted);background:0 0;border:1px solid #0000;border-radius:50%;place-items:center;padding:0;transition:color .15s,border-color .15s;display:grid}.theme-toggle:hover{color:var(--accent);border-color:color-mix(in srgb, var(--accent) 40%, transparent)}.theme-toggle svg{width:18px;height:18px}.moon,[data-theme=light] .sun{display:none}[data-theme=light] .moon{display:block}.header-download{font-family:var(--mono);letter-spacing:.05em;border:1px solid color-mix(in srgb, var(--accent) 40%, transparent);color:var(--accent);white-space:nowrap;border-radius:4px;padding:8px 16px;font-size:14px;line-height:20px;transition:color .2s,background .2s,border-color .2s}.download-arrow{margin-left:6px}.download-short{display:none}.download-short svg{width:16px;height:20px}.menu-toggle{width:36px;height:36px;color:var(--muted);background:0 0;border:0;padding:7px;transition:color .15s;display:none}.menu-toggle:hover{color:var(--accent)}.menu-toggle svg{width:22px;height:22px}.menu-toggle .menu-close,.menu-toggle[aria-expanded=true] .menu-bars{display:none}.menu-toggle[aria-expanded=true] .menu-close{display:block}.mobile-navigation{display:none}:root.menu-open,.menu-open body{overflow:hidden}.menu-open .header{backdrop-filter:none;background:0 0;border-color:#0000}.hero{isolation:isolate;flex-direction:column;justify-content:center;min-height:100svh;display:flex;position:relative;overflow:hidden}.hero:before{content:"";pointer-events:none;opacity:.03;background-image:linear-gradient(var(--accent) 1px, transparent 1px), linear-gradient(90deg, var(--accent) 1px, transparent 1px);background-size:80px 80px;position:absolute;inset:0}.hero-particles{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.hero-glow{background:color-mix(in srgb, var(--accent) 5%, transparent);filter:blur(120px);pointer-events:none;border-radius:50%;width:600px;height:600px;animation:3s ease-in-out infinite glow-pulse;position:absolute;top:33.333%;left:50%;transform:translate(-50%,-50%)}@keyframes glow-pulse{0%,to{opacity:.4}50%{opacity:.8}}@keyframes pulse{50%{opacity:.5}}.hero-copy{z-index:1;width:fit-content;max-width:1152px;margin-inline:auto;padding:128px 24px 96px;position:relative}.js:not(.hero-ready) .hero-copy>*{opacity:0}.hero-ready .hero-copy>*{animation:.7s ease-out both fade-up}.hero-ready .hero-copy h1{animation-delay:.1s}.hero-ready .hero-role{animation-delay:.2s}.hero-ready .hero-lead{animation-delay:.3s}.hero-ready .hero-stats{animation-delay:.4s}.hero-ready .hero-actions{animation-delay:.5s}@keyframes fade-up{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.status{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--mint);background:color-mix(in srgb, var(--mint) 5%, transparent);border:1px solid color-mix(in srgb, var(--mint) 30%, transparent);border-radius:999px;align-items:center;gap:8px;padding:6px 12px;font-size:12px;line-height:16px;display:inline-flex}.status span{background:currentColor;border-radius:50%;width:6px;height:6px;animation:2s ease-in-out infinite pulse}.hero h1{margin-top:32px;font-size:clamp(4rem,12vw,10rem);line-height:1}.hero h1>span{display:block}.name-accent{background:linear-gradient(135deg, var(--accent), var(--mint));color:#0000;background-clip:text;width:fit-content}.hero-role{font-family:var(--mono);color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px 16px;margin-top:16px;font-size:14px;line-height:20px;display:flex}.hero-technologies{letter-spacing:.1em;text-transform:uppercase}.hero-role-separator{background:color-mix(in srgb, var(--text) 20%, transparent);border-radius:50%;flex-shrink:0;width:4px;height:4px}.hero-location{font-family:var(--body);align-items:center;gap:6px;display:inline-flex}.hero-location svg{flex-shrink:0;width:13px;height:13px}.hero-lead{max-width:576px;color:color-mix(in srgb, var(--text) 60%, transparent);margin-top:32px;font-size:18px;font-weight:300;line-height:29.25px}.hero-stats{flex-wrap:nowrap;gap:32px;margin-top:48px;display:flex}.hero-stats div{flex:0 auto;min-width:min-content}.hero-stats strong{font-family:var(--display);letter-spacing:.05em;color:var(--accent);white-space:nowrap;font-size:36px;font-weight:400;line-height:40px;display:block}.hero-stats span{white-space:pre-line;font-family:var(--mono);letter-spacing:.1em;color:var(--muted);text-transform:uppercase;margin-top:2px;font-size:12px;line-height:16px;display:block}.hero-actions{flex-wrap:wrap;align-items:center;gap:16px;margin-top:48px;display:flex}.button{border:1px solid color-mix(in srgb, var(--text) 10%, transparent);border-radius:4px;justify-content:center;align-items:center;gap:8px;min-height:46px;padding:12px 24px;font-size:14px;font-weight:400;line-height:20px;display:inline-flex}.primary{color:var(--button-text);background:var(--accent);border-color:var(--accent);font-weight:500;transition:background .3s,border-color .3s}.button svg{width:16px;height:16px}.primary:hover{color:var(--button-text);background:var(--mint);border-color:var(--mint)}.primary svg{transition:transform .15s}.primary:hover svg{transform:translateY(2px)}.secondary{color:color-mix(in srgb, var(--text) 70%, transparent);transition:color .3s,border-color .3s}.secondary:hover{color:var(--text);border-color:color-mix(in srgb, var(--text) 30%, transparent)}.header-download:hover{background:var(--accent);color:var(--button-text)}.social-links{color:var(--muted);align-items:center;gap:16px;margin-left:8px;display:flex}.social-links a{place-items:center;width:24px;height:32px;display:grid}.social-links svg{width:20px;height:20px}.scroll-hint{text-align:center;font-family:var(--mono);letter-spacing:.3em;color:var(--muted);justify-items:center;gap:8px;font-size:10px;display:grid;position:absolute;bottom:32px;left:50%;transform:translate(-50%)}.scroll-line{background:linear-gradient(to bottom, transparent, color-mix(in srgb, var(--accent) 40%, transparent));width:1px;height:48px}.section{padding-block:128px;position:relative}#experience:before,#skills:before,#writing:before,#contact:before{content:"";top:0;background:linear-gradient(90deg, transparent, var(--line), transparent);height:1px;position:absolute;inset-inline:0}.section-heading{margin-bottom:64px}.eyebrow{font-family:var(--mono);letter-spacing:.3em;text-transform:uppercase;color:var(--accent);font-size:12px;line-height:16px}.section h2{margin-top:12px;font-size:clamp(3rem,10vw,7rem);line-height:1}.section h2>span{background:linear-gradient(135deg, var(--accent), var(--mint));color:#0000;background-clip:text;width:fit-content;display:block}.section-lead{max-width:610px;color:var(--muted);margin-top:24px}.card-stack{gap:24px;display:grid}.tint-0{--card-accent:var(--accent);background:color-mix(in srgb, var(--accent) 6%, var(--bg))}.tint-1{--card-accent:var(--mint);background:color-mix(in srgb, var(--mint) 6%, var(--bg))}.tint-2{--card-accent:#c4b5fd;background:color-mix(in srgb, #a78bfa 6%, var(--bg))}.tint-3{--card-accent:#ff7262;background:color-mix(in srgb, #ff7262 6%, var(--bg))}.tint-4{--card-accent:var(--text);background:color-mix(in srgb, var(--text) 6%, var(--bg))}[data-theme=light] .tint-2{--card-accent:#7c3aed}[data-theme=light] .tint-3{--card-accent:#b9382a}.story-card{border:1px solid var(--line);border-radius:16px;padding:48px;scroll-margin-top:16px;transition:border-color .5s;position:relative}.story-card:hover{border-color:color-mix(in srgb, var(--card-accent) 25%, transparent)}.card-number{font-family:var(--display);color:var(--text);opacity:.05;pointer-events:none;font-size:72px;line-height:1;position:absolute;top:24px;right:24px}.card-meta{font-family:var(--mono);color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px 12px;padding-right:40px;font-size:12px;line-height:18px;display:flex}.project-state{color:var(--card-accent);border:1px solid color-mix(in srgb, var(--card-accent) 20%, transparent);border-radius:999px;padding:4px 9px}.company-pill{border:1px solid color-mix(in srgb, var(--card-accent) 20%, transparent);border-radius:4px;flex-wrap:wrap;align-items:center;gap:6px;padding:4px 8px;display:inline-flex}a.company-pill:hover{color:var(--card-accent);border-color:var(--card-accent)}.story-heading h3{max-width:1000px;color:var(--card-accent);overflow-wrap:anywhere;margin:20px 0 0;font-size:60px;line-height:1.08}.story-body{grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:start;gap:0 40px;margin-top:28px;display:grid}.story-body:not(:has(.story-highlights)){grid-template-columns:minmax(0,1fr)}.story-copy{display:contents}.story-prose.prose{min-width:0;max-width:none;color:color-mix(in srgb, var(--text) 70%, transparent);grid-area:1/1;margin-top:0;font-size:16px;line-height:1.75}.story-prose .story-part+.story-part{margin-top:24px}.story-part>div+div{margin-top:16px}.story-prose :is(ul,ol){margin:0;padding-left:1.25em}.story-prose li+li{margin-top:16px}.story-prose li::marker{color:var(--card-accent)}.story-part h4{color:var(--text);margin:0 0 10px;font-size:16px;font-weight:600;line-height:1.5}.story-comment{border-left:2px solid var(--card-accent);color:var(--text);grid-column:1/-1;margin-top:28px;padding-left:20px;font-size:16px;line-height:1.75}.story-prose .story-comment{margin:0 0 24px}.story-highlights{grid-area:1/2;gap:12px;margin:0;list-style:none;display:grid}.story-highlights li{font-family:var(--mono);color:color-mix(in srgb, var(--text) 80%, transparent);border:1px solid var(--line);border-radius:12px;align-items:center;gap:12px;padding:12px;font-size:14px;line-height:20px;display:flex}.story-highlights svg{width:14px;height:14px;color:var(--card-accent);flex-shrink:0}.story-highlights strong{color:var(--card-accent);font-weight:500}.story-highlights .highlight-primary strong{font-size:16px}.story-compact{padding:32px}.story-compact .story-heading h3{font-size:42px}.story-compact .story-body{column-gap:32px;margin-top:20px}.story-compact .story-prose{font-size:15px;line-height:1.7}.tags{flex-wrap:wrap;gap:8px;margin-top:32px;list-style:none;display:flex}.story-copy>.tags{grid-column:1/-1}.tags li{font-family:var(--mono);border:1px solid var(--tag-border);color:color-mix(in srgb, var(--text) 50%, transparent);border-radius:4px;padding:4px 12px;font-size:12px;line-height:16px}.case-links{flex-wrap:wrap;gap:8px;margin-top:20px;list-style:none;display:flex}.case-link{font-family:var(--mono);border:1px solid color-mix(in srgb, var(--card-accent,var(--accent)) 20%, transparent);color:var(--card-accent,var(--accent));border-radius:4px;align-items:baseline;gap:8px;padding:6px 12px;font-size:12px;line-height:18px;display:inline-flex}.case-link:hover,.case-link:focus-visible{color:var(--card-accent,var(--accent));border-color:var(--card-accent,var(--accent));background:color-mix(in srgb, var(--card-accent,var(--accent)) 12%, transparent)}.text-link{color:color-mix(in srgb, var(--text) 60%, transparent);align-items:center;gap:8px;font-size:14px;line-height:20px;transition:color .15s;display:inline-flex}.text-link:hover{color:var(--text)}.text-link span{transition:transform .15s}.text-link:hover span{transform:translate(2px,-2px)}.card-footer{border-top:1px solid var(--line);flex-wrap:wrap;gap:16px 28px;margin-top:32px;padding-top:24px;display:flex}.story-card:target{animation:1.8s ease-out story-target}@keyframes story-target{0%,35%{border-color:var(--card-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--card-accent) 15%, transparent)}to{border-color:var(--line);box-shadow:0 0 0 3px #0000}}.timeline{position:relative}.timeline:before{content:"";background:linear-gradient(to bottom, color-mix(in srgb, var(--accent) 20%, transparent), color-mix(in srgb, var(--accent) 5%, transparent), transparent);width:1px;position:absolute;inset:0 auto 0 0}.experience-entry{--entry-accent:var(--accent);border-bottom:1px solid var(--line);gap:40px;padding:40px 0 40px 48px;scroll-margin-top:16px;display:flex;position:relative}.experience-entry:nth-child(4n+2){--entry-accent:#635bff}.experience-entry:nth-child(4n+3){--entry-accent:var(--mint)}.experience-entry:nth-child(4n+4){--entry-accent:var(--text)}.experience-entry:before{content:"";background:var(--entry-accent);border-radius:50%;width:8px;height:8px;position:absolute;top:40px;left:-4px}.experience-meta{flex:0 0 240px}.company-mark{width:48px;height:48px;font-family:var(--display);letter-spacing:.05em;color:var(--entry-accent);background:color-mix(in srgb, var(--entry-accent) 8%, transparent);border:1px solid color-mix(in srgb, var(--entry-accent) 20%, transparent);border-radius:12px;place-items:center;font-size:20px;display:grid}.experience-period{font-family:var(--mono);white-space:nowrap;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-top:8px;font-size:12px;line-height:16px}.experience-content{flex:1;min-width:0}.experience-heading{flex-wrap:wrap;align-items:baseline;gap:12px;display:flex}.experience-content h3{font-size:36px;line-height:40px}.company a{transition:none}.company{background:linear-gradient(135deg, var(--accent), var(--mint));background-clip:text}.experience-entry:hover .company{color:#0000}.experience-entry:hover .company a{color:inherit}.experience-entry:before{transition:transform .3s}.experience-entry:hover:before{transform:scale(1.5)}.experience-entry:target:before{box-shadow:0 0 0 5px color-mix(in srgb, var(--entry-accent) 15%, transparent);transform:scale(1.8)}.experience-entry:target .company-mark{border-color:var(--entry-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--entry-accent) 10%, transparent)}.experience-role{font-family:var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--muted);font-size:12px;line-height:16px}.experience-location{color:var(--muted);margin-top:8px;font-size:12px}.prose{max-width:672px;color:color-mix(in srgb, var(--text) 60%, transparent);margin-top:16px;font-size:14px;line-height:22.75px}.prose p+p{margin-top:12px}.prose strong{color:var(--text);font-weight:600}.prose a{color:var(--accent);text-underline-offset:4px;text-decoration:underline}.experience-content>.tags{margin-top:20px}.resume-strip{background:var(--surface);border:1px solid var(--line);border-radius:12px;justify-content:space-between;align-items:center;gap:32px;margin-top:48px;padding:32px;display:flex}.resume-strip h3{font-size:28px}.resume-strip p{color:var(--muted);margin-top:8px;font-size:13px}.resume-strip .button{flex-shrink:0}.skill-marquee{border-block:1px solid var(--line);font-family:var(--display);letter-spacing:.1em;text-transform:uppercase;color:color-mix(in srgb, var(--text) 10%, transparent);margin-bottom:96px;padding-block:16px;font-size:24px;line-height:32px;overflow:hidden;mask-image:linear-gradient(90deg,#0000,#000 10% 90%,#0000)}.marquee-track{width:max-content;animation:marquee var(--marquee-duration) linear infinite;display:flex}.marquee-sequence{flex-shrink:0;gap:48px;padding-right:48px;display:flex}.skill-marquee span{white-space:nowrap;cursor:default;transition:color .15s}.skill-marquee span:hover{color:var(--accent)}@keyframes marquee{to{transform:translateX(var(--marquee-offset))}}#skills h2{font-size:clamp(3rem,10vw,8rem)}.skills-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}.skill-group,.philosophy-card{border:1px solid var(--line);border-radius:16px;min-width:0;padding:24px}.skill-group{transition:border-color .3s,background .3s}.skill-group:hover{border-color:color-mix(in srgb, var(--accent) 20%, transparent)}.tags li,.skill-list li{cursor:default}.skill-group h3,.philosophy-card h3{font-family:var(--mono);letter-spacing:.1em;color:var(--accent);align-items:center;gap:12px;margin-bottom:20px;font-size:12px;line-height:16px;display:flex}.skill-group h3:before{content:"";background:var(--accent);opacity:.6;border-radius:2px;flex-shrink:0;width:4px;height:20px;transition:opacity .15s}.skill-group:hover h3:before{opacity:1}.skill-list{flex-wrap:wrap;gap:8px;list-style:none;display:flex}.skill-list li{max-width:100%;color:color-mix(in srgb, var(--text) 70%, transparent);border:1px solid color-mix(in srgb, var(--text) 6%, transparent);border-radius:8px;padding:6px 12px;font-size:14px;line-height:20px;transition:color .2s,border-color .2s}.skill-list li:hover{color:var(--text);border-color:color-mix(in srgb, var(--text) 15%, transparent)}.philosophy-card{border-color:color-mix(in srgb, var(--accent) 20%, transparent);background:color-mix(in srgb, var(--accent) 5%, transparent);flex-direction:column;display:flex}.philosophy-card>p:not(.philosophy-slogan){color:color-mix(in srgb, var(--text) 60%, transparent);font-size:14px;line-height:22.75px}.philosophy-slogan{font-family:var(--display);letter-spacing:.05em;text-transform:uppercase;color:color-mix(in srgb, var(--accent) 20%, transparent);margin-top:auto;padding-top:24px;font-size:48px;line-height:1}.writing-entry{border-bottom:1px solid var(--line);grid-template-columns:48px minmax(0,1fr) 32px;align-items:center;gap:24px;padding-block:32px;display:grid}.writing-entry:first-child{border-top:1px solid var(--line)}.writing-index{font-family:var(--mono);color:var(--accent);align-self:start;font-size:12px;line-height:16.5px}.writing-icon{width:20px;height:20px;color:var(--muted);position:absolute;top:.45em;left:-28px;transform:translateY(-50%)}.writing-meta{font-family:var(--mono);color:var(--muted);margin-bottom:12px;font-size:11px}.writing-entry h3{font-size:28px;line-height:1.2;position:relative}.writing-entry h3 a{color:inherit;transition:none}.writing-title{background:linear-gradient(135deg, var(--accent), var(--mint));background-clip:text}.writing-gradient-start{stop-color:var(--accent)}.writing-gradient-end{stop-color:var(--mint)}.writing-entry:is(:hover,:has(a:focus-visible)) .writing-title{color:#0000}.writing-entry:is(:hover,:has(a:focus-visible)) .writing-icon{stroke:var(--writing-icon-gradient)}.writing-note{max-width:100%;font-family:var(--mono);letter-spacing:0;text-transform:none;color:var(--muted);font-size:11px;font-weight:400;line-height:1.5;display:inline-block;position:relative;top:-.75em}.writing-kind{color:var(--accent);font-size:28px}.education{border-block:1px solid var(--line);grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:48px;padding-block:32px;display:grid}.education-institution h3{max-width:680px;color:var(--text);background:linear-gradient(135deg, var(--accent), var(--mint));background-clip:text;font-size:32px;line-height:1.2}.education:hover .education-institution h3{color:#0000}.education-institution p{color:var(--muted);margin-top:12px}.education-institution .education-location{font-family:var(--mono);font-size:12px}.education-degrees{flex-direction:column;justify-content:center;gap:20px;list-style:none;display:flex}.education-degrees li{font-family:var(--mono);color:var(--muted);flex-wrap:wrap;align-items:baseline;gap:12px;display:flex}.education-degrees strong{font-family:var(--display);letter-spacing:.05em;color:var(--accent);font-size:28px;font-weight:400}#contact h2{font-size:clamp(3rem,10vw,9rem)}.contact-lead{max-width:512px;color:color-mix(in srgb, var(--text) 50%, transparent);margin-top:24px;line-height:26px}.contact-links{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:64px;display:grid}.contact-links a{border:1px solid var(--line);min-width:0;color:var(--muted);border-radius:16px;align-items:center;gap:12px;padding:20px;transition:background .3s,border-color .3s;display:flex}.contact-icon{border:1px solid color-mix(in srgb, var(--text) 10%, transparent);border-radius:12px;flex-shrink:0;place-items:center;width:40px;height:40px;transition:color .15s,border-color .15s;display:grid}.contact-icon svg,.contact-arrow{flex-shrink:0;width:16px;height:16px}.contact-label{min-width:0;font-family:var(--mono);letter-spacing:.1em;font-size:12px;line-height:16px}.contact-links strong{font-family:var(--body);letter-spacing:0;color:color-mix(in srgb, var(--text) 70%, transparent);overflow-wrap:anywhere;margin-top:2px;font-size:14px;font-weight:400;line-height:20px;transition:color .15s;display:block}.contact-arrow{margin-left:auto;transition:color .15s,transform .15s}.contact-links a:hover{border-color:color-mix(in srgb, var(--accent) 30%, transparent);background:color-mix(in srgb, var(--accent) 5%, transparent);color:var(--muted)}.contact-links a:hover .contact-icon{color:var(--accent);border-color:color-mix(in srgb, var(--accent) 40%, transparent)}.contact-links a:hover strong{color:var(--text)}.contact-links a:hover .contact-arrow{color:var(--accent);transform:translate(2px,-2px)}.availability-strip{color:var(--mint);background:color-mix(in srgb, var(--mint) 5%, transparent);border:1px solid color-mix(in srgb, var(--mint) 20%, transparent);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:64px;padding:20px 24px;font-size:14px;display:flex}.availability-strip p{align-items:center;gap:12px;display:flex}.availability-strip p span{background:currentColor;border-radius:50%;width:8px;height:8px;animation:2s ease-in-out infinite pulse}.availability-strip a{font-family:var(--mono);color:color-mix(in srgb, var(--mint) 60%, transparent);font-size:12px;transition:color .15s}.availability-strip a:hover{color:var(--mint)}.contact-section{padding-bottom:64px}.footer{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;padding-block:32px;display:flex}.footer-name{font-family:var(--display);letter-spacing:.05em;text-transform:uppercase;color:color-mix(in srgb, var(--text) 20%, transparent);font-size:24px;line-height:32px}.footer-socials,.copyright{font-family:var(--mono);color:color-mix(in srgb, var(--text) 20%, transparent);flex-wrap:wrap;gap:24px;font-size:12px;display:flex}.footer-socials svg{width:16px;height:16px}.footer-socials a{color:var(--muted)}.footer-socials a:hover{color:var(--accent)}@media (width<=1279px){.menu-toggle{display:block}.mobile-navigation{z-index:9;overscroll-behavior:contain;background:color-mix(in srgb, var(--bg) 90%, transparent);backdrop-filter:blur(12px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .3s,visibility .3s;display:block;position:fixed;inset:0;overflow-y:auto}.menu-open .mobile-navigation{opacity:1;visibility:visible;pointer-events:auto}.mobile-navigation-links{flex-direction:column;justify-content:center;align-items:center;gap:24px;min-height:100dvh;padding:96px 24px;transition:transform .3s;display:flex;transform:translateY(-16px)}.menu-open .mobile-navigation-links{transform:translateY(0)}.mobile-navigation-links>a:not(.menu-download){font-family:var(--display);letter-spacing:.1em;text-align:center;text-transform:uppercase;color:color-mix(in srgb, var(--text) 80%, transparent);font-size:36px;line-height:40px;transition:color .15s}.mobile-navigation-links>a:not(.menu-download):hover{color:var(--accent)}.menu-open .header .header-download{display:none}.mobile-navigation .menu-download{margin-top:16px;padding:12px 24px;font-size:14px;display:inline-block}.navigation{display:none}.header-controls{margin-left:auto}}@media (width<=1023px){.story-body{grid-template-columns:minmax(0,1fr);row-gap:28px}.story-copy{min-width:0;display:block}.story-highlights{grid-area:auto}.skills-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=767px){.story-card{padding:24px}.card-number{font-size:48px;top:16px;right:16px}.story-heading h3{font-size:42px}.story-compact .story-heading h3{font-size:34px}.timeline:before,.experience-entry:before{display:none}.experience-entry{flex-direction:column;gap:24px;padding-left:0}.experience-meta{flex:none}.experience-content h3{font-size:30px;line-height:36px}.contact-links{grid-template-columns:minmax(0,1fr)}.education{grid-template-columns:minmax(0,1fr);gap:28px}}@media (width<=639px){.header-inner{gap:12px}.brand{font-size:20px;line-height:28px}.header-controls{gap:8px}.header-download{padding:8px 10px;font-size:11px}.download-label,.download-arrow{display:none}.download-short{display:inline}.theme-toggle,.menu-toggle{width:30px;height:30px}.menu-toggle{padding:4px}.menu-toggle svg{width:22px;height:22px}.languages{font-size:10px}.hero-role{gap:8px 12px}.hero-stats{gap:clamp(12px,3vw,24px)}.hero-stats div{flex:1 1 0}.hero-actions{gap:12px}.social-links{margin-left:0}.venture-card h3{font-size:36px}.work-card h3{font-size:30px}.experience-content h3{font-size:24px;line-height:32px}.resume-strip{flex-direction:column;align-items:flex-start;gap:24px;padding:24px}.skills-grid{grid-template-columns:minmax(0,1fr)}.writing-entry{grid-template-columns:24px minmax(0,1fr) 20px;gap:12px;padding-block:24px}.writing-entry h3{font-size:23px;line-height:1.3}.writing-icon{width:14px;height:14px;top:.5em;left:-18px}}@media (width<=1279px) and (height<=800px){.mobile-navigation-links{gap:18px;padding-block:96px 32px}.mobile-navigation-links>a:not(.menu-download){font-size:30px;line-height:34px}}@media (width<=359px){.brand{font-size:16px}.header-inner,.header-controls{gap:4px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.story-card:target{border-color:var(--card-accent)}*,:before,:after{transition:none!important;animation:none!important}}.services-grid[data-astro-cid-d4346quh]{grid-template-columns:minmax(0,1fr);gap:16px;display:grid}.service-card[data-astro-cid-d4346quh]{border:1px solid var(--line);background:color-mix(in srgb, var(--text) 2%, transparent);border-radius:16px;min-width:0;padding:24px;transition:border-color .3s,background .3s}.service-top[data-astro-cid-d4346quh]{justify-content:space-between;align-items:center;display:flex}.service-icon[data-astro-cid-d4346quh]{width:40px;height:40px;color:var(--muted);border:1px solid color-mix(in srgb, var(--text) 10%, transparent);border-radius:12px;place-items:center;transition:color .3s,border-color .3s,background .3s;display:grid}.service-icon[data-astro-cid-d4346quh] svg[data-astro-cid-d4346quh]{width:22px;height:22px}.service-number[data-astro-cid-d4346quh]{font-family:var(--mono);color:color-mix(in srgb, var(--text) 20%, transparent);font-size:12px;transition:color .3s}.service-card[data-astro-cid-d4346quh] h3[data-astro-cid-d4346quh]{font-family:var(--body);letter-spacing:0;text-transform:none;margin-top:20px;font-size:16px;font-weight:600;line-height:1.5}.service-card[data-astro-cid-d4346quh] p[data-astro-cid-d4346quh]{color:var(--muted);margin-top:12px;font-size:14px;line-height:1.7}.service-card[data-astro-cid-d4346quh]:hover{border-color:color-mix(in srgb, var(--accent) 25%, transparent);background:color-mix(in srgb, var(--accent) 4%, transparent)}.service-card[data-astro-cid-d4346quh]:hover .service-icon[data-astro-cid-d4346quh]{color:var(--accent);border-color:color-mix(in srgb, var(--accent) 40%, transparent);background:color-mix(in srgb, var(--accent) 5%, transparent)}.service-card[data-astro-cid-d4346quh]:hover .service-number[data-astro-cid-d4346quh]{color:color-mix(in srgb, var(--accent) 60%, transparent)}@media (width>=640px){.services-grid[data-astro-cid-d4346quh]{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1024px){.services-grid[data-astro-cid-d4346quh]{grid-template-columns:repeat(3,minmax(0,1fr))}}
