1<!doctype html> 2<html lang="en"> 3 <head> 4
4<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-5379952891723169" 5 crossorigin="anonymous"></script>
5 6 <!-- Google tag (gtag.js) -->
vendor: 64 bytes, lines 6-7
6 7<script async src="https://www.googletagmanager.com/gtag/js?id=
7G-0DQ9TF236L
vendor: 12 bytes, line 7
7"></script>
8<script> 9
vendor: 134 bytes, lines 9-13
9window.dataLayer = window.dataLayer || []; 10 function gtag(){dataLayer.push(arguments);} 11 gtag('js', new Date()); 12 13 gtag('config', '
13G-0DQ9TF236L
vendor: 4 bytes, line 13
13');
14</script>
14 15 <meta charset="UTF-8" /> 16 <link rel="icon" type="image/svg+xml" href="data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'><path d='M20 2L6 8V18C6 27 12 34 20 38C28 34 34 27 34 18V8L20 2Z' stroke='%2300A896' stroke-width='1.5' fill='none'/><ellipse cx='20' cy='20' rx='8' ry='5' stroke='%2300A896' stroke-width='1.2' fill='none'/><circle cx='20' cy='20' r='2.5' fill='%2300A896'/></svg>" /> 17 <meta name="generator" content="Hostinger Horizons" /> 18 <meta name="viewport" content="width=device-width, initial-scale=1.0" /> 19 <meta name="description" content="InsuranceVision delivers data-driven insights, risk intelligence, and strategic advisory for modern insurance organizations. Expert consulting in risk analytics, claims intelligence, underwriting optimization, and regulatory compliance." /> 20 <meta name="keywords" content="insurance consulting, risk analytics, claims intelligence, underwriting optimization, regulatory compliance, insurance advisory, actuarial services, insurance technology, data analytics" /> 21 22 <!-- Open Graph Meta Tags --> 23 <meta property="og:title" content="InsuranceVision - Strategic Clarity for the Future of Insurance" /> 24 <meta property="og:description" content="Data-driven insights, risk intelligence, and forward-focused advisory for modern insurance organizations." /> 25 <meta property="og:type" content="website" /> 26 <meta property="og:image" content="https://images.unsplash.com/photo-1639498624831-9ffb4ebc222b" /> 27 28 <!-- Twitter Card Meta Tags --> 29 <meta name="twitter:card" content="summary_large_image" /> 30 <meta name="twitter:title" content="InsuranceVision - Strategic Clarity for the Future of Insurance" /> 31 <meta name="twitter:description" content="Data-driven insights, risk intelligence, and forward-focused advisory for modern insurance organizations." /> 32 <meta name="twitter:image" content="https://images.unsplash.com/photo-1639498624831-9ffb4ebc222b" /> 33 34 <!-- Structured Data (JSON-LD) --> 35
35<script type="application/ld+json"> 36 { 37 "@context": "https://schema.org", 38 "@type": "ProfessionalService", 39 "name": "InsuranceVision", 40 "description": "Strategic insurance consulting and advisory services delivering data-driven insights, risk intelligence, and regulatory compliance solutions.", 41 "url": "https://insurancevision.com", 42 "logo": "https://insurancevision.com/logo.svg", 43 "image": "https://images.unsplash.com/photo-1639498624831-9ffb4ebc222b", 44 "address": { 45 "@type": "PostalAddress", 46 "streetAddress": "500 Financial Plaza", 47 "addressLocality": "New York", 48 "addressRegion": "NY", 49 "postalCode": "10005", 50 "addressCountry": "US" 51 }, 52 "telephone": "+1-555-123-4567", 53 "email": "[email protected]", 54 "priceRange": "$$$", 55 "areaServed": "Worldwide", 56 "serviceType": [ 57 "Risk Analytics & Modeling", 58 "Claims Intelligence", 59 "Underwriting Optimization", 60 "Regulatory & Compliance Advisory" 61 ] 62 } 63 </script>
63 64
64<script type="module" crossorigin src="/assets/index-d8ed25e0.js"></script>
64 65 <link rel="stylesheet" href="/assets/index-db236ba7.css"> 66
66<script type="module"> 67window.onerror = (message, source, lineno, colno, errorObj) => { 68 const errorDetails = errorObj ? JSON.stringify({ 69 name: errorObj.name, 70 message: errorObj.message, 71 stack: errorObj.stack, 72 source, 73 lineno, 74 colno, 75 }) : null; 76 77 window.parent.postMessage({ 78 type: 'horizons-runtime-error', 79 message, 80 error: errorDetails 81 }, '*'); 82}; 83</script>
83 84
84<script type="module"> 85const observer = new MutationObserver((mutations) => { 86 for (const mutation of mutations) { 87 for (const addedNode of mutation.addedNodes) { 88 if ( 89 addedNode.nodeType === Node.ELEMENT_NODE && 90 ( 91 addedNode.tagName?.toLowerCase() === 'vite-error-overlay' || 92 addedNode.classList?.contains('backdrop') 93 ) 94 ) { 95 handleViteOverlay(addedNode); 96 } 97 } 98 } 99}); 100 101observer.observe(document.documentElement, { 102 childList: true, 103 subtree: true 104}); 105 106function handleViteOverlay(node) { 107 if (!node.shadowRoot) { 108 return; 109 } 110 111 const backdrop = node.shadowRoot.querySelector('.backdrop'); 112 113 if (backdrop) { 114 const overlayHtml = backdrop.outerHTML; 115 const parser = new DOMParser(); 116 const doc = parser.parseFromString(overlayHtml, 'text/html'); 117 const messageBodyElement = doc.querySelector('.message-body'); 118 const fileElement = doc.querySelector('.file'); 119 const messageText = messageBodyElement ? messageBodyElement.textContent.trim() : ''; 120 const fileText = fileElement ? fileElement.textContent.trim() : ''; 121 const error = messageText + (fileText ? ' File:' + fileText : ''); 122 123 window.parent.postMessage({ 124 type: 'horizons-vite-error', 125 error, 126 }, '*'); 127 } 128} 129</script>
129 130
130<script type="module"> 131const originalConsoleError = console.error; 132console.error = function(...args) { 133 originalConsoleError.apply(console, args); 134 135 let errorString = ''; 136 137 for (let i = 0; i < args.length; i++) { 138 const arg = args[i]; 139 if (arg instanceof Error) { 140 errorString = arg.stack || `${arg.name}: ${arg.message}`; 141 break; 142 } 143 } 144 145 if (!errorString) { 146 errorString = args.map(arg => typeof arg === 'object' ? JSON.stringify(arg) : String(arg)).join(' '); 147 } 148 149 window.parent.postMessage({ 150 type: 'horizons-console-error', 151 error: errorString 152 }, '*'); 153}; 154</script>
154 155
155<script type="module"> 156const originalFetch = window.fetch; 157 158window.fetch = function(...args) { 159 const url = args[0] instanceof Request ? args[0].url : args[0]; 160 161 // Skip WebSocket URLs 162 if (url.startsWith('ws:') || url.startsWith('wss:')) { 163 return originalFetch.apply(this, args); 164 } 165 166 return originalFetch.apply(this, args) 167 .then(async response => { 168 const contentType = response.headers.get('Content-Type') || ''; 169 170 // Exclude HTML document responses 171 const isDocumentResponse = 172 contentType.includes('text/html') || 173 contentType.includes('application/xhtml+xml'); 174 175 if (!response.ok && !isDocumentResponse) { 176 const responseClone = response.clone(); 177 const errorFromRes = await responseClone.text(); 178 const requestUrl = response.url; 179 console.error(`Fetch error from ${requestUrl}: ${errorFromRes}`); 180 } 181 182 return response; 183 }) 184 .catch(error => { 185 if (!url.match(/.html?$/i)) { 186 console.error(error); 187 } 188 189 throw error; 190 }); 191}; 192</script>
192 193
193<script type="module"> 194if (window.navigation && window.self !== window.top) { 195 window.navigation.addEventListener('navigate', (event) => { 196 const url = event.destination.url; 197 198 try { 199 const destinationUrl = new URL(url); 200 const destinationOrigin = destinationUrl.origin; 201 const currentOrigin = window.location.origin; 202 203 if (destinationOrigin === currentOrigin) { 204 return; 205 } 206 } catch (error) { 207 return; 208 } 209 210 window.parent.postMessage({ 211 type: 'horizons-navigation-error', 212 url, 213 }, '*'); 214 }); 215} 216</script>
216 217 </head> 218 <body> 219 <div id="root"></div> 220 221 </body> 222</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.