@font-face{font-family:"Source Sans 3";font-weight:400;font-style:normal;src:url(/assets/SourceSans3-Regular-BqTI-3mA.woff2)format("woff2")}@font-face{font-family:"Source Sans 3";font-weight:400;font-style:italic;src:url(/assets/SourceSans3-It-CKnmOrYX.woff2)format("woff2")}@font-face{font-family:"Source Sans 3";font-weight:600;font-style:normal;src:url(/assets/SourceSans3-Semibold-BQV5CVwD.woff2)format("woff2")}@font-face{font-family:"Source Sans 3";font-weight:700;font-style:normal;src:url(/assets/SourceSans3-Bold-gn7Db9ke.woff2)format("woff2")}@page{size:Letter;margin:.5in .6in}@media print{.resume{--font-size:10.4pt;--line-height:1.34;--header-gap:10pt;--section-gap:12pt;--job-gap:8pt;--group-gap:7pt;--bullet-gap:2.6pt;--max-width:none;--pad:0}}@media screen{.resume{--font-size:17px;--line-height:1.5;--header-gap:24px;--section-gap:32px;--job-gap:20px;--group-gap:14px;--bullet-gap:6px;--max-width:46rem;--pad:48px 16px 64px}}:root:has(.resume){--bg:#fff;--ink:#1a1d21;--muted:#5b626b;--accent:#1f5f8b;--rule:#d6dbe0}@media screen and (prefers-color-scheme:dark){:root:has(.resume){--bg:#111315;--ink:#e4e7ea;--muted:#9aa3ad;--accent:#7cb7e0;--rule:#2e3338}}:root:has(.resume){background:var(--bg)}:root:has(.resume) body{background:var(--bg)}.resume{-webkit-print-color-adjust:exact;print-color-adjust:exact;box-sizing:border-box;max-width:var(--max-width);padding:var(--pad);color:var(--ink);font-family:"Source Sans 3",Helvetica Neue,Arial,sans-serif;font-size:var(--font-size);line-height:var(--line-height);font-variant-ligatures:none;text-rendering:geometricprecision;margin:0 auto}.resume *{box-sizing:border-box}.resume a{color:inherit}.resume header{margin-bottom:var(--header-gap)}.resume h1{margin:0;font-size:2.115em;font-weight:700;line-height:1.1}.resume .headline{color:var(--accent);margin:.17em 0 .33em;font-size:1.154em;font-weight:400}.resume .contact{color:var(--muted);margin:0;font-size:.962em}.resume .contact a{text-decoration:none}.resume h2{text-transform:uppercase;color:var(--accent);border-bottom:.75pt solid var(--rule);margin:var(--section-gap) 0 .6em;padding-bottom:.2em;font-size:.923em;font-weight:700}.resume p{margin:0 0 .38em}.resume .job{margin-bottom:var(--job-gap)}.resume .job-head,.resume .role{justify-content:space-between;align-items:baseline;gap:1.15em;display:flex}.resume .company{margin:0;font-size:1.077em;font-weight:700}.resume .co-title{font-size:.946em;font-weight:400}.resume .meta{color:var(--muted);white-space:nowrap;font-size:.923em}.resume .role{margin:.38em 0 .19em}.resume .role-title{margin:0;font-size:1.019em;font-weight:600}.resume .intro{margin:.19em 0}.resume h4{color:var(--muted);margin:var(--group-gap) 0 .24em;font-size:.942em;font-weight:600}.resume ul{margin:0;padding-left:1.15em}.resume li{margin:0 0 var(--bullet-gap);padding-left:.1em}.resume li::marker{color:var(--muted)}.resume strong{font-weight:600}.resume .job.short,.resume li{break-inside:avoid}.resume h2,.resume .job-head,.resume .role,.resume h4{break-after:avoid}.resume .section-skills ul{padding-left:0;list-style:none}@media screen and (width<=560px){.resume .job-head,.resume .role{flex-direction:column;gap:0}.resume .meta{white-space:normal}}html,body{background:#000;min-height:100%;margin:0}.not-found{color:#aaa;padding:16px;font-family:system-ui,sans-serif}.not-found a{color:inherit}
