:root{color-scheme:dark;--paper:#0d0f11;--surface:#15181b;--ink:#f2f0ea;--muted:#9b9b94;--line:#2d3033;--accent:#f05a34;--dark:#171a1f;--dark-line:#3f4248;--sans:Arial,Helvetica,sans-serif;--mono:"SFMono-Regular",Consolas,"Liberation Mono",monospace}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);text-rendering:optimizeLegibility}a{color:inherit;text-decoration:none}.header{height:72px;max-width:1480px;margin:auto;padding:0 clamp(20px,4.5vw,72px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{font:700 17px/1 var(--mono);letter-spacing:-.07em}.brand span{color:var(--muted);font-weight:400}nav{display:flex;gap:clamp(16px,3vw,42px);font:500 10px/1 var(--mono);text-transform:uppercase;letter-spacing:.03em}nav a{padding:9px 0}nav a:hover{color:var(--accent)}.section-label{margin:0;color:var(--muted);font:500 12px/1.35 var(--mono);text-transform:uppercase;letter-spacing:.06em}.hero{max-width:1480px;margin:auto;padding:clamp(72px,10vw,142px) clamp(20px,4.5vw,72px) clamp(72px,9vw,120px)}.hero-copy{display:grid;grid-template-columns:minmax(170px,18%) 1fr;grid-gap:32px;gap:32px}.hero h1{max-width:1010px;margin:-11px 0 0;font-size:clamp(52px,7.5vw,112px);line-height:.87;font-weight:500;letter-spacing:-.085em}.hero-summary{display:grid;grid-template-columns:minmax(170px,18%) minmax(300px,560px) 1fr;grid-gap:32px;gap:32px;margin-top:clamp(65px,9vw,125px);align-items:end}.hero-summary>p{grid-column:2;margin:0;font-size:clamp(18px,1.7vw,24px);line-height:1.3;letter-spacing:-.035em}.text-link{justify-self:end;width:max-content;padding-bottom:8px;border-bottom:1px solid var(--ink);font:500 10px var(--mono);text-transform:uppercase}.text-link span{margin-left:10px;font-size:15px}.text-link:hover{color:var(--accent);border-color:var(--accent)}.client-slider{padding:34px 0 42px;overflow:hidden;background:var(--surface)}.client-slider-heading{max-width:1480px;margin:0 auto 10px;padding:0 clamp(20px,4.5vw,72px);display:flex;justify-content:space-between;align-items:center}.slider-controls{display:flex;align-items:center;gap:4px}.slider-controls span{margin-right:11px;color:var(--muted);font:500 9px var(--mono);text-transform:uppercase}.slider-controls button{width:34px;height:34px;padding:0;border:0;border-radius:50%;color:var(--ink);background:transparent;cursor:pointer;font-size:16px}.slider-controls button:hover{color:var(--surface);background:var(--ink)}.logo-swiper:after,.logo-swiper:before{content:"";position:absolute;inset-block:0;z-index:3;width:clamp(18px,4.5vw,72px);pointer-events:none}.logo-swiper:before{left:0;background:linear-gradient(90deg,var(--surface),transparent)}.logo-swiper:after{right:0;background:linear-gradient(-90deg,var(--surface),transparent)}.logo-slide{position:relative;height:126px;display:flex!important;align-items:center;justify-content:center;padding:24px 8px;background:transparent}.logo-image{width:68px;height:65px;flex:0 0 auto;display:grid;place-items:center;transition:transform .18s ease}.logo-image-wide{width:min(92%,168px)}.logo-image-invert{filter:invert(1)}.logo-image-brighten{filter:brightness(1.6) saturate(1.08)}.logo-image img{width:100%;height:100%;max-height:65px;object-fit:contain}.logo-tooltip{position:absolute;left:50%;bottom:5px;z-index:4;padding:5px 8px;border-radius:3px;color:var(--paper);background:var(--ink);font:500 9px/1 var(--mono);white-space:nowrap;opacity:0;pointer-events:none;transform:translate(-50%,4px);transition:opacity .16s ease,transform .16s ease}.logo-slide:focus-visible .logo-image,.logo-slide:hover .logo-image{transform:translateY(-5px)}.logo-slide:focus-visible .logo-tooltip,.logo-slide:hover .logo-tooltip{opacity:1;transform:translate(-50%)}.logo-slide:focus-visible{outline:0}.section{max-width:1480px;margin:auto;padding:clamp(85px,11vw,160px) clamp(20px,4.5vw,72px)}.section-heading{display:grid;grid-template-columns:minmax(170px,18%) 1fr;grid-gap:32px;gap:32px;margin-bottom:clamp(60px,8vw,110px)}.section-heading h2{max-width:900px;margin:-9px 0 25px;font-size:clamp(39px,5.3vw,78px);line-height:.95;font-weight:500;letter-spacing:-.075em}.section-heading>div>p{max-width:550px;margin:0;color:var(--muted);font-size:15px;line-height:1.45}.case-list{border-top:1px solid var(--ink)}.case{min-height:260px;display:grid;grid-template-columns:minmax(120px,18%) minmax(360px,1fr) minmax(170px,.35fr);grid-gap:32px;gap:32px;padding:31px 0;border-bottom:1px solid var(--line)}.case-type{margin:0;align-self:end;color:var(--muted);font:500 12px var(--mono);text-transform:uppercase}.case-main h3{max-width:720px;margin:0 0 23px;font-size:clamp(32px,4vw,58px);line-height:.95;letter-spacing:-.065em;font-weight:500}.case-main>p{max-width:610px;margin:0;color:var(--muted);font-size:15px;line-height:1.48}.case-stack{display:block;margin-top:31px;color:var(--accent);font:500 11px/1.5 var(--mono);text-transform:uppercase}.case-result{align-self:end;display:flex;flex-direction:column}.case-result strong{font-size:clamp(32px,4vw,58px);line-height:.9;letter-spacing:-.065em;font-weight:500}.case-result span{max-width:170px;margin-top:12px;color:var(--muted);font-size:12px;line-height:1.35}.section-heading.compact{margin-bottom:48px}.section-heading.compact h2{margin-bottom:0}.technology-list{border-top:1px solid var(--ink)}.technology-row{min-height:145px;display:grid;grid-template-columns:32% 1fr;grid-gap:22px;gap:22px;align-items:center;padding:25px 0;border-bottom:1px solid var(--line)}.technology-row h3{margin:0;font-size:clamp(24px,2.8vw,40px);font-weight:500;letter-spacing:-.055em}.technology-row ul{margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px;list-style:none}.technology-row li{padding:8px 11px;border:1px solid var(--line);border-radius:99px;font:500 12px var(--mono)}.contact{padding:clamp(80px,9vw,135px) clamp(20px,4.5vw,72px);color:#f3f1ea;background:var(--accent)}.contact>*{max-width:1336px;margin-left:auto;margin-right:auto}.contact .section-label{color:rgba(255,255,255,.7)}.contact-content{margin-top:clamp(50px,7vw,100px);display:flex;justify-content:space-between;gap:35px;align-items:flex-end}.contact h2{margin:0;font-size:clamp(57px,9vw,130px);line-height:.82;letter-spacing:-.09em;font-weight:500}.contact-links{display:flex;flex-direction:column;gap:13px}.contact-links a{width:max-content;padding-bottom:7px;border-bottom:1px solid rgba(255,255,255,.75);font:500 clamp(13px,1.4vw,19px) var(--mono)}.contact-links a:hover{opacity:.65}footer{max-width:1480px;margin:auto;padding:23px clamp(20px,4.5vw,72px);display:flex;justify-content:space-between;color:var(--muted);font:500 12px var(--mono);text-transform:uppercase}footer p{margin:0}@media (max-width:760px){.header{height:64px}.header nav a:not(:last-child){display:none}.hero{padding-top:64px}.hero-copy{display:block}.hero h1{margin:28px 0 0;font-size:clamp(52px,15vw,72px)}.hero-summary{display:block;margin-top:48px}.hero-summary>p{font-size:18px}.text-link{display:inline-block;margin-top:31px}.client-slider{padding:25px 0 30px}.client-slider-heading{margin-bottom:4px}.logo-slide{height:104px;padding-inline:8px}.logo-image{width:52px;height:50px}.logo-image-wide{width:138px}.slider-controls span{display:none}.section-heading,.section-heading.compact{display:block}.section-heading .section-label{margin-bottom:28px}.section-heading h2{margin-top:0}.case{min-height:0;display:block;padding:30px 0}.case-type{margin-bottom:20px}.case-main h3{font-size:36px}.case-result{margin-top:30px}.case-result strong{font-size:35px}.technology-row{display:block;padding:27px 0}.technology-row h3{margin-bottom:22px;font-size:27px}.technology-row li{font-size:9px}.contact-content{display:block}.contact h2{font-size:clamp(58px,18vw,82px)}.contact-links{margin-top:55px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media (prefers-reduced-motion:no-preference){a{transition:color .15s ease,border-color .15s ease,opacity .15s ease}}:root{--swiper-theme-color:#007aff}:host{position:relative;display:block;margin-left:auto;margin-right:auto;z-index:1}.swiper{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;list-style:none;padding:0;z-index:1;display:block}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:flex;transition-property:transform;transition-timing-function:var(--swiper-wrapper-transition-timing-function,initial);box-sizing:content-box}.swiper-android .swiper-slide,.swiper-ios .swiper-slide,.swiper-wrapper{transform:translateZ(0)}.swiper-horizontal{touch-action:pan-y}.swiper-vertical{touch-action:pan-x}.swiper-slide{flex-shrink:0;width:100%;height:100%;position:relative;transition-property:transform;display:block}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d{perspective:1200px;.swiper-cube-shadow,.swiper-slide{transform-style:preserve-3d}}.swiper-css-mode{>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none;&::-webkit-scrollbar{display:none}}>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}&.swiper-horizontal{>.swiper-wrapper{scroll-snap-type:x mandatory}>.swiper-wrapper>.swiper-slide:first-child{-webkit-margin-start:var(--swiper-slides-offset-before);margin-inline-start:var(--swiper-slides-offset-before);scroll-margin-inline-start:var(--swiper-slides-offset-before)}>.swiper-wrapper>.swiper-slide:last-child{-webkit-margin-end:var(--swiper-slides-offset-after);margin-inline-end:var(--swiper-slides-offset-after)}}&.swiper-vertical{>.swiper-wrapper{scroll-snap-type:y mandatory}>.swiper-wrapper>.swiper-slide:first-child{-webkit-margin-before:var(--swiper-slides-offset-before);margin-block-start:var(--swiper-slides-offset-before);scroll-margin-block-start:var(--swiper-slides-offset-before)}>.swiper-wrapper>.swiper-slide:last-child{-webkit-margin-after:var(--swiper-slides-offset-after);margin-block-end:var(--swiper-slides-offset-after)}}&.swiper-free-mode{>.swiper-wrapper{scroll-snap-type:none}>.swiper-wrapper>.swiper-slide{scroll-snap-align:none}}&.swiper-centered{>.swiper-wrapper:before{content:"";flex-shrink:0;order:9999}>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center;scroll-snap-stop:always}}&.swiper-centered.swiper-horizontal{>.swiper-wrapper>.swiper-slide:first-child{-webkit-margin-start:var(--swiper-centered-offset-before);margin-inline-start:var(--swiper-centered-offset-before)}>.swiper-wrapper:before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}}&.swiper-centered.swiper-vertical{>.swiper-wrapper>.swiper-slide:first-child{-webkit-margin-before:var(--swiper-centered-offset-before);margin-block-start:var(--swiper-centered-offset-before)}>.swiper-wrapper:before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}}}.swiper-3d{.swiper-slide-shadow,.swiper-slide-shadow-bottom,.swiper-slide-shadow-left,.swiper-slide-shadow-right,.swiper-slide-shadow-top{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-slide-shadow{background:rgba(0,0,0,.15)}.swiper-slide-shadow-left{background-image:linear-gradient(270deg,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-slide-shadow-right{background-image:linear-gradient(90deg,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-slide-shadow-top{background-image:linear-gradient(0deg,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-slide-shadow-bottom{background-image:linear-gradient(180deg,rgba(0,0,0,.5),rgba(0,0,0,0))}}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;transform-origin:50%;box-sizing:border-box;border-radius:50%;border:4px solid var(--swiper-preloader-color,var(--swiper-theme-color));border-top:4px solid transparent}.swiper-watch-progress .swiper-slide-visible,.swiper:not(.swiper-watch-progress){.swiper-lazy-preloader{animation:swiper-preloader-spin 1s linear infinite}}.swiper-lazy-preloader-white{--swiper-preloader-color:#fff}.swiper-lazy-preloader-black{--swiper-preloader-color:#000}@keyframes swiper-preloader-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}