@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-cyrillic-ext-standard-normal.DIwfbPUE.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-cyrillic-standard-normal.C0olyEE-.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-greek-standard-normal.DrHU7SY7.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-vietnamese-standard-normal.DX68cEVD.woff2)format("woff2-variations");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:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-latin-ext-standard-normal.HoL-AExg.woff2)format("woff2-variations");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-latin-standard-normal.BpEBLj1O.woff2)format("woff2-variations");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:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-cyrillic-ext-standard-italic.Bl6DJqma.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-cyrillic-standard-italic.Dibx14aP.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-greek-standard-italic.CMW9dfKg.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-vietnamese-standard-italic.Hh3oeMt5.woff2)format("woff2-variations");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:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-latin-ext-standard-italic.BhUEwDRF.woff2)format("woff2-variations");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-latin-standard-italic.BOLXpvkj.woff2)format("woff2-variations");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}.menu-items[data-astro-cid-is6tnavd]{align-items:center;gap:inherit;flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex;position:relative}li[data-astro-cid-is6tnavd]{align-items:center;display:flex}.team-portraits[data-astro-cid-t4t5jh4v]{flex-shrink:0;display:flex}.team-portraits[data-astro-cid-t4t5jh4v] img[data-astro-cid-t4t5jh4v]{width:var(--portrait-size,64px);height:var(--portrait-size,64px);object-fit:cover;border:3px solid var(--portrait-border,var(--surface));border-radius:50%;flex-shrink:0}.team-portraits[data-astro-cid-t4t5jh4v] img[data-astro-cid-t4t5jh4v]+img[data-astro-cid-t4t5jh4v]{margin-left:-16px}.marketing{background:var(--surface);color:var(--ink);-webkit-font-smoothing:antialiased;font-family:"Source Serif 4 Variable",Georgia,serif;font-size:16px;line-height:1.65}.marketing button,.marketing input,.marketing select,.marketing textarea{font-family:inherit}.marketing code,.marketing pre,.marketing kbd,.marketing samp{font-family:monospace}.marketing *,.marketing :before,.marketing :after{box-sizing:border-box}.marketing .wrap{width:min(960px,100% - 96px);margin-inline:auto}.marketing a{color:inherit;text-decoration:none}.marketing a:hover{color:var(--blue)}.marketing :focus-visible{outline:3px solid var(--blue);outline-offset:5px}.marketing img{max-width:100%;height:auto;display:block}.marketing h1,.marketing h2,.marketing h3,.marketing p{margin-top:0}.marketing h1,.marketing h2{letter-spacing:-.045em;font-weight:400;line-height:1.12}.marketing h1{margin-bottom:28px;font-size:clamp(44px,4.8vw,68px)}.marketing h1 strong{color:var(--blue)}.marketing h2{margin-bottom:24px;font-size:clamp(32px,3.3vw,46px)}.marketing h3{font-size:20px;line-height:1.35}.marketing .eyebrow{text-transform:uppercase;letter-spacing:.18em;color:var(--muted);margin-bottom:24px;font-size:11px;font-weight:700}.marketing .blue{color:var(--blue)}.marketing .section{padding-block:88px}.marketing .section-heading{justify-content:space-between;align-items:end;gap:32px;margin-bottom:40px;display:flex}.marketing .section-heading h2{margin-bottom:0}.marketing .section-heading>p{max-width:370px;color:var(--muted);margin:0}.marketing .text-link{color:var(--blue);align-items:center;gap:16px;font-size:14px;font-weight:700;display:inline-flex}.marketing .text-link:hover{text-underline-offset:5px;text-decoration:underline}.marketing .button{background:var(--blue);color:var(--button-text);border-radius:3px;align-items:center;gap:28px;padding:14px 22px;font-size:14px;font-weight:700;display:inline-flex}.marketing .button:hover{background:var(--button-hover);color:var(--button-text)}.marketing .button.contact-button{color:#fff;background:#0876b6}.marketing .button.contact-button:hover{color:#fff;background:#075a8b}.marketing .skip-link{background:var(--surface);z-index:10;padding:12px 20px;position:fixed;top:-100px;left:24px}.marketing .skip-link:focus{top:12px}.marketing [id],.marketing .prose [id]{scroll-margin-top:160px}.marketing .site-header{z-index:5;background:var(--surface);border-bottom:1px solid var(--line);align-items:center;gap:28px;padding-block:16px;display:flex;position:sticky;top:0}.marketing .brand{flex-shrink:0}.marketing .brand .fallback-logo{filter:brightness(0)}:root[data-theme=dark] .marketing .brand img{filter:none}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .marketing .brand img{filter:none}}.marketing .site-header nav{align-items:center;gap:26px;margin-left:auto;display:flex}.marketing .site-header nav a{white-space:nowrap;border-radius:3px;margin-inline:-8px;padding:12px 8px;font-size:16px;font-weight:600}.marketing .site-header nav a[aria-current]{color:var(--blue);background:light-dark(#e5f3fc,#203e52)}.marketing .header-contact{white-space:nowrap;border:1px solid #0000;padding:12px 17px;font-size:12px;font-weight:700;position:relative}.marketing .contact-rays{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.marketing .contact-rays path{fill:none;stroke:#b5e3ff;stroke-width:1.5px;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1px;opacity:0;transition:stroke-dashoffset .22s ease-out,opacity .22s ease-out}.marketing .header-contact:is(:hover,:focus-visible) .contact-rays path{stroke-dashoffset:0;opacity:1;transition-delay:var(--ray-delay)}.marketing .menu-toggle,.marketing .back-to-top{display:none}html:has(.mobile-menu[open]){overflow:hidden}.marketing .mobile-menu{background:var(--surface);width:min(340px,100% - 48px);max-width:none;height:100dvh;max-height:none;color:var(--ink);border:0;margin:0;padding:24px;position:fixed;inset:0 auto 0 0}.marketing .mobile-menu::backdrop{background:#0006}.marketing .mobile-menu-heading{justify-content:space-between;align-items:center;margin-bottom:28px;font-size:24px;display:flex}.marketing .menu-close{width:44px;height:44px;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:3px;font-size:32px}.marketing .mobile-menu .menu-items{flex-direction:column;align-items:stretch;gap:8px;display:flex}.marketing .mobile-menu nav a{border-radius:3px;width:100%;padding:12px;font-size:20px;display:block}.marketing .mobile-menu nav a[aria-current],.marketing .mobile-menu nav a:hover,.marketing .menu-close:hover{color:var(--blue);background:light-dark(#e5f3fc,#203e52)}.marketing .mobile-menu>.button{margin-top:32px}@media (prefers-reduced-motion:no-preference){.marketing .mobile-menu[open]{animation:.2s ease-out menu-slide-in}@keyframes menu-slide-in{0%{transform:translate(-100%)}to{transform:translate(0)}}}.marketing .theme-control:not([hidden]){width:44px;height:44px;color:inherit;border-radius:50%;flex-shrink:0;place-items:center;margin-left:auto;display:grid;position:relative}.marketing .theme-control>span[aria-hidden]{font-size:18px;line-height:1}.marketing .theme-control:hover{color:#fff;background:#35434f}.marketing .theme-control:has(select:focus-visible){outline-offset:2px;outline:2px solid #75c4f3}.marketing .theme-control select{appearance:none;color:#0000;width:100%;height:100%;font:inherit;cursor:pointer;background:0 0;border:0;outline:none;font-size:12px;position:absolute;inset:0}.marketing .theme-control option{color:var(--ink);background:var(--surface)}.marketing .visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.marketing footer{--portrait-border:light-dark(#232c33,#0d1419);background:var(--portrait-border);color:#fff;margin-top:30px}.marketing main:has(>.related-projects:last-child)+footer,.marketing main:has(>.client-strip:last-child)~footer{margin-top:0}.marketing .contact{justify-content:space-between;align-items:center;gap:32px;padding-block:64px;display:flex}.marketing .contact h2{margin:0;font-size:clamp(30px,3vw,42px)}.marketing .contact-action{--portrait-size:48px;--portrait-border:#243e4f;background:var(--portrait-border);border-radius:6px;align-items:center;gap:8px;padding:8px;display:flex}.marketing .contact-button{flex-shrink:0}.marketing .contact-label{position:relative}.marketing .contact-underline{pointer-events:none;width:100%;height:12px;position:absolute;bottom:-12px;left:0;overflow:visible}.marketing .contact-underline path{fill:none;stroke:#b5e3ff;stroke-width:4px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1px;opacity:0;transition:stroke-dashoffset .45s,opacity .45s}.marketing .contact-button:is(:hover,:focus-visible) .contact-underline path{stroke-dashoffset:0;opacity:1}@media (prefers-reduced-motion:reduce){.marketing .contact-underline path,.marketing .contact-rays path{transition:none}}.marketing footer a:hover{color:#92d6ff}.marketing .footer-bottom{color:#bdc9d1;border-top:1px solid #465159;align-items:center;gap:36px;padding-block:30px;font-size:12px;display:flex}.marketing .footer-bottom p{margin:0}.marketing .footer-bottom>div{flex-wrap:wrap;gap:20px;margin-left:auto;display:flex}.marketing .footer-bottom nav{gap:20px;display:flex}@media (width<=1150px){.marketing .site-header{gap:24px}.marketing .site-header nav{gap:18px}.marketing .header-contact{display:none}}@media (width<=760px){.marketing [id],.marketing .prose [id]{scroll-margin-top:100px}.marketing .site-header{gap:12px;min-height:80px;padding-block:12px}.marketing .brand img{width:110px}.marketing .site-header nav{display:none}.marketing .menu-toggle{border:1px solid var(--control-border);background:var(--surface);width:44px;height:44px;color:var(--ink);cursor:pointer;border-radius:3px;justify-content:center;align-items:center;margin-left:auto;padding:0;display:inline-flex}.marketing .header-contact{display:inline-flex}.marketing .back-to-top:not([hidden]){right:20px;bottom:max(24px, env(safe-area-inset-bottom));z-index:6;border:1px solid var(--control-border);background:var(--surface);width:48px;height:48px;color:var(--blue);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;padding:0;display:inline-flex;position:fixed;box-shadow:0 2px 12px #0000001f}.marketing .back-to-top:hover{border-color:var(--blue);background:light-dark(#e5f3fc,#203e52)}}@media (width<=700px){.marketing .wrap{width:calc(100% - 40px)}.marketing .section{padding-block:56px}.marketing .section-heading{flex-direction:column;align-items:start;gap:20px;margin-bottom:30px}.marketing .contact{flex-direction:column;align-items:start;padding-block:48px}.marketing .contact-action{--portrait-size:40px}.marketing .footer-bottom{flex-wrap:wrap;align-items:start;gap:24px}.marketing .footer-bottom>div{gap:16px;width:100%;margin-left:0}}
