.hero{border-bottom:1px solid var(--line)}.masthead{display:grid;grid-template-columns:9fr 3fr;align-items:center;gap:var(--space-32)}.hero .page-title{letter-spacing:-.0525em}.masthead h1>span{display:block}.hero-description{max-width:40em;margin-top:var(--space-28);color:var(--muted);font-size:var(--font-size-hero-description);line-height:1.5;letter-spacing:-.015em;text-wrap:pretty}.netflix-word{color:var(--text);position:relative}.netflix-word:after{content:"";position:absolute;bottom:-4px;height:1px;background:var(--red);left:0;right:4px}.hero{position:relative;isolation:isolate;overflow:hidden}.hero-loop-bounds{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}.hero-loop-bounds canvas{display:block;width:100%;height:100%}.hero .masthead{position:relative;z-index:1;pointer-events:none;row-gap:0}.hero .masthead-copy{display:contents}.hero .masthead-copy h1{grid-column:1;grid-row:1;min-width:0}.hero .hero-description{grid-column:1;grid-row:2}.hero.artwork-only .masthead-copy{visibility:hidden}.hero-controls-toggle{grid-column:2;grid-row:2;align-self:end;justify-self:end;margin-right:var(--space-24);z-index:2;pointer-events:auto;display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid var(--line);background:var(--bg);transition:background var(--theme-color-duration, .2s),border-color var(--theme-color-duration, .2s)}.hero-controls-toggle[hidden]{display:none}.hero-controls-toggle:hover,.hero-controls-toggle[aria-expanded=true]{background:var(--surface);border-color:var(--muted)}.hero-controls-toggle svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1;transition:transform .3s var(--ease)}.hero-controls-toggle[aria-expanded=true] svg{transform:rotate(45deg)}.hero-tuner{clip-path:inset(0 calc(-1 * var(--space-8)))}.hero-tuner[hidden]{display:none}.hero-tuner-inner{padding-block:0 var(--space-24);border-bottom:1px solid var(--line)}.hero-tuner-toolbar{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:0 var(--space-32);border-bottom:1px solid var(--line)}.hero-tuner-actions:not([popover]){display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-24)}.hero-tuner button{position:relative;color:var(--text);background:transparent;padding:var(--space-5) 0;font-size:var(--font-size-small-compact)}.hero-tuner-actions button{padding:var(--space-14) 0 var(--space-12)}.hero-tuner-actions button:hover{text-decoration:underline;text-underline-offset:4px}.hero-tuner .tuner-menu-toggle{display:none}.tuner-menu-toggle[aria-expanded=true]{text-decoration:underline;text-underline-offset:4px}.hero-tuner-actions button:disabled{color:var(--faint);cursor:default;text-decoration:none}.hero-tuner .parameter-tabs{display:flex;gap:var(--space-32);margin-bottom:-1px}.hero-tuner .parameter-tabs button{flex:none;color:var(--muted);font-size:var(--font-size-small);padding:var(--space-14) 0 var(--space-12);border-bottom:2px solid transparent}.hero-tuner .parameter-tabs button[aria-selected=true]{color:var(--text);border-bottom-color:var(--text)}.hero-tuner .parameter-description{color:var(--muted);font-size:var(--font-size-small-compact);margin-block:var(--space-16) var(--space-22)}.hero-tuner .parameter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-22) var(--space-44)}.hero-tuner .parameter-control{display:grid;grid-template-columns:1fr auto;gap:var(--space-12) var(--space-16);font-size:var(--font-size-small-compact)}.hero-tuner .parameter-control output{color:var(--muted);font-variant-numeric:tabular-nums;font-size:var(--font-size-caption)}.hero-tuner .parameter-slider{grid-column:1 / -1;position:relative;padding-top:var(--space-56)}.hero-tuner .parameter-scale{position:absolute;top:6px;left:calc(var(--hero-slider-thumb-width) / 2);right:calc(var(--hero-slider-thumb-width) / 2);height:17px;border-bottom:1px solid var(--line);pointer-events:none}.hero-tuner .parameter-scale i{position:absolute;bottom:0;left:min(var(--position),calc(100% - 1px));width:1px;height:5px;background:var(--line)}.hero-tuner .parameter-scale .scale-half{height:10px}.hero-tuner .parameter-scale .scale-major{height:16px;background:var(--ruler-major)}.hero-tuner .parameter-limits{display:flex;justify-content:space-between;padding-inline:calc(var(--hero-slider-thumb-width) / 2);color:var(--muted);font-size:var(--font-size-micro);line-height:1;font-variant-numeric:tabular-nums}.hero-tuner input[type=range]{appearance:none;-webkit-appearance:none;position:absolute;top:0;left:0;width:100%;min-width:0;height:44px;margin:0;padding:0;border:0;border-radius:0;background:transparent;color:var(--text);cursor:ew-resize}.hero-tuner input[type=range]::-webkit-slider-runnable-track{height:1px;border:0;background:transparent}.hero-tuner input[type=range]::-moz-range-track{height:1px;border:0;background:transparent}.hero-tuner input[type=range]::-moz-range-progress{background:transparent}.hero-tuner input[type=range]::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;box-sizing:border-box;width:var(--hero-slider-thumb-width);height:24px;margin-top:var(--hero-slider-thumb-offset);border:1px solid var(--text);border-radius:1px;background:linear-gradient(var(--bg),var(--bg)) center / 2px 12px no-repeat,var(--text);box-shadow:0 0 0 2px var(--bg)}.hero-tuner input[type=range]::-moz-range-thumb{box-sizing:border-box;width:var(--hero-slider-thumb-width);height:24px;border:1px solid var(--text);border-radius:1px;background:linear-gradient(var(--bg),var(--bg)) center / 2px 12px no-repeat,var(--text);box-shadow:0 0 0 2px var(--bg)}.hero-tuner input[type=range]:hover::-webkit-slider-thumb,.hero-tuner input[type=range]:active::-webkit-slider-thumb{border-color:var(--hover-text);background-color:var(--hover-text)}.hero-tuner input[type=range]:hover::-moz-range-thumb,.hero-tuner input[type=range]:active::-moz-range-thumb{border-color:var(--hover-text);background-color:var(--hover-text)}.hero-controls-toggle:focus-visible,.hero-tuner input:focus-visible{outline:2px solid var(--text);outline-offset:4px}.hero-tuner button:focus-visible{outline:none}.hero-tuner button:focus-visible:after{content:"";position:absolute;inset:var(--space-8) calc(-1 * var(--space-6));border:2px solid var(--text);pointer-events:none}.hero-tuner .render-error{color:var(--muted);font-size:var(--font-size-small-compact);margin-bottom:var(--space-16)}@media(max-width:800px){.masthead{gap:var(--space-24);grid-template-columns:9fr 2fr}.hero-tuner .parameter-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-22) var(--space-28)}}@media(max-width:560px){.masthead{grid-template-columns:1fr}.hero-description{margin-top:var(--space-24);max-width:30em}.hero-controls-toggle{grid-column:1}.hero .hero-description{padding-right:var(--space-84)}.hero-tuner-toolbar{flex-wrap:nowrap;gap:var(--space-16)}.hero-tuner .tuner-menu-toggle{display:block;flex:none;margin-left:auto;min-height:44px;font-size:var(--font-size-small)}.hero-tuner-actions[popover]{position:fixed;inset:auto;margin:0;width:200px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);overflow-y:auto;padding:var(--space-8);border:1px solid var(--popover-border);border-radius:3px;background:var(--popover-bg);box-shadow:0 12px 32px var(--popover-shadow)}.hero-tuner-actions:popover-open{display:flex;flex-direction:column}.hero-tuner-actions button{min-height:44px;padding:var(--space-10) var(--space-12);text-align:left}.hero-tuner-actions button:hover{background:var(--surface);text-decoration:none}.hero-tuner .parameter-tabs{flex:0 1 auto;min-width:0;overflow-x:auto;gap:var(--space-20)}.hero-tuner .parameter-grid{gap:var(--space-24) var(--space-20)}.hero-tuner .parameter-control{gap:var(--space-12) var(--space-8)}}.work-section{border-bottom:1px solid var(--line)}.section-heading{display:grid;grid-template-columns:var(--heading-columns, 3fr 4fr 5fr);gap:var(--space-24);align-items:start;margin-bottom:var(--showcase-spacing)}.section-heading .section-index{padding-top:var(--space-9)}.section-heading h2{font-size:var(--font-size-timeline-title);letter-spacing:-.05em;line-height:1.05}.section-heading>p{color:var(--muted);padding:var(--space-10) 0 0 var(--space-18);font-size:var(--font-size-body);line-height:1.6}.project-caption{margin-top:var(--space-7);font-size:var(--font-size-caption);color:var(--muted)}.project-year{color:var(--muted)}.project-info{display:flex;flex-direction:column;padding:var(--space-29) var(--space-30) var(--space-24) var(--space-35);background:var(--bg)}.project-kicker{display:flex;align-items:center;gap:var(--space-9);font-size:var(--font-size-caption);letter-spacing:.05em}.project-kicker>span:last-child{color:var(--muted)}.project-info h3{font-size:var(--font-size-project-title);line-height:1.15;letter-spacing:-.055em;margin:var(--space-43) 0 var(--space-22)}.project-info>p{font-size:var(--font-size-body);line-height:1.7;color:var(--muted);margin-bottom:var(--space-14)}@media(max-width:1100px){.section-heading>p{padding-left:0}.project-info{padding-inline:var(--space-25)}}@media(max-width:800px){.section-heading{grid-template-columns:1fr 1fr;gap:var(--space-27)}.section-heading>.section-index{grid-column:1/-1}.section-heading>p{justify-self:end;padding-right:var(--space-30)}.project-info{padding:var(--space-29)}.project-info h3{margin-top:var(--space-28)}}@media(max-width:560px){.section-heading{grid-template-columns:1fr;gap:var(--space-27)}.section-heading>p{justify-self:stretch;padding:0;max-width:none}.project-info{padding:var(--space-23) var(--space-22)}}@media(max-width:380px){.project-kicker{flex-wrap:wrap;gap:var(--space-7)}}.portfolio-grid{position:relative;scroll-margin-top:var(--space-12);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(4,minmax(0,1fr));aspect-ratio:2.67;border-top:1px solid var(--line);border-left:1px solid var(--line)}.portfolio-cell{position:relative;grid-column:var(--column);grid-row:var(--row);grid-row-end:span var(--span);display:flex;align-items:flex-end;min-width:0;min-height:0;padding:var(--space-12) var(--space-24);border-right:1px solid var(--line);border-bottom:1px solid var(--line);background-color:var(--bg);color:var(--text);scroll-margin-top:calc(var(--header-height) + var(--space-24));transition:background-color var(--cell-duration, 0ms) var(--cell-easing, ease-in-out)}.portfolio-cell-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;pointer-events:none}.portfolio-cell-content{position:relative;min-width:0;opacity:1}.portfolio-cell-image,.portfolio-cell-content{transition:opacity var(--cell-duration, 0ms) var(--cell-easing, ease-in-out)}.portfolio-cell .project-name{display:block;font-size:var(--font-size-project-tab);letter-spacing:-.04em;line-height:1.18;overflow-wrap:anywhere}.portfolio-cell .project-caption{display:block;margin-top:var(--space-7);font-size:var(--font-size-caption);color:var(--muted);line-height:1.4}.portfolio-cell:hover,.portfolio-cell:focus-visible{background-color:var(--surface-hover)}.portfolio-cell[data-state=image]{background-color:var(--portfolio-image-bg)}.portfolio-cell[data-state=image] .portfolio-cell-image{opacity:1}.portfolio-cell[data-state=image] .portfolio-cell-content{opacity:0}.portfolio-cell:focus-visible{outline-offset:-4px}.portfolio-controls-toggle{position:absolute;grid-area:auto;right:var(--space-12);bottom:var(--space-12);margin:0}.portfolio-grid:has(.portfolio-controls-toggle:not([hidden])) #current-job-premium-expansion-pack .portfolio-cell-content{padding-right:calc(44px + var(--space-12))}.portfolio-tuner .hero-tuner-inner{padding-top:var(--space-24);border-bottom:0}.portfolio-tuner .parameter-control{grid-template-rows:1fr auto}.portfolio-tuner .hero-tuner-actions button[aria-pressed=true]{text-decoration:underline;text-underline-offset:var(--space-4)}.portfolio-tuner .parameter-control label{min-width:0}.portfolio-tuner .parameter-control.is-disabled{opacity:.4}.portfolio-tuner .parameter-control.is-disabled input{cursor:not-allowed}.portfolio-tuner .parameter-scale .scale-minor{height:3px}.portfolio-tuner .parameter-slider-interval input{pointer-events:none}.portfolio-tuner .parameter-interval-selection{position:absolute;bottom:-1px;height:2px;background:var(--text)}.portfolio-tuner .parameter-interval-hit{position:absolute;z-index:1;inset:0 0 auto;height:44px;cursor:ew-resize;touch-action:pan-y}@media(max-width:1100px){.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(8,minmax(9rem,auto));aspect-ratio:auto}.portfolio-cell{grid-column:var(--compact-column);grid-row:var(--compact-row);grid-row-end:span var(--span);padding:var(--space-16)}}@media(max-width:560px){.portfolio-cell{padding:var(--space-12)}.portfolio-tuner .parameter-grid{grid-template-columns:minmax(0,1fr)}.portfolio-grid:has(.portfolio-controls-toggle:not([hidden])) #current-job-premium-expansion-pack .portfolio-cell-content{padding-right:0;padding-bottom:calc(44px + var(--space-12))}}.work-access-dialog{position:fixed;inset:0;width:min(1200px,calc(100% - var(--space-32)));max-width:none;max-height:calc(100dvh - var(--space-32));margin:auto;padding:0;overflow:auto;overscroll-behavior:contain;border:1px solid var(--line);background:var(--bg);color:var(--text)}.work-access-dialog:focus{outline:none}.portfolio-cell[data-dialog-focus-return]:focus-visible{outline:none}.work-access-dialog::backdrop{background:var(--overlay-scrim);-webkit-backdrop-filter:blur(var(--overlay-blur));backdrop-filter:blur(var(--overlay-blur))}.work-access-dialog[open],.work-access-dialog[open]::backdrop{animation:work-access-enter .6s var(--ease) both}@keyframes work-access-enter{0%{opacity:0}to{opacity:1}}html:has(.work-access-dialog[open]){overflow:hidden}html:has(.work-access-dialog[open]) body{position:fixed;top:var(--work-access-scroll-top);width:100%}.work-access-close{position:absolute;top:var(--space-8);right:var(--space-8);display:grid;place-items:center;width:var(--space-44);height:var(--space-44);padding:0;background:transparent}.work-access-close:hover{background:var(--surface-hover)}.work-access-close:focus-visible{outline-offset:calc(-1 * var(--space-4))}.work-access-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"copy form"}.work-access-copy,.work-access-form{min-width:0;padding:var(--space-64) var(--space-40) var(--space-48)}.work-access-copy{grid-area:copy}.work-access-copy h2{font-size:var(--font-size-popover-title);line-height:1.25;letter-spacing:-.035em}.work-access-copy p{margin-top:var(--space-16);color:var(--muted);font-size:var(--font-size-body);line-height:1.65}.work-access-copy p a,.work-access-status a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:var(--space-4)}.work-access-copy p a:focus-visible,.work-access-status a:focus-visible{outline:none;color:var(--hover-text)}.work-access-status a:hover,.work-access-status a:focus-visible{color:var(--error-text)}.work-access-copy .header-action{margin-top:var(--space-24)}.work-access-copy .header-action:hover,.work-access-copy .header-action:focus-visible{background:var(--surface);border-color:var(--muted)}.work-access-dialog .header-action{min-height:var(--space-44);font-size:var(--font-size-small)}.work-access-form{grid-area:form;display:flex;flex-direction:column;justify-content:center;align-items:stretch;border-left:1px solid var(--line);background:var(--surface)}.work-access-form label{margin-bottom:var(--space-12);font-size:var(--font-size-small)}.work-access-form input{width:100%;min-width:0;height:var(--space-48);padding:var(--space-12) var(--space-16);border:1px solid var(--line);border-radius:0;background:var(--bg);color:var(--text);font:inherit;font-size:max(1rem,var(--font-size-body))}.work-access-form input::placeholder{-webkit-text-security:inherit;color:var(--muted);opacity:1}.work-access-form input:focus-visible{outline:2px solid var(--text);outline-offset:var(--space-2)}.work-access-form .header-action{margin-top:var(--space-16)}.work-access-feedback{display:grid;margin-top:var(--space-16);color:var(--error-text);font-size:var(--font-size-small);line-height:1.5}.work-access-feedback:before,.work-access-status{grid-area:1 / 1}.work-access-feedback:before{content:attr(data-error-message);visibility:hidden}.work-access-status{opacity:0;transition:opacity .22s var(--ease)}.work-access-status[data-visible=true]{opacity:1}@media(max-width:640px){.work-access-layout{grid-template-columns:minmax(0,1fr);grid-template-areas:"form" "copy"}.work-access-form{padding:var(--space-56) var(--space-24) var(--space-32);border-left:0;border-bottom:1px solid var(--line)}.work-access-copy{padding:var(--space-32) var(--space-24)}}details>summary{list-style:none}details>summary::-webkit-details-marker{display:none}.disclosure-sign{width:14px;height:14px;position:relative;flex-shrink:0}.disclosure-sign:before,.disclosure-sign:after{content:"";position:absolute;background:currentColor;left:0;top:6px;width:14px;height:1px}.disclosure-sign:after{transform:rotate(90deg);transition:transform .2s}details[open]>summary:not([aria-expanded=false]) .disclosure-sign:after{transform:rotate(0)}.practice-section{display:grid;grid-template-columns:1fr 1fr;gap:var(--layout-gap-wide);border-bottom:1px solid var(--line)}.practice-intro h2{font-size:var(--font-size-timeline-title);letter-spacing:-.05em;line-height:1.05;margin:var(--space-37) 0 var(--space-27)}.practice-intro>p{max-width:340px;color:var(--muted);font-size:var(--font-size-body);line-height:1.65}.capabilities{border-top:1px solid var(--line)}.capability{border-bottom:1px solid var(--line)}.capability summary{position:relative;display:flex;align-items:center;gap:var(--space-22);padding:var(--space-27) 0}.capability summary:focus-visible{outline:none}.capability summary:focus-visible:after{content:"";position:absolute;inset:var(--space-12) calc(-1 * var(--space-8));border:2px solid var(--text);pointer-events:none}.capability h3{font-size:var(--font-size-accordion-title);letter-spacing:-.05em;line-height:1.2}.capability .disclosure-sign{margin-left:auto}.capability-content{display:flow-root;padding:0 var(--space-32) var(--space-32) 0}.capability-content>p{font-size:var(--font-size-body);line-height:1.7;margin:var(--space-2) 0 var(--space-20)}@media(max-width:1100px){.practice-section{gap:var(--layout-gap-medium)}.capability summary{gap:var(--space-16)}.capability-content{padding-right:0}}@media(max-width:800px){.practice-section{gap:var(--layout-gap-medium)}.capability summary{gap:var(--space-10)}}@media(max-width:560px){.practice-section{grid-template-columns:1fr;gap:var(--space-40)}.practice-intro h2{margin-top:var(--space-28)}.practice-intro>p{max-width:310px}.capability summary{padding:var(--space-23) 0;gap:var(--space-20)}.capability-content{padding:0 var(--space-10) var(--space-27) 0}}.about-section{border-bottom:1px solid var(--line)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--layout-gap-wide);margin-top:var(--space-64)}.experience-count>span{display:block;font-size:var(--font-size-experience);line-height:.8;letter-spacing:-.075em;margin-left:var(--experience-count-offset);white-space:nowrap}.count-plus{font-size:.55em;vertical-align:top;display:inline-block;margin:var(--space-4) 0 0 var(--space-12)}.experience-count>p{margin-top:var(--space-40);color:var(--muted)}.about-copy h2{font-size:var(--font-size-timeline-title);line-height:1.05;letter-spacing:-.05em;margin-bottom:var(--space-26)}.about-copy h2>span{display:block}.about-copy h2>span:last-child{white-space:nowrap}.about-copy>p{font-size:var(--font-size-body);line-height:1.7;max-width:655px;margin-bottom:var(--space-16)}.career-timeline{position:relative;z-index:2;margin-top:min(var(--showcase-spacing),var(--space-88))}.career-scroll{scroll-margin-top:var(--space-12);overflow:visible}.career-scale{position:relative}.career-tracks{position:relative;height:calc(var(--career-row) * 3)}.career-span{position:absolute;top:calc(var(--lane) * var(--career-row));left:var(--start);width:var(--duration);height:var(--career-row);padding:0 var(--space-7) var(--space-14) 0;background:transparent;text-align:left;color:color-mix(in srgb,var(--muted),var(--text) var(--track-highlight, 0%));font-size:var(--font-size-caption);line-height:1}.career-span>span{display:block;overflow:hidden;padding-block:var(--space-2);margin-block:calc(-1 * var(--space-2));white-space:nowrap;text-overflow:ellipsis}.career-span:after{content:"";position:absolute;inset:auto 2px 9px 0;height:3px;background:var(--career-color);opacity:var(--track-opacity);transform:scaleY(var(--track-emphasis));transform-origin:bottom}.career-span:before{content:"";position:absolute;left:0;bottom:9px;height:7px;width:1px;background:var(--career-color);opacity:var(--track-opacity)}.career-span:focus-visible{outline:none}.career-span:focus-visible>span:after{content:"";position:absolute;inset:0 var(--space-4) 0 calc(-1 * var(--space-4));border:2px solid var(--text);pointer-events:none}.career-span-current:after{right:0}.career-ruler{position:relative;height:67px;margin-top:var(--space-18);-webkit-user-select:none;user-select:none}.career-ruler:before{content:"";position:absolute;top:23px;left:0;right:0;height:1px;background:var(--line)}.career-tick{position:absolute;top:0;left:min(var(--position),calc(100% - 1px));width:1px;height:23px;font-style:normal;pointer-events:none}.career-tick:before{content:"";position:absolute;bottom:0;left:0;width:1px;height:calc(var(--tick-height) + var(--lens-lift, 0px));background:color-mix(in srgb,var(--tick-color),var(--ruler-highlight) var(--lens-light, 0%))}.career-tick>span{position:absolute;top:33px;left:0;transform:translate(-50%);font-size:var(--font-size-micro);line-height:1;letter-spacing:.02em;font-variant-numeric:tabular-nums;color:var(--muted)}.career-tick:first-child>span{transform:none}.career-now{left:auto;right:0}.career-now>span{left:auto;right:0;transform:none}.career-indicator{position:absolute;top:var(--indicator-top);bottom:44px;left:var(--indicator-left);width:1px;background:linear-gradient(var(--career-accent),color-mix(in srgb,var(--career-accent) 31%,transparent));pointer-events:none}.career-indicator:before{content:"";position:absolute;top:-2px;left:-2px;width:5px;height:5px;border-radius:50%;background:var(--career-accent)}.career-hint-mobile{display:none;color:var(--faint);font-size:var(--font-size-micro)}.career-popover{position:absolute;z-index:3;width:420px;max-width:100%;border:1px solid var(--popover-border);border-radius:3px;background:var(--popover-bg);box-shadow:0 12px 32px var(--popover-shadow)}.career-popover-content{position:relative;max-height:var(--popover-max-height);overflow-y:auto;overscroll-behavior-y:contain;padding:var(--space-23) var(--space-22) 0}.career-popover:after{content:"";position:absolute;left:0;right:0;top:100%;height:15px}.career-popover:before{content:"";position:absolute;top:100%;left:var(--popover-anchor);width:1px;height:var(--popover-gap);background:var(--career-accent)}.career-popover[data-placement=below]:before,.career-popover[data-placement=below]:after{top:auto;bottom:100%}.career-popover h3{padding-right:var(--space-15);font-size:var(--font-size-popover-title);line-height:1.15;letter-spacing:-.035em}.career-company-line{margin-top:var(--space-10);color:var(--muted);font-size:var(--font-size-small)}#career-dates{white-space:nowrap}.career-close{position:absolute;right:3px;top:3px;width:32px;height:32px;padding:0;background:transparent;color:var(--muted);font-size:var(--font-size-icon)}.career-close:focus-visible{outline-offset:calc(-1 * var(--space-4))}.career-expand{position:relative;display:flex;align-items:center;justify-content:space-between;width:100%;min-height:48px;margin-top:var(--space-18);padding:0;border-top:1px solid var(--line);background:transparent;font-size:var(--font-size-caption);text-align:left}.career-expand:focus-visible{outline:none}.career-expand:focus-visible:after{content:"";position:absolute;inset:var(--space-8) calc(-1 * var(--space-8));border:2px solid var(--text);pointer-events:none}.career-expand-sign{font-size:var(--font-size-icon);line-height:1;color:var(--muted)}.career-description{padding:0 0 var(--space-22);color:var(--muted);font-size:var(--font-size-small);line-height:1.6}.career-description p+p{margin-top:var(--space-14)}@media(max-width:1100px){.about-grid{gap:var(--layout-gap-medium)}}@media(max-width:800px){.about-copy h2>span{display:inline}.about-copy h2>span:last-child{white-space:normal}.career-scroll{overflow-x:auto;padding:var(--space-4);margin:calc(-1 * var(--space-4));overscroll-behavior-x:contain;scrollbar-width:none}.career-scroll::-webkit-scrollbar{display:none}.career-scale{min-width:1320px}.career-hint-mobile{display:block}.about-grid{margin-top:var(--space-56);gap:var(--layout-gap-tight)}}@media(max-width:560px){.about-grid{grid-template-columns:1fr;gap:var(--space-52);margin-top:var(--space-48)}.experience-count>p{margin-top:var(--space-29)}.count-plus{margin-left:var(--space-14)}}.side-projects-section{--mockup-bg: #111110;--sp-control-inset: var(--space-16);--sp-playback-height: calc(44px + 2 * var(--space-12) + 1px)}.sp-header{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;row-gap:var(--space-44);margin-bottom:var(--showcase-spacing)}.sp-header h2{grid-column:1 / 6;grid-row:2;min-width:0;font-size:var(--font-size-timeline-title);line-height:1.05;letter-spacing:-.05em;margin:0}.sp-intro{grid-column:7 / -1;grid-row:2;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;color:var(--muted);font-size:var(--font-size-body);line-height:1.6}.sp-intro p{min-width:0;max-width:30ch;padding-right:var(--space-28)}.sp-section-label{grid-column:1 / 4;grid-row:1;padding-top:var(--space-8)}.sp-shell{min-width:0}.sp-frame{display:grid;min-width:0}.sp-frame:before{content:"";grid-area:1 / 1;justify-self:end;width:calc((100% - 2px) * 2 / 3);margin:1px 1px var(--sp-playback-height) 0;background:var(--mockup-bg);pointer-events:none}.sp-panel{display:grid;grid-area:1 / 1;min-width:0;visibility:hidden;pointer-events:none}.sp-panel[data-active=true]{z-index:1;visibility:visible;pointer-events:auto}.sp-arrows{display:flex;gap:var(--space-8);flex-shrink:0}.sp-arrows button,.mockup-controls .mockup-play{display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid var(--line);background:transparent;transition:background var(--theme-color-duration, .2s),border-color var(--theme-color-duration, .2s)}.sp-arrows svg,.mockup-play svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1}.sp-arrows button:hover,.mockup-controls .mockup-play:hover:not(:disabled){background:var(--surface);border-color:var(--muted)}.sp-arrows button:focus-visible,.mockup-controls .mockup-play:focus-visible{outline:2px solid var(--text);outline-offset:var(--space-2)}.mockup-controls .mockup-play:focus-visible:after{content:none}.sp-navigation{display:flex;min-width:0;gap:var(--space-12)}.sp-navigation button{display:flex;align-items:center;background:transparent;min-width:0;min-height:44px;color:var(--muted);font-size:var(--font-size-small-compact);text-align:left;white-space:nowrap;padding:var(--space-10) var(--space-16);border:1px solid transparent}.sp-navigation button[aria-selected=true]{color:var(--text);border-color:var(--line);background:var(--surface)}.sp-navigation button:focus-visible{outline-offset:calc(-1 * var(--space-2))}.sp-toolbar{display:flex;justify-content:space-between;align-items:center;gap:var(--space-24);border:1px solid var(--line);padding:var(--sp-control-inset)}.side-projects-section .sp-panel{grid-template-columns:minmax(0,4fr) minmax(0,8fr);min-height:0;border:1px solid var(--line);border-bottom:0}.side-projects-section .mockup-visual{grid-column:2;grid-row:1;align-self:stretch;width:100%;min-width:0;min-height:0;aspect-ratio:16 / 9}.side-projects-section .project-info{grid-column:1;grid-row:1;border:0;border-right:1px solid var(--line)}.sp-project-heading,.sp-project-description{display:contents}.sp-project-description>p{font-size:var(--font-size-body);line-height:1.7;color:var(--muted);margin-bottom:var(--space-14)}.sp-project-description a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:var(--space-4)}@media(max-width:1600px){.sp-frame:before{align-self:start;width:calc(100% - 2px);aspect-ratio:21 / 9;margin-bottom:0}.side-projects-section .sp-panel{grid-template-columns:1fr;grid-template-rows:max-content 1fr}.side-projects-section .mockup-visual{grid-column:1;grid-row:1;aspect-ratio:21 / 9}.side-projects-section .project-info{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:var(--space-40);align-content:start;grid-column:1;grid-row:2;border-top:1px solid var(--line);border-right:0}.sp-project-heading,.sp-project-description{display:block;min-width:0}}@media(max-width:800px){.sp-header{row-gap:var(--space-27)}.sp-frame:before{aspect-ratio:16 / 9}.side-projects-section .mockup-visual{aspect-ratio:16 / 9}.side-projects-section .project-info{display:flex;gap:0}.sp-project-heading,.sp-project-description{display:contents}.sp-header h2{grid-column:1 / 9}.sp-section-label{grid-column:1 / -1}.sp-intro{grid-column:1 / -1;grid-row:3;gap:var(--space-16);padding:0}.sp-intro p{padding-right:0}.sp-toolbar{flex-wrap:wrap}.sp-navigation{flex:1 1 100%;display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4)}.sp-navigation button{padding-inline:var(--space-10)}.sp-arrows{margin-left:auto}}@media(max-width:560px){.side-projects-section{--sp-control-inset: var(--space-12)}.sp-header h2{grid-column:1 / -1}.sp-intro{grid-template-columns:1fr}.sp-intro p{max-width:36ch}.sp-toolbar{flex-wrap:nowrap;gap:var(--space-12);border-bottom:0}.sp-navigation{display:flex;flex:1 1 auto;gap:var(--space-4);overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none}.sp-navigation::-webkit-scrollbar{display:none}.sp-navigation button{flex:none;padding-inline:var(--space-8)}.sp-arrows{margin-left:0}.side-projects-section .sp-panel{grid-template-rows:max-content 300px;border-bottom:1px solid var(--line)}.side-projects-section .project-info{display:block;height:300px;min-height:0;overflow-y:auto;overscroll-behavior-y:contain;padding:var(--space-24)}.side-projects-section .project-info:focus-visible{outline-offset:-3px}.side-projects-section .project-kicker{display:none}.side-projects-section .project-info h3{font-size:1.5rem;margin:0 0 var(--space-16)}.sp-project-description>:last-child{margin-bottom:0}}.side-projects-section .mockup-media{grid-column:2;grid-row:1;display:flex;flex-direction:column;min-width:0}.side-projects-section .mockup-visual{position:relative;overflow:hidden;background:var(--mockup-bg)}.mockup-media .mockup-visual{flex:1 0 auto}.mockup-visual [data-mockup-viewport]{position:absolute;inset:0;opacity:0}.mockup-controls{--mockup-ruler-offset: 7.5px;display:flex;flex:none;align-items:center;gap:var(--space-24);min-width:0;min-height:var(--sp-playback-height);padding:var(--space-12) var(--space-24);padding-inline-end:var(--sp-control-inset);border-top:1px solid var(--line);background:var(--bg);clip-path:none}.mockup-controls .parameter-slider{flex:1;min-width:0;height:44px;padding-top:0}.mockup-controls .parameter-scale{top:calc(6px + var(--mockup-ruler-offset))}.mockup-controls input[type=range]::-webkit-slider-thumb{transform:translateY(var(--mockup-ruler-offset))}.mockup-controls input[type=range]::-moz-range-thumb{transform:translateY(var(--mockup-ruler-offset))}.mockup-controls .mockup-play{flex:none}.mockup-controls :is(input,button):disabled{cursor:default;opacity:.4}@media(max-width:1600px){.side-projects-section .mockup-media{grid-column:1;grid-row:1}}
