1<!DOCTYPE html> 2<html lang="en"> 3 <head> 4 <meta charset="UTF-8" /> 5 <link rel="icon" href="/lovable-uploads/a2329a7f-2120-4917-a1d7-8b0f86e2bca7.png" type="image/png"> 6 <meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover" /> 7 8 <!-- DNS Prefetch + Preconnect for Supabase Storage (eliminates ~300ms connection latency) --> 9 <link rel="dns-prefetch" href="https://atnuwxpdfodxpvhxgayj.supabase.co" /> 10 <link rel="preconnect" href="https://atnuwxpdfodxpvhxgayj.supabase.co" crossorigin /> 11 <title>Drop Highlight | Own The Moment</title> 12 <meta name="description" content="Drop Highlight | Own The Moment" /> 13 <meta name="author" content="Drop Highlight" /> 14 15 <meta property="og:title" content="Drop Highlight | Own The Moment" /> 16 <meta property="og:description" content="Drop Highlight | Own The Moment" /> 17 <meta property="og:type" content="website" /> 18 <meta property="og:image" content="https://drophighlight.com/lovable-uploads/cc9366bc-b227-4207-a585-1d4c89877547.png" /> 19 <meta property="og:image:secure_url" content="https://drophighlight.com/lovable-uploads/cc9366bc-b227-4207-a585-1d4c89877547.png" /> 20 <meta property="og:image:width" content="1200" /> 21 <meta property="og:image:height" content="630" /> 22 <meta property="og:image:type" content="image/png" /> 23 <meta property="og:image:alt" content="Drop Highlight | Own The Moment" /> 24 <meta property="og:site_name" content="Drop Highlight" /> 25 26 <meta name="twitter:card" content="summary_large_image" /> 27 <meta name="twitter:title" content="Drop Highlight | Own The Moment" /> 28 <meta name="twitter:description" content="Drop Highlight | Own The Moment" /> 29 <meta name="twitter:image" content="https://drophighlight.com/lovable-uploads/cc9366bc-b227-4207-a585-1d4c89877547.png" /> 30 31
31<script> 32 // Set dynamic og:url based on current location 33 document.addEventListener('DOMContentLoaded', function() { 34 const ogUrl = document.querySelector('meta[property="og:url"]'); 35 if (!ogUrl) { 36 const meta = document.createElement('meta'); 37 meta.setAttribute('property', 'og:url'); 38 meta.setAttribute('content', window.location.href); 39 document.head.appendChild(meta); 40 } 41 }); 42 </script>
42 43 44 <!-- Google Analytics 4 - Dual Tracking --> 45 <!-- Drophighlight GA4 (tracks all pages) + Company GA4 (configured per landing page) -->
vendor: 68 bytes, lines 45-46
45 46 <script async src="https://www.googletagmanager.com/gtag/js?id=
46G-WK45DJ9W13
vendor: 16 bytes, lines 46-47
46"></script> 47
47<script> 48 window.dataLayer = window.dataLayer || []; 49 function gtag(){dataLayer.push(arguments);} 50 51 // Set default consent to 'denied' (GDPR compliant) 52 gtag('consent', 'default', { 53 'analytics_storage': 'denied', 54 'ad_storage': 'denied', 55 'functionality_storage': 'granted', 56 'personalization_storage': 'denied', 57 'security_storage': 'granted' 58 }); 59 60 // Initialize with timestamp 61 gtag('js', new Date()); 62 63 // Use absolute URL for first-party proxy (works in all environments) 64 const GA_PROXY = window.location.origin + '/ga'; 65 66 // Configure Drophighlight GA (always active) 67 gtag('config', 'G-WK45DJ9W13', { 68 'send_page_view': false, // Will send manually after consent 69 'transport_url': GA_PROXY, // Use first-party proxy 70 'first_party_collection': true 71 }); 72 73 // Initialize dual GA state 74 window.__dualGA = { companyGaId: null, companyEnabled: false }; 75 76 // Store gtag config function for dynamic client GA 77 window.__configureClientGA = function(clientGaId) { 78 if (clientGaId && typeof gtag === 'function') { 79 console.log('ð [GA] Configuring client GA ID:', clientGaId); 80 81 // â REGISTER in gtag dataLayer 82 gtag('config', clientGaId, { 83 'send_page_view': false, 84 'transport_url': GA_PROXY, 85 'first_party_collection': true 86 }); 87 88 // â Store in dual state 89 window.__dualGA = window.__dualGA || {}; 90 window.__dualGA.companyGaId = clientGaId; 91 92 console.log('â [GA] Client GA configured and stored'); 93 } else if (!clientGaId) { 94 console.log('ð [GA] Clearing client GA ID'); 95 window.__dualGA = window.__dualGA || {}; 96 window.__dualGA.companyGaId = null; 97 } 98 }; 99 100 // Store page view sender 101 window.__sendGAPageView = function() { 102 if (typeof gtag === 'function') { 103 const gaIds = ['G-WK45DJ9W13']; // Drophighlight always 104 105 // Read from __dualGA 106 const dualState = window.__dualGA || {}; 107 if (dualState.companyGaId && dualState.companyEnabled) { 108 gaIds.push(dualState.companyGaId); 109 } 110 111 gtag('event', 'page_view', { 112 page_location: window.location.href, 113 page_title: document.title, 114 page_path: window.location.pathname + window.location.search, 115 send_to: gaIds 116 }); 117 console.log('ð¤ [GA] Page view sent to:', gaIds); 118 } 119 }; 120 </script>
120 121 122 <!-- Hotjar Tracking Code for www.drophighlight.com --> 123
123<script> 124 window.__hotjarLoaded = false; 125 window.__initHotjar = function() { 126 if (window.__hotjarLoaded) return; 127 window.__hotjarLoaded = true;
vendor: 142 bytes, lines 127-131
127 128 129 (function(h,o,t,j,a,r){ 130 h.hj=h.hj||function(){(h.hj.q=h.hj.q||[]).push(arguments)}; 131 h._hjSettings={hjid:
1311232664
vendor: 287 bytes, lines 131-138
131,hjsv:6}; 132 a=o.getElementsByTagName('head')[0]; 133 r=o.createElement('script');r.async=1; 134 r.src=t+h._hjSettings.hjid+j+h._hjSettings.hjsv; 135 a.appendChild(r); 136 })(window,document,'https://static.hotjar.com/c/hotjar-','.js?sv='); 137 138
138console.log('ð¥ [Hotjar] Script loaded after consent'); 139 }; 140 </script>
140 141 <!-- Block Google Translate: it mutates text nodes and breaks React reconciler (removeChild crashes). --> 142 <meta name="google" content="notranslate" /> 143
143<script type="module" crossorigin src="/assets/index-P0N1Je5T.js"></script>
143 144 <link rel="stylesheet" crossorigin href="/assets/index-Hb747z0V.css"> 145 </head> 146 147 <body> 148 <div id="root" translate="no"></div> 149 <!-- Cloudflare Pages Analytics -->
vendor: 99 bytes, line 149
149<script defer src='https://static.cloudflareinsights.com/beacon.min.js' data-cf-beacon='{"token": "
149f8f40b0b651b484eaac32a1e93fbb1f0
vendor: 13 bytes, line 149
149"}'></script>
149<!-- Cloudflare Pages Analytics -->
149<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon='{"version":"2024.11.0","token":"dacbeab6c4024a57aa9c439329a352ea","r":1,"spa":2}' crossorigin="anonymous"></script>
149 150</body> 151</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.