@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.03ez25a9g3i0n.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.3i9rha7jpxn0q.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.2o7ko1d-5m1xu.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.1ee5w62fj497l.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.1way2z9fj6cig.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.0szrwpqb9mkwe.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.45535valc9rzk.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_fe4d0f8a-module__6kuHYW__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_fe4d0f8a-module__6kuHYW__variable{--font-inter:"Inter", "Inter Fallback"}
:root{--nav-height:64px;--color-bg:#fff;--color-fg:#111;--color-muted:#6b6b6b;--color-border:#e6e6e6;--color-placeholder-bg:#ececec;--color-placeholder-fg:#9a9a9a;--font-sans:-apple-system, BlinkMacSystemFont, var(--font-inter), "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--container-max:1800px;--container-pad:clamp(12px, 2vw, 20px);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--space-9:96px}*{box-sizing:border-box;cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpolygon fill='black' points='12,1 14.3,9.7 23,12 14.3,14.3 12,23 9.7,14.3 1,12 9.7,9.7'/%3E%3C/svg%3E") 12 12,auto}.main-hero,.main-hero *{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpolygon fill='white' points='12,1 14.3,9.7 23,12 14.3,14.3 12,23 9.7,14.3 1,12 9.7,9.7'/%3E%3C/svg%3E") 12 12,auto}html,body{margin:0;padding:0}body{background:var(--color-bg);color:var(--color-fg);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;line-height:1.6}a{color:inherit;text-decoration:none}ul,dl{margin:0;padding:0;list-style:none}dd{margin:0}h1,h2,h3{letter-spacing:-.02em;margin:0;font-weight:600}h1{font-size:clamp(2.25rem,5vw,3.75rem);line-height:1.05}h2{font-size:clamp(1.375rem,2.5vw,1.75rem)}p{margin:0}img{max-width:100%;display:block}button{font:inherit;color:inherit}main>section,main>.case-study,.about,.contact{max-width:var(--container-max);padding-left:var(--container-pad);padding-right:var(--container-pad);margin:0 auto}.nav{z-index:10;position:sticky;top:0}.nav__row{max-width:var(--container-max);padding:12.24px var(--container-pad);justify-content:space-between;align-items:center;gap:var(--space-4);margin:0 auto;display:flex}.nav__row>*{color:var(--color-fg);font-size:1.045rem;font-weight:500;line-height:1;transition:color .15s}.nav--over-dark .nav__row>*{color:#fff}.nav--scrolled .nav__wordmark,.nav--scrolled .nav__tagline{display:none}.nav--scrolled .nav__row{justify-content:flex-end}.nav__wordmark{letter-spacing:-.01em;white-space:nowrap}.nav__tagline{text-align:center;flex:1}.nav__toggle{background:0 0;border:none;justify-content:center;align-items:center;width:32px;height:32px;padding:0;display:flex}@media (max-width:640px){.nav__row{align-items:start;row-gap:var(--space-1);grid-template-columns:1fr auto;display:grid}.nav__row>*{font-size:1.14rem}.nav__wordmark{grid-area:1/1}.nav__tagline{text-align:left;flex:none;grid-area:2/1}.nav__tagline-location{display:none}.nav__toggle{grid-area:1/2/3;align-self:center}}.nav__links{gap:var(--space-2);padding:var(--space-3) var(--container-pad) var(--space-5);max-width:var(--container-max);background:var(--color-bg);border-bottom:1px solid var(--color-border);flex-direction:column;margin:0 auto;display:flex}.nav__links a{padding:var(--space-2) 0;color:var(--color-muted);font-size:1.1rem;transition:color .15s;display:block}.nav__links a:hover{color:var(--color-fg)}.footer{max-width:var(--container-max);padding:var(--space-6) var(--container-pad) var(--space-8);border-top:1px solid var(--color-border);margin:0 auto;margin-top:var(--space-9);gap:var(--space-3);color:var(--color-muted);flex-wrap:wrap;justify-content:space-between;font-size:.875rem;display:flex}.footer a{color:var(--color-muted)}.footer a:hover{color:var(--color-fg)}.section{padding-top:var(--space-7);padding-bottom:var(--space-7)}.section--first{padding-top:0}.project-list{gap:var(--space-9);flex-direction:column;display:flex}@media (max-width:600px){.project-list{gap:var(--space-7)}}.project-row{gap:var(--space-7);grid-template-columns:minmax(220px,300px) 1fr;align-items:start;display:grid}@media (max-width:720px){.project-row{gap:var(--space-4);grid-template-columns:1fr}}.project-row__text h3{font-size:1.05rem;font-weight:500;line-height:1.3}.project-row__summary{margin-top:var(--space-2);color:var(--color-muted);font-size:.85rem;line-height:1.5}.project-row__meta{margin-top:var(--space-6);gap:var(--space-5);flex-direction:column;display:flex}.project-row__meta h4{text-transform:uppercase;letter-spacing:.04em;color:var(--color-muted);margin:0 0 var(--space-1);font-size:.75rem;font-weight:600}.project-row__meta p{font-size:.75rem;line-height:1.5}@media (max-width:720px){.project-row__meta{display:none}}.main-hero{padding-top:0;padding-bottom:0}@media (max-width:639px){.main-hero{padding-top:var(--space-9)}}@media (min-width:640px){.main-hero .carousel{height:calc(100vh - var(--nav-height));height:calc(100dvh - var(--nav-height))}}@media (max-width:639px){.main-hero .carousel{height:calc(100vh - var(--nav-height) - var(--space-9))!important;height:calc(100dvh - var(--nav-height) - var(--space-9))!important}}.carousel{background:var(--color-placeholder-bg);width:100%;position:relative;overflow:hidden}.carousel__slide{opacity:0;transition:opacity 1.2s;position:absolute;inset:0}.carousel__slide--active{opacity:1;z-index:1}.carousel__slide .smart-image{width:100%;height:100%;aspect-ratio:unset;position:absolute;inset:0}.carousel__arrow{z-index:2;background:#b4b4b473;border:none;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;padding:0;transition:background .15s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.carousel__arrow svg{display:block;position:relative}.carousel__arrow--prev svg{right:1px}.carousel__arrow--next svg{left:1px}.carousel__arrow:hover{background:#969696b3}.carousel__arrow--prev{left:var(--space-3)}.carousel__arrow--next{right:var(--space-3)}.smart-image{background:var(--color-placeholder-bg);width:100%;position:relative;overflow:hidden}.smart-image--placeholder{color:var(--color-placeholder-fg);letter-spacing:.02em;text-align:center;padding:var(--space-3);justify-content:center;align-items:center;font-size:.8rem;display:flex}.card .smart-image{transition:opacity .2s}.card:hover .smart-image{opacity:.92}.case-study{padding-bottom:var(--space-9)}.case-study__overview{max-width:760px;margin-top:var(--space-6);margin-bottom:var(--space-6)}.case-study__meta{gap:var(--space-6);max-width:480px;margin-bottom:var(--space-7);grid-template-columns:repeat(2,1fr);display:grid}@media (max-width:480px){.case-study__meta{grid-template-columns:1fr}}.case-study__overview h2,.case-study__meta h2{text-transform:uppercase;letter-spacing:.04em;color:var(--color-muted);margin-bottom:var(--space-1);font-size:.75rem;font-weight:600}.case-study__overview p{font-size:.75rem;line-height:1.5}.case-study__meta p{font-size:.75rem;line-height:1.4}.gallery{margin-top:var(--space-7);gap:var(--space-3);grid-template-columns:repeat(2,1fr);display:grid}@media (max-width:600px){.gallery{grid-template-columns:1fr}}.gallery--single{grid-template-columns:1fr}.case-study__next{margin-top:var(--space-9);padding-top:var(--space-6);border-top:1px solid var(--color-border);gap:var(--space-1);flex-direction:column;display:flex}.case-study__next span{text-transform:uppercase;letter-spacing:.06em;color:var(--color-muted);font-size:.75rem}.case-study__next a{letter-spacing:-.01em;font-size:.75rem;font-weight:600}.case-study__next a:hover{color:var(--color-muted)}.about{padding-top:var(--space-7);padding-bottom:var(--space-9);gap:var(--space-7);display:grid}.about__headshot{max-width:320px}.about__content h1{margin-bottom:var(--space-5)}.about__content p{max-width:640px;margin-bottom:var(--space-4);font-size:1.05rem}.about__contact{margin-top:var(--space-6);gap:var(--space-7);flex-wrap:wrap;display:flex}.about__contact dt{text-transform:uppercase;letter-spacing:.06em;color:var(--color-muted);margin-bottom:var(--space-1);font-size:.8rem}.about__contact dd{font-size:1.05rem;font-weight:500}.about__contact a:hover{color:var(--color-muted)}@media (min-width:720px){.about{grid-template-columns:320px 1fr}}.contact{padding-top:var(--space-7);padding-bottom:var(--space-9);max-width:640px}.contact p{margin-top:var(--space-4);color:var(--color-muted);font-size:1.05rem}.contact__links{margin-top:var(--space-7);flex-direction:column;display:flex}.contact__links li{justify-content:space-between;align-items:baseline;gap:var(--space-4);padding:var(--space-4) 0;border-bottom:1px solid var(--color-border);display:flex}.contact__links li:first-child{border-top:1px solid var(--color-border)}.contact__links span{text-transform:uppercase;letter-spacing:.06em;color:var(--color-muted);font-size:.85rem}.contact__links a{font-size:1.15rem;font-weight:500}.contact__links a:hover{color:var(--color-muted)}
