:root{--bg:#0b0f0d;--pn:#121814;--ln:#26312a;--tx:#eaf0eb;--mt:#8fa096;--ac:#37b877;--ai:#071009;--ah:color-mix(in oklab,var(--ac),#000 22%)}[data-theme=light]{--bg:#f2f2ec;--pn:#fafaf5;--ln:#c9cec4;--tx:#17211b;--mt:#57655c;--ac:#1e7a4c;--ah:color-mix(in oklab,var(--ac),#000 22%)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#0b0f0d;background:var(--bg);color:#eaf0eb;color:var(--tx);font-family:Poppins,sans-serif;margin:0}#top{width:100%}::selection{background:#37b877;color:#071009}a{color:inherit}.sec-head{align-items:center;border-bottom:1px solid #26312a;border-bottom:1px solid var(--ln);display:flex;gap:clamp(16px,3vw,32px);padding:clamp(28px,5vw,56px) clamp(18px,3vw,36px)}.sec-num{-webkit-text-stroke:1.5px #37b877;-webkit-text-stroke:1.5px var(--ac);color:#0000;font-size:clamp(44px,7vw,88px);font-weight:800;line-height:1}.sec-title{font-size:clamp(30px,5vw,56px);font-weight:700;letter-spacing:-.025em;margin:0}.reveal-init{opacity:0;transform:translateY(14px);transition:opacity .55s ease,transform .55s ease}.reveal-in{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal-init{opacity:1;transform:none;transition:none}}.pill-nav{align-items:center;background:var(--pn);border:1px solid var(--ln);border-radius:999px;bottom:20px;box-shadow:0 16px 40px #0006;display:flex;gap:2px;left:50%;max-width:calc(100vw - 24px);padding:6px 8px;position:fixed;transform:translateX(-50%);z-index:100}.pill-link{border-radius:999px;color:var(--tx);font-size:13.5px;font-weight:500;padding:9px 14px;text-decoration:none;transition:background .2s ease,color .2s ease;white-space:nowrap}.pill-link:hover{background:var(--bg);color:var(--ac)}.pill-divider{align-self:stretch;background:var(--ln);margin:6px;width:1px}.pill-toggle{align-items:center;background:none;border:none;border-radius:999px;color:var(--mt);cursor:pointer;display:flex;padding:8px 10px;transition:color .2s ease}.pill-toggle:hover{color:var(--ac)}@media(max-width:480px){.pill-nav{gap:0;padding:5px 6px}.pill-link{font-size:12px;padding:8px 9px}.pill-divider{margin:5px 4px}.pill-toggle{padding:7px 8px}}.hero{border-bottom:1px solid var(--ln);display:grid;grid-template-areas:"top    photo" "bottom photo";grid-template-columns:1.5fr minmax(280px,440px);grid-template-rows:auto 1fr}.hero-top{grid-area:top;padding:clamp(32px,6vw,72px) clamp(18px,3vw,36px) 0}.hero-bottom{align-self:end;grid-area:bottom;padding:44px clamp(18px,3vw,36px) clamp(88px,12vh,128px)}.hero-figure{border-left:1px solid var(--ln);display:flex;flex-direction:column;grid-area:photo;margin:0}.hero-name{text-wrap:balance;font-size:clamp(48px,9.5vw,128px);font-weight:700;letter-spacing:-.035em;line-height:1.02;margin:0}.hero-roles{display:flex;flex-direction:column;font-size:clamp(22px,3vw,38px);font-weight:700;gap:2px;letter-spacing:-.02em;line-height:1.25;margin:24px 0 0}.hero-roles .role-solid{color:var(--tx)}.hero-roles .role-outline{-webkit-text-stroke:1px var(--mt);color:#0000}.hero-roles .role-accent{color:var(--ac)}.hero-tagline{text-wrap:pretty;color:var(--mt);font-size:clamp(16px,1.7vw,20px);line-height:1.6;margin:0 0 32px;max-width:52ch}.hero-cta{display:flex;flex-wrap:wrap;gap:12px}.btn{align-items:center;border-radius:999px;display:inline-flex;font-size:15px;gap:10px;text-decoration:none;transition:background .2s ease,color .2s ease,border-color .2s ease}.btn-linkedin{background:#0a66c2;color:#fff;font-weight:600;padding:14px 28px}.btn-linkedin:hover{background:#085aab}.btn-ghost{border:1px solid var(--ln);color:var(--tx);font-weight:500;padding:13px 28px}.btn-ghost:hover{border-color:var(--ac);color:var(--ac)}.hero-photo{flex:1 1;min-height:340px;overflow:hidden;position:relative}.hero-photo img{filter:grayscale(1) contrast(1.08);height:100%;inset:0;object-fit:cover;object-position:top;position:absolute;width:100%}.hero-caption{border-top:1px solid var(--ln);color:var(--mt);display:flex;font-size:13.5px;font-weight:500;gap:12px;justify-content:space-between;padding:14px clamp(18px,2vw,26px)}.hero-caption .hero-caption-ac{color:var(--ac)}@media(max-width:720px){.hero{grid-template-areas:"top    photo" "bottom bottom";grid-template-columns:1fr clamp(120px,38vw,190px);grid-template-rows:auto auto}.hero-top{display:flex;flex-direction:column;justify-content:center;padding:clamp(24px,6vw,40px) clamp(16px,3vw,24px) clamp(20px,5vw,32px)}.hero-name{font-size:clamp(38px,12vw,62px)}.hero-roles{font-size:clamp(16px,4.4vw,22px);margin-top:16px}.hero-bottom{align-self:start;border-top:1px solid var(--ln);padding:clamp(24px,6vw,36px) clamp(16px,3vw,24px) clamp(48px,12vw,80px)}.hero-photo{min-height:100%}.hero-caption{display:none}}.about{border-bottom:1px solid var(--ln)}.about-body{display:flex;flex-wrap:wrap}.about-main{flex:1.4 1 440px;min-width:0;padding:clamp(24px,4vw,48px) clamp(18px,3vw,36px)}.about-p{text-wrap:pretty;font-size:clamp(16px,1.6vw,18.5px);line-height:1.75;margin:0 0 20px}.about-p.muted{color:var(--mt);margin-bottom:36px}.about-p .ac{color:var(--ac);font-weight:600}.about-p .tx{color:var(--tx);font-weight:600}.about-stats{border:1px solid var(--ln);border-radius:16px;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));overflow:hidden}.stat{border-right:1px solid var(--ln);padding:22px}.stat:last-child{border-right:none}.stat-num{font-size:36px;font-weight:700;letter-spacing:-.02em}.stat-lbl{color:var(--mt);font-size:13.5px;margin-top:4px}.about-open{border-top:1px solid var(--ln);color:var(--tx);display:block;margin-top:36px;padding-top:24px;text-decoration:none;transition:color .2s ease}.about-open span{align-items:baseline;display:flex;font-size:clamp(22px,2.6vw,32px);font-weight:700;gap:14px;letter-spacing:-.02em}.about-open .arrow{color:var(--ac);transition:transform .25s ease}.about-open:hover{color:var(--ac)}.about-open:hover .arrow{transform:translateX(6px)}.about-side{border-left:1px solid var(--ln);flex:1 1 300px;min-width:min(100%,280px)}.side-block{padding:clamp(24px,4vw,40px) clamp(18px,3vw,36px)}.side-block:first-child{border-bottom:1px solid var(--ln)}.side-block h3{font-size:19px;font-weight:600;letter-spacing:-.01em;margin:0 0 18px}.lang-list{display:flex;flex-direction:column;gap:11px}.lang-row{align-items:baseline;display:flex;font-size:15.5px;gap:8px}.lang-dots{border-bottom:1px dotted var(--ln);flex:1 1}.lang-lvl{color:var(--mt);font-size:14px;font-weight:500}.lang-lvl.ac{color:var(--ac)}.tools{color:var(--tx);font-size:14.5px;line-height:2;margin:0 0 18px}.tools.muted{color:var(--mt);margin:0}.tools .ac{color:var(--ac);font-weight:600}.projects{border-bottom:1px solid var(--ln)}.proj-body{align-items:stretch;display:flex;flex-wrap:wrap}.proj-list{flex:1.2 1 440px;min-width:min(100%,320px)}.proj-row{align-items:baseline;border-bottom:1px solid var(--ln);cursor:pointer;display:flex;gap:clamp(12px,2vw,24px);padding:clamp(20px,3vw,32px) clamp(18px,3vw,36px);transition:background .2s ease}.proj-row:last-child{border-bottom:none}.proj-row:hover{background:var(--pn)}.proj-row:focus-visible{outline:2px solid var(--ac);outline-offset:-3px}.proj-idx{color:var(--mt);font-size:14px;font-weight:500}.proj-name{color:var(--tx);font-size:clamp(28px,4vw,52px);font-weight:700;letter-spacing:-.025em;line-height:1.1;transition:color .2s ease}.proj-arrow{font-size:clamp(20px,2.5vw,28px);margin-left:auto;opacity:0;transition:opacity .2s ease,transform .2s ease}.proj-arrow,.proj-row.active .proj-name{color:var(--ac)}.proj-row.active .proj-arrow{opacity:1}.proj-preview{border-left:1px solid var(--ln);flex:1 1 420px;min-width:min(100%,320px)}.proj-preview-inner{display:flex;flex-direction:column;gap:20px;padding:clamp(24px,4vw,44px) clamp(18px,3vw,36px);position:-webkit-sticky;position:sticky;top:0}.proj-img{aspect-ratio:16/10;border:1px solid var(--ln);border-radius:16px;overflow:hidden;width:100%}.proj-img img{display:block;height:100%;object-fit:cover;object-position:top;width:100%}.proj-meta{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.proj-role{border:1px solid var(--ac);border-radius:999px;color:var(--ac)}.proj-link,.proj-role{font-size:13px;font-weight:600;padding:5px 14px}.proj-link{border:1px solid var(--ln);border-radius:999px;color:var(--tx);text-decoration:none;transition:border-color .2s ease,color .2s ease}.proj-link:hover{border-color:var(--ac);color:var(--ac)}.proj-desc{text-wrap:pretty;color:var(--mt);font-size:15.5px;line-height:1.7;margin:0}.career,.career-group{border-bottom:1px solid var(--ln)}.career-group{display:flex;flex-wrap:wrap}.career-group:last-child{border-bottom:none}.career-year{flex:0 0 clamp(140px,20vw,260px);padding:clamp(24px,4vw,44px) clamp(18px,3vw,36px)}.career-year span{-webkit-text-stroke:1px var(--mt);color:#0000;display:block;font-size:clamp(56px,8vw,104px);font-weight:800;letter-spacing:-.02em;line-height:1;position:-webkit-sticky;position:sticky;top:24px}.career-jobs{border-left:1px solid var(--ln);flex:1 1 420px;min-width:min(100%,300px)}.career-job{border-bottom:1px solid var(--ln);padding:clamp(24px,4vw,40px) clamp(18px,3vw,36px)}.career-job:last-child{border-bottom:none}.job-top{align-items:center;display:flex;flex-wrap:wrap;gap:8px 14px}.job-title{font-size:clamp(20px,2.4vw,26px);font-weight:600}.job-badge{background:var(--ac);border-radius:999px;color:#fff;font-size:12.5px;font-weight:600;padding:4px 12px}.job-org{color:var(--mt);font-size:16px;margin-top:6px}.job-tags{color:var(--mt);font-size:14px;line-height:1.7;margin-top:12px}.contact{border-bottom:1px solid var(--ln)}.contact-inner{padding:clamp(48px,9vw,110px) clamp(18px,3vw,36px) clamp(36px,6vw,72px)}.contact-title{text-wrap:balance;font-size:clamp(48px,9vw,132px);font-weight:800;letter-spacing:-.04em;line-height:1;margin:0}.contact-title .ac{color:var(--ac)}.contact-sub{text-wrap:pretty;color:var(--mt);font-size:clamp(16px,1.7vw,19px);line-height:1.65;margin:28px 0 clamp(36px,6vw,64px);max-width:56ch}.contact-links{display:flex;flex-direction:column}.contact-row{align-items:baseline;border-top:1px solid var(--ln);color:var(--tx);display:flex;flex-wrap:wrap;gap:8px 20px;padding:26px 4px;text-decoration:none;transition:padding-left .25s ease,color .2s ease}.contact-row.contact-row-cv{border-bottom:1px solid var(--ln)}.contact-row:hover{color:var(--ac);padding-left:16px}.cr-name{font-size:clamp(26px,4vw,52px);font-weight:700;letter-spacing:-.025em}.cr-sub{color:var(--mt);font-size:clamp(14px,1.5vw,17px);font-weight:500}.cr-arrow{color:var(--ac);font-size:clamp(22px,3vw,36px);margin-left:auto}.site-footer{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;padding:24px clamp(18px,3vw,36px) 120px}.foot-copy{color:var(--mt);font-size:13.5px}.foot-social{align-items:center;display:flex;gap:16px}.foot-social a{color:var(--mt);display:flex;transition:color .2s ease}.foot-social a:hover{color:var(--ac)}
/*# sourceMappingURL=main.35231770.css.map*/