:root{--white:#fff;--black:#000;--primary:#050505;--primary-hover:#242424;--primary-variant:#050505;--secondary:#7c8cff;--secondary-variant:#5a63d8;--background:#fafafa;--background-variant:#f3f3f3;--surface:#fff;--surface-subtle:#f7f7f7;--on-primary:#fff;--on-primary-variant:#fff;--on-secondary:#fff;--on-secondary-variant:#334155;--on-background:#050505;--on-background-variant:#5f5f5f;--on-surface:#151515;--primary-container:#eee;--secondary-container:#f0f2ff;--button-hover:#f2f2f2;--on-primary-container:#050505;--on-secondary-container:#6b3446;--link:#050505;--icon-muted:#5f6368;--border-subtle:#0000001a;--border-strong:#00000038;--category-project:#e8798c;--category-research:#7bc8a4;--category-career:#8fb3f4;--primary-rgb:5, 5, 5;--shadow-rgb:0, 0, 0;--white-rgb:255, 255, 255;--black-rgb:0, 0, 0;--page-max-width:1240px;--content-max-width:800px;--radius-sm:6px;--radius-md:8px;--space-page-x:24px;--space-page-y:64px}.ui-button{border:1px solid var(--border-subtle);background-color:var(--surface);min-height:42px;color:var(--on-primary-container);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;padding:9px 16px;font-size:.88rem;font-weight:600;line-height:1.2;text-decoration:none;transition:background-color .15s ease-out,border-color .15s ease-out,color .15s ease-out,transform .15s ease-out;display:inline-flex}.ui-button:hover{border-color:var(--border-strong);background-color:var(--button-hover);color:var(--on-primary-container);text-decoration:none;transform:translateY(-1px)}.ui-button-primary{border-color:var(--primary);background-color:var(--primary);color:var(--on-primary)}.ui-button-primary:hover{border-color:var(--primary-hover);background-color:var(--primary-hover);color:var(--on-primary)}.ui-button-ghost{background-color:#0000;border-color:#0000}.ui-card{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background-color:var(--surface);box-shadow:0 1px 1px rgba(var(--black-rgb), .02)}.ui-card-header,.ui-card-content{padding:18px 20px}.ui-badge{border:1px solid var(--border-subtle);color:var(--on-background);border-radius:999px;align-items:center;padding:4px 8px;font-size:.72rem;font-weight:600;line-height:1.25;display:inline-flex}.ui-badge-muted{border-color:var(--border-subtle);color:var(--on-background-variant)}.ui-select-field{color:var(--on-background-variant);letter-spacing:.08em;text-transform:uppercase;gap:5px;font-size:.72rem;font-weight:600;line-height:1.2;display:grid}.ui-select-label-sr{clip:rect(0, 0, 0, 0);white-space:nowrap;clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.ui-select-trigger{width:100%;display:block;position:relative}.ui-select{appearance:none;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background-color:var(--surface);width:100%;min-height:42px;color:var(--on-background);cursor:pointer;letter-spacing:0;text-transform:none;padding:9px 36px 9px 12px;font-size:.92rem;font-weight:600;line-height:1.2;transition:border-color .15s ease-out,box-shadow .15s ease-out,background-color .15s ease-out;display:block}.ui-select:hover{border-color:var(--border-strong);background-color:var(--surface-subtle)}.ui-select:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(var(--primary-rgb), .2);outline:none}.ui-select-chevron{color:var(--on-background-variant);pointer-events:none;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.ui-sheet-overlay{z-index:100;background-color:rgba(var(--black-rgb), .48);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);padding:0;animation:.16s ease-out overlay-fade-in;display:flex;position:fixed;inset:0}.ui-sheet-right{justify-content:flex-end}.ui-sheet-content{overscroll-behavior:contain;border-left:1px solid var(--border-subtle);background-color:var(--surface);width:min(380px,100vw - 28px);height:100dvh;box-shadow:-10px 0 28px rgba(var(--black-rgb), .12);border-radius:0;animation:.18s ease-out drawer-slide-in;overflow-y:auto}.ui-sheet-header{padding:max(22px, env(safe-area-inset-top)) 18px 18px;border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:flex-start;gap:16px;display:flex}@keyframes overlay-fade-in{0%{opacity:0}to{opacity:1}}@keyframes drawer-slide-in{0%{opacity:.92;transform:translate(14px)}to{opacity:1;transform:translate(0)}}*{box-sizing:border-box;margin:0;padding:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}html{scrollbar-gutter:stable;background-color:var(--background)}body{background-color:var(--background);color:var(--on-background);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.4}a{color:var(--link);text-decoration:none}button,input,textarea{font:inherit}.page-shell{width:min(var(--page-max-width), 100%);padding:var(--space-page-y) var(--space-page-x) 56px;margin:0 auto}.page-header{max-width:var(--content-max-width);flex-direction:column;align-items:flex-start;gap:12px;display:flex}.section-label{color:var(--on-background-variant);letter-spacing:.14em;text-transform:uppercase;font-size:.74rem;font-weight:700;line-height:1.2}.quiet-title{color:var(--on-background);margin:0;font-size:clamp(2.75rem,7vw,5rem);font-weight:600;line-height:.96}.quiet-copy{color:var(--on-background-variant);font-size:1rem;line-height:1.72}.button-row{flex-wrap:wrap;gap:10px;display:flex}.surface-panel{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background-color:var(--surface)}.meta-text{color:var(--on-background-variant);font-size:.82rem;line-height:1.4}@keyframes content-enter{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes content-enter-soft{0%{opacity:0;transform:translateY(8px)scale(.99)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes content-enter-left{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}@media only screen and (width<=800px){.page-shell{padding:34px 16px 40px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important}}.navbar-root{z-index:20;background-color:rgba(var(--white-rgb), .88);border-bottom:1px solid var(--border-subtle);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);width:100%;animation:.36s ease-out both navbar-enter;position:sticky;top:0}.navbar-container{max-width:var(--page-max-width);height:64px;padding:0 var(--space-page-x);justify-content:space-between;align-items:center;margin:0 auto;display:flex}.mobile-navbar-content{display:none}.navbar-brand,.mobile-navbar-brand{color:var(--on-background);letter-spacing:-.01em;font-size:.92rem;font-weight:500;line-height:1.2;text-decoration:none;animation:.38s ease-out 50ms both content-enter-left}.navbar-brand:hover,.mobile-navbar-brand:hover{color:var(--on-background);text-decoration:none}.menu-bars{width:42px;height:42px;min-height:42px;color:var(--on-background);-webkit-tap-highlight-color:transparent;background:0 0;border-color:#0000;border-radius:50%;padding:9px;display:none}.menu-bars svg{width:22px;height:22px}.menu-bars:hover{background-color:var(--surface-subtle);border-color:#0000;transform:none}.menu-bars:active{background-color:var(--background-variant)}.top-nav-container{flex-direction:row;align-items:center;gap:8px;display:flex}.top-nav-option{color:var(--on-background-variant);text-decoration:none;list-style-type:none;animation:.36s ease-out both content-enter;display:block}.top-nav-option:first-child{animation-delay:80ms}.top-nav-option:nth-child(2){animation-delay:.12s}.top-nav-option:nth-child(3){animation-delay:.16s}.top-nav-label{letter-spacing:-.01em;text-transform:none;padding:7px 9px;font-size:.92rem;font-weight:400;transition:color .15s ease-out;display:inline-block;position:relative}.top-nav-option:hover .top-nav-label,.top-nav-option:focus-visible .top-nav-label{color:var(--on-background)}.top-nav-option-active .top-nav-label{color:var(--on-background);font-weight:600}.top-nav-option:focus-visible{outline:2px solid var(--primary);outline-offset:3px;border-radius:3px}@keyframes navbar-enter{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@media screen and (width<=800px){.navbar-root{min-height:60px}.mobile-navbar-content{justify-content:space-between;align-items:center;min-height:60px;padding:0 10px 0 16px;display:flex}.mobile-navbar-brand{font-size:.86rem}.menu-bars{display:inline-flex}.navbar-container{display:none}}.mobile-drawer{flex-direction:column;display:flex}.drawer-heading{gap:6px;max-width:250px;display:grid}.drawer-title,.drawer-description,.drawer-section-label{margin:0}.drawer-title{color:var(--on-background);font-size:1rem;font-weight:600}.drawer-description{color:var(--on-background-variant);font-size:.86rem;line-height:1.5}.menu-close{background:0 0;border-color:#0000;flex:none;width:40px;height:40px;min-height:40px;padding:10px}.menu-close svg{width:18px;height:18px}.menu-close:hover,.menu-close:active{background-color:var(--surface-subtle);border-color:#0000;transform:none}.drawer-body{gap:10px;padding:20px 16px;display:grid}.drawer-section-label{color:var(--on-background-variant);letter-spacing:.1em;text-transform:uppercase;padding:0 10px;font-size:.72rem;font-weight:600}.drawer-nav-list{gap:3px;margin:0;padding:0;list-style:none;display:grid}.drawer-nav-link{min-height:48px;color:var(--on-background-variant);border-radius:8px;align-items:center;padding:11px 10px;font-size:.96rem;font-weight:500;text-decoration:none;display:flex}.drawer-nav-link:hover,.drawer-nav-link-active{background-color:var(--background-variant);color:var(--on-background);text-decoration:none}.drawer-nav-link:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.drawer-footer{padding:14px 18px max(18px, env(safe-area-inset-bottom));border-top:1px solid var(--border-subtle);color:var(--on-background-variant);margin-top:auto;font-size:.78rem}.home-blog{flex-direction:column;display:flex}.home-news-grid{grid-template-columns:minmax(280px,1.12fr) minmax(280px,.92fr) minmax(220px,.62fr);align-items:start;gap:28px;display:grid}.home-lead-story,.home-latest,.home-more{min-width:0}.home-lead-story{gap:14px;display:grid}.home-lead-story>.home-story-kicker{animation:.42s ease-out 40ms both content-enter}.home-lead-story img{animation:.48s ease-out 80ms both content-enter-soft}.home-lead-copy>*{animation:.42s ease-out both content-enter}.home-lead-copy>:first-child{animation-delay:.12s}.home-lead-copy>:nth-child(2){animation-delay:.155s}.home-lead-copy>:nth-child(3){animation-delay:.19s}.home-lead-copy>:nth-child(n+4){animation-delay:.225s}.home-lead-intro{display:contents}.home-lead-story img{aspect-ratio:1.32;border:1px solid var(--border-subtle);-o-object-fit:cover;object-fit:cover;-o-object-position:top center;object-position:top center;background-color:var(--surface-subtle);border-radius:3px;width:100%;display:block}.home-lead-copy,.home-lead-text{gap:11px;display:grid}.home-lead-copy h1,.home-column-heading h2,.home-list-story h3{color:var(--on-background);margin:0}.home-lead-copy h1{letter-spacing:-.035em;font-size:clamp(2rem,4vw,3.15rem);font-weight:600;line-height:1.02}.home-lead-copy p,.home-list-story p,.home-more-story small{color:var(--on-background-variant);margin:0;line-height:1.58}.home-lead-copy p{font-size:.98rem}.home-story-kicker{color:var(--on-background-variant);letter-spacing:.08em;text-transform:uppercase;flex-wrap:wrap;gap:10px;font-size:.72rem;font-weight:600;line-height:1.3;display:flex}.home-story-tags{flex-wrap:wrap;gap:7px;display:flex}.home-story-tags span{border:1px solid rgba(var(--black-rgb), .08);background-color:rgba(var(--white-rgb), .72);min-height:24px;color:var(--on-background-variant);border-radius:999px;align-items:center;padding:3px 8px;font-size:.72rem;font-weight:500;line-height:1.2;display:inline-flex}.home-story-actions{padding-top:3px}.home-column-heading{border-bottom:1px solid var(--border-strong);justify-content:space-between;align-items:baseline;gap:12px;padding-bottom:14px;animation:.42s ease-out .12s both content-enter;display:flex}.home-column-heading h2{letter-spacing:-.01em;font-size:1.05rem;font-weight:600}.home-column-heading a{color:var(--on-background-variant);font-size:.78rem;font-weight:500}.home-latest-list{display:grid}.home-list-story{border-bottom:1px solid var(--border-subtle);color:inherit;-webkit-tap-highlight-color:transparent;gap:8px;padding:18px 0;transition:background-color .15s ease-out,transform .15s ease-out;animation:.42s ease-out both content-enter;display:grid}.home-list-story:first-child{animation-delay:.16s}.home-list-story:nth-child(2){animation-delay:.2s}.home-list-story:nth-child(3){animation-delay:.24s}.home-list-story:nth-child(n+4){animation-delay:.28s}.home-list-story h3{font-size:clamp(1.2rem,2.1vw,1.55rem);font-weight:600;line-height:1.12}.home-list-story p{font-size:.9rem}.home-more{padding-left:6px}.home-more-list{display:grid}.home-more-story{border-bottom:1px solid var(--border-subtle);color:inherit;-webkit-tap-highlight-color:transparent;grid-template-columns:1fr;gap:6px;padding:14px 0;transition:background-color .15s ease-out,transform .15s ease-out;animation:.42s ease-out both content-enter;display:grid}.home-more-story:first-child{animation-delay:.16s}.home-more-story:nth-child(2){animation-delay:.2s}.home-more-story:nth-child(3){animation-delay:.24s}.home-more-story:nth-child(n+4){animation-delay:.28s}.home-more-story span{color:var(--on-background-variant);letter-spacing:.1em;text-transform:uppercase;font-size:.68rem;font-weight:600}.home-more-story strong{color:var(--on-background);font-size:.9rem;font-weight:600;line-height:1.18}.home-more-story small{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.78rem;display:-webkit-box;overflow:hidden}.home-more-story:hover strong,.home-list-story:hover h3,.home-column-heading a:hover{text-underline-offset:3px;text-decoration:underline}@media only screen and (width<=1040px){.home-news-grid{grid-template-columns:minmax(0,1fr) minmax(260px,.72fr)}.home-lead-story{grid-column:1/-1;grid-template-columns:minmax(0,.92fr) minmax(320px,1fr);gap:18px 24px}.home-lead-intro{display:contents}.home-lead-story .home-story-kicker{grid-column:1/-1}.home-lead-copy{align-self:end}.home-latest{border-left:0;padding-left:0}}@media only screen and (width<=800px){.home-blog{gap:0}.home-story-kicker{justify-content:flex-start}.home-news-grid,.home-lead-story{grid-template-columns:1fr}.home-news-grid{gap:28px}.home-lead-story .home-story-kicker{grid-column:auto}.home-lead-story{gap:16px}.home-lead-intro{grid-template-columns:minmax(112px,.34fr) minmax(0,1fr);align-items:start;gap:10px 16px;display:grid}.home-lead-copy{display:contents}.home-lead-story img{aspect-ratio:1;-o-object-position:top center;object-position:top center;border-radius:12px;grid-row:1/span 2}.home-lead-text{grid-column:2;align-self:center}.home-story-tags,.home-story-actions{grid-column:1/-1}.home-column-heading{border-bottom-width:1px;padding-bottom:10px}.home-column-heading h2{font-size:1.1rem;font-weight:600}.home-latest-list,.home-more-list{display:grid}.home-list-story,.home-more-story{min-height:44px;padding:16px 0}.home-list-story:active,.home-more-story:active{background-color:var(--surface-subtle)}.home-list-story h3{font-size:1.18rem;font-weight:600}.home-more{border-left:0;padding-left:0}.home-story-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.home-story-actions .ui-button{width:100%;min-height:48px;padding-inline:12px}}@media only screen and (width<=520px){.home-page{padding-top:22px}.home-lead-copy h1{font-size:1.65rem;font-weight:600}.home-story-actions{gap:8px}}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;width:100%;margin-top:8px;display:grid}.grid-item{height:100%;animation:.44s ease-out both content-enter-soft}.grid-empty{border-top:1px solid var(--border-subtle);grid-column:1/-1;padding:40px 0}.grid-empty h2{margin:0 0 6px;font-size:1.2rem;font-weight:600}.grid-empty p{color:var(--on-background-variant);margin:0}.grid-item:first-child,.grid-item:nth-child(2){animation-delay:.12s}.grid-item:nth-child(3),.grid-item:nth-child(4){animation-delay:.165s}.grid-item:nth-child(5),.grid-item:nth-child(6){animation-delay:.21s}.grid-item:nth-child(n+7){animation-delay:.255s}@media only screen and (width<=760px){.grid{grid-template-columns:1fr;gap:14px;margin-top:2px}}.portfolio-card{border:1px solid var(--border-subtle);background:var(--surface);width:100%;color:inherit;cursor:pointer;text-align:left;box-shadow:0 1px 2px rgba(var(--black-rgb), .025), 0 8px 24px rgba(var(--black-rgb), .025);border-radius:12px;transition:border-color .16s ease-out,box-shadow .16s ease-out,transform .16s ease-out;display:block;position:relative;overflow:hidden}.portfolio-card:before{content:none}.portfolio-card:hover{border-color:rgba(var(--black-rgb), .16);box-shadow:0 4px 16px rgba(var(--black-rgb), .045);transform:translateY(-1px)}.portfolio-card:focus-visible{outline:2px solid var(--primary);outline-offset:4px;box-shadow:none}.portfolio-card-body{z-index:1;gap:12px;min-height:252px;padding:20px 20px 0;display:grid;position:relative}.portfolio-card-topline{align-items:center;display:flex}.portfolio-type-label{color:var(--on-background-variant);letter-spacing:0;text-transform:none;align-items:center;font-size:.76rem;font-weight:500;line-height:1.4;display:inline-flex}.portfolio-type-label.type-Project{color:#9f384b}.portfolio-type-label.type-Research{color:#2f7258}.portfolio-type-label.type-Career{color:var(--secondary-variant)}.portfolio-card-meta{color:var(--on-background-variant);flex-wrap:wrap;gap:8px 18px;font-size:.76rem;font-weight:400;line-height:1.4;display:flex}.portfolio-card-meta span{align-items:center;gap:5px;display:inline-flex}.portfolio-card-meta svg{width:13px;height:13px;color:var(--icon-muted);flex:none}.portfolio-card-main{align-content:start;gap:8px;max-width:700px;display:grid}.portfolio-card h2{color:var(--on-background);letter-spacing:-.015em;margin:0;font-size:1.18rem;font-weight:600;line-height:1.22}.portfolio-card p{color:var(--on-background-variant);margin:0;font-size:.88rem;line-height:1.5}.portfolio-card-footer{border-top:1px solid var(--border-subtle);align-self:end;align-items:center;padding:12px 0;display:flex}.portfolio-card-stack{flex-wrap:wrap;gap:7px 8px;display:flex}.portfolio-card-stack span{background-color:var(--surface-subtle);min-height:27px;color:var(--on-background-variant);border:0;border-radius:999px;align-items:center;padding:4px 10px;font-size:.74rem;font-weight:500;line-height:1.2;display:inline-flex}.portfolio-card-Project .portfolio-card-stack span{color:#9f384b;background-color:#e8798c1f}.portfolio-card-Research .portfolio-card-stack span{color:#2f7258;background-color:#7bc8a429}.portfolio-card-Career .portfolio-card-stack span{color:#4b66a6;background-color:#8fb3f42b}.portfolio-card-action{width:100%;min-height:28px;color:var(--on-background);background-color:#0000;border:0;border-radius:0;justify-content:space-between;align-items:center;font-size:.78rem;font-weight:600;line-height:1.3;transition:color .15s ease-out;display:inline-flex}.portfolio-card-action span{display:inline-block}.portfolio-card-action svg{flex:none;transition:transform .15s ease-out}.portfolio-card:hover .portfolio-card-action,.portfolio-card:focus-visible .portfolio-card-action{color:var(--on-background)}.portfolio-card:hover .portfolio-card-action svg,.portfolio-card:focus-visible .portfolio-card-action svg{transform:translate(2px)}@media only screen and (width<=760px){.portfolio-card{border-color:rgba(var(--black-rgb), .08);box-shadow:0 1px 2px rgba(var(--black-rgb), .025), 0 6px 18px rgba(var(--black-rgb), .035);-webkit-tap-highlight-color:transparent;border-radius:14px}.portfolio-card:active{background-color:var(--surface-subtle);box-shadow:0 1px 2px rgba(var(--black-rgb), .025);transform:scale(.99)}.portfolio-card-body{gap:13px;min-height:0;padding:18px 18px 0}.portfolio-card-footer{padding:11px 0}.portfolio-card-action{justify-self:stretch;min-height:44px;margin-left:0;font-size:.82rem}.portfolio-card-action svg{stroke-width:2.25px;width:18px;height:18px}}@media (prefers-reduced-motion:reduce){.portfolio-card,.portfolio-card:before,.portfolio-card-action,.portfolio-card-action svg{transition:none}.portfolio-card:hover{transform:none}}.case-study{--case-study-article-width:680px;flex-direction:column;align-items:stretch;gap:34px;display:flex}.case-study-header>*{animation:.42s ease-out both content-enter}.case-study-header>:first-child{animation-delay:35ms}.case-study-header>:nth-child(2){animation-delay:75ms}.case-study-header>:nth-child(n+3){animation-delay:.115s}.case-study>.case-study-carousel{animation:.48s ease-out .15s both content-enter-soft}.case-study-content>section{animation:.42s ease-out both content-enter}.case-study-content>section:first-child{animation-delay:.195s}.case-study-content>section:nth-child(2){animation-delay:.235s}.case-study-content>section:nth-child(3){animation-delay:.275s}.case-study-content>section:nth-child(n+4){animation-delay:.315s}.case-study-header{width:100%;max-width:var(--case-study-article-width);grid-template-columns:minmax(0,1fr);gap:14px;margin-inline:auto;padding:0;display:grid}.case-study-breadcrumb{color:var(--on-background-variant);flex-wrap:wrap;align-items:center;gap:7px;font-size:.84rem;font-weight:450;line-height:1.4;display:flex}.case-study-breadcrumb button{color:inherit;cursor:pointer;font:inherit;background:0 0;border:0;padding:0}.case-study-breadcrumb button:hover{color:var(--on-background);text-underline-offset:3px;text-decoration:underline}.case-study-breadcrumb button:focus-visible{outline:2px solid var(--primary);outline-offset:3px;border-radius:2px}.case-study-breadcrumb span:last-child{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.case-study-header h1{color:var(--on-background);letter-spacing:-.011em;margin:0;font-size:42px;font-weight:600;line-height:52px}.case-study-deck{color:var(--on-background-variant);margin:0;font-size:1.08rem;line-height:1.55}.case-study-meta{color:var(--on-background-variant);text-align:left;flex-wrap:wrap;align-items:center;gap:8px;font-size:.84rem;font-weight:400;line-height:1.54;display:flex}.case-study-meta span:not(.case-study-type){color:var(--on-background-variant)}.case-study-type{background-color:var(--surface-subtle);min-height:30px;color:var(--on-background);border-radius:999px;align-items:center;padding:6px 12px;font-size:.8rem;font-weight:500;line-height:1.2;display:inline-flex}.case-study-type.type-Project{color:#9f384b;background-color:#e8798c24}.case-study-type.type-Research{color:#2f7258;background-color:#7bc8a429}.case-study-type.type-Career{color:var(--secondary-variant);background-color:#8fb3f42e}.case-study-carousel{width:100%;max-width:var(--case-study-article-width);gap:16px;min-width:0;margin-inline:auto;display:grid}.carousel-frame{background-color:var(--background);border:0;border-radius:0;width:100%;min-width:0;max-width:100%;position:relative;overflow:hidden}.carousel-viewport{width:100%;min-width:0;max-width:100%;overflow:hidden}.carousel-container{touch-action:pan-y pinch-zoom;display:flex}.carousel-slide{flex:0 0 100%;min-width:0}.carousel-slide img{aspect-ratio:16/9;-o-object-fit:contain;object-fit:contain;-o-object-position:center center;object-position:center center;background-color:var(--surface-subtle);-webkit-user-select:none;user-select:none;width:100%;max-height:420px;display:block}.carousel-controls{pointer-events:none;justify-content:space-between;align-items:center;padding:10px;display:flex;position:absolute;inset:0}.carousel-button{border:1px solid rgba(var(--black-rgb), .08);background-color:rgba(var(--white-rgb), .92);width:38px;height:38px;color:var(--on-background);cursor:pointer;pointer-events:auto;box-shadow:0 2px 8px rgba(var(--black-rgb), .08);border-radius:999px;justify-content:center;align-items:center;transition:background-color .15s ease-out,border-color .15s ease-out,color .15s ease-out;display:inline-flex}.carousel-button:hover{border-color:var(--primary);background-color:var(--primary-container);color:var(--primary-variant)}.carousel-button:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.carousel-status{color:var(--on-background-variant);justify-self:center;font-size:.82rem;font-weight:400;line-height:1.4}.carousel-dots{justify-content:center;align-items:center;gap:4px;display:flex}.carousel-dot{background-color:rgba(var(--shadow-rgb), .22);cursor:pointer;border:0;border-radius:999px;width:7px;height:7px;padding:0;transition:width .22s ease-out,background-color .22s ease-out,opacity .22s ease-out;position:relative}.carousel-dot:before{content:"";border-radius:999px;position:absolute;inset:-8px -6px}.carousel-dot:hover{background-color:rgba(var(--shadow-rgb), .34)}.carousel-dot-active{background-color:var(--primary-variant);width:20px}.carousel-dot:focus-visible{outline:2px solid var(--primary);outline-offset:4px}.case-study-content{width:100%;max-width:var(--case-study-article-width);gap:42px;margin-inline:auto;display:grid}.case-study-content h2{color:var(--on-background);letter-spacing:-.016em;margin:0 0 16px;font-size:24px;font-weight:600;line-height:30px}.case-study-content p,.case-study-list{color:rgba(var(--black-rgb), .8);letter-spacing:-.003em;margin:0;font-family:Georgia,Cambria,Times New Roman,Times,serif;font-size:19px;font-weight:400;line-height:31px}.case-study-list li{font:inherit;padding-left:2px}.case-study-overview{gap:24px;display:grid}.case-study-overview-section{gap:18px;display:grid}.case-study-overview-section+.case-study-overview-section{padding-top:12px}.case-study-overview-section h3{color:var(--on-background);letter-spacing:-.01em;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:1.12rem;font-weight:600;line-height:1.35}.case-study-list{gap:6px;padding-left:28px;display:grid}.case-study-list li::marker{color:var(--on-background)}.case-study-resources .button-row{justify-content:flex-start}.stack-list{flex-wrap:wrap;gap:10px 8px;display:flex}.stack-list .ui-badge{border:1px solid rgba(var(--black-rgb), .18);background-color:rgba(var(--black-rgb), .035);min-height:30px;color:var(--on-background);padding:6px 12px;font-size:.82rem;font-weight:500;line-height:1.2}.case-study-next{border-top:1px solid var(--border-subtle);padding-top:28px}.case-study-next button{width:100%;color:var(--on-background);cursor:pointer;text-align:left;background:0 0;border:0;gap:7px;padding:0;display:grid}.case-study-next span{color:var(--on-background-variant);letter-spacing:.1em;text-transform:uppercase;font-size:.76rem;font-weight:600}.case-study-next strong{font-size:1.5rem;font-weight:600;line-height:1.2}.case-study-next button:hover strong{text-underline-offset:4px;text-decoration:underline}.case-study-next button:focus-visible{outline:2px solid var(--primary);outline-offset:5px;border-radius:2px}@media only screen and (width<=800px){.case-study-header{padding:0}.case-study{gap:28px}.case-study-header h1{letter-spacing:-.018em;font-size:clamp(2.2rem,10vw,3rem);line-height:1.12}.carousel-slide img{aspect-ratio:16/10;max-height:280px}.carousel-controls{padding:8px 12px}.carousel-button{width:36px;height:36px}.case-study-resources .button-row{display:grid}.case-study-resources .ui-button{width:100%}.case-study-content h2{font-size:22px;line-height:28px}.case-study-content p,.case-study-list{font-size:17px;line-height:28px}}@media only screen and (width<=420px){.carousel-slide img{aspect-ratio:16/10}}.portfolio{flex-direction:column;gap:28px;display:flex}.portfolio>.page-header{border-bottom:1px solid var(--border-subtle);text-align:left;gap:10px;max-width:760px;padding:8px 0 22px;display:grid}.portfolio>.page-header>*{animation:.42s ease-out both content-enter}.portfolio>.page-header>:first-child{animation-delay:30ms}.portfolio>.page-header>:nth-child(2){animation-delay:70ms}.portfolio>.page-header>:nth-child(n+3){animation-delay:.11s}.portfolio>.page-header .section-label{color:var(--on-background-variant);letter-spacing:.12em;margin:0;font-size:.74rem;font-weight:700;line-height:1.3}.portfolio>.page-header .quiet-title{letter-spacing:-.035em;max-width:720px;margin:0;font-size:clamp(1.9rem,4vw,2.75rem);font-weight:600;line-height:1.06}.portfolio>.page-header .quiet-copy{width:min(680px,100%);color:var(--on-background-variant);margin:0;font-size:.94rem;line-height:1.62}.portfolio-tools{grid-template-columns:minmax(0,1fr) 132px;align-items:end;gap:12px;padding-top:2px;display:grid}.portfolio-results{color:var(--on-background-variant);margin:-14px 0 -8px;font-size:.78rem;line-height:1.4}.portfolio-tools>*{animation:.42s ease-out both content-enter}.portfolio-tools>:first-child{animation-delay:.145s}.portfolio-tools>:nth-child(n+2){animation-delay:.18s}.portfolio-filter{width:132px}.portfolio-filter .ui-select{border-radius:3px;min-height:44px;padding:9px 30px 9px 12px;font-size:.86rem}.portfolio-filter .ui-select-chevron{width:14px;height:14px;right:10px}.search-bar-input{box-sizing:border-box;border:1px solid var(--border-subtle);background-color:var(--surface);width:100%;min-height:44px;color:var(--on-background);cursor:text;background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20height='24px'%20viewBox='0%20-960%20960%20960'%20width='24px'%20fill='%235f6368'%3e%3cpath%20d='M784-120%20532-372q-30%2024-69%2038t-83%2014q-109%200-184.5-75.5T120-580q0-109%2075.5-184.5T380-840q109%200%20184.5%2075.5T640-580q0%2044-14%2083t-38%2069l252%20252-56%2056ZM380-400q75%200%20127.5-52.5T560-580q0-75-52.5-127.5T380-760q-75%200-127.5%2052.5T200-580q0%2075%2052.5%20127.5T380-400Z'/%3e%3c/svg%3e");background-position:12px;background-repeat:no-repeat;border-radius:3px;padding:10px 12px 10px 40px;font-size:.95rem;display:block}.search-bar-input::placeholder{color:var(--on-background-variant)}.search-bar-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(var(--primary-rgb), .2);outline:none}@media only screen and (width<=800px){.portfolio{gap:22px}.portfolio>.page-header{text-align:left;gap:8px;padding:0 0 18px}.portfolio>.page-header .quiet-title,.portfolio>.page-header .quiet-copy{margin:0}.portfolio-tools{grid-template-columns:minmax(0,1fr) 118px;align-items:center;gap:8px}.search-bar-input,.portfolio-filter .ui-select{background-color:var(--background-variant);border-color:#0000;border-radius:8px}.portfolio-filter{width:118px;margin:0}.portfolio-filter .ui-select{min-height:44px;padding-inline:10px 28px;font-size:.84rem}}@media only screen and (width<=360px){.portfolio-tools{grid-template-columns:1fr}.portfolio-filter{justify-self:end}}.about-page{flex-direction:column;gap:42px;display:flex}.about-intro{grid-template-columns:minmax(200px,.42fr) minmax(0,720px);align-items:start;gap:clamp(48px,7vw,88px);width:100%;display:grid}.about-photo{aspect-ratio:1;-o-object-fit:cover;object-fit:cover;filter:saturate(.94);border-radius:8px;width:min(240px,100%);animation:.48s ease-out both content-enter-soft;display:block}.about-copy{width:100%;max-width:720px}.about-copy>*{animation:.42s ease-out both content-enter}.about-copy>:first-child{animation-delay:40ms}.about-copy>:nth-child(2){animation-delay:70ms}.about-copy>:nth-child(3){animation-delay:.105s}.about-copy>:nth-child(4){animation-delay:.14s}.about-copy>:nth-child(n+5){animation-delay:.175s}.about-copy h1{color:var(--on-background);letter-spacing:-.04em;margin:8px 0 24px;font-size:clamp(2rem,4vw,2.85rem);font-weight:600;line-height:1.06}.about-copy p:not(.section-label){color:var(--on-background-variant);margin:0 0 18px;font-size:1rem;line-height:1.74}.about-copy h2{color:var(--on-background);letter-spacing:.1em;text-transform:uppercase;margin:28px 0 8px;font-size:.82rem;font-weight:600;line-height:1.3}.about-copy h1+h2{margin-top:0}.about-copy p:last-child{margin-bottom:0}.about-links{border:0;border-top:1px solid var(--border-subtle);width:100%;max-width:none;box-shadow:none;background:0 0;border-radius:0;margin:0;animation:.42s ease-out .21s both content-enter}.about-links-content{grid-template-columns:minmax(200px,.42fr) minmax(0,720px);align-items:start;gap:clamp(48px,7vw,88px);padding:22px 0 0;display:grid}.about-links-heading{gap:6px;display:grid}.about-links-heading p:not(.section-label){color:var(--on-background-variant);margin:0;font-size:.84rem;line-height:1.5}.about-connect-list{-moz-column-gap:28px;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px;display:grid}.about-connect-link{border-bottom:1px solid var(--border-subtle);min-height:46px;color:var(--on-background);justify-content:space-between;align-items:center;gap:12px;padding:11px 0;font-size:.9rem;font-weight:500;line-height:1.3;text-decoration:none;transition:border-color .15s ease-out,color .15s ease-out,transform .15s ease-out;animation:.42s ease-out both content-enter;display:flex}.about-connect-link:first-child{animation-delay:.25s}.about-connect-link:nth-child(2){animation-delay:.285s}.about-connect-link:nth-child(3){animation-delay:.32s}.about-connect-link:nth-child(4){animation-delay:.355s}.about-connect-link:nth-child(n+5){animation-delay:.39s}.about-connect-link svg{width:14px;height:14px;color:var(--on-background-variant);flex:none;transition:color .15s ease-out,transform .15s ease-out}.about-connect-link:hover{border-color:var(--border-strong);color:var(--on-background);text-decoration:none;transform:translateY(-1px)}.about-connect-link:hover svg{color:var(--on-background);transform:translate(1px,-1px)}.about-connect-link:focus-visible{outline:2px solid var(--primary);outline-offset:3px;border-radius:2px}@media only screen and (width<=800px){.about-page{gap:32px}.about-intro{text-align:left;grid-template-columns:1fr;gap:24px}.about-photo{border-radius:8px;width:min(160px,48vw)}.about-copy h1{margin-bottom:20px;font-size:clamp(1.9rem,9vw,2.6rem)}.about-copy p:not(.section-label){font-size:.96rem;line-height:1.7}.about-links{max-width:none}.about-links-content{grid-template-columns:1fr;gap:16px;padding-top:20px}.about-connect-list{grid-template-columns:1fr}.about-connect-link{min-height:48px;font-size:.94rem}}
