:root{color-scheme:dark;--theme: dark;--bg: #0f1413;--surface: #151b1a;--surface-2: #101615;--ink: #e4e8e6;--ink-soft: #93a09c;--ink-faint: #65726e;--accent: #e0ac4a;--accent-vivid: #e0ac4a;--accent-ink: #0f1413;--accent-btn: #e0ac4a;--accent-btn-ink: #0f1413;--hairline: rgba(228, 232, 230, .13);--hairline-strong: rgba(228, 232, 230, .24);--node-border: #93a09c;--shadow: 0 18px 70px rgba(0, 0, 0, .14);--show-moon: none;--show-sun: inline}@media(prefers-color-scheme:light){:root:not([data-theme=dark]){color-scheme:light;--theme: light;--bg: #e6eae5;--surface: #f2f4f0;--surface-2: #dce1da;--ink: #171e1b;--ink-soft: #47544d;--ink-faint: #6e7b74;--accent: #966a00;--accent-vivid: #e0ac4a;--accent-ink: #ffffff;--accent-btn: #151b1a;--accent-btn-ink: #e4e8e6;--hairline: rgba(23, 30, 27, .16);--hairline-strong: rgba(23, 30, 27, .34);--node-border: #47544d;--shadow: 0 14px 44px rgba(23, 30, 27, .1);--show-moon: inline;--show-sun: none}}:root[data-theme=dark]{color-scheme:dark;--theme: dark;--bg: #0f1413;--surface: #151b1a;--surface-2: #101615;--ink: #e4e8e6;--ink-soft: #93a09c;--ink-faint: #65726e;--accent: #e0ac4a;--accent-vivid: #e0ac4a;--accent-ink: #0f1413;--accent-btn: #e0ac4a;--accent-btn-ink: #0f1413;--hairline: rgba(228, 232, 230, .13);--hairline-strong: rgba(228, 232, 230, .24);--node-border: #93a09c;--shadow: 0 18px 70px rgba(0, 0, 0, .14);--show-moon: none;--show-sun: inline}:root[data-theme=light]{color-scheme:light;--theme: light;--bg: #e6eae5;--surface: #f2f4f0;--surface-2: #dce1da;--ink: #171e1b;--ink-soft: #47544d;--ink-faint: #6e7b74;--accent: #966a00;--accent-vivid: #e0ac4a;--accent-ink: #ffffff;--accent-btn: #151b1a;--accent-btn-ink: #e4e8e6;--hairline: rgba(23, 30, 27, .16);--hairline-strong: rgba(23, 30, 27, .34);--node-border: #47544d;--shadow: 0 14px 44px rgba(23, 30, 27, .1);--show-moon: inline;--show-sun: none}*{box-sizing:border-box;margin:0;padding:0}html{min-height:100%;scroll-behavior:smooth}body{min-height:100vh;overflow-x:clip;background:var(--bg);color:var(--ink);font-family:IBM Plex Sans,system-ui,sans-serif;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:inherit}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}:focus-visible{outline:2px solid var(--accent-vivid);outline-offset:3px}.site-nav{position:sticky;top:0;z-index:20;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px;padding:20px 56px;border-bottom:1px solid var(--hairline);background:var(--bg)}.wordmark{display:inline-flex;align-items:center;gap:9px;flex:none;color:var(--ink);font-family:IBM Plex Mono,monospace;font-size:15.5px;font-weight:500;letter-spacing:-.02em;text-decoration:none}.brand-mark{display:block;flex:none}.wordmark .dot,.cursor{color:var(--accent)}.cursor{animation:blink 1.15s steps(2,start) infinite}.nav-right,.nav-links,.lang-switch{display:flex;align-items:center}.nav-right{gap:18px;margin-left:auto}.nav-links{gap:28px}.nav-links a,.compact-menu a,.lang-switch a{color:var(--ink-soft);font-size:14px;font-weight:500;text-decoration:none}.nav-links a:hover,.compact-menu a:hover,.lang-switch a:hover,.nav-links a[aria-current=page]{color:var(--ink)}.lang-switch{gap:6px;color:var(--ink-soft);font-family:IBM Plex Mono,monospace;font-size:11px;letter-spacing:.08em;white-space:nowrap}.lang-switch a{font-family:inherit;font-size:inherit}.lang-switch .is-active{color:var(--accent)}.theme-toggle,.nav-burger{flex:none;align-items:center;justify-content:center;border:1px solid var(--hairline);background:none;color:var(--ink-soft);cursor:pointer}.theme-toggle{display:inline-flex;width:34px;height:34px;border-radius:50%}.theme-toggle:hover,.nav-burger:hover{border-color:var(--hairline-strong);color:var(--ink)}.theme-toggle .moon{display:var(--show-moon)}.theme-toggle .sun{display:var(--show-sun)}.nav-cta,.btn-solid,.btn-outline{display:inline-flex;align-items:center;justify-content:center;border-radius:4px;font-weight:600;text-decoration:none}.nav-cta{flex:none;padding:9px 18px;background:var(--accent-btn);color:var(--accent-btn-ink);font-size:14px}.btn-solid,.btn-outline{padding:14px 26px;font-size:15px}.cta-group{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.cta-alt{display:inline-flex;align-items:center;align-self:center;gap:9px;flex-wrap:wrap;color:var(--ink-soft);font-size:14px}.cta-alt .im-mail a{display:inline-flex;align-items:center;padding:9px 14px;border:1px solid var(--hairline-strong);border-radius:4px;color:var(--ink);font-family:IBM Plex Mono,monospace;font-size:13px;text-decoration:none;white-space:nowrap;transition:border-color .2s ease,background-color .2s ease}.cta-alt .im-mail a:hover{border-color:var(--accent);background-color:color-mix(in srgb,var(--accent) 8%,transparent)}.cta-alt .im-mail a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn-solid{background:var(--accent-btn);color:var(--accent-btn-ink)}.btn-outline{border:1px solid var(--hairline-strong);color:var(--ink)}.nav-burger{display:none;width:38px;height:34px;border-radius:4px}.compact-menu{display:none;width:100%;flex-direction:column}.compact-menu a{padding:13px 2px;border-top:1px solid var(--hairline);font-size:15px}.menu-controls{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 2px;border-top:1px solid var(--hairline)}.menu-controls .theme-toggle{margin-left:auto}.site-footer{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;padding:16px 56px;border-top:1px solid var(--hairline);color:var(--ink-soft);font-family:IBM Plex Mono,monospace;font-size:12px}.footer-side{display:flex;align-items:center;justify-content:space-between;gap:14px}.footer-mark{display:inline-flex;flex:none;justify-self:center}.site-footer .im-mail a{color:var(--ink-soft);text-decoration:none}.site-footer .im-mail a:hover{color:var(--ink)}.status,.footer-legal{display:inline-flex;align-items:center}.status{gap:8px}.status-dot{width:7px;height:7px;flex:none;border-radius:50%;background:var(--accent-vivid);animation:pulse 2.4s ease-in-out infinite}.footer-legal{gap:14px;flex-wrap:wrap}.footer-legal a{color:var(--ink-soft);text-decoration:none}.footer-legal a:hover{color:var(--ink)}.work-card{display:flex;min-height:230px;flex-direction:column;gap:10px;padding:24px 26px 20px;border:1px solid var(--hairline);border-radius:8px;background:var(--surface);box-shadow:inset 0 2px 0 transparent;color:inherit;cursor:pointer;text-align:left;text-decoration:none;transition:border-color .22s ease,background .22s ease,transform .22s ease,box-shadow .22s ease}.work-card:hover{border-color:var(--hairline-strong);transform:translateY(-1px)}.work-card:active{transform:translateY(0) scale(.995)}.work-card[aria-selected=true],.work-card.is-active{border-color:#e0ac4a;background:color-mix(in srgb,#151b1a 92%,#e0ac4a 8%);box-shadow:inset 0 2px #e0ac4a}.card-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.work-card .k{display:inline-flex;align-items:center;gap:8px;color:var(--accent);font-family:IBM Plex Mono,monospace;font-size:11px;letter-spacing:.1em;text-transform:uppercase}.work-card .num{color:var(--ink-faint);font-style:normal;letter-spacing:.06em}.sw-toggle{position:relative;width:30px;height:16px;flex:none;border:1px solid var(--hairline-strong);border-radius:9px;transition:border-color .22s ease,background .22s ease}.sw-toggle i{position:absolute;top:2px;left:2px;width:10px;height:10px;border-radius:50%;background:var(--ink-faint);transition:left .22s ease,background .22s ease}.work-card:hover .sw-toggle{border-color:var(--accent)}.work-card:hover .sw-toggle i{left:5px}.work-card.is-active .sw-toggle,.work-card[aria-selected=true] .sw-toggle{border-color:#e0ac4a;background:color-mix(in srgb,#151b1a 70%,#e0ac4a 30%)}.work-card.is-active .sw-toggle i,.work-card[aria-selected=true] .sw-toggle i{left:16px;background:#e0ac4a}.work-card .flag{align-self:flex-start;padding:2px 7px;border:1px solid var(--accent);border-radius:3px;color:var(--accent);font-family:IBM Plex Mono,monospace;font-size:10px;letter-spacing:.08em;text-transform:uppercase}.glyph{height:54px;margin:2px 0;color:var(--ink-soft)}.glyph svg{width:120px;height:100%;overflow:visible}.g-line,.g-box{fill:none;stroke:var(--ink-soft);stroke-width:1.2}.g-gold,.g-goal{fill:none;stroke:var(--accent-vivid);stroke-width:1.4}.g-dot{fill:var(--accent-vivid)}.g-fill{fill:var(--ink-soft);opacity:.5}.gp{fill:var(--accent-vivid);opacity:0;animation:travel var(--dur, 4.5s) linear infinite both paused}.gring{fill:none;stroke:var(--accent-vivid);stroke-width:1.2;opacity:0;transform-box:fill-box;transform-origin:center;animation:ringpulse var(--dur, 4.5s) linear infinite both paused}@keyframes travel{0%{transform:translate(var(--sx),var(--sy));opacity:0}3%{opacity:1}15%{opacity:1}18%{transform:translate(var(--ex),var(--ey));opacity:0}to{transform:translate(var(--ex),var(--ey));opacity:0}}@keyframes ringpulse{0%{transform:scale(.3);opacity:0}4%{opacity:.85}14%{transform:scale(2.1);opacity:0}to{transform:scale(2.1);opacity:0}}.work-card.is-active .gp,.work-card:hover .gp,.work-card.is-active .gring,.work-card:hover .gring{animation-play-state:running}.work-card h3{font-family:"Source Serif 4",serif;font-size:22px;font-weight:550;letter-spacing:-.01em;line-height:1.15}.work-card p{flex-grow:1;color:var(--ink);font-size:14.5px;line-height:1.58;opacity:.82}.work-card .go{padding-top:14px;border-top:1px solid var(--hairline);color:var(--ink);font-size:14px;font-weight:500}.work-card .go:after{color:var(--accent);content:" →"}.work-card.is-active h3,.work-card[aria-selected=true] h3,.work-card.is-active .go,.work-card[aria-selected=true] .go{color:#e4e8e6}.work-card.is-active p,.work-card[aria-selected=true] p{color:#c3ccc8}.work-card.is-active .go,.work-card[aria-selected=true] .go{border-top-color:#e4e8e63d}.work-card.is-active .k,.work-card.is-active .num,.work-card.is-active .flag,.work-card[aria-selected=true] .k,.work-card[aria-selected=true] .num,.work-card[aria-selected=true] .flag{border-color:#e0ac4a;color:#e0ac4a}.work-card.is-active .glyph,.work-card[aria-selected=true] .glyph{color:#93a09c}.work-card.is-active .g-line,.work-card.is-active .g-box,.work-card[aria-selected=true] .g-line,.work-card[aria-selected=true] .g-box{stroke:#93a09c}.work-card.is-active .g-fill,.work-card[aria-selected=true] .g-fill{fill:#93a09c}@media(prefers-color-scheme:light){:root:not([data-theme=dark]) .nav-cta,:root:not([data-theme=dark]) .btn-solid{box-shadow:0 0 4px color-mix(in srgb,var(--accent-vivid) 62%,transparent),0 0 11px color-mix(in srgb,var(--accent-vivid) 34%,transparent),0 2px 20px color-mix(in srgb,var(--accent-vivid) 20%,transparent)}:root:not([data-theme=dark]) .work-card.is-active,:root:not([data-theme=dark]) .work-card[aria-selected=true]{background:#111514;box-shadow:inset 0 2px #e0ac4a,0 0 5px color-mix(in srgb,var(--accent-vivid) 55%,transparent),0 0 16px color-mix(in srgb,var(--accent-vivid) 30%,transparent),0 6px 28px color-mix(in srgb,var(--accent-vivid) 18%,transparent)}}:root[data-theme=light] .nav-cta,:root[data-theme=light] .btn-solid{box-shadow:0 0 4px color-mix(in srgb,var(--accent-vivid) 62%,transparent),0 0 11px color-mix(in srgb,var(--accent-vivid) 34%,transparent),0 2px 20px color-mix(in srgb,var(--accent-vivid) 20%,transparent)}:root[data-theme=light] .work-card.is-active,:root[data-theme=light] .work-card[aria-selected=true]{background:#111514;box-shadow:inset 0 2px #e0ac4a,0 0 5px color-mix(in srgb,var(--accent-vivid) 55%,transparent),0 0 16px color-mix(in srgb,var(--accent-vivid) 30%,transparent),0 6px 28px color-mix(in srgb,var(--accent-vivid) 18%,transparent)}:root[data-theme=dark] .nav-cta,:root[data-theme=dark] .btn-solid{box-shadow:none}@keyframes blink{0%,42%{opacity:1}43%,to{opacity:0}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}@media(max-width:920px){.site-nav,.site-footer{padding-right:24px;padding-left:24px}.nav-right{gap:12px}.nav-links,.nav-right .lang-switch,.nav-right .theme-toggle{display:none}.nav-burger{display:inline-flex}.compact-menu.is-open{display:flex}.sw-toggle{display:none}.work-card{min-height:0}.site-footer{grid-template-columns:1fr;gap:10px}.footer-side{justify-content:flex-start;flex-wrap:wrap;gap:8px 14px}.footer-mark{justify-self:start}}@media(max-width:600px){.site-nav{gap:12px}.nav-right{gap:8px}.nav-cta{padding:8px 11px;font-size:12px}}@media(max-width:400px){.site-nav{gap:10px;padding-right:16px;padding-left:16px}.nav-cta{padding:7px 8px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.cursor,.status-dot,.gp,.gring{animation:none!important}}
