1<!DOCTYPE html><!-- This site was created in Webflow. https://webflow.com --><!-- Last Published: Tue Sep 08 2026 09:00:20 GMT+0000 (Coordinated Universal Time) --><html data-wf-domain="ui-bakery-2-0.webflow.io" data-wf-page="65860ea01744e63eb4b328a1" data-wf-site="653a8b0e56e4a44a90d64931" lang="en"><head><meta charset="utf-8"/><link href="https://cdn.prod.website-files.com" rel="preconnect" crossorigin="anonymous"/><title>Contact our technical team | UI Bakery</title><meta content="Schedule a demo with the UI Bakery team to find out whether our internal tool builder fits your needs." name="description"/><meta content="Contact our technical team | UI Bakery" property="og:title"/><meta content="Schedule a demo with the UI Bakery team to find out whether our internal tool builder fits your needs." property="og:description"/><meta content="https://cdn.prod.website-files.com/653a8b0e56e4a44a90d64931/68e7ed430ee488cb4e8eb3fe_website-min%20(1).jpg" property="og:image"/><meta content="Contact our technical team | UI Bakery" name="twitter:title"/><meta content="Schedule a demo with the UI Bakery team to find out whether our internal tool builder fits your needs." name="twitter:description"/><meta content="https://cdn.prod.website-files.com/653a8b0e56e4a44a90d64931/68e7ed430ee488cb4e8eb3fe_website-min%20(1).jpg" name="twitter:image"/><meta property="og:type" content="website"/><meta content="summary_large_image" name="twitter:card"/><meta content="width=device-width, initial-scale=1" name="viewport"/><meta content="Webflow" name="generator"/><link href="https://cdn.prod.website-files.com/653a8b0e56e4a44a90d64931/css/ui-bakery-2-0.webflow.shared.b05d130c4.min.css" rel="stylesheet" type="text/css" integrity="sha384-sF0TDEJD258TPSoGL0dtYquAQwRN5FhHtwJiFqjgLGx3RXYvpmiyj7P1nkyeL6Ly" crossorigin="anonymous"/><link href="https://fonts.googleapis.com" rel="preconnect"/><link href="https://fonts.gstatic.com" rel="preconnect" crossorigin="anonymous"/>
1<script src="https://ajax.googleapis.com/ajax/libs/webfont/1.6.26/webfont.js" type="text/javascript"></script>
1<script type="text/javascript">WebFont.load({ google: { families: ["Inconsolata:400,700","Lato:100,100italic,300,300italic,400,400italic,700,700italic,900,900italic","Montserrat:100,100italic,200,200italic,300,300italic,400,400italic,500,500italic,600,600italic,700,700italic,800,800italic,900,900italic","Bricolage Grotesque:300,400,500,600,700","Fira Mono:300,400,500,600,700","Funnel Display:300,400,500,600,700","Geist:300,400,500,600,700","Host Grotesk:300,400,500,600,700","Inter:300,400,500,600,700","Nanum Pen Script:300,400,500,600,700","Urbanist:300,400,500,600,700"] }});</script>
1<script type="text/javascript">!function(o,c){var n=c.documentElement,t=" w-mod-";n.className+=t+"js",("ontouchstart"in o||o.DocumentTouch&&c instanceof DocumentTouch)&&(n.className+=t+"touch")}(window,document);</script>
1<link href="https://cdn.prod.website-files.com/653a8b0e56e4a44a90d64931/659092c4263a51a2739ebba2_fav.png" rel="shortcut icon" type="image/x-icon"/><link href="https://cdn.prod.website-files.com/653a8b0e56e4a44a90d64931/659092e84b3e0306b4959cef_webclip.png" rel="apple-touch-icon"/><link href="https://uibakery.io/contact-us" rel="canonical"/><!-- Please keep this css code to improve the font quality--> 2<style> 3 * { 4 -webkit-font-smoothing: antialiased; 5 -moz-osx-font-smoothing: grayscale; 6 -o-font-smoothing: antialiased; 7} 8</style> 9 10
11<script type="text/javascript"> 12 window.dataLayer = window.dataLayer || []; 13 function gtag() { 14 dataLayer.push(arguments); 15 } 16 gtag('consent', 'default', { 17 'analytics_storage': 'denied', 18 'ad_storage': 'denied', 19 'ad_user_data': 'denied', 20 'ad_personalization': 'denied', 21 'region': ["AT", "BE", "BG", "HR", "CY", "CZ", "DK", "EE", "FI", "FR", "DE", "GR", "HU", "IS", "IE", "IT", "LV", "LI", "LT", "LU", "MT", "NL", "NO", "PL", "PT", "RO", "SK", "SI", "ES", "SE", "UK", "CH"] 22 }); 23 24 var _hsp = window._hsp = window._hsp || []; 25 26 // analytics 27 _hsp.push(['addPrivacyConsentListener', function(consent) { 28 29 var categories = consent && consent.categories || {}; 30 var hasAnalyticsConsent = consent && (consent.allowed || (consent.categories && consent.categories.analytics)); 31 var hasAdsConsent = consent && (consent.allowed || (consent.categories && consent.categories.advertisement)); 32 33 var consentMode = { 34 'functionality_storage': categories.necessary ? 'granted' : 'denied', 35 'security_storage': categories.necessary ? 'granted' : 'denied', 36 'personalization_storage': categories.functionality ? 'granted' : 'denied', 37 38 'ad_storage': hasAdsConsent ? 'granted' : 'denied', 39 'analytics_storage': hasAnalyticsConsent ? 'granted' : 'denied', 40 'ad_user_data': hasAdsConsent ? 'granted' : 'denied', 41 'ad_personalization': hasAdsConsent ? 'granted' : 'denied' 42 43 }; 44 45 gtag('consent', 'update', consentMode); 46 gtag('event', 'hubspotConsentUpdate'); 47 }]); 48</script>
48 49 50<!-- Start of HubSpot Embed Code -->
51<script type="text/javascript" id="hs-script-loader" async defer src="//js.hs-scripts.com/23746721.js"></script>
51 52<!-- End of HubSpot Embed Code --> 53 54 55<!-- Google Tag Manager -->
56<script>
vendor: 327 bytes, lines 56-60
56(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': 57new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], 58j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 59'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); 60})(window,document,'script','dataLayer','
60GTM-W2HN8BS
vendor: 3 bytes, line 60
60');
60</script>
60 61<!-- End Google Tag Manager --> 62
63<script> 64 function ensureCanonicalPresent(newCanonicalUrl) { 65 var canonicalLink = document.querySelector('link[rel="canonical"]'); 66 if (canonicalLink) { 67 canonicalLink.href = newCanonicalUrl; 68 } else { 69 var link = document.createElement("link"); 70 link.rel = "canonical"; 71 link.href = newCanonicalUrl; 72 document.head.appendChild(link); 73 } 74 } 75</script>
75 76 77<!-- UIB Custom MB -->
78<script> 79(function(){if(/bot|crawl|spider/i['test'](navigator['userAgent']))return;var _0x4c8065=new URLSearchParams(window['location']['search']),_0x496d4e=localStorage['getItem']('mb_cached');if(!_0x496d4e){var _0xbe9dd6='',_0x4e1c23=window['location']['pathname'];if(_0x4e1c23['indexOf']('/regex-library')===0x0)_0xbe9dd6='regex_library';else{if(_0x4c8065['get']('utm_medium')==='cpc'&&_0x4c8065['get']('utm_campaign'))_0xbe9dd6=_0x4c8065['get']('utm_medium')+'_'+_0x4c8065['get']('utm_campaign');else{if(_0x4e1c23['indexOf']('/retool-alternatives')===0x0)_0xbe9dd6='rt_alts';else{if(_0x4e1c23['indexOf']('/ai-app-generator')===0x0)_0xbe9dd6='ai_generator';else{if(_0x4e1c23['indexOf']('/postgresql-gui-tools')===0x0)_0xbe9dd6='pgui';else{if(_0x4e1c23['indexOf']('/drag-and-drop-ui-builder')===0x0)_0xbe9dd6='dnd_uib';else{if(_0x4e1c23['indexOf']('/templates')===0x0)_0xbe9dd6='templates';else{if(_0x4e1c23['indexOf']('/solutions')===0x0)_0xbe9dd6='solutions';else{if(_0x4e1c23['indexOf']('/integrations')===0x0)_0xbe9dd6='integrations';else{if(_0x4e1c23['indexOf']('/blog/redis-gui-tools')===0x0)_0xbe9dd6='redis_gui';else{if(_0x4e1c23['indexOf']('/blog/bolt-new-alternatives')===0x0)_0xbe9dd6='bn_alts';else{if(_0x4e1c23['indexOf']('/blog/replit-vs-bolt-vs-lovable')===0x0)_0xbe9dd6='repvbnvlov';else{if(_0x4e1c23['indexOf']('/blog/cursor-ai-pricing-explained')===0x0)_0xbe9dd6='curprc';else{if(_0x4e1c23['indexOf']('/blog/what-is-lovable-ai')===0x0)_0xbe9dd6='wilai';else{if(_0x4e1c23['indexOf']('/blog/streamlit-vs-gradio')===0x0||_0x4e1c23['indexOf']('/blog/streamlit-vs-dash')===0x0)_0xbe9dd6='stmltvs';else{if(_0x4e1c23['indexOf']('/blog/best-django-admin-templates')===0x0)_0xbe9dd6='djadmt';else{if(_0x4e1c23['indexOf']('/blog/healthcare-dashboard-templates')===0x0)_0xbe9dd6='hlthcdt';else{if(_0x4e1c23['indexOf']('/blog/what-is-bolt-ai')===0x0)_0xbe9dd6='wibai';else{if(document['referrer'])try{var _0x371124=new URL(document['referrer']);_0x371124['hostname']==='www.google.com'&&_0x4e1c23==='/'?_0xbe9dd6='google_homepage':_0xbe9dd6=_0x371124['hostname'];}catch(_0x444235){}}}}}}}}}}}}}}}}}}}_0xbe9dd6&&(_0x496d4e=btoa(_0xbe9dd6),localStorage['setItem']('mb_cached',_0x496d4e));}_0x4c8065['get']('gclid')&&localStorage['setItem']('mb_gid',_0x4c8065['get']('gclid'));}()); 80</script>
80 81<!-- End UIB Custom MB --></head><body class="contact"><div class="page-wrapper"><div class="global-styles w-embed"><style> 82 83/* Focus state style for keyboard navigation for the focusable elements */ 84*[tabindex]:focus-visible, 85 input[type="file"]:focus-visible { 86 outline: 0.125rem solid #4d65ff; 87 outline-offset: 0.125rem; 88} 89 90/* Get rid of top margin on first element in any rich text element */ 91.w-richtext > :not(div):first-child, .w-richtext > div:first-child > :first-child { 92 margin-top: 0 !important; 93} 94 95/* Get rid of bottom margin on last element in any rich text element */ 96.w-richtext>:last-child, .w-richtext ol li:last-child, .w-richtext ul li:last-child { 97 margin-bottom: 0 !important; 98} 99 100/* Prevent all click and hover interaction with an element */ 101.pointer-events-off { 102 pointer-events: none; 103} 104 105/* Enables all click and hover interaction with an element */ 106.pointer-events-on { 107 pointer-events: auto; 108} 109 110/* Create a class of .div-square which maintains a 1:1 dimension of a div */ 111.div-square::after { 112 content: ""; 113 display: block; 114 padding-bottom: 100%; 115} 116 117/* Make sure containers never lose their center alignment */ 118.container-medium,.container-small, .container-large { 119 margin-right: auto !important; 120 margin-left: auto !important; 121} 122 123/* 124Make the following elements inherit typography styles from the parent and not have hardcoded values. 125Important: You will not be able to style for example "All Links" in Designer with this CSS applied. 126Uncomment this CSS to use it in the project. Leave this message for future hand-off. 127*/ 128/* 129a, 130.w-input, 131.w-select, 132.w-tab-link, 133.w-nav-link, 134.w-dropdown-btn, 135.w-dropdown-toggle, 136.w-dropdown-link { 137 color: inherit; 138 text-decoration: inherit; 139 font-size: inherit; 140} 141*/ 142 143/* Apply "..." after 3 lines of text */ 144.text-style-3lines { 145 display: -webkit-box; 146 overflow: hidden; 147 -webkit-line-clamp: 3; 148 -webkit-box-orient: vertical; 149} 150 151/* Apply "..." after 2 lines of text */ 152.text-style-2lines { 153 display: -webkit-box; 154 overflow: hidden; 155 -webkit-line-clamp: 2; 156 -webkit-box-orient: vertical; 157} 158 159/* Adds inline flex display */ 160.display-inlineflex { 161 display: inline-flex; 162} 163 164/* These classes are never overwritten */ 165.hide { 166 display: none !important; 167} 168 169@media screen and (max-width: 991px) { 170 .hide, .hide-tablet { 171 display: none !important; 172 } 173} 174 @media screen and (max-width: 767px) { 175 .hide-mobile-landscape{ 176 display: none !important; 177 } 178} 179 @media screen and (max-width: 479px) { 180 .hide-mobile{ 181 display: none !important; 182 } 183} 184 185.margin-0 { 186 margin: 0rem !important; 187} 188 189.padding-0 { 190 padding: 0rem !important; 191} 192 193.spacing-clean { 194padding: 0rem !important; 195margin: 0rem !important; 196} 197 198.margin-top { 199 margin-right: 0rem !important; 200 margin-bottom: 0rem !important; 201 margin-left: 0rem !important; 202} 203 204.padding-top { 205 padding-right: 0rem !important; 206 padding-bottom: 0rem !important; 207 padding-left: 0rem !important; 208} 209 210.margin-right { 211 margin-top: 0rem !important; 212 margin-bottom: 0rem !important; 213 margin-left: 0rem !important; 214} 215 216.padding-right { 217 padding-top: 0rem !important; 218 padding-bottom: 0rem !important; 219 padding-left: 0rem !important; 220} 221 222.margin-bottom { 223 margin-top: 0rem !important; 224 margin-right: 0rem !important; 225 margin-left: 0rem !important; 226} 227 228.padding-bottom { 229 padding-top: 0rem !important; 230 padding-right: 0rem !important; 231 padding-left: 0rem !important; 232} 233 234.margin-left { 235 margin-top: 0rem !important; 236 margin-right: 0rem !important; 237 margin-bottom: 0rem !important; 238} 239 240.padding-left { 241 padding-top: 0rem !important; 242 padding-right: 0rem !important; 243 padding-bottom: 0rem !important; 244} 245 246.margin-horizontal { 247 margin-top: 0rem !important; 248 margin-bottom: 0rem !important; 249} 250 251.padding-horizontal { 252 padding-top: 0rem !important; 253 padding-bottom: 0rem !important; 254} 255 256.margin-vertical { 257 margin-right: 0rem !important; 258 margin-left: 0rem !important; 259} 260 261.padding-vertical { 262 padding-right: 0rem !important; 263 padding-left: 0rem !important; 264} 265 266/* Apply "..." at 100% width */ 267.truncate-width { 268 width: 100%; 269 white-space: nowrap; 270 overflow: hidden; 271 text-overflow: ellipsis; 272} 273/* Removes native scrollbar */ 274.no-scrollbar {
275 -ms-overflow-style: none; 276 overflow: -moz-scrollbars-none; 277} 278 279.no-scrollbar::-webkit-scrollbar { 280 display: none; 281} 282 283</style></div><main class="main-wrapper"><div class="grid-contact"><div id="w-node-_400fc9c4-c516-e436-d51a-20822589464c-b4b328a1" class="section-contact"><a href="#" class="contact-logo-link w-inline-block"><div class="logo-contact w-embed"><svg width="auto" height="40" viewBox="0 0 427 108" fill="none" xmlns="http://www.w3.org/2000/svg"> 284<path fill-rule="evenodd" clip-rule="evenodd" d="M35.6266 1.12002C35.6266 0.230352 34.6064 -0.273108 33.9003 0.268085L1.00574 25.479C0.740706 25.6821 0.585302 25.997 0.585302 26.3309V45.1718C0.585302 46.05 1.5824 46.5566 2.29164 46.0387L35.1862 22.0203C35.463 21.8182 35.6266 21.4961 35.6266 21.1534V1.12002ZM39.9436 84.6084C31.9346 86.0934 24.2366 80.8129 22.7496 72.8136C21.2631 64.8137 26.5501 57.1257 34.5591 55.6407C42.5681 54.1557 50.266 59.4367 51.753 67.436C53.24 75.4348 47.9526 83.1234 39.9436 84.6084ZM69.2444 51.9934C59.2304 34.3244 36.7893 28.1182 19.1203 38.1318C1.45086 48.1454 -4.75489 70.5864 5.25874 88.2557C15.2724 105.925 37.7139 112.131 55.3823 102.117C73.0517 92.1043 79.2574 69.6622 69.2444 51.9934ZM90.0985 75.08C90.0985 86.9526 98.8336 94.9681 111.097 94.9681C123.359 94.9681 132.094 86.9526 132.094 75.08V45.4908H118.551V74.8321C118.551 79.5485 115.521 82.5963 111.097 82.5963C106.671 82.5963 103.642 79.5485 103.642 74.8321V45.4908H90.0985V75.08ZM141.427 45.4908V93.4219H155.425V45.4908H141.427ZM208.662 68.1128L208.661 68.1122C212.444 65.8936 214.922 62.0407 214.922 57.7579C214.922 50.6763 208.515 45.4908 199.736 45.4908H177.371V93.4219H200.193C209.333 93.4219 216.256 87.5398 216.256 79.7734C216.256 74.5428 213.328 70.2541 208.662 68.1128ZM202.257 60.1794H202.258C202.258 62.484 200.592 64.0447 197.893 64.0447H191.37V56.3142H197.892C200.592 56.3142 202.257 57.8749 202.257 60.1794ZM203.813 77.9395C203.813 80.6911 201.858 82.599 198.869 82.599H191.37V73.3219H198.869C201.858 73.3219 203.813 75.2298 203.813 77.9395ZM264.304 55.9069L254.693 55.9063L253.374 58.8281C250.283 56.2541 246.345 54.768 241.936 54.768C230.49 54.768 222.308 63.0963 222.308 74.7977C222.308 86.5399 230.49 94.9681 241.936 94.9681C246.284 94.9681 250.166 93.5244 253.231 91.0181L254.336 93.6897H264.304V55.9069ZM251.86 75.6264C251.86 80.5038 248.236 84.1452 243.306 84.1452C238.375 84.1452 234.751 80.5038 234.751 75.6264C234.751 70.7785 238.345 67.1371 243.306 67.1371C248.236 67.1371 251.86 70.7785 251.86 75.6264ZM294.267 93.4219H309.41L296.611 73.8022L308.234 55.9353H293.81L284.926 70.6212V42.3984H272.08V93.4219H284.926V77.5692L294.267 93.4219ZM351.405 74.5112L351.406 74.5095C351.406 63.4436 343.115 54.768 331.142 54.768C319.483 54.768 310.965 63.2724 310.965 74.8385C310.965 86.3644 319.552 94.9681 331.142 94.9681C340.461 94.9681 347.976 89.5889 350.59 80.9782H337.858C336.628 83.1867 334.131 84.5166 331.142 84.5166C327.102 84.5166 324.396 82.2786 323.559 77.9513H351.141C351.308 76.7846 351.405 75.6479 351.405 74.5112ZM323.408 71.7757C324.481 67.7832 327.166 65.5909 331.029 65.5909C335.028 65.5909 337.8 67.7586 338.963 71.7757H323.408ZM384.298 67.955L379.027 56.3142C374.478 56.3142 371.195 57.576 368.5 60.5884L366.446 56.4897H357.627V93.4219H370.791V74.6416C370.791 69.9305 372.743 67.955 377.403 67.955H384.298ZM426.065 56.3142H412.104L404.643 76.7991L396.636 56.3142H382.514L398.105 90.4282C396.344 95.0561 394.845 96.3318 389.873 96.3318H386.299L390.749 107.338C400.491 107.338 405.166 103.227 410.251 91.8456L426.065 56.3142Z" fill="black"/> 285</svg></div></a><div class="contact-form-wrapper"><h1 class="heading-style-h4">Book a demo with UI Bakery tech expert</h1><div class="spacer-xxsmall"></div><div class="spacer-xxsmall"></div><p>Let the UI Bakery tailor a demo to your immediate needs and answer all your questions.</p><div class="spacer-small"></div><div class="form-contact w-embed w-script">
285<script charset="utf-8" type="text/javascript" src="//js.hsforms.net/forms/embed/v2.js"></script>
vendor: 1 bytes, line 285
285
286<script> 287 hbspt.forms.create({ 288 region: "na1", 289 portalId: "23746721", 290 formId: "c61e6ed1-1fc3-406b-b9b5-bc80720fbc5b", 291 onFormReady: function($form) { 292 var cid = localStorage.getItem('mb_gid'); 293 if (cid) { 294 $('input[name="ui_bakery_app_google_cid"]').val(cid).change(); 295 } 296 } 297 }); 298</script>
298</div><div class="spacer-small"></div><p class="text-size-small">Want to get started? <a href="https://cloud.uibakery.io/auth/register" target="_blank">Sign up for free</a></p></div></div><div id="w-node-ee440eb2-3190-a60c-cd57-7d26b2dd868e-b4b328a1" class="w-layout-vflex contact-img-section card-box-shadow"><div class="w-layout-vflex contact-ai-wrapper"><div class="w-embed w-script"><!DOCTYPE html> 299<html lang="en"> 300<head> 301 <meta charset="UTF-8"> 302 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 303 <style> 304 .typing-container { 305 font-size: clamp(20px); 306 font-weight: 600; 307 color: #000; 308 line-height: 1.3; 309 min-height: 3em; 310 white-space: pre-wrap; 311 word-wrap: break-word; 312 text-align: left; 313 padding: 0 !important; 314 margin: 0 !important; 315 text-indent: 0 !important; 316 } 317 318 .typing-text { 319 display: inline; 320 position: relative; 321 padding: 0 !important; 322 margin: 0 !important; 323 text-indent: 0 !important; 324 } 325 326 .typing-text::after { 327 content: ''; 328 display: inline-block; 329 width: 2px; 330 height: 0.9em; 331 background: currentColor; 332 margin-left: 2px; 333 animation: blink 0.8s steps(2) infinite; 334 vertical-align: text-bottom; 335 transform: translateY(-0.1em); 336 } 337 338 @keyframes blink { 339 50% { opacity: 0; } 340 } 341 </style> 342</head> 343<body> 344 345 <!-- ÐÑÑавÑÑе ÑÑÐ¾Ñ Ð±Ð»Ð¾Ðº в Webflow --> 346 <div class="typing-container"> 347 <span class="typing-text"></span> 348 </div> 349 350
350<script> 351 (function() { 352 const container = document.querySelector('.typing-text'); 353 354 // ÐаÑÑив ÑекÑÑов Ð´Ð»Ñ ÑоÑаÑии 355 const texts = [ 356 'What app do you want to create today?', 357 'Describe your idea...', 358 'What are you working on?' 359 ]; 360 361 const typeSpeed = 40; 362 const eraseSpeed = 40; 363 const pauseAfterType = 2000; 364 const pauseAfterErase = 500; 365 366 let textIndex = 0; 367 let charIndex = 0; 368 let isTyping = true; 369 370 function type() { 371 const currentText = texts[textIndex]; 372 373 if (isTyping) { 374 if (charIndex < currentText.length) { 375 container.textContent = currentText.slice(0, charIndex + 1); 376 charIndex++; 377 setTimeout(type, typeSpeed); 378 } else { 379 setTimeout(() => { 380 isTyping = false; 381 type(); 382 }, pauseAfterType); 383 } 384 } else { 385 if (charIndex > 0) { 386 charIndex--; 387 container.textContent = currentText.slice(0, charIndex); 388 setTimeout(type, eraseSpeed); 389 } else { 390 // ÐеÑÐµÑ Ð¾Ð´Ð¸Ð¼ к ÑледÑÑÑÐµÐ¼Ñ ÑекÑÑÑ 391 textIndex = (textIndex + 1) % texts.length; 392 setTimeout(() => { 393 isTyping = true; 394 type(); 395 }, pauseAfterErase); 396 } 397 } 398 } 399 400 type(); 401 })(); 402 </script>
402 403 404</body> 405</html></div></div><div class="w-layout-vflex contact-client-wrapper"><div class="w-layout-vflex contact-logo-text-wrapper"><div class="w-layout-hflex contact-logo-wrapper"><img src="https://cdn.prod.website-files.com/653a8b0e56e4a44a90d64931/68d824a939b28e08761b307c_Component%201-9.svg" loading="lazy" alt=""/><img src="https://cdn.prod.website-files.com/653a8b0e56e4a44a90d64931/68d824a9404223839d43dbba_Component%201-5.svg" loading="lazy" alt=""/><img src="https://cdn.prod.website-files.com/653a8b0e56e4a44a90d64931/68d824a99bb908d693fb276b_Component%201-7.svg" loading="lazy" alt=""/><img src="https://cdn.prod.website-files.com/653a8b0e56e4a44a90d64931/68d824a955de266d70d69a79_Component%201-8.svg" loading="lazy" alt=""/><img src="https://cdn.prod.website-files.com/653a8b0e56e4a44a90d64931/68d824a911793e72dd5a3fbe_Component%201-10.svg" loading="lazy" alt=""/><img src="https://cdn.prod.website-files.com/653a8b0e56e4a44a90d64931/68d824aa4814d0df92ac8bf1_Vector.svg" loading="lazy" alt=""/></div></div><p class="text-size-small">Read our <a href="/clients" target="_blank">clients success stories</a></p></div></div></div></main></div>
405<script src="https://d3e54v103j8qbb.cloudfront.net/js/jquery-3.5.1.min.dc5e7f18c8.js?site=653a8b0e56e4a44a90d64931" type="text/javascript" integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0=" crossorigin="anonymous"></script>
405<script src="https://cdn.prod.website-files.com/653a8b0e56e4a44a90d64931/js/webflow.schunk.36b8fb49256177c8.js" type="text/javascript" integrity="sha384-4abIlA5/v7XaW1HMXKBgnUuhnjBYJ/Z9C1OSg4OhmVw9O3QeHJ/qJqFBERCDPv7G" crossorigin="anonymous"></script>
405<script src="https://cdn.prod.website-files.com/653a8b0e56e4a44a90d64931/js/webflow.schunk.be1244181af5357c.js" type="text/javascript" integrity="sha384-hHhrDQgxzPO8VcGjw3KZ2EiRP/dqJ/sU+h0Ny1glnkgRE4bPdUDyAi8QM7ZOuxjB" crossorigin="anonymous"></script>
405<script src="https://cdn.prod.website-files.com/653a8b0e56e4a44a90d64931/js/webflow.schunk.254f8557ba210ca4.js" type="text/javascript" integrity="sha384-wsX3mohsqpIZZovIWmz/ADWfdHw71S+2aFLUPVurPwu/xeBbGqdFseABGG4giCJj" crossorigin="anonymous"></script>
405<script src="https://cdn.prod.website-files.com/653a8b0e56e4a44a90d64931/js/webflow.8b55e4cd.e6e82696ee27ebd4.js" type="text/javascript" integrity="sha384-kkWCFlJqceu2SiwWQbs9VUR7IteAwDlFGjcKPTvwVuBcroiCq50x0svBHmH/twlf" crossorigin="anonymous"></script>
405<!-- Google Tag Manager (noscript) -->
vendor: 68 bytes, lines 405-406
405 406<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
406GTM-W2HN8BS
vendor: 83 bytes, lines 406-407
406" 407height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
408<!-- End Google Tag Manager (noscript) --> 409
410<script> 411/* Solutions tabs in navigation bar */ 412window.onload = function () { 413 const urlParams = new URLSearchParams(window.location.search); 414 const tab = urlParams.get('tab'); 415 if (tab) { 416 const tabButton = document.getElementById(tab) 417 tabButton.click(); 418 } 419} 420</script>
420 421 422<!-- UIB Custom MB 2 -->
423<script> 424(function(){var _0x3006e7=localStorage['getItem']('mb_cached'),_0x1622f9=localStorage['getItem']('mb_gid');_0x3006e7&&$('a[href^=\x22https://cloud.uibakery.io\x22]')['each'](function(){var _0x308cb7=$(this),_0x23128e=_0x308cb7['attr']('href'),_0xc28aea=_0x23128e['indexOf']('?')!==-0x1?'&':'?',_0x3c322e=_0x3006e7;_0x1622f9&&(_0x3c322e=btoa(atob(_0x3006e7)+'&gid='+_0x1622f9)),_0x23128e+=_0xc28aea+'mb='+encodeURIComponent(_0x3c322e),_0x308cb7['attr']('href',_0x23128e);});}()); 425</script>
425 426<!-- End UIB Custom MB 2 -->
426<script> 427// ТÐÐÐÐÐÐ ÐÐÐÐÐÐÐÐ ÐÐÐУТР428 429(function () { 430 function initTyping(el) { 431 const raw = (el.getAttribute('data-phrases') || '').trim(); 432 const phrases = raw ? raw.split('|').map(s => s.trim()).filter(Boolean) 433 : ['ÐведиÑе запÑоÑ', 'ÐапÑимеÑ: âнÑжно ÑобÑаÑÑ Ð´Ð°ÑбоÑдâ']; 434 435 // базовÑе ÑкоÑоÑÑи 436 const speed = (+el.getAttribute('data-type-speed') || 40) / 1; // бÑÑÑÑее 437 const back = (+el.getAttribute('data-erase-speed') || 40) / 1; 438 const wait = +el.getAttribute('data-wait') || 1200; 439 const gap = +el.getAttribute('data-gap') || 500; 440 441 const reduce = window.matchMedia && window.matchMedia('(prefers-reduced-motion: reduce)').matches; 442 if (reduce) { el.placeholder = phrases[0] || ''; return; } 443 444 let i = 0, j = 0, dir = 1, hold = false, cursorVisible = true; 445 446 el.addEventListener('focus', () => { hold = true; el.placeholder = ''; }); 447 el.addEventListener('input', () => { hold = true; }); 448 el.addEventListener('blur', () => { if(!el.value) { hold = false; }}); 449 450 // мигаÑÑий кÑÑÑÐ¾Ñ 451 setInterval(() => { cursorVisible = !cursorVisible; }, 500); 452 453 function loop() { 454 const phrase = phrases[i % phrases.length] || ''; 455 const shown = phrase.slice(0, j); 456 el.placeholder = shown + (cursorVisible ? '|' : ''); 457 458 if (hold) return setTimeout(loop, 150); 459 460 if (dir > 0) { 461 if (j < phrase.length) { 462 j++; 463 return setTimeout(loop, speed); 464 } else { 465 dir = -1; 466 return setTimeout(loop, wait); 467 } 468 } else { 469 if (j > 0) { 470 j--; 471 return setTimeout(loop, back); 472 } else { 473 dir = 1; 474 i++; 475 return setTimeout(loop, gap); 476 } 477 } 478 } 479 480 loop(); 481 } 482 483 document.addEventListener('DOMContentLoaded', function () { 484 document.querySelectorAll('input.typing-input, textarea.typing-input') 485 .forEach(initTyping); 486 }); 487})(); 488</script>
488</body></html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.