/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--ease-out:cubic-bezier(0, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.static{position:static}.start{inset-inline-start:var(--spacing)}.resize{resize:both}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}:root{--paper:#111216;--paper-deep:#191b20;--ink:#f3f4f6;--muted:#a5a9b3;--line:#30333b;--signal:#8eafff;--surface:#1d2027;--nav-h:88px;--scroll-progress:0;--ease-out:cubic-bezier(.22, 1, .36, 1);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-h) + 20px)}body{background:var(--paper);color:var(--ink);font-family:var(--font-geist-sans), Arial, Helvetica, sans-serif;-webkit-font-smoothing:antialiased;margin:0}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible{outline:2px solid var(--signal);outline-offset:6px}::selection{background:var(--signal);color:var(--paper)}p,h1,h2,h3{margin:0}ul,ol{margin:0;padding:0;list-style:none}p{line-height:1.65}.shell{width:min(1280px,100% - 112px);margin-inline:auto}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip-link{z-index:50;background:var(--signal);color:var(--paper);padding:12px 20px;position:fixed;top:12px;left:12px;transform:translateY(-150%)}.skip-link:focus-visible{transform:translateY(0)}.eyebrow,.project-label,.project-index,.card-number,.experience-years,.chart-caption,.chart-footnote{font-family:var(--font-geist-mono), monospace;font-weight:400}.eyebrow{letter-spacing:.1em;text-transform:uppercase;font-size:.75rem}.arrow{vertical-align:middle;width:16px;height:16px;transition:transform .18s var(--ease-out);flex:0 0 16px;display:inline-block}a:hover .arrow{transform:translate(2px,-2px)}.site-nav{z-index:20;min-height:var(--nav-h);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#111216f0;justify-content:space-between;align-items:center;padding-inline:max(56px,50% - 640px);display:flex;position:sticky;top:0}.wordmark{letter-spacing:-.09em;font-size:2rem;font-weight:750;line-height:1}.wordmark span{color:var(--signal)}.nav-links{gap:36px;padding-left:65px;display:flex}.nav-links a{min-height:44px;color:var(--muted);align-items:center;font-size:.875rem;transition:color .18s;display:inline-flex}.nav-links a:hover,.nav-links a[aria-current=location]{color:var(--signal)}.nav-contact{border:1px solid #505663;border-radius:100px;align-items:center;gap:32px;min-height:42px;padding:0 19px;font-size:.875rem;display:inline-flex}.nav-contact:hover{border-color:var(--signal)}.hero{padding-top:49px}.hero-kicker{justify-content:space-between;align-items:center;display:flex}.hero-kicker>.eyebrow{color:var(--signal)}.availability{color:#b9bec9;align-items:center;gap:9px;font-size:.8125rem;display:flex}.status-dot{background:var(--signal);border-radius:100%;width:6px;height:6px;display:inline-block;box-shadow:0 0 0 4px #8eafff1a}.hero-grid{grid-template-columns:1.3fr 1fr;align-items:center;gap:8%;padding:36px 0 58px;display:grid}h1{letter-spacing:-.075em;font-size:clamp(4.3rem,7.65vw,7.2rem);font-weight:550;line-height:.94}h1>span{color:#b4b8c2}.name-dot{color:var(--signal)}.hero-statement{letter-spacing:-.035em;margin-top:29px;font-size:clamp(1.5rem,2.3vw,2rem);line-height:1.22}.hero-statement>span{color:var(--muted)}.hero-intro{max-width:455px;color:var(--muted);margin-top:19px;font-size:1rem}.hero-actions{flex-wrap:wrap;align-items:center;gap:27px;margin-top:28px;display:flex}.button{border-radius:100px;justify-content:space-between;align-items:center;gap:34px;min-height:52px;padding:0 23px;font-size:.875rem;font-weight:600;transition:background .18s,transform .18s;display:inline-flex}.button-primary{background:var(--signal);color:var(--paper)}.button-primary:hover{background:#acc4ff;transform:translateY(-2px)}.text-link{align-items:center;gap:16px;min-height:44px;font-size:.875rem;display:inline-flex}.text-link:hover{color:var(--signal)}.hero-feature{background:linear-gradient(145deg,#222631,#191c23);border:1px solid #363b46;border-radius:6px;padding:26px 28px 0;transition:border-color .22s,transform .22s;display:block;position:relative}.feature-top{color:#b7bdca;justify-content:space-between;align-items:center;display:flex}.feature-result{flex-direction:column;align-items:flex-start;gap:6px;padding:28px 0;display:flex}.result-number{letter-spacing:-.09em;color:var(--ink);font-size:clamp(5rem,8.5vw,8rem);line-height:.95}.result-number>span{font-size:.65em;font-weight:300}.feature-result p{color:#b7bdca;font-size:1rem;line-height:1.4}.feature-bottom{border-top:1px solid #383e4a;flex-direction:column;align-items:flex-start;gap:5px;margin-top:23px;padding:19px 0;font-size:.875rem;display:flex}.hero-footer{border-block:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;gap:16px;padding:22px 0;font-size:.75rem;display:flex}.hero-footer>span:nth-child(2){align-items:center;gap:14px;display:flex}.hero-footer i{background:#687083;border-radius:50%;width:3px;height:3px}.hero-footer a{gap:22px;display:flex}.chart-caption{color:#bcc3d1;justify-content:space-between;gap:10px;margin-bottom:19px;font-size:.75rem;line-height:1.5;display:flex}.chart-caption>span:last-child{color:#a1aabe}.bar-row+.bar-row{margin-top:17px}.bar-label{color:#c2c8d4;justify-content:space-between;gap:12px;margin-bottom:8px;font-size:.8125rem;display:flex}.bar-label>span:last-child{font-variant-numeric:tabular-nums}.bar-track{background:#8eafff12;border-radius:2px;height:9px;overflow:hidden}.bar{transform-origin:0;border-radius:2px;height:100%;display:block}.bar-baseline{background:#626c80}.bar-optimized{background:var(--signal)}.width-67{width:67.118%}.width-100{width:100%}.width-20{width:19.58%}.chart-footnote{color:#a8b0c0;margin-top:19px;font-size:.75rem;line-height:1.5}.section{padding-block:106px}.section-heading{justify-content:space-between;align-items:flex-end;gap:48px;margin-bottom:43px;display:flex}.section-heading .eyebrow,.about-copy>.eyebrow{color:#b8beca;margin-bottom:27px}.section-index{color:#929aaa;margin-right:12px}h2{letter-spacing:-.055em;font-size:clamp(2.5rem,4.5vw,4.1rem);font-weight:500;line-height:1.04}h2>span{color:var(--muted)}.section-heading>p{max-width:320px;color:var(--muted);padding-bottom:4px;font-size:1rem}.featured-projects{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.featured-project{border:1px solid var(--line);background:#17191e;border-radius:6px;transition:border-color .2s;display:flex;overflow:hidden}.featured-project:hover{border-color:#626f88}.project-card-link{flex-direction:column;width:100%;display:flex}.project-visual{border-bottom:1px solid var(--line);background:#20252f;padding:27px 29px}.visual-1{background:#20232b}.visual-top{justify-content:space-between;align-items:center;gap:16px;display:flex}.project-label{color:#aeb8cb;font-size:.75rem}.project-index{color:#959fb2;font-size:.75rem}.project-result{align-items:center;gap:24px;padding:27px 0;display:flex}.project-result strong{color:var(--ink);letter-spacing:-.07em;font-size:clamp(3.3rem,5.7vw,5.4rem);font-weight:450;line-height:1.05}.project-result>span{color:#bec6d5;max-width:110px;font-size:.875rem;line-height:1.4}.project-card-body{flex-direction:column;flex:1;padding:28px;display:flex}.project-title-row{justify-content:space-between;align-items:start;gap:15px;display:flex}h3{letter-spacing:-.035em;font-size:1.375rem;font-weight:500;line-height:1.3}.project-card-body>p{color:var(--muted);margin-top:15px;font-size:1rem}.tag-list{flex-wrap:wrap;gap:7px;margin-top:21px;display:flex}.tag-list li{color:#b7c0d0;border:1px solid #3a414e;border-radius:4px;padding:4px 9px;font-size:.75rem}.repo-link{width:fit-content;min-height:44px;color:var(--muted);align-items:center;gap:7px;font-size:.875rem;transition:color .18s;display:inline-flex}.repo-link:hover,a:hover>.repo-link,a:hover .project-card-body>.repo-link{color:var(--signal)}.project-card-body>.repo-link{margin-top:auto;padding-top:23px}.project-main>.repo-link{margin-top:10px}.more-work-label{border-bottom:1px solid var(--line);color:var(--muted);justify-content:space-between;gap:20px;margin-top:56px;padding-bottom:17px;display:flex}.more-work-label>span:last-child{color:#9aa5ba}.project-row{border-bottom:1px solid var(--line);grid-template-columns:35px minmax(0,1fr) 180px;align-items:start;gap:25px;padding:29px 0;display:grid}.project-row>.project-index{padding-top:5px}.project-main h3{margin-top:7px}.project-main>p{max-width:690px;color:var(--muted);margin-top:10px;font-size:1rem}.project-main .tag-list{margin-top:15px}.project-row:hover .project-main h3{color:var(--signal)}.project-signal{text-align:right;align-self:center}.project-signal strong{letter-spacing:-.055em;font-size:1.8rem;font-weight:400;display:block}.project-signal>span{color:var(--muted);margin-top:7px;font-size:.75rem;display:block}.expertise-wrap{color:#21252e;background:#e9ebef}.expertise-wrap .section-heading .eyebrow{color:#4c5566}.expertise-wrap .section-heading>p{color:#525b6c}.expertise-wrap .section-index{color:#586880}.expertise-wrap h2{font-size:clamp(2.3rem,4vw,3.6rem)}.capability-grid{border-top:1px solid #bcc3cf;border-bottom:1px solid #bcc3cf;grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.capability-card{border-right:1px solid #bcc3cf;flex-direction:column;padding:26px 24px 28px;display:flex}.capability-card:first-child{padding-left:0}.capability-card:last-child{border:0;padding-right:0}.capability-top{justify-content:space-between;align-items:center;margin-bottom:33px;display:flex}.card-number{color:#5c6980;font-size:.75rem}.capability-top>span:last-child{color:#506a98;font-size:1.8rem;line-height:1}.capability-card h3{max-width:210px}.capability-card p{color:#525b6c;margin:17px 0 26px;font-size:1rem}.tool-line{color:#454f62;margin-top:auto;font-size:.8125rem;line-height:1.7;display:block}.process-line{justify-content:space-between;align-items:center;gap:20px;padding-top:29px;font-size:.875rem;display:flex}.process-line>.eyebrow{color:#525b6c}.process-line b{color:#5c6980;margin-right:8px;font-size:.75rem;font-weight:400}.process-line>span[aria-hidden]{color:#5f6e85}.about-section{grid-template-columns:1fr 1fr;gap:12%;padding-block:117px;display:grid}.about-copy h2{font-size:clamp(2.5rem,3.8vw,3.5rem)}.about-copy>p:not(.eyebrow){color:var(--muted);margin-top:24px;font-size:1rem}.about-copy>p.large-copy{color:#d0d4dd;font-size:1.125rem}.about-copy>.text-link{color:var(--signal);margin-top:24px}.experience-column{padding-top:5px}.experience-column>.eyebrow{border-bottom:1px solid var(--line);color:var(--muted);padding-bottom:21px}.experience-item{border-bottom:1px solid var(--line);padding:23px 0}.experience-top{justify-content:space-between;align-items:center;margin-bottom:11px;display:flex}.experience-years{color:#aeb9cd;font-size:.75rem}.current-label{color:var(--signal);background:#232e45;border-radius:3px;padding:3px 8px;font-size:.75rem}.experience-item h3{font-size:1.125rem}.experience-item .company{color:#bac4d7;margin:5px 0 12px;font-size:.875rem}.experience-item>p:last-child{color:var(--muted);font-size:1rem}.contact{color:var(--ink);background:#1a1e27;border-block:1px solid #343b49}.contact-inner{padding-block:43px}.contact-top,.contact-bottom{justify-content:space-between;gap:24px;display:flex}.contact-top{align-items:center}.contact-top>span{font-size:.8125rem}.contact-heading{justify-content:space-between;align-items:flex-end;gap:28px;margin:42px 0 39px;display:flex}.contact-heading h2{letter-spacing:-.07em;font-size:clamp(3.5rem,8.2vw,7.5rem)}.contact-heading h2>span{color:#8eafff}.contact-heading>.button{flex-shrink:0;margin-bottom:8px}.contact-bottom{border-top:1px solid #343b49;align-items:flex-end;padding-top:23px}.contact-email{letter-spacing:-.035em;flex-wrap:wrap;align-items:center;gap:21px;font-size:clamp(1rem,1.8vw,1.5rem);display:flex}.contact-bottom>p{color:#adb6c7;font-size:.875rem}.contact a:focus-visible{outline-color:var(--signal)}.site-footer{align-items:center;gap:29px;min-height:114px;display:flex}.site-footer>p{color:var(--muted);font-size:.75rem}.site-footer>nav{gap:22px;margin-left:auto;font-size:.8125rem;display:flex}.site-footer>nav a{align-items:center;gap:6px;min-height:44px;display:inline-flex}.site-footer a:hover{color:var(--signal)}.back-top{color:var(--muted);margin-left:35px;font-size:.75rem}.notfound{flex-direction:column;justify-content:center;align-items:flex-start;gap:30px;min-height:100svh;padding:10vw;display:flex}.notfound h1{font-size:clamp(3rem,7vw,6rem)}.notfound-copy{color:var(--muted)}.scroll-progress{z-index:30;background:var(--signal);height:2px;transform:scaleX(var(--scroll-progress));transform-origin:0;pointer-events:none;position:fixed;top:0;left:0;right:0}.has-motion [data-reveal]{opacity:0;transition:opacity .65s var(--ease-out), transform .65s var(--ease-out);transform:translateY(20px)}.has-motion [data-reveal][data-visible=true]{opacity:1;transform:none}.has-motion .featured-project:nth-child(2){transition-delay:80ms}.has-motion [data-visible=true] .bar{animation:bar-arrive .9s var(--ease-out) both}@keyframes bar-arrive{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@media (min-width:1600px){.hero-grid{padding-block:50px 70px}}@media (max-width:1100px){.shell{width:calc(100% - 64px)}.site-nav{padding-inline:32px}.hero-grid{gap:5%}.hero-feature{padding:22px 22px 0}.chart-caption{flex-wrap:wrap;row-gap:3px}.capability-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.capability-card,.capability-card:first-child,.capability-card:last-child{padding:26px}.capability-card:nth-child(2n){border-right:0}.capability-card:nth-child(-n+2){border-bottom:1px solid #bcc3cf}.capability-card h3{max-width:none}.process-line{flex-wrap:wrap;gap:16px}.process-line>.eyebrow{flex-basis:100%;margin-bottom:6px}.about-section{gap:7%}.site-footer{gap:20px}.back-top{margin-left:5px}}@media (max-width:760px){:root{--nav-h:72px}.shell{width:calc(100% - 40px)}.site-nav{padding-inline:20px}.wordmark{font-size:1.75rem}.nav-links{gap:20px;padding:0}.nav-links a{font-size:.875rem}.nav-contact{gap:10px;min-height:38px;padding-inline:13px;font-size:.8125rem}.hero{padding-top:31px}.hero-kicker{flex-wrap:wrap;gap:14px}.hero-grid{grid-template-columns:1fr;gap:37px;padding-block:34px}h1{font-size:clamp(4.3rem,14vw,6.5rem)}.hero-statement{margin-top:25px;font-size:1.75rem}.hero-intro{max-width:510px}.hero-feature{padding:23px 24px 0}.feature-result{flex-direction:row;align-items:center;gap:25px;padding-block:28px}.result-number{font-size:5.7rem}.feature-result p{font-size:.875rem}.chart-caption{justify-content:space-between}.hero-footer{flex-wrap:wrap;row-gap:17px;font-size:.75rem}.hero-footer>span:nth-child(2){order:3;gap:10px;width:100%}.section{padding-block:70px}.section-heading{margin-bottom:30px;display:block}.section-heading>p{max-width:100%;margin-top:22px}.section-heading .eyebrow,.about-copy>.eyebrow{margin-bottom:22px}h2{font-size:2.75rem}.featured-projects{grid-template-columns:1fr;gap:22px}.project-visual{padding:24px}.project-result strong{font-size:4.5rem}.project-card-body{padding:24px}.project-row{grid-template-columns:22px minmax(0,1fr);gap:12px;padding-block:26px}.project-main{grid-column:2}.project-main h3{font-size:1.25rem}.project-signal{text-align:left;flex-wrap:wrap;grid-column:2;align-items:baseline;gap:14px;display:flex}.project-signal strong{font-size:1.6rem}.project-signal>span{margin-top:0}.more-work-label{margin-top:40px}.more-work-label .eyebrow{letter-spacing:.04em;font-size:.75rem}.about-section{grid-template-columns:1fr;gap:48px}.about-copy h2{font-size:2.75rem}.contact-inner{padding-block:29px}.contact-top{align-items:flex-start}.contact-top>span{text-align:right;max-width:95px}.contact-heading{flex-direction:column;align-items:flex-start;gap:26px;margin-block:35px}.contact-heading h2{font-size:clamp(3.2rem,9vw,5rem)}.contact-bottom{flex-direction:column;align-items:flex-start;gap:20px}.contact-email{overflow-wrap:anywhere;gap:12px;font-size:1.125rem}.site-footer{flex-wrap:wrap;gap:18px;min-height:150px;padding-block:27px}.site-footer>p{flex:1}.site-footer>nav{margin-left:0}.back-top{margin-left:auto}}@media (max-width:480px){.nav-links{gap:14px}.nav-contact{border:0;padding:0}.nav-contact .arrow{display:none}.hero-kicker .eyebrow,.availability{font-size:.75rem}.feature-result{gap:18px}.result-number{font-size:5rem}.chart-caption{font-size:.75rem}.capability-grid{grid-template-columns:1fr}.capability-card,.capability-card:first-child,.capability-card:last-child{border-right:0;padding:25px 0}.capability-card:not(:last-child){border-bottom:1px solid #bcc3cf}.capability-top,.capability-card p{margin-bottom:20px}.process-line{grid-template-columns:1fr;gap:18px;display:grid}.process-line>span[aria-hidden]{display:none}.contact-heading h2{font-size:clamp(2.6rem,10vw,3.9rem)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}.has-motion [data-reveal]{opacity:1;transform:none}}
