@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.12tyk43_3sh9u.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.0jzbimsg8vl84.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/53b9e256198e5412-s.0-wfv7uh4i7h9.woff2)format("woff2");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:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.0nx0ww8fni_q3.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.09~u27dqhyhd6.woff2)format("woff2");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:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_e799d87a-module__u8MhCG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_e799d87a-module__u8MhCG__variable{--font-geist:"Geist", "Geist Fallback"}
:root{--bg:#0c0e11;--surface:#14171b;--line:#22262d;--line-2:#2e333b;--text:#e8eaed;--text-2:#a7aeb7;--text-3:#838b96;--accent:#6cc3f2;--accent-hover:#93d3f6;--accent-ink:#061119;--fs-label:12px;--fs-meta:14px;--fs-body:16px;--fs-lead:20px;--fs-name:44px;--sans:var(--font-geist), ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--gutter:48px;--side:352px;--main:640px;--gap:72px;--date:148px;--date-gap:28px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background:var(--bg);color:var(--text-2);font:400 var(--fs-body) / 1.6 var(--sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}h1,h2,h3,p,ul,ol,dl,dd{margin:0;padding:0}ul,ol{list-style:none}a{color:inherit;text-decoration:none}::selection{color:var(--text);background:#6cc3f238}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:3px}svg{flex:none;display:block}.nowrap{white-space:nowrap}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip{z-index:10;background:var(--accent);color:var(--accent-ink);font-size:var(--fs-meta);border-radius:6px;padding:8px 14px;font-weight:500;position:absolute;top:-60px;left:16px}.skip:focus{top:12px}.tlink{color:var(--text);text-decoration:underline;-webkit-text-decoration-color:var(--line-2);text-decoration-color:var(--line-2);text-underline-offset:4px;text-decoration-thickness:1px;transition:color .15s,text-decoration-color .15s}.tlink:hover{color:var(--accent);text-decoration-color:currentColor}.ext{color:var(--text-3);margin-left:.2em;font-size:.85em;transition:color .15s;display:inline-block}.tlink:hover .ext{color:inherit}.page{min-height:100svh;max-width:calc(var(--side) + var(--gap) + var(--main) + 2 * var(--gutter));padding:0 var(--gutter);flex-direction:column;margin:0 auto;display:flex}.topbar{justify-content:flex-end;align-items:center;height:72px;display:flex}.sitenav{font-size:var(--fs-meta);gap:28px;display:flex}.sitenav a{color:var(--text-3);transition:color .15s}.sitenav a:hover,.sitenav a[aria-current]{color:var(--text)}.layout{grid-template-columns:var(--side) minmax(0, var(--main));column-gap:var(--gap);flex:1 0 auto;align-items:start;display:grid}.intro{padding:40px 0 48px;position:sticky;top:0}.name{font-size:var(--fs-name);letter-spacing:-.032em;color:var(--text);text-wrap:balance;font-weight:600;line-height:1.05}.name span{display:block}.role{font-size:var(--fs-lead);letter-spacing:-.012em;color:var(--text);text-wrap:balance;margin-top:16px;font-weight:500;line-height:1.35}.eyebrow{font-size:var(--fs-meta);color:var(--text-3);font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:0 8px;margin-bottom:16px;line-height:21px;display:flex}.eyebrow a{text-underline-offset:4px;-webkit-text-decoration:underline #0000;text-decoration:underline #0000;text-decoration-thickness:1px;transition:color .15s,text-decoration-color .15s}.eyebrow a:hover{color:var(--text);-webkit-text-decoration-color:var(--line-2);text-decoration-color:var(--line-2)}.pitch{color:var(--text-2);text-wrap:pretty;margin-top:12px}.facts{border-top:1px solid var(--line);font-size:var(--fs-meta);margin-top:32px;line-height:1.5}.facts>div{border-bottom:1px solid var(--line);grid-template-columns:84px minmax(0,1fr);column-gap:16px;padding:10px 0;display:grid}.facts dt{font-size:var(--fs-label);color:var(--text-3);line-height:21px}.facts dd{color:var(--text);text-wrap:pretty}.facts .lvl{color:var(--text-3)}.facts .lang{display:block}.reach{margin-top:28px}.btn{height:40px;font-size:var(--fs-meta);white-space:nowrap;border-radius:6px;justify-content:center;align-items:center;gap:10px;padding:0 16px;font-weight:500;line-height:1;transition:background-color .15s,border-color .15s,color .15s;display:inline-flex}.btn svg{width:16px;height:16px}.btn .ext{margin-left:-4px}.btn-primary{background:var(--accent);color:var(--accent-ink)}.btn-primary:hover{background:var(--accent-hover)}.btn-primary .btn-note{color:#1f3f52;font-weight:400}.btn-outline{border:1px solid var(--line-2);color:var(--text)}.btn-outline:hover{background:var(--surface);border-color:#434a55}.links{font-size:var(--fs-meta);flex-wrap:wrap;gap:8px 24px;margin-top:20px;line-height:1.5;display:flex}.content{min-width:0;padding-top:40px}.section{border-top:1px solid var(--line);padding-top:24px;scroll-margin-top:24px}.section+.section{margin-top:80px}.section-title{font-size:var(--fs-lead);letter-spacing:-.015em;color:var(--text);margin-bottom:28px;font-weight:600;line-height:28px}.entry{grid-template-columns:var(--date) minmax(0, 1fr);column-gap:var(--date-gap);display:grid}.entry+.entry{margin-top:40px}.when{font-size:var(--fs-meta);color:var(--text-2);font-variant-numeric:tabular-nums;grid-area:1/1/span 6;line-height:24px}.when .status{color:var(--text-3);display:block}.entry>:not(.when){grid-column:2}.title{font-size:var(--fs-body);letter-spacing:-.01em;color:var(--text);text-wrap:balance;font-weight:600;line-height:24px}.title .soft{color:var(--text-3);font-weight:400}.title a{text-underline-offset:4px;-webkit-text-decoration:underline #0000;text-decoration:underline #0000;text-decoration-thickness:1px;transition:color .15s,text-decoration-color .15s}.title a .arrow{color:var(--text-3);margin-left:6px;font-weight:400;line-height:1;transition:transform .2s,color .15s;display:inline-block}.title a:hover,.title a:focus-visible{color:var(--accent);text-decoration-color:currentColor}.title a:hover .arrow,.title a:focus-visible .arrow{color:currentColor;transform:translate(3px)}.meta{font-size:var(--fs-meta);color:var(--text-3);text-wrap:pretty;margin-top:2px;line-height:1.5}.meta .tlink{color:var(--text-2)}.meta .tlink:hover{color:var(--accent)}.points{gap:6px;margin-top:12px;display:grid}.points li{text-wrap:pretty;position:relative}.points li:before{content:"–";color:var(--text-3);position:absolute;top:0;left:-18px}.points a{color:var(--text)}.points .tlink{-webkit-text-decoration-color:var(--text-3);text-decoration-color:var(--text-3)}.points .tlink:hover{text-decoration-color:currentColor}.desc{text-wrap:pretty;margin-top:12px}.stack{font-size:var(--fs-meta);color:var(--text-3);text-wrap:balance;margin-top:10px;line-height:1.5}.prose{max-width:36em}.prose>*{text-wrap:pretty}.prose p+p{margin-top:14px}.prose strong{color:var(--text);font-weight:500}.more{margin-top:36px;margin-left:calc(var(--date) + var(--date-gap));font-size:var(--fs-meta);color:var(--text);align-items:center;gap:8px;font-weight:500;transition:color .15s;display:inline-flex}.more span{transition:transform .2s}.more:hover{color:var(--accent)}.more:hover span{transform:translate(3px)}.skills .entry+.entry{margin-top:14px}.skills .when{color:var(--text-3)}.skills dd{color:var(--text);text-wrap:pretty;line-height:24px}.contact-line{color:var(--text-2)}.email{font-size:var(--fs-lead);letter-spacing:-.01em;margin-top:8px;font-weight:500;line-height:1.4;display:inline-block}.actions{flex-wrap:wrap;gap:12px;margin-top:24px;display:none}.footer{border-top:1px solid var(--line);font-size:var(--fs-meta);color:var(--text-3);flex-wrap:wrap;justify-content:space-between;gap:8px 24px;margin-top:96px;padding:24px 0 40px;display:flex}.footer a{transition:color .15s}.footer a:hover{color:var(--text)}@media (max-height:760px) and (min-width:1081px){.intro{padding-top:24px}.facts{margin-top:24px}.facts>div{padding:8px 0}.reach{margin-top:20px}}@media (max-height:640px){.intro{position:static}}@media (max-width:1240px){:root{--gap:56px;--date-gap:24px}}@media (max-width:1080px){:root{--gutter:32px}.page{max-width:calc(var(--main) + 2 * var(--gutter))}.layout{grid-template-columns:minmax(0,1fr)}.intro{grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:40px;padding:24px 0 0;display:grid;position:static}.intro>.head{grid-column:1/-1}.pitch{max-width:46ch}.facts{margin-top:36px}.reach{border-top:1px solid var(--line);margin-top:36px;padding-top:20px}.links{flex-direction:column;gap:10px;margin-top:24px}.content{margin-top:72px;padding-top:0}.actions{display:flex}}@media (max-width:640px){.intro{display:block}.reach{border-top:0;margin-top:28px;padding-top:0}.links{flex-direction:row;gap:8px 24px;margin-top:20px}.facts{margin-top:28px}}@media (max-width:560px){:root{--gutter:20px;--fs-name:40px}.topbar{height:60px}.sitenav{gap:24px}.intro{padding-top:20px}.role{margin-top:14px}.facts>div{grid-template-columns:80px minmax(0,1fr);column-gap:12px}.content,.section+.section{margin-top:64px}.section-title{margin-bottom:24px}.entry{display:block}.entry+.entry{margin-top:32px}.when{margin-bottom:4px;line-height:1.5}.when .status{display:inline}.when .status:before{content:" · "}.points li{padding-left:18px}.points li:before{left:0}.more{margin-top:28px;margin-left:0}.skills .entry+.entry{margin-top:16px}.skills .when{margin-bottom:2px}.actions{grid-template-columns:1fr 1fr;display:grid}.actions .btn:first-child{grid-column:1/-1}.footer{margin-top:72px}.eyebrow{margin-bottom:12px}.sitenav a,.links a,.eyebrow a,.footer a{margin-block:-11px;padding-block:11px;display:inline-block}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important}}@media print{:root{--bg:#fff;--text:#111;--text-2:#222;--text-3:#555;--line:#ccc;--line-2:#bbb}@page{margin:16mm 14mm}body{color:#222;background:#fff;font-size:11pt}.skip,.topbar,.eyebrow,.reach .btn,.actions,.more,.footer a{display:none!important}.reach{margin-top:12pt}.links a[href^=http]:after{content:" (" attr(href) ")";color:#555}.links .ext{display:none}.page{max-width:none;min-height:0;padding:0;display:block}.layout,.intro{padding:0;display:block;position:static}.name{font-size:26pt}.name span{display:inline}.content{margin-top:18pt;padding:0}.section+.section{margin-top:18pt}.section-title{break-after:avoid}.entry{break-inside:avoid}.reach{border:0;padding:0}.links{flex-direction:row;gap:4pt 18pt;margin-top:0}.title a .arrow{display:none}.title a[href^=\/]:after{content:" (kyrylo.nl" attr(href) ")";color:#555;font-size:9pt;font-weight:400}.footer{margin-top:18pt}}
