@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-sans-latin-400-normal-CW0RaeGs.woff2) format("woff2"),url(/assets/dm-sans-latin-400-normal-BwCSEQnW.woff) format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/dm-sans-latin-600-normal-Aqo67rzb.woff2) format("woff2"),url(/assets/dm-sans-latin-600-normal-BmdmIIQ2.woff) format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/dm-sans-latin-700-normal-DvUfVpUG.woff2) format("woff2"),url(/assets/dm-sans-latin-700-normal-CUSSCpQX.woff) format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/dm-sans-latin-800-normal-C2H8778U.woff2) format("woff2"),url(/assets/dm-sans-latin-800-normal-BwbkPQqB.woff) format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-latin-500-normal-BWZEU5yA.woff2) format("woff2"),url(/assets/jetbrains-mono-latin-500-normal-CJOVTJB7.woff) format("woff")}:root{color-scheme:light dark;--paper: #faf7f2;--surface: #ffffff;--surface-raised: #f1ece4;--line: #e6e1d8;--line-strong: #8a8083;--ink: #231f20;--ink-muted: #6b6264;--ink-soft: #4a4345;--amber: #e8a020;--on-amber: #231f20;--amber-text: #8f5a00;--success: #2b7a24;--warning: #a63d00;--danger: #b3261e;--focus-ring: #231f20;--focus-ring-width: 2px;--radius-chip: 6px;--radius-control: 14px;--radius-card: 16px;--radius-sheet: 20px;--tap-min: 44px;--content-max: 1120px;--gutter: 16px;--font-sans: "DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SFMono-Regular", Menlo, monospace}@media (min-width: 960px){:root{--gutter: 32px}}@media (prefers-color-scheme: dark){:root{--paper: #161314;--surface: #211d1e;--surface-raised: #2a2526;--line: #3a3436;--line-strong: #8f8588;--ink: #f3eeea;--ink-muted: #a39a9c;--ink-soft: #d6cfcb;--amber-text: #f2b850;--success: #7fd975;--warning: #ff9f6b;--danger: #ff8a7a;--focus-ring: #f3eeea}}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}@media (prefers-reduced-motion: no-preference){html{scroll-behavior:smooth}}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-sans);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,p{margin:0}img{display:block}:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring);outline-offset:2px}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.container{width:100%;max-width:calc(var(--content-max) + 2 * var(--gutter));margin-inline:auto;padding-inline:var(--gutter)}.site-header{border-bottom:1px solid var(--line)}.site-header__inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;column-gap:24px;min-height:64px}.wordmark{display:inline-flex;align-items:center;min-height:var(--tap-min);color:var(--ink);font-size:20px;font-weight:800;letter-spacing:-.04em;text-decoration:none}.site-nav ul{display:flex;gap:4px;margin:0;padding:0;list-style:none}.site-nav a{display:inline-flex;align-items:center;min-height:var(--tap-min);padding-inline:12px;border-radius:var(--radius-control);color:var(--ink-soft);font-size:15px;font-weight:600;text-decoration:none}.site-nav a:hover{background:var(--surface-raised);color:var(--ink)}@media (max-width: 599px){.site-header__inner{padding-block:8px 6px}.site-nav{flex-basis:100%}.site-nav ul{margin-inline-start:-12px}}.section{padding-block:48px;scroll-margin-top:8px}.eyebrow{color:var(--amber-text);font-size:13px;font-weight:700;letter-spacing:.08em;line-height:1.4}.intro{padding-block:72px 56px}.intro__title{max-width:15em;margin-top:16px;font-size:48px;font-weight:800;letter-spacing:-.035em;line-height:1.08}.intro__text{max-width:62ch;margin-top:20px;color:var(--ink-soft);font-size:18px;line-height:1.6}.chips{display:flex;flex-wrap:wrap;gap:8px;margin:28px 0 0;padding:0;list-style:none}.chip{display:inline-flex;align-items:center;height:32px;padding-inline:12px;border:1px solid var(--line);border-radius:var(--radius-chip);background:var(--surface);color:var(--ink-soft);font-size:14px;font-weight:600;white-space:nowrap}@media (max-width: 599px){.intro{padding-block:40px 32px}.intro__title{font-size:34px}.intro__text{font-size:17px}}.section-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;column-gap:16px;margin-bottom:12px}.text-link{display:inline-flex;align-items:center;min-height:var(--tap-min);color:var(--amber-text);font-size:15px;font-weight:600;text-decoration:none}.text-link:hover{text-decoration:underline;text-underline-offset:3px}.project-list{margin:0;padding:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface);list-style:none}.project-list li+li{border-top:1px solid var(--line)}.project{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;column-gap:16px;min-height:76px;padding:16px 20px;color:var(--ink);text-decoration:none}.project:hover{background:var(--surface-raised)}.project:focus-visible{outline-offset:-2px;border-radius:var(--radius-card)}.project__icon{width:44px;height:44px}.project__icon--own{border-radius:10px}.project__text{min-width:0}.project__name{display:block;font-size:17px;font-weight:700;letter-spacing:-.01em;line-height:1.3}.project__description{display:block;overflow:hidden;color:var(--ink-muted);font-size:15px;line-height:1.45;text-overflow:ellipsis;white-space:nowrap}.project__platform{color:var(--ink-muted);font-family:var(--font-mono);font-size:12px;font-weight:500;letter-spacing:.06em}@media (max-width: 599px){.project{grid-template-columns:44px minmax(0,1fr);align-items:start;column-gap:14px;padding:14px 16px}.project__description{white-space:normal}.project__platform{grid-column:2;margin-top:4px}}.contact{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 32px;padding:24px 28px;border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface)}.contact__lead{font-size:22px;font-weight:700;letter-spacing:-.015em;line-height:1.3}.contact__actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px}.contact__email{color:var(--ink);font-family:var(--font-mono);font-size:16px;font-weight:500;user-select:all;-webkit-user-select:all}.button-amber{display:inline-flex;align-items:center;justify-content:center;min-width:112px;min-height:var(--tap-min);padding-inline:20px;border:0;border-radius:var(--radius-control);background:var(--amber);color:var(--on-amber);font:inherit;font-size:15px;font-weight:700;cursor:pointer}.button-amber:hover{background:color-mix(in srgb,var(--amber) 88%,var(--on-amber))}.button-amber:active{transform:translateY(1px)}@media (max-width: 599px){.contact{padding:20px}.contact__lead{font-size:20px}}.site-footer{margin-top:32px;border-top:1px solid var(--line);color:var(--ink-muted);font-size:14px}.site-footer__inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 24px;padding-block:16px}.site-footer__brand{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px}.site-footer__mark{width:auto;height:22px}.site-footer__links{display:flex;flex-wrap:wrap;align-items:center;gap:0 20px;margin:0;padding:0;list-style:none}.site-footer a{display:inline-flex;align-items:center;min-height:var(--tap-min);color:var(--ink-soft);text-decoration:none}.site-footer__brand a{text-decoration:underline;text-decoration-color:var(--line-strong);text-underline-offset:3px}.site-footer a:hover{color:var(--ink);text-decoration:underline;text-underline-offset:3px}.notice{padding-block:72px}.notice__title{margin-top:12px;font-size:34px;font-weight:800;letter-spacing:-.035em;line-height:1.1}.notice__text{margin-top:12px;color:var(--ink-soft);font-size:17px}
