{"id":195705,"date":"2026-04-23T05:25:22","date_gmt":"2026-04-23T09:25:22","guid":{"rendered":"https:\/\/innowise.com\/?post_type=case&#038;p=195705"},"modified":"2026-04-24T08:25:14","modified_gmt":"2026-04-24T12:25:14","slug":"ai-assisted-contract-parsing-platform","status":"publish","type":"case","link":"https:\/\/innowise.com\/pt\/case\/ai-assisted-contract-parsing-platform\/","title":{"rendered":"Plataforma de transforma\u00e7\u00e3o de contratos assistida por IA (preparada para DORA \/ NIS2)"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-post\" data-elementor-id=\"195705\" class=\"elementor elementor-195705\">\n\t\t\t\t<div class=\"elementor-element elementor-element-a5d40de e-flex e-con-boxed e-con e-parent\" data-id=\"a5d40de\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-b8b99be e-con-full e-flex e-con e-child\" data-id=\"b8b99be\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1cedcd3 elementor-widget elementor-widget-image\" data-id=\"1cedcd3\" data-element_type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"61\" height=\"60\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2026\/04\/Leganta-Log\u043e.svg\" class=\"attachment-full size-full wp-image-196097\" alt=\"Leganta Log\u043e\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-87e3df3 elementor-widget__width-initial elementor-widget elementor-widget-heading\" data-id=\"87e3df3\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h1 class=\"elementor-heading-title elementor-size-default\">Feature-rich document processing platform for banks and enterprises<\/h1>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-0d4cf26 last-child-mb-0 elementor-widget__width-initial elementor-widget elementor-widget-text-editor\" data-id=\"0d4cf26\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">Building the core parsing module for Leganta&#8217;s contract management platform that breaks down complex legal documents into structured, searchable data and integrates AI for automated field classification and semantic content analysis (DORA \/ NIS2 ready).<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2201c4c elementor-mobile-align-justify elementor-widget-mobile__width-inherit btn-min-320 elementor-widget elementor-widget-button\" data-id=\"2201c4c\" data-element_type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-button-wrapper\">\n\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"#contact-form\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">Let's build together<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-123eae4 e-con-full e-flex e-con e-child\" data-id=\"123eae4\" data-element_type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-de8bb5d elementor-widget elementor-widget-html\" data-id=\"de8bb5d\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\n.hero-info-card {\n    display: flex;\n    flex-direction: column;\n    \n    color: #2e2e2e;\n    background-color: #FFFFFF;\n\n\n\n    width: 400px;\n    \n    height: 100%;\n}\n\n.hero-info-card__content {\n    display: flex;\n    flex-direction: column;\n    row-gap: 20px;\n\n    padding: 30px;\n\n    border-width: 0px 1px 1px 1px;\n    border-style: solid;\n    border-color: #999999;\n    \n    flex-grow: 1;\n}\n\n.hero-info-card__content-row {\n    display: grid;\n    grid-template-columns: 102px 1fr;\n\n    column-gap: 40px;\n}\n\n\nimg.hero-info-card__img {\n    display: flex;\n    object-fit: cover;\n    width: 100%;\n    height: auto;\n}\n\n.hero-info-card__param {\n    font-family: Karla;\n    font-weight: 600;\n    font-size: 16px;\n    line-height: 150%;\n\n    text-transform: uppercase;\n}\n\n.hero-info-card__value {\n    font-family: Karla;\n    font-weight: 400;\n    font-size: 16px;\n    line-height: 150%;\n}\n\n@media screen and (max-width:1279px) {\n    .hero-info-card {\n        display: grid;\n        grid-template-columns: 390px 1fr;\n\n        place-items: stretch;\n\n        width: 100%;\n    }\n    \n    .hero-info-card__content {\n        padding: 30px 175px 30px 30px;\n\n        border-width: 1px 0px 1px 0px;\n    }\n\n}\n\n\n@media screen and (max-width:840px) {\n    .hero-info-card__content {\n        padding: 30px;\n    }\n}\n\n\n@media screen and (max-width:780px) {\n    .hero-info-card {\n        grid-template-columns: 1fr 1fr;\n    }\n}\n\n\n\n\n@media screen and (max-width:767px) {\n    .hero-info-card {\n        display: flex;\n        flex-direction: column;\n\n        width: 100%;\n    }\n    \n    img.hero-info-card__img {\n        max-height: 300px;\n    }\n\n    \n    .hero-info-card__content {\n        padding: 20px 15px;\n\n        row-gap: 15px;\n\n        border-width: 0px 0px 1px 0px;\n    }\n    \n    .hero-info-card__param {\n        font-size: 14px;\n    }\n\n    .hero-info-card__value {\n        font-size: 14px;\n    }\n}\n<\/style>\n\n<div class=\"hero-info-card\">\n    <img decoding=\"async\" class=\"hero-info-card__img\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2026\/04\/image.jpg\" alt=\"airplane in the sky image\"\/>\n    <div class=\"hero-info-card__content\">\n        <div class=\"hero-info-card__content-row\">\n            <span class=\"hero-info-card__param\">Industry<\/span>\n            <span  class=\"hero-info-card__value\"><a>Information Technology Services<\/a> \/ <a> LegalTech<\/a>\n            \/ <a>DORA-NIS2<\/a>\n            <\/span>\n            \n        <\/div>\n        \n        <div class=\"hero-info-card__content-row\">\n            <span class=\"hero-info-card__param\">Employees<\/span>\n            <span class=\"hero-info-card__value\"> <50 <\/span>\n        <\/div>\n        \n        <div class=\"hero-info-card__content-row\">\n            <span class=\"hero-info-card__param\">Region<\/span>\n            <span class=\"hero-info-card__value\">Europe (Germany)<\/span>\n        <\/div>\n\n        <div class=\"hero-info-card__content-row\">\n            <span class=\"hero-info-card__param\">Services<\/span>\n            <span class=\"hero-info-card__value\"><a href=\"https:\/\/innowise.com\/services\/back-end-development\/\">Backend development<\/a>, <a href=\"https:\/\/innowise.com\/services\/front-end-development\/\">Frontend development<\/a><\/span>\n        <\/div>\n        \n                <div class=\"hero-info-card__content-row\">\n            <span class=\"hero-info-card__param\">Client since<\/span>\n            <span class=\"hero-info-card__value\">2024<\/span>\n        <\/div>\n    <\/div>\n<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-60191b4 article-description e-flex e-con-boxed e-con e-parent\" data-id=\"60191b4\" data-element_type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-97ca77d author-article e-con-full e-flex e-con e-child\" data-id=\"97ca77d\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-538f134 elementor-hidden-desktop elementor-hidden-tablet elementor-hidden-mobile elementor-widget elementor-widget-html\" data-id=\"538f134\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\n.section-bg--white, .section-bg--grey {\n    position: relative;\n}\n\n.section-bg--white::before, .section-bg--grey::before {\n    content:\"\";\n    position: absolute;\n    top: 0;\n    bottom: 0;\n    left:-100vw;\n    width: 300vw;\n}\n\n.section-bg--white::before {\n    background-color: #ffffff;\n}\n\n.section-bg--grey::before {\n    background-color: #FBFBFD;\n}\n\n\n.summarize_ai_button {\n    min-width:320px !important;\n    align-items: center;\n    justify-content: center;\n}\n\n@media (max-width: 767px) {\n    .summarize_ai_button {\n        width: 100% !important;\n        min-width: initial !important;\n    }\n}\n\n\n\/* hiding generic disclaimer for open cases *\/\n\/*.case-alert-wrapper {\n    display: none !important;\n}*\/\n<\/style>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-13294fa e-con-full section-bg--white e-flex e-con e-child\" data-id=\"13294fa\" data-element_type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-5fa3743 e-con-full e-flex e-con e-child\" data-id=\"5fa3743\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-6bb9824 elementor-widget-tablet__width-inherit elementor-widget-mobile__width-inherit elementor-widget elementor-widget-heading\" data-id=\"6bb9824\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Client overview<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-5c4f12d elementor-widget elementor-widget-shortcode\" data-id=\"5c4f12d\" data-element_type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\">[summarize_button_ai]<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-6d6014b elementor-widget__width-inherit elementor-widget-tablet__width-inherit last-child-mb-0 elementor-widget elementor-widget-text-editor\" data-id=\"6d6014b\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">LEGANTA\u00ae is a Germany-based technology company building a document management platform designed for organizations that handle large volumes of contracts, primarily financial institutions and enterprises. The product&#8217;s core idea is straightforward: instead of making people scroll through 60- or 80-page PDFs looking for what they need, the system converts those documents into structured, searchable objects that users can filter, update, and work with directly. Important applications are semantic DORA \/ NIS2 contract transformations.<\/span><\/p><p><span style=\"font-weight: 400;\">Leganta came to Innowise to build the central piece of that product. This module is responsible for taking a raw contract PDF and breaking it down into semantic sections that their existing internal system could then process.<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-bf4c9d4 elementor-widget elementor-widget-html\" data-id=\"bf4c9d4\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\n.testim-container {\n    display: flex;\n    align-items: start;\n\n    gap: 20px;\n\n    width: 100%;\n\n    padding: 50px 50px 50px 30px;\n\n    color: #2e2e2e;\n\n    border: 1px solid transparent;\n    border-image: linear-gradient(93.93deg, #60B5FF 3.21%, #EB757C 96.79%) 1 round;  \n}\n\n\nimg.testim-icon {\n    display: flex;\n    width: 24px;\n    height: auto;\n\n    aspect-ratio: 1\/1;\n\n    flex-shrink: 0;\n}\n\n.testim-content {\n    display: flex;\n    flex-direction: column;\n\n    gap: 40px;\n}\n\np.testim-text {\n    font-family: Karla;\n    font-weight: 400;\n    font-size: 22px;\n    line-height: 150%;\n\n    margin: 0;\n}\n\n.testim__lower-part-container {\n    display: flex;\n    gap: 30px;\n    justify-content: space-between;\n}\n\n.testim-author__container {\n    display: flex;\n    gap: 40px;\n\n    align-items: start;\n}\n\nimg.testim-author__img {\n    display: flex;\n\n    flex-shrink: 0;\n}\n\n.testim-author__info {\n    display: flex;\n    flex-direction: column;\n    gap: 4px;\n}\n\n.testim-author__name {\n    font-family: Sora;\n    font-weight: 600;\n    font-size: 20px;\n    line-height: 135%;\n\n    margin: 0;\n}\n\n.testim-author__role {\n    font-family: Karla;\n    font-weight: 400;\n    font-size: 18px;\n    line-height: 150%;\n\n    margin: 0;\n}\n\n.testim-link-btn {\n    align-self: end;\n\n    font-family: Karla;\n    font-weight: 400;\n    font-size: 18px;\n    line-height: 150%;\n    letter-spacing: 0%;\n\n    cursor: pointer;\n\n    border: none;\n    border-radius: 0;\n    margin: 0;\n    padding: 0;\n    background: none;\n\n    color: #C63031;\n    border-bottom: 1px solid #C63031;\n}\n\n.testim-link-btn:hover, .testim-link-btn:active, .testim-link-btn:focus {\n    color: #C63031 !important;\n    border-bottom: 1px solid #C63031 !important;\n}\n\n.testim-modal__backdrop {\n\n    position: fixed;\n    top: 0;\n    left: 0;\n    height: 100vh;\n    width: 100vw;\n\n    display: none;\n\n    align-items: center;\n    justify-content: center;\n\n    padding: 0 15px;\n    max-height: 100vh;\n\n    z-index: 99999999;\n\n    background-color: rgba(0, 0, 0, 0.4);\n}\n\n.testim-modal__backdrop.testim-modal--open {\n    display: flex;\n    flex-direction: column;\n}\n\n.testim-modal {\n    max-width: 700px;\n    width: 100%;\n    position: relative;\n    background-color: #ffffff;\n}\n\n.testim-modal__sources {\n    overflow-y: auto;\n    width: 100%;\n    height: 100%;\n    max-height: calc(100vh - 140px);\n}\n.testim-modal__sources img {\n    width: 100%;\n    max-width: 700px;\n}\n\n.testim-modal__close-btn {\n    position: absolute;\n    top: 15px;\n    right: 15px;\n\n    cursor: pointer;\n\n    display: flex;\n\n    border: none;\n    border-radius: 0;\n    margin: 0;\n    padding: 0;\n    background: none;\n}\n\n\n.testim-modal__sources::-webkit-scrollbar {\n    width: 5px !important;\n    background-color: #F5F5F7 !important;\n}\n\n.testim-modal__sources::-webkit-scrollbar-thumb {\n    background-color: #999999 !important;\n    border-radius: 5px !important;\n}\n\n@media screen and (max-width:767px) {\n    \n    .testim__lower-part-container {\n        display: flex;\n        flex-direction: column;\n    }\n    \n    .testim-author__container {\n        gap: 20px;\n    }\n\n    .testim-link-btn {\n        align-self: start;\n\n        font-size: 14px;\n    }\n    .testim-container {\n        flex-direction: column;\n        gap: 10px;\n\n        padding: 20px;\n    }\n\n    img.testim-icon {\n        width: 16px;\n    }\n\n    .testim-content {\n        gap: 30px;\n    }\n\n    p.testim-text {\n        font-size: 16px;\n    }\n\n    img.testim-author__img {\n        width: 40px;\n    }\n\n    .testim-author__name {\n        font-size: 16px;\n    }\n\n    .testim-author__role {\n        font-size: 14px;\n    }\n}\n<\/style>\n\n<div class=\"testim-container\">\n    <img decoding=\"async\"  class=\"testim-icon\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2025\/10\/Frame-2131329670.svg\" alt=\"Quote icon\" \/>\n    <div class=\"testim-content\">\n        <p class=\"testim-text\">\n           The Innowise team took ownership of a significant portion of the new product right from the start of our engagement. They have worked very closely with our technical lead to learn the current code base, assist in designing its architecture, and have been involved in making architectural decisions since day one of the project.\u00a0Over the entire course of this collaboration, we have enjoyed good communication, with frequent daily standup meetings and regularly scheduled sync sessions.\n        <\/p>\n        <div  class=\"testim__lower-part-container\">\n            <div class=\"testim-author__container\">\n                <img decoding=\"async\" class=\"testim-author__img\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2026\/04\/Vector.svg\" alt=\"Flyyo logo\" \/>\n                <div class=\"testim-author__info\">\n                    <span class=\"testim-author__name\">Hugo Christian Rie\u00df<\/span>\n                    <span class=\"testim-author__role\">CEO, LEGANTA<\/span>\n                <\/div>\n            <\/div>\n            <!--<button class=\"testim-link-btn\">Review the source<\/button> -->\n        <\/div>\n    <\/div>\n<\/div>\n\n<div class=\"testim-modal__backdrop\">\n    <div class=\"testim-modal\">\n        <button class=\"testim-modal__close-btn\" title=\"Close\"><img decoding=\"async\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2025\/10\/carbon_close.svg\" alt=\"Cross icon\" \/><\/button>\n        <div class=\"testim-modal__sources\">\n            <img decoding=\"async\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2026\/03\/2025.12.02-Refference-letter_FLYYO.png\" alt=\"Letter of recommendation, Page 1\" \/>\n        <\/div>\n    <\/div>\n<\/div>\n\n<script>\ndocument.addEventListener(\"DOMContentLoaded\", ()=>{\n    const dialogOpener = document.querySelector(\".testim-link-btn\");\n    const dialog = document.querySelector(\".testim-modal__backdrop\");\n    const dialogCloser = document.querySelector(\".testim-modal__close-btn\");\n    \n    \n    const escHandler = function(event) {\n      if (event.isComposing) {\n        return;\n      }\n      if (event.code = \"Escape\") {\n        const openedModal = document.querySelector(\".testim-modal__backdrop.testim-modal--open\");\n        \n        if (openedModal)\n            openedModal.classList.remove(\"testim-modal--open\")\n            \n        window.removeEventListener(\"keyup\", escHandler);\n      }\n    }\n    \n    dialogOpener.addEventListener(\"click\", () => {\n        dialog.classList.add(\"testim-modal--open\")\n        \n        window.addEventListener(\"keyup\", escHandler);\n        \n    })\n    dialogCloser.addEventListener(\"click\", () => {\n        dialog.classList.remove(\"testim-modal--open\")\n            \n        window.removeEventListener(\"keyup\", escHandler);\n    })\n    dialog.addEventListener(\"click\", (event) => {\n        if (event.target === event.currentTarget) {\n            dialog.classList.remove(\"testim-modal--open\")\n            \n            window.removeEventListener(\"keyup\", escHandler);\n        }\n    })\n})\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-9c97c75 e-con-full  section-bg--grey e-flex e-con e-child\" data-id=\"9c97c75\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-7241990 elementor-widget-tablet__width-inherit elementor-widget-mobile__width-inherit elementor-widget__width-inherit elementor-widget elementor-widget-heading\" data-id=\"7241990\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Challenge<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-663e27d elementor-widget__width-inherit elementor-widget-tablet__width-inherit last-child-mb-0 elementor-widget elementor-widget-text-editor\" data-id=\"663e27d\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">Leganta needed a reliable, automated way to take a raw PDF contract and transform it into structured objects, so experts didn&#8217;t have to do it by hand. Building that module from scratch was the core challenge on this project.<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-5bb8bb6 elementor-widget elementor-widget-html\" data-id=\"5bb8bb6\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\r\n.challenge-tabs {\r\n    display: flex;\r\n    flex-direction: column;\r\n\r\n    width: 100%;\r\n}\r\n\r\n.challenge-tab-container {\r\n    display: grid;\r\n    grid-template-columns: 1fr 1fr;\r\n\r\n    width: 100%;\r\n\r\n    place-items: stretch;\r\n}\r\n\r\n\r\n.challenge-tab-container button.challenge-tab-btn {\r\n    display: flex;\r\n\r\n    font-family: Sora;\r\n    font-weight: 400;\r\n    font-size: 24px;\r\n    line-height: 135%;\r\n\r\n    text-align: start;\r\n\r\n    cursor: pointer;\r\n\r\n    background-color: transparent;\r\n    color: #717171;\r\n    border: none;\r\n    border-bottom: 1px solid #999999;\r\n\r\n    padding: 0 40px 30px;\r\n    \r\n    border-radius: 0;\r\n    \r\n    \r\n    white-space: normal;\r\n    \r\n    transition: initial;\r\n}\r\n\r\n.challenge-tab-container button.challenge-tab-btn.challenge-tab-btn--active {\r\n    color: #2E2E2E;\r\n    border-bottom: 2px solid #C63031;\r\n\r\n    cursor: default;\r\n\r\n    padding: 0 40px 29px;\r\n}\r\n\r\n.challenge-tab-content {\r\n    display: none;\r\n\r\n    flex-direction: column;\r\n    gap: 18px;\r\n\r\n    padding: 40px 40px 0;\r\n\r\n    font-family: Karla;\r\n    font-weight: 400;\r\n    font-size: 22px;\r\n    line-height: 150%;\r\n}\r\n\r\n.challenge-tab-content.challenge-tab-content--active {\r\n    display: flex;\r\n}\r\n\r\n.challenge-tab-content>* {\r\n    margin: 0;\r\n}\r\n\r\n.challenge-tab-content ul {\r\n    list-style-position: outside;\r\n    \r\n    margin: 0;\r\n    padding: 0;\r\n    \r\n    display: flex;\r\n    flex-direction: column;\r\n    gap: 16px;\r\n    \r\n    padding-left: 1.5em;\r\n}\r\n\r\n.challenge-tab-content li {\r\n    margin: 0;\r\n    padding: 0;\r\n}\r\n\r\n@media screen and (max-width:780px) {\r\n    .challenge-tab-content {\r\n        padding: 30px 30px 0;\r\n    }\r\n\r\n    .challenge-tab-container button.challenge-tab-btn {\r\n        padding: 0 20px 15px;\r\n    }\r\n\r\n    .challenge-tab-container button.challenge-tab-btn.challenge-tab-btn--active {\r\n        padding: 0 20px 14px;\r\n    }\r\n}\r\n\r\n@media screen and (max-width:767px) {\r\n    .challenge-tab-content {\r\n        padding: 20px 0 0;\r\n\r\n        font-size: 16px;\r\n    }\r\n    \r\n    .challenge-tab-container button.challenge-tab-btn {\r\n        padding: 0 15px 15px;\r\n\r\n        font-size: 16px;\r\n    }\r\n\r\n    .challenge-tab-container button.challenge-tab-btn.challenge-tab-btn--active {\r\n        padding: 0 15px 14px;\r\n        color: #2E2E2E;\r\n    }\r\n}\r\n<\/style>\r\n\r\n<div class=\"challenge-tabs\">\r\n    <div class=\"challenge-tab-container\">\r\n        <button class=\"challenge-tab-btn challenge-tab-btn--active\">Business challenges<\/button>\r\n        <button class=\"challenge-tab-btn\">Technical challenges<\/button>\r\n    <\/div>\r\n    <div class=\"challenge-tab-content-container\">\r\n        <div class=\"challenge-tab-content challenge-tab-content--active\">\r\n            <ul>\r\n                <li><b>Time-consuming manual processing.<\/b>  Employees previously read through massive contracts to extract specific entities manually. This manual routine slowed down operations and increased the risk of human error.<\/li>\r\n                <li><b>Information overload.<\/b> Corporate agreements contain excessive amounts of text. Users require a method to isolate crucial data objects to prepare documents for ERP integrations or electronic signatures efficiently.<\/li>\r\n                                <li><b>Legal compliance.<\/b> Automated text modification presents severe legal risks. The system must preserve the exact original wording of legal clauses to prevent any misinterpretation or contractual disputes.<\/li>\r\n            <\/ul>            \r\n        <\/div>\r\n        <div class=\"challenge-tab-content\">\r\n            <ul>\r\n                <li><b>No database or parsing logic in place.<\/b> The client had no existing foundation for contract parsing, but knew they wanted to use MongoDB. The project required setting up a database from scratch and building all the core logic on top of it to support the new functionality.<\/li>\r\n                <li><b>Unpredictable document formats.<\/b> Corporate contracts come with varying styles, irregular layouts, and complex tables of contents. Leganta needed a reliable algorithm to extract text from these unpredictable PDF files precisely.\r\n<\/li>\r\n                <li><b>Cloud and on-premise deployment.<\/b> Leganta required the platform to operate seamlessly as both a cloud-hosted solution and a local on-premise installation to satisfy various enterprise clients. The foundational architecture had to leverage versatile containerization tools such as Docker and Kubernetes to support these dual hosting environments from the start.<\/li>\r\n            <\/ul>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>\r\n\r\n<script>\r\ndocument.addEventListener('DOMContentLoaded', () => {\r\n    const tabButtons = [...document.querySelectorAll(\".challenge-tabs .challenge-tab-btn\")];\r\n    const tabContents = [...document.querySelectorAll(\".challenge-tabs .challenge-tab-content\")];\r\n\r\n    const tabButtonActiveClass = \"challenge-tab-btn--active\"\r\n    const tabContentActiveClass = \"challenge-tab-content--active\"\r\n\r\n    const activateItem = (index) => {\r\n        tabButtons.forEach((item, itemIndex) => {\r\n            if (itemIndex === index) {\r\n                item.classList.add(tabButtonActiveClass);\r\n            } else {\r\n                item.classList.remove(tabButtonActiveClass);\r\n            }\r\n        });\r\n        \r\n        tabContents.forEach(\r\n            (itemDesc, itemDescIndex) => {\r\n                if (itemDescIndex === index) {\r\n                    itemDesc.classList.add(tabContentActiveClass);\r\n                } else {\r\n                    itemDesc.classList.remove(tabContentActiveClass);\r\n                }\r\n            }\r\n        );\r\n    }\r\n\r\n    tabButtons.forEach((item, index)=>{\r\n        item.addEventListener(\"click\", () => activateItem(index))\r\n    })\r\n})\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-513b863 e-con-full section-bg--white e-flex e-con e-child\" data-id=\"513b863\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-7e6056c elementor-widget-tablet__width-inherit elementor-widget-mobile__width-inherit elementor-widget__width-inherit elementor-widget elementor-widget-heading\" data-id=\"7e6056c\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Solution<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-4b012ea elementor-widget__width-inherit elementor-widget-tablet__width-inherit last-child-mb-0 elementor-widget elementor-widget-text-editor\" data-id=\"4b012ea\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">To address these challenges, Innowise built the document parsing module from scratch. The work covered backend logic, the frontend interface, and deployment infrastructure, with the two developers splitting responsibilities across the full stack.<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-96170d7 e-con-full e-flex e-con e-child\" data-id=\"96170d7\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-322f7fb elementor-widget-tablet__width-inherit elementor-widget-mobile__width-inherit elementor-widget__width-inherit elementor-widget elementor-widget-heading\" data-id=\"322f7fb\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">Document parsing and semantic segmentation<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-f47ee0a e-con-full e-flex e-con e-child\" data-id=\"f47ee0a\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c02b300 elementor-widget__width-inherit elementor-widget-tablet__width-inherit last-child-mb-0 elementor-widget elementor-widget-text-editor\" data-id=\"c02b300\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>The first task was building the parsing engine. We started by integrating Apache POI to extract text content from uploaded PDF contracts, along with the formatting metadata embedded in each file. We used that metadata, heading styles, paragraph breaks, and font weights as the signals that drive the parsing logic.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-80ab8d6 elementor-widget elementor-widget-html\" data-id=\"80ab8d6\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<ul class=\"generic-case-ul\">\n        <li><span>Our team developed a custom segmentation algorithm that breaks the extracted text into semantic units: individual clauses, sections, and data fields that users can then view, edit, and work with directly.<\/span><\/li>\n        <li><span>We developed the segmentation rules and tested them against real contract samples until the outputs were consistent and meaningful. We store all parsed sections as structured objects in MongoDB.<\/span><\/li>\n        <li><span>On the frontend, we built a two-pane interface. We put the original PDF on the left so users always have the source document in view, and we built an editable table of parsed sections on the right. This way, users can compare the source against the extracted data at any point.<\/span><\/li>\n        <li><span>Our experts also extended an open-source PDF rendering library because the free version didn't handle certain edge cases, so we manually brought it up to the level of paid alternatives.<\/span><\/li>\n                <li><span>We also built a set of editing tools so users can correct the output where needed. They can merge sections that the algorithm split incorrectly, adjust titles, fill in fields, and change any part of the structure before saving. We designed the flow to be fast, since parsing accuracy depends on document quality, and users often need to make corrections.<\/span><\/li>\n                \n                        \n<\/ul>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-3c15ead e-con-full e-flex e-con e-child\" data-id=\"3c15ead\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-a8d2cbe elementor-widget__width-inherit elementor-widget elementor-widget-image\" data-id=\"a8d2cbe\" data-element_type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/innowise.com\/wp-content\/uploads\/2026\/04\/Semantic-parsing-process.jpg\" data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-title=\"semantic-parsing-process-diagram\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTk1NzExLCJ1cmwiOiJodHRwczpcL1wvaW5ub3dpc2UuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wNFwvU2VtYW50aWMtcGFyc2luZy1wcm9jZXNzLmpwZyJ9\">\n\t\t\t\t\t\t\t<img fetchpriority=\"high\" decoding=\"async\" width=\"2000\" height=\"1042\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2026\/04\/Semantic-parsing-process.jpg\" class=\"attachment-full size-full wp-image-195711\" alt=\"Illustration of the semantic parsing engine breaking down raw multi-page PDF contracts into structured and searchable data objects.\" srcset=\"https:\/\/innowise.com\/wp-content\/uploads\/2026\/04\/Semantic-parsing-process.jpg 2000w, https:\/\/innowise.com\/wp-content\/uploads\/2026\/04\/Semantic-parsing-process-300x156.jpg 300w, https:\/\/innowise.com\/wp-content\/uploads\/2026\/04\/Semantic-parsing-process-1024x534.jpg 1024w, https:\/\/innowise.com\/wp-content\/uploads\/2026\/04\/Semantic-parsing-process-768x400.jpg 768w, https:\/\/innowise.com\/wp-content\/uploads\/2026\/04\/Semantic-parsing-process-1536x800.jpg 1536w, https:\/\/innowise.com\/wp-content\/uploads\/2026\/04\/Semantic-parsing-process-18x9.jpg 18w\" sizes=\"(max-width: 2000px) 100vw, 2000px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-6d73355 e-con-full e-flex e-con e-child\" data-id=\"6d73355\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-9b605b9 elementor-widget-tablet__width-inherit elementor-widget-mobile__width-inherit elementor-widget__width-inherit elementor-widget elementor-widget-heading\" data-id=\"9b605b9\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">Template system for recurring document types<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-eda5288 e-con-full e-flex e-con e-child\" data-id=\"eda5288\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-3f99961 elementor-widget__width-inherit elementor-widget-tablet__width-inherit last-child-mb-0 elementor-widget elementor-widget-text-editor\" data-id=\"3f99961\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Once the core parsing was working, we built a template system on top of it. The idea came from a practical observation: organizations that process large volumes of similar contracts, such as banks using standardized loan agreements, repeatedly encounter the same document structures.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-0646099 elementor-widget elementor-widget-html\" data-id=\"0646099\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<ul class=\"generic-case-ul\">\n        <li><span>We built a save-as-template function that lets users capture a fully structured and corrected document as a reusable pattern. When a new contract with a similar structure arrives, the system applies that pattern automatically during parsing.<\/span><\/li>\n        <li><span>For template-matched documents, accuracy on the first pass is substantially higher, and the time users spend on manual review drops accordingly.<\/span><\/li>\n\n<\/ul>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-32c9f51 e-con-full e-flex e-con e-child\" data-id=\"32c9f51\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-8105d67 elementor-widget__width-inherit elementor-widget elementor-widget-image\" data-id=\"8105d67\" data-element_type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/innowise.com\/wp-content\/uploads\/2026\/04\/Templates-and-AI-classification.jpg\" data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-title=\"ai-template-classification-flow\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTk1NzEyLCJ1cmwiOiJodHRwczpcL1wvaW5ub3dpc2UuY29tXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI2XC8wNFwvVGVtcGxhdGVzLWFuZC1BSS1jbGFzc2lmaWNhdGlvbi5qcGcifQ%3D%3D\">\n\t\t\t\t\t\t\t<img decoding=\"async\" width=\"2000\" height=\"1464\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2026\/04\/Templates-and-AI-classification.jpg\" class=\"attachment-full size-full wp-image-195712\" alt=\"Flowchart illustrating how a new contract is processed using an AI module and saved templates to automatically apply structure.\" srcset=\"https:\/\/innowise.com\/wp-content\/uploads\/2026\/04\/Templates-and-AI-classification.jpg 2000w, https:\/\/innowise.com\/wp-content\/uploads\/2026\/04\/Templates-and-AI-classification-300x220.jpg 300w, https:\/\/innowise.com\/wp-content\/uploads\/2026\/04\/Templates-and-AI-classification-1024x750.jpg 1024w, https:\/\/innowise.com\/wp-content\/uploads\/2026\/04\/Templates-and-AI-classification-768x562.jpg 768w, https:\/\/innowise.com\/wp-content\/uploads\/2026\/04\/Templates-and-AI-classification-1536x1124.jpg 1536w, https:\/\/innowise.com\/wp-content\/uploads\/2026\/04\/Templates-and-AI-classification-16x12.jpg 16w\" sizes=\"(max-width: 2000px) 100vw, 2000px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-1500b6d e-con-full e-flex e-con e-child\" data-id=\"1500b6d\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-5d173c8 elementor-widget-tablet__width-inherit elementor-widget-mobile__width-inherit elementor-widget__width-inherit elementor-widget elementor-widget-heading\" data-id=\"5d173c8\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">AI integration for field classification<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-c13a771 e-con-full e-flex e-con e-child\" data-id=\"c13a771\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-98e0889 elementor-widget__width-inherit elementor-widget-tablet__width-inherit last-child-mb-0 elementor-widget elementor-widget-text-editor\" data-id=\"98e0889\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>In parallel with our work, the client&#8217;s experts developed a GPT-based classification layer that sits on top of the parsed sections. Its job is to classify each section against the platform&#8217;s internal entity types.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-420758c elementor-widget elementor-widget-html\" data-id=\"420758c\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<ul class=\"generic-case-ul\">\n        <li><span>Our responsibility was to ensure the parsed output fed into that layer cleanly. That said, we structured the sections to be consistently bounded and well-formed so the AI classification could work reliably on top of them.<\/span><\/li>\n        <li><span>We coordinated closely with the client's team on the handoff format between the two layers. The client's team built the AI layer on their end. And our job was to ensure the parsed sections fed into it cleanly.<\/span><\/li>\n<\/ul>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-a2f96c6 e-con-full e-flex e-con e-child\" data-id=\"a2f96c6\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-8bc6345 elementor-widget-tablet__width-inherit elementor-widget-mobile__width-inherit elementor-widget__width-inherit elementor-widget elementor-widget-heading\" data-id=\"8bc6345\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">Project and document management layer<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-09eec43 e-con-full e-flex e-con e-child\" data-id=\"09eec43\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-20716f5 elementor-widget__width-inherit elementor-widget-tablet__width-inherit last-child-mb-0 elementor-widget elementor-widget-text-editor\" data-id=\"20716f5\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Around the parsing engine, we built the full management layer that users interact with day to day.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c04d9ca elementor-widget elementor-widget-html\" data-id=\"c04d9ca\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<ul class=\"generic-case-ul\">\n        <li><span>Our team built the project structure, which lets users group related documents together under a single contract negotiation or deal. We also built the document upload and lifecycle flow, and the full CRUD layer for managing both projects and documents.<\/span><\/li>\n        <li><span>We set up H2 as a lightweight, self-contained store for credentials and roles, keeping it separate from the main document data in MongoDB.<\/span><\/li>\n<\/ul>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-367bc5b e-con-full e-flex e-con e-child\" data-id=\"367bc5b\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-526265c elementor-widget-tablet__width-inherit elementor-widget-mobile__width-inherit elementor-widget__width-inherit elementor-widget elementor-widget-heading\" data-id=\"526265c\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">Infrastructure and deployment<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-f4e4d7a e-con-full e-flex e-con e-child\" data-id=\"f4e4d7a\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-780792b elementor-widget__width-inherit elementor-widget-tablet__width-inherit last-child-mb-0 elementor-widget elementor-widget-text-editor\" data-id=\"780792b\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>We wrote Dockerfiles for all services, configured Kubernetes deployments and services, set up ingress with TLS certificates, and built the CI pipeline on GitHub Actions to handle the build, image push, and publish steps.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-6b7dabc elementor-widget elementor-widget-html\" data-id=\"6b7dabc\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<ul class=\"generic-case-ul\">\n        <li><span>We deployed the platform on infrastructure provided by Syseleven, Leganta's German cloud partner.<\/span><\/li>\n        <li><span>We structured the containerized setup to also support on-premise deployment at client sites, which Leganta requires for some of their enterprise customers.<\/span><\/li>\n<\/ul>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c96a9ac elementor-widget elementor-widget-html\" data-id=\"c96a9ac\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\n.quote-container {\n    display: flex;\n    align-items: start;\n\n    gap: 20px;\n\n    width: 100%;\n\n    padding: 50px 50px 50px 30px;\n\n    color: #2e2e2e;\n\n    border: 1px solid transparent;\n    border-image: linear-gradient(93.93deg, #60B5FF 3.21%, #EB757C 96.79%) 1 round;  \n}\n\n\nimg.quote-icon {\n    display: flex;\n    width: 24px;\n    height: auto;\n\n    aspect-ratio: 1\/1;\n\n    flex-shrink: 0;\n}\n\n.quote-content {\n    display: flex;\n    flex-direction: column;\n\n    gap: 40px;\n}\n\np.quote-text {\n    font-family: Karla;\n    font-weight: 400;\n    font-size: 22px;\n    line-height: 150%;\n\n    margin: 0;\n}\n\n.quote-author__container {\n    display: flex;\n    gap: 20px;\n\n    align-items: center;\n}\n\nimg.quote-author__img {\n    display: flex;\n    width: 100px;\n    height: auto;\n\n    aspect-ratio: 1\/1;\n\n    flex-shrink: 0;\n}\n\n.quote-author__info {\n    display: flex;\n    flex-direction: column;\n    gap: 4px;\n\n    flex-basis: 320px;\n    flex-grow: 0;\n}\n\n.quote-author__name {\n    font-family: Sora;\n    font-weight: 600;\n    font-size: 20px;\n    line-height: 135%;\n\n    margin: 0;\n}\n\n.quote-author__role {\n    font-family: Karla;\n    font-weight: 400;\n    font-size: 18px;\n    line-height: 150%;\n\n    margin: 0;\n}\n\n@media screen and (max-width:767px) {\n    \n    .quote-container {\n        flex-direction: column;\n        gap: 10px;\n\n        padding: 20px;\n    }\n\n    img.quote-icon {\n        width: 16px;\n    }\n\n    .quote-content {\n        gap: 20px;\n    }\n\n    p.quote-text {\n        font-size: 16px;\n    }\n\n    img.quote-author__img {\n        width: 60px;\n    }\n\n    .quote-author__name {\n        font-size: 16px;\n    }\n\n    .quote-author__role {\n        font-size: 14px;\n    }\n}\n<\/style>\n\n<div class=\"quote-container\">\n    <img decoding=\"async\"  class=\"quote-icon\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2025\/10\/Frame-2131329670.svg\" alt=\"Quote icon\" \/>\n    <div class=\"quote-content\">\n        <p class=\"quote-text\">\n           The collaboration with the Leganta team worked well from the start. The client's tech lead was available, clear about what they needed, and open when we had a different take on something. We came in, got familiar with what was already there, and figured out the architecture together from that point. The scope was genuinely open-ended at the beginning, and the only hard requirement was MongoDB, so a lot of the technical decisions happened through ongoing discussion. That kind of working collaboration is easier when the other side knows their product well, and the Leganta team did. We've been on this project since early 2024, and the working rhythm has stayed consistent throughout.\n        <\/p>\n        <div class=\"quote-author__container\">\n            <img decoding=\"async\" class=\"quote-author__img\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2026\/04\/Dmitry-Nazarevich-1.png\" alt=\"Dmitry Nazarevich\" \/>\n            <div class=\"quote-author__info\">\n                <span class=\"quote-author__name\"><a href=\"https:\/\/innowise.com\/authors\/dmitry-nazarevich\/\">Dmitry Nazarevich<\/a><\/span>\n                <span class=\"quote-author__role\">Chief Technology Officer<\/span>\n            <\/div>\n        <\/div>\n    <\/div>\n<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-7e9c8cf e-con-full section-bg--grey e-flex e-con e-child\" data-id=\"7e9c8cf\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-8982ccb elementor-widget-tablet__width-inherit elementor-widget-mobile__width-inherit elementor-widget__width-inherit elementor-widget elementor-widget-heading\" data-id=\"8982ccb\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Technologies<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c9946c7 elementor-widget elementor-widget-html\" data-id=\"c9946c7\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\n.tech-grid {\n    display: grid;\n\n    grid-template-columns: repeat(3, 1fr);\n    column-gap: 60px;\n    row-gap: 80px;\n}\n\n.tech-grid-item {\n    display: grid;\n    flex-direction: column;\n        grid-template-rows: subgrid;\n    grid-row: span 2;\n    gap: 20px;\n}\n\n.tech-grid-item__title-wrapper {\n    display: flex;\n    flex-direction: column;\n\n    padding-bottom: 20px;\n    border-bottom: 1px solid transparent;\n    border-image: linear-gradient(93.93deg, #60B5FF 3.21%, #EB757C 96.79%) 1 round; \n}\n\nh4.tech-grid-item__title {\n    font-family: Sora;\n    font-weight: 600;\n    font-size: 20px;\n    line-height: 135%;\n\n    margin: 0;\n}\n\np.tech-grid-item__techs {\n    font-family: Karla;\n    font-weight: 400;\n    font-size: 18px;\n    line-height: 150%;\n\n    margin: 0;\n}\n\n@media screen and (max-width:780px) {\n    .tech-grid {\n        grid-template-columns: repeat(2, 1fr);\n        column-gap: 60px;\n        row-gap: 60px;\n    }\n}\n\n\n\n@media screen and (max-width:767px) {\n    .tech-grid {\n        grid-template-columns: 1fr;\n        gap: 30px;\n    }\n\n    .tech-grid-item {\n        gap: 10px;\n    }\n\n    .tech-grid-item__title-wrapper {\n        padding-bottom: 10px;\n    }\n\n    h4.tech-grid-item__title {\n        font-size: 14px;\n        line-height: 120%;\n    }\n\n    p.tech-grid-item__techs {\n        font-size: 14px;\n        line-height: 150%;\n    }\n}\n<\/style>\n\n<div class=\"tech-grid\">\n  <div class=\"tech-grid-item\">\n    <div class=\"tech-grid-item__title-wrapper\">\n      <h4 class=\"tech-grid-item__title\">Backend<\/h4>\n    <\/div>\n    <p class=\"tech-grid-item__techs\">Java 17, Spring Boot<\/p>\n  <\/div>\n    \n  <div class=\"tech-grid-item\">\n    <div class=\"tech-grid-item__title-wrapper\">\n      <h4 class=\"tech-grid-item__title\">Frontend<\/h4>\n    <\/div>\n    <p class=\"tech-grid-item__techs\">Vue.js, Vuetify, TypeScript, Pinia<\/p>\n  <\/div>\n\n  <div class=\"tech-grid-item\">\n    <div class=\"tech-grid-item__title-wrapper\">\n      <h4 class=\"tech-grid-item__title\">Database (main)<\/h4>\n    <\/div>\n    <p class=\"tech-grid-item__techs\">MongoDB<\/p>\n  <\/div>\n  \n  <div class=\"tech-grid-item\">\n    <div class=\"tech-grid-item__title-wrapper\">\n      <h4 class=\"tech-grid-item__title\">Database (auth)<\/h4>\n    <\/div>\n    <p class=\"tech-grid-item__techs\">H2<\/p>\n  <\/div>\n    <div class=\"tech-grid-item\">\n    <div class=\"tech-grid-item__title-wrapper\">\n      <h4 class=\"tech-grid-item__title\">PDF processing<\/h4>\n    <\/div>\n    <p class=\"tech-grid-item__techs\">Apache POI<\/p>\n  <\/div>\n    <div class=\"tech-grid-item\">\n    <div class=\"tech-grid-item__title-wrapper\">\n      <h4 class=\"tech-grid-item__title\">CI<\/h4>\n    <\/div>\n    <p class=\"tech-grid-item__techs\">GitHub Actions<\/p>\n  <\/div>\n      <div class=\"tech-grid-item\">\n    <div class=\"tech-grid-item__title-wrapper\">\n      <h4 class=\"tech-grid-item__title\">Testing<\/h4>\n    <\/div>\n    <p class=\"tech-grid-item__techs\">Unit tests, integration tests (backend), Selenium (frontend)<\/p>\n  <\/div>\n    <div class=\"tech-grid-item\">\n    <div class=\"tech-grid-item__title-wrapper\">\n      <h4 class=\"tech-grid-item__title\">Containers<\/h4>\n    <\/div>\n    <p class=\"tech-grid-item__techs\">Docker, Kubernetes<\/p>\n  <\/div>\n\n<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-904df3a e-con-full section-bg--white e-flex e-con e-child\" data-id=\"904df3a\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-2343ecf elementor-widget elementor-widget-html\" data-id=\"2343ecf\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"team-grid\">\n  <div class=\"team-title-wrapper\">\n    <h2 class=\"team-title\">Team<\/h2>\n  <\/div>\n\n  <div class=\"team-grid-item\">\n    <div class=\"team-grid-item__count\">\n      <img decoding=\"async\"\n        src=\"https:\/\/innowise.com\/wp-content\/uploads\/2025\/10\/Icon.svg\"\n        alt=\"Icon\"\n      \/>\n      <span>1<\/span>\n    <\/div>\n    <span class=\"team-grid-item__type\">Back-End Developer<\/span>\n  <\/div>\n  \n  <div class=\"team-grid-item\">\n    <div class=\"team-grid-item__count\">\n      <img decoding=\"async\"\n        src=\"https:\/\/innowise.com\/wp-content\/uploads\/2025\/10\/Icon.svg\"\n        alt=\"Icon\"\n      \/>\n      <span>1<\/span>\n    <\/div>\n    <span class=\"team-grid-item__type\">Full-Stack Developer<\/span>\n  <\/div>\n<\/div>\n\n\n\n        \n<style>\n.team-grid {\n    display: grid;\n\n    width: 100%;\n\n    grid-template-columns: repeat(3, 1fr);\n    gap: 20px;\n\n    place-items: stretch;\n\n    color: #2E2E2E;\n}\n\n.team-title-wrapper, .team-grid-item {\n    display: flex;\n    gap: 5px;\n}\n\n.team-grid-item {\n    padding: 40px 30px;\n}\n\n.team-title-wrapper {\n    padding: 40px 30px;\n    padding-left: 0;\n}\n\n.team-title-wrapper {\n    flex-direction: row;\n    align-items: center;\n}\n\n.team-grid-item {\n    flex-direction: column;\n    align-items: start;\n\n    background-color: #F5F5F7;\n}\n\nh2.team-title {\n    font-family: Sora;\n    font-weight: 400;\n    font-size: 36px;\n    line-height: 46px;\n\n    margin: 0;\n}\n\n.team-grid-item__count {\n    display: flex;\n    align-items: center;\n    gap: 5px;\n}\n\n.team-grid-item__count > span {\n    font-family: Sora;\n    font-weight: 600;\n    font-size: 18px;\n    line-height: 130%;\n    text-align: center;\n\n    position: relative;\n    top: 1px;\n\n    color: #C63031;\n}\n\n.team-grid-item__count > img {\n    display: flex;\n\n    width: 20px;\n    height: auto;\n    aspect-ratio: 1\/1;\n\n    flex-shrink: 0;\n}\n\n.team-grid-item__type {\n    font-family: Karla;\n    font-weight: 400;\n    font-size: 18px;\n    line-height: 150%;\n}\n\n@media screen and (max-width:780px) {\n    .team-grid-item {\n        padding: 30px;\n    }\n\n    .team-title-wrapper {\n        padding: 30px;\n        padding-left: 0;\n    }\n}\n\n@media screen and (max-width:767px) {\n\n    h2.team-title {\n        font-size: 24px;\n        line-height: 36px;\n        \n        margin: 0;\n    }\n\n    .team-grid {\n        grid-template-columns: repeat(2, 1fr);\n        gap: 10px;\n    }\n\n    .team-grid-item {\n        padding: 20px;\n    }\n\n    .team-title-wrapper {\n        padding: 0px;\n\n        grid-column: span 2;\n\n        margin-bottom: 20px;\n    }\n\n    .team-grid-item--placeholder {\n        display: none;\n    }\n\n    .team-grid-item__count > img {\n        width: 16px;\n    }\n    .team-grid-item__count > span {\n        font-size: 14px;\n        top: 0;\n    }\n\n    .team-grid-item__type {\n        font-size: 14px;\n    }\n}\n<\/style>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-03f4e16 elementor-widget elementor-widget-image\" data-id=\"03f4e16\" data-element_type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"1000\" height=\"400\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2025\/10\/innowise-team.jpg\" class=\"attachment-full size-full wp-image-188146\" alt=\"Innowise team\" srcset=\"https:\/\/innowise.com\/wp-content\/uploads\/2025\/10\/innowise-team.jpg 1000w, https:\/\/innowise.com\/wp-content\/uploads\/2025\/10\/innowise-team-300x120.jpg 300w, https:\/\/innowise.com\/wp-content\/uploads\/2025\/10\/innowise-team-768x307.jpg 768w, https:\/\/innowise.com\/wp-content\/uploads\/2025\/10\/innowise-team-18x7.jpg 18w\" sizes=\"(max-width: 1000px) 100vw, 1000px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-0ad8ca5 e-con-full section-bg--grey e-flex e-con e-child\" data-id=\"0ad8ca5\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-5db0aea elementor-widget elementor-widget-html\" data-id=\"5db0aea\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\nh2.results__title {\n    font-family: Sora;\n    font-weight: 400;\n    font-size: 36px;\n    line-height: 46px;\n\n    margin: 0;\n}\n\n.results__title-wrapper {\n    display: flex;\n    gap: 30px;\n\n    align-items: center;\n    justify-content: space-between;\n\n    width: 100%;\n\n    border-bottom: 1px solid transparent;\n    border-image: linear-gradient(93.93deg, #60B5FF 3.21%, #EB757C 96.79%) 1 round; \n}\n\n.results__duration-wrapper {\n    display: flex;\n    background-color: #F5F5F7;\n}\n\n.results__duration-wrapper > * {\n    padding: 30px 40px;\n}\n\n.results__duration-param {\n    font-family: Sora;\n    font-weight: 600;\n    font-size: 20px;\n    line-height: 135%;\n\n    text-align: center;\n}\n\n.results__duration-value {\n    font-family: Karla;\n    font-weight: 400;\n    font-size: 22px;\n    line-height: 110%;\n\n    text-align: center;\n}\n\n@media screen and (max-width:767px) {\n    \n    h2.results__title {\n        font-size: 24px;\n        line-height: 36px;\n    }\n\n    .results__title-wrapper {\n        flex-direction: column;\n        align-items: start;\n    }\n\n    .results__duration-wrapper {\n        display: grid;\n        grid-template-columns: 1fr 1fr;\n        width: 100%;\n    }\n\n    .results__duration-wrapper > * {\n        padding: 15px;\n    }\n\n    .results__duration-param {\n        font-size: 16px;\n        line-height: 120%;\n    }\n\n    .results__duration-value {\n        font-size: 16px;\n        line-height: 20px;\n    }\n\n}\n<\/style>\n\n\n<div class=\"results__title-wrapper\">\n    <h2 class=\"results__title\">Results<\/h2>\n    <div class=\"results__duration-wrapper\">\n        <div class=\"results__duration-param\">Project duration<\/div>\n        <div class=\"results__duration-value\">February 2024 \u2014 2025<\/div>\n    <\/div>\n<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b87d36d e-con-full e-flex e-con e-child\" data-id=\"b87d36d\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1a0623b elementor-widget__width-inherit elementor-widget-tablet__width-inherit last-child-mb-0 elementor-widget elementor-widget-text-editor\" data-id=\"1a0623b\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>The parsing module is live and in production. Leganta uses it as the entry point into their contract management workflow.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c23774c elementor-widget elementor-widget-html\" data-id=\"c23774c\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\n<style>\nul.generic-case-ul {\n    list-style: none;\n\n    display: flex;\n    flex-direction: column;\n    gap: 30px;\n\n    font-family: Karla;\n    font-weight: 400;\n    font-size: 22px;\n    line-height: 150%;\n\n\n    margin: 0;\n    padding: 0;\n}\n\nul.generic-case-ul li {\n    position: relative;\n    display: flex;\n\n    align-items: start;\n\n    gap: 20px;\n\n\n    margin: 0;\n}\n\n\nul.generic-case-ul li::before {\n    content: \"\";\n    width: 16px;\n    height: 0;\n    border: 1px solid #C63031;\n\n    position: relative;\n    top: 0.7em;\n\n    flex-shrink: 0;\n}\n\n@media screen and (max-width:1279px) {\n    \n    ul.generic-case-ul {\n        gap: 20px;\n    }\n    \n}\n\n\n@media screen and (max-width:767px) {\n    \n    ul.generic-case-ul {\n        gap: 10px;\n\n        font-size: 16px;\n    }\n\n    ul.generic-case-ul li {\n        gap: 10px;\n    }\n\n    ul.generic-case-ul li::before {\n        width: 12px;\n    }\n    \n}\n<\/style>\n\n<ul class=\"generic-case-ul\">\n            <li><span><strong>Contract structuring time cut from hours to seconds.<\/strong> Now the system produces an initial parsed structure in around 10 seconds. During demos, a full contract, reviewed, corrected where needed, and completely filled in, was ready within an hour. For documents that match an existing template, the initial parse is close to the final version with minimal correction required.<\/span><\/li>\n            <li><span><strong>Templates make repetitive work faster each time.<\/strong> Once a contract has been structured and saved as a template, subsequent documents of the same type automatically reuse that structure. Organizations handling high volumes of similar agreements, with banks being the primary target, see the benefit compound across every contract processed.<\/span><\/li>\n            <li><span><strong>Platform deployed and running in production. <\/strong> The platform supports both cloud infrastructure and on-premise deployment for enterprise clients who need it. The team has maintained a consistent bi-weekly release cycle since the project started.<\/span><\/li>\n            <li><span><strong>Semantic transformation engine.<\/strong> LEGANTA\u00ae provides a semantic transformation capability that converts any document into freely selectable target structures. This enables precise alignment with customer\u2011specific objectives and seamless integration into existing IT landscapes. At its core, the engine interprets documents as semantic information spaces. It restructures and enriches them so that organizations can embed the resulting data directly into their operational, compliance, risk, or analytic systems, without manual remodeling.<\/span><\/li>\n            <li><span><strong>Seamless system integration. <\/strong> The solution flawlessly synergizes with the client's existing authentication and other modules, and enables smooth data exports to other internal systems.<\/span><\/li>\n<\/ul>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-54d6275 elementor-widget__width-inherit elementor-widget-tablet__width-inherit last-child-mb-0 elementor-widget elementor-widget-text-editor\" data-id=\"54d6275\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">The team delivered everything that was planned and shipped on a consistent bi-weekly release cycle. The parsing module went live, and Leganta started using it in their day-to-day contract workflow.<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-95dede8 table-content-container e-con-full e-flex e-con e-child\" data-id=\"95dede8\" data-element_type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-32a4a45 e-con-full stickyTable e-flex e-con e-child\" data-id=\"32a4a45\" data-element_type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-c2c808c author-block e-con-full e-flex e-con e-child\" data-id=\"c2c808c\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-5b697f5 ddcv elementor-widget elementor-widget-html\" data-id=\"5b697f5\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\r\n\r\n.article-description > .e-con-inner{\r\n     align-items: baseline !important;\r\n}\r\n\r\n.stickyTable {\r\n    position: sticky;\r\n    top: 72px;\r\n    bottom: auto;   \r\n}  \r\n\r\n<\/style>\r\n\r\n<script>\r\ndocument.addEventListener(\"DOMContentLoaded\", ()=>{\r\n        \r\nconst headerElement = document.querySelector(\".new-menu\");\r\n\r\nconst stickyElement = document.querySelector(\".stickyTable\");\r\n\r\nconst headerElementH = headerElement.clientHeight;\r\n\r\nstickyElement.style.top =  headerElementH + 60 + \"px\"\r\n        \r\n});\r\n<\/script>\r\n\r\n\r\n<!--NOTE Change data-id in wrapper styles for hide this block on the mobile device screen-->\r\n<div class=\"toc-wrapper\">\r\n  <h4 class=\"toc-title\">Table of contents<\/h4>\r\n  <div class=\"toc toc-2\"><\/div>\r\n<\/div>\r\n\r\n<script>\r\n  \/\/NOTE Add the value from h2 as the key and the text you want to display as the key value in LINKS variable:\r\n  \/\/   const LINKS = {\r\n  \/\/       \"The demand for retail digital transformation\": \"The demand\"\r\n  \/\/   }\r\n\r\n  \r\n  \/\/NOTE Add the value from h2 as the key and the text you want to display as the key value in LINKS variable:\r\n  \/\/   const LINKS = {\r\n  \/\/       \"The demand for retail digital transformation\": \"The demand\"\r\n  \/\/   }\r\n\r\n  const LINKS = {\r\n    \"Unleashing the power of .NET 8\": \"gggggg\",\r\n    \"Revamping legacy systems: unlocking business potential through software modernization\":\r\n      \"hello\",\r\n      \"Solution we delivered\": \"Solution\",\r\n  };\r\n\r\n  const OFFSET = 70;\r\n   const PADDING_BOTTOM_FOR_SCROLL = 100;\r\n  let headerList = [];\r\n  let allLinks = [];\r\n  \r\n  let ticking = false;\r\n     \r\n\r\n  const createList = () => {\r\n      \r\n      console.log('create');\r\n      \r\n      \r\n    const tocTarget = document.querySelector(\".toc.toc-2\");\r\n    const toc = document.createElement(\"ul\");\r\n    \r\n    \r\n    \r\n     headerList = [...document.querySelectorAll(\"h2\")];\r\n\r\n\r\n    \r\n    headerList = headerList.slice(0, -3);\r\n    \r\n    headerList.forEach(()=>{\r\n        \r\n    })\r\n    \r\n    const filteredNodes = [document.querySelector(\".related_content_blog_container h2\")]\r\n    \r\n    headerList = headerList.filter((node)=> !filteredNodes.includes(node))\r\n    \r\n    \r\n   headerList.forEach((header,index) => {\r\n      const headerId = header.getAttribute(\"id\");\r\n      const headerText =\r\n        header.dataset.title && header.dataset.title !== \"\"\r\n          ? header.dataset.title\r\n          : header.textContent;\r\n          \r\n\r\n      const headerTocText = header.dataset.title;\r\n\r\n      const idFromText =\r\n        !headerId || headerId === \"\"\r\n          ? headerText\r\n              .toLowerCase()\r\n              .replace(\/[^\\w ]+\/g, \"\")\r\n              .replace(\/ +\/g, \"-\")\r\n          : headerId;\r\n          \r\n         \r\n\r\n      const newListItem = document.createElement(\"li\");\r\n      const newLink = document.createElement(\"a\");\r\n      newLink.setAttribute(\"href\", \"#\" + idFromText);\r\n      newLink.textContent = LINKS[headerText] || headerText;\r\n\r\n      newLink.addEventListener(\"click\", (e) => {\r\n          \r\n        e.preventDefault();\r\n        const y =\r\n          header.getBoundingClientRect().top +\r\n          window.pageYOffset -\r\n          PADDING_BOTTOM_FOR_SCROLL -\r\n          OFFSET;\r\n          ticking = true; \r\n        window.scrollTo({ top: y, behavior: \"smooth\" });\r\n        \r\n        setTimeout(()=>{\r\n            ticking = false;\r\n        },500);\r\n        \r\n      });\r\n      \r\n\r\n      newListItem.appendChild(newLink);\r\n    toc.appendChild(newListItem);\r\n    \r\n    \r\n    });\r\n    tocTarget.appendChild(toc);\r\n    allLinks = Array.from(document.querySelector(\".toc.toc-2\").querySelectorAll(\"ul li\"));\r\n  };\r\n\r\n  const setContainerHeight = () => {\r\n    \/*const windowHeight = window.innerHeight;\r\n    const tocContainer = document.querySelector(\".ddcv\");\r\n\r\n    tocContainer.style.maxHeight = \"calc(100vh - 420px)\";\r\n    tocContainer.style.minHeight = \"200px\";*\/\r\n    \r\n    const tocContainer = document.querySelector(\".author-block\")\r\n    tocContainer.style.maxHeight = \"calc(100vh - 180px)\"\r\n  };\r\n\r\n\r\n  const checkScroll = () => {\r\n      const windowHeight = window.innerHeight;\r\n      const scrollTop = window.scrollY || document.documentElement.scrollTop;\r\n\r\n      let selectedHeaderIndex = -1;\r\n      \r\n      \/\/console.log('headerList', headerList)\r\n      headerList.forEach((header, index) => {\r\n        \r\n  const posTop = header.getBoundingClientRect().top;\r\n       \r\n\r\n const isInViewport = posTop + elem.clientHeight <= window.innerHeight ;\r\n \r\n \r\n\r\n \r\n if(isInViewport){\r\n      selectedHeaderIndex = index;\r\n }\r\n\r\n      });\r\n      \r\n\r\n\r\n        allLinks.forEach((link, i) => {\r\n            if(i === selectedHeaderIndex){\r\n              link.classList.remove(\"pre-active\");  \r\n              link.classList.add(\"active\");\r\n            }\r\n            if(i < selectedHeaderIndex){\r\n              link.classList.add(\"pre-active\"); \r\n               link.classList.remove(\"active\");\r\n            }\r\n             if(i > selectedHeaderIndex){\r\n            link.classList.remove(\"pre-active\");\r\n            link.classList.remove(\"active\");\r\n            }\r\n            \r\n            \r\n            \r\n        });\r\n        \r\n\r\n\r\n  };\r\n\r\n  const loadAllImages = () => {\r\n    const images = document.getElementsByTagName(\"img\");\r\n\r\n    for (let i = 0; i < images.length; i++) {\r\n      const img = images[i];\r\n      const src = img.getAttribute(\"data-src\") || img.src;\r\n      img.src = src;\r\n    }\r\n  };\r\n\r\n  loadAllImages();\r\n  \r\n  \r\n  \r\n\r\n\r\n  document.addEventListener(\"DOMContentLoaded\", () => {\r\n      \r\n      \r\n     setTimeout(()=>{\r\n           createList();\r\n    setContainerHeight();\r\n  \r\n    \r\n    document.addEventListener(\"scroll\", (event) => {\r\n  if (!ticking) {\r\n    checkScroll();\r\n  }\r\n});\r\n    \r\n    \r\n},300) \r\n\r\n    \r\n  });\r\n  \r\n<\/script>\r\n\r\n\r\n<style>\r\n.table-content-container .elementor-widget-wrap {\r\n    margin: 0 !important;\r\n    padding: 0 !important;\r\n}\r\n\r\n@media (max-width: 1279px) {\r\n    .table-content-container {\r\n   display: none !important;\r\n}\r\n}\r\n\r\n\r\n\r\n.toc-wrapper {\r\n    display: flex;\r\n    flex-direction: column;\r\n    row-gap: 30px;\r\n    font-family: \"Karla\";\r\n    box-sizing: border-box;\r\n    \/*height: 100%;*\/\r\n    \r\n    flex: 1;\r\n}\r\n.ddcv {\r\n    \r\n    flex-basis:100%;\r\n    flex-grow: 1;\r\n    flex-shrink: 1;\r\n    overflow-y: auto;\r\n}\r\n\r\n\r\n.toc-wrapper {\r\n    overflow-y: auto;\r\n    flex-shrink: 1;\r\n    flex-basis:100%;\r\n    flex-grow: 1;\r\n}\r\n\r\n.toc-wrapper::-webkit-scrollbar, .ddcv::-webkit-scrollbar {\r\n    position: absolute !important;\r\n    width: 4px !important;\r\n    background-color: #F5F5F7 !important;\r\n}\r\n\r\n.toc-wrapper::-webkit-scrollbar-thumb, .ddcv::-webkit-scrollbar-thumb {\r\n    position: absolute !important;\r\n    background-color: #999999 !important;\r\n    border-radius: 4px !important;\r\n}\r\n\r\n\/*.toc-wrapper .toc {\r\n    scrollbar-width: 4px !important;\r\n    scrollbar-color: auto !important;\r\n}*\/\r\n\r\n\r\nh4.toc-title {\r\n    margin: 0;\r\n    font-family: Karla;\r\n    font-size: 22px;\r\n    line-height: 28px;\r\n    font-weight: 700;\r\n}\r\n\r\n@media screen and (max-width: 1279px) {\r\n    .ddcv {\r\n        margin-top: 0px;\r\n        position: absolute;\r\n        top: 0px;\r\n        left: 50%;\r\n        transform: translate(50%, 0);\r\n    }\r\n}\r\n\r\n@media screen and (max-width: 767px) {\r\n    .ddcv {\r\n        display: none;\r\n    }\r\n}\r\n\r\n.toc ul {\r\n  list-style: none;\r\n  font-family: \"Karla\";\r\n  font-size: 16px;\r\n  line-height: 22px;\r\n  padding: 0px;\r\n  border-left: 1px solid #717171;\r\n}\r\n\r\n.toc li {\r\n  margin-left: -1px;\r\n  margin-top: 0;\r\n  padding: 16px 16px 16px 20px;\r\n  font-size: 18px;\r\n  line-height: 22px;\r\n  color: #717171;\r\n  border-left: 2px solid transparent;\r\n}\r\n\r\n.toc ul li a {\r\n    display: block;\r\n     width: 100%;\r\n    color: inherit;\r\n    text-decoration: none !important;\r\n}\r\n\r\n.toc ul .active {\r\n    color: #2E2E2E;\r\n    border-left: 2px solid #C63031;\r\n}\r\n\r\n.toc ul .pre-active {\r\n    border-left: 2px solid #C63031;\r\n}\r\n<\/style>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-9277c81 e-con-full .cta-short-wrapper e-flex e-con e-child\" data-id=\"9277c81\" data-element_type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-b51f48f elementor-widget-tablet__width-inherit elementor-widget-mobile__width-inherit elementor-widget elementor-widget-heading\" data-id=\"b51f48f\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">Build and improve your platform with Innowise<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e8c58f9 elementor-mobile-align-justify elementor-widget-mobile__width-inherit elementor-align-justify elementor-widget elementor-widget-button\" data-id=\"e8c58f9\" data-element_type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-button-wrapper\">\n\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"#contact-form\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">Let\u2019s talk<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-e5559d1 e-flex e-con-boxed e-con e-parent\" data-id=\"e5559d1\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-57fee06 elementor-widget elementor-widget-heading\" data-id=\"57fee06\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Related cases<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-ff569e9 e-con-full slider-overflow e-flex e-con e-child\" data-id=\"ff569e9\" data-element_type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-dfd15ae elementor-widget elementor-widget-shortcode\" data-id=\"dfd15ae\" data-element_type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\">\n        <div class=\"slider-overflow\">\n            <div class=\"swiper-related\">\n                <div class=\"swiper-wrapper\">\n        <div class=\"swiper-slide\">\n            <div class=\"swiper-into-e1\">\n                <div class=\"swiper-slide__inner-container\">\n                    <div class=\"block-div-img-rel\">\n                        <a href=\"https:\/\/innowise.com\/pt\/case\/ios-and-vr-meditation-app-development\/\" aria-label=\"block_194217\">\n                            <img decoding=\"async\" class=\"slide__img-rel\" \n                             src=\"https:\/\/innowise.com\/wp-content\/uploads\/2026\/03\/iOS-and-VR-meditation-app-suite-for-Grozio-Planeta-UAB-2.png\" alt=\"iOS and VR meditation app suite for Gro\u017eio Planeta UAB\">\n                        <\/a>\n                    <\/div>\n                    <div class=\"border-slide-rel\">\n                        <div class=\"swip-title-rel-qe mb-10\" style=\"\">\n                            <a href=\"https:\/\/innowise.com\/pt\/case\/ios-and-vr-meditation-app-development\/\" aria-label=\"iOS and VR meditation app suite for Gro\u017eio Planeta UAB\" >iOS and VR meditation app suite for Gro\u017eio Planeta UAB<\/a>\n                        <\/div>\n                        <div class=\"swip-array-rel\">\n                            <a href=\"\/pt\/cases\/aws\/\">AWS<\/a><a href=\"\/pt\/cases\/django\/\">Django<\/a><a href=\"\/pt\/cases\/saude\/\">Healthcare<\/a><a href=\"\/pt\/cases\/mobile-development\/\">Mobile development<\/a><a href=\"\/pt\/cases\/php\/\">PHP<\/a><a href=\"\/pt\/cases\/python\/\">Python<\/a>\n                        <\/div>\n                        <div class=\"slide__button-wrapper_mob\">\n                            <span class=\"slide__button-text_mob\">Read more<\/span>\n                            <img decoding=\"async\" class=\"slide__button-img_mob\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2021\/12\/arrow-more.svg\" alt=\"\">\n                        <\/div>\n                    <\/div>\n                <\/div>\n            <\/div>\n            <div class=\"slide__button-wrapper\">\n                <a href=\"https:\/\/innowise.com\/pt\/case\/ios-and-vr-meditation-app-development\/\" aria-label=\"Read more about iOS and VR meditation app suite for Gro\u017eio Planeta UAB\">\n                    <div class=\"arrow-btn3-rel\">\n                        <svg class=\"arrow-btn__svg\"\n                             width=\"110\"\n                             height=\"18\"\n                             viewBox=\"0 0 110 18\"\n                             fill=\"none\"\n                             xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                            <path d=\"M9 1L17 8.99999L9 17\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                            <path d=\"M0 9.00018L17 9.00018\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                            <path d=\"M99 1L107 8.99999L99 17\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                            <path d=\"M90 9.00018L107 9.00018\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                        <\/svg>\n                    <\/div>\n                <\/a>\n            <\/div>\n        <\/div>\n        <div class=\"swiper-slide\">\n            <div class=\"swiper-into-e1\">\n                <div class=\"swiper-slide__inner-container\">\n                    <div class=\"block-div-img-rel\">\n                        <a href=\"https:\/\/innowise.com\/pt\/case\/custom-website-development-for-airline\/\" aria-label=\"block_193018\">\n                            <img decoding=\"async\" class=\"slide__img-rel\" \n                             src=\"https:\/\/innowise.com\/wp-content\/uploads\/2026\/02\/airplane-in-the-sky.jpg\" alt=\"Multi-page charter airline website for a startup air carrier\">\n                    <div class=\"cases-post__thumbnail_opencase_img\">\n                        <div>\n                            <img decoding=\"async\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2026\/03\/Flyyo-logo.png\" alt=\"\">\n                        <\/div>\n                    <\/div>\n                \n                        <\/a>\n                    <\/div>\n                    <div class=\"border-slide-rel\">\n                        <div class=\"swip-title-rel-qe mb-10\" style=\"\">\n                            <a href=\"https:\/\/innowise.com\/pt\/case\/custom-website-development-for-airline\/\" aria-label=\"Multi-page charter airline website for a startup air carrier\" >Multi-page charter airline website for a startup air carrier<\/a>\n                        <\/div>\n                        <div class=\"swip-array-rel\">\n                            <a href=\"\/pt\/cases\/php\/\">PHP<\/a><a href=\"\/pt\/cases\/transporte\/\">Transportation<\/a><a href=\"\/pt\/cases\/design\/\">UI\/UX design<\/a><a href=\"\/pt\/cases\/desenvolvimento-web\/\">Web development<\/a><a href=\"\/pt\/cases\/website\/\">Website<\/a>\n                        <\/div>\n                        <div class=\"slide__button-wrapper_mob\">\n                            <span class=\"slide__button-text_mob\">Read more<\/span>\n                            <img decoding=\"async\" class=\"slide__button-img_mob\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2021\/12\/arrow-more.svg\" alt=\"\">\n                        <\/div>\n                    <\/div>\n                <\/div>\n            <\/div>\n            <div class=\"slide__button-wrapper\">\n                <a href=\"https:\/\/innowise.com\/pt\/case\/custom-website-development-for-airline\/\" aria-label=\"Read more about Multi-page charter airline website for a startup air carrier\">\n                    <div class=\"arrow-btn3-rel\">\n                        <svg class=\"arrow-btn__svg\"\n                             width=\"110\"\n                             height=\"18\"\n                             viewBox=\"0 0 110 18\"\n                             fill=\"none\"\n                             xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                            <path d=\"M9 1L17 8.99999L9 17\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                            <path d=\"M0 9.00018L17 9.00018\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                            <path d=\"M99 1L107 8.99999L99 17\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                            <path d=\"M90 9.00018L107 9.00018\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                        <\/svg>\n                    <\/div>\n                <\/a>\n            <\/div>\n        <\/div>\n        <div class=\"swiper-slide\">\n            <div class=\"swiper-into-e1\">\n                <div class=\"swiper-slide__inner-container\">\n                    <div class=\"block-div-img-rel\">\n                        <a href=\"https:\/\/innowise.com\/pt\/case\/fast-website-delivery\/\" aria-label=\"block_192516\">\n                            <img decoding=\"async\" class=\"slide__img-rel\" \n                             src=\"https:\/\/innowise.com\/wp-content\/uploads\/2026\/02\/image-teaser-3.png\" alt=\"Fast Website Delivery for Family Businesses\">\n                    <div class=\"cases-post__thumbnail_opencase_img\">\n                        <div>\n                            <img decoding=\"async\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2026\/02\/Logo-symbolname-green-1.svg\" alt=\"\">\n                        <\/div>\n                    <\/div>\n                \n                        <\/a>\n                    <\/div>\n                    <div class=\"border-slide-rel\">\n                        <div class=\"swip-title-rel-qe mb-10\" style=\"\">\n                            <a href=\"https:\/\/innowise.com\/pt\/case\/fast-website-delivery\/\" aria-label=\"Fast Website Delivery for Family Businesses\" >Fast Website Delivery for Family Businesses<\/a>\n                        <\/div>\n                        <div class=\"swip-array-rel\">\n                            <a href=\"\/pt\/cases\/horeca\/\">HoReCa<\/a><a href=\"\/pt\/cases\/construcao\/\">Construction<\/a><a href=\"\/pt\/cases\/cms\/\">CMS website development<\/a><a href=\"\/pt\/cases\/js\/\">JavaScript<\/a><a href=\"\/pt\/cases\/php\/\">PHP<\/a><a href=\"\/pt\/cases\/website\/\">Website<\/a><a href=\"\/pt\/cases\/wordpress\/\">WordPress<\/a>\n                        <\/div>\n                        <div class=\"slide__button-wrapper_mob\">\n                            <span class=\"slide__button-text_mob\">Read more<\/span>\n                            <img decoding=\"async\" class=\"slide__button-img_mob\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2021\/12\/arrow-more.svg\" alt=\"\">\n                        <\/div>\n                    <\/div>\n                <\/div>\n            <\/div>\n            <div class=\"slide__button-wrapper\">\n                <a href=\"https:\/\/innowise.com\/pt\/case\/fast-website-delivery\/\" aria-label=\"Read more about Fast Website Delivery for Family Businesses\">\n                    <div class=\"arrow-btn3-rel\">\n                        <svg class=\"arrow-btn__svg\"\n                             width=\"110\"\n                             height=\"18\"\n                             viewBox=\"0 0 110 18\"\n                             fill=\"none\"\n                             xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                            <path d=\"M9 1L17 8.99999L9 17\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                            <path d=\"M0 9.00018L17 9.00018\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                            <path d=\"M99 1L107 8.99999L99 17\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                            <path d=\"M90 9.00018L107 9.00018\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                        <\/svg>\n                    <\/div>\n                <\/a>\n            <\/div>\n        <\/div>\n        <div class=\"swiper-slide\">\n            <div class=\"swiper-into-e1\">\n                <div class=\"swiper-slide__inner-container\">\n                    <div class=\"block-div-img-rel\">\n                        <a href=\"https:\/\/innowise.com\/pt\/case\/iot-agriculture-solutions\/\" aria-label=\"block_97784\">\n                            <img decoding=\"async\" class=\"slide__img-rel\" \n                             src=\"https:\/\/innowise.com\/wp-content\/uploads\/2023\/01\/Plaant.png\" alt=\"Smart home garden to grow plants with no soil\">\n                    <div class=\"cases-post__thumbnail_opencase_img\">\n                        <div>\n                            <img decoding=\"async\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2023\/01\/propplaant.svg\" alt=\"\">\n                        <\/div>\n                    <\/div>\n                \n                        <\/a>\n                    <\/div>\n                    <div class=\"border-slide-rel\">\n                        <div class=\"swip-title-rel-qe mb-10\" style=\"\">\n                            <a href=\"https:\/\/innowise.com\/pt\/case\/iot-agriculture-solutions\/\" aria-label=\"Smart home garden to grow plants with no soil\" >Smart home garden to grow plants with no soil<\/a>\n                        <\/div>\n                        <div class=\"swip-array-rel\">\n                            <a href=\"\/pt\/cases\/android\/\">Android<\/a><a href=\"\/pt\/cases\/it\/\">Information technology<\/a><a href=\"\/pt\/cases\/ios\/\">iOS<\/a><a href=\"\/pt\/cases\/iot\/\">IoT<\/a><a href=\"\/pt\/cases\/js\/\">JavaScript<\/a><a href=\"\/pt\/cases\/laravel\/\">Laravel<\/a><a href=\"\/pt\/cases\/php\/\">PHP<\/a>\n                        <\/div>\n                        <div class=\"slide__button-wrapper_mob\">\n                            <span class=\"slide__button-text_mob\">Read more<\/span>\n                            <img decoding=\"async\" class=\"slide__button-img_mob\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2021\/12\/arrow-more.svg\" alt=\"\">\n                        <\/div>\n                    <\/div>\n                <\/div>\n            <\/div>\n            <div class=\"slide__button-wrapper\">\n                <a href=\"https:\/\/innowise.com\/pt\/case\/iot-agriculture-solutions\/\" aria-label=\"Read more about Smart home garden to grow plants with no soil\">\n                    <div class=\"arrow-btn3-rel\">\n                        <svg class=\"arrow-btn__svg\"\n                             width=\"110\"\n                             height=\"18\"\n                             viewBox=\"0 0 110 18\"\n                             fill=\"none\"\n                             xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                            <path d=\"M9 1L17 8.99999L9 17\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                            <path d=\"M0 9.00018L17 9.00018\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                            <path d=\"M99 1L107 8.99999L99 17\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                            <path d=\"M90 9.00018L107 9.00018\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                        <\/svg>\n                    <\/div>\n                <\/a>\n            <\/div>\n        <\/div>\n        <div class=\"swiper-slide\">\n            <div class=\"swiper-into-e1\">\n                <div class=\"swiper-slide__inner-container\">\n                    <div class=\"block-div-img-rel\">\n                        <a href=\"https:\/\/innowise.com\/pt\/case\/thermal-image-analysis-software\/\" aria-label=\"block_170410\">\n                            <img decoding=\"async\" class=\"slide__img-rel\" \n                             src=\"https:\/\/innowise.com\/wp-content\/uploads\/2024\/08\/Thermal-analysis-software-upgrade_-40-faster-data-processing_small-cover-1.png\" alt=\"Thermal analysis software upgrade\">\n                        <\/a>\n                    <\/div>\n                    <div class=\"border-slide-rel\">\n                        <div class=\"swip-title-rel-qe mb-10\" style=\"\">\n                            <a href=\"https:\/\/innowise.com\/pt\/case\/thermal-image-analysis-software\/\" aria-label=\"Thermal analysis software upgrade\" >Thermal analysis software upgrade<\/a>\n                        <\/div>\n                        <div class=\"swip-array-rel\">\n                            <a href=\"\/pt\/cases\/design-3d\/\">3D design<\/a><a href=\"\/pt\/cases\/desenvolvimento-backend\/\">Back-end development<\/a><a href=\"\/pt\/cases\/construcao\/\">Construction<\/a><a href=\"\/pt\/cases\/desenvolvimento-front-end\/\">Front-end development<\/a><a href=\"\/pt\/cases\/software-enhancement\/\">Software enhancement<\/a><a href=\"\/pt\/cases\/web\/\">Web<\/a>\n                        <\/div>\n                        <div class=\"slide__button-wrapper_mob\">\n                            <span class=\"slide__button-text_mob\">Read more<\/span>\n                            <img decoding=\"async\" class=\"slide__button-img_mob\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2021\/12\/arrow-more.svg\" alt=\"\">\n                        <\/div>\n                    <\/div>\n                <\/div>\n            <\/div>\n            <div class=\"slide__button-wrapper\">\n                <a href=\"https:\/\/innowise.com\/pt\/case\/thermal-image-analysis-software\/\" aria-label=\"Read more about Thermal analysis software upgrade\">\n                    <div class=\"arrow-btn3-rel\">\n                        <svg class=\"arrow-btn__svg\"\n                             width=\"110\"\n                             height=\"18\"\n                             viewBox=\"0 0 110 18\"\n                             fill=\"none\"\n                             xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                            <path d=\"M9 1L17 8.99999L9 17\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                            <path d=\"M0 9.00018L17 9.00018\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                            <path d=\"M99 1L107 8.99999L99 17\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                            <path d=\"M90 9.00018L107 9.00018\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                        <\/svg>\n                    <\/div>\n                <\/a>\n            <\/div>\n        <\/div>\n        <div class=\"swiper-slide\">\n            <div class=\"swiper-into-e1\">\n                <div class=\"swiper-slide__inner-container\">\n                    <div class=\"block-div-img-rel\">\n                        <a href=\"https:\/\/innowise.com\/pt\/case\/it-solutions-for-travel-industry\/\" aria-label=\"block_160038\">\n                            <img decoding=\"async\" class=\"slide__img-rel\" \n                             src=\"https:\/\/innowise.com\/wp-content\/uploads\/2024\/05\/Revamping-tour-operator-software-small-cover.png\" alt=\"Developing tour operator software\">\n                        <\/a>\n                    <\/div>\n                    <div class=\"border-slide-rel\">\n                        <div class=\"swip-title-rel-qe mb-10\" style=\"\">\n                            <a href=\"https:\/\/innowise.com\/pt\/case\/it-solutions-for-travel-industry\/\" aria-label=\"Developing tour operator software\" >Developing tour operator software<\/a>\n                        <\/div>\n                        <div class=\"swip-array-rel\">\n                            <a href=\"\/pt\/cases\/desenvolvimento-backend\/\">Back-end development<\/a><a href=\"\/pt\/cases\/dart\/\">Dart<\/a><a href=\"\/pt\/cases\/desenvolvimento-front-end\/\">Front-end development<\/a><a href=\"\/pt\/cases\/laravel\/\">Laravel<\/a><a href=\"\/pt\/cases\/mobile-development\/\">Mobile development<\/a><a href=\"\/pt\/cases\/php\/\">PHP<\/a><a href=\"\/pt\/cases\/travel\/\">Travel<\/a>\n                        <\/div>\n                        <div class=\"slide__button-wrapper_mob\">\n                            <span class=\"slide__button-text_mob\">Read more<\/span>\n                            <img decoding=\"async\" class=\"slide__button-img_mob\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2021\/12\/arrow-more.svg\" alt=\"\">\n                        <\/div>\n                    <\/div>\n                <\/div>\n            <\/div>\n            <div class=\"slide__button-wrapper\">\n                <a href=\"https:\/\/innowise.com\/pt\/case\/it-solutions-for-travel-industry\/\" aria-label=\"Read more about Developing tour operator software\">\n                    <div class=\"arrow-btn3-rel\">\n                        <svg class=\"arrow-btn__svg\"\n                             width=\"110\"\n                             height=\"18\"\n                             viewBox=\"0 0 110 18\"\n                             fill=\"none\"\n                             xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                            <path d=\"M9 1L17 8.99999L9 17\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                            <path d=\"M0 9.00018L17 9.00018\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                            <path d=\"M99 1L107 8.99999L99 17\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                            <path d=\"M90 9.00018L107 9.00018\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                        <\/svg>\n                    <\/div>\n                <\/a>\n            <\/div>\n        <\/div>\n        <div class=\"swiper-slide\">\n            <div class=\"swiper-into-e1\">\n                <div class=\"swiper-slide__inner-container\">\n                    <div class=\"block-div-img-rel\">\n                        <a href=\"https:\/\/innowise.com\/pt\/case\/investment-software-development\/\" aria-label=\"block_110804\">\n                            <img decoding=\"async\" class=\"slide__img-rel\" \n                             src=\"https:\/\/innowise.com\/wp-content\/uploads\/2023\/04\/Gokhman.png\" alt=\"Advanced modules for investment analytics software\">\n                        <\/a>\n                    <\/div>\n                    <div class=\"border-slide-rel\">\n                        <div class=\"swip-title-rel-qe mb-10\" style=\"\">\n                            <a href=\"https:\/\/innowise.com\/pt\/case\/investment-software-development\/\" aria-label=\"Advanced modules for investment analytics software\" >Advanced modules for investment analytics software<\/a>\n                        <\/div>\n                        <div class=\"swip-array-rel\">\n                            <a href=\"\/pt\/cases\/api\/\">API<\/a><a href=\"\/pt\/cases\/analise-dados\/\">Data analytics<\/a><a href=\"\/pt\/cases\/fintech\/\">FinTech<\/a><a href=\"\/pt\/cases\/js\/\">JavaScript<\/a><a href=\"\/pt\/cases\/php\/\">PHP<\/a><a href=\"\/pt\/cases\/software-enhancement\/\">Software enhancement<\/a><a href=\"\/pt\/cases\/web\/\">Web<\/a>\n                        <\/div>\n                        <div class=\"slide__button-wrapper_mob\">\n                            <span class=\"slide__button-text_mob\">Read more<\/span>\n                            <img decoding=\"async\" class=\"slide__button-img_mob\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2021\/12\/arrow-more.svg\" alt=\"\">\n                        <\/div>\n                    <\/div>\n                <\/div>\n            <\/div>\n            <div class=\"slide__button-wrapper\">\n                <a href=\"https:\/\/innowise.com\/pt\/case\/investment-software-development\/\" aria-label=\"Read more about Advanced modules for investment analytics software\">\n                    <div class=\"arrow-btn3-rel\">\n                        <svg class=\"arrow-btn__svg\"\n                             width=\"110\"\n                             height=\"18\"\n                             viewBox=\"0 0 110 18\"\n                             fill=\"none\"\n                             xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                            <path d=\"M9 1L17 8.99999L9 17\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                            <path d=\"M0 9.00018L17 9.00018\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                            <path d=\"M99 1L107 8.99999L99 17\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                            <path d=\"M90 9.00018L107 9.00018\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                        <\/svg>\n                    <\/div>\n                <\/a>\n            <\/div>\n        <\/div>\n        <div class=\"swiper-slide\">\n            <div class=\"swiper-into-e1\">\n                <div class=\"swiper-slide__inner-container\">\n                    <div class=\"block-div-img-rel\">\n                        <a href=\"https:\/\/innowise.com\/pt\/case\/enterprise-resource-planning-and-management-solution\/\" aria-label=\"block_96124\">\n                            <img decoding=\"async\" class=\"slide__img-rel\" \n                             src=\"https:\/\/innowise.com\/wp-content\/uploads\/2022\/12\/OneStop-tizer.jpg\" alt=\"Enterprise resources management system\">\n                        <\/a>\n                    <\/div>\n                    <div class=\"border-slide-rel\">\n                        <div class=\"swip-title-rel-qe mb-10\" style=\"\">\n                            <a href=\"https:\/\/innowise.com\/pt\/case\/enterprise-resource-planning-and-management-solution\/\" aria-label=\"Enterprise resources management system\" >Enterprise resources management system<\/a>\n                        <\/div>\n                        <div class=\"swip-array-rel\">\n                            <a href=\"\/pt\/cases\/angular\/\">Angular<\/a><a href=\"\/pt\/cases\/cloud\/\">Cloud<\/a><a href=\"\/pt\/cases\/construcao\/\">Construction<\/a><a href=\"\/pt\/cases\/empresas\/\">Enterprise<\/a><a href=\"\/pt\/cases\/erp\/\">ERP<\/a><a href=\"\/pt\/cases\/java\/\">Java<\/a><a href=\"\/pt\/cases\/logistica\/\">Logistics<\/a>\n                        <\/div>\n                        <div class=\"slide__button-wrapper_mob\">\n                            <span class=\"slide__button-text_mob\">Read more<\/span>\n                            <img decoding=\"async\" class=\"slide__button-img_mob\" src=\"https:\/\/innowise.com\/wp-content\/uploads\/2021\/12\/arrow-more.svg\" alt=\"\">\n                        <\/div>\n                    <\/div>\n                <\/div>\n            <\/div>\n            <div class=\"slide__button-wrapper\">\n                <a href=\"https:\/\/innowise.com\/pt\/case\/enterprise-resource-planning-and-management-solution\/\" aria-label=\"Read more about Enterprise resources management system\">\n                    <div class=\"arrow-btn3-rel\">\n                        <svg class=\"arrow-btn__svg\"\n                             width=\"110\"\n                             height=\"18\"\n                             viewBox=\"0 0 110 18\"\n                             fill=\"none\"\n                             xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                            <path d=\"M9 1L17 8.99999L9 17\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                            <path d=\"M0 9.00018L17 9.00018\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                            <path d=\"M99 1L107 8.99999L99 17\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                            <path d=\"M90 9.00018L107 9.00018\"\n                                  stroke=\"#C63031\"\n                                  stroke-width=\"2\"\/>\n                        <\/svg>\n                    <\/div>\n                <\/a>\n            <\/div>\n        <\/div>\n                <\/div>\n                \n                <div class=\"swiper-related__navigation\">\n                    <button class=\"swiper-related__navigation-btn\">\n                        <svg width=\"25\" height=\"24\" viewBox=\"0 0 25 24\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                            <g>\n                                <path d=\"M12 4L4 12L12 20\" stroke=\"#2E2E2E\" stroke-width=\"2\"\/>\n                                <path d=\"M21 12.0002L4 12.0002\" stroke=\"#2E2E2E\" stroke-width=\"2\"\/>\n                            <\/g>\n                        <\/svg>\n                    <\/button>\n                \n                    <button class=\"swiper-related__navigation-btn\">\n                        <svg width=\"25\" height=\"24\" viewBox=\"0 0 25 24\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                            <path d=\"M13 4L21 12L13 20\" stroke=\"#2E2E2E\" stroke-width=\"2\"\/>\n                            <path d=\"M4 12.0002L21 12.0002\" stroke=\"#2E2E2E\" stroke-width=\"2\"\/>\n                        <\/svg>\n                    <\/button>\n                <\/div>\n            <\/div>\n        <\/div>\n\n        <div class=\"cases-swiper-pagination\"><\/div>\n        \n        <script src=\"\/wp-content\/themes\/hello-elementor\/assets\/js\/slb-case.js\"><\/script>  \n        <link rel=\"stylesheet\" href=\"\/wp-content\/themes\/hello-elementor\/assets\/css\/case-slider.css\"><\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-6d14f2e e-flex e-con-boxed e-con e-parent\" data-id=\"6d14f2e\" data-element_type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-69cdb98 elementor-widget elementor-widget-shortcode\" data-id=\"69cdb98\" data-element_type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\">\n<div class=\"wpcf7 no-js\" id=\"wpcf7-f100240-o1\" lang=\"en-US\" dir=\"ltr\" data-wpcf7-id=\"100240\">\n<div class=\"screen-reader-response\"><p role=\"status\" aria-live=\"polite\" aria-atomic=\"true\"><\/p> <ul><\/ul><\/div>\n<form action=\"\/pt\/wp-json\/wp\/v2\/case\/195705#wpcf7-f100240-o1\" method=\"post\" class=\"wpcf7-form init\" aria-label=\"Contact form\" enctype=\"multipart\/form-data\" novalidate=\"novalidate\" data-status=\"init\">\n<fieldset class=\"hidden-fields-container\"><input type=\"hidden\" name=\"_wpcf7\" value=\"100240\" \/><input type=\"hidden\" name=\"_wpcf7_version\" value=\"6.1\" \/><input type=\"hidden\" name=\"_wpcf7_locale\" value=\"en_US\" \/><input type=\"hidden\" name=\"_wpcf7_unit_tag\" value=\"wpcf7-f100240-o1\" \/><input type=\"hidden\" name=\"_wpcf7_container_post\" value=\"0\" \/><input type=\"hidden\" name=\"_wpcf7_posted_data_hash\" value=\"\" \/><input type=\"hidden\" name=\"_wpcf7_recaptcha_response\" value=\"\" \/>\n<\/fieldset>\n<style>\n.mailToContact br:nth-child(2){\ndisplay:none;\n}\n#form-templates .contact__info {\n  background-color: #f4f4f4;\n  padding: 70px 44px 70px 50px;\n  position: relative;\n  max-width: 540px;\n  width: 100%;\nborder: 1px solid #AEB1B7;\n}\n\n#form-templates .contact__info-background {\n  z-index: -1;\n  position: absolute;\n  top: 20px;\n  left: 20px;\n  width: 100%;\n  height: 100%;\n  border: 1px dashed #ef4557;\n}\n\n\n#form-templates .new-container{\ndisplay: flex;\njustify-content: space-between;\nflex-wrap: wrap;\n}\n\n\n#form-templates{\npadding: 100px 15px 100px 15px;        \n}\n\n#form-templates .contact__info-heading {\n  font-family: 'Sora' !important;\n  font-style: normal !important;\n  font-weight: 400 !important;\n  font-size: 36px !important;\n  line-height: 46px !important;\n  color: #2E2E2E !important;\n   margin-bottom: 60px !important;\n\n}\n\n\n#form-templates .message label{\ncolor: #585858 !important;   \n}\n\n.elementor-widget-container.form-template h2,.elementor-widget-container.form-template h1{\n font-size: 60px !important;\n  line-height: 70px !important;\n  font-family: \"Sora\", Sans-serif;\n  font-weight: 400;\n  margin: 0;  \n  margin-bottom: 20px;\n}\n\n\n\n\n.elementor-widget-container.form-template p{\n  font-family: \"Karla\", Sans-serif;\n  font-size: 22px;\n  font-weight: 400;\n  line-height: 28px;\n  color: var( --e-global-color-primary );\n  max-width: 700px;\n  margin: 0; \n  margin-bottom: 40px;\n} \n  \n\n\n.new-container #spinner{\nwidth: 50%;\nmax-width: 700px;\n}\n\n\n#form-templates .new-container #spinner div.contact-us__wrapper:nth-child(6){\ngap:30px; \n    \n}\n\n\n#form-templates .contact__info-heading {\n  margin-bottom: 67px;\n  font-size: 36px;\n  font-family: karla;\n  color:  #2E2E2E;\n\n  line-height: 49px;\n}\n\n#form-templates .contact__info-steps {\n  display: flex;\n  flex-direction: column;\n  max-width: 425x;\n  row-gap: 20px;\n  border-left: 1px solid #2e2e2e;\n}\n\n#form-templates .contact__info-block {\n  position: relative;\n  padding-left: 45px;\n}\n\n#form-templates .contact__info-block:last-child {\n  box-shadow: -1px 0 0 1px #f4f4f4;\n}\n\n#form-templates .contact__info-step {\n  position: absolute;\n  border: 1px solid #2e2e2e;\n  width: 40px;\n  height: 40px;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  border-radius: 20px;\n  left: -20px;\n  top: -8px;\n  background-color: #F4F4F4;\n  color:  #2E2E2E;\n\nfont-family: Karla;\nfont-weight: 700;\nfont-size: 18px;\nline-height: 28px;\n\n}\n\n.elementor-widget-global .contact__info-step {\n        color:  #2E2E2E;\n}\n\n#form-templates .contact__info-text {\n  margin: 0;\n  font-size: 16px;\n  line-height: 26px;\n  color: #2E2E2E;\n  font-family: karla;\n\n  width: 100%;\n}\n\n\n#form-templates .contact-us__send{\nflex-shrink: 0;\nmargin-top:0;\n}\n\n\n\n@media screen and (max-width: 1279px) {\n    .new-container #spinner{\n        width: 100%;\n        max-width:100%;\n        margin-bottom:40px;\n    }\n    \n\n    .new-container .contact__info {\n        max-width: 700px !important;\n    }\n    \n}\n\n\n@media screen and (max-width: 1279px) {\n#form-templates{\npadding: 60px 15px 70px 15px;     \n}\n}\n\n\n\n@media screen and (max-width: 767px) {\n\n#form-templates .new-container #spinner div.contact-us__wrapper:nth-child(6){\ngap:20px; \n \n}\n\n\n  #form-templates .contact__info {\n    padding: 20px 20px 40px 40px;\n    margin: 0 auto;\n  }\n\n\n#form-templates{\npadding: 40px 15px 50px 15px;  \n    \n}\n\n  \n   .new-container #spinner{\n       \n    margin-bottom:30px;   \n   }\n   \n   \n   .elementor-widget-container.form-template h2,.elementor-widget-container.form-template h1{\n   font-size: 32px !important;\n    line-height: 42px !important;    \n   }\n   \n   \n   .elementor-widget-container.form-template p{\n       \n    font-size: 16px;\n    line-height: 20px;  \n    margin-bottom: 30px;\n \n       \n   }\n   \n   #form-templates .contact__info-heading{\n   font-size: 24px !important;\n    line-height: 49px !important;    \n       \n   }\n   \n\n.mailToContact{\nmargin-top: 10px !important;        \n}\n\n   \n\n  #form-templates .contact__info-heading {\n    font-size: 24px;\n    margin-bottom: 37px;\n  }\n\n  #form-templates .contact__info-background {\n    top: 10px;\n    left: 10px;\n  }\n\n  #form-templates .contact__info-text {\n    font-size: 12px;\n    line-height: 20px;\n  }\n  \n  \n  #form-templates .contact__info-heading {\n   margin-bottom: 35px !important;\n\n}\n\n}\n\n@media (max-width: 767px) {\n    .mailToContact {\n        max-width: 100%;\n    }\n}\n<\/style>\n\n<script>\nwindow.addEventListener('hashchange',function(e){if(window.history.pushState){window.history.pushState('','\/',window.location.pathname)}else{window.location.hash=''}})\n<\/script>\n\n\n<div id=\"form-templates\">\n<div class=\"elementor-widget-container form-template\">\n<a name=\"contact-form\"><\/a>\n<h2>Contact us<\/h2>\n<p><a id=\"calendlylink\" style=\"color: #c63031; border-bottom: 1px solid #c63031; padding: 0;\">Book a call<\/a> or fill out the form below and we\u2019ll get back to you once we\u2019ve processed your request.<\/p>\n<\/div>\n\n<div class=\"new-container\">\n\n\n<div class=\"contact-us__main\" id=\"spinner\" data-no-defer=\"1\">\n\n<div class=\"contact-us__wrapper\">\n\n<div class=\"name\">\n<label>Name<\/label>\n<span class=\"wpcf7-form-control-wrap\" data-name=\"field_name\"><input size=\"40\" maxlength=\"400\" class=\"wpcf7-form-control wpcf7-text wpcf7-validates-as-required contact-us__name\" id=\"contact-name\" aria-required=\"true\" aria-invalid=\"false\" placeholder=\"Name*\" value=\"\" type=\"text\" name=\"field_name\" \/><\/span>\n<\/div>\n\n<div class=\"company\">\n<label>Company<\/label>\n<span class=\"wpcf7-form-control-wrap\" data-name=\"company\"><input size=\"40\" maxlength=\"400\" class=\"wpcf7-form-control wpcf7-text wpcf7-validates-as-required contact-us__company\" id=\"contact-company\" aria-required=\"true\" aria-invalid=\"false\" placeholder=\"Company*\" value=\"\" type=\"text\" name=\"company\" \/><\/span>\n<\/div>\n\n<\/div>\n\n<div class=\"contact-us__wrapper\">\n\n<div class=\"email\">\n<label>Email<\/label>\n<span class=\"wpcf7-form-control-wrap\" data-name=\"email\"><input size=\"40\" maxlength=\"400\" class=\"wpcf7-form-control wpcf7-email wpcf7-validates-as-required wpcf7-text wpcf7-validates-as-email contact-us__email\" id=\"contact-email\" aria-required=\"true\" aria-invalid=\"false\" placeholder=\"Corporate email*\" value=\"\" type=\"email\" name=\"email\" \/><\/span>\n<\/div>\n\n<div class=\"phone\">\n<label>Phone<\/label>\n<span class=\"wpcf7-form-control-wrap\" data-name=\"tel\"><input size=\"40\" maxlength=\"400\" class=\"wpcf7-form-control wpcf7-tel wpcf7-validates-as-required wpcf7-text wpcf7-validates-as-tel contact-us__phone\" id=\"contact-phone\" aria-required=\"true\" aria-invalid=\"false\" placeholder=\"Phone*\" value=\"\" type=\"tel\" name=\"tel\" \/><\/span>\n<\/div>\n\n<\/div>\n<div class=\"contact-us__wrapper subj\">\n<span class=\"wpcf7-form-control-wrap\" data-name=\"your-recipient\"><select class=\"wpcf7-form-control wpcf7-select\" id=\"form-field-subj_js\" aria-invalid=\"false\" name=\"your-recipient\"><option value=\"\">Subject*<\/option><option value=\"IT staff augmentation\">IT staff augmentation<\/option><option value=\"Turnkey product development\">Turnkey product development<\/option><option value=\"Support and enhancement\">Support and enhancement<\/option><option value=\"Careers\">Careers<\/option><option value=\"Other\">Other<\/option><\/select><\/span>\n\n<span class=\"wpcf7-form-control-wrap\" data-name=\"form-field-budget_js\"><select class=\"wpcf7-form-control wpcf7-select\" id=\"form-field-budget_js\" aria-invalid=\"false\" name=\"form-field-budget_js\"><option value=\"\">Project budget<\/option><option value=\"Under $15K\">Under $15K<\/option><option value=\"$15K-$30K\">$15K-$30K<\/option><option value=\"$30K-$100K\">$30K-$100K<\/option><option value=\"$100K-$250K\">$100K-$250K<\/option><option value=\"$250K-$500K\">$250K-$500K<\/option><option value=\"More than $500K\">More than $500K<\/option><\/select><\/span>\n\n<\/div>\n\n\n<div class=\"message\">\n<label>Message<\/label>\n<span class=\"wpcf7-form-control-wrap\" data-name=\"message\"><textarea cols=\"40\" rows=\"1\" maxlength=\"2000\" class=\"wpcf7-form-control wpcf7-textarea wpcf7-validates-as-required contact-us__message\" id=\"contact-message\" aria-required=\"true\" aria-invalid=\"false\" placeholder=\"Describe your needs in detail*\" name=\"message\"><\/textarea><\/span>\n<\/div>\n\n<div class=\"atvoice-wrap\">\n\n<div class=\"voice-wrap\">\n<span id=\"voice-mut\" class=\"voicetext\">Send us a voice message<\/span>\n         <div class=\"qc_voice_audio_wrapper\">\n            <div class=\"qc_voice_audio_container\">\n                <div class=\"qc_voice_audio_upload_main\" id=\"qc_audio_main\">\n                    <a class=\"qc_audio_record_button\" id=\"qc_audio_record\" href=\"#\" aria-label=\"Record an audio message\">\n                        <span class=\"dashicons dashicons-microphone\"><\/span> \u00a0<\/a> \n                <\/div>\n\n                <div class=\"qc_voice_audio_recorder\" id=\"qc_audio_recorder\" style=\"display:none\">\n\n                <\/div>\n                <div class=\"qc_voice_audio_display\" id=\"qc_audio_display\"  style=\"display:none\">\n                    <audio id=\"qc-audio\" controls src=\"\"><\/audio>\n                    <span title=\"Remove and back to main upload screen.\" class=\"qc_audio_remove_button dashicons dashicons-trash\"><\/span>\n                <\/div>\n            <\/div>\n            <input type=\"hidden\" value=\"\" name=\"qcwpvoicemessage\" id=\"qc_audio_url\" \/>\n        <\/div>\n        \n<\/div>\n\n\n<div class=\"attach-wrap\">\n<span class=\"voicetext\">Attach documents<\/span>\n\n<div class='attachment'>\n\n<div class=\"downloaded\">\n<span><\/span>\n<div class=\"deleteFile\"><\/div>\n<\/div>\n\n<div class=\"attachmentButton\" onclick=\"(function cl(e){if(e.target.nodeName == 'DIV'){e.target.parentNode.children[1].children[0].click(); }})(arguments[0]);\">\n\n<div class=\"innerText\">Upload file<\/div>\n<span class=\"wpcf7-form-control-wrap\" data-name=\"att-files\"><input size=\"40\" class=\"wpcf7-form-control wpcf7-file\" accept=\".jpg,.png,.jpeg,.pdf\" aria-invalid=\"false\" type=\"file\" name=\"att-files\" \/><\/span>\n\n<div class=\"tip\" onclick=\"event.stopPropagation()\">\n<p>You can attach 1 file up to 2MB. Valid file formats: pdf, jpg, jpeg, png.<\/p>\n<\/div>\n\n<\/div>\n\n<\/div>\n\n<\/div>\n\n\n\n<\/div>\n\n<div class=\"contact-us__wrapper\"> \n<p class=\"pp\">By clicking Send, you consent to Innowise processing your personal data per our<a href=\"\/privacy-notice\/\"> Privacy Policy <\/a>to provide you with relevant information. By submitting your phone number, you agree that we may contact you via voice calls, SMS, and messaging apps. Calling, message, and data rates may apply.<\/p>\n\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"scoring_point\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"utmCampaign\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"utmContent\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"utmMedium\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"utmSource\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"utmTerm\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"location\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"city\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"ip\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"Summ\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"gclid\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"rating\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"urlCompany\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"urlWithParams\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" value=\"\" type=\"hidden\" name=\"audioMessageLink\" \/>\n<input class=\"wpcf7-form-control wpcf7-submit has-spinner contact-us__send\" id=\"contact-send-button\" type=\"submit\" value=\"Send\" \/>\n<\/div>\n\n<div class='mailToContact'>You can also send us your request <\/br>to <a href=\"mailto:contact@innowise.com\">contact@innowise.com<\/a><\/div>\n\n<\/div>\n\n<div class=\"elementor-widget-container\" style=\"z-index:1;\">\n<div class=\"contact__info\">\n  <div class=\"contact__info-background\"><\/div>\n  <div class=\"contact__info-heading\">What happens next?<\/div>\n  <div class=\"contact__info-steps\">\n\n    <div class=\"contact__info-block\">\n      <div class=\"contact__info-step\">1<\/div>\n      <p class=\"contact__info-text\">Once we\u2019ve received and processed your request, we\u2019ll get back to you to detail your\n        project needs and sign an NDA to ensure confidentiality.<\/p>\n    <\/div>\n\n    <div class=\"contact__info-block\">\n      <div class=\"contact__info-step\">2<\/div>\n      <p class=\"contact__info-text\">After examining your wants, needs, and expectations, our team will devise a project\n        proposal with the scope of work, team size, time, and cost estimates.<\/p>\n    <\/div>\n\n    <div class=\"contact__info-block\">\n      <div class=\"contact__info-step\">3<\/div>\n      <p class=\"contact__info-text\">We\u2019ll arrange a meeting with you to discuss the offer and nail down the details.<\/p>\n    <\/div>\n\n    <div class=\"contact__info-block\">\n      <div class=\"contact__info-step\">4<\/div>\n      <p class=\"contact__info-text\">Finally, we\u2019ll sign a contract and start working on your project right away.<\/p>\n    <\/div>\n  <\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\n\n<\/div>\n\n<\/div><div class=\"wpcf7-response-output\" aria-hidden=\"true\"><\/div>\n<\/form>\n<\/div>\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"other_services_container\">[other_services]<\/div><script>\n            jQuery( document ).ready(function($) {\n                if($('[data-elementor-type=\"wp-post\"]').length > 0){\n                    $('[data-elementor-type=\"wp-post\"]').children().last().before($('.other_services_container'));\n                }else{\n                    $('[data-elementor-type=\"wp-page\"]').children().last().before($('.other_services_container'));\n                }\n                \n                var sections = $('[data-elementor-type=\"wp-post\"]').find('.net-15.dt-16');\n                for(var i = 0; i<sections.length; i++){\n                    \n                    if($(sections[i]).hasClass( 'net-15' ) && $(sections[i]).hasClass( 'dt-16' ) && $(sections[i]).hasClass( 'elementor-hidden-desktop' )==false){\n                        $(sections[i]).before($('.other_services_container'));   \n                    }\n                }\n                \n            });\n        <\/script>","protected":false},"excerpt":{"rendered":"<p>Feature-rich document processing platform for banks and enterprises Building the core parsing module for Leganta&#8217;s contract management platform that breaks down complex legal documents into structured, searchable data and integrates AI for automated field classification and semantic content analysis (DORA \/ NIS2 ready). Let&#8217;s build together Industry Information Technology Services \/ LegalTech \/ DORA-NIS2 Employees<\/p>","protected":false},"featured_media":195706,"template":"","cases":[791,1048],"class_list":["post-195705","case","type-case","status-publish","has-post-thumbnail","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/innowise.com\/pt\/wp-json\/wp\/v2\/case\/195705","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/innowise.com\/pt\/wp-json\/wp\/v2\/case"}],"about":[{"href":"https:\/\/innowise.com\/pt\/wp-json\/wp\/v2\/types\/case"}],"version-history":[{"count":1,"href":"https:\/\/innowise.com\/pt\/wp-json\/wp\/v2\/case\/195705\/revisions"}],"predecessor-version":[{"id":196104,"href":"https:\/\/innowise.com\/pt\/wp-json\/wp\/v2\/case\/195705\/revisions\/196104"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/innowise.com\/pt\/wp-json\/wp\/v2\/media\/195706"}],"wp:attachment":[{"href":"https:\/\/innowise.com\/pt\/wp-json\/wp\/v2\/media?parent=195705"}],"wp:term":[{"taxonomy":"cases","embeddable":true,"href":"https:\/\/innowise.com\/pt\/wp-json\/wp\/v2\/cases?post=195705"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}