@font-face{font-family:Barlow;font-style:normal;font-weight:400;font-display:swap;src:url(../media/31e5e20239562b7a-s.680bcb0d.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:Barlow;font-style:normal;font-weight:400;font-display:swap;src:url(../media/9a8b04342f903b9d-s.b6a2e261.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:Barlow;font-style:normal;font-weight:400;font-display:swap;src:url(../media/c6e2684784a55443-s.p.ea91da97.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:Barlow;font-style:normal;font-weight:500;font-display:swap;src:url(../media/742f0fcf9aa5cfe6-s.b3c57c2c.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:Barlow;font-style:normal;font-weight:500;font-display:swap;src:url(../media/b524e3bdcc8dfcd3-s.0000e278.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:Barlow;font-style:normal;font-weight:500;font-display:swap;src:url(../media/a083361d37caf3d1-s.p.5c0d0b0d.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:Barlow;font-style:normal;font-weight:700;font-display:swap;src:url(../media/f1c5314e24238cfd-s.569f6bbe.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:Barlow;font-style:normal;font-weight:700;font-display:swap;src:url(../media/7993b8d2abb72fea-s.fcc3856b.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:Barlow;font-style:normal;font-weight:700;font-display:swap;src:url(../media/0595f7052377a1a2-s.p.0de08f1e.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:Barlow Fallback;src:local(Arial);ascent-override:103.43%;descent-override:20.69%;line-gap-override:0.0%;size-adjust:96.68%}.barlow_3e8d29ee-module__h5pRYa__className{font-family:Barlow,Barlow Fallback;font-style:normal}.barlow_3e8d29ee-module__h5pRYa__variable{--font-barlow:"Barlow","Barlow Fallback"}
@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:400;font-display:swap;src:url(../media/a1e1e2ab4a689572-s.b491d101.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:Barlow Condensed;font-style:normal;font-weight:400;font-display:swap;src:url(../media/b84cc1c14eba5dc9-s.8ee46826.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:Barlow Condensed;font-style:normal;font-weight:400;font-display:swap;src:url(../media/4f530f52d514af96-s.p.52297690.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:Barlow Condensed;font-style:normal;font-weight:600;font-display:swap;src:url(../media/9710cef2a2a6ac70-s.a1099429.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:Barlow Condensed;font-style:normal;font-weight:600;font-display:swap;src:url(../media/a978fc28c69736ab-s.1914b782.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:Barlow Condensed;font-style:normal;font-weight:600;font-display:swap;src:url(../media/303804218d80822e-s.p.9b40bd6c.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:Barlow Condensed Fallback;src:local(Arial);ascent-override:130.73%;descent-override:26.15%;line-gap-override:0.0%;size-adjust:76.49%}.barlow_condensed_a20e680b-module__ONYArG__className{font-family:Barlow Condensed,Barlow Condensed Fallback;font-style:normal}.barlow_condensed_a20e680b-module__ONYArG__variable{--font-barlow-condensed:"Barlow Condensed","Barlow Condensed Fallback"}
:root{--color-bg:#f2f2f3;--color-surface:#e9e9ea;--color-text:#1d1f20;--color-accent:#5980a6;--color-divider:#1d1f2029;--color-neutral-100:#f5f5f8;--color-neutral-200:#e7e7ea;--color-neutral-300:#d4d4d7;--color-neutral-400:#b7b7ba;--color-neutral-500:#98989b;--color-neutral-600:#7a7a7d;--color-neutral-700:#5d5d60;--color-neutral-800:#424244;--color-neutral-900:#2b2b2d;--color-accent-100:#eef6ff;--color-accent-200:#d6ebff;--color-accent-300:#b5d9fd;--color-accent-400:#94bce3;--color-accent-500:#749dc4;--color-accent-600:#597ea3;--color-accent-700:#416180;--color-accent-800:#2c455d;--color-accent-900:#1d2d3d;--font-heading:var(--font-barlow-condensed),system-ui,sans-serif;--font-heading-weight:600;--font-body:var(--font-barlow),system-ui,sans-serif;--space-1:3.4px;--space-2:6.8px;--space-3:10.2px;--space-4:13.6px;--space-6:20.4px;--space-8:27.2px;--radius-sm:2px;--radius-md:4px;--radius-lg:7px;--shadow-sm:0 1px 2px #2b2b2d24;--shadow-md:0 3px 10px #2b2b2d29;--shadow-lg:0 12px 32px #2b2b2d38}[data-theme=dark]{--color-bg:#15191d;--color-surface:#1d2329;--color-text:#eef1f4;--color-accent:#94bce3;--color-accent-700:#94bce3;--color-accent-800:#b5d9fd;--color-divider:#eef1f42e;--shadow-sm:0 1px 2px #00000080;--shadow-md:0 3px 10px #0000008c;--shadow-lg:0 12px 32px #0009}[data-theme=dark] a:not(.btn){color:#b5d9fd}[data-theme=dark] .btn-primary{color:#15191d}[data-theme=dark] .tag-accent{background:color-mix(in srgb,var(--color-accent)16%,transparent);color:#b5d9fd}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);margin:0;font-size:15px;font-weight:400;line-height:1.55;transition:background-color .3s,color .3s}section[id]{scroll-margin-top:76px}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:var(--font-heading-weight);margin:0;line-height:1.12}p{margin:0}a{color:var(--color-accent-700);text-underline-offset:3px;text-decoration:none}a:hover{color:var(--color-accent-800)}img{max-width:100%;display:block}figure{margin:0}figcaption{margin-top:var(--space-1);color:color-mix(in srgb,var(--color-text)55%,transparent);font-size:11px}:focus{outline:none}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}::selection{background:color-mix(in srgb,var(--color-accent)30%,transparent)}.blueprint{border:1px solid var(--color-divider);border-radius:0;position:relative}.blueprint.duotone{overflow:visible}.blueprint>.corner{width:11px;height:11px;color:color-mix(in srgb,var(--color-text)55%,transparent);position:absolute}.blueprint>.corner:before,.blueprint>.corner:after{content:"";background:currentColor;position:absolute}.blueprint>.corner:before{width:1px;height:100%;top:0;left:5px}.blueprint>.corner:after{width:100%;height:1px;top:5px;left:0}.blueprint>.corner.tl{top:-6px;left:-6px}.blueprint>.corner.tr{top:-6px;right:-6px}.blueprint>.corner.bl{bottom:-6px;left:-6px}.blueprint>.corner.br{bottom:-6px;right:-6px}.duotone{position:relative;overflow:hidden}.duotone:after{content:"";pointer-events:none;background:var(--color-accent);mix-blend-mode:color;position:absolute;inset:0}.btn{cursor:pointer;font-family:var(--font-heading);font-weight:var(--font-heading-weight);letter-spacing:.1em;text-transform:uppercase;color:var(--color-text);border:1px solid var(--color-divider);background:0 0;border-radius:0;justify-content:center;align-items:center;gap:8px;padding:12px 22px;font-size:15px;line-height:1.2;text-decoration:none;transition:background-color .2s,color .2s;display:inline-flex}.btn svg{flex:none;display:block}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--color-accent);color:var(--color-bg);border-color:var(--color-accent)}.btn-primary:hover{background:var(--color-accent-600)}.btn-primary:active{background:var(--color-accent-700)}.btn-secondary{border-color:var(--color-divider);border-radius:var(--radius-md)}.btn-secondary:hover{background:color-mix(in srgb,var(--color-text)7%,transparent)}.btn-secondary:active{background:color-mix(in srgb,var(--color-text)14%,transparent)}.btn-icon{width:36px;height:36px;padding:0}.tag{letter-spacing:.02em;border-radius:0;align-items:center;padding:5px 11px;font-size:13px;display:inline-flex}.tag-accent{background:var(--color-accent-100);color:var(--color-accent-800)}.tag-outline{border:1px solid var(--color-accent);color:var(--color-accent)}.hover-tint-6:hover{background:color-mix(in srgb,var(--color-accent)6%,transparent)}.hover-tint-8:hover{background:color-mix(in srgb,var(--color-accent)8%,transparent)}.nav-link{color:var(--color-text)}.nav-link:hover{color:var(--color-accent)}.nav-links{display:flex}.nav-cv{display:inline-flex}.burger{display:none}@media (max-width:760px){.nav-links,.nav-cv{display:none}.burger{display:flex}.tl-row{grid-template-columns:minmax(0,1fr)!important}.tl-date{text-align:left!important;padding:20px 0 4px!important}.tl-rule{display:none}.tl-body{padding:0 0 30px!important}}.d-only{display:block}.d-col{display:flex}.m-only{display:none}@media (max-width:760px){.d-only,.d-col{display:none}.m-only{display:block}}[data-theme=light] .ph-dark,[data-theme=dark] .ph-light{display:none}@keyframes rise{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}@keyframes caret{0%,to{opacity:1}50%{opacity:0}}.rise-in{animation:.8s both rise}.rise-in-delayed{animation:.9s .1s both rise}.reveal-22{animation:.8s linear both rise;animation-timeline:view();animation-range:entry cover 22%}.reveal-24{animation:.8s linear both rise;animation-timeline:view();animation-range:entry cover 24%}.reveal-26{animation:.8s linear both rise;animation-timeline:view();animation-range:entry cover 26%}.caret-blink{animation:1.1s step-end infinite caret}@media (prefers-reduced-motion:reduce){.rise-in,.rise-in-delayed,.reveal-22,.reveal-24,.reveal-26{opacity:1;animation:none;transform:none}.caret-blink{animation:none}html{scroll-behavior:auto}}html:not(.skip-splash) .krd-brand{opacity:0;animation:.8s cubic-bezier(.16,1,.3,1) 4.8s forwards revealNavLogo;transform:translate(-50px)}@keyframes revealNavLogo{to{opacity:1;transform:translate(0)}}html.skip-splash .splash-screen{display:none!important}.splash-screen{z-index:9999;background-color:var(--color-bg);justify-content:center;align-items:center;transition:background-color .8s,visibility .8s;display:flex;position:fixed;inset:0}.splash-screen-hide{visibility:hidden;pointer-events:none;background-color:#0000}.splash-screen-hide .splash-logo{opacity:0;transform:translate(-40vw,-40vh)scale(.4)}.splash-screen-hide .splash-loading-bar-container,.splash-screen-hide .splash-loading-text{animation:.4s forwards splashFadeOut!important}@keyframes splashFadeOut{0%{opacity:1}to{opacity:0;visibility:hidden}}.splash-content{flex-direction:column;align-items:center;gap:2rem;display:flex}.splash-logo{font-family:var(--font-heading);font-weight:var(--font-heading-weight);text-transform:uppercase;letter-spacing:-1px;align-items:center;font-size:clamp(2.5rem,5vw,4rem);transition:transform .8s cubic-bezier(.86,0,.07,1),opacity .8s;display:flex}.splash-bracket,.splash-slash{color:var(--color-accent);opacity:0;animation:.5s forwards splashFadeIn}.splash-bracket:first-child{animation-delay:.1s}.splash-slash{animation-delay:1.9s}.splash-bracket:last-of-type{animation-delay:2.1s}.splash-char{color:var(--color-text);vertical-align:bottom;max-width:0;animation:.1s step-end forwards splashRevealChar;display:inline-block;overflow:hidden}.splash-loading-bar-container{background:color-mix(in srgb,var(--color-text)10%,transparent);opacity:0;width:200px;height:4px;animation:.5s 1s forwards splashFadeIn;position:relative;overflow:hidden}.splash-loading-bar{background:var(--color-accent);width:0;height:100%;animation:1.5s ease-out 1.5s forwards splashLoad;position:absolute;top:0;left:0}.splash-loading-text{letter-spacing:.09em;text-transform:uppercase;color:color-mix(in srgb,var(--color-text)70%,transparent);opacity:0;align-items:center;font-size:.875rem;animation:.5s 1s forwards splashFadeIn;display:flex}@keyframes splashFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes splashRevealChar{to{max-width:1.5em}}@keyframes splashLoad{0%{width:0}40%{width:60%}to{width:100%;box-shadow:0 0 10px var(--color-accent)}}@media (prefers-reduced-motion:reduce){html:not(.skip-splash) .krd-brand{opacity:1;animation:none;transform:none}.splash-bracket,.splash-slash,.splash-char,.splash-loading-bar-container,.splash-loading-bar,.splash-loading-text{opacity:1;width:100%;max-width:none;animation:none}}
