.cv{--orange:#ff670d;--orange-bg:#ff670d0f;--page:#ececec;--sheet:#fff;--card:#f6f6f6;--line:#e2e2e2;--line-strong:#c7c7c7;--text:#000;--heading:#171717;--subtle:#6f6f6f;--faint:#8f8f8f;--sheet-width:1152px;--sheet-pad:128px;--column:896px;--gutter:36px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@supports (color:color(display-p3 1 1 1)){.cv{--orange:color(display-p3 .99 .4 .02);--orange-bg:color(display-p3 .99 .4 .02/.06)}}.dark .cv{--page:#0a0a0a;--sheet:#161616;--card:#1c1c1c;--line:#2e2e2e;--line-strong:#505050;--text:#fff;--heading:#ededed;--subtle:#a0a0a0;--faint:#707070;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html:has(.cv){scroll-behavior:smooth;scroll-padding-top:96px}@media (prefers-reduced-motion:reduce){html:has(.cv){scroll-behavior:auto}}.cv{background:var(--page);min-height:100svh;color:var(--text);font-family:var(--cv-font-sans), -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;padding:128px 0;font-size:16px;line-height:24px}.cv :focus-visible{outline:2px solid var(--orange);outline-offset:2px;border-radius:4px}.cv ::selection{background:var(--orange);color:#fff}.cv .mono{font-family:var(--cv-font-mono), Menlo, monospace;text-transform:uppercase;color:var(--subtle);font-size:13px;font-weight:400;line-height:19.5px}.cv .serif{font-family:var(--cv-font-serif), Georgia, serif;letter-spacing:0;font-style:italic;font-weight:400}.cv .sheet{width:min(var(--sheet-width), 100%);padding:134px var(--sheet-pad) 96px;background:var(--sheet);margin:0 auto;position:relative}.cv .column{width:100%;max-width:var(--column);margin:0 auto}.cv .masthead{grid-template-columns:1fr 1fr;gap:16px;display:grid;position:relative}.cv .logo{background:var(--orange);border-radius:50%;width:20px;height:20px;margin-top:0;transition:transform .2s;display:block}.cv .logo:hover{transform:scale(1.15)}.cv .nav a{width:fit-content;color:var(--heading);font-size:24px;font-weight:500;line-height:32px;transition:color .15s;display:block}.cv .nav a:hover{color:var(--subtle)}.cv .cv-scroll-top{background:var(--heading);color:var(--sheet);box-shadow:0 4px 16px #0000001f}.cv .cv-scroll-top:hover{background:var(--orange);color:#fff}.cv .masthead-actions{color:var(--heading);gap:4px;display:grid;position:absolute;top:-6px;right:-8px}.cv .ruler-line-toggle[data-off=true]{opacity:.4}.cv .hero{grid-template-columns:1fr 1fr;gap:16px;margin-top:104px;display:grid}.cv .lead,.cv .copy p{letter-spacing:-.01em;text-wrap:pretty;font-size:24px;font-weight:500;line-height:40px}.cv .lead{padding-right:40px}.cv .copy{gap:20px;display:grid}.cv .dim{color:var(--subtle)}.cv a.dim{transition:color .15s}.cv a.dim:hover{color:var(--orange)}.cv .external{vertical-align:-.02em;width:.72em;height:.72em;margin-left:.12em;display:inline-block}.cv .media{margin-top:104px}.cv .media-frame{border:1px solid var(--line);background:var(--card);border-radius:24px;position:relative;overflow:hidden}.cv .caption{text-align:center;color:var(--subtle);margin-top:20px;font-size:16px;font-weight:500;line-height:24px}.cv .section{margin-top:136px}.cv .section-title{letter-spacing:-.4px;color:var(--heading);margin-bottom:28px;font-size:32px;font-weight:500;line-height:36px;position:relative}.cv .section-title[data-dot]:before{content:"";top:6px;left:calc(var(--gutter) * -1);background:var(--orange);border-radius:50%;width:24px;height:24px;position:absolute}.cv .cards{grid-template-columns:repeat(2,1fr);gap:8px;margin-top:48px;display:grid}.cv .card{--card-fill:var(--card);background:var(--card-fill);border-radius:16px;flex-direction:column;min-height:320px;transition:background-color .2s;display:flex;position:relative;overflow:hidden}.cv a.card:hover{--card-fill:color-mix(in srgb, var(--card), var(--text) 3%)}.cv .card-art{color:var(--heading);flex:1;place-items:center;padding:32px 24px 8px;display:grid}.cv .card-art svg{width:100%;max-width:220px;height:auto;overflow:visible}.cv .card-art .accent{fill:var(--orange);stroke:none}.cv .card-art .accent-stroke{stroke:var(--orange)}.cv .card-art svg *{transform-box:view-box}.cv .card-art :is(.pulse-back,.pulse-badge,.tag-body,.tag-shadow,.window-back,.window-front,.window-block,.open-plus,.nodes-card,.photos-back,.photos-front,.photos-sun){transition:transform .6s cubic-bezier(.34,1.36,.64,1)}.cv .pulse-trace{stroke-dasharray:1 1}.cv .pulse-back{transform-origin:102px 78px}.cv .pulse-badge{transform-origin:150px 30px}.cv .card:is(:hover,:focus-visible) .pulse-trace{animation:2.4s ease-in-out infinite cv-trace}.cv .card:is(:hover,:focus-visible) .pulse-back{transform:translate(-8px,6px)rotate(-4deg)}.cv .card:is(:hover,:focus-visible) .pulse-badge{transform:scale(1.25)}@keyframes cv-trace{0%{stroke-dashoffset:0}45%{stroke-dashoffset:-1px}45.01%{stroke-dashoffset:1px}90%,to{stroke-dashoffset:0}}.cv .tag-body{transform-origin:146px 75px}.cv .card:is(:hover,:focus-visible) .tag-body{transform:rotate(-10deg)}.cv .card:is(:hover,:focus-visible) .tag-shadow{transform:translate(-6px,6px)}.cv .card:is(:hover,:focus-visible) .tag-bar{animation:1.2s ease-in-out infinite cv-scan}.cv .tag-bar:nth-child(2){animation-delay:80ms}.cv .tag-bar:nth-child(3){animation-delay:.16s}.cv .tag-bar:nth-child(4){animation-delay:.24s}.cv .tag-bar:nth-child(5){animation-delay:.32s}.cv .tag-bar:nth-child(6){animation-delay:.4s}.cv .tag-bar:nth-child(7){animation-delay:.48s}.cv .tag-bar:nth-child(8){animation-delay:.56s}.cv .tag-bar:nth-child(9){animation-delay:.64s}@keyframes cv-scan{0%,to{opacity:1}30%{opacity:.15}}.cv .card:is(:hover,:focus-visible) .window-back{transform:translate(10px,-8px)}.cv .card:is(:hover,:focus-visible) .window-front{transform:translate(-6px,4px)}.cv .window-block{transform-origin:145px 99px}.cv .card:is(:hover,:focus-visible) .window-block{transform:scale(1.18)}.cv .window-line{stroke-dasharray:1 1}.cv .card:is(:hover,:focus-visible) .window-line{animation:.5s cubic-bezier(.2,.8,.2,1) backwards cv-type}.cv .window-line:nth-child(n+6){animation-delay:.12s}.cv .window-line:nth-child(n+7){animation-delay:.24s}.cv .window-line:nth-child(n+8){animation-delay:.36s}@keyframes cv-type{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}.cv .open-plus{transform-origin:110px 75px}.cv .card:is(:hover,:focus-visible) .open-frame{animation:.9s linear infinite cv-march}.cv .card:is(:hover,:focus-visible) .open-plus{transform:rotate(90deg)scale(1.3)}@keyframes cv-march{to{stroke-dashoffset:-18px}}.cv .nodes-card{transform-origin:110px 67px;transform:rotate(-6deg)}.cv .card:is(:hover,:focus-visible) .nodes-card{transform:translate(54px,44px)rotate(0)}.cv .card:is(:hover,:focus-visible) .chat-dots circle{animation:1s ease-in-out infinite cv-bounce}.cv .chat-dots circle:nth-child(2){animation-delay:.15s}.cv .chat-dots circle:nth-child(3){animation-delay:.3s}@keyframes cv-bounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-6px)}}.cv .card-art :is(.folio-tile,.folio-cursor){transition:transform .6s cubic-bezier(.34,1.36,.64,1)}.cv .card:is(:hover,:focus-visible) .folio-tile{transform:translateY(-5px)}.cv .card:is(:hover,:focus-visible) .folio-cursor{transform:translate(-36px,-6px)}.cv .card:is(:hover,:focus-visible) .community-speaker{animation:3.2s cubic-bezier(.6,0,.4,1) infinite cv-speaker}@keyframes cv-speaker{0%,18%,to{transform:translate(0)}25%,43%{transform:translate(56px)}50%,68%{transform:translate(56px,52px)}75%,93%{transform:translateY(52px)}}.cv .card:is(:hover,:focus-visible) .live-signal{animation:1.6s cubic-bezier(.6,0,.4,1) infinite cv-send}.cv .card:is(:hover,:focus-visible) .live-wire{animation:.6s linear infinite cv-stream}@keyframes cv-send{0%,10%{opacity:1;transform:translate(0)}70%{opacity:1;transform:translate(36px)}85%{opacity:0;transform:translate(36px)}to{opacity:0;transform:translate(0)}}@keyframes cv-stream{to{stroke-dashoffset:-8px}}.cv .photos-back{transform-origin:98px 72px;transform:rotate(-8deg)}.cv .photos-front{transform-origin:118px 70px}.cv .card:is(:hover,:focus-visible) .photos-back{transform:translate(-8px)rotate(-16deg)}.cv .card:is(:hover,:focus-visible) .photos-front{transform:translate(6px,-2px)rotate(5deg)}.cv .card:is(:hover,:focus-visible) .photos-sun{transform:translate(-34px)}.cv .card:is(:hover,:focus-visible) .desktop-key{animation:2s ease-in-out infinite cv-keys}.cv .card:is(:hover,:focus-visible) .desktop-cursor{animation:3s ease-in-out infinite cv-cursor}@keyframes cv-keys{0%,to{transform:translate(0)}25%{transform:translate(20px)}75%{transform:translate(-20px)}}@keyframes cv-cursor{0%,to{transform:translate(0)}35%{transform:translate(50px,12px)}70%{transform:translate(18px,32px)}}@media (prefers-reduced-motion:reduce){.cv .card:is(*,:hover,:focus-visible) .card-art svg *{transition:none;animation:none}}.cv .card-foot{justify-content:space-between;gap:16px;padding:0 16px 16px;display:flex}.cv .card-foot .mono:last-child{text-align:right}.cv .tiles{grid-template-columns:repeat(5,1fr);gap:8px;margin-top:104px;display:grid}.cv .tile{aspect-ratio:1;background:var(--card);letter-spacing:-.03em;color:var(--faint);filter:grayscale();border-radius:16px;place-items:center;font-size:22px;font-weight:600;line-height:1;transition:color .2s;display:grid}.cv .tile:hover{color:var(--heading);filter:none}.cv .tile-logo{transition:color .2s}.cv .tile:hover .tile-logo{color:var(--brand,var(--heading))}.cv .tile-logo{max-width:60%;height:auto}.cv .role{border-top:1px solid var(--line);margin-top:56px;padding-top:32px}.cv .role-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:8px 24px;display:flex}.cv .role-name{letter-spacing:-.02em;color:var(--heading);font-size:28px;font-weight:500;line-height:36px}.cv .role-name a{transition:color .15s}.cv .role-name a:hover{color:var(--orange)}.cv .role-title{color:var(--subtle);margin-top:2px;font-size:16px;font-weight:500;line-height:24px}.cv .role-meta{justify-items:end;padding-top:6px;display:grid}.cv .role-summary{letter-spacing:-.01em;color:var(--heading);text-wrap:pretty;margin-top:20px;font-size:20px;font-weight:500;line-height:32px}.cv .role-checks{gap:10px}.cv .role-checks li{color:var(--subtle);font-size:17px;line-height:27px}.cv .role-checks li:before{width:16px;height:13px;top:6px}.cv .role-more summary{color:var(--heading);cursor:pointer;align-items:center;gap:8px;margin-top:14px;font-size:15px;font-weight:500;line-height:24px;list-style:none;transition:color .15s;display:inline-flex}.cv .role-more summary::-webkit-details-marker{display:none}.cv .role-more summary:hover{color:var(--orange)}.cv .role-more summary svg{width:12px;height:12px;transition:transform .25s cubic-bezier(.2,.8,.2,1)}.cv .role-more[open] summary svg{transform:rotate(45deg)}.cv .role-more-close,.cv .role-more[open] .role-more-open{display:none}.cv .role-more[open] .role-more-close{display:inline}.cv .role-more::details-content{block-size:0;transition:block-size .35s cubic-bezier(.2, .8, .2, 1), content-visibility .35s allow-discrete;overflow:hidden}.cv .role-more[open]::details-content{block-size:auto}.cv .role-more{margin-left:calc(var(--gutter) * -1)}.cv .role-more summary,.cv .role-more .role-checks{margin-left:var(--gutter)}.cv .role-more .role-checks{margin-top:10px}.cv .checks{gap:16px;margin-top:20px;display:grid}.cv .checks li{letter-spacing:-.01em;text-wrap:pretty;font-size:20px;font-weight:500;line-height:30px;position:relative}.cv .checks li:before{content:"";top:7px;left:calc(var(--gutter) * -1 + 2px);background:var(--orange);width:20px;height:16px;position:absolute;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 16' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1.5 8.5l5.5 6L18.5 1.5'/%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 16' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1.5 8.5l5.5 6L18.5 1.5'/%3E%3C/svg%3E") 50%/contain no-repeat}.cv .promises{grid-template-columns:repeat(2,1fr);gap:32px 40px;margin-top:40px;display:grid}.cv .promise{border-top:1px solid var(--line);gap:8px;padding-top:20px;display:grid}.cv .promise-index{color:var(--orange)}.cv .promise-title{letter-spacing:-.01em;color:var(--heading);font-size:20px;font-weight:500;line-height:28px}.cv .promise-text{color:var(--subtle);text-wrap:pretty;font-size:16px;line-height:24px}.cv .chips{flex-wrap:wrap;gap:6px 14px;margin-top:20px;display:flex}.cv .skills{border-bottom:1px solid var(--line)}.cv .skills-row{border-top:1px solid var(--line);grid-template-columns:120px 1fr;align-items:baseline;gap:8px 24px;padding:18px 0;display:grid}.cv .skills-list{flex-wrap:wrap;gap:6px;display:flex}.cv .skills-list li{background:var(--card);color:var(--heading);border-radius:999px;padding:4px 12px;font-size:15px;font-weight:500;line-height:22px}.cv .edu-item{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:8px 24px;padding:20px 0;display:flex}.cv .edu-item:last-child{border-bottom:0}.cv .edu-school{letter-spacing:-.01em;color:var(--heading);font-size:20px;font-weight:500;line-height:30px}.cv .edu-degree{color:var(--subtle);font-size:16px;font-weight:500;line-height:24px}.cv .edu-meta{flex-shrink:0;justify-items:end;padding-top:5px;display:grid}.cv .run{margin-top:104px;position:relative}.cv .run-text{letter-spacing:-.01em;max-height:336px;font-size:24px;font-weight:500;line-height:42px;transition:max-height .5s cubic-bezier(.2,.8,.2,1);overflow:hidden}.cv .run[data-open=true] .run-text{max-height:1400px}.cv .run-fade{pointer-events:none;background:linear-gradient(to bottom, transparent, var(--sheet) 90%);-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);height:140px;transition:opacity .3s;position:absolute;inset:auto 0 40px;-webkit-mask:linear-gradient(#0000,#000 70%);mask:linear-gradient(#0000,#000 70%)}.cv .run[data-open=true] .run-fade{opacity:0}.cv .run-item{transition:filter .3s,opacity .3s}.cv .run-note{color:var(--subtle)}.cv .run-text[data-focusing] .run-item:not([data-active]){filter:blur(3px);opacity:.3}.cv .run-icon{vertical-align:baseline;width:26px;height:26px;box-shadow:0 0 0 1px var(--line);background:#fff;border-radius:50%;place-items:center;margin-right:8px;display:inline-grid}.cv .run-icon img{width:var(--icon-size,18px);height:var(--icon-size,18px);object-fit:contain}@media (prefers-reduced-motion:reduce){.cv .run-item{transition:none}}.cv .run-toggle{color:var(--subtle);align-items:center;gap:6px;margin:16px auto 0;font-size:16px;font-weight:500;line-height:24px;transition:color .15s;display:flex}.cv .run-toggle:hover{color:var(--text)}.cv .run-toggle svg{transition:transform .3s}.cv .run[data-open=true] .run-toggle svg{transform:rotate(180deg)}.cv .cta{background:var(--orange);color:#fff;border-radius:999px;justify-content:space-between;align-items:center;gap:24px;height:112px;margin-top:56px;padding:0 16px 0 32px;transition:transform .2s cubic-bezier(.2,.8,.2,1);display:flex}.cv .cta:active{transform:scale(.99)}.cv .cta-label{letter-spacing:-.04em;font-size:48px;font-weight:500;line-height:1.15;display:inline-flex;overflow:hidden}.cv .cta-char{white-space:pre;text-shadow:0 1.15em;transition:transform .45s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--i) * 18ms);display:inline-block}.cv .cta:hover .cta-char{transform:translateY(-1.15em)}.cv .cta-side{align-items:center;gap:32px;display:flex}.cv .cta-note{letter-spacing:-.02em;align-items:center;gap:10px;font-size:24px;font-weight:500;line-height:1;display:inline-flex}.cv .cta-dot{background:#fff;border-radius:50%;width:12px;height:12px;position:relative}.cv .cta-dot:after{content:"";border-radius:inherit;background:inherit;animation:1s cubic-bezier(0,0,.2,1) infinite cta-ping;position:absolute;inset:0}@keyframes cta-ping{75%,to{opacity:0;transform:scale(2)}}.cv .cta-arrow{color:#000;background:#fff;border-radius:50%;place-items:center;width:80px;height:80px;display:grid}.cv .cta-arrow svg{transition:transform .3s cubic-bezier(.2,.8,.2,1)}.cv .cta:hover .cta-arrow svg{transform:rotate(-45deg)}@media (prefers-reduced-motion:reduce){.cv .cta-char,.cv .cta-arrow svg{transition:none}.cv .cta:hover .cta-char{transform:none}.cv .cta-dot:after{animation:none}}.cv .cta-caption{text-align:center;color:var(--subtle);margin-top:20px;font-size:16px;font-weight:500}.cv .faq{border-top:0;margin-top:8px}.cv .faq details{border-bottom:1px solid var(--line)}.cv .faq summary{letter-spacing:-.01em;cursor:pointer;justify-content:space-between;align-items:center;gap:16px;padding:12px 0;font-size:24px;font-weight:500;line-height:32px;list-style:none;display:flex}.cv .faq summary::-webkit-details-marker{display:none}.cv .faq summary svg{flex-shrink:0;transition:transform .25s cubic-bezier(.2,.8,.2,1)}.cv .faq details[open] summary svg{transform:rotate(45deg)}.cv .faq details::details-content{block-size:0;transition:block-size .3s cubic-bezier(.2, .8, .2, 1), content-visibility .3s allow-discrete;overflow:hidden}.cv .faq details[open]::details-content{block-size:auto}@supports (interpolate-size:allow-keywords){.cv{interpolate-size:allow-keywords}}.cv .faq-answer{color:var(--subtle);text-wrap:pretty;padding:0 48px 20px 0;font-size:20px;font-weight:500;line-height:32px}.cv .footer{border-top:1px solid var(--line);justify-content:space-between;gap:16px;margin-top:136px;padding-top:20px;display:flex}.cv .footer a:hover{color:var(--text)}.cv .career{padding:200px 56px 72px;position:relative}.cv .career-track{height:1px;position:relative}.cv .career-canvas{pointer-events:none;height:128px;position:absolute;bottom:0;left:0}.cv .career-now{z-index:1;background:var(--orange);width:1.5px;margin-left:-.75px;position:absolute;bottom:0}.cv .career-now:before{content:"";background:var(--orange);clip-path:polygon(0 0,100% 0,50% 100%);width:9px;height:6px;position:absolute;top:-1px;left:-3.75px}.cv .career-event{text-align:center;white-space:nowrap;color:var(--heading);font-size:13px;line-height:16px;position:absolute;translate:-50%}.cv .career-dot{--lift:calc(var(--event-bar,77px) - var(--tick-height) - var(--grow,0px));bottom:calc(var(--tick-height) - 12px);z-index:2;cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:50%;width:24px;height:24px;margin-left:-12px;position:absolute}.cv .career-dot:before{content:"";inset:calc(9.5px - var(--grow,0px)) 9.5px calc(9.5px + var(--grow,0px));z-index:1;background:var(--orange);box-shadow:0 0 0 2px var(--card);border-radius:50%;transition:translate .35s cubic-bezier(.2,.8,.2,1);position:absolute}.cv .career-dot:after{content:"";bottom:calc(12px - var(--tick-height));left:var(--bar-left,11.25px);width:var(--bar-width,1.5px);height:calc(var(--tick-height) + var(--grow,0px) + var(--lift));background:var(--orange);box-shadow:0 0 0 1px var(--card);transform-origin:bottom;transition:scale .35s cubic-bezier(.2,.8,.2,1);position:absolute;scale:1 0}.cv .career-dot-label{bottom:calc(12px + var(--grow,0px) + var(--lift) + 10px);text-align:center;white-space:nowrap;color:var(--heading);opacity:0;pointer-events:none;font-size:13px;line-height:16px;transition:opacity .2s 60ms,translate .35s cubic-bezier(.2,.8,.2,1);position:absolute;left:50%;translate:-50% 8px}.cv .career-dot-label small{color:var(--subtle);font-size:12px;display:block}.cv .career-dot[aria-expanded=true],.cv .career-dot:focus-visible{z-index:3}.cv .career-dot[aria-expanded=true]:before,.cv .career-dot:focus-visible:before{translate:0 calc(var(--lift) * -1)}.cv .career-dot[aria-expanded=true]:after,.cv .career-dot:focus-visible:after{scale:1}.cv .career-dot[aria-expanded=true] .career-dot-label,.cv .career-dot:focus-visible .career-dot-label{opacity:1;translate:-50%}.cv .career-dot[data-active]{z-index:3}.cv .career-dot[data-active]:before{translate:0 calc(var(--lift) * -1)}.cv .career-dot[data-active]:after{scale:1}.cv .career-dot[data-active] .career-dot-label{opacity:1;translate:-50%}.cv .career-dot:focus-visible{outline:none}@media (prefers-reduced-motion:reduce){.cv .career-dot:before,.cv .career-dot:after,.cv .career-dot-label{transition:opacity .2s}}.cv .career-event small{color:var(--subtle);font-size:12px;display:block}.cv .career-mark[data-now] .career-event{color:var(--orange)}.cv .career-year{position:absolute;top:14px;translate:-50%}.cv .ruler{z-index:10;pointer-events:none;position:fixed;inset:0}.cv .ruler-ticks{pointer-events:auto;width:96px;display:grid;position:absolute;top:50%;left:32px;transform:translateY(-50%)}.cv .ruler-canvas{pointer-events:none;width:128px;height:100%;position:absolute;top:0;left:0}.cv .ruler-tick{--tone:0%;width:100%;height:9px;color:color-mix(in srgb, var(--heading) var(--tone), var(--line-strong));display:block}.cv button.ruler-tick{cursor:pointer}.cv .ruler-tick[data-tone=mid]{--tone:35%}.cv .ruler-tick[data-tone=major]{--tone:55%}.cv .ruler-tick[data-tone=ink]{--tone:100%}.cv .ruler-line{will-change:transform;height:1px;position:absolute;left:16px;right:0}html[data-ruler-line=hidden] .cv .ruler-line{visibility:hidden}.cv .ruler-line:before{content:"";border:4px solid #0000;border-left:6px solid var(--orange);position:absolute;top:-4px;left:0}.cv .ruler-line:after{content:"";background:var(--orange);height:1px;position:absolute;top:0;left:16px;right:0}.cv .ruler-badge{top:1px;right:max(16px, min(145px, calc((100vw - var(--sheet-width)) / 2 - 124px)));background:var(--orange);color:#fff;font-family:var(--cv-font-mono), monospace;text-transform:uppercase;pointer-events:auto;padding:2px 8px;font-size:13px;font-weight:700;line-height:20px;transition:filter .15s;position:absolute}.cv .ruler-badge:hover{filter:brightness(1.08)}@media (max-width:1360px){.cv .ruler,.cv .ruler-line-toggle{display:none}}.cv .bottom-fade{z-index:9;pointer-events:none;background:linear-gradient(to bottom, transparent, var(--page));-webkit-backdrop-filter:blur(1px);height:96px;position:fixed;inset:auto 0 0;-webkit-mask-image:linear-gradient(#0000,#000 75%);mask-image:linear-gradient(#0000,#000 75%)}.cv .bottom-fade-sheet{width:min(var(--sheet-width), 100%);background:linear-gradient(to bottom, transparent, var(--sheet));height:100%;margin:0 auto;transition:opacity .2s}.cv .bottom-fade-sheet[data-hidden=true]{opacity:0}@media (max-width:1100px){.cv{--sheet-pad:72px}}@media (max-width:760px){.cv{--sheet-pad:24px;--gutter:0px;padding:0}.cv .sheet{padding-top:40px}.cv .masthead,.cv .hero{grid-template-columns:1fr}.cv .nav{margin-top:32px}.cv .hero{gap:24px;margin-top:56px}.cv .lead{padding-right:0}.cv .lead,.cv .copy p,.cv .run-text{font-size:20px;line-height:32px}.cv .section{margin-top:96px}.cv .section-title[data-dot]:before{vertical-align:1px;width:18px;height:18px;margin-right:12px;display:inline-block;position:static}.cv .promises{grid-template-columns:1fr;gap:24px}.cv .checks li{padding-left:28px;font-size:18px;line-height:28px}.cv .checks li:before{top:6px;left:0}.cv .cards{grid-template-columns:1fr}.cv .card{min-height:260px}.cv .tiles{grid-template-columns:repeat(6,1fr)}.cv .tile{grid-column:span 2}.cv .tile:nth-child(4){grid-column:2/span 2}.cv .skills-row{grid-template-columns:1fr;gap:10px;padding:16px 0}.cv .skills-list li{padding:3px 10px;font-size:14px;line-height:20px}.cv .edu-item{display:block}.cv .edu-school{font-size:18px;line-height:26px}.cv .edu-degree{font-size:15px;line-height:22px}.cv .role{margin-top:40px;padding-top:28px}.cv .role-head{display:block}.cv .role-name{font-size:26px;line-height:32px}.cv .role-title{font-size:15px;line-height:22px}.cv .edu-meta,.cv .role-meta{flex-wrap:wrap;gap:0 8px;margin-top:8px;padding-top:0;display:flex}.cv .edu-meta span+span:before,.cv .role-meta span+span:before{content:"·";margin-right:8px}.cv .role-summary{margin-top:16px;font-size:18px;line-height:28px}.cv .role-checks li{font-size:16px;line-height:25px}.cv .role-checks li:before{top:5px}.cv .tile{font-size:16px}.cv .career{padding:192px 28px 56px}.cv .career-event small{display:none}.cv .cta{height:80px;padding:0 10px 0 24px}.cv .cta-label{font-size:28px}.cv .cta-note{display:none}.cv .cta-arrow{width:60px;height:60px}.cv .faq summary{font-size:20px;line-height:28px}.cv .faq-answer{padding-right:0;font-size:18px;line-height:28px}}@media print{.cv{--page:#fff;--sheet:#fff;--card:#f6f6f6;-webkit-print-color-adjust:exact;print-color-adjust:exact;padding:0}.cv .sheet{padding:0 24px}.cv .ruler,.cv .bottom-fade,.cv .run-toggle,.cv .run-fade,.cv .nav,.cv .media,.cv .tiles,.cv .cta,.cv .cta-caption,.cv [data-print=hide]{display:none}.cv .run-text{max-height:none}.cv .faq details::details-content{content-visibility:visible;block-size:auto}.cv .role-more::details-content{content-visibility:visible;block-size:auto}.cv .role-more summary{display:none}.cv .section{break-inside:avoid-page;margin-top:48px}.cv .card{min-height:0}.cv .card-art{display:none}.cv .card-foot{padding-top:16px}}
@font-face{font-family:Inter Tight;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/13ae3e01af63c0ce-s.3-5_uhe2g8vfj.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Tight;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/0ee4b8f05dcd9fee-s.27tgfqm6_tedn.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Tight;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9eba4caf7edd2921-s.2r0cv3f07u_0l.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter Tight;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/f6752bd2263820da-s.12_ze2_d4hpxy.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Tight;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/f285987c35230861-s.318-mahh4esyg.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Tight;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/b8d1f0a88dfecec3-s.0yot_wy8hf-md.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Tight;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ab57efd000576a30-s.p.2q0khlq77_eaw.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Tight Fallback;src:local(Arial);ascent-override:100.51%;descent-override:25.03%;line-gap-override:0.0%;size-adjust:96.39%}.inter_tight_cfda6bfb-module__ByZbRG__className{font-family:Inter Tight,Inter Tight Fallback;font-style:normal}.inter_tight_cfda6bfb-module__ByZbRG__variable{--cv-font-sans:"Inter Tight", "Inter Tight Fallback"}
@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/13bf9871fe164e7f-s.3bz3aq452sydg.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/cc545e633e20c56d-s.2sb9jzhmrh7ny.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/71b036adf157cdcf-s.343obqi851wr5.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/89b21bb081cb7469-s.40kcwrf1wub16.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/3fe682a82f50d426-s.200l3jur7oygh.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/70bc3e132a0a741e-s.p.269kn9uafm0ti.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Fallback;src:local(Arial);ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.0%;size-adjust:134.59%}.jetbrains_mono_df72b4a9-module__F_eqTG__className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.jetbrains_mono_df72b4a9-module__F_eqTG__variable{--cv-font-mono:"JetBrains Mono", "JetBrains Mono Fallback"}
@font-face{font-family:Instrument Serif;font-style:italic;font-weight:400;font-display:swap;src:url(../media/fc0a7394b875fa43-s.3zvkfbs08rnj_.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Serif;font-style:italic;font-weight:400;font-display:swap;src:url(../media/7ebf22b5a21034f8-s.p.3strvg7o-g5v2.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Instrument Serif Fallback;src:local(Times New Roman);ascent-override:117.94%;descent-override:36.93%;line-gap-override:0.0%;size-adjust:83.94%}.instrument_serif_78fcd15-module__TDzK5G__className{font-family:Instrument Serif,Instrument Serif Fallback;font-style:italic;font-weight:400}.instrument_serif_78fcd15-module__TDzK5G__variable{--cv-font-serif:"Instrument Serif", "Instrument Serif Fallback"}
