@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-latin-wght-normal.BgDaEnEv.woff2)format("woff2-variations")}:root{--color-background:#fafaf8;--color-text:#101113;--color-muted:#646568;--color-preview:#686a6d;--page-gutter:clamp(1.25rem, 5.5vw, 5.5rem);--ease-out:cubic-bezier(.22, 1, .36, 1);color-scheme:light;background:var(--color-background);color:var(--color-text);font-synthesis:none;text-rendering:optimizelegibility;font-family:Geist Variable,Geist,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:var(--color-background);scroll-behavior:smooth;min-width:320px}body{background:var(--color-background);min-width:320px;min-height:100svh;color:var(--color-text);margin:0;font-size:1rem;line-height:1.55;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}a:focus-visible{outline:2px solid var(--color-text);outline-offset:4px}.skip-link{z-index:100;top:max(.75rem, env(safe-area-inset-top));left:max(.75rem, env(safe-area-inset-left));background:var(--color-text);color:var(--color-background);padding:.75rem 1rem;font-weight:600;transition:transform .15s ease-out;position:fixed;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.label-link{letter-spacing:.2em;text-transform:uppercase;text-underline-offset:.35em;justify-content:center;align-items:center;min-width:2.75rem;min-height:2.75rem;padding:.5rem;font-size:.75rem;font-weight:570;line-height:1.2;display:inline-flex}.label-link:hover{text-decoration:underline 1px}.arrow{margin-inline-start:.35em;font-size:1.15em;font-weight:450;line-height:1;display:inline-block}.standard-shell,.privacy-shell,.home-shell{min-height:100svh;position:relative}.site-header{z-index:10;top:max(2.75rem, env(safe-area-inset-top));right:var(--page-gutter);left:var(--page-gutter);height:5rem;position:absolute}.site-logo-link{justify-content:center;align-items:center;min-width:2.75rem;min-height:2.75rem;display:flex;position:absolute;top:0;left:50%;transform:translate(-50%)}.site-logo{width:11rem;height:auto}.site-nav{position:absolute;top:0}.site-nav--left{left:-.5rem}.site-nav--right{right:-.5rem}.site-footer{min-height:max(1rem, env(safe-area-inset-bottom));position:absolute;bottom:0;left:0;right:0}.home-cluster{width:min(44rem, calc(100% - 2 * var(--page-gutter)));justify-items:center;gap:.85rem;display:grid;position:absolute;top:38%;left:50%;transform:translate(-50%,-50%)}.home-brand a{justify-content:center;align-items:center;min-width:2.75rem;min-height:2.75rem;display:flex}.home-logo{width:clamp(18rem,24vw,22rem);height:auto}.home-main{text-align:center;width:100%}.home-main h1{letter-spacing:.18em;text-transform:uppercase;margin:0;font-size:.875rem;font-weight:570;line-height:1.65}.home-footer{position:absolute;top:75%;left:0;right:0}.home-nav{width:min(43rem, calc(100% - 2 * var(--page-gutter)));grid-template-columns:1fr 1fr;column-gap:4rem;margin-inline:auto;display:grid}.home-nav a:first-child{justify-self:start}.home-nav a:last-child{justify-self:end}.projects-main{min-height:100svh}.projects-list{display:grid}.project{min-height:100svh;padding:10rem var(--page-gutter) 6rem;text-align:center;transition:transform .35s var(--ease-out), opacity .25s var(--ease-out);flex-direction:column;justify-content:center;align-items:center;display:flex}.project-eyebrow,.project-meta{color:var(--color-muted);letter-spacing:.18em;text-transform:uppercase;margin:0;font-size:.75rem;font-weight:540;line-height:1.4}.project-title{letter-spacing:.015em;text-transform:uppercase;margin:1.1rem 0 0;font-size:clamp(1.5rem,2vw,1.875rem);font-weight:540;line-height:1.15}.project-title a{text-underline-offset:.25em;max-width:100%;min-height:2.75rem;padding-block:.3rem;padding-inline:.25rem;display:inline-block}.project-title a:hover{text-decoration:underline 1px}.project-description{max-width:46rem;margin:1.75rem auto 0;font-size:1rem;line-height:1.55}.project-meta{margin-top:2.3rem}.project-action{margin-top:1.35rem}.project-position{right:var(--page-gutter);letter-spacing:.16em;margin:0;font-size:.75rem;font-weight:600;position:fixed;bottom:12%}.projects-list--carousel .project:not(.is-active){color:var(--color-preview);opacity:.52;transform:scale(.76)}.projects-list--carousel .project:not(.is-active) .project-description,.projects-list--carousel .project:not(.is-active) .project-meta,.projects-list--carousel .project:not(.is-active) .project-action{display:none}.project-ticks{right:var(--page-gutter);gap:.75rem;display:grid;position:fixed;top:50%;transform:translateY(-50%)}.project-ticks span{background:var(--color-muted);opacity:.45;width:1.75rem;height:1px}.project-ticks span.is-active{background:var(--color-text);opacity:1;height:2px}.contact-main,.not-found-main{min-height:100svh;padding:8rem var(--page-gutter) 5rem;place-items:center;display:grid}.contact-content{text-align:center;margin-top:-4%}.contact-content h1,.not-found-label{letter-spacing:.28em;text-transform:uppercase;margin:0;font-size:.75rem;font-weight:570;line-height:1.4}.contact-content p{letter-spacing:.08em;text-transform:uppercase;margin:1.35rem 0 0;font-size:1rem;line-height:1.55}.contact-email{letter-spacing:.16em;text-transform:uppercase;text-underline-offset:.35em;align-items:center;min-height:2.75rem;margin-top:1.4rem;padding-inline:.5rem;font-size:1rem;font-weight:520;line-height:1.25;display:inline-flex}.contact-email:hover{text-decoration:underline 1px}.not-found-content{text-align:center;margin-top:1%}.not-found-content h1{letter-spacing:.035em;margin:2rem 0 1.65rem;font-size:clamp(1.4rem,1.8vw,1.75rem);font-weight:430;line-height:1.3}.privacy-main{min-height:100svh;padding:16rem var(--page-gutter) 7rem}.privacy-content{width:min(100%,42rem);margin-inline:auto}.privacy-content h1{letter-spacing:.09em;text-transform:uppercase;margin:0;font-size:1.5rem;font-weight:560;line-height:1.2}.privacy-content .effective-date{color:var(--color-muted);margin:1rem 0 2.4rem}.privacy-content p{margin:0 0 1.35rem;font-size:1rem;line-height:1.65}.privacy-content section{margin-top:2.8rem}.privacy-content h2{letter-spacing:.015em;margin:0 0 1rem;font-size:1.25rem;font-weight:570;line-height:1.3}.privacy-content a{overflow-wrap:anywhere;text-underline-offset:.2em;text-decoration:underline 1px}@media (width<=47.99rem){:root{--page-gutter:clamp(1.25rem, 7vw, 2rem)}.site-header{top:max(2.25rem, env(safe-area-inset-top));height:8rem}.site-logo-link{top:1.6rem}.site-logo{width:8.5rem}.label-link{letter-spacing:.18em;font-size:.75rem}.home-cluster{width:min(21rem, calc(100% - 2 * var(--page-gutter)));gap:.875rem;top:42%}.home-logo{width:10.5rem}.home-main h1{letter-spacing:.13em;font-size:.8125rem;line-height:1.65}.home-footer{top:78%}.home-nav{width:calc(100% - 2 * var(--page-gutter));column-gap:1rem}.project{padding:9rem var(--page-gutter) 5rem}.project-eyebrow,.project-meta{font-size:.75rem}.project-title{margin-top:1.5rem;font-size:clamp(1.35rem,6vw,1.6rem)}.project-description{max-width:22rem;margin-top:1.8rem;font-size:1rem}.project-meta{margin-top:2rem}.project-action{margin-top:1.4rem}.project-ticks{display:none}.contact-main,.not-found-main{padding-right:var(--page-gutter);padding-left:var(--page-gutter)}.contact-content{width:100%;margin-top:-13%}.contact-content p{letter-spacing:0;text-transform:none;margin-top:.5rem;font-size:1rem}.contact-email{overflow-wrap:anywhere;letter-spacing:.13em;max-width:100%;margin-top:.25rem;font-size:clamp(.75rem,3.5vw,.875rem)}.not-found-content h1{letter-spacing:.02em;margin:.675rem 0 0;font-size:clamp(1.25rem,5.25vw,1.45rem)}.privacy-main{padding:13rem var(--page-gutter) 5rem}.privacy-content h1{font-size:1.25rem}.privacy-content .effective-date{margin-top:1.2rem;margin-bottom:2.6rem}.privacy-content p{font-size:1rem;line-height:1.65}.privacy-content h2{font-size:1.125rem}}@media (height<=38rem) and (orientation:landscape){.home-cluster{top:18%;transform:translate(-50%)}.home-footer{top:auto;bottom:max(1rem, env(safe-area-inset-bottom))}.project,.contact-main,.not-found-main{padding-top:7rem;padding-bottom:2rem}.project-description,.project-meta,.project-action{margin-top:.75rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;transition-delay:0s!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
