@font-face{font-family:Geologica Variable;font-style:oblique 0deg 12deg;font-display:swap;font-weight:100 900;src:url(/assets/geologica-cyrillic-ext-full-normal-BKl47-XT.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:Geologica Variable;font-style:oblique 0deg 12deg;font-display:swap;font-weight:100 900;src:url(/assets/geologica-cyrillic-full-normal-rGVjBV5p.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geologica Variable;font-style:oblique 0deg 12deg;font-display:swap;font-weight:100 900;src:url(/assets/geologica-greek-full-normal-Bm5DdV9H.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:Geologica Variable;font-style:oblique 0deg 12deg;font-display:swap;font-weight:100 900;src:url(/assets/geologica-vietnamese-full-normal-DPFinsHH.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:Geologica Variable;font-style:oblique 0deg 12deg;font-display:swap;font-weight:100 900;src:url(/assets/geologica-latin-ext-full-normal-DEx20FH4.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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geologica Variable;font-style:oblique 0deg 12deg;font-display:swap;font-weight:100 900;src:url(/assets/geologica-latin-full-normal-Bw0WcW38.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}:root{--cobalt:#2437d6;--cobalt-deep:#1a28a3;--paper:#eef1f5;--ink:#15171f;--grey:#5b6172;--lilac:#c8c4ff;--line:#cfd4de;--font:"Geologica Variable", system-ui, sans-serif;--s-1:.844rem;--s0:1.125rem;--s1:1.5rem;--s2:2rem;--s3:2.667rem;--s4:3.556rem;--gutter:clamp(1.25rem, 4vw, 3.5rem);--section:clamp(4.5rem, 10vw, 8.5rem)}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--ink);font-family:var(--font);font-size:var(--s0);font-variation-settings:"SHRP" 0;-webkit-font-smoothing:antialiased;margin:0;font-weight:350;line-height:1.55}h1,h2,h3,p,ul,ol{margin:0}ul,ol{padding:0;list-style:none}a{color:inherit}:focus-visible{outline:3px solid var(--lilac);outline-offset:3px;border-radius:2px}.wrap{width:100%;max-width:88rem;padding-inline:var(--gutter);margin-inline:auto}.skip{z-index:10;background:var(--ink);color:var(--paper);padding:.6rem 1rem;position:absolute;top:-4rem;left:1rem}.skip:focus{top:1rem}.blue{background:var(--cobalt);color:var(--paper)}.bar{align-items:center;gap:2rem;padding-block:1.4rem;display:flex}.logo{color:inherit;margin-right:auto;display:block}.logo svg{width:auto;height:1.05rem;display:block}.nav{font-size:var(--s-1);gap:1.75rem;display:flex}.nav a{opacity:.82;text-decoration:none}.nav a:hover{opacity:1;text-underline-offset:.3em;text-decoration:underline}.lang{font-size:var(--s-1);position:relative}.lang summary{cursor:pointer;border:1px solid #eef1f573;border-radius:99px;align-items:center;gap:.45rem;padding:.4rem .8rem;font-weight:500;list-style:none;display:flex}.lang summary::-webkit-details-marker{display:none}.lang summary:before{content:"";background:linear-gradient(currentColor,currentColor) 50%/1.5px 100% no-repeat,linear-gradient(currentColor,currentColor) 50%/100% 1.5px no-repeat;border:1.5px solid;border-radius:50%;width:.95em;height:.95em}.lang summary:hover,.lang[open] summary{border-color:var(--paper)}.lang ul{z-index:5;background:var(--paper);min-width:11rem;color:var(--ink);border-radius:12px;padding:.4rem;position:absolute;top:calc(100% + .5rem);right:0;box-shadow:0 18px 40px -12px #0a104673}.lang li a{border-radius:8px;padding:.5rem .75rem;text-decoration:none;display:block}.lang li a:hover{background:#dde2ea}.lang li a[aria-current=page]{color:var(--cobalt);font-weight:650}.hero{grid-template-columns:minmax(0,7fr) minmax(0,4fr);align-items:end;gap:2.5rem 4rem;padding-top:clamp(3.5rem,9vw,8rem);padding-bottom:clamp(2.5rem,5vw,4rem);display:grid}.hero h1{letter-spacing:-.028em;font-variation-settings:"SHRP" 60;text-wrap:balance;max-width:17ch;font-size:clamp(2.1rem,4.6vw,4.25rem);font-weight:560;line-height:1.06}.lead{font-size:var(--s0);max-width:34rem;line-height:1.6}.hero .lead{color:#eef1f5db}.actions{flex-wrap:wrap;gap:.75rem;margin-top:1.75rem;display:flex}.btn{font-size:var(--s0);border-radius:99px;padding:.85rem 1.4rem;font-weight:550;line-height:1.2;text-decoration:none;transition:background-color .15s,color .15s;display:inline-block}.btn-light{background:var(--paper);color:var(--cobalt)}.btn-light:hover{background:var(--lilac);color:var(--ink)}.btn-line{box-shadow:inset 0 0 0 1.5px #eef1f599}.btn-line:hover{box-shadow:inset 0 0 0 1.5px var(--paper)}.wordmark{padding-inline:calc(var(--gutter) * .5);letter-spacing:-.012em;text-align:center;white-space:nowrap;font-variation-settings:"SHRP" 100;-webkit-user-select:none;user-select:none;font-size:22.4vw;font-weight:820;line-height:.74;animation:1.6s cubic-bezier(.2,.7,.1,1) .15s both sharpen;overflow:hidden}@keyframes sharpen{0%{font-variation-settings:"SHRP" 0;letter-spacing:.02em;font-weight:180}to{font-variation-settings:"SHRP" 100;letter-spacing:-.012em;font-weight:820}}.section{padding-block:var(--section)}.section+.section{border-top:1px solid var(--line)}h2{font-size:clamp(var(--s2), 4vw, var(--s4));letter-spacing:-.025em;font-variation-settings:"SHRP" 60;text-wrap:balance;font-weight:600;line-height:1.08}h3{font-size:var(--s1);letter-spacing:-.012em;font-weight:560;line-height:1.2}.section-lead{max-width:36rem;color:var(--grey);margin-top:1.25rem}.split{grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:3rem 5rem;display:grid}.split-head{align-self:start;position:sticky;top:2rem}.services li{border-top:1px solid var(--line);grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:.5rem 2.5rem;padding-block:1.75rem;display:grid}.services li:last-child{border-bottom:1px solid var(--line)}.services h3{grid-row:span 2}.services p{max-width:34rem}.tags{font-size:var(--s-1);color:var(--grey)}.ai{background:var(--lilac)}.ai-inner{padding-block:var(--section)}.ai h2{max-width:20ch}.ai-cols{grid-template-columns:1fr 1fr;gap:2.5rem 5rem;margin-top:3rem;display:grid}.ai-cols h3{margin-bottom:.75rem}.ai-cols p{max-width:34rem}.projects{border-top:1px solid var(--ink);margin-top:3.5rem}.project{border-bottom:1px solid var(--ink);grid-template-columns:minmax(0,7fr) minmax(0,4fr);align-items:center;gap:1rem 3rem;padding-block:clamp(1.5rem,3vw,2.5rem);text-decoration:none;display:grid}.project-domain{letter-spacing:-.045em;font-variation-settings:"SHRP" 100;overflow-wrap:anywhere;font-size:clamp(2.4rem,7.2vw,6.5rem);font-weight:700;line-height:1;transition:color .2s}.project:hover .project-domain,.project:focus-visible .project-domain{color:var(--cobalt)}.project-info{gap:.4rem;display:grid}.project-kind{font-weight:560}.project-text{color:var(--grey)}.more{max-width:40rem;color:var(--grey);margin-top:2rem}.team{grid-template-columns:repeat(3,minmax(0,1fr));gap:2.5rem;margin-top:3.5rem;display:grid}.team li{border-top:3px solid var(--cobalt);padding-top:1.25rem}.team h3{margin-bottom:.75rem}.team p{color:var(--grey)}.steps{counter-reset:step;grid-template-columns:repeat(5,minmax(0,1fr));gap:2rem;margin-top:3.5rem;display:grid}.steps li{counter-increment:step}.steps li:before{content:counter(step);background:var(--ink);width:2.6rem;height:2.6rem;color:var(--paper);border-radius:50%;place-items:center;margin-bottom:1.25rem;font-weight:600;display:grid}.steps h3{font-size:var(--s0);margin-bottom:.5rem;font-weight:620}.steps p{font-size:var(--s-1);color:var(--grey);line-height:1.55}.contact-inner{padding-top:var(--section);padding-bottom:2.5rem}.contact h2{max-width:16ch;font-size:clamp(2.3rem,6vw,5rem)}.contact .lead{color:#eef1f5db;margin-top:1.25rem}.mail{letter-spacing:-.03em;font-variation-settings:"SHRP" 100;text-underline-offset:.16em;overflow-wrap:anywhere;margin-top:2.5rem;font-size:clamp(1.6rem,4.4vw,3.4rem);font-weight:600;text-decoration:underline;text-decoration-thickness:.06em;display:inline-block}.mail:hover{color:var(--lilac)}.contact-foot{font-size:var(--s-1);border-top:1px solid #eef1f54d;grid-template-columns:auto 1fr;gap:1.5rem 4rem;margin-top:clamp(4rem,9vw,7rem);padding-top:2rem;display:grid}address{color:#eef1f5db;font-style:normal;line-height:1.7}address strong{color:var(--paper);font-weight:600}.foot-langs{flex-wrap:wrap;place-content:start flex-end;gap:.4rem 1.25rem;display:flex}.foot-langs a{opacity:.8;text-decoration:none}.foot-langs a:hover,.foot-langs a[aria-current=page]{opacity:1;text-underline-offset:.3em;text-decoration:underline}.copy{color:#eef1f5b3;grid-column:1/-1}@media (width<=1080px){.nav{display:none}.steps{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:2.75rem}}@media (width<=860px){.hero,.split,.project,.ai-cols,.team{grid-template-columns:minmax(0,1fr)}.split-head{position:static}.services li{grid-template-columns:minmax(0,1fr)}.services h3{grid-row:auto}.steps{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-foot{grid-template-columns:minmax(0,1fr)}.foot-langs{justify-content:flex-start}}@media (width<=520px){.steps{grid-template-columns:minmax(0,1fr)}.actions .btn{text-align:center;flex:auto}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.wordmark{animation:none}.btn,.project-domain{transition:none}}
