:root{--night: #0E0C0A;--panel: #171310;--cream: #F3ECDF;--cream-2: rgba(243, 236, 223, .72);--line: rgba(243, 236, 223, .16);--live: #8EF0C9;--amber: #FFB15C;--panel-surface: rgba(23, 19, 16, .92);--font-display: "Geist", -apple-system, "Helvetica Neue", Arial, sans-serif;--font-reading: "Source Serif 4", Georgia, "Times New Roman", serif;--font-mono: "Geist Mono", "SF Mono", ui-monospace, Menlo, monospace;--text-reading-size: 17px;--text-reading-line: 1.55;--text-reading-measure: 62ch;--text-label-size: 11px;--text-label-tracking: .12em;--caption-max: 560px;--text-h1: clamp(2.25rem, 1.65rem + 2.4vw, 4rem);--text-h2: clamp(1.625rem, 1.3rem + 1.2vw, 2.5rem);--text-h3: clamp(1.25rem, 1.1rem + .5vw, 1.625rem);--text-h4: 1.125rem;--space-1: 4px;--space-2: 8px;--space-3: 16px;--space-4: 24px;--space-5: 32px;--space-6: 48px;--space-7: 64px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 14px}@font-face{font-family:Geist;src:url(/assets/Geist-Variable-XYSA8T6X.woff2) format("woff2-variations"),url(/assets/Geist-Variable-XYSA8T6X.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Geist Mono;src:url(/assets/GeistMono-Variable-Bfd04Z1I.woff2) format("woff2-variations"),url(/assets/GeistMono-Variable-Bfd04Z1I.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:"Source Serif 4";src:url(/assets/SourceSerif4-Variable-uwa3npmY.woff2) format("woff2-variations"),url(/assets/SourceSerif4-Variable-uwa3npmY.woff2) format("woff2");font-weight:200 900;font-style:normal;font-optical-sizing:auto;font-display:swap}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body,h1,h2,h3,h4,p,figure,blockquote,dl,dd{margin:0}html,body{min-height:100%}body{background:var(--night);color:var(--cream);font-family:var(--font-display);font-weight:300;line-height:1.4;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img,picture,video,canvas,svg{display:block;max-width:100%}button,input,textarea,select{font:inherit;color:inherit}a{color:inherit;text-decoration:none}ul,ol{list-style:none;margin:0;padding:0}.label{font-family:var(--font-mono);font-size:var(--text-label-size);letter-spacing:var(--text-label-tracking);text-transform:uppercase;color:var(--cream-2);font-weight:500}.read{font-family:var(--font-reading);font-size:var(--text-reading-size);line-height:var(--text-reading-line);max-width:var(--text-reading-measure);color:var(--cream);font-optical-sizing:auto}.read p+p{margin-top:1em}.panel{background:var(--panel-surface);border:1px solid var(--line);border-radius:var(--radius-md);padding:var(--space-4)}.caption{max-width:var(--caption-max)}.value-out,.live{color:var(--live)}.value-in{color:var(--cream)}:focus{outline:none}:focus-visible{outline:2px solid var(--live);outline-offset:2px;border-radius:var(--radius-sm)}.skip{position:absolute;top:0;left:0;transform:translateY(calc(-100% - 12px));background:var(--night);color:var(--cream);border:1px solid var(--line);padding:var(--space-2) var(--space-3);margin:var(--space-2);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--text-label-size);letter-spacing:var(--text-label-tracking);text-transform:uppercase;z-index:1000;transition:transform .15s ease}.skip:focus{transform:translateY(0)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}body{padding:48px 16px 96px;display:flex;justify-content:center}.resume-page{width:100%;max-width:820px}.resume-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:36px}.resume-bar__home{font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;color:var(--cream-2)}.resume-bar__home:hover{color:var(--cream)}.resume-print-btn{border:1px solid var(--line);background:#120e0c75;border-radius:999px;padding:10px 20px;font-size:13.5px;font-weight:500;color:var(--cream);cursor:pointer}.resume-print-btn:hover{border-color:var(--cream-2)}.resume{border:1px solid var(--line);border-radius:18px;background:var(--panel-surface);padding:48px}.resume__header{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;flex-wrap:wrap;padding-bottom:24px;border-bottom:1px solid var(--line);margin-bottom:24px}.resume__name{font-family:var(--font-display);font-weight:500;font-size:32px;letter-spacing:-.03em;margin-bottom:6px}.resume__role{font-family:var(--font-reading);font-size:16px;color:var(--cream-2)}.resume__contact{font-family:var(--font-mono);font-size:12px;letter-spacing:.04em;color:var(--cream-2);text-align:right;line-height:1.7}.resume__contact a:hover{color:var(--cream)}.resume__summary{font-size:16px;margin-bottom:36px;max-width:none}.resume__section{margin-bottom:32px}.resume__section:last-child{margin-bottom:0}.resume__section-label,.resume__entry{margin-bottom:14px}.resume__entry:last-child{margin-bottom:0}.resume__entry-head{display:flex;justify-content:space-between;gap:16px;font-family:var(--font-display);font-weight:500;font-size:15px}.resume__entry-when{color:var(--cream-2);font-weight:400;white-space:nowrap}.resume__entry-body{font-size:15px;line-height:1.5;color:var(--cream-2);margin-top:4px;max-width:none}.resume__work-row{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:4px 16px;padding:10px 0;border-top:1px solid var(--line)}.resume__work-row:first-of-type{border-top:none}.resume__work-title{font-family:var(--font-display);font-weight:500;font-size:15px}.resume__work-inout{font-family:var(--font-mono);font-size:13px;white-space:nowrap;color:var(--cream-2)}@media(max-width:560px){.resume{padding:32px 24px}.resume__header{flex-direction:column}.resume__contact{text-align:left}.resume__work-row{flex-direction:column;align-items:flex-start;gap:2px}.resume__work-inout{white-space:normal}.resume__entry-head{flex-direction:column;gap:2px}}.resume__work-inout .live{color:var(--live)}.resume__skills{font-size:15px;line-height:1.6;color:var(--cream-2);max-width:none}.resume__audience{font-family:var(--font-mono);font-size:12px;color:var(--cream-2);margin-top:8px}[data-flag=wwc][hidden]{display:none}@media print{@page{size:letter;margin:.5in}.resume-bar,.skip{display:none!important}html,body{background:#fff;padding:0;display:block}.resume-page{max-width:none}.resume{border:none;border-radius:0;background:#fff;padding:0}.resume__header,.resume__work-row{border-color:#ccc}.resume *{color:#111!important}.resume__work-inout .live{color:#111!important;font-weight:600}.resume__name{font-size:24px}.resume__summary{font-size:12.5px;margin-bottom:18px}.resume__section{margin-bottom:16px}.resume__section-label{margin-bottom:8px;font-size:10px}.resume__entry{margin-bottom:8px}.resume__entry-head,.resume__entry-body,.resume__work-title,.resume__work-inout,.resume__skills,.resume__audience{font-size:11px}.resume__contact{font-size:10.5px}.resume__work-row{padding:5px 0}}
