@import"https://fonts.googleapis.com/css2?family=Oswald:wght@400;500;600&family=Roboto+Condensed:wght@400;500&family=Source+Code+Pro:wght@400;600;700&display=swap";:root{font-family:Source Code Pro,Courier New,monospace;color:#d9d9d9;background:#020202;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--paper-width: 816px;--paper-height: 1056px;--paper-color: #faf8f4;--ink: #555555;--ink-strong: #313131;--ink-soft: #6a6a6a;--link: #363636;--link-hover: #141414}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;-webkit-text-size-adjust:none;text-size-adjust:none}body{min-height:100vh;overflow:hidden;background:radial-gradient(circle at center,rgba(255,255,255,.03),transparent 30%),#020202}a{color:inherit}.app-shell{position:relative;min-height:100vh;overflow:hidden;isolation:isolate}.ambient-gradient{position:absolute;inset:auto;width:36rem;height:36rem;border-radius:999px;background:radial-gradient(circle,rgba(255,255,255,.035),transparent 68%);filter:blur(56px);opacity:.4;pointer-events:none}.ambient-gradient--left{top:-10rem;left:-10rem}.ambient-gradient--right{right:-12rem;bottom:-12rem}.stage{position:relative;display:grid;place-items:center;min-height:100vh;padding:1.5rem;overflow:hidden;perspective:1800px;touch-action:manipulation}.stage--zoomed,.stage--zoomed .paper-shell,.stage--zoomed .paper-frame{touch-action:none}.stage__instructions{position:absolute;top:.9rem;left:50%;transform:translate(-50%);padding:0;color:#ffffff6b;font-size:.64rem;letter-spacing:.08em;text-transform:uppercase;pointer-events:none;white-space:nowrap;text-shadow:0 1px 10px rgba(0,0,0,.45)}.paper-orbit{position:relative;transform:translate3d(var(--shell-drift-x, 0px),var(--shell-drift-y, 0px),0);transition:transform .22s ease;will-change:transform}.paper-shell{position:relative;opacity:0;animation:paper-enter .9s cubic-bezier(.22,1,.36,1) .12s forwards;will-change:transform}.paper-orbit--anchored .paper-shell{opacity:1;transform:none}.paper-shell:before{content:"";position:absolute;left:50%;bottom:-2.7rem;width:76%;height:2.8rem;border-radius:999px;background:radial-gradient(ellipse at center,#00000057,#0003 42%,#0000 78%);transform:translate(-50%) scale(.94);filter:blur(16px);opacity:0;animation:shadow-enter 1.05s cubic-bezier(.22,1,.36,1) .18s forwards;pointer-events:none}.paper-frame{position:absolute;top:0;left:0;transform-origin:top left;transition:transform .14s ease,filter .18s ease,box-shadow .18s ease;will-change:transform;--pan-x: 0px;--pan-y: 0px;--hover-shift-x: 0px;--hover-shift-y: 0px}.paper-frame--desktop{width:calc(var(--paper-width) * var(--paper-scale, 1));height:calc(var(--paper-height) * var(--paper-scale, 1));transform:translate(calc(var(--pan-x, 0px) + var(--hover-shift-x, 0px)),calc(var(--pan-y, 0px) + var(--hover-shift-y, 0px)))}.paper-frame--desktop .resume-paper{zoom:var(--paper-scale, 1)}.paper-frame--mobile{width:var(--paper-width);height:var(--paper-height);transform:translate(calc(var(--pan-x, 0px) + var(--hover-shift-x, 0px)),calc(var(--pan-y, 0px) + var(--hover-shift-y, 0px))) scale(var(--paper-scale, 1))}.paper-frame--active{filter:drop-shadow(0 20px 42px rgba(0,0,0,.28))}.resume-paper{position:relative;width:var(--paper-width);height:var(--paper-height);overflow:hidden;background:#fcfbf8;box-shadow:0 0 0 1px #0f0f0f0d,0 1px #ffffff85 inset,#00000059 0 5px 15px;color:var(--ink);-webkit-user-select:none;user-select:none;-webkit-text-size-adjust:none;text-size-adjust:none}.resume-paper:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at top right,rgba(255,255,255,.7),transparent 28%),linear-gradient(180deg,transparent,rgba(0,0,0,.025));pointer-events:none}@keyframes paper-enter{0%{opacity:0;transform:translate3d(0,26px,0) scale(.972)}to{opacity:1;transform:translateZ(0) scale(1)}}@keyframes shadow-enter{0%{opacity:0;transform:translate(-50%) scale(.9)}to{opacity:1;transform:translate(-50%) scale(1)}}@media(prefers-reduced-motion:reduce){.paper-orbit{transition:none}.paper-shell,.paper-shell:before{animation:none;opacity:1;transform:none}}.resume-paper__content{position:relative;z-index:1;display:flex;flex-direction:column;gap:0;height:100%;padding:48px 120px}.resume-header{display:grid;grid-template-columns:264px 264px;column-gap:48px;align-items:start}.resume-header h1{margin:0;color:var(--ink-strong);font-family:Oswald,Arial,sans-serif;font-size:32px;font-weight:400;line-height:1;letter-spacing:-.02em;white-space:nowrap}.resume-rule{margin-top:8px;margin-bottom:8px;height:4px;background:var(--ink-strong)}.resume-header__meta{align-self:start;padding-top:2px;font-family:Roboto Condensed,Arial,sans-serif;color:var(--ink-soft);font-size:10.6667px;line-height:1.2}.resume-header__meta p{margin:0}.resume-header__meta a{text-decoration:none;border-bottom:1px solid rgba(0,0,0,.12);transition:color .14s ease,border-color .14s ease}.resume-header__meta a:hover{color:var(--link-hover);border-color:currentColor}.resume-grid{display:grid;grid-template-columns:264px 264px;gap:48px;margin-top:8px}.resume-sidebar{display:flex;flex-direction:column;gap:12px}.resume-section h2{margin:0;color:var(--ink-strong);font-family:Oswald,Arial,sans-serif;font-size:16px;font-weight:400;text-transform:uppercase;letter-spacing:0;line-height:1.2}.resume-section p{margin:0;color:var(--ink-soft);font-family:Source Code Pro,Courier New,monospace;font-size:10.6667px;line-height:1.2}.resume-education h3{margin:0;color:var(--ink-strong);font-family:Source Code Pro,Courier New,monospace;font-size:14.6667px;font-weight:700;line-height:1}.resume-education p{margin-top:0;font-size:9.3333px;line-height:1.2}.resume-section--skills{padding-top:6px}.resume-section--skills p{font-size:10.6667px;line-height:1.2}.resume-section--skills strong{color:var(--ink-strong)}.resume-run{white-space:pre-wrap}.resume-run--bold{color:var(--ink-strong);font-weight:700}.resume-run--italic{font-style:italic}.resume-section--experience{display:flex;flex-direction:column;gap:0;margin-top:8px}.experience-card__heading{display:flex;align-items:baseline;gap:4px;margin-bottom:0;color:var(--ink-strong);padding-top:10.6667px;line-height:1}.experience-card__company{font-family:Source Code Pro,Courier New,monospace;font-size:14.6667px;font-weight:700;text-decoration:none;border-bottom:1px solid transparent;transition:color .14s ease,border-color .14s ease}.experience-card__company:hover{color:var(--link-hover);border-color:currentColor}.experience-card__location{color:var(--ink-soft);font-size:14.6667px;font-style:italic}.experience-card__roles{display:flex;flex-direction:column;gap:0;margin-bottom:6px;width:576px}.experience-card__roles p{display:flex;justify-content:space-between;align-items:baseline;gap:8px;line-height:1;padding-top:0}.experience-card__roles p:first-child{padding-top:10.6667px}.experience-card__roles span:first-child{color:#2e4440;font-size:14.6667px;font-style:italic}.experience-card__roles span:last-child{color:var(--ink-soft);font-size:12px;font-style:italic;white-space:nowrap}.experience-card__bullets{display:flex;flex-direction:column;gap:0;margin:0;padding-left:48px;color:var(--ink-soft)}.experience-card__bullets li{font-size:10.6667px;line-height:1.2;margin-top:8px}.experience-card__bullets li::marker{color:var(--ink-soft)}.resume-footer{margin-top:auto;color:#7b7b7b;font-size:7px;line-height:1.2;text-align:center}.resume-footer span{color:#6e6e6e;font-weight:700}.magnifier{position:fixed;z-index:10;left:var(--magnifier-left, 0px);top:var(--magnifier-top, 0px);width:8.25rem;height:8.25rem;overflow:hidden;border:1px solid rgba(255,255,255,.08);border-radius:50%;background:#14141438;box-shadow:0 12px 32px #0000003d,inset 0 0 0 1px #ffffff0a;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);pointer-events:none;-webkit-mask-image:radial-gradient(circle at center,rgba(0,0,0,1) 0%,rgba(0,0,0,1) 62%,rgba(0,0,0,.92) 72%,rgba(0,0,0,.55) 82%,rgba(0,0,0,0) 100%);mask-image:radial-gradient(circle at center,#000 0% 62%,#000000eb 72%,#0000008c 82%,#0000)}.magnifier:after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px #ffffff0f,inset 0 0 24px #ffffff14}.magnifier__paper{position:absolute;inset:0}.magnifier__paper .resume-paper{position:absolute;top:0;left:0;width:var(--paper-width);height:var(--paper-height);transform-origin:top left;transform:translate(var(--magnifier-offset-x),var(--magnifier-offset-y)) scale(var(--magnifier-scale));box-shadow:none}.resume-paper--clone:after{display:none}@media(max-width:920px){body{overflow:hidden}.stage{padding:4.75rem 1rem 1.5rem}.stage__instructions{top:5rem;bottom:auto;font-size:.6rem;letter-spacing:.06em;max-width:calc(100vw - 1.5rem);text-align:center;white-space:normal}.paper-shell{max-width:100%;max-height:100%}.paper-orbit{transition:transform .14s ease}.paper-shell{animation:paper-enter .9s cubic-bezier(.22,1,.36,1) .12s forwards,paper-float 7.6s ease-in-out 1.1s infinite}.paper-shell:before{bottom:-1.8rem;width:84%;height:2.2rem}.paper-frame{transition:none}.paper-shell,.paper-frame,.resume-paper{touch-action:none}.paper-shell{transition:none}}
