@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{--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}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;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffd9;position:sticky;top:0}.nav__row{max-width:var(--container-max);padding:var(--space-4) 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:.95rem;font-weight:500;line-height:1}.nav__wordmark{letter-spacing:-.01em;white-space:nowrap}.nav__tagline{text-align:center;flex:1;display:none}@media (min-width:480px){.nav__tagline{display:block}}.nav__toggle{cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;width:32px;height:32px;padding:0;display:flex}.nav__links{gap:var(--space-2);padding:0 var(--container-pad) var(--space-5);max-width:var(--container-max);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}.grid{gap:var(--space-9);grid-template-columns:1fr;display:grid}@media (max-width:600px){.grid{gap:var(--space-6)}}.card{display:block}.card__caption{margin-top:var(--space-2)}.card__caption h3{font-size:.9rem;font-weight:500;line-height:1.3}.card__caption p{color:var(--color-muted);margin-top:2px;font-size:.8rem;line-height:1.35}.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}.hero-carousel{background:var(--color-placeholder-bg);width:100%;position:relative;overflow:hidden}.hero-carousel__slide{opacity:0;transition:opacity 1s;position:absolute;inset:0}.hero-carousel__slide--active{opacity:1;z-index:1}.hero-carousel__slide .smart-image{width:100%;height:100%;aspect-ratio:unset;position:absolute;inset:0}.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}.case-study__sections{gap:var(--space-7);flex-direction:column;display:flex}@media (max-width:600px){.case-study__sections{gap:var(--space-5)}}.case-study__copy{max-width:900px;font-size:.75rem;line-height:1.6}.gallery{gap:var(--space-3);grid-template-columns:repeat(2,1fr);display:grid}@media (max-width:600px){.gallery{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)}
