{
  "version": 3,
  "sources": ["ssg:https://framerusercontent.com/modules/2WcqnYOqzUG3LpLFmzzF/wrTL5H1JOBqPReLwc3Qr/siteMetadata.js"],
  "sourcesContent": ["// Generated by Framer (9d598a4)\nexport default function metadata(params,activeLocale){return{customHTMLBodyEnd:\"<script>\\n    // (function (c, s, q, u, a, r, e) {\\n    //     c.hj=c.hj||function(){(c.hj.q=c.hj.q||[]).push(arguments)};\\n    //     c._hjSettings = { hjid: a };\\n    //     r = s.getElementsByTagName('head')[0];\\n    //     e = s.createElement('script');\\n    //     e.async = true;\\n    //     e.src = q + c._hjSettings.hjid + u;\\n    //     r.appendChild(e);\\n    // })(window, document, 'https://static.hj.contentsquare.net/c/csq-', '.js', 5323601);\\n\\nwindow.addEventListener('load', function() {\\n  (function(){\\n    // Capture UTM parameters from URL\\n    function captureUtmParams() {\\n    var params = new URLSearchParams(window.location.search);\\n    var utmParams = {};\\n    \\n    var utmKeys = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_content', 'utm_term'];\\n    \\n    // Track if we found new UTM params in URL\\n    var hasNewUtm = false;\\n    \\n    utmKeys.forEach(function(key) {\\n        if (params.has(key)) {\\n        utmParams[key] = params.get(key);\\n        // Store in localStorage for persistence\\n        localStorage.setItem(key, params.get(key));\\n        hasNewUtm = true;\\n        } else if (localStorage.getItem(key)) {\\n        // Use stored value if not in URL\\n        utmParams[key] = localStorage.getItem(key);\\n        }\\n    });\\n    \\n    // Add first touch timestamp if this is first time seeing UTM params\\n    if (hasNewUtm && !localStorage.getItem('first_touch_timestamp')) {\\n        var timestamp = Date.now().toString();\\n        localStorage.setItem('first_touch_timestamp', timestamp);\\n        utmParams['first_touch_timestamp'] = timestamp;\\n    } else if (localStorage.getItem('first_touch_timestamp')) {\\n        // Include existing timestamp\\n        utmParams['first_touch_timestamp'] = localStorage.getItem('first_touch_timestamp');\\n    }\\n    \\n    // Add referrer if available and no utm_source\\n    if (!utmParams.utm_source && document.referrer) {\\n        try {\\n        var referrerDomain = new URL(document.referrer).hostname;\\n        utmParams['referrer'] = referrerDomain;\\n        } catch (e) {\\n        // Invalid referrer URL\\n        }\\n    }\\n    \\n    // Push to dataLayer\\n    window.dataLayer = window.dataLayer || [];\\n    window.dataLayer.push(utmParams);\\n    }\\n\\n    // Run immediately\\n    captureUtmParams();\\n})();\\n});\\n</script>\\n\\n<script src=\\\"https://analytics.ahrefs.com/analytics.js\\\" data-key=\\\"YAaYCC45yz4eHMQRX569nQ\\\" defer=\\\"\\\"></script>\",customHTMLBodyStart:'<!-- Google Tag Manager (noscript) -->\\n<noscript><iframe src=\"https://www.googletagmanager.com/ns.html?id=GTM-5NG2SZ74\" height=\"0\" width=\"0\" style=\"display:none;visibility:hidden\"></iframe></noscript>\\n<!-- End Google Tag Manager (noscript) -->',customHTMLHeadStart:'<!-- Google Tag Manager -->\\n<script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({\\'gtm.start\\':\\nnew Date().getTime(),event:\\'gtm.js\\'});var f=d.getElementsByTagName(s)[0],\\nj=d.createElement(s),dl=l!=\\'dataLayer\\'?\\'&l=\\'+l:\\'\\';j.async=true;j.src=\\n\\'https://www.googletagmanager.com/gtm.js?id=\\'+i+dl;f.parentNode.insertBefore(j,f);\\n})(window,document,\\'script\\',\\'dataLayer\\',\\'GTM-5NG2SZ74\\');</script>\\n<!-- End Google Tag Manager -->\\n\\n\\n<script type=\"application/ld+json\">\\n{\\n    \"@context\": \"https://schema.org\",\\n    \"@type\": \"SoftwareApplication\",\\n    \"name\": \"VoltPro\",\\n    \"applicationCategory\": \"BusinessApplication\",\\n    \"operatingSystem\": \"Web\",\\n    \"offers\": {\\n    \"@type\": \"Offer\",\\n    \"price\": \"0\",\\n    \"priceCurrency\": \"USD\"\\n    },\\n    \"description\": \"Purpose-built electrical estimating software with material price tracking and assembly builder. Create professional electrical quotes in minutes, not hours. Try free.\"\\n}\\n</script>',description:\"Purpose-built electrical estimating software with material price tracking and assembly builder. Create professional electrical quotes in minutes, not hours. Try free.\",favicon:\"https://framerusercontent.com/assets/vb6ZH3JholsfagRHN0FII3O1zZA.png\",robots:\"max-image-preview:large\",socialImage:\"https://framerusercontent.com/assets/cVdN18NHHMIzf3F3kKfVCcmPAA.png\",title:\"Electrical Estimating Software for Contractors | Create Winning Bids Fast | VoltPro\"};}export const metadataVersion=1;\nexport const __FramerMetadata__ = {\"exports\":{\"metadataVersion\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}"],
  "mappings": "AACe,SAARA,EAA0BC,EAAOC,EAAa,CAAC,MAAM,CAAC,kBAAkB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,+GAA04E,oBAAoB;AAAA;AAAA,4CAAwP,oBAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,YAA08B,YAAY,yKAAyK,QAAQ,uEAAuE,OAAO,0BAA0B,YAAY,sEAAsE,MAAM,qFAAqF,CAAE",
  "names": ["metadata", "params", "activeLocale"]
}
