:root{--width-base:360;--width-current:100vmin;--width-multiplier:var(--width-current) / var(--width-base);--theme-bg:#0e100f;--theme-bg-elevated:#121212;--theme-surface:#181818;--theme-text:#f3efe6;--theme-text-muted:#8c877c;--theme-line:#f3efe61f;--theme-soft:#f3efe6;--theme-ink:#0e100f;--theme-duration:.95s}@media (width>=840px){:root{--width-base:1440;--width-current:100vw}}@media (width>=840px) and (aspect-ratio>=1440/786){:root{--width-base:786;--width-current:100vh}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}::selection{color:#0e100f;background-color:#c6ff3d}html{background-color:var(--theme-bg,#0e100f);transition:background-color var(--theme-duration) cubic-bezier(.16, 1, .3, 1);scroll-behavior:auto;font-size:16px}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Montserrat,sans-serif;font-weight:400;font-size:calc(15 * var(--width-multiplier));color:var(--theme-text,#f3efe6);background-color:var(--theme-bg,#0e100f);transition:color var(--theme-duration) cubic-bezier(.16, 1, .3, 1), background-color var(--theme-duration) cubic-bezier(.16, 1, .3, 1);line-height:1.6;overflow-x:hidden}img,svg{max-width:100%;display:block}button{font:inherit}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline-offset:3px;outline:2px solid #c6ff3d}#app{min-height:100vh;position:relative}main{z-index:1;position:relative}html.is-locked{overscroll-behavior:none;overflow:hidden}html.is-locked body{overscroll-behavior:none;width:100%;position:fixed;top:0;left:0;right:0;overflow:hidden}.layout{padding-right:calc(20 * var(--width-multiplier));padding-left:calc(20 * var(--width-multiplier));width:100%;max-width:1600px;margin-left:auto;margin-right:auto}@media (width>=840px){.layout{padding-right:calc(64 * var(--width-multiplier));padding-left:calc(64 * var(--width-multiplier))}}@media (width>=840px) and (aspect-ratio>=1440/786){.layout{max-width:calc(1200 * var(--width-multiplier))}}.section-label{font-weight:600;font-size:calc(12 * var(--width-multiplier));letter-spacing:.18em;text-transform:uppercase;color:#c6ff3d}.hero,.about,.skills,.experience,.work,.contact,.sitenav{transition:color var(--theme-duration) cubic-bezier(.16, 1, .3, 1)}.about,.experience,.work,.contact,.skills__item,.work__card,.sitenav__progress{transition:color var(--theme-duration) cubic-bezier(.16, 1, .3, 1), background-color var(--theme-duration) cubic-bezier(.16, 1, .3, 1), border-color var(--theme-duration) cubic-bezier(.16, 1, .3, 1), box-shadow var(--theme-duration) cubic-bezier(.16, 1, .3, 1)}.loader{z-index:50;color:#f3efe6;will-change:transform;cursor:default;touch-action:none;background-color:#0e100f;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:fixed;top:0;left:0;overflow:hidden}.loader__veil{z-index:1;will-change:transform;pointer-events:none;background-color:#c6ff3d;border-radius:50%;width:34vmin;height:34vmin;position:absolute;top:50%;left:50%}.loader__progress{left:calc(20 * var(--width-multiplier));top:calc(20 * var(--width-multiplier));z-index:3;font-variant-numeric:tabular-nums;font-weight:700;font-size:calc(48 * var(--width-multiplier));letter-spacing:-.06em;line-height:1;position:absolute}@media (width>=840px){.loader__progress{left:calc(64 * var(--width-multiplier));top:calc(40 * var(--width-multiplier));font-size:calc(88 * var(--width-multiplier))}}.loader__stage{z-index:2;pointer-events:none;-webkit-user-select:none;user-select:none;place-items:center;display:grid;position:relative}.loader__clip{clip-path:circle(0);will-change:clip-path;grid-area:1/1;place-items:center;display:grid}.loader__word{max-width:min(94vw, 980 * var(--width-multiplier));letter-spacing:-.06em;text-transform:uppercase;flex-wrap:wrap;justify-content:center;align-items:baseline;font-size:clamp(40px,10.5vw,120px);font-weight:800;line-height:.92;display:flex}.loader__word--outer{color:#c6ff3d;grid-area:1/1}.loader__word--inner{color:#0e100f}.loader__letter,.loader__letter-glyph{will-change:transform;display:inline-block}.backdrop{z-index:0;opacity:0;pointer-events:none;transition:opacity .45s cubic-bezier(.16,1,.3,1);position:fixed;inset:0;overflow:hidden}.backdrop__canvas{width:100%;height:100%;position:absolute;inset:0}.backdrop.is-ready{opacity:1}@media (width<=839px){.backdrop{display:none}}.sitenav{z-index:20;pointer-events:none;position:fixed;top:0;left:0;right:0}.sitenav__progress{z-index:2;background-color:var(--theme-line,#f3efe61f);pointer-events:none;width:100%;height:3px;position:absolute;top:0;left:0;right:0;overflow:hidden}.sitenav__progress-fill{background-color:#c6ff3d;width:0;height:100%}.sitenav__inner{padding-top:calc(14 * var(--width-multiplier));padding-bottom:calc(14 * var(--width-multiplier));min-height:calc(56 * var(--width-multiplier));justify-content:space-between;align-items:center;display:flex}@media (width>=840px){.sitenav__inner{padding-top:calc(22 * var(--width-multiplier));padding-bottom:calc(22 * var(--width-multiplier));min-height:calc(80 * var(--width-multiplier))}}.sitenav__logo{font-weight:700;font-size:calc(16 * var(--width-multiplier));letter-spacing:.08em}.sitenav__links{gap:calc(28 * var(--width-multiplier));display:none}@media (width>=840px){.sitenav__links{display:flex}}.sitenav__link{opacity:.62;transition:opacity .2s cubic-bezier(.16,1,.3,1),color .2s cubic-bezier(.16,1,.3,1)}.sitenav__link:hover{opacity:1}.sitenav__link.is-active{color:#c6ff3d;opacity:1}.sitenav__langs{pointer-events:auto;gap:calc(10 * var(--width-multiplier));display:flex}.sitenav__lang{opacity:.62;transition:opacity .2s cubic-bezier(.16,1,.3,1),color .2s cubic-bezier(.16,1,.3,1)}.sitenav__lang:hover{opacity:1}.sitenav__lang.is-active{color:#c6ff3d;opacity:1}.sitenav__logo,.sitenav__link,.sitenav__lang{color:var(--theme-text,#f3efe6);cursor:pointer;pointer-events:auto;background-color:#0000;border:0}.sitenav__link,.sitenav__lang{font-weight:500;font-size:calc(12 * var(--width-multiplier));letter-spacing:.08em;text-transform:uppercase}.hero{padding-top:calc(88 * var(--width-multiplier));padding-bottom:calc(88 * var(--width-multiplier));align-items:flex-end;min-height:100svh;display:flex;position:relative;overflow:hidden}.hero__inner{z-index:1;will-change:transform;width:100%;position:relative}.hero__kicker{margin-bottom:calc(18 * var(--width-multiplier));font-weight:600;font-size:calc(12 * var(--width-multiplier));letter-spacing:.16em;text-transform:uppercase;color:#c6ff3d}.hero__title{font-weight:800;font-size:calc(44 * var(--width-multiplier));letter-spacing:-.06em;text-transform:uppercase;margin:0;line-height:.92}@media (width>=840px){.hero__title{font-size:calc(112 * var(--width-multiplier))}}.hero__title-line{display:block}.hero__meta{margin-top:calc(24 * var(--width-multiplier));gap:calc(6 * var(--width-multiplier));flex-direction:column;display:flex}@media (width>=840px){.hero__meta{margin-top:calc(28 * var(--width-multiplier));max-width:calc(920 * var(--width-multiplier));flex-direction:row;justify-content:space-between;align-items:center}}.hero__years{color:var(--theme-text-muted,#8c877c)}.hero__lead{margin-top:calc(22 * var(--width-multiplier));max-width:calc(560 * var(--width-multiplier));font-size:calc(15 * var(--width-multiplier));color:var(--theme-text-muted,#8c877c);line-height:1.6}@media (width>=840px){.hero__lead{margin-top:calc(28 * var(--width-multiplier));max-width:calc(680 * var(--width-multiplier));font-size:calc(18 * var(--width-multiplier));line-height:1.55556}}.hero__cta{margin-top:calc(28 * var(--width-multiplier));padding:calc(12 * var(--width-multiplier)) calc(22 * var(--width-multiplier));font-weight:600;font-size:calc(13 * var(--width-multiplier));letter-spacing:.04em;color:#111;cursor:pointer;background-color:#c6ff3d;border:1px solid #c6ff3d;border-radius:999px;transition:color .2s cubic-bezier(.16,1,.3,1),background-color .2s cubic-bezier(.16,1,.3,1)}.hero__cta:hover,.hero__cta:focus-visible{color:#c6ff3d;background-color:var(--theme-surface,#181818)}@media (width>=840px){.hero__cta{margin-top:calc(36 * var(--width-multiplier));padding:calc(14 * var(--width-multiplier)) calc(28 * var(--width-multiplier));font-size:calc(14 * var(--width-multiplier))}}.hero__scroll{right:calc(20 * var(--width-multiplier));bottom:calc(24 * var(--width-multiplier));z-index:1;color:var(--theme-text-muted,#8c877c);cursor:pointer;align-items:flex-end;gap:calc(10 * var(--width-multiplier));background-color:#0000;border:0;flex-direction:column;display:flex;position:absolute}@media (width>=840px){.hero__scroll{right:calc(64 * var(--width-multiplier));bottom:calc(40 * var(--width-multiplier))}}.hero__scroll-label{font-weight:500;font-size:calc(11 * var(--width-multiplier));letter-spacing:.16em;text-transform:uppercase}.hero__scroll-line{width:1px;height:calc(48 * var(--width-multiplier));transform-origin:top;background-color:#c6ff3d;animation:1.6s cubic-bezier(.65,0,.35,1) infinite hero-scroll-line;display:block}.hero__role,.hero__years{font-weight:500;font-size:calc(14 * var(--width-multiplier))}@media (width>=840px){.hero__role,.hero__years{font-size:calc(16 * var(--width-multiplier))}.hero{padding-top:calc(140 * var(--width-multiplier));padding-bottom:calc(40 * var(--width-multiplier));align-items:center}}@keyframes hero-scroll-line{0%{opacity:.25;transform:scaleY(.35)}50%{opacity:1;transform:scaleY(1)}to{opacity:.25;transform:scaleY(.35)}}@media (prefers-reduced-motion:reduce){.hero__scroll-line{animation:none}}.about{border-top:1px solid var(--theme-line,#f3efe61f);padding-top:calc(88 * var(--width-multiplier));padding-bottom:calc(88 * var(--width-multiplier))}.about__inner{will-change:transform}.about__label{margin-bottom:calc(16 * var(--width-multiplier))}.about__title{max-width:calc(920 * var(--width-multiplier));font-weight:700;font-size:calc(28 * var(--width-multiplier));letter-spacing:-.04em;line-height:1.12}@media (width>=840px){.about__title{font-size:calc(56 * var(--width-multiplier))}}.about__copy{margin-top:calc(28 * var(--width-multiplier));max-width:calc(760 * var(--width-multiplier));gap:calc(16 * var(--width-multiplier));display:grid}@media (width>=840px){.about__copy{margin-top:calc(40 * var(--width-multiplier));gap:calc(32 * var(--width-multiplier));grid-template-columns:1fr 1fr;max-width:none}}.about__text{font-size:calc(15 * var(--width-multiplier));color:var(--theme-text-muted,#8c877c);line-height:1.6}@media (width>=840px){.about__text{font-size:calc(16 * var(--width-multiplier));line-height:1.625}}.about__stats{margin-top:calc(40 * var(--width-multiplier));gap:calc(20 * var(--width-multiplier));grid-template-columns:1fr;list-style:none;display:grid}@media (width>=840px){.about__stats{margin-top:calc(72 * var(--width-multiplier));gap:calc(24 * var(--width-multiplier));grid-template-columns:repeat(3,1fr)}}.about__stat{border-top:1px solid var(--theme-line,#f3efe61f);padding-top:calc(20 * var(--width-multiplier))}.about__stat-value{font-weight:700;font-size:calc(40 * var(--width-multiplier));letter-spacing:-.05em;color:#c6ff3d;line-height:1;display:block}@media (width>=840px){.about__stat-value{font-size:calc(72 * var(--width-multiplier))}}.about__stat-label{margin-top:calc(8 * var(--width-multiplier));font-size:calc(13 * var(--width-multiplier));color:var(--theme-text-muted,#8c877c);display:block}@media (width>=840px){.about{padding-top:calc(140 * var(--width-multiplier));padding-bottom:calc(140 * var(--width-multiplier))}}.skills{padding-top:calc(72 * var(--width-multiplier));padding-bottom:calc(88 * var(--width-multiplier))}.skills__inner{will-change:transform}.skills__label{margin-bottom:calc(16 * var(--width-multiplier))}.skills__title{max-width:calc(820 * var(--width-multiplier));font-weight:700;font-size:calc(28 * var(--width-multiplier));letter-spacing:-.04em;line-height:1.12}@media (width>=840px){.skills__title{font-size:calc(48 * var(--width-multiplier))}}.skills__grid{margin-top:calc(36 * var(--width-multiplier));gap:calc(32 * var(--width-multiplier));grid-template-columns:1fr;display:grid}@media (width>=840px){.skills__grid{margin-top:calc(56 * var(--width-multiplier));gap:calc(28 * var(--width-multiplier));grid-template-columns:repeat(4,1fr)}}.skills__group-title{margin-bottom:calc(16 * var(--width-multiplier));font-weight:600;font-size:calc(12 * var(--width-multiplier));letter-spacing:.14em;text-transform:uppercase;color:var(--theme-text-muted,#8c877c)}.skills__list{gap:calc(8 * var(--width-multiplier));flex-wrap:wrap;list-style:none;display:flex}.skills__item{border:1px solid var(--theme-line,#f3efe61f);padding:calc(8 * var(--width-multiplier)) calc(12 * var(--width-multiplier));font-weight:500;font-size:calc(13 * var(--width-multiplier));background-color:var(--theme-surface,#181818);will-change:transform;border-radius:999px;transition:border-color .2s cubic-bezier(.16,1,.3,1)}@media (hover:hover){.skills__item:hover{border-color:#c6ff3d}}@media (width>=840px){.skills{padding-top:calc(80 * var(--width-multiplier));padding-bottom:calc(140 * var(--width-multiplier))}}.experience{border-top:1px solid var(--theme-line,#f3efe61f);padding-top:calc(72 * var(--width-multiplier));padding-bottom:calc(88 * var(--width-multiplier))}.experience__inner{will-change:transform}.experience__label{margin-bottom:calc(16 * var(--width-multiplier))}.experience__title{max-width:calc(820 * var(--width-multiplier));font-weight:700;font-size:calc(28 * var(--width-multiplier));letter-spacing:-.04em;line-height:1.12}@media (width>=840px){.experience__title{font-size:calc(48 * var(--width-multiplier))}}.experience__list{margin-top:calc(40 * var(--width-multiplier));gap:calc(40 * var(--width-multiplier));display:grid;position:relative}@media (width>=840px){.experience__list{margin-top:calc(64 * var(--width-multiplier));padding-left:calc(24 * var(--width-multiplier));gap:calc(64 * var(--width-multiplier))}}.experience__line{opacity:.45;transform-origin:top;background-color:#c6ff3d;width:1px;height:100%;display:none;position:absolute;top:0;left:0}@media (width>=840px){.experience__line{display:block}}.experience__job{border-top:1px solid var(--theme-line,#f3efe61f);padding-top:calc(24 * var(--width-multiplier));gap:calc(16 * var(--width-multiplier));display:grid}@media (width>=840px){.experience__job{grid-template-columns:calc(320 * var(--width-multiplier)) 1fr;padding-top:calc(40 * var(--width-multiplier));gap:calc(48 * var(--width-multiplier))}}.experience__company{font-weight:700;font-size:calc(18 * var(--width-multiplier))}.experience__period{margin-top:calc(6 * var(--width-multiplier))}.experience__role{font-weight:600;font-size:calc(18 * var(--width-multiplier));letter-spacing:-.02em}@media (width>=840px){.experience__role{font-size:calc(24 * var(--width-multiplier))}}.experience__place{margin-top:calc(6 * var(--width-multiplier))}.experience__points{margin-top:calc(16 * var(--width-multiplier));gap:calc(10 * var(--width-multiplier));list-style:none;display:grid}.experience__point{padding-left:calc(16 * var(--width-multiplier));font-size:calc(14 * var(--width-multiplier));color:var(--theme-text-muted,#8c877c);line-height:1.57143;position:relative}.experience__point:before{content:"";background-color:#c6ff3d;border-radius:50%;width:6px;height:6px;position:absolute;top:.55em;left:0}.experience__period,.experience__place{font-size:calc(13 * var(--width-multiplier));color:var(--theme-text-muted,#8c877c)}@media (width>=840px){.experience{padding-top:calc(120 * var(--width-multiplier));padding-bottom:calc(140 * var(--width-multiplier))}}.work{border-top:1px solid var(--theme-line,#f3efe61f);padding-top:calc(72 * var(--width-multiplier));padding-bottom:calc(40 * var(--width-multiplier))}.work__head{margin-bottom:calc(28 * var(--width-multiplier));gap:calc(16 * var(--width-multiplier));flex-direction:column;display:flex}@media (width>=840px){.work__head{margin-bottom:calc(40 * var(--width-multiplier));flex-direction:row;justify-content:space-between;align-items:flex-end}}.work__label{margin-bottom:calc(12 * var(--width-multiplier))}.work__title{max-width:calc(720 * var(--width-multiplier));font-weight:700;font-size:calc(28 * var(--width-multiplier));letter-spacing:-.04em;line-height:1.12}@media (width>=840px){.work__title{font-size:calc(48 * var(--width-multiplier))}}.work__hint{font-weight:500;font-size:calc(12 * var(--width-multiplier));letter-spacing:.14em;text-transform:uppercase;color:var(--theme-text-muted,#8c877c);display:none}@media (width>=840px){.work__hint{display:block}}.work__pin{overflow:hidden}@media (width>=840px){.work__pin{padding-top:calc(40 * var(--width-multiplier));flex-direction:column;justify-content:center;min-height:100svh;display:flex}}.work__track{padding-right:calc(20 * var(--width-multiplier));padding-left:calc(20 * var(--width-multiplier));gap:calc(16 * var(--width-multiplier));grid-template-columns:1fr;display:grid}@media (width>=840px){.work__track{padding-right:calc(64 * var(--width-multiplier));padding-bottom:calc(80 * var(--width-multiplier));padding-left:calc(64 * var(--width-multiplier));gap:calc(24 * var(--width-multiplier));width:max-content;display:flex}}.work__card{border:1px solid var(--theme-line,#f3efe61f);border-radius:calc(20 * var(--width-multiplier));padding:calc(24 * var(--width-multiplier));min-height:calc(240 * var(--width-multiplier));color:inherit;background-color:var(--theme-bg-elevated,#121212);cursor:pointer;flex-direction:column;text-decoration:none;transition:border-color .2s cubic-bezier(.16,1,.3,1),background-color .2s cubic-bezier(.16,1,.3,1),box-shadow .45s cubic-bezier(.16,1,.3,1);display:flex}@media (width>=840px){.work__card{border-radius:calc(28 * var(--width-multiplier));padding:calc(32 * var(--width-multiplier));width:calc(420 * var(--width-multiplier));min-height:calc(460 * var(--width-multiplier));will-change:transform;flex-shrink:0}}@media (hover:hover) and (pointer:fine){.work__card:hover{box-shadow:0 calc(18 * var(--width-multiplier)) calc(40 * var(--width-multiplier)) color-mix(in srgb, var(--theme-ink) 35%, transparent);background-color:var(--theme-surface,#181818);border-color:#c6ff3d6b}.work__card:hover .work__card-index{letter-spacing:.18em}.work__card:hover .work__card-link{color:var(--theme-soft,#f3efe6);gap:calc(10 * var(--width-multiplier))}.work__card:hover .work__card-link:after{opacity:1;transform:translate(0)}}.work__card-index{font-weight:600;font-size:calc(13 * var(--width-multiplier));letter-spacing:.12em;color:#c6ff3d;transition:letter-spacing .45s cubic-bezier(.16,1,.3,1)}.work__card-tag{margin-top:calc(24 * var(--width-multiplier));font-size:calc(12 * var(--width-multiplier));letter-spacing:.08em;text-transform:uppercase;color:var(--theme-text-muted,#8c877c)}.work__card-title{margin-top:calc(10 * var(--width-multiplier));font-weight:700;font-size:calc(24 * var(--width-multiplier));letter-spacing:-.03em}@media (width>=840px){.work__card-title{font-size:calc(32 * var(--width-multiplier))}}.work__card-text{margin-top:calc(12 * var(--width-multiplier));font-size:calc(14 * var(--width-multiplier));color:var(--theme-text-muted,#8c877c);line-height:1.57143}.work__card-link{padding-top:calc(24 * var(--width-multiplier));font-weight:600;font-size:calc(13 * var(--width-multiplier));letter-spacing:.06em;text-transform:uppercase;color:#c6ff3d;align-items:center;gap:calc(6 * var(--width-multiplier));margin-top:auto;transition:color .2s cubic-bezier(.16,1,.3,1),gap .2s cubic-bezier(.16,1,.3,1);display:inline-flex}.work__card-link:after{content:"→";opacity:0;transform:translateX(calc(-4 * var(--width-multiplier)));transition:transform .2s cubic-bezier(.16,1,.3,1),opacity .2s cubic-bezier(.16,1,.3,1)}@media (width>=840px){.work{padding-top:0;padding-bottom:0}}.contact{border-top:1px solid var(--theme-line,#f3efe61f);padding-top:calc(88 * var(--width-multiplier));padding-bottom:calc(28 * var(--width-multiplier))}.contact__label{margin-bottom:calc(16 * var(--width-multiplier))}.contact__title{max-width:calc(980 * var(--width-multiplier));font-weight:700;font-size:calc(32 * var(--width-multiplier));letter-spacing:-.045em;line-height:1.1}@media (width>=840px){.contact__title{font-size:calc(64 * var(--width-multiplier))}}.contact__text{margin-top:calc(24 * var(--width-multiplier));max-width:calc(640 * var(--width-multiplier));font-size:calc(15 * var(--width-multiplier));color:var(--theme-text-muted,#8c877c);line-height:1.6}@media (width>=840px){.contact__text{margin-top:calc(32 * var(--width-multiplier));font-size:calc(18 * var(--width-multiplier));line-height:1.55556}}.contact__links{margin-top:calc(28 * var(--width-multiplier));gap:calc(12 * var(--width-multiplier)) calc(20 * var(--width-multiplier));flex-wrap:wrap;list-style:none;display:flex}.contact__link{font-weight:600;font-size:calc(15 * var(--width-multiplier));letter-spacing:-.02em;color:#c6ff3d;align-items:center;text-decoration:none;transition:color .2s cubic-bezier(.16,1,.3,1);display:inline-flex}.contact__link:hover,.contact__link:focus-visible{color:var(--theme-soft,#f3efe6)}@media (width>=840px){.contact__link{font-size:calc(18 * var(--width-multiplier))}}.contact__note{margin-top:calc(28 * var(--width-multiplier));font-size:calc(13 * var(--width-multiplier));color:var(--theme-text-muted,#8c877c)}.contact__footer{margin-top:calc(72 * var(--width-multiplier));border-top:1px solid var(--theme-line,#f3efe61f);padding-top:calc(20 * var(--width-multiplier));padding-bottom:calc(12 * var(--width-multiplier));font-size:calc(12 * var(--width-multiplier));letter-spacing:.04em;color:var(--theme-text-muted,#8c877c);justify-content:space-between;align-items:center;display:flex}@media (width>=840px){.contact{padding-top:calc(140 * var(--width-multiplier));padding-bottom:calc(40 * var(--width-multiplier))}}
