  (function(){
       document.write(`<style type="text/css">
        .embed-neon-loading {
            display: flex;
            justify-content: center;
            align-items: center;
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            z-index: 10;
            background-color: rgb(255, 255, 255);
        }
        .neon-spinner {
            border: 3px solid #f3f3f3;
            border-top: 3px solid #3498db;
            border-radius: 50%;
            width: 40px;
            height: 40px;
            animation: neon-spin 2s linear infinite;
        }
        @keyframes neon-spin {
            0% { transform: rotate(0deg); }
            100% { transform: rotate(360deg); }
        }

</style>
`);
       const currentWebsiteUrlForNeonCrm = new URL(window.location.href);
       const neonCrmExitUrl = currentWebsiteUrlForNeonCrm.searchParams.get('neonCrmResult');
       const embedIframeId = currentWebsiteUrlForNeonCrm.searchParams.get('embedIframeId');
       const neonCrmResultReloaded = sessionStorage.getItem('neon-form-embed-58');
       if(neonCrmResultReloaded && neonCrmExitUrl){ 
           sessionStorage.removeItem('neon-form-embed-58'); 
           currentWebsiteUrlForNeonCrm.searchParams.delete('neonCrmResult'); 
           currentWebsiteUrlForNeonCrm.searchParams.delete('embedIframeId'); 
           currentWebsiteUrlForNeonCrm.searchParams.delete('sharingType'); 
           location.replace(currentWebsiteUrlForNeonCrm.toString()); 
           return; 
       } 
       const tokenKey = 'neon-frt-travis-embed-token';
       const neonEmbedToken = localStorage.getItem(tokenKey) || '';
       document.write(`<span id="neon-form-embed-58-container"></span>`);
       const formEmbedIframe = document.createElement('iframe');
       formEmbedIframe.src = `https://travis.app.neoncrm.com/forms/newsletter-subscription?hideTheme=0&from=iframe&sharingType=formEmbed&embedIframeDomainUrl=${encodeURIComponent(location.href)}&embedIframeId=neon-form-embed-58&embedToken=${neonEmbedToken}`;
       formEmbedIframe.id = 'neon-form-embed-58';
       formEmbedIframe.style.width = '100%';
       formEmbedIframe.style.border = '0';
       formEmbedIframe.style.display = 'none';
       formEmbedIframe.style.transition = 'height 0.3s ease';
       const iframeContainer = document.querySelector('#neon-form-embed-58-container');
       iframeContainer.style.position = 'relative';
       iframeContainer.style.minHeight = '50px';
       iframeContainer.style.height = '100%';
       iframeContainer.style.display = 'block';
       const loadingDiv = document.createElement('div');
       loadingDiv.className = 'embed-neon-loading';
       const spinnerDiv = document.createElement('div');
       spinnerDiv.className = 'neon-spinner';
       loadingDiv.appendChild(spinnerDiv);
       iframeContainer.append(loadingDiv);
       iframeContainer.append(formEmbedIframe);
       if(neonCrmExitUrl && 'neon-form-embed-58' === embedIframeId){
           const exitUrl = new URL(neonCrmExitUrl);
           exitUrl.searchParams.set('embedToken', neonEmbedToken);
           formEmbedIframe.src = exitUrl.toString();
           sessionStorage.setItem('neon-form-embed-58' ,'true');
       }
       let initNotify = true;
       formEmbedIframe.onload = function() {
                this.contentWindow.postMessage({domainUrl: location.href,sharingType: 'formEmbed',embedIframeId: 'neon-form-embed-58',initNotify,embedToken: neonEmbedToken},'https://travis.app.neoncrm.com');
                initNotify = false;
                loadingDiv.style.display = 'none';
                formEmbedIframe.style.display = 'block'
                iframeContainer.style.minHeight = 'auto'
       }
       window.addEventListener('message', function (event) {
            if (event.origin === 'https://travis.app.neoncrm.com' && event.data.type === 'iframeHeight' && 'neon-form-embed-58' === event.data.embedIframeId) {
                formEmbedIframe.style.height = event.data.height + 'px';
            }
            if (event.origin === 'https://travis.app.neoncrm.com' && event.data.type === 'scrollToTop' && 'neon-form-embed-58' === event.data.embedIframeId) {
                formEmbedIframe.scrollIntoView({behavior: 'smooth'});
            }
            if (event.origin === 'https://travis.app.neoncrm.com' && event.data.type === 'DOMContentLoaded' && 'neon-form-embed-58' === event.data.embedIframeId) {
                formEmbedIframe.contentWindow.postMessage({domainUrl: location.href,sharingType: 'formEmbed',embedIframeId: 'neon-form-embed-58',embedToken: neonEmbedToken},'https://travis.app.neoncrm.com');
                loadingDiv.style.display = 'none';
                formEmbedIframe.style.display = 'block';
                iframeContainer.style.minHeight = 'auto';
            }
            if (event.origin === 'https://travis.app.neoncrm.com' && event.data.type === 'neonFntEmbedToken' && sessionStorage.getItem('triggerLoginNeonIframeId') === 'neon-form-embed-58') {
                localStorage.setItem(event.data.neonFntEmbedTokenKey,event.data.neonFntEmbedToken);
                sessionStorage.removeItem('triggerLoginNeonIframeId');
                formEmbedIframe.contentWindow.postMessage({domainUrl: location.href,sharingType: 'formEmbed',embedIframeId: 'neon-form-embed-58',embedToken: event.data.neonFntEmbedToken},'https://travis.app.neoncrm.com');
                const iframeUrl = new URL(formEmbedIframe.src);
                iframeUrl.searchParams.set('embedToken', event.data.neonFntEmbedToken);
                loadingDiv.style.display = 'flex';
                formEmbedIframe.src = iframeUrl.toString();
            }
            if (event.origin === 'https://travis.app.neoncrm.com' && event.data.type === 'triggerLoginIframe' && 'neon-form-embed-58' === event.data.embedIframeId) {
                sessionStorage.setItem('triggerLoginNeonIframeId',event.data.embedIframeId);
                window.top.open(event.data.loginUrl,'_blank')
            }
        });
 })();

