.resume-module__gFlEia__viewport{--mono:var(--font-jetbrains-mono), "JetBrains Mono", "Commit Mono", ui-monospace, "SF Mono", Menlo, monospace;background:radial-gradient(900px 500px at 12% -10%, #ffffff8c, transparent 65%), radial-gradient(700px 500px at 110% 110%, #d628280d, transparent 70%), var(--paper);color:var(--ink);font-family:var(--mono);-webkit-font-smoothing:antialiased;font-feature-settings:"ss02", "ss03", "cv02", "cv11", "zero";justify-content:center;min-height:100vh;padding:56px 24px 96px;font-size:13.5px;font-weight:400;line-height:1.6;display:flex}.resume-module__gFlEia__viewport a{color:inherit;text-decoration:none}.resume-module__gFlEia__frame{flex-direction:column;width:100%;max-width:880px;animation:.55s cubic-bezier(.2,.7,.2,1) both resume-module__gFlEia__rise;display:flex}.resume-module__gFlEia__page{background:var(--paper);width:100%;padding:48px 68px;position:relative;box-shadow:inset 0 1px #fff9,0 36px 90px -40px #50280a47,0 10px 28px -18px #50280a2e}@keyframes resume-module__gFlEia__rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.resume-module__gFlEia__meta{color:var(--ink-3);letter-spacing:.02em;padding-left:24px;font-size:11px;line-height:1.3;display:flex}.resume-module__gFlEia__metaFiles{flex-wrap:wrap;justify-content:flex-start;gap:0 2px;width:100%;display:flex}.resume-module__gFlEia__tag{color:var(--ink-3);background:var(--rule-soft);letter-spacing:.02em;border-radius:5px 5px 0 0;margin-bottom:-1px;padding:7px 14px 9px;font-size:11px;transition:color .15s,background .15s}.resume-module__gFlEia__tag:hover{color:var(--red-deep)}.resume-module__gFlEia__tagActive{color:var(--ink);background:var(--paper);cursor:default;-webkit-user-select:none;user-select:none;font-weight:600;box-shadow:inset 0 1px #ffffff80,0 -10px 20px -10px #50280a38}.resume-module__gFlEia__tagActive:hover{color:var(--ink)}.resume-module__gFlEia__masthead{border-bottom:1px solid var(--rule);grid-template-columns:1fr auto;align-items:start;gap:0 24px;padding-bottom:22px;display:grid}.resume-module__gFlEia__name{font-family:var(--mono);letter-spacing:-.04em;color:var(--ink);margin:0;font-size:46px;font-weight:700;line-height:1}.resume-module__gFlEia__heart{color:var(--red);-webkit-user-select:none;user-select:none;align-self:start;font-size:22px;line-height:1;transform:translateY(8px)}.resume-module__gFlEia__tagline{font-family:var(--mono);color:var(--ink-2);text-wrap:balance;grid-column:1/-1;max-width:60ch;margin:14px 0 0;font-size:14.5px;font-weight:400;line-height:1.55}.resume-module__gFlEia__tagline:before{content:"> ";color:var(--red);font-weight:600}.resume-module__gFlEia__contact{font-family:var(--mono);color:var(--ink-2);flex-wrap:wrap;grid-column:1/-1;align-items:baseline;margin-top:18px;font-size:12px;font-weight:400;display:flex}.resume-module__gFlEia__contact a{white-space:nowrap;transition:color .15s}.resume-module__gFlEia__contact a:hover{color:var(--red-deep)}.resume-module__gFlEia__contact .resume-module__gFlEia__sep{color:var(--ink-3);-webkit-user-select:none;user-select:none;margin:0 11px}.resume-module__gFlEia__section{margin-top:36px}.resume-module__gFlEia__sectionTitle{font-family:var(--mono);color:var(--ink);text-transform:uppercase;letter-spacing:.22em;align-items:center;gap:14px;margin-bottom:18px;font-size:11px;font-weight:700;display:flex}.resume-module__gFlEia__sectionTitle:before{content:"§";color:var(--red);letter-spacing:0;font-size:14px;font-weight:700;transform:translateY(-1px)}.resume-module__gFlEia__sectionTitle:after{content:"";background:var(--rule-soft);flex:1;height:1px}.resume-module__gFlEia__entries{margin:0;padding:0;list-style:none}.resume-module__gFlEia__entry{border-top:1px dashed var(--rule-soft);grid-template-columns:44px 1fr 110px;align-items:start;gap:0 28px;padding:18px 0;display:grid}.resume-module__gFlEia__entry:first-child{border-top:0;padding-top:6px}.resume-module__gFlEia__num{font-family:var(--mono);color:var(--ink-3);font-variant-numeric:tabular-nums;letter-spacing:-.04em;padding-top:6px;font-size:30px;font-weight:300;line-height:1;transition:color .25s}.resume-module__gFlEia__current .resume-module__gFlEia__num{color:var(--red);font-weight:500}.resume-module__gFlEia__body{min-width:0}.resume-module__gFlEia__company{font-family:var(--mono);letter-spacing:-.025em;color:var(--ink);align-items:center;gap:10px;margin:0 0 4px;font-size:17px;font-weight:700;line-height:1.2;display:flex}.resume-module__gFlEia__company a{transition:color .15s}.resume-module__gFlEia__company a:hover{color:var(--red-deep)}.resume-module__gFlEia__current .resume-module__gFlEia__pip{background:var(--red);border-radius:50%;flex:none;width:7px;height:7px;animation:2.4s ease-in-out infinite resume-module__gFlEia__pulse;box-shadow:0 0 0 4px #d6282829}@keyframes resume-module__gFlEia__pulse{0%,to{box-shadow:0 0 0 4px #d6282829}50%{box-shadow:0 0 0 7px #d628280a}}.resume-module__gFlEia__role{font-family:var(--mono);color:var(--ink-3);text-transform:uppercase;letter-spacing:.12em;margin:0 0 10px;font-size:12px;font-weight:500}.resume-module__gFlEia__desc{font-family:var(--mono);color:var(--ink);text-wrap:pretty;max-width:62ch;margin:0;font-size:13.5px;font-weight:400;line-height:1.65}.resume-module__gFlEia__desc strong{color:var(--ink);background:#d6282814;border-radius:2px;padding:0 .15em;font-weight:700}.resume-module__gFlEia__desc em{color:var(--ink-2);font-style:italic}.resume-module__gFlEia__dates{font-family:var(--mono);color:var(--ink-3);text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;letter-spacing:.02em;padding-top:10px;font-size:11.5px;font-weight:500}.resume-module__gFlEia__dates .resume-module__gFlEia__present{color:var(--red);font-weight:700}.resume-module__gFlEia__skills{grid-template-columns:max-content 1fr;gap:8px 22px;margin-top:6px;font-size:13.5px;line-height:1.6;display:grid}.resume-module__gFlEia__skills dt{font-family:var(--mono);text-transform:uppercase;letter-spacing:.14em;color:var(--ink-3);white-space:nowrap;padding-top:3px;font-size:11px;font-weight:700}.resume-module__gFlEia__skills dt:after{content:" >";color:var(--red);font-weight:700}.resume-module__gFlEia__skills dd{color:var(--ink);margin:0}.resume-module__gFlEia__skills dd .resume-module__gFlEia__sep{color:var(--ink-3);opacity:.7;margin:0 .35em}.resume-module__gFlEia__colophon{border-top:1px solid var(--rule-soft);font-family:var(--mono);color:var(--ink-3);letter-spacing:.04em;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;margin-top:40px;padding-top:14px;font-size:10.5px;display:flex}.resume-module__gFlEia__colophon>span{white-space:nowrap}.resume-module__gFlEia__heartMini{color:var(--red);font-size:12px}@media (prefers-color-scheme:dark){.resume-module__gFlEia__page{box-shadow:0 36px 90px -40px #0009,0 10px 28px -18px #0006}.resume-module__gFlEia__desc strong{background:#ff7a681f}.resume-module__gFlEia__tag{color:#f5edcb66;background:#00000047}.resume-module__gFlEia__tagActive{background:var(--paper);color:var(--ink)}}@media (max-width:760px){.resume-module__gFlEia__viewport{padding:16px 8px 64px}.resume-module__gFlEia__page{padding:36px 26px}.resume-module__gFlEia__name{font-size:34px}.resume-module__gFlEia__tagline{font-size:13px}.resume-module__gFlEia__entry{grid-template-columns:30px 1fr;gap:0 14px}.resume-module__gFlEia__num{padding-top:4px;font-size:22px}.resume-module__gFlEia__dates{text-align:left;grid-column:2;margin-top:6px;padding-top:6px}.resume-module__gFlEia__skills{grid-template-columns:1fr;gap:4px 0}.resume-module__gFlEia__skills dt{margin-top:8px;padding-top:0}.resume-module__gFlEia__contact{font-size:11.5px}.resume-module__gFlEia__contact .resume-module__gFlEia__sep{margin:0 9px}.resume-module__gFlEia__meta{scrollbar-width:none;padding-left:16px;font-size:10px;overflow-x:auto}.resume-module__gFlEia__meta::-webkit-scrollbar{display:none}.resume-module__gFlEia__metaFiles{flex-wrap:nowrap;width:max-content}.resume-module__gFlEia__tag{white-space:nowrap;flex:none;padding:6px 10px 8px}}@media print{@page{size:Letter;margin:.35in}body{background:#fff}.resume-module__gFlEia__viewport{--paper:#fff;--ink:#0f0f0f;--ink-2:#3a3a3a;--ink-3:#777;--rule:#0003;--rule-soft:#0000001a;--red:#b91c1c;--red-deep:#7f1010;background:#fff;padding:0;font-size:9px;line-height:1.4;display:block}.resume-module__gFlEia__frame{max-width:none;animation:none}.resume-module__gFlEia__page{box-shadow:none;padding:0}.resume-module__gFlEia__viewport a{color:inherit}.resume-module__gFlEia__current .resume-module__gFlEia__pip{display:none}.resume-module__gFlEia__desc strong{background:0 0;padding:0;font-weight:700}.resume-module__gFlEia__meta{display:none}.resume-module__gFlEia__masthead{gap:0 12px;padding-bottom:7px}.resume-module__gFlEia__name{letter-spacing:-.04em;font-size:24px;line-height:1}.resume-module__gFlEia__heart{font-size:13px;transform:translateY(3px)}.resume-module__gFlEia__tagline{margin-top:5px;font-size:9.5px;line-height:1.35}.resume-module__gFlEia__contact{margin-top:6px;font-size:8px}.resume-module__gFlEia__contact .resume-module__gFlEia__sep{margin:0 5px}.resume-module__gFlEia__section{margin-top:9px}.resume-module__gFlEia__sectionTitle{letter-spacing:.18em;gap:8px;margin-bottom:5px;font-size:8px}.resume-module__gFlEia__sectionTitle:before{font-size:10px}.resume-module__gFlEia__entry{break-inside:avoid;border-top-style:dotted;grid-template-columns:22px 1fr 78px;gap:0 12px;padding:4px 0}.resume-module__gFlEia__entry:first-child{border-top:0;padding-top:2px}.resume-module__gFlEia__num{padding-top:2px;font-size:14px}.resume-module__gFlEia__company{gap:6px;margin-bottom:0;font-size:11px}.resume-module__gFlEia__role{letter-spacing:.1em;margin-bottom:2px;font-size:8px}.resume-module__gFlEia__desc{max-width:none;font-size:9px;line-height:1.4}.resume-module__gFlEia__dates{padding-top:3px;font-size:8px}.resume-module__gFlEia__skills{gap:3px 14px;font-size:9px;line-height:1.4}.resume-module__gFlEia__skills dt{letter-spacing:.1em;padding-top:1px;font-size:8px}.resume-module__gFlEia__colophon{margin-top:8px;padding-top:5px;font-size:7.5px}}
