:root{--background:#fff;--text-primary:#111;--text-secondary:#737373;--type-size:16px;--type-line-height:28px;--type-weight-body:400;--type-weight-heading:500}html{background:var(--background);height:100%;min-height:100%}html,body{width:100%;min-height:100%;overflow-x:clip}body{color:var(--text-primary);background:var(--background);font-family:PP Neue Montreal,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:var(--type-size);font-weight:var(--type-weight-body);line-height:var(--type-line-height);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box;margin:0;padding:0}.site-shell{flex-direction:column;gap:clamp(64px,8vh,80px);width:100%;max-width:672px;min-height:100svh;margin:0 auto;padding:96px 24px;display:flex}.intro h1,.intro p{font-size:var(--type-size);line-height:var(--type-line-height)}.intro h1{font-weight:var(--type-weight-heading)}.intro p{color:var(--text-secondary);font-weight:var(--type-weight-body)}.bio-copy p{font-size:var(--type-size);line-height:var(--type-line-height);color:var(--text-primary);font-weight:var(--type-weight-body);text-wrap:pretty}.bio-copy p+p{margin-top:20px}.bio-copy a{color:inherit;text-underline-offset:2px;text-decoration-color:#11111159;text-decoration-thickness:1px;transition:text-decoration-color .14s}.bio-copy a:hover{text-decoration-color:currentColor}.bio-copy a:focus-visible{outline-offset:3px;border-radius:2px;outline:2px solid}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.works-gallery-page{color:#000;background:#fff;min-height:100svh;padding:56px 8px 48px;font-family:SF Pro Text,-apple-system,BlinkMacSystemFont,sans-serif;font-size:14px;font-weight:400;line-height:17.5px}.works-toolbar{z-index:10;background:#fff;height:56px;padding:8px;position:fixed;top:0;left:0;right:0}.works-toolbar-controls{grid-template-columns:calc(25% - 6px) max-content 1fr;align-items:center;gap:8px;width:100%;display:grid}.works-search,.works-case-studies{color:#000;height:40px;font:inherit;background:#0000000a;border:0;border-radius:8px}.works-search{min-width:0;position:relative}.works-search input{border-radius:inherit;color:#000;width:100%;min-width:0;height:100%;font:inherit;appearance:none;background:0 0;border:0;outline:0;padding:0 48px 0 12px}.works-search input::placeholder{color:#00000080;opacity:1}.works-search input::-webkit-search-cancel-button{display:none}.works-search-clear,.works-search-arrow{color:#000;background:0 0;border:0;border-radius:8px;place-items:center;width:36px;height:40px;display:grid;position:absolute;top:0;right:2px}.works-search-arrow{pointer-events:none}.works-search-arrow svg{fill:currentColor;width:16px;height:16px}.works-search-clear{cursor:pointer}.works-search-clear svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:1.5px;width:16px;height:16px}.works-search-clear:hover{background:#0000000f}.works-case-studies-control{width:max-content;position:relative}.works-case-studies{cursor:not-allowed;opacity:.45;white-space:nowrap;padding:0 16px;display:block}.works-case-studies-tooltip{z-index:20;visibility:hidden;color:#fff;opacity:0;pointer-events:none;white-space:nowrap;background:#000;border-radius:6px;padding:5px 8px;font-size:12px;line-height:15px;transition:opacity .12s,transform .12s,visibility 0s linear .12s;position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%,-2px)}.works-case-studies-control:hover .works-case-studies-tooltip,.works-case-studies:focus-visible+.works-case-studies-tooltip{visibility:visible;opacity:1;transition-delay:0s;transform:translate(-50%)}.works-back-link{color:#000;white-space:nowrap;background:0 0;border-radius:8px;justify-content:center;justify-self:end;align-items:center;height:40px;padding:0 12px;text-decoration:none;transition:background-color .14s;display:inline-flex}.works-back-link:hover{background:#0000000a}.works-back-link:active{background:#00000014}.works-search:focus-within,.works-search-clear:focus-visible,.works-case-studies:focus-visible,.works-back-link:focus-visible,.works-empty button:focus-visible,.work-card-link:focus-visible,.work-card-media-button:focus-visible{outline:2px solid var(--text-primary);outline-offset:2px}.work-gallery{--work-column-count:4;column-count:var(--work-column-count);column-gap:8px;width:100%;list-style:none}.work-gallery[data-masonry-ready=true]{column-count:auto;grid-template-columns:repeat(var(--work-column-count), minmax(0, 1fr));grid-auto-rows:1px;align-items:start;gap:0 8px;display:grid}.work-card{break-inside:avoid;width:100%;margin-bottom:24px}.work-gallery[data-masonry-ready=true] .work-card{align-self:start;margin-bottom:0}.work-card-link{color:inherit;border-radius:8px;text-decoration:none;display:block}.work-card-figure{width:100%}.work-card-media-button{width:100%;color:inherit;cursor:pointer;font:inherit;text-align:inherit;background:0 0;border:0;border-radius:8px;padding:0;display:block}.work-card-media{isolation:isolate;background:#efefed;border:0;border-radius:8px;width:100%;position:relative;overflow:hidden}.work-card-media img{object-fit:cover}.work-card-media--landscape{aspect-ratio:3/2}.work-card-media--portrait{aspect-ratio:3/4}.work-card-placeholder{position:absolute;inset:0}.work-card-caption{padding-top:4px}.work-card-caption h2,.work-card-caption p{font-size:14px;font-weight:400;line-height:17.5px}.work-card-caption h2{color:#000}.work-card-caption p{color:#00000080}.work-card-link:hover .work-card-media,.work-card-media-button:hover .work-card-media{opacity:.9}.works-lightbox{width:100vw;max-width:none;height:100dvh;max-height:none;padding:max(24px, env(safe-area-inset-top)) max(24px, env(safe-area-inset-right)) max(24px, env(safe-area-inset-bottom)) max(24px, env(safe-area-inset-left));color:#fff;cursor:default;background:0 0;border:0;margin:0;position:fixed;inset:0;overflow:hidden}.works-lightbox[open]{place-items:center;display:grid}.works-lightbox::backdrop{-webkit-backdrop-filter:blur(18px)saturate(.92);backdrop-filter:blur(18px)saturate(.92);background:#ffffff3d}.works-lightbox-media{isolation:isolate;width:min(90vw, var(--works-lightbox-height-width));cursor:default;transform-origin:50%;background:#fff;border-radius:8px;position:relative;overflow:hidden;box-shadow:0 30px 90px #0000002e,0 4px 20px #00000014}.works-lightbox-media img{border-radius:inherit;object-fit:contain;width:100%;height:auto;display:block}.works-lightbox-close{z-index:1;top:max(16px, env(safe-area-inset-top));right:max(16px, env(safe-area-inset-right));-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#000;cursor:pointer;background:#ffffffc2;border:1px solid #00000014;border-radius:50%;place-items:center;width:44px;height:44px;padding:0;display:grid;position:fixed;box-shadow:0 8px 30px #0000001a}.works-lightbox-close:hover{background:#fffffff0}.works-lightbox-close:focus-visible{outline-offset:3px;outline:2px solid #000000b8}.works-lightbox-close svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:1.5px;width:20px;height:20px}.works-empty{text-align:center;align-content:center;justify-items:center;min-height:calc(100svh - 104px);padding:48px 16px;display:grid}.works-empty h2,.works-empty button{font-size:var(--type-size);line-height:24px}.works-empty h2{font-weight:var(--type-weight-body)}.works-empty button{color:var(--text-primary);cursor:pointer;background:#f3f3f1;border:0;border-radius:8px;margin-top:12px;padding:8px 12px;font-family:inherit}@media (prefers-reduced-motion:no-preference){.intro,.bio-copy p,.work-card{animation:.5s both stagger-in}.intro{animation-delay:0s}.bio-copy p:first-child{animation-delay:50ms}.bio-copy p:nth-child(2){animation-delay:.1s}.bio-copy p:nth-child(3){animation-delay:.15s}.bio-copy p:nth-child(4){animation-delay:.2s}.bio-copy p:nth-child(5){animation-delay:.25s}.bio-copy p:nth-child(6){animation-delay:.3s}.work-card:nth-child(3n+2){animation-delay:50ms}.work-card:nth-child(3n){animation-delay:.1s}.works-lightbox[open]::backdrop{-webkit-backdrop-filter:blur()saturate();backdrop-filter:blur()saturate();background:#fff0;transition:background .28s,-webkit-backdrop-filter .32s cubic-bezier(.16,1,.3,1),backdrop-filter .32s cubic-bezier(.16,1,.3,1)}.works-lightbox[open][data-visible=true]::backdrop{-webkit-backdrop-filter:blur(18px)saturate(.92);backdrop-filter:blur(18px)saturate(.92);background:#ffffff3d}.works-lightbox[open] .works-lightbox-media{opacity:0;transform:translate3d(var(--works-lightbox-origin-x,0px), var(--works-lightbox-origin-y,12px), 0) scale(var(--works-lightbox-origin-scale,.88));will-change:opacity, transform;transition:opacity .22s,transform .36s cubic-bezier(.16,1,.3,1)}.works-lightbox[open][data-visible=true] .works-lightbox-media{opacity:1;transform:translate(0,0)scale(1)}.works-lightbox[open] .works-lightbox-close{opacity:0;transition:opacity .18s,transform .24s cubic-bezier(.16,1,.3,1);transform:scale(.84)}.works-lightbox[open][data-visible=true] .works-lightbox-close{opacity:1;transform:scale(1)}}@keyframes stagger-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (max-width:639px){.site-shell{gap:48px;padding-block:48px}.works-gallery-page{padding:56px 8px 36px}.works-toolbar{padding:8px}.works-case-studies{padding-inline:12px;font-size:14px}.works-back-link{padding-inline:8px}.works-toolbar-controls{grid-template-columns:minmax(0,1fr) max-content max-content}.work-gallery{--work-column-count:1}.works-lightbox{padding:max(12px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left))}.works-lightbox-media{width:min(94vw, var(--works-lightbox-height-width))}.works-lightbox-close{top:max(12px, env(safe-area-inset-top));right:max(12px, env(safe-area-inset-right))}}@media (min-width:640px) and (max-width:899px){.works-toolbar-controls{grid-template-columns:calc(50% - 4px) max-content 1fr}.work-gallery{--work-column-count:2}}@media (min-width:900px) and (max-width:1199px){.works-toolbar-controls{grid-template-columns:calc(33.3333% - 5.33333px) max-content 1fr}.work-gallery{--work-column-count:3}}@media (max-width:420px){.works-gallery-page{padding-top:104px}.works-toolbar{height:104px}.works-toolbar-controls{grid-template-columns:minmax(0,1fr) max-content;grid-template-areas:"search back""case-studies case-studies"}.works-search{grid-area:search}.works-case-studies-control{grid-area:case-studies}.works-back-link{grid-area:back}}
