@font-face{font-display:swap;font-family:Geist;font-style:normal;font-weight:400;src:url(https://fonts.gstatic.com/s/geist/v4/gyByhwUxId8gMEwcGFU.woff2) format("woff2")}:root{--background:#ffffff;--text:#202024;--muted:#9f9fa6;--soft:#f7f7f9;--secondary:#515157}*{box-sizing:border-box}html{color:var(--text);font-family:Geist,Arial,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:geometricprecision}body,html{background:var(--background)}body{margin:0;min-height:100vh}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:2px}button{font:inherit}img{display:block;max-width:100%}.route-shell{min-height:100vh}html.page-entering,html.page-leaving{overflow-x:hidden}html.page-leaving .route-shell{animation:page-fade-out .17s cubic-bezier(.4,0,1,1) both;pointer-events:none}html.page-entering .route-shell{animation:page-fade-in .36s cubic-bezier(.16,1,.3,1) both}.home-page{margin:0 auto;max-width:650px;padding:96px 0 48px}.intro-grid{align-items:center;display:grid;grid-gap:41px;gap:41px;grid-template-columns:205px 1fr}.portrait{aspect-ratio:1/1.04;border-radius:8px;height:213px;object-fit:cover;width:205px;animation:intro-rise .76s cubic-bezier(.2,.7,.2,1) both}.intro-copy{animation:intro-rise .78s cubic-bezier(.2,.7,.2,1) .12s both}.eyebrow{color:var(--secondary);font-size:15px;line-height:1.35;margin:0 0 14px}.intro-copy h1{font-size:32px;font-weight:400;letter-spacing:0;line-height:1.16;margin:0}.current-work{animation:intro-rise-soft .7s cubic-bezier(.2,.7,.2,1) .28s both;color:var(--secondary);font-size:16px;line-height:1.42;margin:37px 0 0 55px;max-width:395px}.home-tabs{margin-top:202px}.tab-list{display:flex;gap:10px;justify-content:center;margin-bottom:28px}.tab-button{background:var(--background);border:0;border-radius:8px;color:var(--secondary);cursor:pointer;font-size:14px;line-height:1;padding:10px 17px;transition:background-color .16s ease,color .16s ease}.tab-button:hover,.tab-button[aria-selected=true]{background:var(--soft);color:var(--text)}.tab-panel{will-change:opacity,transform}.tab-panel.is-leaving{animation:tab-fade-out .13s cubic-bezier(.4,0,1,1) both;pointer-events:none}.tab-panel.is-entering{animation:tab-fade-in .3s cubic-bezier(.16,1,.3,1) both}.work-grid{display:grid;grid-gap:0;gap:0;grid-template-columns:repeat(3,217px);justify-content:center}.work-card{background:var(--background);border-radius:24px;display:flex;flex-direction:column;min-width:0;padding:16px;text-decoration:none;transition:background-color .16s ease}.work-card:hover{background:var(--soft)}.work-image{aspect-ratio:1;border-radius:8px;margin-bottom:13px;object-fit:cover;width:185px}.work-title{font-size:19px;line-height:1.18}.work-year{color:var(--muted);font-size:14px;line-height:1.4;margin-top:11px}.link-grid{display:grid;grid-gap:8px;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.list-link{background:var(--background);border-radius:8px;display:flex;flex-direction:column;gap:17px;min-height:76px;padding:17px 16px;text-decoration:none;transition:background-color .16s ease}.list-link:hover{background:var(--soft)}.list-link span{font-size:17px;line-height:1.25}.list-link small{color:var(--muted);font-size:14px;line-height:1.3}.bookmark-intro{color:var(--muted);font-size:15px;line-height:1.4;margin:0 0 16px;text-align:center}.case-page{padding:44px 0 80px}.case-shell{margin:0 auto;max-width:680px}.case-copy{margin:0 auto;max-width:560px}.case-copy.after-media{margin-top:40px}.back-link{color:var(--secondary);display:inline-flex;font-size:15px;line-height:1.4;margin-bottom:61px;padding:6px 0;text-decoration:none}.back-link:hover{text-decoration:underline;text-underline-offset:3px}.case-header{margin-bottom:40px}.case-header.compact{margin-bottom:28px}.case-header h1{font-size:32px;font-weight:400;letter-spacing:0;line-height:1.14;margin:0 0 9px}.case-header p{color:var(--muted);font-size:16px;line-height:1.35;margin:0}.case-section{margin-bottom:16px}.case-section h2{color:var(--muted);font-size:15px;font-weight:400;line-height:1.4;margin:0 0 11px}.case-section li,.case-section p{font-size:16px;line-height:1.55}.case-section p{margin:0 0 12px}.case-section ul{margin:0 0 12px;padding-left:18px}.case-section li{padding-left:7px}.case-section li+li{margin-top:6px}.media-grid{display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(6,1fr);margin-top:5px}.case-media{background:#ffffff;border-radius:8px;box-shadow:0 0 0 1px rgba(32,32,36,.08);height:auto;object-fit:cover;width:100%}.case-media.wide{grid-column:span 6}.case-media.half,.case-media.half-tall{grid-column:span 3}.case-media.phone{grid-column:span 2}@keyframes intro-rise{0%{opacity:0;transform:translateY(26px)}to{opacity:1;transform:translateY(0)}}@keyframes intro-rise-soft{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes page-fade-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(10px)}}@keyframes page-fade-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes tab-fade-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(8px)}}@keyframes tab-fade-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes page-swipe-forward-out{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(-28px)}}@keyframes page-swipe-forward-in{0%{opacity:0;transform:translateX(36px)}to{opacity:1;transform:translateX(0)}}@keyframes page-swipe-back-out{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(28px)}}@keyframes page-swipe-back-in{0%{opacity:0;transform:translateX(-36px)}to{opacity:1;transform:translateX(0)}}@media (max-width:719px){html[data-transition-direction=forward].page-leaving .route-shell{animation-name:page-swipe-forward-out}html[data-transition-direction=forward].page-entering .route-shell{animation-name:page-swipe-forward-in}html[data-transition-direction=back].page-leaving .route-shell{animation-name:page-swipe-back-out}html[data-transition-direction=back].page-entering .route-shell{animation-name:page-swipe-back-in}.home-page{align-items:center;display:flex;flex-direction:column;max-width:none;padding:32px 24px 48px}.home-tabs,.intro{max-width:342px;width:100%}.intro-grid{align-items:center;gap:24px;grid-template-columns:1fr}.portrait{height:auto;margin:0 auto;max-width:205px;width:56vw}.intro-copy h1{font-size:31px;max-width:440px}.current-work{margin-left:0;max-width:410px}.home-tabs{margin-top:120px}.tab-list{justify-content:center;overflow-x:auto;padding-bottom:3px}.link-grid,.work-grid{grid-template-columns:1fr}.work-card{margin:0 auto;max-width:320px;width:100%}.work-image{width:100%}.bookmark-intro{text-align:left}.case-page{padding:32px 24px 64px}.case-copy,.case-shell{max-width:342px}.case-copy.after-media{margin-top:32px}.back-link{margin-bottom:48px}.case-header h1{font-size:30px}.media-grid{grid-template-columns:1fr}.case-media.half,.case-media.half-tall,.case-media.phone,.case-media.wide{grid-column:auto}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:1ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:1ms!important}.tab-panel.is-entering,.tab-panel.is-leaving,html.page-entering .route-shell,html.page-leaving .route-shell{animation:none!important}}