{"id":3339,"date":"2023-10-10T16:15:44","date_gmt":"2023-10-10T15:15:44","guid":{"rendered":"https:\/\/www.mymxdata.com\/?page_id=3339"},"modified":"2025-09-28T14:43:41","modified_gmt":"2025-09-28T13:43:41","slug":"op-mobility","status":"publish","type":"page","link":"https:\/\/www.mymxdata.com\/en-us\/case-studies\/op-mobility\/","title":{"rendered":"OP Mobility | MX"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"3339\" class=\"elementor elementor-3339\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-f786b79 e-flex e-con-boxed e-con e-parent\" data-id=\"f786b79\" 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-bb510bb elementor-widget elementor-widget-html\" data-id=\"bb510bb\" 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<!-- Enhanced OP Mobility Case Study Page -->\r\n<div class=\"case-study-container\">\r\n  <!-- Hero Section -->\r\n  <div class=\"case-study-hero-section\">\r\n    <div class=\"case-study-floating-elements\">\r\n      <div class=\"case-study-floating-circle\"><\/div>\r\n      <div class=\"case-study-floating-circle\"><\/div>\r\n      <div class=\"case-study-floating-circle\"><\/div>\r\n    <\/div>\r\n    \r\n    <div class=\"case-study-container-inner\">\r\n      <div class=\"case-study-hero-content\">\r\n        <div class=\"case-study-hero-text case-study-fade-in\">\r\n          <h1 class=\"case-study-hero-title\">Strengthening a Fast-Moving Supply Chain with MX<\/h1>\r\n          <p class=\"case-study-hero-subtitle\">OP Mobility\u2019s Digital Shift<\/p>\r\n          <p class=\"case-study-hero-description\">\r\n            OP Mobility, a global supplier known for cutting-edge exterior lighting, replaced slow FTP transfers with MX. The result: 700% faster exchange speeds, 603 external users onboarded, and connections with 429 companies across 37 countries.\r\n          <\/p>\r\n        <\/div>\r\n        \r\n        <div class=\"case-study-cta-card case-study-fade-in\">\r\n          <h2 class=\"case-study-cta-title\">Download the 6-in-1 Case Study Pack<\/h2>\r\n          <p class=\"case-study-cta-subtitle\">\r\n            Short on time? Get a compact pack showing how MX is used across manufacturing, including common problems solved. See why it scores 9.5 out of 10 with users.\r\n          <\/p>\r\n          <button class=\"case-study-cta-button\" onclick=\"openCaseStudyModal()\">Download Now<\/button>\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n  \r\n  <!-- Stats Section -->\r\n  <div class=\"case-study-content-section\">\r\n    <div class=\"case-study-container-inner\">\r\n      <div class=\"case-study-stats-grid case-study-fade-in\">\r\n        <div class=\"case-study-stat-card\">\r\n          <div class=\"case-study-stat-icon\">\ud83d\udcc8<\/div>\r\n          <div class=\"case-study-stat-number\">700%<\/div>\r\n          <div class=\"case-study-stat-label\">Faster Transfers<\/div>\r\n        <\/div>\r\n        <div class=\"case-study-stat-card\">\r\n          <div class=\"case-study-stat-icon\">\ud83c\udf0d<\/div>\r\n          <div class=\"case-study-stat-number\">37<\/div>\r\n          <div class=\"case-study-stat-label\">Countries<\/div>\r\n        <\/div>\r\n        <div class=\"case-study-stat-card\">\r\n          <div class=\"case-study-stat-icon\">\ud83d\udd04<\/div>\r\n          <div class=\"case-study-stat-number\">20K+<\/div>\r\n          <div class=\"case-study-stat-label\">Transactions<\/div>\r\n        <\/div>\r\n        <div class=\"case-study-stat-card\">\r\n          <div class=\"case-study-stat-icon\">\ud83d\udc65<\/div>\r\n          <div class=\"case-study-stat-number\">603<\/div>\r\n          <div class=\"case-study-stat-label\">External Users<\/div>\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n  \r\n  <!-- Content Sections -->\r\n  <div class=\"case-study-content-section\">\r\n    <div class=\"case-study-container-inner\">\r\n      <div class=\"case-study-section-card case-study-fade-in\">\r\n        <p class=\"case-study-section-text\">\r\n          OP Mobility supplies exterior lighting systems to leading OEMs, creating advanced designs that include matrix beams, ADB, OLED technology and smart electronic modules. Their customers expect both technical innovation and dependable data exchange on a global scale.\r\n        <\/p>\r\n        <p class=\"case-study-section-text\">\r\n          MX Data Exchange, developed by Majenta Solutions, proved to be the platform that could deliver the speed and agility they needed.\r\n        <\/p>\r\n      <\/div>\r\n      \r\n      <div class=\"case-study-section-card case-study-fade-in\">\r\n        <h2 class=\"case-study-section-title\">The Challenge<\/h2>\r\n        <p class=\"case-study-section-text\">\r\n          Supply chains are under pressure to move faster, and OP Mobility\u2019s FTP server wasn\u2019t keeping up. File size limits meant CAD structures had to be split into smaller bundles. Large transfers often took multiple installments, slowing projects down and draining resources. Performance dropped further whenever files were shared outside the local network.\r\n        <\/p>\r\n        <p class=\"case-study-section-text\">\r\n          IT teams also had to invest time maintaining the FTP setup, creating another bottleneck. For a business chasing agility, the old approach was no longer workable.\r\n        <\/p>\r\n      <\/div>\r\n      \r\n      <div class=\"case-study-section-card case-study-fade-in\">\r\n        <h2 class=\"case-study-section-title\">The Solution<\/h2>\r\n        <p class=\"case-study-section-text\">\r\n          Majenta introduced MX, removing the FTP roadblocks. With no file size limits, engineers could exchange complex CAD data without splitting packages. Uploads and downloads proved to be up to 700% faster than other market options, saving critical time in development cycles.\r\n        <\/p>\r\n        <p class=\"case-study-section-text\">\r\n          MX also brought enhanced security with 256-bit end-to-end encryption. Transfers could be tracked in detail with searchable histories and instant audit logs, giving OP Mobility complete visibility across the supply chain.\r\n        <\/p>\r\n      <\/div>\r\n      \r\n      <div class=\"case-study-section-card case-study-fade-in\">\r\n        <h2 class=\"case-study-section-title\">Impact<\/h2>\r\n        <p class=\"case-study-section-text\">\r\n          By adopting MX, OP Mobility eliminated the wasted time tied to FTP. Large files now move as single transfers, with no need to reassemble them later. The platform also gave suppliers bi-directional exchange, reducing delays on both sides.\r\n        <\/p>\r\n        <p class=\"case-study-section-text\">\r\n          First introduced to MX through Jaguar Land Rover, OP Mobility soon rolled it out internally. The platform has since become their standard for exchanging files with external partners.\r\n        <\/p>\r\n      <\/div>\r\n      \r\n      <div class=\"case-study-quote-card case-study-fade-in\">\r\n        <p class=\"case-study-quote-text\">\r\n          We knew right away this was the right tool. MX is now our standard process for external data exchange.\r\n        <\/p>\r\n        <p class=\"case-study-quote-author\">\u2013 David Jane\u010dek, Senior EIT Specialist<\/p>\r\n      <\/div>\r\n      \r\n      <div class=\"case-study-section-card case-study-fade-in\">\r\n        <p class=\"case-study-section-text\">\r\n          Since adopting MX, OP Mobility has carried out over 20,000 transactions. The network now connects 603 users across 429 companies in 37 countries. With this global reach, OP Mobility is positioned to push forward in automotive lighting innovation.\r\n        <\/p>\r\n      <\/div>\r\n      \r\n      <div class=\"case-study-section-card case-study-fade-in\">\r\n        <h2 class=\"case-study-section-title\">Keys to Success<\/h2>\r\n        <p class=\"case-study-section-text\">\r\n          MX\u2019s unlimited file size support saves time, but ease of use has been just as valuable. The browser-based interface requires no extra IT infrastructure, so teams can get started quickly without training or complicated setup.\r\n        <\/p>\r\n        <p class=\"case-study-section-text\">\r\n          Because it\u2019s built with HTML5 and runs entirely online, MX avoids the constant IT overhead of software updates, freeing up resources and preventing delays in CAD-heavy projects.\r\n        <\/p>\r\n      <\/div>\r\n      \r\n      <div class=\"case-study-quote-card case-study-fade-in\">\r\n        <p class=\"case-study-quote-text\">\r\n          The support we had from Majenta was excellent. Their team was always available to guide us through the rollout, making adoption smooth and straightforward.\r\n        <\/p>\r\n        <p class=\"case-study-quote-author\">\u2013 David Jane\u010dek, Senior EIT Specialist<\/p>\r\n      <\/div>\r\n      \r\n      <div class=\"case-study-section-card case-study-fade-in\">\r\n        <h2 class=\"case-study-section-title\">Working with Majenta<\/h2>\r\n        <p class=\"case-study-section-text\">\r\n          The experience gave OP Mobility confidence in Majenta\u2019s partnership. With MX already transforming their data exchange, the door is open to explore MX+ for more complex integration needs. For OP Mobility, the collaboration has been a strong step toward their long-term vision.\r\n        <\/p>\r\n      <\/div>\r\n      \r\n      <div class=\"case-study-quote-card case-study-fade-in\">\r\n        <p class=\"case-study-quote-text\">\r\n          Based on this experience, we\u2019d gladly work with Majenta again. I\u2019d recommend MX to any company looking for a better way to exchange data.\r\n        <\/p>\r\n        <p class=\"case-study-quote-author\">\u2013 David Jane\u010dek, Senior EIT Specialist<\/p>\r\n      <\/div>\r\n      \r\n      <div class=\"case-study-language-switcher case-study-fade-in\">\r\n        <p style=\"margin: 0; color: #666; font-weight: 500; align-self: center;\">View In:<\/p>\r\n        <a href=\"https:\/\/www.mymxdata.com\/en-gb\/case-studies\/op-mobility\/\" class=\"case-study-lang-button\">\r\n          \ud83c\uddec\ud83c\udde7 English (GB)\r\n        <\/a>\r\n        <a href=\"https:\/\/www.mymxdata.com\/en-us\/case-studies\/op-mobility\/\" class=\"case-study-lang-button\">\r\n          \ud83c\uddfa\ud83c\uddf8 English (US)\r\n        <\/a>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n<\/div>\r\n\r\n<!-- Modal for Form -->\r\n<div id=\"caseStudyModal\" class=\"case-study-modal\">\r\n  <div class=\"case-study-modal-content\">\r\n    <span class=\"case-study-modal-close\" onclick=\"closeCaseStudyModal()\">&times;<\/span>\r\n    <script>\nvar gform;gform||(document.addEventListener(\"gform_main_scripts_loaded\",function(){gform.scriptsLoaded=!0}),document.addEventListener(\"gform\/theme\/scripts_loaded\",function(){gform.themeScriptsLoaded=!0}),window.addEventListener(\"DOMContentLoaded\",function(){gform.domLoaded=!0}),gform={domLoaded:!1,scriptsLoaded:!1,themeScriptsLoaded:!1,isFormEditor:()=>\"function\"==typeof InitializeEditor,callIfLoaded:function(o){return!(!gform.domLoaded||!gform.scriptsLoaded||!gform.themeScriptsLoaded&&!gform.isFormEditor()||(gform.isFormEditor()&&console.warn(\"The use of gform.initializeOnLoaded() is deprecated in the form editor context and will be removed in Gravity Forms 3.1.\"),o(),0))},initializeOnLoaded:function(o){gform.callIfLoaded(o)||(document.addEventListener(\"gform_main_scripts_loaded\",()=>{gform.scriptsLoaded=!0,gform.callIfLoaded(o)}),document.addEventListener(\"gform\/theme\/scripts_loaded\",()=>{gform.themeScriptsLoaded=!0,gform.callIfLoaded(o)}),window.addEventListener(\"DOMContentLoaded\",()=>{gform.domLoaded=!0,gform.callIfLoaded(o)}))},hooks:{action:{},filter:{}},addAction:function(o,r,e,t){gform.addHook(\"action\",o,r,e,t)},addFilter:function(o,r,e,t){gform.addHook(\"filter\",o,r,e,t)},doAction:function(o){gform.doHook(\"action\",o,arguments)},applyFilters:function(o){return gform.doHook(\"filter\",o,arguments)},removeAction:function(o,r){gform.removeHook(\"action\",o,r)},removeFilter:function(o,r,e){gform.removeHook(\"filter\",o,r,e)},addHook:function(o,r,e,t,n){null==gform.hooks[o][r]&&(gform.hooks[o][r]=[]);var d=gform.hooks[o][r];null==n&&(n=r+\"_\"+d.length),gform.hooks[o][r].push({tag:n,callable:e,priority:t=null==t?10:t})},doHook:function(r,o,e){var t;if(e=Array.prototype.slice.call(e,1),null!=gform.hooks[r][o]&&((o=gform.hooks[r][o]).sort(function(o,r){return o.priority-r.priority}),o.forEach(function(o){\"function\"!=typeof(t=o.callable)&&(t=window[t]),\"action\"==r?t.apply(null,e):e[0]=t.apply(null,e)})),\"filter\"==r)return e[0]},removeHook:function(o,r,t,n){var e;null!=gform.hooks[o][r]&&(e=(e=gform.hooks[o][r]).filter(function(o,r,e){return!!(null!=n&&n!=o.tag||null!=t&&t!=o.priority)}),gform.hooks[o][r]=e)}});\n<\/script>\n\n                <div class='gf_browser_gecko gform_wrapper gravity-theme gform-theme--no-framework' data-form-theme='gravity-theme' data-form-index='0' id='gform_wrapper_7' ><div id='gf_7' class='gform_anchor' tabindex='-1'><\/div>\n                        <div class='gform_heading'>\n                            <p class='gform_description'>Short on time? Access a condensed key points package showing MX use cases and 'challenges solved' from across automotive manufacturing. Find out why users rate MX 9.5 out of 10.<\/p>\n                        <\/div><form method='post' enctype='multipart\/form-data' target='gform_ajax_frame_7' id='gform_7'  action='\/en-us\/wp-json\/wp\/v2\/pages\/3339#gf_7' data-formid='7' novalidate> \r\n <input type='hidden' class='gforms-pum' value='{\"closepopup\":false,\"closedelay\":0,\"openpopup\":false,\"openpopup_id\":0}' \/>\n                        <div class='gform-body gform_body'><div id='gform_fields_7' class='gform_fields top_label form_sublabel_above description_below validation_below'><fieldset id=\"field_7_1\" class=\"gfield gfield--type-name gfield--input-type-name gfield_contains_required field_sublabel_above gfield--no-description field_description_below field_validation_below gfield_visibility_visible\"  ><legend class='gfield_label gform-field-label gfield_label_before_complex' >Your Name<span class=\"gfield_required\"><span class=\"gfield_required gfield_required_text\">(Required)<\/span><\/span><\/legend><div class='ginput_complex ginput_container ginput_container--name no_prefix has_first_name no_middle_name has_last_name no_suffix gf_name_has_2 ginput_container_name gform-grid-row' id='input_7_1'>\n                            \n                            <span id='input_7_1_3_container' class='name_first gform-grid-col gform-grid-col--size-auto' >\n                                                    <label for='input_7_1_3' class='gform-field-label gform-field-label--type-sub '>First<\/label>\n                                                    <input type='text' name='input_1.3' id='input_7_1_3' value=''   aria-required='true'    autocomplete=\"given-name\" \/>\n                                                <\/span>\n                            \n                            <span id='input_7_1_6_container' class='name_last gform-grid-col gform-grid-col--size-auto' >\n                                                            <label for='input_7_1_6' class='gform-field-label gform-field-label--type-sub '>Last<\/label>\n                                                            <input type='text' name='input_1.6' id='input_7_1_6' value=''   aria-required='true'    autocomplete=\"family-name\" \/>\n                                                        <\/span>\n                            \n                        <\/div><\/fieldset><div id=\"field_7_16\" class=\"gfield gfield--type-text gfield--input-type-text gfield--width-full gfield_contains_required field_sublabel_above gfield--no-description field_description_below field_validation_below gfield_visibility_visible\"  ><label class='gfield_label gform-field-label' for='input_7_16'>Company<span class=\"gfield_required\"><span class=\"gfield_required gfield_required_text\">(Required)<\/span><\/span><\/label><div class='ginput_container ginput_container_text'><input name='input_16' id='input_7_16' type='text' value='' class='large'     aria-required=\"true\" aria-invalid=\"false\"   \/><\/div><\/div><div id=\"field_7_2\" class=\"gfield gfield--type-email gfield--input-type-email gfield--width-full gfield_contains_required field_sublabel_above gfield--no-description field_description_below field_validation_below gfield_visibility_visible\"  ><label class='gfield_label gform-field-label' for='input_7_2'>Your Email Address<span class=\"gfield_required\"><span class=\"gfield_required gfield_required_text\">(Required)<\/span><\/span><\/label><div class='ginput_container ginput_container_email'>\n                            <input name='input_2' id='input_7_2' type='email' value='' class='large'    aria-required=\"true\" aria-invalid=\"false\"  \/>\n                        <\/div><\/div><div id=\"field_7_5\" class=\"gfield gfield--type-phone gfield--input-type-phone gfield--width-full gfield_contains_required field_sublabel_above gfield--no-description field_description_below field_validation_below gfield_visibility_visible\"  ><label class='gfield_label gform-field-label' for='input_7_5'>Phone Number<span class=\"gfield_required\"><span class=\"gfield_required gfield_required_text\">(Required)<\/span><\/span><\/label><div class='ginput_container ginput_container_phone'><input name='input_5' id='input_7_5' type='tel' value='' class='large'   aria-required=\"true\" aria-invalid=\"false\"  autocomplete=\"tel\" \/><\/div><\/div><div id=\"field_7_18\" class=\"gfield gfield--type-text gfield--input-type-text gfield--width-full field_sublabel_above gfield--no-description field_description_below field_validation_below gfield_visibility_visible\"  ><label class='gfield_label gform-field-label' for='input_7_18'>Anti-Spam: What city is the capital of France?<\/label><div class='ginput_container ginput_container_text'><input name='input_18' id='input_7_18' type='text' value='' class='large'      aria-invalid=\"false\"   \/><\/div><\/div><\/div><\/div>\n        <div class='gform-footer gform_footer top_label'> <input type='submit' id='gform_submit_button_7' class='gform_button button' onclick='gform.submission.handleButtonClick(this);' data-submission-type='submit' value='Submit'  \/> <input type='hidden' name='gform_ajax' value='form_id=7&amp;title=&amp;description=1&amp;tabindex=0&amp;theme=gravity-theme&amp;styles=[]&amp;hash=53ab426513a46262eb0a905482c5ba80' \/>\n            <input type='hidden' class='gform_hidden' name='gform_submission_method' data-js='gform_submission_method_7' value='iframe' \/>\n            <input type='hidden' class='gform_hidden' name='gform_theme' data-js='gform_theme_7' id='gform_theme_7' value='gravity-theme' \/>\n            <input type='hidden' class='gform_hidden' name='gform_style_settings' data-js='gform_style_settings_7' id='gform_style_settings_7' value='[]' \/>\n            <input type='hidden' class='gform_hidden' name='is_submit_7' value='1' \/>\n            <input type='hidden' class='gform_hidden' name='gform_submit' value='7' \/>\n            \n            <input type='hidden' class='gform_hidden' name='gform_unique_id' value='' \/>\n            <input type='hidden' class='gform_hidden' name='state_7' value='WyJbXSIsImNhNTk1Y2IzNTY5NzQ5NmIxN2U5YzczYjRkNTVmOTlmIl0=' \/>\n            <input type='hidden' autocomplete='off' class='gform_hidden' name='gform_target_page_number_7' id='gform_target_page_number_7' value='0' \/>\n            <input type='hidden' autocomplete='off' class='gform_hidden' name='gform_source_page_number_7' id='gform_source_page_number_7' value='1' \/>\n            <input type='hidden' name='gform_field_values' value='' \/>\n            \n        <\/div>\n                        <\/form>\n                        <\/div>\n\t\t                <iframe style='display:none;width:0px;height:0px;' src='about:blank' name='gform_ajax_frame_7' id='gform_ajax_frame_7' title='This iframe contains the logic required to handle Ajax powered Gravity Forms.'><\/iframe>\n\t\t                <script>\ngform.initializeOnLoaded( function() {gformInitSpinner( 7, 'https:\/\/www.mymxdata.com\/en-us\/wp-content\/plugins\/gravityforms\/images\/spinner.svg', true );jQuery('#gform_ajax_frame_7').on('load',function(){var contents = jQuery(this).contents().find('*').html();var is_postback = contents.indexOf('GF_AJAX_POSTBACK') >= 0;if(!is_postback){return;}var form_content = jQuery(this).contents().find('#gform_wrapper_7');var is_confirmation = jQuery(this).contents().find('#gform_confirmation_wrapper_7').length > 0;var is_redirect = contents.indexOf('gformRedirect(){') >= 0;var is_form = form_content.length > 0 && ! is_redirect && ! is_confirmation;var mt = parseInt(jQuery('html').css('margin-top'), 10) + parseInt(jQuery('body').css('margin-top'), 10) + 100;if(is_form){jQuery('#gform_wrapper_7').html(form_content.html());if(form_content.hasClass('gform_validation_error')){jQuery('#gform_wrapper_7').addClass('gform_validation_error');} else {jQuery('#gform_wrapper_7').removeClass('gform_validation_error');}setTimeout( function() { \/* delay the scroll by 50 milliseconds to fix a bug in chrome *\/ jQuery(document).scrollTop(jQuery('#gform_wrapper_7').offset().top - mt); }, 50 );if(window['gformInitDatepicker']) {gformInitDatepicker();}if(window['gformInitPriceFields']) {gformInitPriceFields();}var current_page = jQuery('#gform_source_page_number_7').val();gformInitSpinner( 7, 'https:\/\/www.mymxdata.com\/en-us\/wp-content\/plugins\/gravityforms\/images\/spinner.svg', true );jQuery(document).trigger('gform_page_loaded', [7, current_page]);window['gf_submitting_7'] = false;}else if(!is_redirect){var confirmation_content = jQuery(this).contents().find('.GF_AJAX_POSTBACK').html();if(!confirmation_content){confirmation_content = contents;}jQuery('#gform_wrapper_7').replaceWith(confirmation_content);jQuery(document).scrollTop(jQuery('#gf_7').offset().top - mt);jQuery(document).trigger('gform_confirmation_loaded', [7]);window['gf_submitting_7'] = false;wp.a11y.speak(jQuery('#gform_confirmation_message_7').text());}else{jQuery('#gform_7').append(contents);if(window['gformRedirect']) {gformRedirect();}}jQuery(document).trigger(\"gform_pre_post_render\", [{ formId: \"7\", currentPage: \"current_page\", abort: function() { this.preventDefault(); } }]);        if (event && event.defaultPrevented) {                return;        }        const gformWrapperDiv = document.getElementById( \"gform_wrapper_7\" );        if ( gformWrapperDiv ) {            const visibilitySpan = document.createElement( \"span\" );            visibilitySpan.id = \"gform_visibility_test_7\";            gformWrapperDiv.insertAdjacentElement( \"afterend\", visibilitySpan );        }        const visibilityTestDiv = document.getElementById( \"gform_visibility_test_7\" );        let postRenderFired = false;        function triggerPostRender() {            if ( postRenderFired ) {                return;            }            postRenderFired = true;            gform.core.triggerPostRenderEvents( 7, current_page );            if ( visibilityTestDiv ) {                visibilityTestDiv.parentNode.removeChild( visibilityTestDiv );            }        }        function debounce( func, wait, immediate ) {            var timeout;            return function() {                var context = this, args = arguments;                var later = function() {                    timeout = null;                    if ( !immediate ) func.apply( context, args );                };                var callNow = immediate && !timeout;                clearTimeout( timeout );                timeout = setTimeout( later, wait );                if ( callNow ) func.apply( context, args );            };        }        const debouncedTriggerPostRender = debounce( function() {            triggerPostRender();        }, 200 );        if ( visibilityTestDiv && visibilityTestDiv.offsetParent === null ) {            const observer = new MutationObserver( ( mutations ) => {                mutations.forEach( ( mutation ) => {                    if ( mutation.type === 'attributes' && visibilityTestDiv.offsetParent !== null ) {                        debouncedTriggerPostRender();                        observer.disconnect();                    }                });            });            observer.observe( document.body, {                attributes: true,                childList: false,                subtree: true,                attributeFilter: [ 'style', 'class' ],            });        } else {            triggerPostRender();        }    } );} );\n<\/script>\n\r\n  <\/div>\r\n<\/div>\r\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-632d7cf elementor-widget elementor-widget-html\" data-id=\"632d7cf\" 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<script>\r\n\/\/ Modal functionality\r\nfunction openCaseStudyModal() {\r\n  document.getElementById('caseStudyModal').style.display = 'block';\r\n  document.body.style.overflow = 'hidden'; \/\/ Prevent background scrolling\r\n}\r\n\r\nfunction closeCaseStudyModal() {\r\n  document.getElementById('caseStudyModal').style.display = 'none';\r\n  document.body.style.overflow = 'auto'; \/\/ Restore scrolling\r\n}\r\n\r\n\/\/ Close modal when clicking outside of it\r\nwindow.onclick = function(event) {\r\n  const modal = document.getElementById('caseStudyModal');\r\n  if (event.target === modal) {\r\n    closeCaseStudyModal();\r\n  }\r\n}\r\n\r\n\/\/ Close modal with escape key\r\ndocument.addEventListener('keydown', function(event) {\r\n  if (event.key === 'Escape') {\r\n    closeCaseStudyModal();\r\n  }\r\n});\r\n\r\n\/\/ Intersection Observer for fade-in animations\r\nconst caseStudyObserverOptions = {\r\n  threshold: 0.1,\r\n  rootMargin: '0px 0px -50px 0px'\r\n};\r\n\r\nconst caseStudyObserver = new IntersectionObserver((entries) => {\r\n  entries.forEach(entry => {\r\n    if (entry.isIntersecting) {\r\n      entry.target.style.animationDelay = '0.2s';\r\n      entry.target.classList.add('case-study-fade-in');\r\n    }\r\n  });\r\n}, caseStudyObserverOptions);\r\n\r\n\/\/ Observe all elements with fade-in class\r\ndocument.addEventListener('DOMContentLoaded', () => {\r\n  const fadeElements = document.querySelectorAll('.case-study-fade-in');\r\n  fadeElements.forEach(el => caseStudyObserver.observe(el));\r\n  \r\n  \/\/ Add smooth scrolling for better UX\r\n  document.documentElement.style.scrollBehavior = 'smooth';\r\n  \r\n  \/\/ Enhanced hover effects for cards\r\n  const cards = document.querySelectorAll('.case-study-section-card, .case-study-stat-card');\r\n  cards.forEach(card => {\r\n    card.addEventListener('mouseenter', () => {\r\n      card.style.transform = 'translateY(-8px) scale(1.02)';\r\n    });\r\n    \r\n    card.addEventListener('mouseleave', () => {\r\n      card.style.transform = 'translateY(0) scale(1)';\r\n    });\r\n  });\r\n});\r\n\r\n\/\/ Parallax effect for floating elements\r\nwindow.addEventListener('scroll', () => {\r\n  const scrolled = window.pageYOffset;\r\n  const rate = scrolled * -0.5;\r\n  const floatingElements = document.querySelector('.case-study-floating-elements');\r\n  if (floatingElements) {\r\n    floatingElements.style.transform = `translateY(${rate}px)`;\r\n  }\r\n});\r\n\r\n\/\/ Add loading state management\r\nwindow.addEventListener('load', () => {\r\n  document.body.classList.add('loaded');\r\n});\r\n\r\n\/\/ Handle form submission success (if needed for tracking)\r\ndocument.addEventListener('gform_confirmation_loaded', function(event) {\r\n  \/\/ Close modal after successful form submission\r\n  setTimeout(() => {\r\n    closeCaseStudyModal();\r\n  }, 2000); \/\/ Close after 2 seconds to show confirmation\r\n});\r\n\r\n\/\/ Smooth scroll enhancement\r\ndocument.querySelectorAll('a[href^=\"#\"]').forEach(anchor => {\r\n  anchor.addEventListener('click', function (e) {\r\n    e.preventDefault();\r\n    const target = document.querySelector(this.getAttribute('href'));\r\n    if (target) {\r\n      target.scrollIntoView({\r\n        behavior: 'smooth',\r\n        block: 'start'\r\n      });\r\n    }\r\n  });\r\n});\r\n\r\n\/\/ Add enhanced button click feedback\r\ndocument.addEventListener('click', function(e) {\r\n  if (e.target.classList.contains('case-study-cta-button')) {\r\n    \/\/ Add ripple effect\r\n    const button = e.target;\r\n    const ripple = document.createElement('span');\r\n    const rect = button.getBoundingClientRect();\r\n    const size = Math.max(rect.width, rect.height);\r\n    const x = e.clientX - rect.left - size \/ 2;\r\n    const y = e.clientY - rect.top - size \/ 2;\r\n    \r\n    ripple.style.cssText = `\r\n      position: absolute;\r\n      border-radius: 50%;\r\n      background: rgba(255, 255, 255, 0.3);\r\n      transform: scale(0);\r\n      animation: case-study-ripple 0.6s ease-out;\r\n      left: ${x}px;\r\n      top: ${y}px;\r\n      width: ${size}px;\r\n      height: ${size}px;\r\n    `;\r\n    \r\n    button.style.position = 'relative';\r\n    button.style.overflow = 'hidden';\r\n    button.appendChild(ripple);\r\n    \r\n    setTimeout(() => {\r\n      if (ripple.parentNode) {\r\n        ripple.parentNode.removeChild(ripple);\r\n      }\r\n    }, 600);\r\n  }\r\n});\r\n\r\n\/\/ Add ripple animation CSS\r\nconst rippleStyle = document.createElement('style');\r\nrippleStyle.textContent = `\r\n  @keyframes case-study-ripple {\r\n    to {\r\n      transform: scale(2);\r\n      opacity: 0;\r\n    }\r\n  }\r\n`;\r\ndocument.head.appendChild(rippleStyle);\r\n<\/script>\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","protected":false},"excerpt":{"rendered":"<p>Strengthening a Fast-Moving Supply Chain with MX OP Mobility\u2019s Digital Shift OP Mobility, a global supplier known for cutting-edge exterior lighting, replaced slow FTP transfers with MX. The result: 700% faster exchange speeds, 603 external users onboarded, and connections with 429 companies across 37 countries. Download the 6-in-1 Case Study Pack Short on time? Get [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":3326,"parent":3052,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"footnotes":""},"class_list":["post-3339","page","type-page","status-publish","has-post-thumbnail","hentry"],"_links":{"self":[{"href":"https:\/\/www.mymxdata.com\/en-us\/wp-json\/wp\/v2\/pages\/3339","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.mymxdata.com\/en-us\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.mymxdata.com\/en-us\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.mymxdata.com\/en-us\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.mymxdata.com\/en-us\/wp-json\/wp\/v2\/comments?post=3339"}],"version-history":[{"count":3,"href":"https:\/\/www.mymxdata.com\/en-us\/wp-json\/wp\/v2\/pages\/3339\/revisions"}],"predecessor-version":[{"id":10816,"href":"https:\/\/www.mymxdata.com\/en-us\/wp-json\/wp\/v2\/pages\/3339\/revisions\/10816"}],"up":[{"embeddable":true,"href":"https:\/\/www.mymxdata.com\/en-us\/wp-json\/wp\/v2\/pages\/3052"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.mymxdata.com\/en-us\/wp-json\/wp\/v2\/media\/3326"}],"wp:attachment":[{"href":"https:\/\/www.mymxdata.com\/en-us\/wp-json\/wp\/v2\/media?parent=3339"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}