@layer components{.odometer{display:inline-flex}.odometer_digits{align-items:flex-start;display:flex}.odometer_col{height:1lh;display:block;overflow:clip}.odometer_track{translate:0 calc(-100% / (var(--_steps) + 1) * var(--_steps));flex-direction:column;display:flex}.odometer_digit,.odometer_suffix{text-align:center;height:1lh;display:block}.odometer_suffix{color:var(--text-2)}@media not (min-width:48rem){.selected-works-item.is-hidden-mobile{display:none}}.selected-work-item{width:100%;color:var(--text);flex-flow:column;text-decoration:none;display:flex}.category-wrap{z-index:2;padding-bottom:1rem;position:relative}.category-list{flex-flow:wrap;justify-content:flex-start;align-items:center;gap:.4rem;display:flex}@media (min-width:30rem){.category-list{flex-flow:row}}.tag{--cap-offset:var(--cap-offset-mono);border:var(--border-width) solid var(--border);background-color:var(--background-fill);color:var(--text);font-family:var(--font-label);font-size:max(.66rem, var(--floor-label));font-weight:var(--primary-regular);line-height:var(--line-height-large);letter-spacing:var(--letter-spacing-label);text-transform:uppercase;justify-content:center;align-items:center;padding:.25rem .5rem;display:inline-flex}@media (min-width:30rem){.tag{font-size:max(.75rem, var(--floor-label));-webkit-backdrop-filter:blur(.625rem);backdrop-filter:blur(.625rem)}}.tag.is-template{background-color:var(--background-inverse);color:var(--text-inverse)}.work-media{isolation:isolate;position:relative}.work-glow{--work-glow-c:var(--work-accent,transparent);z-index:-1;pointer-events:none;opacity:0;box-shadow:0 0 3rem 0 color-mix(in oklab, var(--work-glow-c) 48%, transparent), 0 1.5rem 9rem 1rem color-mix(in oklab, var(--work-glow-c) 45%, transparent);transition:opacity var(--dur-slower) var(--ease-out), scale var(--dur-slowest) var(--ease-out), --work-glow-c .9s var(--ease-out);position:absolute;inset:0;scale:.94}.work-glow:after{content:"";opacity:.5;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .5 0 0 0 0 .5 0 0 0 0 .5 0 0 0 1 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:absolute;inset:-8rem;mask-image:radial-gradient(closest-side,#000 55%,#0000 100%)}.work-image-wrap{aspect-ratio:5/6;width:100%;position:relative;overflow:hidden;container-type:inline-size}@media (min-width:48rem){.work-image-wrap{aspect-ratio:1}}.work-image-wrap.square{aspect-ratio:5/6;border:var(--border-width) solid var(--border-inverse)}.work-image,.work-image-hover{object-fit:cover;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;scale:1.01}.work-image{z-index:1}.work-image-hover{z-index:2;--work-reveal:0px;mask-image:radial-gradient(circle at var(--work-x,50%) var(--work-y,50%), #000 calc(var(--work-reveal) * .7), #00000080 calc(var(--work-reveal) * .86), transparent var(--work-reveal))}@media not ((hover:hover) and (min-width:48rem)){.work-image-hover{display:none}}.work-image-hover{transition:--work-reveal .6s cubic-bezier(.55, 0, .45, 1), scale .45s var(--ease-out)}@media (hover:hover) and (min-width:48rem){.work-glow{visibility:hidden;transition:opacity var(--dur-slower) var(--ease-out), scale var(--dur-slowest) var(--ease-out), --work-glow-c .9s var(--ease-out), visibility 0s linear .9s}.selected-work-item:hover .work-glow{visibility:visible;transition-delay:0s}.selected-work-item:hover .work-image{transition:scale var(--dur-slowest) var(--ease-out);scale:1.03}.selected-work-item:hover .work-image-hover{--work-reveal:var(--work-reach,225cqw);transition:--work-reveal .95s cubic-bezier(.33, 0, .15, 1), scale .55s var(--ease-out);scale:1.03}.selected-work-item:hover .work-glow{--work-glow-c:var(--work-accent-hover,var(--work-accent,transparent));opacity:var(--work-glow-strength,.6);scale:1}}.selected-work-item.is-inview .work-glow{opacity:calc(var(--work-glow-strength,.6) * .75);scale:1}@media not ((hover:hover) and (min-width:48rem)){.selected-work-item{-webkit-tap-highlight-color:transparent}.work-image-wrap{transition:scale .3s var(--ease-out)}.selected-work-item:active .work-image-wrap{transition-duration:var(--press-duration);scale:.985}.work-glow{box-shadow:0 0 1.25rem 0 color-mix(in oklab, var(--work-glow-c) 40%, transparent), 0 1.5rem 4.5rem -.75rem color-mix(in oklab, var(--work-glow-c) 36%, transparent)}.work-glow:after{inset:-4.5rem}}@supports (animation-timeline:view()){@media (not ((hover:hover) and (min-width:48rem))) and (prefers-reduced-motion:no-preference){.work-glow{transition:--work-glow-c .6s var(--ease-out);animation:linear both work-glow-scroll;animation-timeline:view();animation-range:cover}}}@keyframes work-glow-scroll{0%,12%{opacity:0;animation-timing-function:ease-in-out;scale:.94}42%,58%{opacity:calc(var(--work-glow-strength,.6) * .75);animation-timing-function:ease-in-out;scale:1}88%,to{opacity:0;scale:.94}}@media (prefers-reduced-motion:reduce){.work-glow,.work-image-hover,.selected-work-item:hover .work-image-hover{transition:none}}.show-web{z-index:3;opacity:0;display:inline-flex;position:absolute;inset:1rem 1rem auto auto}.show-web_button{font-family:var(--control-font-family);letter-spacing:var(--control-letter-spacing);background-color:var(--button-2-background);color:var(--button-2-text);font-size:var(--control-font-size);font-weight:var(--control-font-weight);text-transform:var(--control-text-transform);align-items:center;gap:.6rem;padding:.35rem .6rem .35rem .5rem;display:flex}.show-web_icon{width:.875rem}.bio-text-wrap{display:none}.project-text-wrap{margin-top:var(--space-xsmall);flex-flow:column;justify-content:space-between;align-items:flex-start;gap:.4rem;display:flex}.project-heading-wrap{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.25rem 1rem;width:100%;display:flex}.project-heading-text{font-family:var(--font-body);font-size:1.15rem;font-weight:var(--primary-medium);line-height:var(--line-height-medium)}@media (min-width:30rem){.project-heading-text{font-size:1.25rem}}@media (min-width:48rem){.project-heading-text{font-size:1.2rem}}.project-client,.project-description{color:var(--text-2);font-size:max(var(--text-small), var(--floor-copy));line-height:var(--text-small-line-height)}.project-client{flex:0 auto;min-width:0}.project-description{max-width:var(--max-width-medium);text-wrap:balance}}@property --work-reveal{syntax:"<length>";inherits:false;initial-value:0}@property --work-glow-c{syntax:"<color>";inherits:false;initial-value:#0000}
